ChangeLog-2010-12-06 5.8 MB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030903190329033903490359036903790389039904090419042904390449045904690479048904990509051905290539054905590569057905890599060906190629063906490659066906790689069907090719072907390749075907690779078907990809081908290839084908590869087908890899090909190929093909490959096909790989099910091019102910391049105910691079108910991109111911291139114911591169117911891199120912191229123912491259126912791289129913091319132913391349135913691379138913991409141914291439144914591469147914891499150915191529153915491559156915791589159916091619162916391649165916691679168916991709171917291739174917591769177917891799180918191829183918491859186918791889189919091919192919391949195919691979198919992009201920292039204920592069207920892099210921192129213921492159216921792189219922092219222922392249225922692279228922992309231923292339234923592369237923892399240924192429243924492459246924792489249925092519252925392549255925692579258925992609261926292639264926592669267926892699270927192729273927492759276927792789279928092819282928392849285928692879288928992909291929292939294929592969297929892999300930193029303930493059306930793089309931093119312931393149315931693179318931993209321932293239324932593269327932893299330933193329333933493359336933793389339934093419342934393449345934693479348934993509351935293539354935593569357935893599360936193629363936493659366936793689369937093719372937393749375937693779378937993809381938293839384938593869387938893899390939193929393939493959396939793989399940094019402940394049405940694079408940994109411941294139414941594169417941894199420942194229423942494259426942794289429943094319432943394349435943694379438943994409441944294439444944594469447944894499450945194529453945494559456945794589459946094619462946394649465946694679468946994709471947294739474947594769477947894799480948194829483948494859486948794889489949094919492949394949495949694979498949995009501950295039504950595069507950895099510951195129513951495159516951795189519952095219522952395249525952695279528952995309531953295339534953595369537953895399540954195429543954495459546954795489549955095519552955395549555955695579558955995609561956295639564956595669567956895699570957195729573957495759576957795789579958095819582958395849585958695879588958995909591959295939594959595969597959895999600960196029603960496059606960796089609961096119612961396149615961696179618961996209621962296239624962596269627962896299630963196329633963496359636963796389639964096419642964396449645964696479648964996509651965296539654965596569657965896599660966196629663966496659666966796689669967096719672967396749675967696779678967996809681968296839684968596869687968896899690969196929693969496959696969796989699970097019702970397049705970697079708970997109711971297139714971597169717971897199720972197229723972497259726972797289729973097319732973397349735973697379738973997409741974297439744974597469747974897499750975197529753975497559756975797589759976097619762976397649765976697679768976997709771977297739774977597769777977897799780978197829783978497859786978797889789979097919792979397949795979697979798979998009801980298039804980598069807980898099810981198129813981498159816981798189819982098219822982398249825982698279828982998309831983298339834983598369837983898399840984198429843984498459846984798489849985098519852985398549855985698579858985998609861986298639864986598669867986898699870987198729873987498759876987798789879988098819882988398849885988698879888988998909891989298939894989598969897989898999900990199029903990499059906990799089909991099119912991399149915991699179918991999209921992299239924992599269927992899299930993199329933993499359936993799389939994099419942994399449945994699479948994999509951995299539954995599569957995899599960996199629963996499659966996799689969997099719972997399749975997699779978997999809981998299839984998599869987998899899990999199929993999499959996999799989999100001000110002100031000410005100061000710008100091001010011100121001310014100151001610017100181001910020100211002210023100241002510026100271002810029100301003110032100331003410035100361003710038100391004010041100421004310044100451004610047100481004910050100511005210053100541005510056100571005810059100601006110062100631006410065100661006710068100691007010071100721007310074100751007610077100781007910080100811008210083100841008510086100871008810089100901009110092100931009410095100961009710098100991010010101101021010310104101051010610107101081010910110101111011210113101141011510116101171011810119101201012110122101231012410125101261012710128101291013010131101321013310134101351013610137101381013910140101411014210143101441014510146101471014810149101501015110152101531015410155101561015710158101591016010161101621016310164101651016610167101681016910170101711017210173101741017510176101771017810179101801018110182101831018410185101861018710188101891019010191101921019310194101951019610197101981019910200102011020210203102041020510206102071020810209102101021110212102131021410215102161021710218102191022010221102221022310224102251022610227102281022910230102311023210233102341023510236102371023810239102401024110242102431024410245102461024710248102491025010251102521025310254102551025610257102581025910260102611026210263102641026510266102671026810269102701027110272102731027410275102761027710278102791028010281102821028310284102851028610287102881028910290102911029210293102941029510296102971029810299103001030110302103031030410305103061030710308103091031010311103121031310314103151031610317103181031910320103211032210323103241032510326103271032810329103301033110332103331033410335103361033710338103391034010341103421034310344103451034610347103481034910350103511035210353103541035510356103571035810359103601036110362103631036410365103661036710368103691037010371103721037310374103751037610377103781037910380103811038210383103841038510386103871038810389103901039110392103931039410395103961039710398103991040010401104021040310404104051040610407104081040910410104111041210413104141041510416104171041810419104201042110422104231042410425104261042710428104291043010431104321043310434104351043610437104381043910440104411044210443104441044510446104471044810449104501045110452104531045410455104561045710458104591046010461104621046310464104651046610467104681046910470104711047210473104741047510476104771047810479104801048110482104831048410485104861048710488104891049010491104921049310494104951049610497104981049910500105011050210503105041050510506105071050810509105101051110512105131051410515105161051710518105191052010521105221052310524105251052610527105281052910530105311053210533105341053510536105371053810539105401054110542105431054410545105461054710548105491055010551105521055310554105551055610557105581055910560105611056210563105641056510566105671056810569105701057110572105731057410575105761057710578105791058010581105821058310584105851058610587105881058910590105911059210593105941059510596105971059810599106001060110602106031060410605106061060710608106091061010611106121061310614106151061610617106181061910620106211062210623106241062510626106271062810629106301063110632106331063410635106361063710638106391064010641106421064310644106451064610647106481064910650106511065210653106541065510656106571065810659106601066110662106631066410665106661066710668106691067010671106721067310674106751067610677106781067910680106811068210683106841068510686106871068810689106901069110692106931069410695106961069710698106991070010701107021070310704107051070610707107081070910710107111071210713107141071510716107171071810719107201072110722107231072410725107261072710728107291073010731107321073310734107351073610737107381073910740107411074210743107441074510746107471074810749107501075110752107531075410755107561075710758107591076010761107621076310764107651076610767107681076910770107711077210773107741077510776107771077810779107801078110782107831078410785107861078710788107891079010791107921079310794107951079610797107981079910800108011080210803108041080510806108071080810809108101081110812108131081410815108161081710818108191082010821108221082310824108251082610827108281082910830108311083210833108341083510836108371083810839108401084110842108431084410845108461084710848108491085010851108521085310854108551085610857108581085910860108611086210863108641086510866108671086810869108701087110872108731087410875108761087710878108791088010881108821088310884108851088610887108881088910890108911089210893108941089510896108971089810899109001090110902109031090410905109061090710908109091091010911109121091310914109151091610917109181091910920109211092210923109241092510926109271092810929109301093110932109331093410935109361093710938109391094010941109421094310944109451094610947109481094910950109511095210953109541095510956109571095810959109601096110962109631096410965109661096710968109691097010971109721097310974109751097610977109781097910980109811098210983109841098510986109871098810989109901099110992109931099410995109961099710998109991100011001110021100311004110051100611007110081100911010110111101211013110141101511016110171101811019110201102111022110231102411025110261102711028110291103011031110321103311034110351103611037110381103911040110411104211043110441104511046110471104811049110501105111052110531105411055110561105711058110591106011061110621106311064110651106611067110681106911070110711107211073110741107511076110771107811079110801108111082110831108411085110861108711088110891109011091110921109311094110951109611097110981109911100111011110211103111041110511106111071110811109111101111111112111131111411115111161111711118111191112011121111221112311124111251112611127111281112911130111311113211133111341113511136111371113811139111401114111142111431114411145111461114711148111491115011151111521115311154111551115611157111581115911160111611116211163111641116511166111671116811169111701117111172111731117411175111761117711178111791118011181111821118311184111851118611187111881118911190111911119211193111941119511196111971119811199112001120111202112031120411205112061120711208112091121011211112121121311214112151121611217112181121911220112211122211223112241122511226112271122811229112301123111232112331123411235112361123711238112391124011241112421124311244112451124611247112481124911250112511125211253112541125511256112571125811259112601126111262112631126411265112661126711268112691127011271112721127311274112751127611277112781127911280112811128211283112841128511286112871128811289112901129111292112931129411295112961129711298112991130011301113021130311304113051130611307113081130911310113111131211313113141131511316113171131811319113201132111322113231132411325113261132711328113291133011331113321133311334113351133611337113381133911340113411134211343113441134511346113471134811349113501135111352113531135411355113561135711358113591136011361113621136311364113651136611367113681136911370113711137211373113741137511376113771137811379113801138111382113831138411385113861138711388113891139011391113921139311394113951139611397113981139911400114011140211403114041140511406114071140811409114101141111412114131141411415114161141711418114191142011421114221142311424114251142611427114281142911430114311143211433114341143511436114371143811439114401144111442114431144411445114461144711448114491145011451114521145311454114551145611457114581145911460114611146211463114641146511466114671146811469114701147111472114731147411475114761147711478114791148011481114821148311484114851148611487114881148911490114911149211493114941149511496114971149811499115001150111502115031150411505115061150711508115091151011511115121151311514115151151611517115181151911520115211152211523115241152511526115271152811529115301153111532115331153411535115361153711538115391154011541115421154311544115451154611547115481154911550115511155211553115541155511556115571155811559115601156111562115631156411565115661156711568115691157011571115721157311574115751157611577115781157911580115811158211583115841158511586115871158811589115901159111592115931159411595115961159711598115991160011601116021160311604116051160611607116081160911610116111161211613116141161511616116171161811619116201162111622116231162411625116261162711628116291163011631116321163311634116351163611637116381163911640116411164211643116441164511646116471164811649116501165111652116531165411655116561165711658116591166011661116621166311664116651166611667116681166911670116711167211673116741167511676116771167811679116801168111682116831168411685116861168711688116891169011691116921169311694116951169611697116981169911700117011170211703117041170511706117071170811709117101171111712117131171411715117161171711718117191172011721117221172311724117251172611727117281172911730117311173211733117341173511736117371173811739117401174111742117431174411745117461174711748117491175011751117521175311754117551175611757117581175911760117611176211763117641176511766117671176811769117701177111772117731177411775117761177711778117791178011781117821178311784117851178611787117881178911790117911179211793117941179511796117971179811799118001180111802118031180411805118061180711808118091181011811118121181311814118151181611817118181181911820118211182211823118241182511826118271182811829118301183111832118331183411835118361183711838118391184011841118421184311844118451184611847118481184911850118511185211853118541185511856118571185811859118601186111862118631186411865118661186711868118691187011871118721187311874118751187611877118781187911880118811188211883118841188511886118871188811889118901189111892118931189411895118961189711898118991190011901119021190311904119051190611907119081190911910119111191211913119141191511916119171191811919119201192111922119231192411925119261192711928119291193011931119321193311934119351193611937119381193911940119411194211943119441194511946119471194811949119501195111952119531195411955119561195711958119591196011961119621196311964119651196611967119681196911970119711197211973119741197511976119771197811979119801198111982119831198411985119861198711988119891199011991119921199311994119951199611997119981199912000120011200212003120041200512006120071200812009120101201112012120131201412015120161201712018120191202012021120221202312024120251202612027120281202912030120311203212033120341203512036120371203812039120401204112042120431204412045120461204712048120491205012051120521205312054120551205612057120581205912060120611206212063120641206512066120671206812069120701207112072120731207412075120761207712078120791208012081120821208312084120851208612087120881208912090120911209212093120941209512096120971209812099121001210112102121031210412105121061210712108121091211012111121121211312114121151211612117121181211912120121211212212123121241212512126121271212812129121301213112132121331213412135121361213712138121391214012141121421214312144121451214612147121481214912150121511215212153121541215512156121571215812159121601216112162121631216412165121661216712168121691217012171121721217312174121751217612177121781217912180121811218212183121841218512186121871218812189121901219112192121931219412195121961219712198121991220012201122021220312204122051220612207122081220912210122111221212213122141221512216122171221812219122201222112222122231222412225122261222712228122291223012231122321223312234122351223612237122381223912240122411224212243122441224512246122471224812249122501225112252122531225412255122561225712258122591226012261122621226312264122651226612267122681226912270122711227212273122741227512276122771227812279122801228112282122831228412285122861228712288122891229012291122921229312294122951229612297122981229912300123011230212303123041230512306123071230812309123101231112312123131231412315123161231712318123191232012321123221232312324123251232612327123281232912330123311233212333123341233512336123371233812339123401234112342123431234412345123461234712348123491235012351123521235312354123551235612357123581235912360123611236212363123641236512366123671236812369123701237112372123731237412375123761237712378123791238012381123821238312384123851238612387123881238912390123911239212393123941239512396123971239812399124001240112402124031240412405124061240712408124091241012411124121241312414124151241612417124181241912420124211242212423124241242512426124271242812429124301243112432124331243412435124361243712438124391244012441124421244312444124451244612447124481244912450124511245212453124541245512456124571245812459124601246112462124631246412465124661246712468124691247012471124721247312474124751247612477124781247912480124811248212483124841248512486124871248812489124901249112492124931249412495124961249712498124991250012501125021250312504125051250612507125081250912510125111251212513125141251512516125171251812519125201252112522125231252412525125261252712528125291253012531125321253312534125351253612537125381253912540125411254212543125441254512546125471254812549125501255112552125531255412555125561255712558125591256012561125621256312564125651256612567125681256912570125711257212573125741257512576125771257812579125801258112582125831258412585125861258712588125891259012591125921259312594125951259612597125981259912600126011260212603126041260512606126071260812609126101261112612126131261412615126161261712618126191262012621126221262312624126251262612627126281262912630126311263212633126341263512636126371263812639126401264112642126431264412645126461264712648126491265012651126521265312654126551265612657126581265912660126611266212663126641266512666126671266812669126701267112672126731267412675126761267712678126791268012681126821268312684126851268612687126881268912690126911269212693126941269512696126971269812699127001270112702127031270412705127061270712708127091271012711127121271312714127151271612717127181271912720127211272212723127241272512726127271272812729127301273112732127331273412735127361273712738127391274012741127421274312744127451274612747127481274912750127511275212753127541275512756127571275812759127601276112762127631276412765127661276712768127691277012771127721277312774127751277612777127781277912780127811278212783127841278512786127871278812789127901279112792127931279412795127961279712798127991280012801128021280312804128051280612807128081280912810128111281212813128141281512816128171281812819128201282112822128231282412825128261282712828128291283012831128321283312834128351283612837128381283912840128411284212843128441284512846128471284812849128501285112852128531285412855128561285712858128591286012861128621286312864128651286612867128681286912870128711287212873128741287512876128771287812879128801288112882128831288412885128861288712888128891289012891128921289312894128951289612897128981289912900129011290212903129041290512906129071290812909129101291112912129131291412915129161291712918129191292012921129221292312924129251292612927129281292912930129311293212933129341293512936129371293812939129401294112942129431294412945129461294712948129491295012951129521295312954129551295612957129581295912960129611296212963129641296512966129671296812969129701297112972129731297412975129761297712978129791298012981129821298312984129851298612987129881298912990129911299212993129941299512996129971299812999130001300113002130031300413005130061300713008130091301013011130121301313014130151301613017130181301913020130211302213023130241302513026130271302813029130301303113032130331303413035130361303713038130391304013041130421304313044130451304613047130481304913050130511305213053130541305513056130571305813059130601306113062130631306413065130661306713068130691307013071130721307313074130751307613077130781307913080130811308213083130841308513086130871308813089130901309113092130931309413095130961309713098130991310013101131021310313104131051310613107131081310913110131111311213113131141311513116131171311813119131201312113122131231312413125131261312713128131291313013131131321313313134131351313613137131381313913140131411314213143131441314513146131471314813149131501315113152131531315413155131561315713158131591316013161131621316313164131651316613167131681316913170131711317213173131741317513176131771317813179131801318113182131831318413185131861318713188131891319013191131921319313194131951319613197131981319913200132011320213203132041320513206132071320813209132101321113212132131321413215132161321713218132191322013221132221322313224132251322613227132281322913230132311323213233132341323513236132371323813239132401324113242132431324413245132461324713248132491325013251132521325313254132551325613257132581325913260132611326213263132641326513266132671326813269132701327113272132731327413275132761327713278132791328013281132821328313284132851328613287132881328913290132911329213293132941329513296132971329813299133001330113302133031330413305133061330713308133091331013311133121331313314133151331613317133181331913320133211332213323133241332513326133271332813329133301333113332133331333413335133361333713338133391334013341133421334313344133451334613347133481334913350133511335213353133541335513356133571335813359133601336113362133631336413365133661336713368133691337013371133721337313374133751337613377133781337913380133811338213383133841338513386133871338813389133901339113392133931339413395133961339713398133991340013401134021340313404134051340613407134081340913410134111341213413134141341513416134171341813419134201342113422134231342413425134261342713428134291343013431134321343313434134351343613437134381343913440134411344213443134441344513446134471344813449134501345113452134531345413455134561345713458134591346013461134621346313464134651346613467134681346913470134711347213473134741347513476134771347813479134801348113482134831348413485134861348713488134891349013491134921349313494134951349613497134981349913500135011350213503135041350513506135071350813509135101351113512135131351413515135161351713518135191352013521135221352313524135251352613527135281352913530135311353213533135341353513536135371353813539135401354113542135431354413545135461354713548135491355013551135521355313554135551355613557135581355913560135611356213563135641356513566135671356813569135701357113572135731357413575135761357713578135791358013581135821358313584135851358613587135881358913590135911359213593135941359513596135971359813599136001360113602136031360413605136061360713608136091361013611136121361313614136151361613617136181361913620136211362213623136241362513626136271362813629136301363113632136331363413635136361363713638136391364013641136421364313644136451364613647136481364913650136511365213653136541365513656136571365813659136601366113662136631366413665136661366713668136691367013671136721367313674136751367613677136781367913680136811368213683136841368513686136871368813689136901369113692136931369413695136961369713698136991370013701137021370313704137051370613707137081370913710137111371213713137141371513716137171371813719137201372113722137231372413725137261372713728137291373013731137321373313734137351373613737137381373913740137411374213743137441374513746137471374813749137501375113752137531375413755137561375713758137591376013761137621376313764137651376613767137681376913770137711377213773137741377513776137771377813779137801378113782137831378413785137861378713788137891379013791137921379313794137951379613797137981379913800138011380213803138041380513806138071380813809138101381113812138131381413815138161381713818138191382013821138221382313824138251382613827138281382913830138311383213833138341383513836138371383813839138401384113842138431384413845138461384713848138491385013851138521385313854138551385613857138581385913860138611386213863138641386513866138671386813869138701387113872138731387413875138761387713878138791388013881138821388313884138851388613887138881388913890138911389213893138941389513896138971389813899139001390113902139031390413905139061390713908139091391013911139121391313914139151391613917139181391913920139211392213923139241392513926139271392813929139301393113932139331393413935139361393713938139391394013941139421394313944139451394613947139481394913950139511395213953139541395513956139571395813959139601396113962139631396413965139661396713968139691397013971139721397313974139751397613977139781397913980139811398213983139841398513986139871398813989139901399113992139931399413995139961399713998139991400014001140021400314004140051400614007140081400914010140111401214013140141401514016140171401814019140201402114022140231402414025140261402714028140291403014031140321403314034140351403614037140381403914040140411404214043140441404514046140471404814049140501405114052140531405414055140561405714058140591406014061140621406314064140651406614067140681406914070140711407214073140741407514076140771407814079140801408114082140831408414085140861408714088140891409014091140921409314094140951409614097140981409914100141011410214103141041410514106141071410814109141101411114112141131411414115141161411714118141191412014121141221412314124141251412614127141281412914130141311413214133141341413514136141371413814139141401414114142141431414414145141461414714148141491415014151141521415314154141551415614157141581415914160141611416214163141641416514166141671416814169141701417114172141731417414175141761417714178141791418014181141821418314184141851418614187141881418914190141911419214193141941419514196141971419814199142001420114202142031420414205142061420714208142091421014211142121421314214142151421614217142181421914220142211422214223142241422514226142271422814229142301423114232142331423414235142361423714238142391424014241142421424314244142451424614247142481424914250142511425214253142541425514256142571425814259142601426114262142631426414265142661426714268142691427014271142721427314274142751427614277142781427914280142811428214283142841428514286142871428814289142901429114292142931429414295142961429714298142991430014301143021430314304143051430614307143081430914310143111431214313143141431514316143171431814319143201432114322143231432414325143261432714328143291433014331143321433314334143351433614337143381433914340143411434214343143441434514346143471434814349143501435114352143531435414355143561435714358143591436014361143621436314364143651436614367143681436914370143711437214373143741437514376143771437814379143801438114382143831438414385143861438714388143891439014391143921439314394143951439614397143981439914400144011440214403144041440514406144071440814409144101441114412144131441414415144161441714418144191442014421144221442314424144251442614427144281442914430144311443214433144341443514436144371443814439144401444114442144431444414445144461444714448144491445014451144521445314454144551445614457144581445914460144611446214463144641446514466144671446814469144701447114472144731447414475144761447714478144791448014481144821448314484144851448614487144881448914490144911449214493144941449514496144971449814499145001450114502145031450414505145061450714508145091451014511145121451314514145151451614517145181451914520145211452214523145241452514526145271452814529145301453114532145331453414535145361453714538145391454014541145421454314544145451454614547145481454914550145511455214553145541455514556145571455814559145601456114562145631456414565145661456714568145691457014571145721457314574145751457614577145781457914580145811458214583145841458514586145871458814589145901459114592145931459414595145961459714598145991460014601146021460314604146051460614607146081460914610146111461214613146141461514616146171461814619146201462114622146231462414625146261462714628146291463014631146321463314634146351463614637146381463914640146411464214643146441464514646146471464814649146501465114652146531465414655146561465714658146591466014661146621466314664146651466614667146681466914670146711467214673146741467514676146771467814679146801468114682146831468414685146861468714688146891469014691146921469314694146951469614697146981469914700147011470214703147041470514706147071470814709147101471114712147131471414715147161471714718147191472014721147221472314724147251472614727147281472914730147311473214733147341473514736147371473814739147401474114742147431474414745147461474714748147491475014751147521475314754147551475614757147581475914760147611476214763147641476514766147671476814769147701477114772147731477414775147761477714778147791478014781147821478314784147851478614787147881478914790147911479214793147941479514796147971479814799148001480114802148031480414805148061480714808148091481014811148121481314814148151481614817148181481914820148211482214823148241482514826148271482814829148301483114832148331483414835148361483714838148391484014841148421484314844148451484614847148481484914850148511485214853148541485514856148571485814859148601486114862148631486414865148661486714868148691487014871148721487314874148751487614877148781487914880148811488214883148841488514886148871488814889148901489114892148931489414895148961489714898148991490014901149021490314904149051490614907149081490914910149111491214913149141491514916149171491814919149201492114922149231492414925149261492714928149291493014931149321493314934149351493614937149381493914940149411494214943149441494514946149471494814949149501495114952149531495414955149561495714958149591496014961149621496314964149651496614967149681496914970149711497214973149741497514976149771497814979149801498114982149831498414985149861498714988149891499014991149921499314994149951499614997149981499915000150011500215003150041500515006150071500815009150101501115012150131501415015150161501715018150191502015021150221502315024150251502615027150281502915030150311503215033150341503515036150371503815039150401504115042150431504415045150461504715048150491505015051150521505315054150551505615057150581505915060150611506215063150641506515066150671506815069150701507115072150731507415075150761507715078150791508015081150821508315084150851508615087150881508915090150911509215093150941509515096150971509815099151001510115102151031510415105151061510715108151091511015111151121511315114151151511615117151181511915120151211512215123151241512515126151271512815129151301513115132151331513415135151361513715138151391514015141151421514315144151451514615147151481514915150151511515215153151541515515156151571515815159151601516115162151631516415165151661516715168151691517015171151721517315174151751517615177151781517915180151811518215183151841518515186151871518815189151901519115192151931519415195151961519715198151991520015201152021520315204152051520615207152081520915210152111521215213152141521515216152171521815219152201522115222152231522415225152261522715228152291523015231152321523315234152351523615237152381523915240152411524215243152441524515246152471524815249152501525115252152531525415255152561525715258152591526015261152621526315264152651526615267152681526915270152711527215273152741527515276152771527815279152801528115282152831528415285152861528715288152891529015291152921529315294152951529615297152981529915300153011530215303153041530515306153071530815309153101531115312153131531415315153161531715318153191532015321153221532315324153251532615327153281532915330153311533215333153341533515336153371533815339153401534115342153431534415345153461534715348153491535015351153521535315354153551535615357153581535915360153611536215363153641536515366153671536815369153701537115372153731537415375153761537715378153791538015381153821538315384153851538615387153881538915390153911539215393153941539515396153971539815399154001540115402154031540415405154061540715408154091541015411154121541315414154151541615417154181541915420154211542215423154241542515426154271542815429154301543115432154331543415435154361543715438154391544015441154421544315444154451544615447154481544915450154511545215453154541545515456154571545815459154601546115462154631546415465154661546715468154691547015471154721547315474154751547615477154781547915480154811548215483154841548515486154871548815489154901549115492154931549415495154961549715498154991550015501155021550315504155051550615507155081550915510155111551215513155141551515516155171551815519155201552115522155231552415525155261552715528155291553015531155321553315534155351553615537155381553915540155411554215543155441554515546155471554815549155501555115552155531555415555155561555715558155591556015561155621556315564155651556615567155681556915570155711557215573155741557515576155771557815579155801558115582155831558415585155861558715588155891559015591155921559315594155951559615597155981559915600156011560215603156041560515606156071560815609156101561115612156131561415615156161561715618156191562015621156221562315624156251562615627156281562915630156311563215633156341563515636156371563815639156401564115642156431564415645156461564715648156491565015651156521565315654156551565615657156581565915660156611566215663156641566515666156671566815669156701567115672156731567415675156761567715678156791568015681156821568315684156851568615687156881568915690156911569215693156941569515696156971569815699157001570115702157031570415705157061570715708157091571015711157121571315714157151571615717157181571915720157211572215723157241572515726157271572815729157301573115732157331573415735157361573715738157391574015741157421574315744157451574615747157481574915750157511575215753157541575515756157571575815759157601576115762157631576415765157661576715768157691577015771157721577315774157751577615777157781577915780157811578215783157841578515786157871578815789157901579115792157931579415795157961579715798157991580015801158021580315804158051580615807158081580915810158111581215813158141581515816158171581815819158201582115822158231582415825158261582715828158291583015831158321583315834158351583615837158381583915840158411584215843158441584515846158471584815849158501585115852158531585415855158561585715858158591586015861158621586315864158651586615867158681586915870158711587215873158741587515876158771587815879158801588115882158831588415885158861588715888158891589015891158921589315894158951589615897158981589915900159011590215903159041590515906159071590815909159101591115912159131591415915159161591715918159191592015921159221592315924159251592615927159281592915930159311593215933159341593515936159371593815939159401594115942159431594415945159461594715948159491595015951159521595315954159551595615957159581595915960159611596215963159641596515966159671596815969159701597115972159731597415975159761597715978159791598015981159821598315984159851598615987159881598915990159911599215993159941599515996159971599815999160001600116002160031600416005160061600716008160091601016011160121601316014160151601616017160181601916020160211602216023160241602516026160271602816029160301603116032160331603416035160361603716038160391604016041160421604316044160451604616047160481604916050160511605216053160541605516056160571605816059160601606116062160631606416065160661606716068160691607016071160721607316074160751607616077160781607916080160811608216083160841608516086160871608816089160901609116092160931609416095160961609716098160991610016101161021610316104161051610616107161081610916110161111611216113161141611516116161171611816119161201612116122161231612416125161261612716128161291613016131161321613316134161351613616137161381613916140161411614216143161441614516146161471614816149161501615116152161531615416155161561615716158161591616016161161621616316164161651616616167161681616916170161711617216173161741617516176161771617816179161801618116182161831618416185161861618716188161891619016191161921619316194161951619616197161981619916200162011620216203162041620516206162071620816209162101621116212162131621416215162161621716218162191622016221162221622316224162251622616227162281622916230162311623216233162341623516236162371623816239162401624116242162431624416245162461624716248162491625016251162521625316254162551625616257162581625916260162611626216263162641626516266162671626816269162701627116272162731627416275162761627716278162791628016281162821628316284162851628616287162881628916290162911629216293162941629516296162971629816299163001630116302163031630416305163061630716308163091631016311163121631316314163151631616317163181631916320163211632216323163241632516326163271632816329163301633116332163331633416335163361633716338163391634016341163421634316344163451634616347163481634916350163511635216353163541635516356163571635816359163601636116362163631636416365163661636716368163691637016371163721637316374163751637616377163781637916380163811638216383163841638516386163871638816389163901639116392163931639416395163961639716398163991640016401164021640316404164051640616407164081640916410164111641216413164141641516416164171641816419164201642116422164231642416425164261642716428164291643016431164321643316434164351643616437164381643916440164411644216443164441644516446164471644816449164501645116452164531645416455164561645716458164591646016461164621646316464164651646616467164681646916470164711647216473164741647516476164771647816479164801648116482164831648416485164861648716488164891649016491164921649316494164951649616497164981649916500165011650216503165041650516506165071650816509165101651116512165131651416515165161651716518165191652016521165221652316524165251652616527165281652916530165311653216533165341653516536165371653816539165401654116542165431654416545165461654716548165491655016551165521655316554165551655616557165581655916560165611656216563165641656516566165671656816569165701657116572165731657416575165761657716578165791658016581165821658316584165851658616587165881658916590165911659216593165941659516596165971659816599166001660116602166031660416605166061660716608166091661016611166121661316614166151661616617166181661916620166211662216623166241662516626166271662816629166301663116632166331663416635166361663716638166391664016641166421664316644166451664616647166481664916650166511665216653166541665516656166571665816659166601666116662166631666416665166661666716668166691667016671166721667316674166751667616677166781667916680166811668216683166841668516686166871668816689166901669116692166931669416695166961669716698166991670016701167021670316704167051670616707167081670916710167111671216713167141671516716167171671816719167201672116722167231672416725167261672716728167291673016731167321673316734167351673616737167381673916740167411674216743167441674516746167471674816749167501675116752167531675416755167561675716758167591676016761167621676316764167651676616767167681676916770167711677216773167741677516776167771677816779167801678116782167831678416785167861678716788167891679016791167921679316794167951679616797167981679916800168011680216803168041680516806168071680816809168101681116812168131681416815168161681716818168191682016821168221682316824168251682616827168281682916830168311683216833168341683516836168371683816839168401684116842168431684416845168461684716848168491685016851168521685316854168551685616857168581685916860168611686216863168641686516866168671686816869168701687116872168731687416875168761687716878168791688016881168821688316884168851688616887168881688916890168911689216893168941689516896168971689816899169001690116902169031690416905169061690716908169091691016911169121691316914169151691616917169181691916920169211692216923169241692516926169271692816929169301693116932169331693416935169361693716938169391694016941169421694316944169451694616947169481694916950169511695216953169541695516956169571695816959169601696116962169631696416965169661696716968169691697016971169721697316974169751697616977169781697916980169811698216983169841698516986169871698816989169901699116992169931699416995169961699716998169991700017001170021700317004170051700617007170081700917010170111701217013170141701517016170171701817019170201702117022170231702417025170261702717028170291703017031170321703317034170351703617037170381703917040170411704217043170441704517046170471704817049170501705117052170531705417055170561705717058170591706017061170621706317064170651706617067170681706917070170711707217073170741707517076170771707817079170801708117082170831708417085170861708717088170891709017091170921709317094170951709617097170981709917100171011710217103171041710517106171071710817109171101711117112171131711417115171161711717118171191712017121171221712317124171251712617127171281712917130171311713217133171341713517136171371713817139171401714117142171431714417145171461714717148171491715017151171521715317154171551715617157171581715917160171611716217163171641716517166171671716817169171701717117172171731717417175171761717717178171791718017181171821718317184171851718617187171881718917190171911719217193171941719517196171971719817199172001720117202172031720417205172061720717208172091721017211172121721317214172151721617217172181721917220172211722217223172241722517226172271722817229172301723117232172331723417235172361723717238172391724017241172421724317244172451724617247172481724917250172511725217253172541725517256172571725817259172601726117262172631726417265172661726717268172691727017271172721727317274172751727617277172781727917280172811728217283172841728517286172871728817289172901729117292172931729417295172961729717298172991730017301173021730317304173051730617307173081730917310173111731217313173141731517316173171731817319173201732117322173231732417325173261732717328173291733017331173321733317334173351733617337173381733917340173411734217343173441734517346173471734817349173501735117352173531735417355173561735717358173591736017361173621736317364173651736617367173681736917370173711737217373173741737517376173771737817379173801738117382173831738417385173861738717388173891739017391173921739317394173951739617397173981739917400174011740217403174041740517406174071740817409174101741117412174131741417415174161741717418174191742017421174221742317424174251742617427174281742917430174311743217433174341743517436174371743817439174401744117442174431744417445174461744717448174491745017451174521745317454174551745617457174581745917460174611746217463174641746517466174671746817469174701747117472174731747417475174761747717478174791748017481174821748317484174851748617487174881748917490174911749217493174941749517496174971749817499175001750117502175031750417505175061750717508175091751017511175121751317514175151751617517175181751917520175211752217523175241752517526175271752817529175301753117532175331753417535175361753717538175391754017541175421754317544175451754617547175481754917550175511755217553175541755517556175571755817559175601756117562175631756417565175661756717568175691757017571175721757317574175751757617577175781757917580175811758217583175841758517586175871758817589175901759117592175931759417595175961759717598175991760017601176021760317604176051760617607176081760917610176111761217613176141761517616176171761817619176201762117622176231762417625176261762717628176291763017631176321763317634176351763617637176381763917640176411764217643176441764517646176471764817649176501765117652176531765417655176561765717658176591766017661176621766317664176651766617667176681766917670176711767217673176741767517676176771767817679176801768117682176831768417685176861768717688176891769017691176921769317694176951769617697176981769917700177011770217703177041770517706177071770817709177101771117712177131771417715177161771717718177191772017721177221772317724177251772617727177281772917730177311773217733177341773517736177371773817739177401774117742177431774417745177461774717748177491775017751177521775317754177551775617757177581775917760177611776217763177641776517766177671776817769177701777117772177731777417775177761777717778177791778017781177821778317784177851778617787177881778917790177911779217793177941779517796177971779817799178001780117802178031780417805178061780717808178091781017811178121781317814178151781617817178181781917820178211782217823178241782517826178271782817829178301783117832178331783417835178361783717838178391784017841178421784317844178451784617847178481784917850178511785217853178541785517856178571785817859178601786117862178631786417865178661786717868178691787017871178721787317874178751787617877178781787917880178811788217883178841788517886178871788817889178901789117892178931789417895178961789717898178991790017901179021790317904179051790617907179081790917910179111791217913179141791517916179171791817919179201792117922179231792417925179261792717928179291793017931179321793317934179351793617937179381793917940179411794217943179441794517946179471794817949179501795117952179531795417955179561795717958179591796017961179621796317964179651796617967179681796917970179711797217973179741797517976179771797817979179801798117982179831798417985179861798717988179891799017991179921799317994179951799617997179981799918000180011800218003180041800518006180071800818009180101801118012180131801418015180161801718018180191802018021180221802318024180251802618027180281802918030180311803218033180341803518036180371803818039180401804118042180431804418045180461804718048180491805018051180521805318054180551805618057180581805918060180611806218063180641806518066180671806818069180701807118072180731807418075180761807718078180791808018081180821808318084180851808618087180881808918090180911809218093180941809518096180971809818099181001810118102181031810418105181061810718108181091811018111181121811318114181151811618117181181811918120181211812218123181241812518126181271812818129181301813118132181331813418135181361813718138181391814018141181421814318144181451814618147181481814918150181511815218153181541815518156181571815818159181601816118162181631816418165181661816718168181691817018171181721817318174181751817618177181781817918180181811818218183181841818518186181871818818189181901819118192181931819418195181961819718198181991820018201182021820318204182051820618207182081820918210182111821218213182141821518216182171821818219182201822118222182231822418225182261822718228182291823018231182321823318234182351823618237182381823918240182411824218243182441824518246182471824818249182501825118252182531825418255182561825718258182591826018261182621826318264182651826618267182681826918270182711827218273182741827518276182771827818279182801828118282182831828418285182861828718288182891829018291182921829318294182951829618297182981829918300183011830218303183041830518306183071830818309183101831118312183131831418315183161831718318183191832018321183221832318324183251832618327183281832918330183311833218333183341833518336183371833818339183401834118342183431834418345183461834718348183491835018351183521835318354183551835618357183581835918360183611836218363183641836518366183671836818369183701837118372183731837418375183761837718378183791838018381183821838318384183851838618387183881838918390183911839218393183941839518396183971839818399184001840118402184031840418405184061840718408184091841018411184121841318414184151841618417184181841918420184211842218423184241842518426184271842818429184301843118432184331843418435184361843718438184391844018441184421844318444184451844618447184481844918450184511845218453184541845518456184571845818459184601846118462184631846418465184661846718468184691847018471184721847318474184751847618477184781847918480184811848218483184841848518486184871848818489184901849118492184931849418495184961849718498184991850018501185021850318504185051850618507185081850918510185111851218513185141851518516185171851818519185201852118522185231852418525185261852718528185291853018531185321853318534185351853618537185381853918540185411854218543185441854518546185471854818549185501855118552185531855418555185561855718558185591856018561185621856318564185651856618567185681856918570185711857218573185741857518576185771857818579185801858118582185831858418585185861858718588185891859018591185921859318594185951859618597185981859918600186011860218603186041860518606186071860818609186101861118612186131861418615186161861718618186191862018621186221862318624186251862618627186281862918630186311863218633186341863518636186371863818639186401864118642186431864418645186461864718648186491865018651186521865318654186551865618657186581865918660186611866218663186641866518666186671866818669186701867118672186731867418675186761867718678186791868018681186821868318684186851868618687186881868918690186911869218693186941869518696186971869818699187001870118702187031870418705187061870718708187091871018711187121871318714187151871618717187181871918720187211872218723187241872518726187271872818729187301873118732187331873418735187361873718738187391874018741187421874318744187451874618747187481874918750187511875218753187541875518756187571875818759187601876118762187631876418765187661876718768187691877018771187721877318774187751877618777187781877918780187811878218783187841878518786187871878818789187901879118792187931879418795187961879718798187991880018801188021880318804188051880618807188081880918810188111881218813188141881518816188171881818819188201882118822188231882418825188261882718828188291883018831188321883318834188351883618837188381883918840188411884218843188441884518846188471884818849188501885118852188531885418855188561885718858188591886018861188621886318864188651886618867188681886918870188711887218873188741887518876188771887818879188801888118882188831888418885188861888718888188891889018891188921889318894188951889618897188981889918900189011890218903189041890518906189071890818909189101891118912189131891418915189161891718918189191892018921189221892318924189251892618927189281892918930189311893218933189341893518936189371893818939189401894118942189431894418945189461894718948189491895018951189521895318954189551895618957189581895918960189611896218963189641896518966189671896818969189701897118972189731897418975189761897718978189791898018981189821898318984189851898618987189881898918990189911899218993189941899518996189971899818999190001900119002190031900419005190061900719008190091901019011190121901319014190151901619017190181901919020190211902219023190241902519026190271902819029190301903119032190331903419035190361903719038190391904019041190421904319044190451904619047190481904919050190511905219053190541905519056190571905819059190601906119062190631906419065190661906719068190691907019071190721907319074190751907619077190781907919080190811908219083190841908519086190871908819089190901909119092190931909419095190961909719098190991910019101191021910319104191051910619107191081910919110191111911219113191141911519116191171911819119191201912119122191231912419125191261912719128191291913019131191321913319134191351913619137191381913919140191411914219143191441914519146191471914819149191501915119152191531915419155191561915719158191591916019161191621916319164191651916619167191681916919170191711917219173191741917519176191771917819179191801918119182191831918419185191861918719188191891919019191191921919319194191951919619197191981919919200192011920219203192041920519206192071920819209192101921119212192131921419215192161921719218192191922019221192221922319224192251922619227192281922919230192311923219233192341923519236192371923819239192401924119242192431924419245192461924719248192491925019251192521925319254192551925619257192581925919260192611926219263192641926519266192671926819269192701927119272192731927419275192761927719278192791928019281192821928319284192851928619287192881928919290192911929219293192941929519296192971929819299193001930119302193031930419305193061930719308193091931019311193121931319314193151931619317193181931919320193211932219323193241932519326193271932819329193301933119332193331933419335193361933719338193391934019341193421934319344193451934619347193481934919350193511935219353193541935519356193571935819359193601936119362193631936419365193661936719368193691937019371193721937319374193751937619377193781937919380193811938219383193841938519386193871938819389193901939119392193931939419395193961939719398193991940019401194021940319404194051940619407194081940919410194111941219413194141941519416194171941819419194201942119422194231942419425194261942719428194291943019431194321943319434194351943619437194381943919440194411944219443194441944519446194471944819449194501945119452194531945419455194561945719458194591946019461194621946319464194651946619467194681946919470194711947219473194741947519476194771947819479194801948119482194831948419485194861948719488194891949019491194921949319494194951949619497194981949919500195011950219503195041950519506195071950819509195101951119512195131951419515195161951719518195191952019521195221952319524195251952619527195281952919530195311953219533195341953519536195371953819539195401954119542195431954419545195461954719548195491955019551195521955319554195551955619557195581955919560195611956219563195641956519566195671956819569195701957119572195731957419575195761957719578195791958019581195821958319584195851958619587195881958919590195911959219593195941959519596195971959819599196001960119602196031960419605196061960719608196091961019611196121961319614196151961619617196181961919620196211962219623196241962519626196271962819629196301963119632196331963419635196361963719638196391964019641196421964319644196451964619647196481964919650196511965219653196541965519656196571965819659196601966119662196631966419665196661966719668196691967019671196721967319674196751967619677196781967919680196811968219683196841968519686196871968819689196901969119692196931969419695196961969719698196991970019701197021970319704197051970619707197081970919710197111971219713197141971519716197171971819719197201972119722197231972419725197261972719728197291973019731197321973319734197351973619737197381973919740197411974219743197441974519746197471974819749197501975119752197531975419755197561975719758197591976019761197621976319764197651976619767197681976919770197711977219773197741977519776197771977819779197801978119782197831978419785197861978719788197891979019791197921979319794197951979619797197981979919800198011980219803198041980519806198071980819809198101981119812198131981419815198161981719818198191982019821198221982319824198251982619827198281982919830198311983219833198341983519836198371983819839198401984119842198431984419845198461984719848198491985019851198521985319854198551985619857198581985919860198611986219863198641986519866198671986819869198701987119872198731987419875198761987719878198791988019881198821988319884198851988619887198881988919890198911989219893198941989519896198971989819899199001990119902199031990419905199061990719908199091991019911199121991319914199151991619917199181991919920199211992219923199241992519926199271992819929199301993119932199331993419935199361993719938199391994019941199421994319944199451994619947199481994919950199511995219953199541995519956199571995819959199601996119962199631996419965199661996719968199691997019971199721997319974199751997619977199781997919980199811998219983199841998519986199871998819989199901999119992199931999419995199961999719998199992000020001200022000320004200052000620007200082000920010200112001220013200142001520016200172001820019200202002120022200232002420025200262002720028200292003020031200322003320034200352003620037200382003920040200412004220043200442004520046200472004820049200502005120052200532005420055200562005720058200592006020061200622006320064200652006620067200682006920070200712007220073200742007520076200772007820079200802008120082200832008420085200862008720088200892009020091200922009320094200952009620097200982009920100201012010220103201042010520106201072010820109201102011120112201132011420115201162011720118201192012020121201222012320124201252012620127201282012920130201312013220133201342013520136201372013820139201402014120142201432014420145201462014720148201492015020151201522015320154201552015620157201582015920160201612016220163201642016520166201672016820169201702017120172201732017420175201762017720178201792018020181201822018320184201852018620187201882018920190201912019220193201942019520196201972019820199202002020120202202032020420205202062020720208202092021020211202122021320214202152021620217202182021920220202212022220223202242022520226202272022820229202302023120232202332023420235202362023720238202392024020241202422024320244202452024620247202482024920250202512025220253202542025520256202572025820259202602026120262202632026420265202662026720268202692027020271202722027320274202752027620277202782027920280202812028220283202842028520286202872028820289202902029120292202932029420295202962029720298202992030020301203022030320304203052030620307203082030920310203112031220313203142031520316203172031820319203202032120322203232032420325203262032720328203292033020331203322033320334203352033620337203382033920340203412034220343203442034520346203472034820349203502035120352203532035420355203562035720358203592036020361203622036320364203652036620367203682036920370203712037220373203742037520376203772037820379203802038120382203832038420385203862038720388203892039020391203922039320394203952039620397203982039920400204012040220403204042040520406204072040820409204102041120412204132041420415204162041720418204192042020421204222042320424204252042620427204282042920430204312043220433204342043520436204372043820439204402044120442204432044420445204462044720448204492045020451204522045320454204552045620457204582045920460204612046220463204642046520466204672046820469204702047120472204732047420475204762047720478204792048020481204822048320484204852048620487204882048920490204912049220493204942049520496204972049820499205002050120502205032050420505205062050720508205092051020511205122051320514205152051620517205182051920520205212052220523205242052520526205272052820529205302053120532205332053420535205362053720538205392054020541205422054320544205452054620547205482054920550205512055220553205542055520556205572055820559205602056120562205632056420565205662056720568205692057020571205722057320574205752057620577205782057920580205812058220583205842058520586205872058820589205902059120592205932059420595205962059720598205992060020601206022060320604206052060620607206082060920610206112061220613206142061520616206172061820619206202062120622206232062420625206262062720628206292063020631206322063320634206352063620637206382063920640206412064220643206442064520646206472064820649206502065120652206532065420655206562065720658206592066020661206622066320664206652066620667206682066920670206712067220673206742067520676206772067820679206802068120682206832068420685206862068720688206892069020691206922069320694206952069620697206982069920700207012070220703207042070520706207072070820709207102071120712207132071420715207162071720718207192072020721207222072320724207252072620727207282072920730207312073220733207342073520736207372073820739207402074120742207432074420745207462074720748207492075020751207522075320754207552075620757207582075920760207612076220763207642076520766207672076820769207702077120772207732077420775207762077720778207792078020781207822078320784207852078620787207882078920790207912079220793207942079520796207972079820799208002080120802208032080420805208062080720808208092081020811208122081320814208152081620817208182081920820208212082220823208242082520826208272082820829208302083120832208332083420835208362083720838208392084020841208422084320844208452084620847208482084920850208512085220853208542085520856208572085820859208602086120862208632086420865208662086720868208692087020871208722087320874208752087620877208782087920880208812088220883208842088520886208872088820889208902089120892208932089420895208962089720898208992090020901209022090320904209052090620907209082090920910209112091220913209142091520916209172091820919209202092120922209232092420925209262092720928209292093020931209322093320934209352093620937209382093920940209412094220943209442094520946209472094820949209502095120952209532095420955209562095720958209592096020961209622096320964209652096620967209682096920970209712097220973209742097520976209772097820979209802098120982209832098420985209862098720988209892099020991209922099320994209952099620997209982099921000210012100221003210042100521006210072100821009210102101121012210132101421015210162101721018210192102021021210222102321024210252102621027210282102921030210312103221033210342103521036210372103821039210402104121042210432104421045210462104721048210492105021051210522105321054210552105621057210582105921060210612106221063210642106521066210672106821069210702107121072210732107421075210762107721078210792108021081210822108321084210852108621087210882108921090210912109221093210942109521096210972109821099211002110121102211032110421105211062110721108211092111021111211122111321114211152111621117211182111921120211212112221123211242112521126211272112821129211302113121132211332113421135211362113721138211392114021141211422114321144211452114621147211482114921150211512115221153211542115521156211572115821159211602116121162211632116421165211662116721168211692117021171211722117321174211752117621177211782117921180211812118221183211842118521186211872118821189211902119121192211932119421195211962119721198211992120021201212022120321204212052120621207212082120921210212112121221213212142121521216212172121821219212202122121222212232122421225212262122721228212292123021231212322123321234212352123621237212382123921240212412124221243212442124521246212472124821249212502125121252212532125421255212562125721258212592126021261212622126321264212652126621267212682126921270212712127221273212742127521276212772127821279212802128121282212832128421285212862128721288212892129021291212922129321294212952129621297212982129921300213012130221303213042130521306213072130821309213102131121312213132131421315213162131721318213192132021321213222132321324213252132621327213282132921330213312133221333213342133521336213372133821339213402134121342213432134421345213462134721348213492135021351213522135321354213552135621357213582135921360213612136221363213642136521366213672136821369213702137121372213732137421375213762137721378213792138021381213822138321384213852138621387213882138921390213912139221393213942139521396213972139821399214002140121402214032140421405214062140721408214092141021411214122141321414214152141621417214182141921420214212142221423214242142521426214272142821429214302143121432214332143421435214362143721438214392144021441214422144321444214452144621447214482144921450214512145221453214542145521456214572145821459214602146121462214632146421465214662146721468214692147021471214722147321474214752147621477214782147921480214812148221483214842148521486214872148821489214902149121492214932149421495214962149721498214992150021501215022150321504215052150621507215082150921510215112151221513215142151521516215172151821519215202152121522215232152421525215262152721528215292153021531215322153321534215352153621537215382153921540215412154221543215442154521546215472154821549215502155121552215532155421555215562155721558215592156021561215622156321564215652156621567215682156921570215712157221573215742157521576215772157821579215802158121582215832158421585215862158721588215892159021591215922159321594215952159621597215982159921600216012160221603216042160521606216072160821609216102161121612216132161421615216162161721618216192162021621216222162321624216252162621627216282162921630216312163221633216342163521636216372163821639216402164121642216432164421645216462164721648216492165021651216522165321654216552165621657216582165921660216612166221663216642166521666216672166821669216702167121672216732167421675216762167721678216792168021681216822168321684216852168621687216882168921690216912169221693216942169521696216972169821699217002170121702217032170421705217062170721708217092171021711217122171321714217152171621717217182171921720217212172221723217242172521726217272172821729217302173121732217332173421735217362173721738217392174021741217422174321744217452174621747217482174921750217512175221753217542175521756217572175821759217602176121762217632176421765217662176721768217692177021771217722177321774217752177621777217782177921780217812178221783217842178521786217872178821789217902179121792217932179421795217962179721798217992180021801218022180321804218052180621807218082180921810218112181221813218142181521816218172181821819218202182121822218232182421825218262182721828218292183021831218322183321834218352183621837218382183921840218412184221843218442184521846218472184821849218502185121852218532185421855218562185721858218592186021861218622186321864218652186621867218682186921870218712187221873218742187521876218772187821879218802188121882218832188421885218862188721888218892189021891218922189321894218952189621897218982189921900219012190221903219042190521906219072190821909219102191121912219132191421915219162191721918219192192021921219222192321924219252192621927219282192921930219312193221933219342193521936219372193821939219402194121942219432194421945219462194721948219492195021951219522195321954219552195621957219582195921960219612196221963219642196521966219672196821969219702197121972219732197421975219762197721978219792198021981219822198321984219852198621987219882198921990219912199221993219942199521996219972199821999220002200122002220032200422005220062200722008220092201022011220122201322014220152201622017220182201922020220212202222023220242202522026220272202822029220302203122032220332203422035220362203722038220392204022041220422204322044220452204622047220482204922050220512205222053220542205522056220572205822059220602206122062220632206422065220662206722068220692207022071220722207322074220752207622077220782207922080220812208222083220842208522086220872208822089220902209122092220932209422095220962209722098220992210022101221022210322104221052210622107221082210922110221112211222113221142211522116221172211822119221202212122122221232212422125221262212722128221292213022131221322213322134221352213622137221382213922140221412214222143221442214522146221472214822149221502215122152221532215422155221562215722158221592216022161221622216322164221652216622167221682216922170221712217222173221742217522176221772217822179221802218122182221832218422185221862218722188221892219022191221922219322194221952219622197221982219922200222012220222203222042220522206222072220822209222102221122212222132221422215222162221722218222192222022221222222222322224222252222622227222282222922230222312223222233222342223522236222372223822239222402224122242222432224422245222462224722248222492225022251222522225322254222552225622257222582225922260222612226222263222642226522266222672226822269222702227122272222732227422275222762227722278222792228022281222822228322284222852228622287222882228922290222912229222293222942229522296222972229822299223002230122302223032230422305223062230722308223092231022311223122231322314223152231622317223182231922320223212232222323223242232522326223272232822329223302233122332223332233422335223362233722338223392234022341223422234322344223452234622347223482234922350223512235222353223542235522356223572235822359223602236122362223632236422365223662236722368223692237022371223722237322374223752237622377223782237922380223812238222383223842238522386223872238822389223902239122392223932239422395223962239722398223992240022401224022240322404224052240622407224082240922410224112241222413224142241522416224172241822419224202242122422224232242422425224262242722428224292243022431224322243322434224352243622437224382243922440224412244222443224442244522446224472244822449224502245122452224532245422455224562245722458224592246022461224622246322464224652246622467224682246922470224712247222473224742247522476224772247822479224802248122482224832248422485224862248722488224892249022491224922249322494224952249622497224982249922500225012250222503225042250522506225072250822509225102251122512225132251422515225162251722518225192252022521225222252322524225252252622527225282252922530225312253222533225342253522536225372253822539225402254122542225432254422545225462254722548225492255022551225522255322554225552255622557225582255922560225612256222563225642256522566225672256822569225702257122572225732257422575225762257722578225792258022581225822258322584225852258622587225882258922590225912259222593225942259522596225972259822599226002260122602226032260422605226062260722608226092261022611226122261322614226152261622617226182261922620226212262222623226242262522626226272262822629226302263122632226332263422635226362263722638226392264022641226422264322644226452264622647226482264922650226512265222653226542265522656226572265822659226602266122662226632266422665226662266722668226692267022671226722267322674226752267622677226782267922680226812268222683226842268522686226872268822689226902269122692226932269422695226962269722698226992270022701227022270322704227052270622707227082270922710227112271222713227142271522716227172271822719227202272122722227232272422725227262272722728227292273022731227322273322734227352273622737227382273922740227412274222743227442274522746227472274822749227502275122752227532275422755227562275722758227592276022761227622276322764227652276622767227682276922770227712277222773227742277522776227772277822779227802278122782227832278422785227862278722788227892279022791227922279322794227952279622797227982279922800228012280222803228042280522806228072280822809228102281122812228132281422815228162281722818228192282022821228222282322824228252282622827228282282922830228312283222833228342283522836228372283822839228402284122842228432284422845228462284722848228492285022851228522285322854228552285622857228582285922860228612286222863228642286522866228672286822869228702287122872228732287422875228762287722878228792288022881228822288322884228852288622887228882288922890228912289222893228942289522896228972289822899229002290122902229032290422905229062290722908229092291022911229122291322914229152291622917229182291922920229212292222923229242292522926229272292822929229302293122932229332293422935229362293722938229392294022941229422294322944229452294622947229482294922950229512295222953229542295522956229572295822959229602296122962229632296422965229662296722968229692297022971229722297322974229752297622977229782297922980229812298222983229842298522986229872298822989229902299122992229932299422995229962299722998229992300023001230022300323004230052300623007230082300923010230112301223013230142301523016230172301823019230202302123022230232302423025230262302723028230292303023031230322303323034230352303623037230382303923040230412304223043230442304523046230472304823049230502305123052230532305423055230562305723058230592306023061230622306323064230652306623067230682306923070230712307223073230742307523076230772307823079230802308123082230832308423085230862308723088230892309023091230922309323094230952309623097230982309923100231012310223103231042310523106231072310823109231102311123112231132311423115231162311723118231192312023121231222312323124231252312623127231282312923130231312313223133231342313523136231372313823139231402314123142231432314423145231462314723148231492315023151231522315323154231552315623157231582315923160231612316223163231642316523166231672316823169231702317123172231732317423175231762317723178231792318023181231822318323184231852318623187231882318923190231912319223193231942319523196231972319823199232002320123202232032320423205232062320723208232092321023211232122321323214232152321623217232182321923220232212322223223232242322523226232272322823229232302323123232232332323423235232362323723238232392324023241232422324323244232452324623247232482324923250232512325223253232542325523256232572325823259232602326123262232632326423265232662326723268232692327023271232722327323274232752327623277232782327923280232812328223283232842328523286232872328823289232902329123292232932329423295232962329723298232992330023301233022330323304233052330623307233082330923310233112331223313233142331523316233172331823319233202332123322233232332423325233262332723328233292333023331233322333323334233352333623337233382333923340233412334223343233442334523346233472334823349233502335123352233532335423355233562335723358233592336023361233622336323364233652336623367233682336923370233712337223373233742337523376233772337823379233802338123382233832338423385233862338723388233892339023391233922339323394233952339623397233982339923400234012340223403234042340523406234072340823409234102341123412234132341423415234162341723418234192342023421234222342323424234252342623427234282342923430234312343223433234342343523436234372343823439234402344123442234432344423445234462344723448234492345023451234522345323454234552345623457234582345923460234612346223463234642346523466234672346823469234702347123472234732347423475234762347723478234792348023481234822348323484234852348623487234882348923490234912349223493234942349523496234972349823499235002350123502235032350423505235062350723508235092351023511235122351323514235152351623517235182351923520235212352223523235242352523526235272352823529235302353123532235332353423535235362353723538235392354023541235422354323544235452354623547235482354923550235512355223553235542355523556235572355823559235602356123562235632356423565235662356723568235692357023571235722357323574235752357623577235782357923580235812358223583235842358523586235872358823589235902359123592235932359423595235962359723598235992360023601236022360323604236052360623607236082360923610236112361223613236142361523616236172361823619236202362123622236232362423625236262362723628236292363023631236322363323634236352363623637236382363923640236412364223643236442364523646236472364823649236502365123652236532365423655236562365723658236592366023661236622366323664236652366623667236682366923670236712367223673236742367523676236772367823679236802368123682236832368423685236862368723688236892369023691236922369323694236952369623697236982369923700237012370223703237042370523706237072370823709237102371123712237132371423715237162371723718237192372023721237222372323724237252372623727237282372923730237312373223733237342373523736237372373823739237402374123742237432374423745237462374723748237492375023751237522375323754237552375623757237582375923760237612376223763237642376523766237672376823769237702377123772237732377423775237762377723778237792378023781237822378323784237852378623787237882378923790237912379223793237942379523796237972379823799238002380123802238032380423805238062380723808238092381023811238122381323814238152381623817238182381923820238212382223823238242382523826238272382823829238302383123832238332383423835238362383723838238392384023841238422384323844238452384623847238482384923850238512385223853238542385523856238572385823859238602386123862238632386423865238662386723868238692387023871238722387323874238752387623877238782387923880238812388223883238842388523886238872388823889238902389123892238932389423895238962389723898238992390023901239022390323904239052390623907239082390923910239112391223913239142391523916239172391823919239202392123922239232392423925239262392723928239292393023931239322393323934239352393623937239382393923940239412394223943239442394523946239472394823949239502395123952239532395423955239562395723958239592396023961239622396323964239652396623967239682396923970239712397223973239742397523976239772397823979239802398123982239832398423985239862398723988239892399023991239922399323994239952399623997239982399924000240012400224003240042400524006240072400824009240102401124012240132401424015240162401724018240192402024021240222402324024240252402624027240282402924030240312403224033240342403524036240372403824039240402404124042240432404424045240462404724048240492405024051240522405324054240552405624057240582405924060240612406224063240642406524066240672406824069240702407124072240732407424075240762407724078240792408024081240822408324084240852408624087240882408924090240912409224093240942409524096240972409824099241002410124102241032410424105241062410724108241092411024111241122411324114241152411624117241182411924120241212412224123241242412524126241272412824129241302413124132241332413424135241362413724138241392414024141241422414324144241452414624147241482414924150241512415224153241542415524156241572415824159241602416124162241632416424165241662416724168241692417024171241722417324174241752417624177241782417924180241812418224183241842418524186241872418824189241902419124192241932419424195241962419724198241992420024201242022420324204242052420624207242082420924210242112421224213242142421524216242172421824219242202422124222242232422424225242262422724228242292423024231242322423324234242352423624237242382423924240242412424224243242442424524246242472424824249242502425124252242532425424255242562425724258242592426024261242622426324264242652426624267242682426924270242712427224273242742427524276242772427824279242802428124282242832428424285242862428724288242892429024291242922429324294242952429624297242982429924300243012430224303243042430524306243072430824309243102431124312243132431424315243162431724318243192432024321243222432324324243252432624327243282432924330243312433224333243342433524336243372433824339243402434124342243432434424345243462434724348243492435024351243522435324354243552435624357243582435924360243612436224363243642436524366243672436824369243702437124372243732437424375243762437724378243792438024381243822438324384243852438624387243882438924390243912439224393243942439524396243972439824399244002440124402244032440424405244062440724408244092441024411244122441324414244152441624417244182441924420244212442224423244242442524426244272442824429244302443124432244332443424435244362443724438244392444024441244422444324444244452444624447244482444924450244512445224453244542445524456244572445824459244602446124462244632446424465244662446724468244692447024471244722447324474244752447624477244782447924480244812448224483244842448524486244872448824489244902449124492244932449424495244962449724498244992450024501245022450324504245052450624507245082450924510245112451224513245142451524516245172451824519245202452124522245232452424525245262452724528245292453024531245322453324534245352453624537245382453924540245412454224543245442454524546245472454824549245502455124552245532455424555245562455724558245592456024561245622456324564245652456624567245682456924570245712457224573245742457524576245772457824579245802458124582245832458424585245862458724588245892459024591245922459324594245952459624597245982459924600246012460224603246042460524606246072460824609246102461124612246132461424615246162461724618246192462024621246222462324624246252462624627246282462924630246312463224633246342463524636246372463824639246402464124642246432464424645246462464724648246492465024651246522465324654246552465624657246582465924660246612466224663246642466524666246672466824669246702467124672246732467424675246762467724678246792468024681246822468324684246852468624687246882468924690246912469224693246942469524696246972469824699247002470124702247032470424705247062470724708247092471024711247122471324714247152471624717247182471924720247212472224723247242472524726247272472824729247302473124732247332473424735247362473724738247392474024741247422474324744247452474624747247482474924750247512475224753247542475524756247572475824759247602476124762247632476424765247662476724768247692477024771247722477324774247752477624777247782477924780247812478224783247842478524786247872478824789247902479124792247932479424795247962479724798247992480024801248022480324804248052480624807248082480924810248112481224813248142481524816248172481824819248202482124822248232482424825248262482724828248292483024831248322483324834248352483624837248382483924840248412484224843248442484524846248472484824849248502485124852248532485424855248562485724858248592486024861248622486324864248652486624867248682486924870248712487224873248742487524876248772487824879248802488124882248832488424885248862488724888248892489024891248922489324894248952489624897248982489924900249012490224903249042490524906249072490824909249102491124912249132491424915249162491724918249192492024921249222492324924249252492624927249282492924930249312493224933249342493524936249372493824939249402494124942249432494424945249462494724948249492495024951249522495324954249552495624957249582495924960249612496224963249642496524966249672496824969249702497124972249732497424975249762497724978249792498024981249822498324984249852498624987249882498924990249912499224993249942499524996249972499824999250002500125002250032500425005250062500725008250092501025011250122501325014250152501625017250182501925020250212502225023250242502525026250272502825029250302503125032250332503425035250362503725038250392504025041250422504325044250452504625047250482504925050250512505225053250542505525056250572505825059250602506125062250632506425065250662506725068250692507025071250722507325074250752507625077250782507925080250812508225083250842508525086250872508825089250902509125092250932509425095250962509725098250992510025101251022510325104251052510625107251082510925110251112511225113251142511525116251172511825119251202512125122251232512425125251262512725128251292513025131251322513325134251352513625137251382513925140251412514225143251442514525146251472514825149251502515125152251532515425155251562515725158251592516025161251622516325164251652516625167251682516925170251712517225173251742517525176251772517825179251802518125182251832518425185251862518725188251892519025191251922519325194251952519625197251982519925200252012520225203252042520525206252072520825209252102521125212252132521425215252162521725218252192522025221252222522325224252252522625227252282522925230252312523225233252342523525236252372523825239252402524125242252432524425245252462524725248252492525025251252522525325254252552525625257252582525925260252612526225263252642526525266252672526825269252702527125272252732527425275252762527725278252792528025281252822528325284252852528625287252882528925290252912529225293252942529525296252972529825299253002530125302253032530425305253062530725308253092531025311253122531325314253152531625317253182531925320253212532225323253242532525326253272532825329253302533125332253332533425335253362533725338253392534025341253422534325344253452534625347253482534925350253512535225353253542535525356253572535825359253602536125362253632536425365253662536725368253692537025371253722537325374253752537625377253782537925380253812538225383253842538525386253872538825389253902539125392253932539425395253962539725398253992540025401254022540325404254052540625407254082540925410254112541225413254142541525416254172541825419254202542125422254232542425425254262542725428254292543025431254322543325434254352543625437254382543925440254412544225443254442544525446254472544825449254502545125452254532545425455254562545725458254592546025461254622546325464254652546625467254682546925470254712547225473254742547525476254772547825479254802548125482254832548425485254862548725488254892549025491254922549325494254952549625497254982549925500255012550225503255042550525506255072550825509255102551125512255132551425515255162551725518255192552025521255222552325524255252552625527255282552925530255312553225533255342553525536255372553825539255402554125542255432554425545255462554725548255492555025551255522555325554255552555625557255582555925560255612556225563255642556525566255672556825569255702557125572255732557425575255762557725578255792558025581255822558325584255852558625587255882558925590255912559225593255942559525596255972559825599256002560125602256032560425605256062560725608256092561025611256122561325614256152561625617256182561925620256212562225623256242562525626256272562825629256302563125632256332563425635256362563725638256392564025641256422564325644256452564625647256482564925650256512565225653256542565525656256572565825659256602566125662256632566425665256662566725668256692567025671256722567325674256752567625677256782567925680256812568225683256842568525686256872568825689256902569125692256932569425695256962569725698256992570025701257022570325704257052570625707257082570925710257112571225713257142571525716257172571825719257202572125722257232572425725257262572725728257292573025731257322573325734257352573625737257382573925740257412574225743257442574525746257472574825749257502575125752257532575425755257562575725758257592576025761257622576325764257652576625767257682576925770257712577225773257742577525776257772577825779257802578125782257832578425785257862578725788257892579025791257922579325794257952579625797257982579925800258012580225803258042580525806258072580825809258102581125812258132581425815258162581725818258192582025821258222582325824258252582625827258282582925830258312583225833258342583525836258372583825839258402584125842258432584425845258462584725848258492585025851258522585325854258552585625857258582585925860258612586225863258642586525866258672586825869258702587125872258732587425875258762587725878258792588025881258822588325884258852588625887258882588925890258912589225893258942589525896258972589825899259002590125902259032590425905259062590725908259092591025911259122591325914259152591625917259182591925920259212592225923259242592525926259272592825929259302593125932259332593425935259362593725938259392594025941259422594325944259452594625947259482594925950259512595225953259542595525956259572595825959259602596125962259632596425965259662596725968259692597025971259722597325974259752597625977259782597925980259812598225983259842598525986259872598825989259902599125992259932599425995259962599725998259992600026001260022600326004260052600626007260082600926010260112601226013260142601526016260172601826019260202602126022260232602426025260262602726028260292603026031260322603326034260352603626037260382603926040260412604226043260442604526046260472604826049260502605126052260532605426055260562605726058260592606026061260622606326064260652606626067260682606926070260712607226073260742607526076260772607826079260802608126082260832608426085260862608726088260892609026091260922609326094260952609626097260982609926100261012610226103261042610526106261072610826109261102611126112261132611426115261162611726118261192612026121261222612326124261252612626127261282612926130261312613226133261342613526136261372613826139261402614126142261432614426145261462614726148261492615026151261522615326154261552615626157261582615926160261612616226163261642616526166261672616826169261702617126172261732617426175261762617726178261792618026181261822618326184261852618626187261882618926190261912619226193261942619526196261972619826199262002620126202262032620426205262062620726208262092621026211262122621326214262152621626217262182621926220262212622226223262242622526226262272622826229262302623126232262332623426235262362623726238262392624026241262422624326244262452624626247262482624926250262512625226253262542625526256262572625826259262602626126262262632626426265262662626726268262692627026271262722627326274262752627626277262782627926280262812628226283262842628526286262872628826289262902629126292262932629426295262962629726298262992630026301263022630326304263052630626307263082630926310263112631226313263142631526316263172631826319263202632126322263232632426325263262632726328263292633026331263322633326334263352633626337263382633926340263412634226343263442634526346263472634826349263502635126352263532635426355263562635726358263592636026361263622636326364263652636626367263682636926370263712637226373263742637526376263772637826379263802638126382263832638426385263862638726388263892639026391263922639326394263952639626397263982639926400264012640226403264042640526406264072640826409264102641126412264132641426415264162641726418264192642026421264222642326424264252642626427264282642926430264312643226433264342643526436264372643826439264402644126442264432644426445264462644726448264492645026451264522645326454264552645626457264582645926460264612646226463264642646526466264672646826469264702647126472264732647426475264762647726478264792648026481264822648326484264852648626487264882648926490264912649226493264942649526496264972649826499265002650126502265032650426505265062650726508265092651026511265122651326514265152651626517265182651926520265212652226523265242652526526265272652826529265302653126532265332653426535265362653726538265392654026541265422654326544265452654626547265482654926550265512655226553265542655526556265572655826559265602656126562265632656426565265662656726568265692657026571265722657326574265752657626577265782657926580265812658226583265842658526586265872658826589265902659126592265932659426595265962659726598265992660026601266022660326604266052660626607266082660926610266112661226613266142661526616266172661826619266202662126622266232662426625266262662726628266292663026631266322663326634266352663626637266382663926640266412664226643266442664526646266472664826649266502665126652266532665426655266562665726658266592666026661266622666326664266652666626667266682666926670266712667226673266742667526676266772667826679266802668126682266832668426685266862668726688266892669026691266922669326694266952669626697266982669926700267012670226703267042670526706267072670826709267102671126712267132671426715267162671726718267192672026721267222672326724267252672626727267282672926730267312673226733267342673526736267372673826739267402674126742267432674426745267462674726748267492675026751267522675326754267552675626757267582675926760267612676226763267642676526766267672676826769267702677126772267732677426775267762677726778267792678026781267822678326784267852678626787267882678926790267912679226793267942679526796267972679826799268002680126802268032680426805268062680726808268092681026811268122681326814268152681626817268182681926820268212682226823268242682526826268272682826829268302683126832268332683426835268362683726838268392684026841268422684326844268452684626847268482684926850268512685226853268542685526856268572685826859268602686126862268632686426865268662686726868268692687026871268722687326874268752687626877268782687926880268812688226883268842688526886268872688826889268902689126892268932689426895268962689726898268992690026901269022690326904269052690626907269082690926910269112691226913269142691526916269172691826919269202692126922269232692426925269262692726928269292693026931269322693326934269352693626937269382693926940269412694226943269442694526946269472694826949269502695126952269532695426955269562695726958269592696026961269622696326964269652696626967269682696926970269712697226973269742697526976269772697826979269802698126982269832698426985269862698726988269892699026991269922699326994269952699626997269982699927000270012700227003270042700527006270072700827009270102701127012270132701427015270162701727018270192702027021270222702327024270252702627027270282702927030270312703227033270342703527036270372703827039270402704127042270432704427045270462704727048270492705027051270522705327054270552705627057270582705927060270612706227063270642706527066270672706827069270702707127072270732707427075270762707727078270792708027081270822708327084270852708627087270882708927090270912709227093270942709527096270972709827099271002710127102271032710427105271062710727108271092711027111271122711327114271152711627117271182711927120271212712227123271242712527126271272712827129271302713127132271332713427135271362713727138271392714027141271422714327144271452714627147271482714927150271512715227153271542715527156271572715827159271602716127162271632716427165271662716727168271692717027171271722717327174271752717627177271782717927180271812718227183271842718527186271872718827189271902719127192271932719427195271962719727198271992720027201272022720327204272052720627207272082720927210272112721227213272142721527216272172721827219272202722127222272232722427225272262722727228272292723027231272322723327234272352723627237272382723927240272412724227243272442724527246272472724827249272502725127252272532725427255272562725727258272592726027261272622726327264272652726627267272682726927270272712727227273272742727527276272772727827279272802728127282272832728427285272862728727288272892729027291272922729327294272952729627297272982729927300273012730227303273042730527306273072730827309273102731127312273132731427315273162731727318273192732027321273222732327324273252732627327273282732927330273312733227333273342733527336273372733827339273402734127342273432734427345273462734727348273492735027351273522735327354273552735627357273582735927360273612736227363273642736527366273672736827369273702737127372273732737427375273762737727378273792738027381273822738327384273852738627387273882738927390273912739227393273942739527396273972739827399274002740127402274032740427405274062740727408274092741027411274122741327414274152741627417274182741927420274212742227423274242742527426274272742827429274302743127432274332743427435274362743727438274392744027441274422744327444274452744627447274482744927450274512745227453274542745527456274572745827459274602746127462274632746427465274662746727468274692747027471274722747327474274752747627477274782747927480274812748227483274842748527486274872748827489274902749127492274932749427495274962749727498274992750027501275022750327504275052750627507275082750927510275112751227513275142751527516275172751827519275202752127522275232752427525275262752727528275292753027531275322753327534275352753627537275382753927540275412754227543275442754527546275472754827549275502755127552275532755427555275562755727558275592756027561275622756327564275652756627567275682756927570275712757227573275742757527576275772757827579275802758127582275832758427585275862758727588275892759027591275922759327594275952759627597275982759927600276012760227603276042760527606276072760827609276102761127612276132761427615276162761727618276192762027621276222762327624276252762627627276282762927630276312763227633276342763527636276372763827639276402764127642276432764427645276462764727648276492765027651276522765327654276552765627657276582765927660276612766227663276642766527666276672766827669276702767127672276732767427675276762767727678276792768027681276822768327684276852768627687276882768927690276912769227693276942769527696276972769827699277002770127702277032770427705277062770727708277092771027711277122771327714277152771627717277182771927720277212772227723277242772527726277272772827729277302773127732277332773427735277362773727738277392774027741277422774327744277452774627747277482774927750277512775227753277542775527756277572775827759277602776127762277632776427765277662776727768277692777027771277722777327774277752777627777277782777927780277812778227783277842778527786277872778827789277902779127792277932779427795277962779727798277992780027801278022780327804278052780627807278082780927810278112781227813278142781527816278172781827819278202782127822278232782427825278262782727828278292783027831278322783327834278352783627837278382783927840278412784227843278442784527846278472784827849278502785127852278532785427855278562785727858278592786027861278622786327864278652786627867278682786927870278712787227873278742787527876278772787827879278802788127882278832788427885278862788727888278892789027891278922789327894278952789627897278982789927900279012790227903279042790527906279072790827909279102791127912279132791427915279162791727918279192792027921279222792327924279252792627927279282792927930279312793227933279342793527936279372793827939279402794127942279432794427945279462794727948279492795027951279522795327954279552795627957279582795927960279612796227963279642796527966279672796827969279702797127972279732797427975279762797727978279792798027981279822798327984279852798627987279882798927990279912799227993279942799527996279972799827999280002800128002280032800428005280062800728008280092801028011280122801328014280152801628017280182801928020280212802228023280242802528026280272802828029280302803128032280332803428035280362803728038280392804028041280422804328044280452804628047280482804928050280512805228053280542805528056280572805828059280602806128062280632806428065280662806728068280692807028071280722807328074280752807628077280782807928080280812808228083280842808528086280872808828089280902809128092280932809428095280962809728098280992810028101281022810328104281052810628107281082810928110281112811228113281142811528116281172811828119281202812128122281232812428125281262812728128281292813028131281322813328134281352813628137281382813928140281412814228143281442814528146281472814828149281502815128152281532815428155281562815728158281592816028161281622816328164281652816628167281682816928170281712817228173281742817528176281772817828179281802818128182281832818428185281862818728188281892819028191281922819328194281952819628197281982819928200282012820228203282042820528206282072820828209282102821128212282132821428215282162821728218282192822028221282222822328224282252822628227282282822928230282312823228233282342823528236282372823828239282402824128242282432824428245282462824728248282492825028251282522825328254282552825628257282582825928260282612826228263282642826528266282672826828269282702827128272282732827428275282762827728278282792828028281282822828328284282852828628287282882828928290282912829228293282942829528296282972829828299283002830128302283032830428305283062830728308283092831028311283122831328314283152831628317283182831928320283212832228323283242832528326283272832828329283302833128332283332833428335283362833728338283392834028341283422834328344283452834628347283482834928350283512835228353283542835528356283572835828359283602836128362283632836428365283662836728368283692837028371283722837328374283752837628377283782837928380283812838228383283842838528386283872838828389283902839128392283932839428395283962839728398283992840028401284022840328404284052840628407284082840928410284112841228413284142841528416284172841828419284202842128422284232842428425284262842728428284292843028431284322843328434284352843628437284382843928440284412844228443284442844528446284472844828449284502845128452284532845428455284562845728458284592846028461284622846328464284652846628467284682846928470284712847228473284742847528476284772847828479284802848128482284832848428485284862848728488284892849028491284922849328494284952849628497284982849928500285012850228503285042850528506285072850828509285102851128512285132851428515285162851728518285192852028521285222852328524285252852628527285282852928530285312853228533285342853528536285372853828539285402854128542285432854428545285462854728548285492855028551285522855328554285552855628557285582855928560285612856228563285642856528566285672856828569285702857128572285732857428575285762857728578285792858028581285822858328584285852858628587285882858928590285912859228593285942859528596285972859828599286002860128602286032860428605286062860728608286092861028611286122861328614286152861628617286182861928620286212862228623286242862528626286272862828629286302863128632286332863428635286362863728638286392864028641286422864328644286452864628647286482864928650286512865228653286542865528656286572865828659286602866128662286632866428665286662866728668286692867028671286722867328674286752867628677286782867928680286812868228683286842868528686286872868828689286902869128692286932869428695286962869728698286992870028701287022870328704287052870628707287082870928710287112871228713287142871528716287172871828719287202872128722287232872428725287262872728728287292873028731287322873328734287352873628737287382873928740287412874228743287442874528746287472874828749287502875128752287532875428755287562875728758287592876028761287622876328764287652876628767287682876928770287712877228773287742877528776287772877828779287802878128782287832878428785287862878728788287892879028791287922879328794287952879628797287982879928800288012880228803288042880528806288072880828809288102881128812288132881428815288162881728818288192882028821288222882328824288252882628827288282882928830288312883228833288342883528836288372883828839288402884128842288432884428845288462884728848288492885028851288522885328854288552885628857288582885928860288612886228863288642886528866288672886828869288702887128872288732887428875288762887728878288792888028881288822888328884288852888628887288882888928890288912889228893288942889528896288972889828899289002890128902289032890428905289062890728908289092891028911289122891328914289152891628917289182891928920289212892228923289242892528926289272892828929289302893128932289332893428935289362893728938289392894028941289422894328944289452894628947289482894928950289512895228953289542895528956289572895828959289602896128962289632896428965289662896728968289692897028971289722897328974289752897628977289782897928980289812898228983289842898528986289872898828989289902899128992289932899428995289962899728998289992900029001290022900329004290052900629007290082900929010290112901229013290142901529016290172901829019290202902129022290232902429025290262902729028290292903029031290322903329034290352903629037290382903929040290412904229043290442904529046290472904829049290502905129052290532905429055290562905729058290592906029061290622906329064290652906629067290682906929070290712907229073290742907529076290772907829079290802908129082290832908429085290862908729088290892909029091290922909329094290952909629097290982909929100291012910229103291042910529106291072910829109291102911129112291132911429115291162911729118291192912029121291222912329124291252912629127291282912929130291312913229133291342913529136291372913829139291402914129142291432914429145291462914729148291492915029151291522915329154291552915629157291582915929160291612916229163291642916529166291672916829169291702917129172291732917429175291762917729178291792918029181291822918329184291852918629187291882918929190291912919229193291942919529196291972919829199292002920129202292032920429205292062920729208292092921029211292122921329214292152921629217292182921929220292212922229223292242922529226292272922829229292302923129232292332923429235292362923729238292392924029241292422924329244292452924629247292482924929250292512925229253292542925529256292572925829259292602926129262292632926429265292662926729268292692927029271292722927329274292752927629277292782927929280292812928229283292842928529286292872928829289292902929129292292932929429295292962929729298292992930029301293022930329304293052930629307293082930929310293112931229313293142931529316293172931829319293202932129322293232932429325293262932729328293292933029331293322933329334293352933629337293382933929340293412934229343293442934529346293472934829349293502935129352293532935429355293562935729358293592936029361293622936329364293652936629367293682936929370293712937229373293742937529376293772937829379293802938129382293832938429385293862938729388293892939029391293922939329394293952939629397293982939929400294012940229403294042940529406294072940829409294102941129412294132941429415294162941729418294192942029421294222942329424294252942629427294282942929430294312943229433294342943529436294372943829439294402944129442294432944429445294462944729448294492945029451294522945329454294552945629457294582945929460294612946229463294642946529466294672946829469294702947129472294732947429475294762947729478294792948029481294822948329484294852948629487294882948929490294912949229493294942949529496294972949829499295002950129502295032950429505295062950729508295092951029511295122951329514295152951629517295182951929520295212952229523295242952529526295272952829529295302953129532295332953429535295362953729538295392954029541295422954329544295452954629547295482954929550295512955229553295542955529556295572955829559295602956129562295632956429565295662956729568295692957029571295722957329574295752957629577295782957929580295812958229583295842958529586295872958829589295902959129592295932959429595295962959729598295992960029601296022960329604296052960629607296082960929610296112961229613296142961529616296172961829619296202962129622296232962429625296262962729628296292963029631296322963329634296352963629637296382963929640296412964229643296442964529646296472964829649296502965129652296532965429655296562965729658296592966029661296622966329664296652966629667296682966929670296712967229673296742967529676296772967829679296802968129682296832968429685296862968729688296892969029691296922969329694296952969629697296982969929700297012970229703297042970529706297072970829709297102971129712297132971429715297162971729718297192972029721297222972329724297252972629727297282972929730297312973229733297342973529736297372973829739297402974129742297432974429745297462974729748297492975029751297522975329754297552975629757297582975929760297612976229763297642976529766297672976829769297702977129772297732977429775297762977729778297792978029781297822978329784297852978629787297882978929790297912979229793297942979529796297972979829799298002980129802298032980429805298062980729808298092981029811298122981329814298152981629817298182981929820298212982229823298242982529826298272982829829298302983129832298332983429835298362983729838298392984029841298422984329844298452984629847298482984929850298512985229853298542985529856298572985829859298602986129862298632986429865298662986729868298692987029871298722987329874298752987629877298782987929880298812988229883298842988529886298872988829889298902989129892298932989429895298962989729898298992990029901299022990329904299052990629907299082990929910299112991229913299142991529916299172991829919299202992129922299232992429925299262992729928299292993029931299322993329934299352993629937299382993929940299412994229943299442994529946299472994829949299502995129952299532995429955299562995729958299592996029961299622996329964299652996629967299682996929970299712997229973299742997529976299772997829979299802998129982299832998429985299862998729988299892999029991299922999329994299952999629997299982999930000300013000230003300043000530006300073000830009300103001130012300133001430015300163001730018300193002030021300223002330024300253002630027300283002930030300313003230033300343003530036300373003830039300403004130042300433004430045300463004730048300493005030051300523005330054300553005630057300583005930060300613006230063300643006530066300673006830069300703007130072300733007430075300763007730078300793008030081300823008330084300853008630087300883008930090300913009230093300943009530096300973009830099301003010130102301033010430105301063010730108301093011030111301123011330114301153011630117301183011930120301213012230123301243012530126301273012830129301303013130132301333013430135301363013730138301393014030141301423014330144301453014630147301483014930150301513015230153301543015530156301573015830159301603016130162301633016430165301663016730168301693017030171301723017330174301753017630177301783017930180301813018230183301843018530186301873018830189301903019130192301933019430195301963019730198301993020030201302023020330204302053020630207302083020930210302113021230213302143021530216302173021830219302203022130222302233022430225302263022730228302293023030231302323023330234302353023630237302383023930240302413024230243302443024530246302473024830249302503025130252302533025430255302563025730258302593026030261302623026330264302653026630267302683026930270302713027230273302743027530276302773027830279302803028130282302833028430285302863028730288302893029030291302923029330294302953029630297302983029930300303013030230303303043030530306303073030830309303103031130312303133031430315303163031730318303193032030321303223032330324303253032630327303283032930330303313033230333303343033530336303373033830339303403034130342303433034430345303463034730348303493035030351303523035330354303553035630357303583035930360303613036230363303643036530366303673036830369303703037130372303733037430375303763037730378303793038030381303823038330384303853038630387303883038930390303913039230393303943039530396303973039830399304003040130402304033040430405304063040730408304093041030411304123041330414304153041630417304183041930420304213042230423304243042530426304273042830429304303043130432304333043430435304363043730438304393044030441304423044330444304453044630447304483044930450304513045230453304543045530456304573045830459304603046130462304633046430465304663046730468304693047030471304723047330474304753047630477304783047930480304813048230483304843048530486304873048830489304903049130492304933049430495304963049730498304993050030501305023050330504305053050630507305083050930510305113051230513305143051530516305173051830519305203052130522305233052430525305263052730528305293053030531305323053330534305353053630537305383053930540305413054230543305443054530546305473054830549305503055130552305533055430555305563055730558305593056030561305623056330564305653056630567305683056930570305713057230573305743057530576305773057830579305803058130582305833058430585305863058730588305893059030591305923059330594305953059630597305983059930600306013060230603306043060530606306073060830609306103061130612306133061430615306163061730618306193062030621306223062330624306253062630627306283062930630306313063230633306343063530636306373063830639306403064130642306433064430645306463064730648306493065030651306523065330654306553065630657306583065930660306613066230663306643066530666306673066830669306703067130672306733067430675306763067730678306793068030681306823068330684306853068630687306883068930690306913069230693306943069530696306973069830699307003070130702307033070430705307063070730708307093071030711307123071330714307153071630717307183071930720307213072230723307243072530726307273072830729307303073130732307333073430735307363073730738307393074030741307423074330744307453074630747307483074930750307513075230753307543075530756307573075830759307603076130762307633076430765307663076730768307693077030771307723077330774307753077630777307783077930780307813078230783307843078530786307873078830789307903079130792307933079430795307963079730798307993080030801308023080330804308053080630807308083080930810308113081230813308143081530816308173081830819308203082130822308233082430825308263082730828308293083030831308323083330834308353083630837308383083930840308413084230843308443084530846308473084830849308503085130852308533085430855308563085730858308593086030861308623086330864308653086630867308683086930870308713087230873308743087530876308773087830879308803088130882308833088430885308863088730888308893089030891308923089330894308953089630897308983089930900309013090230903309043090530906309073090830909309103091130912309133091430915309163091730918309193092030921309223092330924309253092630927309283092930930309313093230933309343093530936309373093830939309403094130942309433094430945309463094730948309493095030951309523095330954309553095630957309583095930960309613096230963309643096530966309673096830969309703097130972309733097430975309763097730978309793098030981309823098330984309853098630987309883098930990309913099230993309943099530996309973099830999310003100131002310033100431005310063100731008310093101031011310123101331014310153101631017310183101931020310213102231023310243102531026310273102831029310303103131032310333103431035310363103731038310393104031041310423104331044310453104631047310483104931050310513105231053310543105531056310573105831059310603106131062310633106431065310663106731068310693107031071310723107331074310753107631077310783107931080310813108231083310843108531086310873108831089310903109131092310933109431095310963109731098310993110031101311023110331104311053110631107311083110931110311113111231113311143111531116311173111831119311203112131122311233112431125311263112731128311293113031131311323113331134311353113631137311383113931140311413114231143311443114531146311473114831149311503115131152311533115431155311563115731158311593116031161311623116331164311653116631167311683116931170311713117231173311743117531176311773117831179311803118131182311833118431185311863118731188311893119031191311923119331194311953119631197311983119931200312013120231203312043120531206312073120831209312103121131212312133121431215312163121731218312193122031221312223122331224312253122631227312283122931230312313123231233312343123531236312373123831239312403124131242312433124431245312463124731248312493125031251312523125331254312553125631257312583125931260312613126231263312643126531266312673126831269312703127131272312733127431275312763127731278312793128031281312823128331284312853128631287312883128931290312913129231293312943129531296312973129831299313003130131302313033130431305313063130731308313093131031311313123131331314313153131631317313183131931320313213132231323313243132531326313273132831329313303133131332313333133431335313363133731338313393134031341313423134331344313453134631347313483134931350313513135231353313543135531356313573135831359313603136131362313633136431365313663136731368313693137031371313723137331374313753137631377313783137931380313813138231383313843138531386313873138831389313903139131392313933139431395313963139731398313993140031401314023140331404314053140631407314083140931410314113141231413314143141531416314173141831419314203142131422314233142431425314263142731428314293143031431314323143331434314353143631437314383143931440314413144231443314443144531446314473144831449314503145131452314533145431455314563145731458314593146031461314623146331464314653146631467314683146931470314713147231473314743147531476314773147831479314803148131482314833148431485314863148731488314893149031491314923149331494314953149631497314983149931500315013150231503315043150531506315073150831509315103151131512315133151431515315163151731518315193152031521315223152331524315253152631527315283152931530315313153231533315343153531536315373153831539315403154131542315433154431545315463154731548315493155031551315523155331554315553155631557315583155931560315613156231563315643156531566315673156831569315703157131572315733157431575315763157731578315793158031581315823158331584315853158631587315883158931590315913159231593315943159531596315973159831599316003160131602316033160431605316063160731608316093161031611316123161331614316153161631617316183161931620316213162231623316243162531626316273162831629316303163131632316333163431635316363163731638316393164031641316423164331644316453164631647316483164931650316513165231653316543165531656316573165831659316603166131662316633166431665316663166731668316693167031671316723167331674316753167631677316783167931680316813168231683316843168531686316873168831689316903169131692316933169431695316963169731698316993170031701317023170331704317053170631707317083170931710317113171231713317143171531716317173171831719317203172131722317233172431725317263172731728317293173031731317323173331734317353173631737317383173931740317413174231743317443174531746317473174831749317503175131752317533175431755317563175731758317593176031761317623176331764317653176631767317683176931770317713177231773317743177531776317773177831779317803178131782317833178431785317863178731788317893179031791317923179331794317953179631797317983179931800318013180231803318043180531806318073180831809318103181131812318133181431815318163181731818318193182031821318223182331824318253182631827318283182931830318313183231833318343183531836318373183831839318403184131842318433184431845318463184731848318493185031851318523185331854318553185631857318583185931860318613186231863318643186531866318673186831869318703187131872318733187431875318763187731878318793188031881318823188331884318853188631887318883188931890318913189231893318943189531896318973189831899319003190131902319033190431905319063190731908319093191031911319123191331914319153191631917319183191931920319213192231923319243192531926319273192831929319303193131932319333193431935319363193731938319393194031941319423194331944319453194631947319483194931950319513195231953319543195531956319573195831959319603196131962319633196431965319663196731968319693197031971319723197331974319753197631977319783197931980319813198231983319843198531986319873198831989319903199131992319933199431995319963199731998319993200032001320023200332004320053200632007320083200932010320113201232013320143201532016320173201832019320203202132022320233202432025320263202732028320293203032031320323203332034320353203632037320383203932040320413204232043320443204532046320473204832049320503205132052320533205432055320563205732058320593206032061320623206332064320653206632067320683206932070320713207232073320743207532076320773207832079320803208132082320833208432085320863208732088320893209032091320923209332094320953209632097320983209932100321013210232103321043210532106321073210832109321103211132112321133211432115321163211732118321193212032121321223212332124321253212632127321283212932130321313213232133321343213532136321373213832139321403214132142321433214432145321463214732148321493215032151321523215332154321553215632157321583215932160321613216232163321643216532166321673216832169321703217132172321733217432175321763217732178321793218032181321823218332184321853218632187321883218932190321913219232193321943219532196321973219832199322003220132202322033220432205322063220732208322093221032211322123221332214322153221632217322183221932220322213222232223322243222532226322273222832229322303223132232322333223432235322363223732238322393224032241322423224332244322453224632247322483224932250322513225232253322543225532256322573225832259322603226132262322633226432265322663226732268322693227032271322723227332274322753227632277322783227932280322813228232283322843228532286322873228832289322903229132292322933229432295322963229732298322993230032301323023230332304323053230632307323083230932310323113231232313323143231532316323173231832319323203232132322323233232432325323263232732328323293233032331323323233332334323353233632337323383233932340323413234232343323443234532346323473234832349323503235132352323533235432355323563235732358323593236032361323623236332364323653236632367323683236932370323713237232373323743237532376323773237832379323803238132382323833238432385323863238732388323893239032391323923239332394323953239632397323983239932400324013240232403324043240532406324073240832409324103241132412324133241432415324163241732418324193242032421324223242332424324253242632427324283242932430324313243232433324343243532436324373243832439324403244132442324433244432445324463244732448324493245032451324523245332454324553245632457324583245932460324613246232463324643246532466324673246832469324703247132472324733247432475324763247732478324793248032481324823248332484324853248632487324883248932490324913249232493324943249532496324973249832499325003250132502325033250432505325063250732508325093251032511325123251332514325153251632517325183251932520325213252232523325243252532526325273252832529325303253132532325333253432535325363253732538325393254032541325423254332544325453254632547325483254932550325513255232553325543255532556325573255832559325603256132562325633256432565325663256732568325693257032571325723257332574325753257632577325783257932580325813258232583325843258532586325873258832589325903259132592325933259432595325963259732598325993260032601326023260332604326053260632607326083260932610326113261232613326143261532616326173261832619326203262132622326233262432625326263262732628326293263032631326323263332634326353263632637326383263932640326413264232643326443264532646326473264832649326503265132652326533265432655326563265732658326593266032661326623266332664326653266632667326683266932670326713267232673326743267532676326773267832679326803268132682326833268432685326863268732688326893269032691326923269332694326953269632697326983269932700327013270232703327043270532706327073270832709327103271132712327133271432715327163271732718327193272032721327223272332724327253272632727327283272932730327313273232733327343273532736327373273832739327403274132742327433274432745327463274732748327493275032751327523275332754327553275632757327583275932760327613276232763327643276532766327673276832769327703277132772327733277432775327763277732778327793278032781327823278332784327853278632787327883278932790327913279232793327943279532796327973279832799328003280132802328033280432805328063280732808328093281032811328123281332814328153281632817328183281932820328213282232823328243282532826328273282832829328303283132832328333283432835328363283732838328393284032841328423284332844328453284632847328483284932850328513285232853328543285532856328573285832859328603286132862328633286432865328663286732868328693287032871328723287332874328753287632877328783287932880328813288232883328843288532886328873288832889328903289132892328933289432895328963289732898328993290032901329023290332904329053290632907329083290932910329113291232913329143291532916329173291832919329203292132922329233292432925329263292732928329293293032931329323293332934329353293632937329383293932940329413294232943329443294532946329473294832949329503295132952329533295432955329563295732958329593296032961329623296332964329653296632967329683296932970329713297232973329743297532976329773297832979329803298132982329833298432985329863298732988329893299032991329923299332994329953299632997329983299933000330013300233003330043300533006330073300833009330103301133012330133301433015330163301733018330193302033021330223302333024330253302633027330283302933030330313303233033330343303533036330373303833039330403304133042330433304433045330463304733048330493305033051330523305333054330553305633057330583305933060330613306233063330643306533066330673306833069330703307133072330733307433075330763307733078330793308033081330823308333084330853308633087330883308933090330913309233093330943309533096330973309833099331003310133102331033310433105331063310733108331093311033111331123311333114331153311633117331183311933120331213312233123331243312533126331273312833129331303313133132331333313433135331363313733138331393314033141331423314333144331453314633147331483314933150331513315233153331543315533156331573315833159331603316133162331633316433165331663316733168331693317033171331723317333174331753317633177331783317933180331813318233183331843318533186331873318833189331903319133192331933319433195331963319733198331993320033201332023320333204332053320633207332083320933210332113321233213332143321533216332173321833219332203322133222332233322433225332263322733228332293323033231332323323333234332353323633237332383323933240332413324233243332443324533246332473324833249332503325133252332533325433255332563325733258332593326033261332623326333264332653326633267332683326933270332713327233273332743327533276332773327833279332803328133282332833328433285332863328733288332893329033291332923329333294332953329633297332983329933300333013330233303333043330533306333073330833309333103331133312333133331433315333163331733318333193332033321333223332333324333253332633327333283332933330333313333233333333343333533336333373333833339333403334133342333433334433345333463334733348333493335033351333523335333354333553335633357333583335933360333613336233363333643336533366333673336833369333703337133372333733337433375333763337733378333793338033381333823338333384333853338633387333883338933390333913339233393333943339533396333973339833399334003340133402334033340433405334063340733408334093341033411334123341333414334153341633417334183341933420334213342233423334243342533426334273342833429334303343133432334333343433435334363343733438334393344033441334423344333444334453344633447334483344933450334513345233453334543345533456334573345833459334603346133462334633346433465334663346733468334693347033471334723347333474334753347633477334783347933480334813348233483334843348533486334873348833489334903349133492334933349433495334963349733498334993350033501335023350333504335053350633507335083350933510335113351233513335143351533516335173351833519335203352133522335233352433525335263352733528335293353033531335323353333534335353353633537335383353933540335413354233543335443354533546335473354833549335503355133552335533355433555335563355733558335593356033561335623356333564335653356633567335683356933570335713357233573335743357533576335773357833579335803358133582335833358433585335863358733588335893359033591335923359333594335953359633597335983359933600336013360233603336043360533606336073360833609336103361133612336133361433615336163361733618336193362033621336223362333624336253362633627336283362933630336313363233633336343363533636336373363833639336403364133642336433364433645336463364733648336493365033651336523365333654336553365633657336583365933660336613366233663336643366533666336673366833669336703367133672336733367433675336763367733678336793368033681336823368333684336853368633687336883368933690336913369233693336943369533696336973369833699337003370133702337033370433705337063370733708337093371033711337123371333714337153371633717337183371933720337213372233723337243372533726337273372833729337303373133732337333373433735337363373733738337393374033741337423374333744337453374633747337483374933750337513375233753337543375533756337573375833759337603376133762337633376433765337663376733768337693377033771337723377333774337753377633777337783377933780337813378233783337843378533786337873378833789337903379133792337933379433795337963379733798337993380033801338023380333804338053380633807338083380933810338113381233813338143381533816338173381833819338203382133822338233382433825338263382733828338293383033831338323383333834338353383633837338383383933840338413384233843338443384533846338473384833849338503385133852338533385433855338563385733858338593386033861338623386333864338653386633867338683386933870338713387233873338743387533876338773387833879338803388133882338833388433885338863388733888338893389033891338923389333894338953389633897338983389933900339013390233903339043390533906339073390833909339103391133912339133391433915339163391733918339193392033921339223392333924339253392633927339283392933930339313393233933339343393533936339373393833939339403394133942339433394433945339463394733948339493395033951339523395333954339553395633957339583395933960339613396233963339643396533966339673396833969339703397133972339733397433975339763397733978339793398033981339823398333984339853398633987339883398933990339913399233993339943399533996339973399833999340003400134002340033400434005340063400734008340093401034011340123401334014340153401634017340183401934020340213402234023340243402534026340273402834029340303403134032340333403434035340363403734038340393404034041340423404334044340453404634047340483404934050340513405234053340543405534056340573405834059340603406134062340633406434065340663406734068340693407034071340723407334074340753407634077340783407934080340813408234083340843408534086340873408834089340903409134092340933409434095340963409734098340993410034101341023410334104341053410634107341083410934110341113411234113341143411534116341173411834119341203412134122341233412434125341263412734128341293413034131341323413334134341353413634137341383413934140341413414234143341443414534146341473414834149341503415134152341533415434155341563415734158341593416034161341623416334164341653416634167341683416934170341713417234173341743417534176341773417834179341803418134182341833418434185341863418734188341893419034191341923419334194341953419634197341983419934200342013420234203342043420534206342073420834209342103421134212342133421434215342163421734218342193422034221342223422334224342253422634227342283422934230342313423234233342343423534236342373423834239342403424134242342433424434245342463424734248342493425034251342523425334254342553425634257342583425934260342613426234263342643426534266342673426834269342703427134272342733427434275342763427734278342793428034281342823428334284342853428634287342883428934290342913429234293342943429534296342973429834299343003430134302343033430434305343063430734308343093431034311343123431334314343153431634317343183431934320343213432234323343243432534326343273432834329343303433134332343333433434335343363433734338343393434034341343423434334344343453434634347343483434934350343513435234353343543435534356343573435834359343603436134362343633436434365343663436734368343693437034371343723437334374343753437634377343783437934380343813438234383343843438534386343873438834389343903439134392343933439434395343963439734398343993440034401344023440334404344053440634407344083440934410344113441234413344143441534416344173441834419344203442134422344233442434425344263442734428344293443034431344323443334434344353443634437344383443934440344413444234443344443444534446344473444834449344503445134452344533445434455344563445734458344593446034461344623446334464344653446634467344683446934470344713447234473344743447534476344773447834479344803448134482344833448434485344863448734488344893449034491344923449334494344953449634497344983449934500345013450234503345043450534506345073450834509345103451134512345133451434515345163451734518345193452034521345223452334524345253452634527345283452934530345313453234533345343453534536345373453834539345403454134542345433454434545345463454734548345493455034551345523455334554345553455634557345583455934560345613456234563345643456534566345673456834569345703457134572345733457434575345763457734578345793458034581345823458334584345853458634587345883458934590345913459234593345943459534596345973459834599346003460134602346033460434605346063460734608346093461034611346123461334614346153461634617346183461934620346213462234623346243462534626346273462834629346303463134632346333463434635346363463734638346393464034641346423464334644346453464634647346483464934650346513465234653346543465534656346573465834659346603466134662346633466434665346663466734668346693467034671346723467334674346753467634677346783467934680346813468234683346843468534686346873468834689346903469134692346933469434695346963469734698346993470034701347023470334704347053470634707347083470934710347113471234713347143471534716347173471834719347203472134722347233472434725347263472734728347293473034731347323473334734347353473634737347383473934740347413474234743347443474534746347473474834749347503475134752347533475434755347563475734758347593476034761347623476334764347653476634767347683476934770347713477234773347743477534776347773477834779347803478134782347833478434785347863478734788347893479034791347923479334794347953479634797347983479934800348013480234803348043480534806348073480834809348103481134812348133481434815348163481734818348193482034821348223482334824348253482634827348283482934830348313483234833348343483534836348373483834839348403484134842348433484434845348463484734848348493485034851348523485334854348553485634857348583485934860348613486234863348643486534866348673486834869348703487134872348733487434875348763487734878348793488034881348823488334884348853488634887348883488934890348913489234893348943489534896348973489834899349003490134902349033490434905349063490734908349093491034911349123491334914349153491634917349183491934920349213492234923349243492534926349273492834929349303493134932349333493434935349363493734938349393494034941349423494334944349453494634947349483494934950349513495234953349543495534956349573495834959349603496134962349633496434965349663496734968349693497034971349723497334974349753497634977349783497934980349813498234983349843498534986349873498834989349903499134992349933499434995349963499734998349993500035001350023500335004350053500635007350083500935010350113501235013350143501535016350173501835019350203502135022350233502435025350263502735028350293503035031350323503335034350353503635037350383503935040350413504235043350443504535046350473504835049350503505135052350533505435055350563505735058350593506035061350623506335064350653506635067350683506935070350713507235073350743507535076350773507835079350803508135082350833508435085350863508735088350893509035091350923509335094350953509635097350983509935100351013510235103351043510535106351073510835109351103511135112351133511435115351163511735118351193512035121351223512335124351253512635127351283512935130351313513235133351343513535136351373513835139351403514135142351433514435145351463514735148351493515035151351523515335154351553515635157351583515935160351613516235163351643516535166351673516835169351703517135172351733517435175351763517735178351793518035181351823518335184351853518635187351883518935190351913519235193351943519535196351973519835199352003520135202352033520435205352063520735208352093521035211352123521335214352153521635217352183521935220352213522235223352243522535226352273522835229352303523135232352333523435235352363523735238352393524035241352423524335244352453524635247352483524935250352513525235253352543525535256352573525835259352603526135262352633526435265352663526735268352693527035271352723527335274352753527635277352783527935280352813528235283352843528535286352873528835289352903529135292352933529435295352963529735298352993530035301353023530335304353053530635307353083530935310353113531235313353143531535316353173531835319353203532135322353233532435325353263532735328353293533035331353323533335334353353533635337353383533935340353413534235343353443534535346353473534835349353503535135352353533535435355353563535735358353593536035361353623536335364353653536635367353683536935370353713537235373353743537535376353773537835379353803538135382353833538435385353863538735388353893539035391353923539335394353953539635397353983539935400354013540235403354043540535406354073540835409354103541135412354133541435415354163541735418354193542035421354223542335424354253542635427354283542935430354313543235433354343543535436354373543835439354403544135442354433544435445354463544735448354493545035451354523545335454354553545635457354583545935460354613546235463354643546535466354673546835469354703547135472354733547435475354763547735478354793548035481354823548335484354853548635487354883548935490354913549235493354943549535496354973549835499355003550135502355033550435505355063550735508355093551035511355123551335514355153551635517355183551935520355213552235523355243552535526355273552835529355303553135532355333553435535355363553735538355393554035541355423554335544355453554635547355483554935550355513555235553355543555535556355573555835559355603556135562355633556435565355663556735568355693557035571355723557335574355753557635577355783557935580355813558235583355843558535586355873558835589355903559135592355933559435595355963559735598355993560035601356023560335604356053560635607356083560935610356113561235613356143561535616356173561835619356203562135622356233562435625356263562735628356293563035631356323563335634356353563635637356383563935640356413564235643356443564535646356473564835649356503565135652356533565435655356563565735658356593566035661356623566335664356653566635667356683566935670356713567235673356743567535676356773567835679356803568135682356833568435685356863568735688356893569035691356923569335694356953569635697356983569935700357013570235703357043570535706357073570835709357103571135712357133571435715357163571735718357193572035721357223572335724357253572635727357283572935730357313573235733357343573535736357373573835739357403574135742357433574435745357463574735748357493575035751357523575335754357553575635757357583575935760357613576235763357643576535766357673576835769357703577135772357733577435775357763577735778357793578035781357823578335784357853578635787357883578935790357913579235793357943579535796357973579835799358003580135802358033580435805358063580735808358093581035811358123581335814358153581635817358183581935820358213582235823358243582535826358273582835829358303583135832358333583435835358363583735838358393584035841358423584335844358453584635847358483584935850358513585235853358543585535856358573585835859358603586135862358633586435865358663586735868358693587035871358723587335874358753587635877358783587935880358813588235883358843588535886358873588835889358903589135892358933589435895358963589735898358993590035901359023590335904359053590635907359083590935910359113591235913359143591535916359173591835919359203592135922359233592435925359263592735928359293593035931359323593335934359353593635937359383593935940359413594235943359443594535946359473594835949359503595135952359533595435955359563595735958359593596035961359623596335964359653596635967359683596935970359713597235973359743597535976359773597835979359803598135982359833598435985359863598735988359893599035991359923599335994359953599635997359983599936000360013600236003360043600536006360073600836009360103601136012360133601436015360163601736018360193602036021360223602336024360253602636027360283602936030360313603236033360343603536036360373603836039360403604136042360433604436045360463604736048360493605036051360523605336054360553605636057360583605936060360613606236063360643606536066360673606836069360703607136072360733607436075360763607736078360793608036081360823608336084360853608636087360883608936090360913609236093360943609536096360973609836099361003610136102361033610436105361063610736108361093611036111361123611336114361153611636117361183611936120361213612236123361243612536126361273612836129361303613136132361333613436135361363613736138361393614036141361423614336144361453614636147361483614936150361513615236153361543615536156361573615836159361603616136162361633616436165361663616736168361693617036171361723617336174361753617636177361783617936180361813618236183361843618536186361873618836189361903619136192361933619436195361963619736198361993620036201362023620336204362053620636207362083620936210362113621236213362143621536216362173621836219362203622136222362233622436225362263622736228362293623036231362323623336234362353623636237362383623936240362413624236243362443624536246362473624836249362503625136252362533625436255362563625736258362593626036261362623626336264362653626636267362683626936270362713627236273362743627536276362773627836279362803628136282362833628436285362863628736288362893629036291362923629336294362953629636297362983629936300363013630236303363043630536306363073630836309363103631136312363133631436315363163631736318363193632036321363223632336324363253632636327363283632936330363313633236333363343633536336363373633836339363403634136342363433634436345363463634736348363493635036351363523635336354363553635636357363583635936360363613636236363363643636536366363673636836369363703637136372363733637436375363763637736378363793638036381363823638336384363853638636387363883638936390363913639236393363943639536396363973639836399364003640136402364033640436405364063640736408364093641036411364123641336414364153641636417364183641936420364213642236423364243642536426364273642836429364303643136432364333643436435364363643736438364393644036441364423644336444364453644636447364483644936450364513645236453364543645536456364573645836459364603646136462364633646436465364663646736468364693647036471364723647336474364753647636477364783647936480364813648236483364843648536486364873648836489364903649136492364933649436495364963649736498364993650036501365023650336504365053650636507365083650936510365113651236513365143651536516365173651836519365203652136522365233652436525365263652736528365293653036531365323653336534365353653636537365383653936540365413654236543365443654536546365473654836549365503655136552365533655436555365563655736558365593656036561365623656336564365653656636567365683656936570365713657236573365743657536576365773657836579365803658136582365833658436585365863658736588365893659036591365923659336594365953659636597365983659936600366013660236603366043660536606366073660836609366103661136612366133661436615366163661736618366193662036621366223662336624366253662636627366283662936630366313663236633366343663536636366373663836639366403664136642366433664436645366463664736648366493665036651366523665336654366553665636657366583665936660366613666236663366643666536666366673666836669366703667136672366733667436675366763667736678366793668036681366823668336684366853668636687366883668936690366913669236693366943669536696366973669836699367003670136702367033670436705367063670736708367093671036711367123671336714367153671636717367183671936720367213672236723367243672536726367273672836729367303673136732367333673436735367363673736738367393674036741367423674336744367453674636747367483674936750367513675236753367543675536756367573675836759367603676136762367633676436765367663676736768367693677036771367723677336774367753677636777367783677936780367813678236783367843678536786367873678836789367903679136792367933679436795367963679736798367993680036801368023680336804368053680636807368083680936810368113681236813368143681536816368173681836819368203682136822368233682436825368263682736828368293683036831368323683336834368353683636837368383683936840368413684236843368443684536846368473684836849368503685136852368533685436855368563685736858368593686036861368623686336864368653686636867368683686936870368713687236873368743687536876368773687836879368803688136882368833688436885368863688736888368893689036891368923689336894368953689636897368983689936900369013690236903369043690536906369073690836909369103691136912369133691436915369163691736918369193692036921369223692336924369253692636927369283692936930369313693236933369343693536936369373693836939369403694136942369433694436945369463694736948369493695036951369523695336954369553695636957369583695936960369613696236963369643696536966369673696836969369703697136972369733697436975369763697736978369793698036981369823698336984369853698636987369883698936990369913699236993369943699536996369973699836999370003700137002370033700437005370063700737008370093701037011370123701337014370153701637017370183701937020370213702237023370243702537026370273702837029370303703137032370333703437035370363703737038370393704037041370423704337044370453704637047370483704937050370513705237053370543705537056370573705837059370603706137062370633706437065370663706737068370693707037071370723707337074370753707637077370783707937080370813708237083370843708537086370873708837089370903709137092370933709437095370963709737098370993710037101371023710337104371053710637107371083710937110371113711237113371143711537116371173711837119371203712137122371233712437125371263712737128371293713037131371323713337134371353713637137371383713937140371413714237143371443714537146371473714837149371503715137152371533715437155371563715737158371593716037161371623716337164371653716637167371683716937170371713717237173371743717537176371773717837179371803718137182371833718437185371863718737188371893719037191371923719337194371953719637197371983719937200372013720237203372043720537206372073720837209372103721137212372133721437215372163721737218372193722037221372223722337224372253722637227372283722937230372313723237233372343723537236372373723837239372403724137242372433724437245372463724737248372493725037251372523725337254372553725637257372583725937260372613726237263372643726537266372673726837269372703727137272372733727437275372763727737278372793728037281372823728337284372853728637287372883728937290372913729237293372943729537296372973729837299373003730137302373033730437305373063730737308373093731037311373123731337314373153731637317373183731937320373213732237323373243732537326373273732837329373303733137332373333733437335373363733737338373393734037341373423734337344373453734637347373483734937350373513735237353373543735537356373573735837359373603736137362373633736437365373663736737368373693737037371373723737337374373753737637377373783737937380373813738237383373843738537386373873738837389373903739137392373933739437395373963739737398373993740037401374023740337404374053740637407374083740937410374113741237413374143741537416374173741837419374203742137422374233742437425374263742737428374293743037431374323743337434374353743637437374383743937440374413744237443374443744537446374473744837449374503745137452374533745437455374563745737458374593746037461374623746337464374653746637467374683746937470374713747237473374743747537476374773747837479374803748137482374833748437485374863748737488374893749037491374923749337494374953749637497374983749937500375013750237503375043750537506375073750837509375103751137512375133751437515375163751737518375193752037521375223752337524375253752637527375283752937530375313753237533375343753537536375373753837539375403754137542375433754437545375463754737548375493755037551375523755337554375553755637557375583755937560375613756237563375643756537566375673756837569375703757137572375733757437575375763757737578375793758037581375823758337584375853758637587375883758937590375913759237593375943759537596375973759837599376003760137602376033760437605376063760737608376093761037611376123761337614376153761637617376183761937620376213762237623376243762537626376273762837629376303763137632376333763437635376363763737638376393764037641376423764337644376453764637647376483764937650376513765237653376543765537656376573765837659376603766137662376633766437665376663766737668376693767037671376723767337674376753767637677376783767937680376813768237683376843768537686376873768837689376903769137692376933769437695376963769737698376993770037701377023770337704377053770637707377083770937710377113771237713377143771537716377173771837719377203772137722377233772437725377263772737728377293773037731377323773337734377353773637737377383773937740377413774237743377443774537746377473774837749377503775137752377533775437755377563775737758377593776037761377623776337764377653776637767377683776937770377713777237773377743777537776377773777837779377803778137782377833778437785377863778737788377893779037791377923779337794377953779637797377983779937800378013780237803378043780537806378073780837809378103781137812378133781437815378163781737818378193782037821378223782337824378253782637827378283782937830378313783237833378343783537836378373783837839378403784137842378433784437845378463784737848378493785037851378523785337854378553785637857378583785937860378613786237863378643786537866378673786837869378703787137872378733787437875378763787737878378793788037881378823788337884378853788637887378883788937890378913789237893378943789537896378973789837899379003790137902379033790437905379063790737908379093791037911379123791337914379153791637917379183791937920379213792237923379243792537926379273792837929379303793137932379333793437935379363793737938379393794037941379423794337944379453794637947379483794937950379513795237953379543795537956379573795837959379603796137962379633796437965379663796737968379693797037971379723797337974379753797637977379783797937980379813798237983379843798537986379873798837989379903799137992379933799437995379963799737998379993800038001380023800338004380053800638007380083800938010380113801238013380143801538016380173801838019380203802138022380233802438025380263802738028380293803038031380323803338034380353803638037380383803938040380413804238043380443804538046380473804838049380503805138052380533805438055380563805738058380593806038061380623806338064380653806638067380683806938070380713807238073380743807538076380773807838079380803808138082380833808438085380863808738088380893809038091380923809338094380953809638097380983809938100381013810238103381043810538106381073810838109381103811138112381133811438115381163811738118381193812038121381223812338124381253812638127381283812938130381313813238133381343813538136381373813838139381403814138142381433814438145381463814738148381493815038151381523815338154381553815638157381583815938160381613816238163381643816538166381673816838169381703817138172381733817438175381763817738178381793818038181381823818338184381853818638187381883818938190381913819238193381943819538196381973819838199382003820138202382033820438205382063820738208382093821038211382123821338214382153821638217382183821938220382213822238223382243822538226382273822838229382303823138232382333823438235382363823738238382393824038241382423824338244382453824638247382483824938250382513825238253382543825538256382573825838259382603826138262382633826438265382663826738268382693827038271382723827338274382753827638277382783827938280382813828238283382843828538286382873828838289382903829138292382933829438295382963829738298382993830038301383023830338304383053830638307383083830938310383113831238313383143831538316383173831838319383203832138322383233832438325383263832738328383293833038331383323833338334383353833638337383383833938340383413834238343383443834538346383473834838349383503835138352383533835438355383563835738358383593836038361383623836338364383653836638367383683836938370383713837238373383743837538376383773837838379383803838138382383833838438385383863838738388383893839038391383923839338394383953839638397383983839938400384013840238403384043840538406384073840838409384103841138412384133841438415384163841738418384193842038421384223842338424384253842638427384283842938430384313843238433384343843538436384373843838439384403844138442384433844438445384463844738448384493845038451384523845338454384553845638457384583845938460384613846238463384643846538466384673846838469384703847138472384733847438475384763847738478384793848038481384823848338484384853848638487384883848938490384913849238493384943849538496384973849838499385003850138502385033850438505385063850738508385093851038511385123851338514385153851638517385183851938520385213852238523385243852538526385273852838529385303853138532385333853438535385363853738538385393854038541385423854338544385453854638547385483854938550385513855238553385543855538556385573855838559385603856138562385633856438565385663856738568385693857038571385723857338574385753857638577385783857938580385813858238583385843858538586385873858838589385903859138592385933859438595385963859738598385993860038601386023860338604386053860638607386083860938610386113861238613386143861538616386173861838619386203862138622386233862438625386263862738628386293863038631386323863338634386353863638637386383863938640386413864238643386443864538646386473864838649386503865138652386533865438655386563865738658386593866038661386623866338664386653866638667386683866938670386713867238673386743867538676386773867838679386803868138682386833868438685386863868738688386893869038691386923869338694386953869638697386983869938700387013870238703387043870538706387073870838709387103871138712387133871438715387163871738718387193872038721387223872338724387253872638727387283872938730387313873238733387343873538736387373873838739387403874138742387433874438745387463874738748387493875038751387523875338754387553875638757387583875938760387613876238763387643876538766387673876838769387703877138772387733877438775387763877738778387793878038781387823878338784387853878638787387883878938790387913879238793387943879538796387973879838799388003880138802388033880438805388063880738808388093881038811388123881338814388153881638817388183881938820388213882238823388243882538826388273882838829388303883138832388333883438835388363883738838388393884038841388423884338844388453884638847388483884938850388513885238853388543885538856388573885838859388603886138862388633886438865388663886738868388693887038871388723887338874388753887638877388783887938880388813888238883388843888538886388873888838889388903889138892388933889438895388963889738898388993890038901389023890338904389053890638907389083890938910389113891238913389143891538916389173891838919389203892138922389233892438925389263892738928389293893038931389323893338934389353893638937389383893938940389413894238943389443894538946389473894838949389503895138952389533895438955389563895738958389593896038961389623896338964389653896638967389683896938970389713897238973389743897538976389773897838979389803898138982389833898438985389863898738988389893899038991389923899338994389953899638997389983899939000390013900239003390043900539006390073900839009390103901139012390133901439015390163901739018390193902039021390223902339024390253902639027390283902939030390313903239033390343903539036390373903839039390403904139042390433904439045390463904739048390493905039051390523905339054390553905639057390583905939060390613906239063390643906539066390673906839069390703907139072390733907439075390763907739078390793908039081390823908339084390853908639087390883908939090390913909239093390943909539096390973909839099391003910139102391033910439105391063910739108391093911039111391123911339114391153911639117391183911939120391213912239123391243912539126391273912839129391303913139132391333913439135391363913739138391393914039141391423914339144391453914639147391483914939150391513915239153391543915539156391573915839159391603916139162391633916439165391663916739168391693917039171391723917339174391753917639177391783917939180391813918239183391843918539186391873918839189391903919139192391933919439195391963919739198391993920039201392023920339204392053920639207392083920939210392113921239213392143921539216392173921839219392203922139222392233922439225392263922739228392293923039231392323923339234392353923639237392383923939240392413924239243392443924539246392473924839249392503925139252392533925439255392563925739258392593926039261392623926339264392653926639267392683926939270392713927239273392743927539276392773927839279392803928139282392833928439285392863928739288392893929039291392923929339294392953929639297392983929939300393013930239303393043930539306393073930839309393103931139312393133931439315393163931739318393193932039321393223932339324393253932639327393283932939330393313933239333393343933539336393373933839339393403934139342393433934439345393463934739348393493935039351393523935339354393553935639357393583935939360393613936239363393643936539366393673936839369393703937139372393733937439375393763937739378393793938039381393823938339384393853938639387393883938939390393913939239393393943939539396393973939839399394003940139402394033940439405394063940739408394093941039411394123941339414394153941639417394183941939420394213942239423394243942539426394273942839429394303943139432394333943439435394363943739438394393944039441394423944339444394453944639447394483944939450394513945239453394543945539456394573945839459394603946139462394633946439465394663946739468394693947039471394723947339474394753947639477394783947939480394813948239483394843948539486394873948839489394903949139492394933949439495394963949739498394993950039501395023950339504395053950639507395083950939510395113951239513395143951539516395173951839519395203952139522395233952439525395263952739528395293953039531395323953339534395353953639537395383953939540395413954239543395443954539546395473954839549395503955139552395533955439555395563955739558395593956039561395623956339564395653956639567395683956939570395713957239573395743957539576395773957839579395803958139582395833958439585395863958739588395893959039591395923959339594395953959639597395983959939600396013960239603396043960539606396073960839609396103961139612396133961439615396163961739618396193962039621396223962339624396253962639627396283962939630396313963239633396343963539636396373963839639396403964139642396433964439645396463964739648396493965039651396523965339654396553965639657396583965939660396613966239663396643966539666396673966839669396703967139672396733967439675396763967739678396793968039681396823968339684396853968639687396883968939690396913969239693396943969539696396973969839699397003970139702397033970439705397063970739708397093971039711397123971339714397153971639717397183971939720397213972239723397243972539726397273972839729397303973139732397333973439735397363973739738397393974039741397423974339744397453974639747397483974939750397513975239753397543975539756397573975839759397603976139762397633976439765397663976739768397693977039771397723977339774397753977639777397783977939780397813978239783397843978539786397873978839789397903979139792397933979439795397963979739798397993980039801398023980339804398053980639807398083980939810398113981239813398143981539816398173981839819398203982139822398233982439825398263982739828398293983039831398323983339834398353983639837398383983939840398413984239843398443984539846398473984839849398503985139852398533985439855398563985739858398593986039861398623986339864398653986639867398683986939870398713987239873398743987539876398773987839879398803988139882398833988439885398863988739888398893989039891398923989339894398953989639897398983989939900399013990239903399043990539906399073990839909399103991139912399133991439915399163991739918399193992039921399223992339924399253992639927399283992939930399313993239933399343993539936399373993839939399403994139942399433994439945399463994739948399493995039951399523995339954399553995639957399583995939960399613996239963399643996539966399673996839969399703997139972399733997439975399763997739978399793998039981399823998339984399853998639987399883998939990399913999239993399943999539996399973999839999400004000140002400034000440005400064000740008400094001040011400124001340014400154001640017400184001940020400214002240023400244002540026400274002840029400304003140032400334003440035400364003740038400394004040041400424004340044400454004640047400484004940050400514005240053400544005540056400574005840059400604006140062400634006440065400664006740068400694007040071400724007340074400754007640077400784007940080400814008240083400844008540086400874008840089400904009140092400934009440095400964009740098400994010040101401024010340104401054010640107401084010940110401114011240113401144011540116401174011840119401204012140122401234012440125401264012740128401294013040131401324013340134401354013640137401384013940140401414014240143401444014540146401474014840149401504015140152401534015440155401564015740158401594016040161401624016340164401654016640167401684016940170401714017240173401744017540176401774017840179401804018140182401834018440185401864018740188401894019040191401924019340194401954019640197401984019940200402014020240203402044020540206402074020840209402104021140212402134021440215402164021740218402194022040221402224022340224402254022640227402284022940230402314023240233402344023540236402374023840239402404024140242402434024440245402464024740248402494025040251402524025340254402554025640257402584025940260402614026240263402644026540266402674026840269402704027140272402734027440275402764027740278402794028040281402824028340284402854028640287402884028940290402914029240293402944029540296402974029840299403004030140302403034030440305403064030740308403094031040311403124031340314403154031640317403184031940320403214032240323403244032540326403274032840329403304033140332403334033440335403364033740338403394034040341403424034340344403454034640347403484034940350403514035240353403544035540356403574035840359403604036140362403634036440365403664036740368403694037040371403724037340374403754037640377403784037940380403814038240383403844038540386403874038840389403904039140392403934039440395403964039740398403994040040401404024040340404404054040640407404084040940410404114041240413404144041540416404174041840419404204042140422404234042440425404264042740428404294043040431404324043340434404354043640437404384043940440404414044240443404444044540446404474044840449404504045140452404534045440455404564045740458404594046040461404624046340464404654046640467404684046940470404714047240473404744047540476404774047840479404804048140482404834048440485404864048740488404894049040491404924049340494404954049640497404984049940500405014050240503405044050540506405074050840509405104051140512405134051440515405164051740518405194052040521405224052340524405254052640527405284052940530405314053240533405344053540536405374053840539405404054140542405434054440545405464054740548405494055040551405524055340554405554055640557405584055940560405614056240563405644056540566405674056840569405704057140572405734057440575405764057740578405794058040581405824058340584405854058640587405884058940590405914059240593405944059540596405974059840599406004060140602406034060440605406064060740608406094061040611406124061340614406154061640617406184061940620406214062240623406244062540626406274062840629406304063140632406334063440635406364063740638406394064040641406424064340644406454064640647406484064940650406514065240653406544065540656406574065840659406604066140662406634066440665406664066740668406694067040671406724067340674406754067640677406784067940680406814068240683406844068540686406874068840689406904069140692406934069440695406964069740698406994070040701407024070340704407054070640707407084070940710407114071240713407144071540716407174071840719407204072140722407234072440725407264072740728407294073040731407324073340734407354073640737407384073940740407414074240743407444074540746407474074840749407504075140752407534075440755407564075740758407594076040761407624076340764407654076640767407684076940770407714077240773407744077540776407774077840779407804078140782407834078440785407864078740788407894079040791407924079340794407954079640797407984079940800408014080240803408044080540806408074080840809408104081140812408134081440815408164081740818408194082040821408224082340824408254082640827408284082940830408314083240833408344083540836408374083840839408404084140842408434084440845408464084740848408494085040851408524085340854408554085640857408584085940860408614086240863408644086540866408674086840869408704087140872408734087440875408764087740878408794088040881408824088340884408854088640887408884088940890408914089240893408944089540896408974089840899409004090140902409034090440905409064090740908409094091040911409124091340914409154091640917409184091940920409214092240923409244092540926409274092840929409304093140932409334093440935409364093740938409394094040941409424094340944409454094640947409484094940950409514095240953409544095540956409574095840959409604096140962409634096440965409664096740968409694097040971409724097340974409754097640977409784097940980409814098240983409844098540986409874098840989409904099140992409934099440995409964099740998409994100041001410024100341004410054100641007410084100941010410114101241013410144101541016410174101841019410204102141022410234102441025410264102741028410294103041031410324103341034410354103641037410384103941040410414104241043410444104541046410474104841049410504105141052410534105441055410564105741058410594106041061410624106341064410654106641067410684106941070410714107241073410744107541076410774107841079410804108141082410834108441085410864108741088410894109041091410924109341094410954109641097410984109941100411014110241103411044110541106411074110841109411104111141112411134111441115411164111741118411194112041121411224112341124411254112641127411284112941130411314113241133411344113541136411374113841139411404114141142411434114441145411464114741148411494115041151411524115341154411554115641157411584115941160411614116241163411644116541166411674116841169411704117141172411734117441175411764117741178411794118041181411824118341184411854118641187411884118941190411914119241193411944119541196411974119841199412004120141202412034120441205412064120741208412094121041211412124121341214412154121641217412184121941220412214122241223412244122541226412274122841229412304123141232412334123441235412364123741238412394124041241412424124341244412454124641247412484124941250412514125241253412544125541256412574125841259412604126141262412634126441265412664126741268412694127041271412724127341274412754127641277412784127941280412814128241283412844128541286412874128841289412904129141292412934129441295412964129741298412994130041301413024130341304413054130641307413084130941310413114131241313413144131541316413174131841319413204132141322413234132441325413264132741328413294133041331413324133341334413354133641337413384133941340413414134241343413444134541346413474134841349413504135141352413534135441355413564135741358413594136041361413624136341364413654136641367413684136941370413714137241373413744137541376413774137841379413804138141382413834138441385413864138741388413894139041391413924139341394413954139641397413984139941400414014140241403414044140541406414074140841409414104141141412414134141441415414164141741418414194142041421414224142341424414254142641427414284142941430414314143241433414344143541436414374143841439414404144141442414434144441445414464144741448414494145041451414524145341454414554145641457414584145941460414614146241463414644146541466414674146841469414704147141472414734147441475414764147741478414794148041481414824148341484414854148641487414884148941490414914149241493414944149541496414974149841499415004150141502415034150441505415064150741508415094151041511415124151341514415154151641517415184151941520415214152241523415244152541526415274152841529415304153141532415334153441535415364153741538415394154041541415424154341544415454154641547415484154941550415514155241553415544155541556415574155841559415604156141562415634156441565415664156741568415694157041571415724157341574415754157641577415784157941580415814158241583415844158541586415874158841589415904159141592415934159441595415964159741598415994160041601416024160341604416054160641607416084160941610416114161241613416144161541616416174161841619416204162141622416234162441625416264162741628416294163041631416324163341634416354163641637416384163941640416414164241643416444164541646416474164841649416504165141652416534165441655416564165741658416594166041661416624166341664416654166641667416684166941670416714167241673416744167541676416774167841679416804168141682416834168441685416864168741688416894169041691416924169341694416954169641697416984169941700417014170241703417044170541706417074170841709417104171141712417134171441715417164171741718417194172041721417224172341724417254172641727417284172941730417314173241733417344173541736417374173841739417404174141742417434174441745417464174741748417494175041751417524175341754417554175641757417584175941760417614176241763417644176541766417674176841769417704177141772417734177441775417764177741778417794178041781417824178341784417854178641787417884178941790417914179241793417944179541796417974179841799418004180141802418034180441805418064180741808418094181041811418124181341814418154181641817418184181941820418214182241823418244182541826418274182841829418304183141832418334183441835418364183741838418394184041841418424184341844418454184641847418484184941850418514185241853418544185541856418574185841859418604186141862418634186441865418664186741868418694187041871418724187341874418754187641877418784187941880418814188241883418844188541886418874188841889418904189141892418934189441895418964189741898418994190041901419024190341904419054190641907419084190941910419114191241913419144191541916419174191841919419204192141922419234192441925419264192741928419294193041931419324193341934419354193641937419384193941940419414194241943419444194541946419474194841949419504195141952419534195441955419564195741958419594196041961419624196341964419654196641967419684196941970419714197241973419744197541976419774197841979419804198141982419834198441985419864198741988419894199041991419924199341994419954199641997419984199942000420014200242003420044200542006420074200842009420104201142012420134201442015420164201742018420194202042021420224202342024420254202642027420284202942030420314203242033420344203542036420374203842039420404204142042420434204442045420464204742048420494205042051420524205342054420554205642057420584205942060420614206242063420644206542066420674206842069420704207142072420734207442075420764207742078420794208042081420824208342084420854208642087420884208942090420914209242093420944209542096420974209842099421004210142102421034210442105421064210742108421094211042111421124211342114421154211642117421184211942120421214212242123421244212542126421274212842129421304213142132421334213442135421364213742138421394214042141421424214342144421454214642147421484214942150421514215242153421544215542156421574215842159421604216142162421634216442165421664216742168421694217042171421724217342174421754217642177421784217942180421814218242183421844218542186421874218842189421904219142192421934219442195421964219742198421994220042201422024220342204422054220642207422084220942210422114221242213422144221542216422174221842219422204222142222422234222442225422264222742228422294223042231422324223342234422354223642237422384223942240422414224242243422444224542246422474224842249422504225142252422534225442255422564225742258422594226042261422624226342264422654226642267422684226942270422714227242273422744227542276422774227842279422804228142282422834228442285422864228742288422894229042291422924229342294422954229642297422984229942300423014230242303423044230542306423074230842309423104231142312423134231442315423164231742318423194232042321423224232342324423254232642327423284232942330423314233242333423344233542336423374233842339423404234142342423434234442345423464234742348423494235042351423524235342354423554235642357423584235942360423614236242363423644236542366423674236842369423704237142372423734237442375423764237742378423794238042381423824238342384423854238642387423884238942390423914239242393423944239542396423974239842399424004240142402424034240442405424064240742408424094241042411424124241342414424154241642417424184241942420424214242242423424244242542426424274242842429424304243142432424334243442435424364243742438424394244042441424424244342444424454244642447424484244942450424514245242453424544245542456424574245842459424604246142462424634246442465424664246742468424694247042471424724247342474424754247642477424784247942480424814248242483424844248542486424874248842489424904249142492424934249442495424964249742498424994250042501425024250342504425054250642507425084250942510425114251242513425144251542516425174251842519425204252142522425234252442525425264252742528425294253042531425324253342534425354253642537425384253942540425414254242543425444254542546425474254842549425504255142552425534255442555425564255742558425594256042561425624256342564425654256642567425684256942570425714257242573425744257542576425774257842579425804258142582425834258442585425864258742588425894259042591425924259342594425954259642597425984259942600426014260242603426044260542606426074260842609426104261142612426134261442615426164261742618426194262042621426224262342624426254262642627426284262942630426314263242633426344263542636426374263842639426404264142642426434264442645426464264742648426494265042651426524265342654426554265642657426584265942660426614266242663426644266542666426674266842669426704267142672426734267442675426764267742678426794268042681426824268342684426854268642687426884268942690426914269242693426944269542696426974269842699427004270142702427034270442705427064270742708427094271042711427124271342714427154271642717427184271942720427214272242723427244272542726427274272842729427304273142732427334273442735427364273742738427394274042741427424274342744427454274642747427484274942750427514275242753427544275542756427574275842759427604276142762427634276442765427664276742768427694277042771427724277342774427754277642777427784277942780427814278242783427844278542786427874278842789427904279142792427934279442795427964279742798427994280042801428024280342804428054280642807428084280942810428114281242813428144281542816428174281842819428204282142822428234282442825428264282742828428294283042831428324283342834428354283642837428384283942840428414284242843428444284542846428474284842849428504285142852428534285442855428564285742858428594286042861428624286342864428654286642867428684286942870428714287242873428744287542876428774287842879428804288142882428834288442885428864288742888428894289042891428924289342894428954289642897428984289942900429014290242903429044290542906429074290842909429104291142912429134291442915429164291742918429194292042921429224292342924429254292642927429284292942930429314293242933429344293542936429374293842939429404294142942429434294442945429464294742948429494295042951429524295342954429554295642957429584295942960429614296242963429644296542966429674296842969429704297142972429734297442975429764297742978429794298042981429824298342984429854298642987429884298942990429914299242993429944299542996429974299842999430004300143002430034300443005430064300743008430094301043011430124301343014430154301643017430184301943020430214302243023430244302543026430274302843029430304303143032430334303443035430364303743038430394304043041430424304343044430454304643047430484304943050430514305243053430544305543056430574305843059430604306143062430634306443065430664306743068430694307043071430724307343074430754307643077430784307943080430814308243083430844308543086430874308843089430904309143092430934309443095430964309743098430994310043101431024310343104431054310643107431084310943110431114311243113431144311543116431174311843119431204312143122431234312443125431264312743128431294313043131431324313343134431354313643137431384313943140431414314243143431444314543146431474314843149431504315143152431534315443155431564315743158431594316043161431624316343164431654316643167431684316943170431714317243173431744317543176431774317843179431804318143182431834318443185431864318743188431894319043191431924319343194431954319643197431984319943200432014320243203432044320543206432074320843209432104321143212432134321443215432164321743218432194322043221432224322343224432254322643227432284322943230432314323243233432344323543236432374323843239432404324143242432434324443245432464324743248432494325043251432524325343254432554325643257432584325943260432614326243263432644326543266432674326843269432704327143272432734327443275432764327743278432794328043281432824328343284432854328643287432884328943290432914329243293432944329543296432974329843299433004330143302433034330443305433064330743308433094331043311433124331343314433154331643317433184331943320433214332243323433244332543326433274332843329433304333143332433334333443335433364333743338433394334043341433424334343344433454334643347433484334943350433514335243353433544335543356433574335843359433604336143362433634336443365433664336743368433694337043371433724337343374433754337643377433784337943380433814338243383433844338543386433874338843389433904339143392433934339443395433964339743398433994340043401434024340343404434054340643407434084340943410434114341243413434144341543416434174341843419434204342143422434234342443425434264342743428434294343043431434324343343434434354343643437434384343943440434414344243443434444344543446434474344843449434504345143452434534345443455434564345743458434594346043461434624346343464434654346643467434684346943470434714347243473434744347543476434774347843479434804348143482434834348443485434864348743488434894349043491434924349343494434954349643497434984349943500435014350243503435044350543506435074350843509435104351143512435134351443515435164351743518435194352043521435224352343524435254352643527435284352943530435314353243533435344353543536435374353843539435404354143542435434354443545435464354743548435494355043551435524355343554435554355643557435584355943560435614356243563435644356543566435674356843569435704357143572435734357443575435764357743578435794358043581435824358343584435854358643587435884358943590435914359243593435944359543596435974359843599436004360143602436034360443605436064360743608436094361043611436124361343614436154361643617436184361943620436214362243623436244362543626436274362843629436304363143632436334363443635436364363743638436394364043641436424364343644436454364643647436484364943650436514365243653436544365543656436574365843659436604366143662436634366443665436664366743668436694367043671436724367343674436754367643677436784367943680436814368243683436844368543686436874368843689436904369143692436934369443695436964369743698436994370043701437024370343704437054370643707437084370943710437114371243713437144371543716437174371843719437204372143722437234372443725437264372743728437294373043731437324373343734437354373643737437384373943740437414374243743437444374543746437474374843749437504375143752437534375443755437564375743758437594376043761437624376343764437654376643767437684376943770437714377243773437744377543776437774377843779437804378143782437834378443785437864378743788437894379043791437924379343794437954379643797437984379943800438014380243803438044380543806438074380843809438104381143812438134381443815438164381743818438194382043821438224382343824438254382643827438284382943830438314383243833438344383543836438374383843839438404384143842438434384443845438464384743848438494385043851438524385343854438554385643857438584385943860438614386243863438644386543866438674386843869438704387143872438734387443875438764387743878438794388043881438824388343884438854388643887438884388943890438914389243893438944389543896438974389843899439004390143902439034390443905439064390743908439094391043911439124391343914439154391643917439184391943920439214392243923439244392543926439274392843929439304393143932439334393443935439364393743938439394394043941439424394343944439454394643947439484394943950439514395243953439544395543956439574395843959439604396143962439634396443965439664396743968439694397043971439724397343974439754397643977439784397943980439814398243983439844398543986439874398843989439904399143992439934399443995439964399743998439994400044001440024400344004440054400644007440084400944010440114401244013440144401544016440174401844019440204402144022440234402444025440264402744028440294403044031440324403344034440354403644037440384403944040440414404244043440444404544046440474404844049440504405144052440534405444055440564405744058440594406044061440624406344064440654406644067440684406944070440714407244073440744407544076440774407844079440804408144082440834408444085440864408744088440894409044091440924409344094440954409644097440984409944100441014410244103441044410544106441074410844109441104411144112441134411444115441164411744118441194412044121441224412344124441254412644127441284412944130441314413244133441344413544136441374413844139441404414144142441434414444145441464414744148441494415044151441524415344154441554415644157441584415944160441614416244163441644416544166441674416844169441704417144172441734417444175441764417744178441794418044181441824418344184441854418644187441884418944190441914419244193441944419544196441974419844199442004420144202442034420444205442064420744208442094421044211442124421344214442154421644217442184421944220442214422244223442244422544226442274422844229442304423144232442334423444235442364423744238442394424044241442424424344244442454424644247442484424944250442514425244253442544425544256442574425844259442604426144262442634426444265442664426744268442694427044271442724427344274442754427644277442784427944280442814428244283442844428544286442874428844289442904429144292442934429444295442964429744298442994430044301443024430344304443054430644307443084430944310443114431244313443144431544316443174431844319443204432144322443234432444325443264432744328443294433044331443324433344334443354433644337443384433944340443414434244343443444434544346443474434844349443504435144352443534435444355443564435744358443594436044361443624436344364443654436644367443684436944370443714437244373443744437544376443774437844379443804438144382443834438444385443864438744388443894439044391443924439344394443954439644397443984439944400444014440244403444044440544406444074440844409444104441144412444134441444415444164441744418444194442044421444224442344424444254442644427444284442944430444314443244433444344443544436444374443844439444404444144442444434444444445444464444744448444494445044451444524445344454444554445644457444584445944460444614446244463444644446544466444674446844469444704447144472444734447444475444764447744478444794448044481444824448344484444854448644487444884448944490444914449244493444944449544496444974449844499445004450144502445034450444505445064450744508445094451044511445124451344514445154451644517445184451944520445214452244523445244452544526445274452844529445304453144532445334453444535445364453744538445394454044541445424454344544445454454644547445484454944550445514455244553445544455544556445574455844559445604456144562445634456444565445664456744568445694457044571445724457344574445754457644577445784457944580445814458244583445844458544586445874458844589445904459144592445934459444595445964459744598445994460044601446024460344604446054460644607446084460944610446114461244613446144461544616446174461844619446204462144622446234462444625446264462744628446294463044631446324463344634446354463644637446384463944640446414464244643446444464544646446474464844649446504465144652446534465444655446564465744658446594466044661446624466344664446654466644667446684466944670446714467244673446744467544676446774467844679446804468144682446834468444685446864468744688446894469044691446924469344694446954469644697446984469944700447014470244703447044470544706447074470844709447104471144712447134471444715447164471744718447194472044721447224472344724447254472644727447284472944730447314473244733447344473544736447374473844739447404474144742447434474444745447464474744748447494475044751447524475344754447554475644757447584475944760447614476244763447644476544766447674476844769447704477144772447734477444775447764477744778447794478044781447824478344784447854478644787447884478944790447914479244793447944479544796447974479844799448004480144802448034480444805448064480744808448094481044811448124481344814448154481644817448184481944820448214482244823448244482544826448274482844829448304483144832448334483444835448364483744838448394484044841448424484344844448454484644847448484484944850448514485244853448544485544856448574485844859448604486144862448634486444865448664486744868448694487044871448724487344874448754487644877448784487944880448814488244883448844488544886448874488844889448904489144892448934489444895448964489744898448994490044901449024490344904449054490644907449084490944910449114491244913449144491544916449174491844919449204492144922449234492444925449264492744928449294493044931449324493344934449354493644937449384493944940449414494244943449444494544946449474494844949449504495144952449534495444955449564495744958449594496044961449624496344964449654496644967449684496944970449714497244973449744497544976449774497844979449804498144982449834498444985449864498744988449894499044991449924499344994449954499644997449984499945000450014500245003450044500545006450074500845009450104501145012450134501445015450164501745018450194502045021450224502345024450254502645027450284502945030450314503245033450344503545036450374503845039450404504145042450434504445045450464504745048450494505045051450524505345054450554505645057450584505945060450614506245063450644506545066450674506845069450704507145072450734507445075450764507745078450794508045081450824508345084450854508645087450884508945090450914509245093450944509545096450974509845099451004510145102451034510445105451064510745108451094511045111451124511345114451154511645117451184511945120451214512245123451244512545126451274512845129451304513145132451334513445135451364513745138451394514045141451424514345144451454514645147451484514945150451514515245153451544515545156451574515845159451604516145162451634516445165451664516745168451694517045171451724517345174451754517645177451784517945180451814518245183451844518545186451874518845189451904519145192451934519445195451964519745198451994520045201452024520345204452054520645207452084520945210452114521245213452144521545216452174521845219452204522145222452234522445225452264522745228452294523045231452324523345234452354523645237452384523945240452414524245243452444524545246452474524845249452504525145252452534525445255452564525745258452594526045261452624526345264452654526645267452684526945270452714527245273452744527545276452774527845279452804528145282452834528445285452864528745288452894529045291452924529345294452954529645297452984529945300453014530245303453044530545306453074530845309453104531145312453134531445315453164531745318453194532045321453224532345324453254532645327453284532945330453314533245333453344533545336453374533845339453404534145342453434534445345453464534745348453494535045351453524535345354453554535645357453584535945360453614536245363453644536545366453674536845369453704537145372453734537445375453764537745378453794538045381453824538345384453854538645387453884538945390453914539245393453944539545396453974539845399454004540145402454034540445405454064540745408454094541045411454124541345414454154541645417454184541945420454214542245423454244542545426454274542845429454304543145432454334543445435454364543745438454394544045441454424544345444454454544645447454484544945450454514545245453454544545545456454574545845459454604546145462454634546445465454664546745468454694547045471454724547345474454754547645477454784547945480454814548245483454844548545486454874548845489454904549145492454934549445495454964549745498454994550045501455024550345504455054550645507455084550945510455114551245513455144551545516455174551845519455204552145522455234552445525455264552745528455294553045531455324553345534455354553645537455384553945540455414554245543455444554545546455474554845549455504555145552455534555445555455564555745558455594556045561455624556345564455654556645567455684556945570455714557245573455744557545576455774557845579455804558145582455834558445585455864558745588455894559045591455924559345594455954559645597455984559945600456014560245603456044560545606456074560845609456104561145612456134561445615456164561745618456194562045621456224562345624456254562645627456284562945630456314563245633456344563545636456374563845639456404564145642456434564445645456464564745648456494565045651456524565345654456554565645657456584565945660456614566245663456644566545666456674566845669456704567145672456734567445675456764567745678456794568045681456824568345684456854568645687456884568945690456914569245693456944569545696456974569845699457004570145702457034570445705457064570745708457094571045711457124571345714457154571645717457184571945720457214572245723457244572545726457274572845729457304573145732457334573445735457364573745738457394574045741457424574345744457454574645747457484574945750457514575245753457544575545756457574575845759457604576145762457634576445765457664576745768457694577045771457724577345774457754577645777457784577945780457814578245783457844578545786457874578845789457904579145792457934579445795457964579745798457994580045801458024580345804458054580645807458084580945810458114581245813458144581545816458174581845819458204582145822458234582445825458264582745828458294583045831458324583345834458354583645837458384583945840458414584245843458444584545846458474584845849458504585145852458534585445855458564585745858458594586045861458624586345864458654586645867458684586945870458714587245873458744587545876458774587845879458804588145882458834588445885458864588745888458894589045891458924589345894458954589645897458984589945900459014590245903459044590545906459074590845909459104591145912459134591445915459164591745918459194592045921459224592345924459254592645927459284592945930459314593245933459344593545936459374593845939459404594145942459434594445945459464594745948459494595045951459524595345954459554595645957459584595945960459614596245963459644596545966459674596845969459704597145972459734597445975459764597745978459794598045981459824598345984459854598645987459884598945990459914599245993459944599545996459974599845999460004600146002460034600446005460064600746008460094601046011460124601346014460154601646017460184601946020460214602246023460244602546026460274602846029460304603146032460334603446035460364603746038460394604046041460424604346044460454604646047460484604946050460514605246053460544605546056460574605846059460604606146062460634606446065460664606746068460694607046071460724607346074460754607646077460784607946080460814608246083460844608546086460874608846089460904609146092460934609446095460964609746098460994610046101461024610346104461054610646107461084610946110461114611246113461144611546116461174611846119461204612146122461234612446125461264612746128461294613046131461324613346134461354613646137461384613946140461414614246143461444614546146461474614846149461504615146152461534615446155461564615746158461594616046161461624616346164461654616646167461684616946170461714617246173461744617546176461774617846179461804618146182461834618446185461864618746188461894619046191461924619346194461954619646197461984619946200462014620246203462044620546206462074620846209462104621146212462134621446215462164621746218462194622046221462224622346224462254622646227462284622946230462314623246233462344623546236462374623846239462404624146242462434624446245462464624746248462494625046251462524625346254462554625646257462584625946260462614626246263462644626546266462674626846269462704627146272462734627446275462764627746278462794628046281462824628346284462854628646287462884628946290462914629246293462944629546296462974629846299463004630146302463034630446305463064630746308463094631046311463124631346314463154631646317463184631946320463214632246323463244632546326463274632846329463304633146332463334633446335463364633746338463394634046341463424634346344463454634646347463484634946350463514635246353463544635546356463574635846359463604636146362463634636446365463664636746368463694637046371463724637346374463754637646377463784637946380463814638246383463844638546386463874638846389463904639146392463934639446395463964639746398463994640046401464024640346404464054640646407464084640946410464114641246413464144641546416464174641846419464204642146422464234642446425464264642746428464294643046431464324643346434464354643646437464384643946440464414644246443464444644546446464474644846449464504645146452464534645446455464564645746458464594646046461464624646346464464654646646467464684646946470464714647246473464744647546476464774647846479464804648146482464834648446485464864648746488464894649046491464924649346494464954649646497464984649946500465014650246503465044650546506465074650846509465104651146512465134651446515465164651746518465194652046521465224652346524465254652646527465284652946530465314653246533465344653546536465374653846539465404654146542465434654446545465464654746548465494655046551465524655346554465554655646557465584655946560465614656246563465644656546566465674656846569465704657146572465734657446575465764657746578465794658046581465824658346584465854658646587465884658946590465914659246593465944659546596465974659846599466004660146602466034660446605466064660746608466094661046611466124661346614466154661646617466184661946620466214662246623466244662546626466274662846629466304663146632466334663446635466364663746638466394664046641466424664346644466454664646647466484664946650466514665246653466544665546656466574665846659466604666146662466634666446665466664666746668466694667046671466724667346674466754667646677466784667946680466814668246683466844668546686466874668846689466904669146692466934669446695466964669746698466994670046701467024670346704467054670646707467084670946710467114671246713467144671546716467174671846719467204672146722467234672446725467264672746728467294673046731467324673346734467354673646737467384673946740467414674246743467444674546746467474674846749467504675146752467534675446755467564675746758467594676046761467624676346764467654676646767467684676946770467714677246773467744677546776467774677846779467804678146782467834678446785467864678746788467894679046791467924679346794467954679646797467984679946800468014680246803468044680546806468074680846809468104681146812468134681446815468164681746818468194682046821468224682346824468254682646827468284682946830468314683246833468344683546836468374683846839468404684146842468434684446845468464684746848468494685046851468524685346854468554685646857468584685946860468614686246863468644686546866468674686846869468704687146872468734687446875468764687746878468794688046881468824688346884468854688646887468884688946890468914689246893468944689546896468974689846899469004690146902469034690446905469064690746908469094691046911469124691346914469154691646917469184691946920469214692246923469244692546926469274692846929469304693146932469334693446935469364693746938469394694046941469424694346944469454694646947469484694946950469514695246953469544695546956469574695846959469604696146962469634696446965469664696746968469694697046971469724697346974469754697646977469784697946980469814698246983469844698546986469874698846989469904699146992469934699446995469964699746998469994700047001470024700347004470054700647007470084700947010470114701247013470144701547016470174701847019470204702147022470234702447025470264702747028470294703047031470324703347034470354703647037470384703947040470414704247043470444704547046470474704847049470504705147052470534705447055470564705747058470594706047061470624706347064470654706647067470684706947070470714707247073470744707547076470774707847079470804708147082470834708447085470864708747088470894709047091470924709347094470954709647097470984709947100471014710247103471044710547106471074710847109471104711147112471134711447115471164711747118471194712047121471224712347124471254712647127471284712947130471314713247133471344713547136471374713847139471404714147142471434714447145471464714747148471494715047151471524715347154471554715647157471584715947160471614716247163471644716547166471674716847169471704717147172471734717447175471764717747178471794718047181471824718347184471854718647187471884718947190471914719247193471944719547196471974719847199472004720147202472034720447205472064720747208472094721047211472124721347214472154721647217472184721947220472214722247223472244722547226472274722847229472304723147232472334723447235472364723747238472394724047241472424724347244472454724647247472484724947250472514725247253472544725547256472574725847259472604726147262472634726447265472664726747268472694727047271472724727347274472754727647277472784727947280472814728247283472844728547286472874728847289472904729147292472934729447295472964729747298472994730047301473024730347304473054730647307473084730947310473114731247313473144731547316473174731847319473204732147322473234732447325473264732747328473294733047331473324733347334473354733647337473384733947340473414734247343473444734547346473474734847349473504735147352473534735447355473564735747358473594736047361473624736347364473654736647367473684736947370473714737247373473744737547376473774737847379473804738147382473834738447385473864738747388473894739047391473924739347394473954739647397473984739947400474014740247403474044740547406474074740847409474104741147412474134741447415474164741747418474194742047421474224742347424474254742647427474284742947430474314743247433474344743547436474374743847439474404744147442474434744447445474464744747448474494745047451474524745347454474554745647457474584745947460474614746247463474644746547466474674746847469474704747147472474734747447475474764747747478474794748047481474824748347484474854748647487474884748947490474914749247493474944749547496474974749847499475004750147502475034750447505475064750747508475094751047511475124751347514475154751647517475184751947520475214752247523475244752547526475274752847529475304753147532475334753447535475364753747538475394754047541475424754347544475454754647547475484754947550475514755247553475544755547556475574755847559475604756147562475634756447565475664756747568475694757047571475724757347574475754757647577475784757947580475814758247583475844758547586475874758847589475904759147592475934759447595475964759747598475994760047601476024760347604476054760647607476084760947610476114761247613476144761547616476174761847619476204762147622476234762447625476264762747628476294763047631476324763347634476354763647637476384763947640476414764247643476444764547646476474764847649476504765147652476534765447655476564765747658476594766047661476624766347664476654766647667476684766947670476714767247673476744767547676476774767847679476804768147682476834768447685476864768747688476894769047691476924769347694476954769647697476984769947700477014770247703477044770547706477074770847709477104771147712477134771447715477164771747718477194772047721477224772347724477254772647727477284772947730477314773247733477344773547736477374773847739477404774147742477434774447745477464774747748477494775047751477524775347754477554775647757477584775947760477614776247763477644776547766477674776847769477704777147772477734777447775477764777747778477794778047781477824778347784477854778647787477884778947790477914779247793477944779547796477974779847799478004780147802478034780447805478064780747808478094781047811478124781347814478154781647817478184781947820478214782247823478244782547826478274782847829478304783147832478334783447835478364783747838478394784047841478424784347844478454784647847478484784947850478514785247853478544785547856478574785847859478604786147862478634786447865478664786747868478694787047871478724787347874478754787647877478784787947880478814788247883478844788547886478874788847889478904789147892478934789447895478964789747898478994790047901479024790347904479054790647907479084790947910479114791247913479144791547916479174791847919479204792147922479234792447925479264792747928479294793047931479324793347934479354793647937479384793947940479414794247943479444794547946479474794847949479504795147952479534795447955479564795747958479594796047961479624796347964479654796647967479684796947970479714797247973479744797547976479774797847979479804798147982479834798447985479864798747988479894799047991479924799347994479954799647997479984799948000480014800248003480044800548006480074800848009480104801148012480134801448015480164801748018480194802048021480224802348024480254802648027480284802948030480314803248033480344803548036480374803848039480404804148042480434804448045480464804748048480494805048051480524805348054480554805648057480584805948060480614806248063480644806548066480674806848069480704807148072480734807448075480764807748078480794808048081480824808348084480854808648087480884808948090480914809248093480944809548096480974809848099481004810148102481034810448105481064810748108481094811048111481124811348114481154811648117481184811948120481214812248123481244812548126481274812848129481304813148132481334813448135481364813748138481394814048141481424814348144481454814648147481484814948150481514815248153481544815548156481574815848159481604816148162481634816448165481664816748168481694817048171481724817348174481754817648177481784817948180481814818248183481844818548186481874818848189481904819148192481934819448195481964819748198481994820048201482024820348204482054820648207482084820948210482114821248213482144821548216482174821848219482204822148222482234822448225482264822748228482294823048231482324823348234482354823648237482384823948240482414824248243482444824548246482474824848249482504825148252482534825448255482564825748258482594826048261482624826348264482654826648267482684826948270482714827248273482744827548276482774827848279482804828148282482834828448285482864828748288482894829048291482924829348294482954829648297482984829948300483014830248303483044830548306483074830848309483104831148312483134831448315483164831748318483194832048321483224832348324483254832648327483284832948330483314833248333483344833548336483374833848339483404834148342483434834448345483464834748348483494835048351483524835348354483554835648357483584835948360483614836248363483644836548366483674836848369483704837148372483734837448375483764837748378483794838048381483824838348384483854838648387483884838948390483914839248393483944839548396483974839848399484004840148402484034840448405484064840748408484094841048411484124841348414484154841648417484184841948420484214842248423484244842548426484274842848429484304843148432484334843448435484364843748438484394844048441484424844348444484454844648447484484844948450484514845248453484544845548456484574845848459484604846148462484634846448465484664846748468484694847048471484724847348474484754847648477484784847948480484814848248483484844848548486484874848848489484904849148492484934849448495484964849748498484994850048501485024850348504485054850648507485084850948510485114851248513485144851548516485174851848519485204852148522485234852448525485264852748528485294853048531485324853348534485354853648537485384853948540485414854248543485444854548546485474854848549485504855148552485534855448555485564855748558485594856048561485624856348564485654856648567485684856948570485714857248573485744857548576485774857848579485804858148582485834858448585485864858748588485894859048591485924859348594485954859648597485984859948600486014860248603486044860548606486074860848609486104861148612486134861448615486164861748618486194862048621486224862348624486254862648627486284862948630486314863248633486344863548636486374863848639486404864148642486434864448645486464864748648486494865048651486524865348654486554865648657486584865948660486614866248663486644866548666486674866848669486704867148672486734867448675486764867748678486794868048681486824868348684486854868648687486884868948690486914869248693486944869548696486974869848699487004870148702487034870448705487064870748708487094871048711487124871348714487154871648717487184871948720487214872248723487244872548726487274872848729487304873148732487334873448735487364873748738487394874048741487424874348744487454874648747487484874948750487514875248753487544875548756487574875848759487604876148762487634876448765487664876748768487694877048771487724877348774487754877648777487784877948780487814878248783487844878548786487874878848789487904879148792487934879448795487964879748798487994880048801488024880348804488054880648807488084880948810488114881248813488144881548816488174881848819488204882148822488234882448825488264882748828488294883048831488324883348834488354883648837488384883948840488414884248843488444884548846488474884848849488504885148852488534885448855488564885748858488594886048861488624886348864488654886648867488684886948870488714887248873488744887548876488774887848879488804888148882488834888448885488864888748888488894889048891488924889348894488954889648897488984889948900489014890248903489044890548906489074890848909489104891148912489134891448915489164891748918489194892048921489224892348924489254892648927489284892948930489314893248933489344893548936489374893848939489404894148942489434894448945489464894748948489494895048951489524895348954489554895648957489584895948960489614896248963489644896548966489674896848969489704897148972489734897448975489764897748978489794898048981489824898348984489854898648987489884898948990489914899248993489944899548996489974899848999490004900149002490034900449005490064900749008490094901049011490124901349014490154901649017490184901949020490214902249023490244902549026490274902849029490304903149032490334903449035490364903749038490394904049041490424904349044490454904649047490484904949050490514905249053490544905549056490574905849059490604906149062490634906449065490664906749068490694907049071490724907349074490754907649077490784907949080490814908249083490844908549086490874908849089490904909149092490934909449095490964909749098490994910049101491024910349104491054910649107491084910949110491114911249113491144911549116491174911849119491204912149122491234912449125491264912749128491294913049131491324913349134491354913649137491384913949140491414914249143491444914549146491474914849149491504915149152491534915449155491564915749158491594916049161491624916349164491654916649167491684916949170491714917249173491744917549176491774917849179491804918149182491834918449185491864918749188491894919049191491924919349194491954919649197491984919949200492014920249203492044920549206492074920849209492104921149212492134921449215492164921749218492194922049221492224922349224492254922649227492284922949230492314923249233492344923549236492374923849239492404924149242492434924449245492464924749248492494925049251492524925349254492554925649257492584925949260492614926249263492644926549266492674926849269492704927149272492734927449275492764927749278492794928049281492824928349284492854928649287492884928949290492914929249293492944929549296492974929849299493004930149302493034930449305493064930749308493094931049311493124931349314493154931649317493184931949320493214932249323493244932549326493274932849329493304933149332493334933449335493364933749338493394934049341493424934349344493454934649347493484934949350493514935249353493544935549356493574935849359493604936149362493634936449365493664936749368493694937049371493724937349374493754937649377493784937949380493814938249383493844938549386493874938849389493904939149392493934939449395493964939749398493994940049401494024940349404494054940649407494084940949410494114941249413494144941549416494174941849419494204942149422494234942449425494264942749428494294943049431494324943349434494354943649437494384943949440494414944249443494444944549446494474944849449494504945149452494534945449455494564945749458494594946049461494624946349464494654946649467494684946949470494714947249473494744947549476494774947849479494804948149482494834948449485494864948749488494894949049491494924949349494494954949649497494984949949500495014950249503495044950549506495074950849509495104951149512495134951449515495164951749518495194952049521495224952349524495254952649527495284952949530495314953249533495344953549536495374953849539495404954149542495434954449545495464954749548495494955049551495524955349554495554955649557495584955949560495614956249563495644956549566495674956849569495704957149572495734957449575495764957749578495794958049581495824958349584495854958649587495884958949590495914959249593495944959549596495974959849599496004960149602496034960449605496064960749608496094961049611496124961349614496154961649617496184961949620496214962249623496244962549626496274962849629496304963149632496334963449635496364963749638496394964049641496424964349644496454964649647496484964949650496514965249653496544965549656496574965849659496604966149662496634966449665496664966749668496694967049671496724967349674496754967649677496784967949680496814968249683496844968549686496874968849689496904969149692496934969449695496964969749698496994970049701497024970349704497054970649707497084970949710497114971249713497144971549716497174971849719497204972149722497234972449725497264972749728497294973049731497324973349734497354973649737497384973949740497414974249743497444974549746497474974849749497504975149752497534975449755497564975749758497594976049761497624976349764497654976649767497684976949770497714977249773497744977549776497774977849779497804978149782497834978449785497864978749788497894979049791497924979349794497954979649797497984979949800498014980249803498044980549806498074980849809498104981149812498134981449815498164981749818498194982049821498224982349824498254982649827498284982949830498314983249833498344983549836498374983849839498404984149842498434984449845498464984749848498494985049851498524985349854498554985649857498584985949860498614986249863498644986549866498674986849869498704987149872498734987449875498764987749878498794988049881498824988349884498854988649887498884988949890498914989249893498944989549896498974989849899499004990149902499034990449905499064990749908499094991049911499124991349914499154991649917499184991949920499214992249923499244992549926499274992849929499304993149932499334993449935499364993749938499394994049941499424994349944499454994649947499484994949950499514995249953499544995549956499574995849959499604996149962499634996449965499664996749968499694997049971499724997349974499754997649977499784997949980499814998249983499844998549986499874998849989499904999149992499934999449995499964999749998499995000050001500025000350004500055000650007500085000950010500115001250013500145001550016500175001850019500205002150022500235002450025500265002750028500295003050031500325003350034500355003650037500385003950040500415004250043500445004550046500475004850049500505005150052500535005450055500565005750058500595006050061500625006350064500655006650067500685006950070500715007250073500745007550076500775007850079500805008150082500835008450085500865008750088500895009050091500925009350094500955009650097500985009950100501015010250103501045010550106501075010850109501105011150112501135011450115501165011750118501195012050121501225012350124501255012650127501285012950130501315013250133501345013550136501375013850139501405014150142501435014450145501465014750148501495015050151501525015350154501555015650157501585015950160501615016250163501645016550166501675016850169501705017150172501735017450175501765017750178501795018050181501825018350184501855018650187501885018950190501915019250193501945019550196501975019850199502005020150202502035020450205502065020750208502095021050211502125021350214502155021650217502185021950220502215022250223502245022550226502275022850229502305023150232502335023450235502365023750238502395024050241502425024350244502455024650247502485024950250502515025250253502545025550256502575025850259502605026150262502635026450265502665026750268502695027050271502725027350274502755027650277502785027950280502815028250283502845028550286502875028850289502905029150292502935029450295502965029750298502995030050301503025030350304503055030650307503085030950310503115031250313503145031550316503175031850319503205032150322503235032450325503265032750328503295033050331503325033350334503355033650337503385033950340503415034250343503445034550346503475034850349503505035150352503535035450355503565035750358503595036050361503625036350364503655036650367503685036950370503715037250373503745037550376503775037850379503805038150382503835038450385503865038750388503895039050391503925039350394503955039650397503985039950400504015040250403504045040550406504075040850409504105041150412504135041450415504165041750418504195042050421504225042350424504255042650427504285042950430504315043250433504345043550436504375043850439504405044150442504435044450445504465044750448504495045050451504525045350454504555045650457504585045950460504615046250463504645046550466504675046850469504705047150472504735047450475504765047750478504795048050481504825048350484504855048650487504885048950490504915049250493504945049550496504975049850499505005050150502505035050450505505065050750508505095051050511505125051350514505155051650517505185051950520505215052250523505245052550526505275052850529505305053150532505335053450535505365053750538505395054050541505425054350544505455054650547505485054950550505515055250553505545055550556505575055850559505605056150562505635056450565505665056750568505695057050571505725057350574505755057650577505785057950580505815058250583505845058550586505875058850589505905059150592505935059450595505965059750598505995060050601506025060350604506055060650607506085060950610506115061250613506145061550616506175061850619506205062150622506235062450625506265062750628506295063050631506325063350634506355063650637506385063950640506415064250643506445064550646506475064850649506505065150652506535065450655506565065750658506595066050661506625066350664506655066650667506685066950670506715067250673506745067550676506775067850679506805068150682506835068450685506865068750688506895069050691506925069350694506955069650697506985069950700507015070250703507045070550706507075070850709507105071150712507135071450715507165071750718507195072050721507225072350724507255072650727507285072950730507315073250733507345073550736507375073850739507405074150742507435074450745507465074750748507495075050751507525075350754507555075650757507585075950760507615076250763507645076550766507675076850769507705077150772507735077450775507765077750778507795078050781507825078350784507855078650787507885078950790507915079250793507945079550796507975079850799508005080150802508035080450805508065080750808508095081050811508125081350814508155081650817508185081950820508215082250823508245082550826508275082850829508305083150832508335083450835508365083750838508395084050841508425084350844508455084650847508485084950850508515085250853508545085550856508575085850859508605086150862508635086450865508665086750868508695087050871508725087350874508755087650877508785087950880508815088250883508845088550886508875088850889508905089150892508935089450895508965089750898508995090050901509025090350904509055090650907509085090950910509115091250913509145091550916509175091850919509205092150922509235092450925509265092750928509295093050931509325093350934509355093650937509385093950940509415094250943509445094550946509475094850949509505095150952509535095450955509565095750958509595096050961509625096350964509655096650967509685096950970509715097250973509745097550976509775097850979509805098150982509835098450985509865098750988509895099050991509925099350994509955099650997509985099951000510015100251003510045100551006510075100851009510105101151012510135101451015510165101751018510195102051021510225102351024510255102651027510285102951030510315103251033510345103551036510375103851039510405104151042510435104451045510465104751048510495105051051510525105351054510555105651057510585105951060510615106251063510645106551066510675106851069510705107151072510735107451075510765107751078510795108051081510825108351084510855108651087510885108951090510915109251093510945109551096510975109851099511005110151102511035110451105511065110751108511095111051111511125111351114511155111651117511185111951120511215112251123511245112551126511275112851129511305113151132511335113451135511365113751138511395114051141511425114351144511455114651147511485114951150511515115251153511545115551156511575115851159511605116151162511635116451165511665116751168511695117051171511725117351174511755117651177511785117951180511815118251183511845118551186511875118851189511905119151192511935119451195511965119751198511995120051201512025120351204512055120651207512085120951210512115121251213512145121551216512175121851219512205122151222512235122451225512265122751228512295123051231512325123351234512355123651237512385123951240512415124251243512445124551246512475124851249512505125151252512535125451255512565125751258512595126051261512625126351264512655126651267512685126951270512715127251273512745127551276512775127851279512805128151282512835128451285512865128751288512895129051291512925129351294512955129651297512985129951300513015130251303513045130551306513075130851309513105131151312513135131451315513165131751318513195132051321513225132351324513255132651327513285132951330513315133251333513345133551336513375133851339513405134151342513435134451345513465134751348513495135051351513525135351354513555135651357513585135951360513615136251363513645136551366513675136851369513705137151372513735137451375513765137751378513795138051381513825138351384513855138651387513885138951390513915139251393513945139551396513975139851399514005140151402514035140451405514065140751408514095141051411514125141351414514155141651417514185141951420514215142251423514245142551426514275142851429514305143151432514335143451435514365143751438514395144051441514425144351444514455144651447514485144951450514515145251453514545145551456514575145851459514605146151462514635146451465514665146751468514695147051471514725147351474514755147651477514785147951480514815148251483514845148551486514875148851489514905149151492514935149451495514965149751498514995150051501515025150351504515055150651507515085150951510515115151251513515145151551516515175151851519515205152151522515235152451525515265152751528515295153051531515325153351534515355153651537515385153951540515415154251543515445154551546515475154851549515505155151552515535155451555515565155751558515595156051561515625156351564515655156651567515685156951570515715157251573515745157551576515775157851579515805158151582515835158451585515865158751588515895159051591515925159351594515955159651597515985159951600516015160251603516045160551606516075160851609516105161151612516135161451615516165161751618516195162051621516225162351624516255162651627516285162951630516315163251633516345163551636516375163851639516405164151642516435164451645516465164751648516495165051651516525165351654516555165651657516585165951660516615166251663516645166551666516675166851669516705167151672516735167451675516765167751678516795168051681516825168351684516855168651687516885168951690516915169251693516945169551696516975169851699517005170151702517035170451705517065170751708517095171051711517125171351714517155171651717517185171951720517215172251723517245172551726517275172851729517305173151732517335173451735517365173751738517395174051741517425174351744517455174651747517485174951750517515175251753517545175551756517575175851759517605176151762517635176451765517665176751768517695177051771517725177351774517755177651777517785177951780517815178251783517845178551786517875178851789517905179151792517935179451795517965179751798517995180051801518025180351804518055180651807518085180951810518115181251813518145181551816518175181851819518205182151822518235182451825518265182751828518295183051831518325183351834518355183651837518385183951840518415184251843518445184551846518475184851849518505185151852518535185451855518565185751858518595186051861518625186351864518655186651867518685186951870518715187251873518745187551876518775187851879518805188151882518835188451885518865188751888518895189051891518925189351894518955189651897518985189951900519015190251903519045190551906519075190851909519105191151912519135191451915519165191751918519195192051921519225192351924519255192651927519285192951930519315193251933519345193551936519375193851939519405194151942519435194451945519465194751948519495195051951519525195351954519555195651957519585195951960519615196251963519645196551966519675196851969519705197151972519735197451975519765197751978519795198051981519825198351984519855198651987519885198951990519915199251993519945199551996519975199851999520005200152002520035200452005520065200752008520095201052011520125201352014520155201652017520185201952020520215202252023520245202552026520275202852029520305203152032520335203452035520365203752038520395204052041520425204352044520455204652047520485204952050520515205252053520545205552056520575205852059520605206152062520635206452065520665206752068520695207052071520725207352074520755207652077520785207952080520815208252083520845208552086520875208852089520905209152092520935209452095520965209752098520995210052101521025210352104521055210652107521085210952110521115211252113521145211552116521175211852119521205212152122521235212452125521265212752128521295213052131521325213352134521355213652137521385213952140521415214252143521445214552146521475214852149521505215152152521535215452155521565215752158521595216052161521625216352164521655216652167521685216952170521715217252173521745217552176521775217852179521805218152182521835218452185521865218752188521895219052191521925219352194521955219652197521985219952200522015220252203522045220552206522075220852209522105221152212522135221452215522165221752218522195222052221522225222352224522255222652227522285222952230522315223252233522345223552236522375223852239522405224152242522435224452245522465224752248522495225052251522525225352254522555225652257522585225952260522615226252263522645226552266522675226852269522705227152272522735227452275522765227752278522795228052281522825228352284522855228652287522885228952290522915229252293522945229552296522975229852299523005230152302523035230452305523065230752308523095231052311523125231352314523155231652317523185231952320523215232252323523245232552326523275232852329523305233152332523335233452335523365233752338523395234052341523425234352344523455234652347523485234952350523515235252353523545235552356523575235852359523605236152362523635236452365523665236752368523695237052371523725237352374523755237652377523785237952380523815238252383523845238552386523875238852389523905239152392523935239452395523965239752398523995240052401524025240352404524055240652407524085240952410524115241252413524145241552416524175241852419524205242152422524235242452425524265242752428524295243052431524325243352434524355243652437524385243952440524415244252443524445244552446524475244852449524505245152452524535245452455524565245752458524595246052461524625246352464524655246652467524685246952470524715247252473524745247552476524775247852479524805248152482524835248452485524865248752488524895249052491524925249352494524955249652497524985249952500525015250252503525045250552506525075250852509525105251152512525135251452515525165251752518525195252052521525225252352524525255252652527525285252952530525315253252533525345253552536525375253852539525405254152542525435254452545525465254752548525495255052551525525255352554525555255652557525585255952560525615256252563525645256552566525675256852569525705257152572525735257452575525765257752578525795258052581525825258352584525855258652587525885258952590525915259252593525945259552596525975259852599526005260152602526035260452605526065260752608526095261052611526125261352614526155261652617526185261952620526215262252623526245262552626526275262852629526305263152632526335263452635526365263752638526395264052641526425264352644526455264652647526485264952650526515265252653526545265552656526575265852659526605266152662526635266452665526665266752668526695267052671526725267352674526755267652677526785267952680526815268252683526845268552686526875268852689526905269152692526935269452695526965269752698526995270052701527025270352704527055270652707527085270952710527115271252713527145271552716527175271852719527205272152722527235272452725527265272752728527295273052731527325273352734527355273652737527385273952740527415274252743527445274552746527475274852749527505275152752527535275452755527565275752758527595276052761527625276352764527655276652767527685276952770527715277252773527745277552776527775277852779527805278152782527835278452785527865278752788527895279052791527925279352794527955279652797527985279952800528015280252803528045280552806528075280852809528105281152812528135281452815528165281752818528195282052821528225282352824528255282652827528285282952830528315283252833528345283552836528375283852839528405284152842528435284452845528465284752848528495285052851528525285352854528555285652857528585285952860528615286252863528645286552866528675286852869528705287152872528735287452875528765287752878528795288052881528825288352884528855288652887528885288952890528915289252893528945289552896528975289852899529005290152902529035290452905529065290752908529095291052911529125291352914529155291652917529185291952920529215292252923529245292552926529275292852929529305293152932529335293452935529365293752938529395294052941529425294352944529455294652947529485294952950529515295252953529545295552956529575295852959529605296152962529635296452965529665296752968529695297052971529725297352974529755297652977529785297952980529815298252983529845298552986529875298852989529905299152992529935299452995529965299752998529995300053001530025300353004530055300653007530085300953010530115301253013530145301553016530175301853019530205302153022530235302453025530265302753028530295303053031530325303353034530355303653037530385303953040530415304253043530445304553046530475304853049530505305153052530535305453055530565305753058530595306053061530625306353064530655306653067530685306953070530715307253073530745307553076530775307853079530805308153082530835308453085530865308753088530895309053091530925309353094530955309653097530985309953100531015310253103531045310553106531075310853109531105311153112531135311453115531165311753118531195312053121531225312353124531255312653127531285312953130531315313253133531345313553136531375313853139531405314153142531435314453145531465314753148531495315053151531525315353154531555315653157531585315953160531615316253163531645316553166531675316853169531705317153172531735317453175531765317753178531795318053181531825318353184531855318653187531885318953190531915319253193531945319553196531975319853199532005320153202532035320453205532065320753208532095321053211532125321353214532155321653217532185321953220532215322253223532245322553226532275322853229532305323153232532335323453235532365323753238532395324053241532425324353244532455324653247532485324953250532515325253253532545325553256532575325853259532605326153262532635326453265532665326753268532695327053271532725327353274532755327653277532785327953280532815328253283532845328553286532875328853289532905329153292532935329453295532965329753298532995330053301533025330353304533055330653307533085330953310533115331253313533145331553316533175331853319533205332153322533235332453325533265332753328533295333053331533325333353334533355333653337533385333953340533415334253343533445334553346533475334853349533505335153352533535335453355533565335753358533595336053361533625336353364533655336653367533685336953370533715337253373533745337553376533775337853379533805338153382533835338453385533865338753388533895339053391533925339353394533955339653397533985339953400534015340253403534045340553406534075340853409534105341153412534135341453415534165341753418534195342053421534225342353424534255342653427534285342953430534315343253433534345343553436534375343853439534405344153442534435344453445534465344753448534495345053451534525345353454534555345653457534585345953460534615346253463534645346553466534675346853469534705347153472534735347453475534765347753478534795348053481534825348353484534855348653487534885348953490534915349253493534945349553496534975349853499535005350153502535035350453505535065350753508535095351053511535125351353514535155351653517535185351953520535215352253523535245352553526535275352853529535305353153532535335353453535535365353753538535395354053541535425354353544535455354653547535485354953550535515355253553535545355553556535575355853559535605356153562535635356453565535665356753568535695357053571535725357353574535755357653577535785357953580535815358253583535845358553586535875358853589535905359153592535935359453595535965359753598535995360053601536025360353604536055360653607536085360953610536115361253613536145361553616536175361853619536205362153622536235362453625536265362753628536295363053631536325363353634536355363653637536385363953640536415364253643536445364553646536475364853649536505365153652536535365453655536565365753658536595366053661536625366353664536655366653667536685366953670536715367253673536745367553676536775367853679536805368153682536835368453685536865368753688536895369053691536925369353694536955369653697536985369953700537015370253703537045370553706537075370853709537105371153712537135371453715537165371753718537195372053721537225372353724537255372653727537285372953730537315373253733537345373553736537375373853739537405374153742537435374453745537465374753748537495375053751537525375353754537555375653757537585375953760537615376253763537645376553766537675376853769537705377153772537735377453775537765377753778537795378053781537825378353784537855378653787537885378953790537915379253793537945379553796537975379853799538005380153802538035380453805538065380753808538095381053811538125381353814538155381653817538185381953820538215382253823538245382553826538275382853829538305383153832538335383453835538365383753838538395384053841538425384353844538455384653847538485384953850538515385253853538545385553856538575385853859538605386153862538635386453865538665386753868538695387053871538725387353874538755387653877538785387953880538815388253883538845388553886538875388853889538905389153892538935389453895538965389753898538995390053901539025390353904539055390653907539085390953910539115391253913539145391553916539175391853919539205392153922539235392453925539265392753928539295393053931539325393353934539355393653937539385393953940539415394253943539445394553946539475394853949539505395153952539535395453955539565395753958539595396053961539625396353964539655396653967539685396953970539715397253973539745397553976539775397853979539805398153982539835398453985539865398753988539895399053991539925399353994539955399653997539985399954000540015400254003540045400554006540075400854009540105401154012540135401454015540165401754018540195402054021540225402354024540255402654027540285402954030540315403254033540345403554036540375403854039540405404154042540435404454045540465404754048540495405054051540525405354054540555405654057540585405954060540615406254063540645406554066540675406854069540705407154072540735407454075540765407754078540795408054081540825408354084540855408654087540885408954090540915409254093540945409554096540975409854099541005410154102541035410454105541065410754108541095411054111541125411354114541155411654117541185411954120541215412254123541245412554126541275412854129541305413154132541335413454135541365413754138541395414054141541425414354144541455414654147541485414954150541515415254153541545415554156541575415854159541605416154162541635416454165541665416754168541695417054171541725417354174541755417654177541785417954180541815418254183541845418554186541875418854189541905419154192541935419454195541965419754198541995420054201542025420354204542055420654207542085420954210542115421254213542145421554216542175421854219542205422154222542235422454225542265422754228542295423054231542325423354234542355423654237542385423954240542415424254243542445424554246542475424854249542505425154252542535425454255542565425754258542595426054261542625426354264542655426654267542685426954270542715427254273542745427554276542775427854279542805428154282542835428454285542865428754288542895429054291542925429354294542955429654297542985429954300543015430254303543045430554306543075430854309543105431154312543135431454315543165431754318543195432054321543225432354324543255432654327543285432954330543315433254333543345433554336543375433854339543405434154342543435434454345543465434754348543495435054351543525435354354543555435654357543585435954360543615436254363543645436554366543675436854369543705437154372543735437454375543765437754378543795438054381543825438354384543855438654387543885438954390543915439254393543945439554396543975439854399544005440154402544035440454405544065440754408544095441054411544125441354414544155441654417544185441954420544215442254423544245442554426544275442854429544305443154432544335443454435544365443754438544395444054441544425444354444544455444654447544485444954450544515445254453544545445554456544575445854459544605446154462544635446454465544665446754468544695447054471544725447354474544755447654477544785447954480544815448254483544845448554486544875448854489544905449154492544935449454495544965449754498544995450054501545025450354504545055450654507545085450954510545115451254513545145451554516545175451854519545205452154522545235452454525545265452754528545295453054531545325453354534545355453654537545385453954540545415454254543545445454554546545475454854549545505455154552545535455454555545565455754558545595456054561545625456354564545655456654567545685456954570545715457254573545745457554576545775457854579545805458154582545835458454585545865458754588545895459054591545925459354594545955459654597545985459954600546015460254603546045460554606546075460854609546105461154612546135461454615546165461754618546195462054621546225462354624546255462654627546285462954630546315463254633546345463554636546375463854639546405464154642546435464454645546465464754648546495465054651546525465354654546555465654657546585465954660546615466254663546645466554666546675466854669546705467154672546735467454675546765467754678546795468054681546825468354684546855468654687546885468954690546915469254693546945469554696546975469854699547005470154702547035470454705547065470754708547095471054711547125471354714547155471654717547185471954720547215472254723547245472554726547275472854729547305473154732547335473454735547365473754738547395474054741547425474354744547455474654747547485474954750547515475254753547545475554756547575475854759547605476154762547635476454765547665476754768547695477054771547725477354774547755477654777547785477954780547815478254783547845478554786547875478854789547905479154792547935479454795547965479754798547995480054801548025480354804548055480654807548085480954810548115481254813548145481554816548175481854819548205482154822548235482454825548265482754828548295483054831548325483354834548355483654837548385483954840548415484254843548445484554846548475484854849548505485154852548535485454855548565485754858548595486054861548625486354864548655486654867548685486954870548715487254873548745487554876548775487854879548805488154882548835488454885548865488754888548895489054891548925489354894548955489654897548985489954900549015490254903549045490554906549075490854909549105491154912549135491454915549165491754918549195492054921549225492354924549255492654927549285492954930549315493254933549345493554936549375493854939549405494154942549435494454945549465494754948549495495054951549525495354954549555495654957549585495954960549615496254963549645496554966549675496854969549705497154972549735497454975549765497754978549795498054981549825498354984549855498654987549885498954990549915499254993549945499554996549975499854999550005500155002550035500455005550065500755008550095501055011550125501355014550155501655017550185501955020550215502255023550245502555026550275502855029550305503155032550335503455035550365503755038550395504055041550425504355044550455504655047550485504955050550515505255053550545505555056550575505855059550605506155062550635506455065550665506755068550695507055071550725507355074550755507655077550785507955080550815508255083550845508555086550875508855089550905509155092550935509455095550965509755098550995510055101551025510355104551055510655107551085510955110551115511255113551145511555116551175511855119551205512155122551235512455125551265512755128551295513055131551325513355134551355513655137551385513955140551415514255143551445514555146551475514855149551505515155152551535515455155551565515755158551595516055161551625516355164551655516655167551685516955170551715517255173551745517555176551775517855179551805518155182551835518455185551865518755188551895519055191551925519355194551955519655197551985519955200552015520255203552045520555206552075520855209552105521155212552135521455215552165521755218552195522055221552225522355224552255522655227552285522955230552315523255233552345523555236552375523855239552405524155242552435524455245552465524755248552495525055251552525525355254552555525655257552585525955260552615526255263552645526555266552675526855269552705527155272552735527455275552765527755278552795528055281552825528355284552855528655287552885528955290552915529255293552945529555296552975529855299553005530155302553035530455305553065530755308553095531055311553125531355314553155531655317553185531955320553215532255323553245532555326553275532855329553305533155332553335533455335553365533755338553395534055341553425534355344553455534655347553485534955350553515535255353553545535555356553575535855359553605536155362553635536455365553665536755368553695537055371553725537355374553755537655377553785537955380553815538255383553845538555386553875538855389553905539155392553935539455395553965539755398553995540055401554025540355404554055540655407554085540955410554115541255413554145541555416554175541855419554205542155422554235542455425554265542755428554295543055431554325543355434554355543655437554385543955440554415544255443554445544555446554475544855449554505545155452554535545455455554565545755458554595546055461554625546355464554655546655467554685546955470554715547255473554745547555476554775547855479554805548155482554835548455485554865548755488554895549055491554925549355494554955549655497554985549955500555015550255503555045550555506555075550855509555105551155512555135551455515555165551755518555195552055521555225552355524555255552655527555285552955530555315553255533555345553555536555375553855539555405554155542555435554455545555465554755548555495555055551555525555355554555555555655557555585555955560555615556255563555645556555566555675556855569555705557155572555735557455575555765557755578555795558055581555825558355584555855558655587555885558955590555915559255593555945559555596555975559855599556005560155602556035560455605556065560755608556095561055611556125561355614556155561655617556185561955620556215562255623556245562555626556275562855629556305563155632556335563455635556365563755638556395564055641556425564355644556455564655647556485564955650556515565255653556545565555656556575565855659556605566155662556635566455665556665566755668556695567055671556725567355674556755567655677556785567955680556815568255683556845568555686556875568855689556905569155692556935569455695556965569755698556995570055701557025570355704557055570655707557085570955710557115571255713557145571555716557175571855719557205572155722557235572455725557265572755728557295573055731557325573355734557355573655737557385573955740557415574255743557445574555746557475574855749557505575155752557535575455755557565575755758557595576055761557625576355764557655576655767557685576955770557715577255773557745577555776557775577855779557805578155782557835578455785557865578755788557895579055791557925579355794557955579655797557985579955800558015580255803558045580555806558075580855809558105581155812558135581455815558165581755818558195582055821558225582355824558255582655827558285582955830558315583255833558345583555836558375583855839558405584155842558435584455845558465584755848558495585055851558525585355854558555585655857558585585955860558615586255863558645586555866558675586855869558705587155872558735587455875558765587755878558795588055881558825588355884558855588655887558885588955890558915589255893558945589555896558975589855899559005590155902559035590455905559065590755908559095591055911559125591355914559155591655917559185591955920559215592255923559245592555926559275592855929559305593155932559335593455935559365593755938559395594055941559425594355944559455594655947559485594955950559515595255953559545595555956559575595855959559605596155962559635596455965559665596755968559695597055971559725597355974559755597655977559785597955980559815598255983559845598555986559875598855989559905599155992559935599455995559965599755998559995600056001560025600356004560055600656007560085600956010560115601256013560145601556016560175601856019560205602156022560235602456025560265602756028560295603056031560325603356034560355603656037560385603956040560415604256043560445604556046560475604856049560505605156052560535605456055560565605756058560595606056061560625606356064560655606656067560685606956070560715607256073560745607556076560775607856079560805608156082560835608456085560865608756088560895609056091560925609356094560955609656097560985609956100561015610256103561045610556106561075610856109561105611156112561135611456115561165611756118561195612056121561225612356124561255612656127561285612956130561315613256133561345613556136561375613856139561405614156142561435614456145561465614756148561495615056151561525615356154561555615656157561585615956160561615616256163561645616556166561675616856169561705617156172561735617456175561765617756178561795618056181561825618356184561855618656187561885618956190561915619256193561945619556196561975619856199562005620156202562035620456205562065620756208562095621056211562125621356214562155621656217562185621956220562215622256223562245622556226562275622856229562305623156232562335623456235562365623756238562395624056241562425624356244562455624656247562485624956250562515625256253562545625556256562575625856259562605626156262562635626456265562665626756268562695627056271562725627356274562755627656277562785627956280562815628256283562845628556286562875628856289562905629156292562935629456295562965629756298562995630056301563025630356304563055630656307563085630956310563115631256313563145631556316563175631856319563205632156322563235632456325563265632756328563295633056331563325633356334563355633656337563385633956340563415634256343563445634556346563475634856349563505635156352563535635456355563565635756358563595636056361563625636356364563655636656367563685636956370563715637256373563745637556376563775637856379563805638156382563835638456385563865638756388563895639056391563925639356394563955639656397563985639956400564015640256403564045640556406564075640856409564105641156412564135641456415564165641756418564195642056421564225642356424564255642656427564285642956430564315643256433564345643556436564375643856439564405644156442564435644456445564465644756448564495645056451564525645356454564555645656457564585645956460564615646256463564645646556466564675646856469564705647156472564735647456475564765647756478564795648056481564825648356484564855648656487564885648956490564915649256493564945649556496564975649856499565005650156502565035650456505565065650756508565095651056511565125651356514565155651656517565185651956520565215652256523565245652556526565275652856529565305653156532565335653456535565365653756538565395654056541565425654356544565455654656547565485654956550565515655256553565545655556556565575655856559565605656156562565635656456565565665656756568565695657056571565725657356574565755657656577565785657956580565815658256583565845658556586565875658856589565905659156592565935659456595565965659756598565995660056601566025660356604566055660656607566085660956610566115661256613566145661556616566175661856619566205662156622566235662456625566265662756628566295663056631566325663356634566355663656637566385663956640566415664256643566445664556646566475664856649566505665156652566535665456655566565665756658566595666056661566625666356664566655666656667566685666956670566715667256673566745667556676566775667856679566805668156682566835668456685566865668756688566895669056691566925669356694566955669656697566985669956700567015670256703567045670556706567075670856709567105671156712567135671456715567165671756718567195672056721567225672356724567255672656727567285672956730567315673256733567345673556736567375673856739567405674156742567435674456745567465674756748567495675056751567525675356754567555675656757567585675956760567615676256763567645676556766567675676856769567705677156772567735677456775567765677756778567795678056781567825678356784567855678656787567885678956790567915679256793567945679556796567975679856799568005680156802568035680456805568065680756808568095681056811568125681356814568155681656817568185681956820568215682256823568245682556826568275682856829568305683156832568335683456835568365683756838568395684056841568425684356844568455684656847568485684956850568515685256853568545685556856568575685856859568605686156862568635686456865568665686756868568695687056871568725687356874568755687656877568785687956880568815688256883568845688556886568875688856889568905689156892568935689456895568965689756898568995690056901569025690356904569055690656907569085690956910569115691256913569145691556916569175691856919569205692156922569235692456925569265692756928569295693056931569325693356934569355693656937569385693956940569415694256943569445694556946569475694856949569505695156952569535695456955569565695756958569595696056961569625696356964569655696656967569685696956970569715697256973569745697556976569775697856979569805698156982569835698456985569865698756988569895699056991569925699356994569955699656997569985699957000570015700257003570045700557006570075700857009570105701157012570135701457015570165701757018570195702057021570225702357024570255702657027570285702957030570315703257033570345703557036570375703857039570405704157042570435704457045570465704757048570495705057051570525705357054570555705657057570585705957060570615706257063570645706557066570675706857069570705707157072570735707457075570765707757078570795708057081570825708357084570855708657087570885708957090570915709257093570945709557096570975709857099571005710157102571035710457105571065710757108571095711057111571125711357114571155711657117571185711957120571215712257123571245712557126571275712857129571305713157132571335713457135571365713757138571395714057141571425714357144571455714657147571485714957150571515715257153571545715557156571575715857159571605716157162571635716457165571665716757168571695717057171571725717357174571755717657177571785717957180571815718257183571845718557186571875718857189571905719157192571935719457195571965719757198571995720057201572025720357204572055720657207572085720957210572115721257213572145721557216572175721857219572205722157222572235722457225572265722757228572295723057231572325723357234572355723657237572385723957240572415724257243572445724557246572475724857249572505725157252572535725457255572565725757258572595726057261572625726357264572655726657267572685726957270572715727257273572745727557276572775727857279572805728157282572835728457285572865728757288572895729057291572925729357294572955729657297572985729957300573015730257303573045730557306573075730857309573105731157312573135731457315573165731757318573195732057321573225732357324573255732657327573285732957330573315733257333573345733557336573375733857339573405734157342573435734457345573465734757348573495735057351573525735357354573555735657357573585735957360573615736257363573645736557366573675736857369573705737157372573735737457375573765737757378573795738057381573825738357384573855738657387573885738957390573915739257393573945739557396573975739857399574005740157402574035740457405574065740757408574095741057411574125741357414574155741657417574185741957420574215742257423574245742557426574275742857429574305743157432574335743457435574365743757438574395744057441574425744357444574455744657447574485744957450574515745257453574545745557456574575745857459574605746157462574635746457465574665746757468574695747057471574725747357474574755747657477574785747957480574815748257483574845748557486574875748857489574905749157492574935749457495574965749757498574995750057501575025750357504575055750657507575085750957510575115751257513575145751557516575175751857519575205752157522575235752457525575265752757528575295753057531575325753357534575355753657537575385753957540575415754257543575445754557546575475754857549575505755157552575535755457555575565755757558575595756057561575625756357564575655756657567575685756957570575715757257573575745757557576575775757857579575805758157582575835758457585575865758757588575895759057591575925759357594575955759657597575985759957600576015760257603576045760557606576075760857609576105761157612576135761457615576165761757618576195762057621576225762357624576255762657627576285762957630576315763257633576345763557636576375763857639576405764157642576435764457645576465764757648576495765057651576525765357654576555765657657576585765957660576615766257663576645766557666576675766857669576705767157672576735767457675576765767757678576795768057681576825768357684576855768657687576885768957690576915769257693576945769557696576975769857699577005770157702577035770457705577065770757708577095771057711577125771357714577155771657717577185771957720577215772257723577245772557726577275772857729577305773157732577335773457735577365773757738577395774057741577425774357744577455774657747577485774957750577515775257753577545775557756577575775857759577605776157762577635776457765577665776757768577695777057771577725777357774577755777657777577785777957780577815778257783577845778557786577875778857789577905779157792577935779457795577965779757798577995780057801578025780357804578055780657807578085780957810578115781257813578145781557816578175781857819578205782157822578235782457825578265782757828578295783057831578325783357834578355783657837578385783957840578415784257843578445784557846578475784857849578505785157852578535785457855578565785757858578595786057861578625786357864578655786657867578685786957870578715787257873578745787557876578775787857879578805788157882578835788457885578865788757888578895789057891578925789357894578955789657897578985789957900579015790257903579045790557906579075790857909579105791157912579135791457915579165791757918579195792057921579225792357924579255792657927579285792957930579315793257933579345793557936579375793857939579405794157942579435794457945579465794757948579495795057951579525795357954579555795657957579585795957960579615796257963579645796557966579675796857969579705797157972579735797457975579765797757978579795798057981579825798357984579855798657987579885798957990579915799257993579945799557996579975799857999580005800158002580035800458005580065800758008580095801058011580125801358014580155801658017580185801958020580215802258023580245802558026580275802858029580305803158032580335803458035580365803758038580395804058041580425804358044580455804658047580485804958050580515805258053580545805558056580575805858059580605806158062580635806458065580665806758068580695807058071580725807358074580755807658077580785807958080580815808258083580845808558086580875808858089580905809158092580935809458095580965809758098580995810058101581025810358104581055810658107581085810958110581115811258113581145811558116581175811858119581205812158122581235812458125581265812758128581295813058131581325813358134581355813658137581385813958140581415814258143581445814558146581475814858149581505815158152581535815458155581565815758158581595816058161581625816358164581655816658167581685816958170581715817258173581745817558176581775817858179581805818158182581835818458185581865818758188581895819058191581925819358194581955819658197581985819958200582015820258203582045820558206582075820858209582105821158212582135821458215582165821758218582195822058221582225822358224582255822658227582285822958230582315823258233582345823558236582375823858239582405824158242582435824458245582465824758248582495825058251582525825358254582555825658257582585825958260582615826258263582645826558266582675826858269582705827158272582735827458275582765827758278582795828058281582825828358284582855828658287582885828958290582915829258293582945829558296582975829858299583005830158302583035830458305583065830758308583095831058311583125831358314583155831658317583185831958320583215832258323583245832558326583275832858329583305833158332583335833458335583365833758338583395834058341583425834358344583455834658347583485834958350583515835258353583545835558356583575835858359583605836158362583635836458365583665836758368583695837058371583725837358374583755837658377583785837958380583815838258383583845838558386583875838858389583905839158392583935839458395583965839758398583995840058401584025840358404584055840658407584085840958410584115841258413584145841558416584175841858419584205842158422584235842458425584265842758428584295843058431584325843358434584355843658437584385843958440584415844258443584445844558446584475844858449584505845158452584535845458455584565845758458584595846058461584625846358464584655846658467584685846958470584715847258473584745847558476584775847858479584805848158482584835848458485584865848758488584895849058491584925849358494584955849658497584985849958500585015850258503585045850558506585075850858509585105851158512585135851458515585165851758518585195852058521585225852358524585255852658527585285852958530585315853258533585345853558536585375853858539585405854158542585435854458545585465854758548585495855058551585525855358554585555855658557585585855958560585615856258563585645856558566585675856858569585705857158572585735857458575585765857758578585795858058581585825858358584585855858658587585885858958590585915859258593585945859558596585975859858599586005860158602586035860458605586065860758608586095861058611586125861358614586155861658617586185861958620586215862258623586245862558626586275862858629586305863158632586335863458635586365863758638586395864058641586425864358644586455864658647586485864958650586515865258653586545865558656586575865858659586605866158662586635866458665586665866758668586695867058671586725867358674586755867658677586785867958680586815868258683586845868558686586875868858689586905869158692586935869458695586965869758698586995870058701587025870358704587055870658707587085870958710587115871258713587145871558716587175871858719587205872158722587235872458725587265872758728587295873058731587325873358734587355873658737587385873958740587415874258743587445874558746587475874858749587505875158752587535875458755587565875758758587595876058761587625876358764587655876658767587685876958770587715877258773587745877558776587775877858779587805878158782587835878458785587865878758788587895879058791587925879358794587955879658797587985879958800588015880258803588045880558806588075880858809588105881158812588135881458815588165881758818588195882058821588225882358824588255882658827588285882958830588315883258833588345883558836588375883858839588405884158842588435884458845588465884758848588495885058851588525885358854588555885658857588585885958860588615886258863588645886558866588675886858869588705887158872588735887458875588765887758878588795888058881588825888358884588855888658887588885888958890588915889258893588945889558896588975889858899589005890158902589035890458905589065890758908589095891058911589125891358914589155891658917589185891958920589215892258923589245892558926589275892858929589305893158932589335893458935589365893758938589395894058941589425894358944589455894658947589485894958950589515895258953589545895558956589575895858959589605896158962589635896458965589665896758968589695897058971589725897358974589755897658977589785897958980589815898258983589845898558986589875898858989589905899158992589935899458995589965899758998589995900059001590025900359004590055900659007590085900959010590115901259013590145901559016590175901859019590205902159022590235902459025590265902759028590295903059031590325903359034590355903659037590385903959040590415904259043590445904559046590475904859049590505905159052590535905459055590565905759058590595906059061590625906359064590655906659067590685906959070590715907259073590745907559076590775907859079590805908159082590835908459085590865908759088590895909059091590925909359094590955909659097590985909959100591015910259103591045910559106591075910859109591105911159112591135911459115591165911759118591195912059121591225912359124591255912659127591285912959130591315913259133591345913559136591375913859139591405914159142591435914459145591465914759148591495915059151591525915359154591555915659157591585915959160591615916259163591645916559166591675916859169591705917159172591735917459175591765917759178591795918059181591825918359184591855918659187591885918959190591915919259193591945919559196591975919859199592005920159202592035920459205592065920759208592095921059211592125921359214592155921659217592185921959220592215922259223592245922559226592275922859229592305923159232592335923459235592365923759238592395924059241592425924359244592455924659247592485924959250592515925259253592545925559256592575925859259592605926159262592635926459265592665926759268592695927059271592725927359274592755927659277592785927959280592815928259283592845928559286592875928859289592905929159292592935929459295592965929759298592995930059301593025930359304593055930659307593085930959310593115931259313593145931559316593175931859319593205932159322593235932459325593265932759328593295933059331593325933359334593355933659337593385933959340593415934259343593445934559346593475934859349593505935159352593535935459355593565935759358593595936059361593625936359364593655936659367593685936959370593715937259373593745937559376593775937859379593805938159382593835938459385593865938759388593895939059391593925939359394593955939659397593985939959400594015940259403594045940559406594075940859409594105941159412594135941459415594165941759418594195942059421594225942359424594255942659427594285942959430594315943259433594345943559436594375943859439594405944159442594435944459445594465944759448594495945059451594525945359454594555945659457594585945959460594615946259463594645946559466594675946859469594705947159472594735947459475594765947759478594795948059481594825948359484594855948659487594885948959490594915949259493594945949559496594975949859499595005950159502595035950459505595065950759508595095951059511595125951359514595155951659517595185951959520595215952259523595245952559526595275952859529595305953159532595335953459535595365953759538595395954059541595425954359544595455954659547595485954959550595515955259553595545955559556595575955859559595605956159562595635956459565595665956759568595695957059571595725957359574595755957659577595785957959580595815958259583595845958559586595875958859589595905959159592595935959459595595965959759598595995960059601596025960359604596055960659607596085960959610596115961259613596145961559616596175961859619596205962159622596235962459625596265962759628596295963059631596325963359634596355963659637596385963959640596415964259643596445964559646596475964859649596505965159652596535965459655596565965759658596595966059661596625966359664596655966659667596685966959670596715967259673596745967559676596775967859679596805968159682596835968459685596865968759688596895969059691596925969359694596955969659697596985969959700597015970259703597045970559706597075970859709597105971159712597135971459715597165971759718597195972059721597225972359724597255972659727597285972959730597315973259733597345973559736597375973859739597405974159742597435974459745597465974759748597495975059751597525975359754597555975659757597585975959760597615976259763597645976559766597675976859769597705977159772597735977459775597765977759778597795978059781597825978359784597855978659787597885978959790597915979259793597945979559796597975979859799598005980159802598035980459805598065980759808598095981059811598125981359814598155981659817598185981959820598215982259823598245982559826598275982859829598305983159832598335983459835598365983759838598395984059841598425984359844598455984659847598485984959850598515985259853598545985559856598575985859859598605986159862598635986459865598665986759868598695987059871598725987359874598755987659877598785987959880598815988259883598845988559886598875988859889598905989159892598935989459895598965989759898598995990059901599025990359904599055990659907599085990959910599115991259913599145991559916599175991859919599205992159922599235992459925599265992759928599295993059931599325993359934599355993659937599385993959940599415994259943599445994559946599475994859949599505995159952599535995459955599565995759958599595996059961599625996359964599655996659967599685996959970599715997259973599745997559976599775997859979599805998159982599835998459985599865998759988599895999059991599925999359994599955999659997599985999960000600016000260003600046000560006600076000860009600106001160012600136001460015600166001760018600196002060021600226002360024600256002660027600286002960030600316003260033600346003560036600376003860039600406004160042600436004460045600466004760048600496005060051600526005360054600556005660057600586005960060600616006260063600646006560066600676006860069600706007160072600736007460075600766007760078600796008060081600826008360084600856008660087600886008960090600916009260093600946009560096600976009860099601006010160102601036010460105601066010760108601096011060111601126011360114601156011660117601186011960120601216012260123601246012560126601276012860129601306013160132601336013460135601366013760138601396014060141601426014360144601456014660147601486014960150601516015260153601546015560156601576015860159601606016160162601636016460165601666016760168601696017060171601726017360174601756017660177601786017960180601816018260183601846018560186601876018860189601906019160192601936019460195601966019760198601996020060201602026020360204602056020660207602086020960210602116021260213602146021560216602176021860219602206022160222602236022460225602266022760228602296023060231602326023360234602356023660237602386023960240602416024260243602446024560246602476024860249602506025160252602536025460255602566025760258602596026060261602626026360264602656026660267602686026960270602716027260273602746027560276602776027860279602806028160282602836028460285602866028760288602896029060291602926029360294602956029660297602986029960300603016030260303603046030560306603076030860309603106031160312603136031460315603166031760318603196032060321603226032360324603256032660327603286032960330603316033260333603346033560336603376033860339603406034160342603436034460345603466034760348603496035060351603526035360354603556035660357603586035960360603616036260363603646036560366603676036860369603706037160372603736037460375603766037760378603796038060381603826038360384603856038660387603886038960390603916039260393603946039560396603976039860399604006040160402604036040460405604066040760408604096041060411604126041360414604156041660417604186041960420604216042260423604246042560426604276042860429604306043160432604336043460435604366043760438604396044060441604426044360444604456044660447604486044960450604516045260453604546045560456604576045860459604606046160462604636046460465604666046760468604696047060471604726047360474604756047660477604786047960480604816048260483604846048560486604876048860489604906049160492604936049460495604966049760498604996050060501605026050360504605056050660507605086050960510605116051260513605146051560516605176051860519605206052160522605236052460525605266052760528605296053060531605326053360534605356053660537605386053960540605416054260543605446054560546605476054860549605506055160552605536055460555605566055760558605596056060561605626056360564605656056660567605686056960570605716057260573605746057560576605776057860579605806058160582605836058460585605866058760588605896059060591605926059360594605956059660597605986059960600606016060260603606046060560606606076060860609606106061160612606136061460615606166061760618606196062060621606226062360624606256062660627606286062960630606316063260633606346063560636606376063860639606406064160642606436064460645606466064760648606496065060651606526065360654606556065660657606586065960660606616066260663606646066560666606676066860669606706067160672606736067460675606766067760678606796068060681606826068360684606856068660687606886068960690606916069260693606946069560696606976069860699607006070160702607036070460705607066070760708607096071060711607126071360714607156071660717607186071960720607216072260723607246072560726607276072860729607306073160732607336073460735607366073760738607396074060741607426074360744607456074660747607486074960750607516075260753607546075560756607576075860759607606076160762607636076460765607666076760768607696077060771607726077360774607756077660777607786077960780607816078260783607846078560786607876078860789607906079160792607936079460795607966079760798607996080060801608026080360804608056080660807608086080960810608116081260813608146081560816608176081860819608206082160822608236082460825608266082760828608296083060831608326083360834608356083660837608386083960840608416084260843608446084560846608476084860849608506085160852608536085460855608566085760858608596086060861608626086360864608656086660867608686086960870608716087260873608746087560876608776087860879608806088160882608836088460885608866088760888608896089060891608926089360894608956089660897608986089960900609016090260903609046090560906609076090860909609106091160912609136091460915609166091760918609196092060921609226092360924609256092660927609286092960930609316093260933609346093560936609376093860939609406094160942609436094460945609466094760948609496095060951609526095360954609556095660957609586095960960609616096260963609646096560966609676096860969609706097160972609736097460975609766097760978609796098060981609826098360984609856098660987609886098960990609916099260993609946099560996609976099860999610006100161002610036100461005610066100761008610096101061011610126101361014610156101661017610186101961020610216102261023610246102561026610276102861029610306103161032610336103461035610366103761038610396104061041610426104361044610456104661047610486104961050610516105261053610546105561056610576105861059610606106161062610636106461065610666106761068610696107061071610726107361074610756107661077610786107961080610816108261083610846108561086610876108861089610906109161092610936109461095610966109761098610996110061101611026110361104611056110661107611086110961110611116111261113611146111561116611176111861119611206112161122611236112461125611266112761128611296113061131611326113361134611356113661137611386113961140611416114261143611446114561146611476114861149611506115161152611536115461155611566115761158611596116061161611626116361164611656116661167611686116961170611716117261173611746117561176611776117861179611806118161182611836118461185611866118761188611896119061191611926119361194611956119661197611986119961200612016120261203612046120561206612076120861209612106121161212612136121461215612166121761218612196122061221612226122361224612256122661227612286122961230612316123261233612346123561236612376123861239612406124161242612436124461245612466124761248612496125061251612526125361254612556125661257612586125961260612616126261263612646126561266612676126861269612706127161272612736127461275612766127761278612796128061281612826128361284612856128661287612886128961290612916129261293612946129561296612976129861299613006130161302613036130461305613066130761308613096131061311613126131361314613156131661317613186131961320613216132261323613246132561326613276132861329613306133161332613336133461335613366133761338613396134061341613426134361344613456134661347613486134961350613516135261353613546135561356613576135861359613606136161362613636136461365613666136761368613696137061371613726137361374613756137661377613786137961380613816138261383613846138561386613876138861389613906139161392613936139461395613966139761398613996140061401614026140361404614056140661407614086140961410614116141261413614146141561416614176141861419614206142161422614236142461425614266142761428614296143061431614326143361434614356143661437614386143961440614416144261443614446144561446614476144861449614506145161452614536145461455614566145761458614596146061461614626146361464614656146661467614686146961470614716147261473614746147561476614776147861479614806148161482614836148461485614866148761488614896149061491614926149361494614956149661497614986149961500615016150261503615046150561506615076150861509615106151161512615136151461515615166151761518615196152061521615226152361524615256152661527615286152961530615316153261533615346153561536615376153861539615406154161542615436154461545615466154761548615496155061551615526155361554615556155661557615586155961560615616156261563615646156561566615676156861569615706157161572615736157461575615766157761578615796158061581615826158361584615856158661587615886158961590615916159261593615946159561596615976159861599616006160161602616036160461605616066160761608616096161061611616126161361614616156161661617616186161961620616216162261623616246162561626616276162861629616306163161632616336163461635616366163761638616396164061641616426164361644616456164661647616486164961650616516165261653616546165561656616576165861659616606166161662616636166461665616666166761668616696167061671616726167361674616756167661677616786167961680616816168261683616846168561686616876168861689616906169161692616936169461695616966169761698616996170061701617026170361704617056170661707617086170961710617116171261713617146171561716617176171861719617206172161722617236172461725617266172761728617296173061731617326173361734617356173661737617386173961740617416174261743617446174561746617476174861749617506175161752617536175461755617566175761758617596176061761617626176361764617656176661767617686176961770617716177261773617746177561776617776177861779617806178161782617836178461785617866178761788617896179061791617926179361794617956179661797617986179961800618016180261803618046180561806618076180861809618106181161812618136181461815618166181761818618196182061821618226182361824618256182661827618286182961830618316183261833618346183561836618376183861839618406184161842618436184461845618466184761848618496185061851618526185361854618556185661857618586185961860618616186261863618646186561866618676186861869618706187161872618736187461875618766187761878618796188061881618826188361884618856188661887618886188961890618916189261893618946189561896618976189861899619006190161902619036190461905619066190761908619096191061911619126191361914619156191661917619186191961920619216192261923619246192561926619276192861929619306193161932619336193461935619366193761938619396194061941619426194361944619456194661947619486194961950619516195261953619546195561956619576195861959619606196161962619636196461965619666196761968619696197061971619726197361974619756197661977619786197961980619816198261983619846198561986619876198861989619906199161992619936199461995619966199761998619996200062001620026200362004620056200662007620086200962010620116201262013620146201562016620176201862019620206202162022620236202462025620266202762028620296203062031620326203362034620356203662037620386203962040620416204262043620446204562046620476204862049620506205162052620536205462055620566205762058620596206062061620626206362064620656206662067620686206962070620716207262073620746207562076620776207862079620806208162082620836208462085620866208762088620896209062091620926209362094620956209662097620986209962100621016210262103621046210562106621076210862109621106211162112621136211462115621166211762118621196212062121621226212362124621256212662127621286212962130621316213262133621346213562136621376213862139621406214162142621436214462145621466214762148621496215062151621526215362154621556215662157621586215962160621616216262163621646216562166621676216862169621706217162172621736217462175621766217762178621796218062181621826218362184621856218662187621886218962190621916219262193621946219562196621976219862199622006220162202622036220462205622066220762208622096221062211622126221362214622156221662217622186221962220622216222262223622246222562226622276222862229622306223162232622336223462235622366223762238622396224062241622426224362244622456224662247622486224962250622516225262253622546225562256622576225862259622606226162262622636226462265622666226762268622696227062271622726227362274622756227662277622786227962280622816228262283622846228562286622876228862289622906229162292622936229462295622966229762298622996230062301623026230362304623056230662307623086230962310623116231262313623146231562316623176231862319623206232162322623236232462325623266232762328623296233062331623326233362334623356233662337623386233962340623416234262343623446234562346623476234862349623506235162352623536235462355623566235762358623596236062361623626236362364623656236662367623686236962370623716237262373623746237562376623776237862379623806238162382623836238462385623866238762388623896239062391623926239362394623956239662397623986239962400624016240262403624046240562406624076240862409624106241162412624136241462415624166241762418624196242062421624226242362424624256242662427624286242962430624316243262433624346243562436624376243862439624406244162442624436244462445624466244762448624496245062451624526245362454624556245662457624586245962460624616246262463624646246562466624676246862469624706247162472624736247462475624766247762478624796248062481624826248362484624856248662487624886248962490624916249262493624946249562496624976249862499625006250162502625036250462505625066250762508625096251062511625126251362514625156251662517625186251962520625216252262523625246252562526625276252862529625306253162532625336253462535625366253762538625396254062541625426254362544625456254662547625486254962550625516255262553625546255562556625576255862559625606256162562625636256462565625666256762568625696257062571625726257362574625756257662577625786257962580625816258262583625846258562586625876258862589625906259162592625936259462595625966259762598625996260062601626026260362604626056260662607626086260962610626116261262613626146261562616626176261862619626206262162622626236262462625626266262762628626296263062631626326263362634626356263662637626386263962640626416264262643626446264562646626476264862649626506265162652626536265462655626566265762658626596266062661626626266362664626656266662667626686266962670626716267262673626746267562676626776267862679626806268162682626836268462685626866268762688626896269062691626926269362694626956269662697626986269962700627016270262703627046270562706627076270862709627106271162712627136271462715627166271762718627196272062721627226272362724627256272662727627286272962730627316273262733627346273562736627376273862739627406274162742627436274462745627466274762748627496275062751627526275362754627556275662757627586275962760627616276262763627646276562766627676276862769627706277162772627736277462775627766277762778627796278062781627826278362784627856278662787627886278962790627916279262793627946279562796627976279862799628006280162802628036280462805628066280762808628096281062811628126281362814628156281662817628186281962820628216282262823628246282562826628276282862829628306283162832628336283462835628366283762838628396284062841628426284362844628456284662847628486284962850628516285262853628546285562856628576285862859628606286162862628636286462865628666286762868628696287062871628726287362874628756287662877628786287962880628816288262883628846288562886628876288862889628906289162892628936289462895628966289762898628996290062901629026290362904629056290662907629086290962910629116291262913629146291562916629176291862919629206292162922629236292462925629266292762928629296293062931629326293362934629356293662937629386293962940629416294262943629446294562946629476294862949629506295162952629536295462955629566295762958629596296062961629626296362964629656296662967629686296962970629716297262973629746297562976629776297862979629806298162982629836298462985629866298762988629896299062991629926299362994629956299662997629986299963000630016300263003630046300563006630076300863009630106301163012630136301463015630166301763018630196302063021630226302363024630256302663027630286302963030630316303263033630346303563036630376303863039630406304163042630436304463045630466304763048630496305063051630526305363054630556305663057630586305963060630616306263063630646306563066630676306863069630706307163072630736307463075630766307763078630796308063081630826308363084630856308663087630886308963090630916309263093630946309563096630976309863099631006310163102631036310463105631066310763108631096311063111631126311363114631156311663117631186311963120631216312263123631246312563126631276312863129631306313163132631336313463135631366313763138631396314063141631426314363144631456314663147631486314963150631516315263153631546315563156631576315863159631606316163162631636316463165631666316763168631696317063171631726317363174631756317663177631786317963180631816318263183631846318563186631876318863189631906319163192631936319463195631966319763198631996320063201632026320363204632056320663207632086320963210632116321263213632146321563216632176321863219632206322163222632236322463225632266322763228632296323063231632326323363234632356323663237632386323963240632416324263243632446324563246632476324863249632506325163252632536325463255632566325763258632596326063261632626326363264632656326663267632686326963270632716327263273632746327563276632776327863279632806328163282632836328463285632866328763288632896329063291632926329363294632956329663297632986329963300633016330263303633046330563306633076330863309633106331163312633136331463315633166331763318633196332063321633226332363324633256332663327633286332963330633316333263333633346333563336633376333863339633406334163342633436334463345633466334763348633496335063351633526335363354633556335663357633586335963360633616336263363633646336563366633676336863369633706337163372633736337463375633766337763378633796338063381633826338363384633856338663387633886338963390633916339263393633946339563396633976339863399634006340163402634036340463405634066340763408634096341063411634126341363414634156341663417634186341963420634216342263423634246342563426634276342863429634306343163432634336343463435634366343763438634396344063441634426344363444634456344663447634486344963450634516345263453634546345563456634576345863459634606346163462634636346463465634666346763468634696347063471634726347363474634756347663477634786347963480634816348263483634846348563486634876348863489634906349163492634936349463495634966349763498634996350063501635026350363504635056350663507635086350963510635116351263513635146351563516635176351863519635206352163522635236352463525635266352763528635296353063531635326353363534635356353663537635386353963540635416354263543635446354563546635476354863549635506355163552635536355463555635566355763558635596356063561635626356363564635656356663567635686356963570635716357263573635746357563576635776357863579635806358163582635836358463585635866358763588635896359063591635926359363594635956359663597635986359963600636016360263603636046360563606636076360863609636106361163612636136361463615636166361763618636196362063621636226362363624636256362663627636286362963630636316363263633636346363563636636376363863639636406364163642636436364463645636466364763648636496365063651636526365363654636556365663657636586365963660636616366263663636646366563666636676366863669636706367163672636736367463675636766367763678636796368063681636826368363684636856368663687636886368963690636916369263693636946369563696636976369863699637006370163702637036370463705637066370763708637096371063711637126371363714637156371663717637186371963720637216372263723637246372563726637276372863729637306373163732637336373463735637366373763738637396374063741637426374363744637456374663747637486374963750637516375263753637546375563756637576375863759637606376163762637636376463765637666376763768637696377063771637726377363774637756377663777637786377963780637816378263783637846378563786637876378863789637906379163792637936379463795637966379763798637996380063801638026380363804638056380663807638086380963810638116381263813638146381563816638176381863819638206382163822638236382463825638266382763828638296383063831638326383363834638356383663837638386383963840638416384263843638446384563846638476384863849638506385163852638536385463855638566385763858638596386063861638626386363864638656386663867638686386963870638716387263873638746387563876638776387863879638806388163882638836388463885638866388763888638896389063891638926389363894638956389663897638986389963900639016390263903639046390563906639076390863909639106391163912639136391463915639166391763918639196392063921639226392363924639256392663927639286392963930639316393263933639346393563936639376393863939639406394163942639436394463945639466394763948639496395063951639526395363954639556395663957639586395963960639616396263963639646396563966639676396863969639706397163972639736397463975639766397763978639796398063981639826398363984639856398663987639886398963990639916399263993639946399563996639976399863999640006400164002640036400464005640066400764008640096401064011640126401364014640156401664017640186401964020640216402264023640246402564026640276402864029640306403164032640336403464035640366403764038640396404064041640426404364044640456404664047640486404964050640516405264053640546405564056640576405864059640606406164062640636406464065640666406764068640696407064071640726407364074640756407664077640786407964080640816408264083640846408564086640876408864089640906409164092640936409464095640966409764098640996410064101641026410364104641056410664107641086410964110641116411264113641146411564116641176411864119641206412164122641236412464125641266412764128641296413064131641326413364134641356413664137641386413964140641416414264143641446414564146641476414864149641506415164152641536415464155641566415764158641596416064161641626416364164641656416664167641686416964170641716417264173641746417564176641776417864179641806418164182641836418464185641866418764188641896419064191641926419364194641956419664197641986419964200642016420264203642046420564206642076420864209642106421164212642136421464215642166421764218642196422064221642226422364224642256422664227642286422964230642316423264233642346423564236642376423864239642406424164242642436424464245642466424764248642496425064251642526425364254642556425664257642586425964260642616426264263642646426564266642676426864269642706427164272642736427464275642766427764278642796428064281642826428364284642856428664287642886428964290642916429264293642946429564296642976429864299643006430164302643036430464305643066430764308643096431064311643126431364314643156431664317643186431964320643216432264323643246432564326643276432864329643306433164332643336433464335643366433764338643396434064341643426434364344643456434664347643486434964350643516435264353643546435564356643576435864359643606436164362643636436464365643666436764368643696437064371643726437364374643756437664377643786437964380643816438264383643846438564386643876438864389643906439164392643936439464395643966439764398643996440064401644026440364404644056440664407644086440964410644116441264413644146441564416644176441864419644206442164422644236442464425644266442764428644296443064431644326443364434644356443664437644386443964440644416444264443644446444564446644476444864449644506445164452644536445464455644566445764458644596446064461644626446364464644656446664467644686446964470644716447264473644746447564476644776447864479644806448164482644836448464485644866448764488644896449064491644926449364494644956449664497644986449964500645016450264503645046450564506645076450864509645106451164512645136451464515645166451764518645196452064521645226452364524645256452664527645286452964530645316453264533645346453564536645376453864539645406454164542645436454464545645466454764548645496455064551645526455364554645556455664557645586455964560645616456264563645646456564566645676456864569645706457164572645736457464575645766457764578645796458064581645826458364584645856458664587645886458964590645916459264593645946459564596645976459864599646006460164602646036460464605646066460764608646096461064611646126461364614646156461664617646186461964620646216462264623646246462564626646276462864629646306463164632646336463464635646366463764638646396464064641646426464364644646456464664647646486464964650646516465264653646546465564656646576465864659646606466164662646636466464665646666466764668646696467064671646726467364674646756467664677646786467964680646816468264683646846468564686646876468864689646906469164692646936469464695646966469764698646996470064701647026470364704647056470664707647086470964710647116471264713647146471564716647176471864719647206472164722647236472464725647266472764728647296473064731647326473364734647356473664737647386473964740647416474264743647446474564746647476474864749647506475164752647536475464755647566475764758647596476064761647626476364764647656476664767647686476964770647716477264773647746477564776647776477864779647806478164782647836478464785647866478764788647896479064791647926479364794647956479664797647986479964800648016480264803648046480564806648076480864809648106481164812648136481464815648166481764818648196482064821648226482364824648256482664827648286482964830648316483264833648346483564836648376483864839648406484164842648436484464845648466484764848648496485064851648526485364854648556485664857648586485964860648616486264863648646486564866648676486864869648706487164872648736487464875648766487764878648796488064881648826488364884648856488664887648886488964890648916489264893648946489564896648976489864899649006490164902649036490464905649066490764908649096491064911649126491364914649156491664917649186491964920649216492264923649246492564926649276492864929649306493164932649336493464935649366493764938649396494064941649426494364944649456494664947649486494964950649516495264953649546495564956649576495864959649606496164962649636496464965649666496764968649696497064971649726497364974649756497664977649786497964980649816498264983649846498564986649876498864989649906499164992649936499464995649966499764998649996500065001650026500365004650056500665007650086500965010650116501265013650146501565016650176501865019650206502165022650236502465025650266502765028650296503065031650326503365034650356503665037650386503965040650416504265043650446504565046650476504865049650506505165052650536505465055650566505765058650596506065061650626506365064650656506665067650686506965070650716507265073650746507565076650776507865079650806508165082650836508465085650866508765088650896509065091650926509365094650956509665097650986509965100651016510265103651046510565106651076510865109651106511165112651136511465115651166511765118651196512065121651226512365124651256512665127651286512965130651316513265133651346513565136651376513865139651406514165142651436514465145651466514765148651496515065151651526515365154651556515665157651586515965160651616516265163651646516565166651676516865169651706517165172651736517465175651766517765178651796518065181651826518365184651856518665187651886518965190651916519265193651946519565196651976519865199652006520165202652036520465205652066520765208652096521065211652126521365214652156521665217652186521965220652216522265223652246522565226652276522865229652306523165232652336523465235652366523765238652396524065241652426524365244652456524665247652486524965250652516525265253652546525565256652576525865259652606526165262652636526465265652666526765268652696527065271652726527365274652756527665277652786527965280652816528265283652846528565286652876528865289652906529165292652936529465295652966529765298652996530065301653026530365304653056530665307653086530965310653116531265313653146531565316653176531865319653206532165322653236532465325653266532765328653296533065331653326533365334653356533665337653386533965340653416534265343653446534565346653476534865349653506535165352653536535465355653566535765358653596536065361653626536365364653656536665367653686536965370653716537265373653746537565376653776537865379653806538165382653836538465385653866538765388653896539065391653926539365394653956539665397653986539965400654016540265403654046540565406654076540865409654106541165412654136541465415654166541765418654196542065421654226542365424654256542665427654286542965430654316543265433654346543565436654376543865439654406544165442654436544465445654466544765448654496545065451654526545365454654556545665457654586545965460654616546265463654646546565466654676546865469654706547165472654736547465475654766547765478654796548065481654826548365484654856548665487654886548965490654916549265493654946549565496654976549865499655006550165502655036550465505655066550765508655096551065511655126551365514655156551665517655186551965520655216552265523655246552565526655276552865529655306553165532655336553465535655366553765538655396554065541655426554365544655456554665547655486554965550655516555265553655546555565556655576555865559655606556165562655636556465565655666556765568655696557065571655726557365574655756557665577655786557965580655816558265583655846558565586655876558865589655906559165592655936559465595655966559765598655996560065601656026560365604656056560665607656086560965610656116561265613656146561565616656176561865619656206562165622656236562465625656266562765628656296563065631656326563365634656356563665637656386563965640656416564265643656446564565646656476564865649656506565165652656536565465655656566565765658656596566065661656626566365664656656566665667656686566965670656716567265673656746567565676656776567865679656806568165682656836568465685656866568765688656896569065691656926569365694656956569665697656986569965700657016570265703657046570565706657076570865709657106571165712657136571465715657166571765718657196572065721657226572365724657256572665727657286572965730657316573265733657346573565736657376573865739657406574165742657436574465745657466574765748657496575065751657526575365754657556575665757657586575965760657616576265763657646576565766657676576865769657706577165772657736577465775657766577765778657796578065781657826578365784657856578665787657886578965790657916579265793657946579565796657976579865799658006580165802658036580465805658066580765808658096581065811658126581365814658156581665817658186581965820658216582265823658246582565826658276582865829658306583165832658336583465835658366583765838658396584065841658426584365844658456584665847658486584965850658516585265853658546585565856658576585865859658606586165862658636586465865658666586765868658696587065871658726587365874658756587665877658786587965880658816588265883658846588565886658876588865889658906589165892658936589465895658966589765898658996590065901659026590365904659056590665907659086590965910659116591265913659146591565916659176591865919659206592165922659236592465925659266592765928659296593065931659326593365934659356593665937659386593965940659416594265943659446594565946659476594865949659506595165952659536595465955659566595765958659596596065961659626596365964659656596665967659686596965970659716597265973659746597565976659776597865979659806598165982659836598465985659866598765988659896599065991659926599365994659956599665997659986599966000660016600266003660046600566006660076600866009660106601166012660136601466015660166601766018660196602066021660226602366024660256602666027660286602966030660316603266033660346603566036660376603866039660406604166042660436604466045660466604766048660496605066051660526605366054660556605666057660586605966060660616606266063660646606566066660676606866069660706607166072660736607466075660766607766078660796608066081660826608366084660856608666087660886608966090660916609266093660946609566096660976609866099661006610166102661036610466105661066610766108661096611066111661126611366114661156611666117661186611966120661216612266123661246612566126661276612866129661306613166132661336613466135661366613766138661396614066141661426614366144661456614666147661486614966150661516615266153661546615566156661576615866159661606616166162661636616466165661666616766168661696617066171661726617366174661756617666177661786617966180661816618266183661846618566186661876618866189661906619166192661936619466195661966619766198661996620066201662026620366204662056620666207662086620966210662116621266213662146621566216662176621866219662206622166222662236622466225662266622766228662296623066231662326623366234662356623666237662386623966240662416624266243662446624566246662476624866249662506625166252662536625466255662566625766258662596626066261662626626366264662656626666267662686626966270662716627266273662746627566276662776627866279662806628166282662836628466285662866628766288662896629066291662926629366294662956629666297662986629966300663016630266303663046630566306663076630866309663106631166312663136631466315663166631766318663196632066321663226632366324663256632666327663286632966330663316633266333663346633566336663376633866339663406634166342663436634466345663466634766348663496635066351663526635366354663556635666357663586635966360663616636266363663646636566366663676636866369663706637166372663736637466375663766637766378663796638066381663826638366384663856638666387663886638966390663916639266393663946639566396663976639866399664006640166402664036640466405664066640766408664096641066411664126641366414664156641666417664186641966420664216642266423664246642566426664276642866429664306643166432664336643466435664366643766438664396644066441664426644366444664456644666447664486644966450664516645266453664546645566456664576645866459664606646166462664636646466465664666646766468664696647066471664726647366474664756647666477664786647966480664816648266483664846648566486664876648866489664906649166492664936649466495664966649766498664996650066501665026650366504665056650666507665086650966510665116651266513665146651566516665176651866519665206652166522665236652466525665266652766528665296653066531665326653366534665356653666537665386653966540665416654266543665446654566546665476654866549665506655166552665536655466555665566655766558665596656066561665626656366564665656656666567665686656966570665716657266573665746657566576665776657866579665806658166582665836658466585665866658766588665896659066591665926659366594665956659666597665986659966600666016660266603666046660566606666076660866609666106661166612666136661466615666166661766618666196662066621666226662366624666256662666627666286662966630666316663266633666346663566636666376663866639666406664166642666436664466645666466664766648666496665066651666526665366654666556665666657666586665966660666616666266663666646666566666666676666866669666706667166672666736667466675666766667766678666796668066681666826668366684666856668666687666886668966690666916669266693666946669566696666976669866699667006670166702667036670466705667066670766708667096671066711667126671366714667156671666717667186671966720667216672266723667246672566726667276672866729667306673166732667336673466735667366673766738667396674066741667426674366744667456674666747667486674966750667516675266753667546675566756667576675866759667606676166762667636676466765667666676766768667696677066771667726677366774667756677666777667786677966780667816678266783667846678566786667876678866789667906679166792667936679466795667966679766798667996680066801668026680366804668056680666807668086680966810668116681266813668146681566816668176681866819668206682166822668236682466825668266682766828668296683066831668326683366834668356683666837668386683966840668416684266843668446684566846668476684866849668506685166852668536685466855668566685766858668596686066861668626686366864668656686666867668686686966870668716687266873668746687566876668776687866879668806688166882668836688466885668866688766888668896689066891668926689366894668956689666897668986689966900669016690266903669046690566906669076690866909669106691166912669136691466915669166691766918669196692066921669226692366924669256692666927669286692966930669316693266933669346693566936669376693866939669406694166942669436694466945669466694766948669496695066951669526695366954669556695666957669586695966960669616696266963669646696566966669676696866969669706697166972669736697466975669766697766978669796698066981669826698366984669856698666987669886698966990669916699266993669946699566996669976699866999670006700167002670036700467005670066700767008670096701067011670126701367014670156701667017670186701967020670216702267023670246702567026670276702867029670306703167032670336703467035670366703767038670396704067041670426704367044670456704667047670486704967050670516705267053670546705567056670576705867059670606706167062670636706467065670666706767068670696707067071670726707367074670756707667077670786707967080670816708267083670846708567086670876708867089670906709167092670936709467095670966709767098670996710067101671026710367104671056710667107671086710967110671116711267113671146711567116671176711867119671206712167122671236712467125671266712767128671296713067131671326713367134671356713667137671386713967140671416714267143671446714567146671476714867149671506715167152671536715467155671566715767158671596716067161671626716367164671656716667167671686716967170671716717267173671746717567176671776717867179671806718167182671836718467185671866718767188671896719067191671926719367194671956719667197671986719967200672016720267203672046720567206672076720867209672106721167212672136721467215672166721767218672196722067221672226722367224672256722667227672286722967230672316723267233672346723567236672376723867239672406724167242672436724467245672466724767248672496725067251672526725367254672556725667257672586725967260672616726267263672646726567266672676726867269672706727167272672736727467275672766727767278672796728067281672826728367284672856728667287672886728967290672916729267293672946729567296672976729867299673006730167302673036730467305673066730767308673096731067311673126731367314673156731667317673186731967320673216732267323673246732567326673276732867329673306733167332673336733467335673366733767338673396734067341673426734367344673456734667347673486734967350673516735267353673546735567356673576735867359673606736167362673636736467365673666736767368673696737067371673726737367374673756737667377673786737967380673816738267383673846738567386673876738867389673906739167392673936739467395673966739767398673996740067401674026740367404674056740667407674086740967410674116741267413674146741567416674176741867419674206742167422674236742467425674266742767428674296743067431674326743367434674356743667437674386743967440674416744267443674446744567446674476744867449674506745167452674536745467455674566745767458674596746067461674626746367464674656746667467674686746967470674716747267473674746747567476674776747867479674806748167482674836748467485674866748767488674896749067491674926749367494674956749667497674986749967500675016750267503675046750567506675076750867509675106751167512675136751467515675166751767518675196752067521675226752367524675256752667527675286752967530675316753267533675346753567536675376753867539675406754167542675436754467545675466754767548675496755067551675526755367554675556755667557675586755967560675616756267563675646756567566675676756867569675706757167572675736757467575675766757767578675796758067581675826758367584675856758667587675886758967590675916759267593675946759567596675976759867599676006760167602676036760467605676066760767608676096761067611676126761367614676156761667617676186761967620676216762267623676246762567626676276762867629676306763167632676336763467635676366763767638676396764067641676426764367644676456764667647676486764967650676516765267653676546765567656676576765867659676606766167662676636766467665676666766767668676696767067671676726767367674676756767667677676786767967680676816768267683676846768567686676876768867689676906769167692676936769467695676966769767698676996770067701677026770367704677056770667707677086770967710677116771267713677146771567716677176771867719677206772167722677236772467725677266772767728677296773067731677326773367734677356773667737677386773967740677416774267743677446774567746677476774867749677506775167752677536775467755677566775767758677596776067761677626776367764677656776667767677686776967770677716777267773677746777567776677776777867779677806778167782677836778467785677866778767788677896779067791677926779367794677956779667797677986779967800678016780267803678046780567806678076780867809678106781167812678136781467815678166781767818678196782067821678226782367824678256782667827678286782967830678316783267833678346783567836678376783867839678406784167842678436784467845678466784767848678496785067851678526785367854678556785667857678586785967860678616786267863678646786567866678676786867869678706787167872678736787467875678766787767878678796788067881678826788367884678856788667887678886788967890678916789267893678946789567896678976789867899679006790167902679036790467905679066790767908679096791067911679126791367914679156791667917679186791967920679216792267923679246792567926679276792867929679306793167932679336793467935679366793767938679396794067941679426794367944679456794667947679486794967950679516795267953679546795567956679576795867959679606796167962679636796467965679666796767968679696797067971679726797367974679756797667977679786797967980679816798267983679846798567986679876798867989679906799167992679936799467995679966799767998679996800068001680026800368004680056800668007680086800968010680116801268013680146801568016680176801868019680206802168022680236802468025680266802768028680296803068031680326803368034680356803668037680386803968040680416804268043680446804568046680476804868049680506805168052680536805468055680566805768058680596806068061680626806368064680656806668067680686806968070680716807268073680746807568076680776807868079680806808168082680836808468085680866808768088680896809068091680926809368094680956809668097680986809968100681016810268103681046810568106681076810868109681106811168112681136811468115681166811768118681196812068121681226812368124681256812668127681286812968130681316813268133681346813568136681376813868139681406814168142681436814468145681466814768148681496815068151681526815368154681556815668157681586815968160681616816268163681646816568166681676816868169681706817168172681736817468175681766817768178681796818068181681826818368184681856818668187681886818968190681916819268193681946819568196681976819868199682006820168202682036820468205682066820768208682096821068211682126821368214682156821668217682186821968220682216822268223682246822568226682276822868229682306823168232682336823468235682366823768238682396824068241682426824368244682456824668247682486824968250682516825268253682546825568256682576825868259682606826168262682636826468265682666826768268682696827068271682726827368274682756827668277682786827968280682816828268283682846828568286682876828868289682906829168292682936829468295682966829768298682996830068301683026830368304683056830668307683086830968310683116831268313683146831568316683176831868319683206832168322683236832468325683266832768328683296833068331683326833368334683356833668337683386833968340683416834268343683446834568346683476834868349683506835168352683536835468355683566835768358683596836068361683626836368364683656836668367683686836968370683716837268373683746837568376683776837868379683806838168382683836838468385683866838768388683896839068391683926839368394683956839668397683986839968400684016840268403684046840568406684076840868409684106841168412684136841468415684166841768418684196842068421684226842368424684256842668427684286842968430684316843268433684346843568436684376843868439684406844168442684436844468445684466844768448684496845068451684526845368454684556845668457684586845968460684616846268463684646846568466684676846868469684706847168472684736847468475684766847768478684796848068481684826848368484684856848668487684886848968490684916849268493684946849568496684976849868499685006850168502685036850468505685066850768508685096851068511685126851368514685156851668517685186851968520685216852268523685246852568526685276852868529685306853168532685336853468535685366853768538685396854068541685426854368544685456854668547685486854968550685516855268553685546855568556685576855868559685606856168562685636856468565685666856768568685696857068571685726857368574685756857668577685786857968580685816858268583685846858568586685876858868589685906859168592685936859468595685966859768598685996860068601686026860368604686056860668607686086860968610686116861268613686146861568616686176861868619686206862168622686236862468625686266862768628686296863068631686326863368634686356863668637686386863968640686416864268643686446864568646686476864868649686506865168652686536865468655686566865768658686596866068661686626866368664686656866668667686686866968670686716867268673686746867568676686776867868679686806868168682686836868468685686866868768688686896869068691686926869368694686956869668697686986869968700687016870268703687046870568706687076870868709687106871168712687136871468715687166871768718687196872068721687226872368724687256872668727687286872968730687316873268733687346873568736687376873868739687406874168742687436874468745687466874768748687496875068751687526875368754687556875668757687586875968760687616876268763687646876568766687676876868769687706877168772687736877468775687766877768778687796878068781687826878368784687856878668787687886878968790687916879268793687946879568796687976879868799688006880168802688036880468805688066880768808688096881068811688126881368814688156881668817688186881968820688216882268823688246882568826688276882868829688306883168832688336883468835688366883768838688396884068841688426884368844688456884668847688486884968850688516885268853688546885568856688576885868859688606886168862688636886468865688666886768868688696887068871688726887368874688756887668877688786887968880688816888268883688846888568886688876888868889688906889168892688936889468895688966889768898688996890068901689026890368904689056890668907689086890968910689116891268913689146891568916689176891868919689206892168922689236892468925689266892768928689296893068931689326893368934689356893668937689386893968940689416894268943689446894568946689476894868949689506895168952689536895468955689566895768958689596896068961689626896368964689656896668967689686896968970689716897268973689746897568976689776897868979689806898168982689836898468985689866898768988689896899068991689926899368994689956899668997689986899969000690016900269003690046900569006690076900869009690106901169012690136901469015690166901769018690196902069021690226902369024690256902669027690286902969030690316903269033690346903569036690376903869039690406904169042690436904469045690466904769048690496905069051690526905369054690556905669057690586905969060690616906269063690646906569066690676906869069690706907169072690736907469075690766907769078690796908069081690826908369084690856908669087690886908969090690916909269093690946909569096690976909869099691006910169102691036910469105691066910769108691096911069111691126911369114691156911669117691186911969120691216912269123691246912569126691276912869129691306913169132691336913469135691366913769138691396914069141691426914369144691456914669147691486914969150691516915269153691546915569156691576915869159691606916169162691636916469165691666916769168691696917069171691726917369174691756917669177691786917969180691816918269183691846918569186691876918869189691906919169192691936919469195691966919769198691996920069201692026920369204692056920669207692086920969210692116921269213692146921569216692176921869219692206922169222692236922469225692266922769228692296923069231692326923369234692356923669237692386923969240692416924269243692446924569246692476924869249692506925169252692536925469255692566925769258692596926069261692626926369264692656926669267692686926969270692716927269273692746927569276692776927869279692806928169282692836928469285692866928769288692896929069291692926929369294692956929669297692986929969300693016930269303693046930569306693076930869309693106931169312693136931469315693166931769318693196932069321693226932369324693256932669327693286932969330693316933269333693346933569336693376933869339693406934169342693436934469345693466934769348693496935069351693526935369354693556935669357693586935969360693616936269363693646936569366693676936869369693706937169372693736937469375693766937769378693796938069381693826938369384693856938669387693886938969390693916939269393693946939569396693976939869399694006940169402694036940469405694066940769408694096941069411694126941369414694156941669417694186941969420694216942269423694246942569426694276942869429694306943169432694336943469435694366943769438694396944069441694426944369444694456944669447694486944969450694516945269453694546945569456694576945869459694606946169462694636946469465694666946769468694696947069471694726947369474694756947669477694786947969480694816948269483694846948569486694876948869489694906949169492694936949469495694966949769498694996950069501695026950369504695056950669507695086950969510695116951269513695146951569516695176951869519695206952169522695236952469525695266952769528695296953069531695326953369534695356953669537695386953969540695416954269543695446954569546695476954869549695506955169552695536955469555695566955769558695596956069561695626956369564695656956669567695686956969570695716957269573695746957569576695776957869579695806958169582695836958469585695866958769588695896959069591695926959369594695956959669597695986959969600696016960269603696046960569606696076960869609696106961169612696136961469615696166961769618696196962069621696226962369624696256962669627696286962969630696316963269633696346963569636696376963869639696406964169642696436964469645696466964769648696496965069651696526965369654696556965669657696586965969660696616966269663696646966569666696676966869669696706967169672696736967469675696766967769678696796968069681696826968369684696856968669687696886968969690696916969269693696946969569696696976969869699697006970169702697036970469705697066970769708697096971069711697126971369714697156971669717697186971969720697216972269723697246972569726697276972869729697306973169732697336973469735697366973769738697396974069741697426974369744697456974669747697486974969750697516975269753697546975569756697576975869759697606976169762697636976469765697666976769768697696977069771697726977369774697756977669777697786977969780697816978269783697846978569786697876978869789697906979169792697936979469795697966979769798697996980069801698026980369804698056980669807698086980969810698116981269813698146981569816698176981869819698206982169822698236982469825698266982769828698296983069831698326983369834698356983669837698386983969840698416984269843698446984569846698476984869849698506985169852698536985469855698566985769858698596986069861698626986369864698656986669867698686986969870698716987269873698746987569876698776987869879698806988169882698836988469885698866988769888698896989069891698926989369894698956989669897698986989969900699016990269903699046990569906699076990869909699106991169912699136991469915699166991769918699196992069921699226992369924699256992669927699286992969930699316993269933699346993569936699376993869939699406994169942699436994469945699466994769948699496995069951699526995369954699556995669957699586995969960699616996269963699646996569966699676996869969699706997169972699736997469975699766997769978699796998069981699826998369984699856998669987699886998969990699916999269993699946999569996699976999869999700007000170002700037000470005700067000770008700097001070011700127001370014700157001670017700187001970020700217002270023700247002570026700277002870029700307003170032700337003470035700367003770038700397004070041700427004370044700457004670047700487004970050700517005270053700547005570056700577005870059700607006170062700637006470065700667006770068700697007070071700727007370074700757007670077700787007970080700817008270083700847008570086700877008870089700907009170092700937009470095700967009770098700997010070101701027010370104701057010670107701087010970110701117011270113701147011570116701177011870119701207012170122701237012470125701267012770128701297013070131701327013370134701357013670137701387013970140701417014270143701447014570146701477014870149701507015170152701537015470155701567015770158701597016070161701627016370164701657016670167701687016970170701717017270173701747017570176701777017870179701807018170182701837018470185701867018770188701897019070191701927019370194701957019670197701987019970200702017020270203702047020570206702077020870209702107021170212702137021470215702167021770218702197022070221702227022370224702257022670227702287022970230702317023270233702347023570236702377023870239702407024170242702437024470245702467024770248702497025070251702527025370254702557025670257702587025970260702617026270263702647026570266702677026870269702707027170272702737027470275702767027770278702797028070281702827028370284702857028670287702887028970290702917029270293702947029570296702977029870299703007030170302703037030470305703067030770308703097031070311703127031370314703157031670317703187031970320703217032270323703247032570326703277032870329703307033170332703337033470335703367033770338703397034070341703427034370344703457034670347703487034970350703517035270353703547035570356703577035870359703607036170362703637036470365703667036770368703697037070371703727037370374703757037670377703787037970380703817038270383703847038570386703877038870389703907039170392703937039470395703967039770398703997040070401704027040370404704057040670407704087040970410704117041270413704147041570416704177041870419704207042170422704237042470425704267042770428704297043070431704327043370434704357043670437704387043970440704417044270443704447044570446704477044870449704507045170452704537045470455704567045770458704597046070461704627046370464704657046670467704687046970470704717047270473704747047570476704777047870479704807048170482704837048470485704867048770488704897049070491704927049370494704957049670497704987049970500705017050270503705047050570506705077050870509705107051170512705137051470515705167051770518705197052070521705227052370524705257052670527705287052970530705317053270533705347053570536705377053870539705407054170542705437054470545705467054770548705497055070551705527055370554705557055670557705587055970560705617056270563705647056570566705677056870569705707057170572705737057470575705767057770578705797058070581705827058370584705857058670587705887058970590705917059270593705947059570596705977059870599706007060170602706037060470605706067060770608706097061070611706127061370614706157061670617706187061970620706217062270623706247062570626706277062870629706307063170632706337063470635706367063770638706397064070641706427064370644706457064670647706487064970650706517065270653706547065570656706577065870659706607066170662706637066470665706667066770668706697067070671706727067370674706757067670677706787067970680706817068270683706847068570686706877068870689706907069170692706937069470695706967069770698706997070070701707027070370704707057070670707707087070970710707117071270713707147071570716707177071870719707207072170722707237072470725707267072770728707297073070731707327073370734707357073670737707387073970740707417074270743707447074570746707477074870749707507075170752707537075470755707567075770758707597076070761707627076370764707657076670767707687076970770707717077270773707747077570776707777077870779707807078170782707837078470785707867078770788707897079070791707927079370794707957079670797707987079970800708017080270803708047080570806708077080870809708107081170812708137081470815708167081770818708197082070821708227082370824708257082670827708287082970830708317083270833708347083570836708377083870839708407084170842708437084470845708467084770848708497085070851708527085370854708557085670857708587085970860708617086270863708647086570866708677086870869708707087170872708737087470875708767087770878708797088070881708827088370884708857088670887708887088970890708917089270893708947089570896708977089870899709007090170902709037090470905709067090770908709097091070911709127091370914709157091670917709187091970920709217092270923709247092570926709277092870929709307093170932709337093470935709367093770938709397094070941709427094370944709457094670947709487094970950709517095270953709547095570956709577095870959709607096170962709637096470965709667096770968709697097070971709727097370974709757097670977709787097970980709817098270983709847098570986709877098870989709907099170992709937099470995709967099770998709997100071001710027100371004710057100671007710087100971010710117101271013710147101571016710177101871019710207102171022710237102471025710267102771028710297103071031710327103371034710357103671037710387103971040710417104271043710447104571046710477104871049710507105171052710537105471055710567105771058710597106071061710627106371064710657106671067710687106971070710717107271073710747107571076710777107871079710807108171082710837108471085710867108771088710897109071091710927109371094710957109671097710987109971100711017110271103711047110571106711077110871109711107111171112711137111471115711167111771118711197112071121711227112371124711257112671127711287112971130711317113271133711347113571136711377113871139711407114171142711437114471145711467114771148711497115071151711527115371154711557115671157711587115971160711617116271163711647116571166711677116871169711707117171172711737117471175711767117771178711797118071181711827118371184711857118671187711887118971190711917119271193711947119571196711977119871199712007120171202712037120471205712067120771208712097121071211712127121371214712157121671217712187121971220712217122271223712247122571226712277122871229712307123171232712337123471235712367123771238712397124071241712427124371244712457124671247712487124971250712517125271253712547125571256712577125871259712607126171262712637126471265712667126771268712697127071271712727127371274712757127671277712787127971280712817128271283712847128571286712877128871289712907129171292712937129471295712967129771298712997130071301713027130371304713057130671307713087130971310713117131271313713147131571316713177131871319713207132171322713237132471325713267132771328713297133071331713327133371334713357133671337713387133971340713417134271343713447134571346713477134871349713507135171352713537135471355713567135771358713597136071361713627136371364713657136671367713687136971370713717137271373713747137571376713777137871379713807138171382713837138471385713867138771388713897139071391713927139371394713957139671397713987139971400714017140271403714047140571406714077140871409714107141171412714137141471415714167141771418714197142071421714227142371424714257142671427714287142971430714317143271433714347143571436714377143871439714407144171442714437144471445714467144771448714497145071451714527145371454714557145671457714587145971460714617146271463714647146571466714677146871469714707147171472714737147471475714767147771478714797148071481714827148371484714857148671487714887148971490714917149271493714947149571496714977149871499715007150171502715037150471505715067150771508715097151071511715127151371514715157151671517715187151971520715217152271523715247152571526715277152871529715307153171532715337153471535715367153771538715397154071541715427154371544715457154671547715487154971550715517155271553715547155571556715577155871559715607156171562715637156471565715667156771568715697157071571715727157371574715757157671577715787157971580715817158271583715847158571586715877158871589715907159171592715937159471595715967159771598715997160071601716027160371604716057160671607716087160971610716117161271613716147161571616716177161871619716207162171622716237162471625716267162771628716297163071631716327163371634716357163671637716387163971640716417164271643716447164571646716477164871649716507165171652716537165471655716567165771658716597166071661716627166371664716657166671667716687166971670716717167271673716747167571676716777167871679716807168171682716837168471685716867168771688716897169071691716927169371694716957169671697716987169971700717017170271703717047170571706717077170871709717107171171712717137171471715717167171771718717197172071721717227172371724717257172671727717287172971730717317173271733717347173571736717377173871739717407174171742717437174471745717467174771748717497175071751717527175371754717557175671757717587175971760717617176271763717647176571766717677176871769717707177171772717737177471775717767177771778717797178071781717827178371784717857178671787717887178971790717917179271793717947179571796717977179871799718007180171802718037180471805718067180771808718097181071811718127181371814718157181671817718187181971820718217182271823718247182571826718277182871829718307183171832718337183471835718367183771838718397184071841718427184371844718457184671847718487184971850718517185271853718547185571856718577185871859718607186171862718637186471865718667186771868718697187071871718727187371874718757187671877718787187971880718817188271883718847188571886718877188871889718907189171892718937189471895718967189771898718997190071901719027190371904719057190671907719087190971910719117191271913719147191571916719177191871919719207192171922719237192471925719267192771928719297193071931719327193371934719357193671937719387193971940719417194271943719447194571946719477194871949719507195171952719537195471955719567195771958719597196071961719627196371964719657196671967719687196971970719717197271973719747197571976719777197871979719807198171982719837198471985719867198771988719897199071991719927199371994719957199671997719987199972000720017200272003720047200572006720077200872009720107201172012720137201472015720167201772018720197202072021720227202372024720257202672027720287202972030720317203272033720347203572036720377203872039720407204172042720437204472045720467204772048720497205072051720527205372054720557205672057720587205972060720617206272063720647206572066720677206872069720707207172072720737207472075720767207772078720797208072081720827208372084720857208672087720887208972090720917209272093720947209572096720977209872099721007210172102721037210472105721067210772108721097211072111721127211372114721157211672117721187211972120721217212272123721247212572126721277212872129721307213172132721337213472135721367213772138721397214072141721427214372144721457214672147721487214972150721517215272153721547215572156721577215872159721607216172162721637216472165721667216772168721697217072171721727217372174721757217672177721787217972180721817218272183721847218572186721877218872189721907219172192721937219472195721967219772198721997220072201722027220372204722057220672207722087220972210722117221272213722147221572216722177221872219722207222172222722237222472225722267222772228722297223072231722327223372234722357223672237722387223972240722417224272243722447224572246722477224872249722507225172252722537225472255722567225772258722597226072261722627226372264722657226672267722687226972270722717227272273722747227572276722777227872279722807228172282722837228472285722867228772288722897229072291722927229372294722957229672297722987229972300723017230272303723047230572306723077230872309723107231172312723137231472315723167231772318723197232072321723227232372324723257232672327723287232972330723317233272333723347233572336723377233872339723407234172342723437234472345723467234772348723497235072351723527235372354723557235672357723587235972360723617236272363723647236572366723677236872369723707237172372723737237472375723767237772378723797238072381723827238372384723857238672387723887238972390723917239272393723947239572396723977239872399724007240172402724037240472405724067240772408724097241072411724127241372414724157241672417724187241972420724217242272423724247242572426724277242872429724307243172432724337243472435724367243772438724397244072441724427244372444724457244672447724487244972450724517245272453724547245572456724577245872459724607246172462724637246472465724667246772468724697247072471724727247372474724757247672477724787247972480724817248272483724847248572486724877248872489724907249172492724937249472495724967249772498724997250072501725027250372504725057250672507725087250972510725117251272513725147251572516725177251872519725207252172522725237252472525725267252772528725297253072531725327253372534725357253672537725387253972540725417254272543725447254572546725477254872549725507255172552725537255472555725567255772558725597256072561725627256372564725657256672567725687256972570725717257272573725747257572576725777257872579725807258172582725837258472585725867258772588725897259072591725927259372594725957259672597725987259972600726017260272603726047260572606726077260872609726107261172612726137261472615726167261772618726197262072621726227262372624726257262672627726287262972630726317263272633726347263572636726377263872639726407264172642726437264472645726467264772648726497265072651726527265372654726557265672657726587265972660726617266272663726647266572666726677266872669726707267172672726737267472675726767267772678726797268072681726827268372684726857268672687726887268972690726917269272693726947269572696726977269872699727007270172702727037270472705727067270772708727097271072711727127271372714727157271672717727187271972720727217272272723727247272572726727277272872729727307273172732727337273472735727367273772738727397274072741727427274372744727457274672747727487274972750727517275272753727547275572756727577275872759727607276172762727637276472765727667276772768727697277072771727727277372774727757277672777727787277972780727817278272783727847278572786727877278872789727907279172792727937279472795727967279772798727997280072801728027280372804728057280672807728087280972810728117281272813728147281572816728177281872819728207282172822728237282472825728267282772828728297283072831728327283372834728357283672837728387283972840728417284272843728447284572846728477284872849728507285172852728537285472855728567285772858728597286072861728627286372864728657286672867728687286972870728717287272873728747287572876728777287872879728807288172882728837288472885728867288772888728897289072891728927289372894728957289672897728987289972900729017290272903729047290572906729077290872909729107291172912729137291472915729167291772918729197292072921729227292372924729257292672927729287292972930729317293272933729347293572936729377293872939729407294172942729437294472945729467294772948729497295072951729527295372954729557295672957729587295972960729617296272963729647296572966729677296872969729707297172972729737297472975729767297772978729797298072981729827298372984729857298672987729887298972990729917299272993729947299572996729977299872999730007300173002730037300473005730067300773008730097301073011730127301373014730157301673017730187301973020730217302273023730247302573026730277302873029730307303173032730337303473035730367303773038730397304073041730427304373044730457304673047730487304973050730517305273053730547305573056730577305873059730607306173062730637306473065730667306773068730697307073071730727307373074730757307673077730787307973080730817308273083730847308573086730877308873089730907309173092730937309473095730967309773098730997310073101731027310373104731057310673107731087310973110731117311273113731147311573116731177311873119731207312173122731237312473125731267312773128731297313073131731327313373134731357313673137731387313973140731417314273143731447314573146731477314873149731507315173152731537315473155731567315773158731597316073161731627316373164731657316673167731687316973170731717317273173731747317573176731777317873179731807318173182731837318473185731867318773188731897319073191731927319373194731957319673197731987319973200732017320273203732047320573206732077320873209732107321173212732137321473215732167321773218732197322073221732227322373224732257322673227732287322973230732317323273233732347323573236732377323873239732407324173242732437324473245732467324773248732497325073251732527325373254732557325673257732587325973260732617326273263732647326573266732677326873269732707327173272732737327473275732767327773278732797328073281732827328373284732857328673287732887328973290732917329273293732947329573296732977329873299733007330173302733037330473305733067330773308733097331073311733127331373314733157331673317733187331973320733217332273323733247332573326733277332873329733307333173332733337333473335733367333773338733397334073341733427334373344733457334673347733487334973350733517335273353733547335573356733577335873359733607336173362733637336473365733667336773368733697337073371733727337373374733757337673377733787337973380733817338273383733847338573386733877338873389733907339173392733937339473395733967339773398733997340073401734027340373404734057340673407734087340973410734117341273413734147341573416734177341873419734207342173422734237342473425734267342773428734297343073431734327343373434734357343673437734387343973440734417344273443734447344573446734477344873449734507345173452734537345473455734567345773458734597346073461734627346373464734657346673467734687346973470734717347273473734747347573476734777347873479734807348173482734837348473485734867348773488734897349073491734927349373494734957349673497734987349973500735017350273503735047350573506735077350873509735107351173512735137351473515735167351773518735197352073521735227352373524735257352673527735287352973530735317353273533735347353573536735377353873539735407354173542735437354473545735467354773548735497355073551735527355373554735557355673557735587355973560735617356273563735647356573566735677356873569735707357173572735737357473575735767357773578735797358073581735827358373584735857358673587735887358973590735917359273593735947359573596735977359873599736007360173602736037360473605736067360773608736097361073611736127361373614736157361673617736187361973620736217362273623736247362573626736277362873629736307363173632736337363473635736367363773638736397364073641736427364373644736457364673647736487364973650736517365273653736547365573656736577365873659736607366173662736637366473665736667366773668736697367073671736727367373674736757367673677736787367973680736817368273683736847368573686736877368873689736907369173692736937369473695736967369773698736997370073701737027370373704737057370673707737087370973710737117371273713737147371573716737177371873719737207372173722737237372473725737267372773728737297373073731737327373373734737357373673737737387373973740737417374273743737447374573746737477374873749737507375173752737537375473755737567375773758737597376073761737627376373764737657376673767737687376973770737717377273773737747377573776737777377873779737807378173782737837378473785737867378773788737897379073791737927379373794737957379673797737987379973800738017380273803738047380573806738077380873809738107381173812738137381473815738167381773818738197382073821738227382373824738257382673827738287382973830738317383273833738347383573836738377383873839738407384173842738437384473845738467384773848738497385073851738527385373854738557385673857738587385973860738617386273863738647386573866738677386873869738707387173872738737387473875738767387773878738797388073881738827388373884738857388673887738887388973890738917389273893738947389573896738977389873899739007390173902739037390473905739067390773908739097391073911739127391373914739157391673917739187391973920739217392273923739247392573926739277392873929739307393173932739337393473935739367393773938739397394073941739427394373944739457394673947739487394973950739517395273953739547395573956739577395873959739607396173962739637396473965739667396773968739697397073971739727397373974739757397673977739787397973980739817398273983739847398573986739877398873989739907399173992739937399473995739967399773998739997400074001740027400374004740057400674007740087400974010740117401274013740147401574016740177401874019740207402174022740237402474025740267402774028740297403074031740327403374034740357403674037740387403974040740417404274043740447404574046740477404874049740507405174052740537405474055740567405774058740597406074061740627406374064740657406674067740687406974070740717407274073740747407574076740777407874079740807408174082740837408474085740867408774088740897409074091740927409374094740957409674097740987409974100741017410274103741047410574106741077410874109741107411174112741137411474115741167411774118741197412074121741227412374124741257412674127741287412974130741317413274133741347413574136741377413874139741407414174142741437414474145741467414774148741497415074151741527415374154741557415674157741587415974160741617416274163741647416574166741677416874169741707417174172741737417474175741767417774178741797418074181741827418374184741857418674187741887418974190741917419274193741947419574196741977419874199742007420174202742037420474205742067420774208742097421074211742127421374214742157421674217742187421974220742217422274223742247422574226742277422874229742307423174232742337423474235742367423774238742397424074241742427424374244742457424674247742487424974250742517425274253742547425574256742577425874259742607426174262742637426474265742667426774268742697427074271742727427374274742757427674277742787427974280742817428274283742847428574286742877428874289742907429174292742937429474295742967429774298742997430074301743027430374304743057430674307743087430974310743117431274313743147431574316743177431874319743207432174322743237432474325743267432774328743297433074331743327433374334743357433674337743387433974340743417434274343743447434574346743477434874349743507435174352743537435474355743567435774358743597436074361743627436374364743657436674367743687436974370743717437274373743747437574376743777437874379743807438174382743837438474385743867438774388743897439074391743927439374394743957439674397743987439974400744017440274403744047440574406744077440874409744107441174412744137441474415744167441774418744197442074421744227442374424744257442674427744287442974430744317443274433744347443574436744377443874439744407444174442744437444474445744467444774448744497445074451744527445374454744557445674457744587445974460744617446274463744647446574466744677446874469744707447174472744737447474475744767447774478744797448074481744827448374484744857448674487744887448974490744917449274493744947449574496744977449874499745007450174502745037450474505745067450774508745097451074511745127451374514745157451674517745187451974520745217452274523745247452574526745277452874529745307453174532745337453474535745367453774538745397454074541745427454374544745457454674547745487454974550745517455274553745547455574556745577455874559745607456174562745637456474565745667456774568745697457074571745727457374574745757457674577745787457974580745817458274583745847458574586745877458874589745907459174592745937459474595745967459774598745997460074601746027460374604746057460674607746087460974610746117461274613746147461574616746177461874619746207462174622746237462474625746267462774628746297463074631746327463374634746357463674637746387463974640746417464274643746447464574646746477464874649746507465174652746537465474655746567465774658746597466074661746627466374664746657466674667746687466974670746717467274673746747467574676746777467874679746807468174682746837468474685746867468774688746897469074691746927469374694746957469674697746987469974700747017470274703747047470574706747077470874709747107471174712747137471474715747167471774718747197472074721747227472374724747257472674727747287472974730747317473274733747347473574736747377473874739747407474174742747437474474745747467474774748747497475074751747527475374754747557475674757747587475974760747617476274763747647476574766747677476874769747707477174772747737477474775747767477774778747797478074781747827478374784747857478674787747887478974790747917479274793747947479574796747977479874799748007480174802748037480474805748067480774808748097481074811748127481374814748157481674817748187481974820748217482274823748247482574826748277482874829748307483174832748337483474835748367483774838748397484074841748427484374844748457484674847748487484974850748517485274853748547485574856748577485874859748607486174862748637486474865748667486774868748697487074871748727487374874748757487674877748787487974880748817488274883748847488574886748877488874889748907489174892748937489474895748967489774898748997490074901749027490374904749057490674907749087490974910749117491274913749147491574916749177491874919749207492174922749237492474925749267492774928749297493074931749327493374934749357493674937749387493974940749417494274943749447494574946749477494874949749507495174952749537495474955749567495774958749597496074961749627496374964749657496674967749687496974970749717497274973749747497574976749777497874979749807498174982749837498474985749867498774988749897499074991749927499374994749957499674997749987499975000750017500275003750047500575006750077500875009750107501175012750137501475015750167501775018750197502075021750227502375024750257502675027750287502975030750317503275033750347503575036750377503875039750407504175042750437504475045750467504775048750497505075051750527505375054750557505675057750587505975060750617506275063750647506575066750677506875069750707507175072750737507475075750767507775078750797508075081750827508375084750857508675087750887508975090750917509275093750947509575096750977509875099751007510175102751037510475105751067510775108751097511075111751127511375114751157511675117751187511975120751217512275123751247512575126751277512875129751307513175132751337513475135751367513775138751397514075141751427514375144751457514675147751487514975150751517515275153751547515575156751577515875159751607516175162751637516475165751667516775168751697517075171751727517375174751757517675177751787517975180751817518275183751847518575186751877518875189751907519175192751937519475195751967519775198751997520075201752027520375204752057520675207752087520975210752117521275213752147521575216752177521875219752207522175222752237522475225752267522775228752297523075231752327523375234752357523675237752387523975240752417524275243752447524575246752477524875249752507525175252752537525475255752567525775258752597526075261752627526375264752657526675267752687526975270752717527275273752747527575276752777527875279752807528175282752837528475285752867528775288752897529075291752927529375294752957529675297752987529975300753017530275303753047530575306753077530875309753107531175312753137531475315753167531775318753197532075321753227532375324753257532675327753287532975330753317533275333753347533575336753377533875339753407534175342753437534475345753467534775348753497535075351753527535375354753557535675357753587535975360753617536275363753647536575366753677536875369753707537175372753737537475375753767537775378753797538075381753827538375384753857538675387753887538975390753917539275393753947539575396753977539875399754007540175402754037540475405754067540775408754097541075411754127541375414754157541675417754187541975420754217542275423754247542575426754277542875429754307543175432754337543475435754367543775438754397544075441754427544375444754457544675447754487544975450754517545275453754547545575456754577545875459754607546175462754637546475465754667546775468754697547075471754727547375474754757547675477754787547975480754817548275483754847548575486754877548875489754907549175492754937549475495754967549775498754997550075501755027550375504755057550675507755087550975510755117551275513755147551575516755177551875519755207552175522755237552475525755267552775528755297553075531755327553375534755357553675537755387553975540755417554275543755447554575546755477554875549755507555175552755537555475555755567555775558755597556075561755627556375564755657556675567755687556975570755717557275573755747557575576755777557875579755807558175582755837558475585755867558775588755897559075591755927559375594755957559675597755987559975600756017560275603756047560575606756077560875609756107561175612756137561475615756167561775618756197562075621756227562375624756257562675627756287562975630756317563275633756347563575636756377563875639756407564175642756437564475645756467564775648756497565075651756527565375654756557565675657756587565975660756617566275663756647566575666756677566875669756707567175672756737567475675756767567775678756797568075681756827568375684756857568675687756887568975690756917569275693756947569575696756977569875699757007570175702757037570475705757067570775708757097571075711757127571375714757157571675717757187571975720757217572275723757247572575726757277572875729757307573175732757337573475735757367573775738757397574075741757427574375744757457574675747757487574975750757517575275753757547575575756757577575875759757607576175762757637576475765757667576775768757697577075771757727577375774757757577675777757787577975780757817578275783757847578575786757877578875789757907579175792757937579475795757967579775798757997580075801758027580375804758057580675807758087580975810758117581275813758147581575816758177581875819758207582175822758237582475825758267582775828758297583075831758327583375834758357583675837758387583975840758417584275843758447584575846758477584875849758507585175852758537585475855758567585775858758597586075861758627586375864758657586675867758687586975870758717587275873758747587575876758777587875879758807588175882758837588475885758867588775888758897589075891758927589375894758957589675897758987589975900759017590275903759047590575906759077590875909759107591175912759137591475915759167591775918759197592075921759227592375924759257592675927759287592975930759317593275933759347593575936759377593875939759407594175942759437594475945759467594775948759497595075951759527595375954759557595675957759587595975960759617596275963759647596575966759677596875969759707597175972759737597475975759767597775978759797598075981759827598375984759857598675987759887598975990759917599275993759947599575996759977599875999760007600176002760037600476005760067600776008760097601076011760127601376014760157601676017760187601976020760217602276023760247602576026760277602876029760307603176032760337603476035760367603776038760397604076041760427604376044760457604676047760487604976050760517605276053760547605576056760577605876059760607606176062760637606476065760667606776068760697607076071760727607376074760757607676077760787607976080760817608276083760847608576086760877608876089760907609176092760937609476095760967609776098760997610076101761027610376104761057610676107761087610976110761117611276113761147611576116761177611876119761207612176122761237612476125761267612776128761297613076131761327613376134761357613676137761387613976140761417614276143761447614576146761477614876149761507615176152761537615476155761567615776158761597616076161761627616376164761657616676167761687616976170761717617276173761747617576176761777617876179761807618176182761837618476185761867618776188761897619076191761927619376194761957619676197761987619976200762017620276203762047620576206762077620876209762107621176212762137621476215762167621776218762197622076221762227622376224762257622676227762287622976230762317623276233762347623576236762377623876239762407624176242762437624476245762467624776248762497625076251762527625376254762557625676257762587625976260762617626276263762647626576266762677626876269762707627176272762737627476275762767627776278762797628076281762827628376284762857628676287762887628976290762917629276293762947629576296762977629876299763007630176302763037630476305763067630776308763097631076311763127631376314763157631676317763187631976320763217632276323763247632576326763277632876329763307633176332763337633476335763367633776338763397634076341763427634376344763457634676347763487634976350763517635276353763547635576356763577635876359763607636176362763637636476365763667636776368763697637076371763727637376374763757637676377763787637976380763817638276383763847638576386763877638876389763907639176392763937639476395763967639776398763997640076401764027640376404764057640676407764087640976410764117641276413764147641576416764177641876419764207642176422764237642476425764267642776428764297643076431764327643376434764357643676437764387643976440764417644276443764447644576446764477644876449764507645176452764537645476455764567645776458764597646076461764627646376464764657646676467764687646976470764717647276473764747647576476764777647876479764807648176482764837648476485764867648776488764897649076491764927649376494764957649676497764987649976500765017650276503765047650576506765077650876509765107651176512765137651476515765167651776518765197652076521765227652376524765257652676527765287652976530765317653276533765347653576536765377653876539765407654176542765437654476545765467654776548765497655076551765527655376554765557655676557765587655976560765617656276563765647656576566765677656876569765707657176572765737657476575765767657776578765797658076581765827658376584765857658676587765887658976590765917659276593765947659576596765977659876599766007660176602766037660476605766067660776608766097661076611766127661376614766157661676617766187661976620766217662276623766247662576626766277662876629766307663176632766337663476635766367663776638766397664076641766427664376644766457664676647766487664976650766517665276653766547665576656766577665876659766607666176662766637666476665766667666776668766697667076671766727667376674766757667676677766787667976680766817668276683766847668576686766877668876689766907669176692766937669476695766967669776698766997670076701767027670376704767057670676707767087670976710767117671276713767147671576716767177671876719767207672176722767237672476725767267672776728767297673076731767327673376734767357673676737767387673976740767417674276743767447674576746767477674876749767507675176752767537675476755767567675776758767597676076761767627676376764767657676676767767687676976770767717677276773767747677576776767777677876779767807678176782767837678476785767867678776788767897679076791767927679376794767957679676797767987679976800768017680276803768047680576806768077680876809768107681176812768137681476815768167681776818768197682076821768227682376824768257682676827768287682976830768317683276833768347683576836768377683876839768407684176842768437684476845768467684776848768497685076851768527685376854768557685676857768587685976860768617686276863768647686576866768677686876869768707687176872768737687476875768767687776878768797688076881768827688376884768857688676887768887688976890768917689276893768947689576896768977689876899769007690176902769037690476905769067690776908769097691076911769127691376914769157691676917769187691976920769217692276923769247692576926769277692876929769307693176932769337693476935769367693776938769397694076941769427694376944769457694676947769487694976950769517695276953769547695576956769577695876959769607696176962769637696476965769667696776968769697697076971769727697376974769757697676977769787697976980769817698276983769847698576986769877698876989769907699176992769937699476995769967699776998769997700077001770027700377004770057700677007770087700977010770117701277013770147701577016770177701877019770207702177022770237702477025770267702777028770297703077031770327703377034770357703677037770387703977040770417704277043770447704577046770477704877049770507705177052770537705477055770567705777058770597706077061770627706377064770657706677067770687706977070770717707277073770747707577076770777707877079770807708177082770837708477085770867708777088770897709077091770927709377094770957709677097770987709977100771017710277103771047710577106771077710877109771107711177112771137711477115771167711777118771197712077121771227712377124771257712677127771287712977130771317713277133771347713577136771377713877139771407714177142771437714477145771467714777148771497715077151771527715377154771557715677157771587715977160771617716277163771647716577166771677716877169771707717177172771737717477175771767717777178771797718077181771827718377184771857718677187771887718977190771917719277193771947719577196771977719877199772007720177202772037720477205772067720777208772097721077211772127721377214772157721677217772187721977220772217722277223772247722577226772277722877229772307723177232772337723477235772367723777238772397724077241772427724377244772457724677247772487724977250772517725277253772547725577256772577725877259772607726177262772637726477265772667726777268772697727077271772727727377274772757727677277772787727977280772817728277283772847728577286772877728877289772907729177292772937729477295772967729777298772997730077301773027730377304773057730677307773087730977310773117731277313773147731577316773177731877319773207732177322773237732477325773267732777328773297733077331773327733377334773357733677337773387733977340773417734277343773447734577346773477734877349773507735177352773537735477355773567735777358773597736077361773627736377364773657736677367773687736977370773717737277373773747737577376773777737877379773807738177382773837738477385773867738777388773897739077391773927739377394773957739677397773987739977400774017740277403774047740577406774077740877409774107741177412774137741477415774167741777418774197742077421774227742377424774257742677427774287742977430774317743277433774347743577436774377743877439774407744177442774437744477445774467744777448774497745077451774527745377454774557745677457774587745977460774617746277463774647746577466774677746877469774707747177472774737747477475774767747777478774797748077481774827748377484774857748677487774887748977490774917749277493774947749577496774977749877499775007750177502775037750477505775067750777508775097751077511775127751377514775157751677517775187751977520775217752277523775247752577526775277752877529775307753177532775337753477535775367753777538775397754077541775427754377544775457754677547775487754977550775517755277553775547755577556775577755877559775607756177562775637756477565775667756777568775697757077571775727757377574775757757677577775787757977580775817758277583775847758577586775877758877589775907759177592775937759477595775967759777598775997760077601776027760377604776057760677607776087760977610776117761277613776147761577616776177761877619776207762177622776237762477625776267762777628776297763077631776327763377634776357763677637776387763977640776417764277643776447764577646776477764877649776507765177652776537765477655776567765777658776597766077661776627766377664776657766677667776687766977670776717767277673776747767577676776777767877679776807768177682776837768477685776867768777688776897769077691776927769377694776957769677697776987769977700777017770277703777047770577706777077770877709777107771177712777137771477715777167771777718777197772077721777227772377724777257772677727777287772977730777317773277733777347773577736777377773877739777407774177742777437774477745777467774777748777497775077751777527775377754777557775677757777587775977760777617776277763777647776577766777677776877769777707777177772777737777477775777767777777778777797778077781777827778377784777857778677787777887778977790777917779277793777947779577796777977779877799778007780177802778037780477805778067780777808778097781077811778127781377814778157781677817778187781977820778217782277823778247782577826778277782877829778307783177832778337783477835778367783777838778397784077841778427784377844778457784677847778487784977850778517785277853778547785577856778577785877859778607786177862778637786477865778667786777868778697787077871778727787377874778757787677877778787787977880778817788277883778847788577886778877788877889778907789177892778937789477895778967789777898778997790077901779027790377904779057790677907779087790977910779117791277913779147791577916779177791877919779207792177922779237792477925779267792777928779297793077931779327793377934779357793677937779387793977940779417794277943779447794577946779477794877949779507795177952779537795477955779567795777958779597796077961779627796377964779657796677967779687796977970779717797277973779747797577976779777797877979779807798177982779837798477985779867798777988779897799077991779927799377994779957799677997779987799978000780017800278003780047800578006780077800878009780107801178012780137801478015780167801778018780197802078021780227802378024780257802678027780287802978030780317803278033780347803578036780377803878039780407804178042780437804478045780467804778048780497805078051780527805378054780557805678057780587805978060780617806278063780647806578066780677806878069780707807178072780737807478075780767807778078780797808078081780827808378084780857808678087780887808978090780917809278093780947809578096780977809878099781007810178102781037810478105781067810778108781097811078111781127811378114781157811678117781187811978120781217812278123781247812578126781277812878129781307813178132781337813478135781367813778138781397814078141781427814378144781457814678147781487814978150781517815278153781547815578156781577815878159781607816178162781637816478165781667816778168781697817078171781727817378174781757817678177781787817978180781817818278183781847818578186781877818878189781907819178192781937819478195781967819778198781997820078201782027820378204782057820678207782087820978210782117821278213782147821578216782177821878219782207822178222782237822478225782267822778228782297823078231782327823378234782357823678237782387823978240782417824278243782447824578246782477824878249782507825178252782537825478255782567825778258782597826078261782627826378264782657826678267782687826978270782717827278273782747827578276782777827878279782807828178282782837828478285782867828778288782897829078291782927829378294782957829678297782987829978300783017830278303783047830578306783077830878309783107831178312783137831478315783167831778318783197832078321783227832378324783257832678327783287832978330783317833278333783347833578336783377833878339783407834178342783437834478345783467834778348783497835078351783527835378354783557835678357783587835978360783617836278363783647836578366783677836878369783707837178372783737837478375783767837778378783797838078381783827838378384783857838678387783887838978390783917839278393783947839578396783977839878399784007840178402784037840478405784067840778408784097841078411784127841378414784157841678417784187841978420784217842278423784247842578426784277842878429784307843178432784337843478435784367843778438784397844078441784427844378444784457844678447784487844978450784517845278453784547845578456784577845878459784607846178462784637846478465784667846778468784697847078471784727847378474784757847678477784787847978480784817848278483784847848578486784877848878489784907849178492784937849478495784967849778498784997850078501785027850378504785057850678507785087850978510785117851278513785147851578516785177851878519785207852178522785237852478525785267852778528785297853078531785327853378534785357853678537785387853978540785417854278543785447854578546785477854878549785507855178552785537855478555785567855778558785597856078561785627856378564785657856678567785687856978570785717857278573785747857578576785777857878579785807858178582785837858478585785867858778588785897859078591785927859378594785957859678597785987859978600786017860278603786047860578606786077860878609786107861178612786137861478615786167861778618786197862078621786227862378624786257862678627786287862978630786317863278633786347863578636786377863878639786407864178642786437864478645786467864778648786497865078651786527865378654786557865678657786587865978660786617866278663786647866578666786677866878669786707867178672786737867478675786767867778678786797868078681786827868378684786857868678687786887868978690786917869278693786947869578696786977869878699787007870178702787037870478705787067870778708787097871078711787127871378714787157871678717787187871978720787217872278723787247872578726787277872878729787307873178732787337873478735787367873778738787397874078741787427874378744787457874678747787487874978750787517875278753787547875578756787577875878759787607876178762787637876478765787667876778768787697877078771787727877378774787757877678777787787877978780787817878278783787847878578786787877878878789787907879178792787937879478795787967879778798787997880078801788027880378804788057880678807788087880978810788117881278813788147881578816788177881878819788207882178822788237882478825788267882778828788297883078831788327883378834788357883678837788387883978840788417884278843788447884578846788477884878849788507885178852788537885478855788567885778858788597886078861788627886378864788657886678867788687886978870788717887278873788747887578876788777887878879788807888178882788837888478885788867888778888788897889078891788927889378894788957889678897788987889978900789017890278903789047890578906789077890878909789107891178912789137891478915789167891778918789197892078921789227892378924789257892678927789287892978930789317893278933789347893578936789377893878939789407894178942789437894478945789467894778948789497895078951789527895378954789557895678957789587895978960789617896278963789647896578966789677896878969789707897178972789737897478975789767897778978789797898078981789827898378984789857898678987789887898978990789917899278993789947899578996789977899878999790007900179002790037900479005790067900779008790097901079011790127901379014790157901679017790187901979020790217902279023790247902579026790277902879029790307903179032790337903479035790367903779038790397904079041790427904379044790457904679047790487904979050790517905279053790547905579056790577905879059790607906179062790637906479065790667906779068790697907079071790727907379074790757907679077790787907979080790817908279083790847908579086790877908879089790907909179092790937909479095790967909779098790997910079101791027910379104791057910679107791087910979110791117911279113791147911579116791177911879119791207912179122791237912479125791267912779128791297913079131791327913379134791357913679137791387913979140791417914279143791447914579146791477914879149791507915179152791537915479155791567915779158791597916079161791627916379164791657916679167791687916979170791717917279173791747917579176791777917879179791807918179182791837918479185791867918779188791897919079191791927919379194791957919679197791987919979200792017920279203792047920579206792077920879209792107921179212792137921479215792167921779218792197922079221792227922379224792257922679227792287922979230792317923279233792347923579236792377923879239792407924179242792437924479245792467924779248792497925079251792527925379254792557925679257792587925979260792617926279263792647926579266792677926879269792707927179272792737927479275792767927779278792797928079281792827928379284792857928679287792887928979290792917929279293792947929579296792977929879299793007930179302793037930479305793067930779308793097931079311793127931379314793157931679317793187931979320793217932279323793247932579326793277932879329793307933179332793337933479335793367933779338793397934079341793427934379344793457934679347793487934979350793517935279353793547935579356793577935879359793607936179362793637936479365793667936779368793697937079371793727937379374793757937679377793787937979380793817938279383793847938579386793877938879389793907939179392793937939479395793967939779398793997940079401794027940379404794057940679407794087940979410794117941279413794147941579416794177941879419794207942179422794237942479425794267942779428794297943079431794327943379434794357943679437794387943979440794417944279443794447944579446794477944879449794507945179452794537945479455794567945779458794597946079461794627946379464794657946679467794687946979470794717947279473794747947579476794777947879479794807948179482794837948479485794867948779488794897949079491794927949379494794957949679497794987949979500795017950279503795047950579506795077950879509795107951179512795137951479515795167951779518795197952079521795227952379524795257952679527795287952979530795317953279533795347953579536795377953879539795407954179542795437954479545795467954779548795497955079551795527955379554795557955679557795587955979560795617956279563795647956579566795677956879569795707957179572795737957479575795767957779578795797958079581795827958379584795857958679587795887958979590795917959279593795947959579596795977959879599796007960179602796037960479605796067960779608796097961079611796127961379614796157961679617796187961979620796217962279623796247962579626796277962879629796307963179632796337963479635796367963779638796397964079641796427964379644796457964679647796487964979650796517965279653796547965579656796577965879659796607966179662796637966479665796667966779668796697967079671796727967379674796757967679677796787967979680796817968279683796847968579686796877968879689796907969179692796937969479695796967969779698796997970079701797027970379704797057970679707797087970979710797117971279713797147971579716797177971879719797207972179722797237972479725797267972779728797297973079731797327973379734797357973679737797387973979740797417974279743797447974579746797477974879749797507975179752797537975479755797567975779758797597976079761797627976379764797657976679767797687976979770797717977279773797747977579776797777977879779797807978179782797837978479785797867978779788797897979079791797927979379794797957979679797797987979979800798017980279803798047980579806798077980879809798107981179812798137981479815798167981779818798197982079821798227982379824798257982679827798287982979830798317983279833798347983579836798377983879839798407984179842798437984479845798467984779848798497985079851798527985379854798557985679857798587985979860798617986279863798647986579866798677986879869798707987179872798737987479875798767987779878798797988079881798827988379884798857988679887798887988979890798917989279893798947989579896798977989879899799007990179902799037990479905799067990779908799097991079911799127991379914799157991679917799187991979920799217992279923799247992579926799277992879929799307993179932799337993479935799367993779938799397994079941799427994379944799457994679947799487994979950799517995279953799547995579956799577995879959799607996179962799637996479965799667996779968799697997079971799727997379974799757997679977799787997979980799817998279983799847998579986799877998879989799907999179992799937999479995799967999779998799998000080001800028000380004800058000680007800088000980010800118001280013800148001580016800178001880019800208002180022800238002480025800268002780028800298003080031800328003380034800358003680037800388003980040800418004280043800448004580046800478004880049800508005180052800538005480055800568005780058800598006080061800628006380064800658006680067800688006980070800718007280073800748007580076800778007880079800808008180082800838008480085800868008780088800898009080091800928009380094800958009680097800988009980100801018010280103801048010580106801078010880109801108011180112801138011480115801168011780118801198012080121801228012380124801258012680127801288012980130801318013280133801348013580136801378013880139801408014180142801438014480145801468014780148801498015080151801528015380154801558015680157801588015980160801618016280163801648016580166801678016880169801708017180172801738017480175801768017780178801798018080181801828018380184801858018680187801888018980190801918019280193801948019580196801978019880199802008020180202802038020480205802068020780208802098021080211802128021380214802158021680217802188021980220802218022280223802248022580226802278022880229802308023180232802338023480235802368023780238802398024080241802428024380244802458024680247802488024980250802518025280253802548025580256802578025880259802608026180262802638026480265802668026780268802698027080271802728027380274802758027680277802788027980280802818028280283802848028580286802878028880289802908029180292802938029480295802968029780298802998030080301803028030380304803058030680307803088030980310803118031280313803148031580316803178031880319803208032180322803238032480325803268032780328803298033080331803328033380334803358033680337803388033980340803418034280343803448034580346803478034880349803508035180352803538035480355803568035780358803598036080361803628036380364803658036680367803688036980370803718037280373803748037580376803778037880379803808038180382803838038480385803868038780388803898039080391803928039380394803958039680397803988039980400804018040280403804048040580406804078040880409804108041180412804138041480415804168041780418804198042080421804228042380424804258042680427804288042980430804318043280433804348043580436804378043880439804408044180442804438044480445804468044780448804498045080451804528045380454804558045680457804588045980460804618046280463804648046580466804678046880469804708047180472804738047480475804768047780478804798048080481804828048380484804858048680487804888048980490804918049280493804948049580496804978049880499805008050180502805038050480505805068050780508805098051080511805128051380514805158051680517805188051980520805218052280523805248052580526805278052880529805308053180532805338053480535805368053780538805398054080541805428054380544805458054680547805488054980550805518055280553805548055580556805578055880559805608056180562805638056480565805668056780568805698057080571805728057380574805758057680577805788057980580805818058280583805848058580586805878058880589805908059180592805938059480595805968059780598805998060080601806028060380604806058060680607806088060980610806118061280613806148061580616806178061880619806208062180622806238062480625806268062780628806298063080631806328063380634806358063680637806388063980640806418064280643806448064580646806478064880649806508065180652806538065480655806568065780658806598066080661806628066380664806658066680667806688066980670806718067280673806748067580676806778067880679806808068180682806838068480685806868068780688806898069080691806928069380694806958069680697806988069980700807018070280703807048070580706807078070880709807108071180712807138071480715807168071780718807198072080721807228072380724807258072680727807288072980730807318073280733807348073580736807378073880739807408074180742807438074480745807468074780748807498075080751807528075380754807558075680757807588075980760807618076280763807648076580766807678076880769807708077180772807738077480775807768077780778807798078080781807828078380784807858078680787807888078980790807918079280793807948079580796807978079880799808008080180802808038080480805808068080780808808098081080811808128081380814808158081680817808188081980820808218082280823808248082580826808278082880829808308083180832808338083480835808368083780838808398084080841808428084380844808458084680847808488084980850808518085280853808548085580856808578085880859808608086180862808638086480865808668086780868808698087080871808728087380874808758087680877808788087980880808818088280883808848088580886808878088880889808908089180892808938089480895808968089780898808998090080901809028090380904809058090680907809088090980910809118091280913809148091580916809178091880919809208092180922809238092480925809268092780928809298093080931809328093380934809358093680937809388093980940809418094280943809448094580946809478094880949809508095180952809538095480955809568095780958809598096080961809628096380964809658096680967809688096980970809718097280973809748097580976809778097880979809808098180982809838098480985809868098780988809898099080991809928099380994809958099680997809988099981000810018100281003810048100581006810078100881009810108101181012810138101481015810168101781018810198102081021810228102381024810258102681027810288102981030810318103281033810348103581036810378103881039810408104181042810438104481045810468104781048810498105081051810528105381054810558105681057810588105981060810618106281063810648106581066810678106881069810708107181072810738107481075810768107781078810798108081081810828108381084810858108681087810888108981090810918109281093810948109581096810978109881099811008110181102811038110481105811068110781108811098111081111811128111381114811158111681117811188111981120811218112281123811248112581126811278112881129811308113181132811338113481135811368113781138811398114081141811428114381144811458114681147811488114981150811518115281153811548115581156811578115881159811608116181162811638116481165811668116781168811698117081171811728117381174811758117681177811788117981180811818118281183811848118581186811878118881189811908119181192811938119481195811968119781198811998120081201812028120381204812058120681207812088120981210812118121281213812148121581216812178121881219812208122181222812238122481225812268122781228812298123081231812328123381234812358123681237812388123981240812418124281243812448124581246812478124881249812508125181252812538125481255812568125781258812598126081261812628126381264812658126681267812688126981270812718127281273812748127581276812778127881279812808128181282812838128481285812868128781288812898129081291812928129381294812958129681297812988129981300813018130281303813048130581306813078130881309813108131181312813138131481315813168131781318813198132081321813228132381324813258132681327813288132981330813318133281333813348133581336813378133881339813408134181342813438134481345813468134781348813498135081351813528135381354813558135681357813588135981360813618136281363813648136581366813678136881369813708137181372813738137481375813768137781378813798138081381813828138381384813858138681387813888138981390813918139281393813948139581396813978139881399814008140181402814038140481405814068140781408814098141081411814128141381414814158141681417814188141981420814218142281423814248142581426814278142881429814308143181432814338143481435814368143781438814398144081441814428144381444814458144681447814488144981450814518145281453814548145581456814578145881459814608146181462814638146481465814668146781468814698147081471814728147381474814758147681477814788147981480814818148281483814848148581486814878148881489814908149181492814938149481495814968149781498814998150081501815028150381504815058150681507815088150981510815118151281513815148151581516815178151881519815208152181522815238152481525815268152781528815298153081531815328153381534815358153681537815388153981540815418154281543815448154581546815478154881549815508155181552815538155481555815568155781558815598156081561815628156381564815658156681567815688156981570815718157281573815748157581576815778157881579815808158181582815838158481585815868158781588815898159081591815928159381594815958159681597815988159981600816018160281603816048160581606816078160881609816108161181612816138161481615816168161781618816198162081621816228162381624816258162681627816288162981630816318163281633816348163581636816378163881639816408164181642816438164481645816468164781648816498165081651816528165381654816558165681657816588165981660816618166281663816648166581666816678166881669816708167181672816738167481675816768167781678816798168081681816828168381684816858168681687816888168981690816918169281693816948169581696816978169881699817008170181702817038170481705817068170781708817098171081711817128171381714817158171681717817188171981720817218172281723817248172581726817278172881729817308173181732817338173481735817368173781738817398174081741817428174381744817458174681747817488174981750817518175281753817548175581756817578175881759817608176181762817638176481765817668176781768817698177081771817728177381774817758177681777817788177981780817818178281783817848178581786817878178881789817908179181792817938179481795817968179781798817998180081801818028180381804818058180681807818088180981810818118181281813818148181581816818178181881819818208182181822818238182481825818268182781828818298183081831818328183381834818358183681837818388183981840818418184281843818448184581846818478184881849818508185181852818538185481855818568185781858818598186081861818628186381864818658186681867818688186981870818718187281873818748187581876818778187881879818808188181882818838188481885818868188781888818898189081891818928189381894818958189681897818988189981900819018190281903819048190581906819078190881909819108191181912819138191481915819168191781918819198192081921819228192381924819258192681927819288192981930819318193281933819348193581936819378193881939819408194181942819438194481945819468194781948819498195081951819528195381954819558195681957819588195981960819618196281963819648196581966819678196881969819708197181972819738197481975819768197781978819798198081981819828198381984819858198681987819888198981990819918199281993819948199581996819978199881999820008200182002820038200482005820068200782008820098201082011820128201382014820158201682017820188201982020820218202282023820248202582026820278202882029820308203182032820338203482035820368203782038820398204082041820428204382044820458204682047820488204982050820518205282053820548205582056820578205882059820608206182062820638206482065820668206782068820698207082071820728207382074820758207682077820788207982080820818208282083820848208582086820878208882089820908209182092820938209482095820968209782098820998210082101821028210382104821058210682107821088210982110821118211282113821148211582116821178211882119821208212182122821238212482125821268212782128821298213082131821328213382134821358213682137821388213982140821418214282143821448214582146821478214882149821508215182152821538215482155821568215782158821598216082161821628216382164821658216682167821688216982170821718217282173821748217582176821778217882179821808218182182821838218482185821868218782188821898219082191821928219382194821958219682197821988219982200822018220282203822048220582206822078220882209822108221182212822138221482215822168221782218822198222082221822228222382224822258222682227822288222982230822318223282233822348223582236822378223882239822408224182242822438224482245822468224782248822498225082251822528225382254822558225682257822588225982260822618226282263822648226582266822678226882269822708227182272822738227482275822768227782278822798228082281822828228382284822858228682287822888228982290822918229282293822948229582296822978229882299823008230182302823038230482305823068230782308823098231082311823128231382314823158231682317823188231982320823218232282323823248232582326823278232882329823308233182332823338233482335823368233782338823398234082341823428234382344823458234682347823488234982350823518235282353823548235582356823578235882359823608236182362823638236482365823668236782368823698237082371823728237382374823758237682377823788237982380823818238282383823848238582386823878238882389823908239182392823938239482395823968239782398823998240082401824028240382404824058240682407824088240982410824118241282413824148241582416824178241882419824208242182422824238242482425824268242782428824298243082431824328243382434824358243682437824388243982440824418244282443824448244582446824478244882449824508245182452824538245482455824568245782458824598246082461824628246382464824658246682467824688246982470824718247282473824748247582476824778247882479824808248182482824838248482485824868248782488824898249082491824928249382494824958249682497824988249982500825018250282503825048250582506825078250882509825108251182512825138251482515825168251782518825198252082521825228252382524825258252682527825288252982530825318253282533825348253582536825378253882539825408254182542825438254482545825468254782548825498255082551825528255382554825558255682557825588255982560825618256282563825648256582566825678256882569825708257182572825738257482575825768257782578825798258082581825828258382584825858258682587825888258982590825918259282593825948259582596825978259882599826008260182602826038260482605826068260782608826098261082611826128261382614826158261682617826188261982620826218262282623826248262582626826278262882629826308263182632826338263482635826368263782638826398264082641826428264382644826458264682647826488264982650826518265282653826548265582656826578265882659826608266182662826638266482665826668266782668826698267082671826728267382674826758267682677826788267982680826818268282683826848268582686826878268882689826908269182692826938269482695826968269782698826998270082701827028270382704827058270682707827088270982710827118271282713827148271582716827178271882719827208272182722827238272482725827268272782728827298273082731827328273382734827358273682737827388273982740827418274282743827448274582746827478274882749827508275182752827538275482755827568275782758827598276082761827628276382764827658276682767827688276982770827718277282773827748277582776827778277882779827808278182782827838278482785827868278782788827898279082791827928279382794827958279682797827988279982800828018280282803828048280582806828078280882809828108281182812828138281482815828168281782818828198282082821828228282382824828258282682827828288282982830828318283282833828348283582836828378283882839828408284182842828438284482845828468284782848828498285082851828528285382854828558285682857828588285982860828618286282863828648286582866828678286882869828708287182872828738287482875828768287782878828798288082881828828288382884828858288682887828888288982890828918289282893828948289582896828978289882899829008290182902829038290482905829068290782908829098291082911829128291382914829158291682917829188291982920829218292282923829248292582926829278292882929829308293182932829338293482935829368293782938829398294082941829428294382944829458294682947829488294982950829518295282953829548295582956829578295882959829608296182962829638296482965829668296782968829698297082971829728297382974829758297682977829788297982980829818298282983829848298582986829878298882989829908299182992829938299482995829968299782998829998300083001830028300383004830058300683007830088300983010830118301283013830148301583016830178301883019830208302183022830238302483025830268302783028830298303083031830328303383034830358303683037830388303983040830418304283043830448304583046830478304883049830508305183052830538305483055830568305783058830598306083061830628306383064830658306683067830688306983070830718307283073830748307583076830778307883079830808308183082830838308483085830868308783088830898309083091830928309383094830958309683097830988309983100831018310283103831048310583106831078310883109831108311183112831138311483115831168311783118831198312083121831228312383124831258312683127831288312983130831318313283133831348313583136831378313883139831408314183142831438314483145831468314783148831498315083151831528315383154831558315683157831588315983160831618316283163831648316583166831678316883169831708317183172831738317483175831768317783178831798318083181831828318383184831858318683187831888318983190831918319283193831948319583196831978319883199832008320183202832038320483205832068320783208832098321083211832128321383214832158321683217832188321983220832218322283223832248322583226832278322883229832308323183232832338323483235832368323783238832398324083241832428324383244832458324683247832488324983250832518325283253832548325583256832578325883259832608326183262832638326483265832668326783268832698327083271832728327383274832758327683277832788327983280832818328283283832848328583286832878328883289832908329183292832938329483295832968329783298832998330083301833028330383304833058330683307833088330983310833118331283313833148331583316833178331883319833208332183322833238332483325833268332783328833298333083331833328333383334833358333683337833388333983340833418334283343833448334583346833478334883349833508335183352833538335483355833568335783358833598336083361833628336383364833658336683367833688336983370833718337283373833748337583376833778337883379833808338183382833838338483385833868338783388833898339083391833928339383394833958339683397833988339983400834018340283403834048340583406834078340883409834108341183412834138341483415834168341783418834198342083421834228342383424834258342683427834288342983430834318343283433834348343583436834378343883439834408344183442834438344483445834468344783448834498345083451834528345383454834558345683457834588345983460834618346283463834648346583466834678346883469834708347183472834738347483475834768347783478834798348083481834828348383484834858348683487834888348983490834918349283493834948349583496834978349883499835008350183502835038350483505835068350783508835098351083511835128351383514835158351683517835188351983520835218352283523835248352583526835278352883529835308353183532835338353483535835368353783538835398354083541835428354383544835458354683547835488354983550835518355283553835548355583556835578355883559835608356183562835638356483565835668356783568835698357083571835728357383574835758357683577835788357983580835818358283583835848358583586835878358883589835908359183592835938359483595835968359783598835998360083601836028360383604836058360683607836088360983610836118361283613836148361583616836178361883619836208362183622836238362483625836268362783628836298363083631836328363383634836358363683637836388363983640836418364283643836448364583646836478364883649836508365183652836538365483655836568365783658836598366083661836628366383664836658366683667836688366983670836718367283673836748367583676836778367883679836808368183682836838368483685836868368783688836898369083691836928369383694836958369683697836988369983700837018370283703837048370583706837078370883709837108371183712837138371483715837168371783718837198372083721837228372383724837258372683727837288372983730837318373283733837348373583736837378373883739837408374183742837438374483745837468374783748837498375083751837528375383754837558375683757837588375983760837618376283763837648376583766837678376883769837708377183772837738377483775837768377783778837798378083781837828378383784837858378683787837888378983790837918379283793837948379583796837978379883799838008380183802838038380483805838068380783808838098381083811838128381383814838158381683817838188381983820838218382283823838248382583826838278382883829838308383183832838338383483835838368383783838838398384083841838428384383844838458384683847838488384983850838518385283853838548385583856838578385883859838608386183862838638386483865838668386783868838698387083871838728387383874838758387683877838788387983880838818388283883838848388583886838878388883889838908389183892838938389483895838968389783898838998390083901839028390383904839058390683907839088390983910839118391283913839148391583916839178391883919839208392183922839238392483925839268392783928839298393083931839328393383934839358393683937839388393983940839418394283943839448394583946839478394883949839508395183952839538395483955839568395783958839598396083961839628396383964839658396683967839688396983970839718397283973839748397583976839778397883979839808398183982839838398483985839868398783988839898399083991839928399383994839958399683997839988399984000840018400284003840048400584006840078400884009840108401184012840138401484015840168401784018840198402084021840228402384024840258402684027840288402984030840318403284033840348403584036840378403884039840408404184042840438404484045840468404784048840498405084051840528405384054840558405684057840588405984060840618406284063840648406584066840678406884069840708407184072840738407484075840768407784078840798408084081840828408384084840858408684087840888408984090840918409284093840948409584096840978409884099841008410184102841038410484105841068410784108841098411084111841128411384114841158411684117841188411984120841218412284123841248412584126841278412884129841308413184132841338413484135841368413784138841398414084141841428414384144841458414684147841488414984150841518415284153841548415584156841578415884159841608416184162841638416484165841668416784168841698417084171841728417384174841758417684177841788417984180841818418284183841848418584186841878418884189841908419184192841938419484195841968419784198841998420084201842028420384204842058420684207842088420984210842118421284213842148421584216842178421884219842208422184222842238422484225842268422784228842298423084231842328423384234842358423684237842388423984240842418424284243842448424584246842478424884249842508425184252842538425484255842568425784258842598426084261842628426384264842658426684267842688426984270842718427284273842748427584276842778427884279842808428184282842838428484285842868428784288842898429084291842928429384294842958429684297842988429984300843018430284303843048430584306843078430884309843108431184312843138431484315843168431784318843198432084321843228432384324843258432684327843288432984330843318433284333843348433584336843378433884339843408434184342843438434484345843468434784348843498435084351843528435384354843558435684357843588435984360843618436284363843648436584366843678436884369843708437184372843738437484375843768437784378843798438084381843828438384384843858438684387843888438984390843918439284393843948439584396843978439884399844008440184402844038440484405844068440784408844098441084411844128441384414844158441684417844188441984420844218442284423844248442584426844278442884429844308443184432844338443484435844368443784438844398444084441844428444384444844458444684447844488444984450844518445284453844548445584456844578445884459844608446184462844638446484465844668446784468844698447084471844728447384474844758447684477844788447984480844818448284483844848448584486844878448884489844908449184492844938449484495844968449784498844998450084501845028450384504845058450684507845088450984510845118451284513845148451584516845178451884519845208452184522845238452484525845268452784528845298453084531845328453384534845358453684537845388453984540845418454284543845448454584546845478454884549845508455184552845538455484555845568455784558845598456084561845628456384564845658456684567845688456984570845718457284573845748457584576845778457884579845808458184582845838458484585845868458784588845898459084591845928459384594845958459684597845988459984600846018460284603846048460584606846078460884609846108461184612846138461484615846168461784618846198462084621846228462384624846258462684627846288462984630846318463284633846348463584636846378463884639846408464184642846438464484645846468464784648846498465084651846528465384654846558465684657846588465984660846618466284663846648466584666846678466884669846708467184672846738467484675846768467784678846798468084681846828468384684846858468684687846888468984690846918469284693846948469584696846978469884699847008470184702847038470484705847068470784708847098471084711847128471384714847158471684717847188471984720847218472284723847248472584726847278472884729847308473184732847338473484735847368473784738847398474084741847428474384744847458474684747847488474984750847518475284753847548475584756847578475884759847608476184762847638476484765847668476784768847698477084771847728477384774847758477684777847788477984780847818478284783847848478584786847878478884789847908479184792847938479484795847968479784798847998480084801848028480384804848058480684807848088480984810848118481284813848148481584816848178481884819848208482184822848238482484825848268482784828848298483084831848328483384834848358483684837848388483984840848418484284843848448484584846848478484884849848508485184852848538485484855848568485784858848598486084861848628486384864848658486684867848688486984870848718487284873848748487584876848778487884879848808488184882848838488484885848868488784888848898489084891848928489384894848958489684897848988489984900849018490284903849048490584906849078490884909849108491184912849138491484915849168491784918849198492084921849228492384924849258492684927849288492984930849318493284933849348493584936849378493884939849408494184942849438494484945849468494784948849498495084951849528495384954849558495684957849588495984960849618496284963849648496584966849678496884969849708497184972849738497484975849768497784978849798498084981849828498384984849858498684987849888498984990849918499284993849948499584996849978499884999850008500185002850038500485005850068500785008850098501085011850128501385014850158501685017850188501985020850218502285023850248502585026850278502885029850308503185032850338503485035850368503785038850398504085041850428504385044850458504685047850488504985050850518505285053850548505585056850578505885059850608506185062850638506485065850668506785068850698507085071850728507385074850758507685077850788507985080850818508285083850848508585086850878508885089850908509185092850938509485095850968509785098850998510085101851028510385104851058510685107851088510985110851118511285113851148511585116851178511885119851208512185122851238512485125851268512785128851298513085131851328513385134851358513685137851388513985140851418514285143851448514585146851478514885149851508515185152851538515485155851568515785158851598516085161851628516385164851658516685167851688516985170851718517285173851748517585176851778517885179851808518185182851838518485185851868518785188851898519085191851928519385194851958519685197851988519985200852018520285203852048520585206852078520885209852108521185212852138521485215852168521785218852198522085221852228522385224852258522685227852288522985230852318523285233852348523585236852378523885239852408524185242852438524485245852468524785248852498525085251852528525385254852558525685257852588525985260852618526285263852648526585266852678526885269852708527185272852738527485275852768527785278852798528085281852828528385284852858528685287852888528985290852918529285293852948529585296852978529885299853008530185302853038530485305853068530785308853098531085311853128531385314853158531685317853188531985320853218532285323853248532585326853278532885329853308533185332853338533485335853368533785338853398534085341853428534385344853458534685347853488534985350853518535285353853548535585356853578535885359853608536185362853638536485365853668536785368853698537085371853728537385374853758537685377853788537985380853818538285383853848538585386853878538885389853908539185392853938539485395853968539785398853998540085401854028540385404854058540685407854088540985410854118541285413854148541585416854178541885419854208542185422854238542485425854268542785428854298543085431854328543385434854358543685437854388543985440854418544285443854448544585446854478544885449854508545185452854538545485455854568545785458854598546085461854628546385464854658546685467854688546985470854718547285473854748547585476854778547885479854808548185482854838548485485854868548785488854898549085491854928549385494854958549685497854988549985500855018550285503855048550585506855078550885509855108551185512855138551485515855168551785518855198552085521855228552385524855258552685527855288552985530855318553285533855348553585536855378553885539855408554185542855438554485545855468554785548855498555085551855528555385554855558555685557855588555985560855618556285563855648556585566855678556885569855708557185572855738557485575855768557785578855798558085581855828558385584855858558685587855888558985590855918559285593855948559585596855978559885599856008560185602856038560485605856068560785608856098561085611856128561385614856158561685617856188561985620856218562285623856248562585626856278562885629856308563185632856338563485635856368563785638856398564085641856428564385644856458564685647856488564985650856518565285653856548565585656856578565885659856608566185662856638566485665856668566785668856698567085671856728567385674856758567685677856788567985680856818568285683856848568585686856878568885689856908569185692856938569485695856968569785698856998570085701857028570385704857058570685707857088570985710857118571285713857148571585716857178571885719857208572185722857238572485725857268572785728857298573085731857328573385734857358573685737857388573985740857418574285743857448574585746857478574885749857508575185752857538575485755857568575785758857598576085761857628576385764857658576685767857688576985770857718577285773857748577585776857778577885779857808578185782857838578485785857868578785788857898579085791857928579385794857958579685797857988579985800858018580285803858048580585806858078580885809858108581185812858138581485815858168581785818858198582085821858228582385824858258582685827858288582985830858318583285833858348583585836858378583885839858408584185842858438584485845858468584785848858498585085851858528585385854858558585685857858588585985860858618586285863858648586585866858678586885869858708587185872858738587485875858768587785878858798588085881858828588385884858858588685887858888588985890858918589285893858948589585896858978589885899859008590185902859038590485905859068590785908859098591085911859128591385914859158591685917859188591985920859218592285923859248592585926859278592885929859308593185932859338593485935859368593785938859398594085941859428594385944859458594685947859488594985950859518595285953859548595585956859578595885959859608596185962859638596485965859668596785968859698597085971859728597385974859758597685977859788597985980859818598285983859848598585986859878598885989859908599185992859938599485995859968599785998859998600086001860028600386004860058600686007860088600986010860118601286013860148601586016860178601886019860208602186022860238602486025860268602786028860298603086031860328603386034860358603686037860388603986040860418604286043860448604586046860478604886049860508605186052860538605486055860568605786058860598606086061860628606386064860658606686067860688606986070860718607286073860748607586076860778607886079860808608186082860838608486085860868608786088860898609086091860928609386094860958609686097860988609986100861018610286103861048610586106861078610886109861108611186112861138611486115861168611786118861198612086121861228612386124861258612686127861288612986130861318613286133861348613586136861378613886139861408614186142861438614486145861468614786148861498615086151861528615386154861558615686157861588615986160861618616286163861648616586166861678616886169861708617186172861738617486175861768617786178861798618086181861828618386184861858618686187861888618986190861918619286193861948619586196861978619886199862008620186202862038620486205862068620786208862098621086211862128621386214862158621686217862188621986220862218622286223862248622586226862278622886229862308623186232862338623486235862368623786238862398624086241862428624386244862458624686247862488624986250862518625286253862548625586256862578625886259862608626186262862638626486265862668626786268862698627086271862728627386274862758627686277862788627986280862818628286283862848628586286862878628886289862908629186292862938629486295862968629786298862998630086301863028630386304863058630686307863088630986310863118631286313863148631586316863178631886319863208632186322863238632486325863268632786328863298633086331863328633386334863358633686337863388633986340863418634286343863448634586346863478634886349863508635186352863538635486355863568635786358863598636086361863628636386364863658636686367863688636986370863718637286373863748637586376863778637886379863808638186382863838638486385863868638786388863898639086391863928639386394863958639686397863988639986400864018640286403864048640586406864078640886409864108641186412864138641486415864168641786418864198642086421864228642386424864258642686427864288642986430864318643286433864348643586436864378643886439864408644186442864438644486445864468644786448864498645086451864528645386454864558645686457864588645986460864618646286463864648646586466864678646886469864708647186472864738647486475864768647786478864798648086481864828648386484864858648686487864888648986490864918649286493864948649586496864978649886499865008650186502865038650486505865068650786508865098651086511865128651386514865158651686517865188651986520865218652286523865248652586526865278652886529865308653186532865338653486535865368653786538865398654086541865428654386544865458654686547865488654986550865518655286553865548655586556865578655886559865608656186562865638656486565865668656786568865698657086571865728657386574865758657686577865788657986580865818658286583865848658586586865878658886589865908659186592865938659486595865968659786598865998660086601866028660386604866058660686607866088660986610866118661286613866148661586616866178661886619866208662186622866238662486625866268662786628866298663086631866328663386634866358663686637866388663986640866418664286643866448664586646866478664886649866508665186652866538665486655866568665786658866598666086661866628666386664866658666686667866688666986670866718667286673866748667586676866778667886679866808668186682866838668486685866868668786688866898669086691866928669386694866958669686697866988669986700867018670286703867048670586706867078670886709867108671186712867138671486715867168671786718867198672086721867228672386724867258672686727867288672986730867318673286733867348673586736867378673886739867408674186742867438674486745867468674786748867498675086751867528675386754867558675686757867588675986760867618676286763867648676586766867678676886769867708677186772867738677486775867768677786778867798678086781867828678386784867858678686787867888678986790867918679286793867948679586796867978679886799868008680186802868038680486805868068680786808868098681086811868128681386814868158681686817868188681986820868218682286823868248682586826868278682886829868308683186832868338683486835868368683786838868398684086841868428684386844868458684686847868488684986850868518685286853868548685586856868578685886859868608686186862868638686486865868668686786868868698687086871868728687386874868758687686877868788687986880868818688286883868848688586886868878688886889868908689186892868938689486895868968689786898868998690086901869028690386904869058690686907869088690986910869118691286913869148691586916869178691886919869208692186922869238692486925869268692786928869298693086931869328693386934869358693686937869388693986940869418694286943869448694586946869478694886949869508695186952869538695486955869568695786958869598696086961869628696386964869658696686967869688696986970869718697286973869748697586976869778697886979869808698186982869838698486985869868698786988869898699086991869928699386994869958699686997869988699987000870018700287003870048700587006870078700887009870108701187012870138701487015870168701787018870198702087021870228702387024870258702687027870288702987030870318703287033870348703587036870378703887039870408704187042870438704487045870468704787048870498705087051870528705387054870558705687057870588705987060870618706287063870648706587066870678706887069870708707187072870738707487075870768707787078870798708087081870828708387084870858708687087870888708987090870918709287093870948709587096870978709887099871008710187102871038710487105871068710787108871098711087111871128711387114871158711687117871188711987120871218712287123871248712587126871278712887129871308713187132871338713487135871368713787138871398714087141871428714387144871458714687147871488714987150871518715287153871548715587156871578715887159871608716187162871638716487165871668716787168871698717087171871728717387174871758717687177871788717987180871818718287183871848718587186871878718887189871908719187192871938719487195871968719787198871998720087201872028720387204872058720687207872088720987210872118721287213872148721587216872178721887219872208722187222872238722487225872268722787228872298723087231872328723387234872358723687237872388723987240872418724287243872448724587246872478724887249872508725187252872538725487255872568725787258872598726087261872628726387264872658726687267872688726987270872718727287273872748727587276872778727887279872808728187282872838728487285872868728787288872898729087291872928729387294872958729687297872988729987300873018730287303873048730587306873078730887309873108731187312873138731487315873168731787318873198732087321873228732387324873258732687327873288732987330873318733287333873348733587336873378733887339873408734187342873438734487345873468734787348873498735087351873528735387354873558735687357873588735987360873618736287363873648736587366873678736887369873708737187372873738737487375873768737787378873798738087381873828738387384873858738687387873888738987390873918739287393873948739587396873978739887399874008740187402874038740487405874068740787408874098741087411874128741387414874158741687417874188741987420874218742287423874248742587426874278742887429874308743187432874338743487435874368743787438874398744087441874428744387444874458744687447874488744987450874518745287453874548745587456874578745887459874608746187462874638746487465874668746787468874698747087471874728747387474874758747687477874788747987480874818748287483874848748587486874878748887489874908749187492874938749487495874968749787498874998750087501875028750387504875058750687507875088750987510875118751287513875148751587516875178751887519875208752187522875238752487525875268752787528875298753087531875328753387534875358753687537875388753987540875418754287543875448754587546875478754887549875508755187552875538755487555875568755787558875598756087561875628756387564875658756687567875688756987570875718757287573875748757587576875778757887579875808758187582875838758487585875868758787588875898759087591875928759387594875958759687597875988759987600876018760287603876048760587606876078760887609876108761187612876138761487615876168761787618876198762087621876228762387624876258762687627876288762987630876318763287633876348763587636876378763887639876408764187642876438764487645876468764787648876498765087651876528765387654876558765687657876588765987660876618766287663876648766587666876678766887669876708767187672876738767487675876768767787678876798768087681876828768387684876858768687687876888768987690876918769287693876948769587696876978769887699877008770187702877038770487705877068770787708877098771087711877128771387714877158771687717877188771987720877218772287723877248772587726877278772887729877308773187732877338773487735877368773787738877398774087741877428774387744877458774687747877488774987750877518775287753877548775587756877578775887759877608776187762877638776487765877668776787768877698777087771877728777387774877758777687777877788777987780877818778287783877848778587786877878778887789877908779187792877938779487795877968779787798877998780087801878028780387804878058780687807878088780987810878118781287813878148781587816878178781887819878208782187822878238782487825878268782787828878298783087831878328783387834878358783687837878388783987840878418784287843878448784587846878478784887849878508785187852878538785487855878568785787858878598786087861878628786387864878658786687867878688786987870878718787287873878748787587876878778787887879878808788187882878838788487885878868788787888878898789087891878928789387894878958789687897878988789987900879018790287903879048790587906879078790887909879108791187912879138791487915879168791787918879198792087921879228792387924879258792687927879288792987930879318793287933879348793587936879378793887939879408794187942879438794487945879468794787948879498795087951879528795387954879558795687957879588795987960879618796287963879648796587966879678796887969879708797187972879738797487975879768797787978879798798087981879828798387984879858798687987879888798987990879918799287993879948799587996879978799887999880008800188002880038800488005880068800788008880098801088011880128801388014880158801688017880188801988020880218802288023880248802588026880278802888029880308803188032880338803488035880368803788038880398804088041880428804388044880458804688047880488804988050880518805288053880548805588056880578805888059880608806188062880638806488065880668806788068880698807088071880728807388074880758807688077880788807988080880818808288083880848808588086880878808888089880908809188092880938809488095880968809788098880998810088101881028810388104881058810688107881088810988110881118811288113881148811588116881178811888119881208812188122881238812488125881268812788128881298813088131881328813388134881358813688137881388813988140881418814288143881448814588146881478814888149881508815188152881538815488155881568815788158881598816088161881628816388164881658816688167881688816988170881718817288173881748817588176881778817888179881808818188182881838818488185881868818788188881898819088191881928819388194881958819688197881988819988200882018820288203882048820588206882078820888209882108821188212882138821488215882168821788218882198822088221882228822388224882258822688227882288822988230882318823288233882348823588236882378823888239882408824188242882438824488245882468824788248882498825088251882528825388254882558825688257882588825988260882618826288263882648826588266882678826888269882708827188272882738827488275882768827788278882798828088281882828828388284882858828688287882888828988290882918829288293882948829588296882978829888299883008830188302883038830488305883068830788308883098831088311883128831388314883158831688317883188831988320883218832288323883248832588326883278832888329883308833188332883338833488335883368833788338883398834088341883428834388344883458834688347883488834988350883518835288353883548835588356883578835888359883608836188362883638836488365883668836788368883698837088371883728837388374883758837688377883788837988380883818838288383883848838588386883878838888389883908839188392883938839488395883968839788398883998840088401884028840388404884058840688407884088840988410884118841288413884148841588416884178841888419884208842188422884238842488425884268842788428884298843088431884328843388434884358843688437884388843988440884418844288443884448844588446884478844888449884508845188452884538845488455884568845788458884598846088461884628846388464884658846688467884688846988470884718847288473884748847588476884778847888479884808848188482884838848488485884868848788488884898849088491884928849388494884958849688497884988849988500885018850288503885048850588506885078850888509885108851188512885138851488515885168851788518885198852088521885228852388524885258852688527885288852988530885318853288533885348853588536885378853888539885408854188542885438854488545885468854788548885498855088551885528855388554885558855688557885588855988560885618856288563885648856588566885678856888569885708857188572885738857488575885768857788578885798858088581885828858388584885858858688587885888858988590885918859288593885948859588596885978859888599886008860188602886038860488605886068860788608886098861088611886128861388614886158861688617886188861988620886218862288623886248862588626886278862888629886308863188632886338863488635886368863788638886398864088641886428864388644886458864688647886488864988650886518865288653886548865588656886578865888659886608866188662886638866488665886668866788668886698867088671886728867388674886758867688677886788867988680886818868288683886848868588686886878868888689886908869188692886938869488695886968869788698886998870088701887028870388704887058870688707887088870988710887118871288713887148871588716887178871888719887208872188722887238872488725887268872788728887298873088731887328873388734887358873688737887388873988740887418874288743887448874588746887478874888749887508875188752887538875488755887568875788758887598876088761887628876388764887658876688767887688876988770887718877288773887748877588776887778877888779887808878188782887838878488785887868878788788887898879088791887928879388794887958879688797887988879988800888018880288803888048880588806888078880888809888108881188812888138881488815888168881788818888198882088821888228882388824888258882688827888288882988830888318883288833888348883588836888378883888839888408884188842888438884488845888468884788848888498885088851888528885388854888558885688857888588885988860888618886288863888648886588866888678886888869888708887188872888738887488875888768887788878888798888088881888828888388884888858888688887888888888988890888918889288893888948889588896888978889888899889008890188902889038890488905889068890788908889098891088911889128891388914889158891688917889188891988920889218892288923889248892588926889278892888929889308893188932889338893488935889368893788938889398894088941889428894388944889458894688947889488894988950889518895288953889548895588956889578895888959889608896188962889638896488965889668896788968889698897088971889728897388974889758897688977889788897988980889818898288983889848898588986889878898888989889908899188992889938899488995889968899788998889998900089001890028900389004890058900689007890088900989010890118901289013890148901589016890178901889019890208902189022890238902489025890268902789028890298903089031890328903389034890358903689037890388903989040890418904289043890448904589046890478904889049890508905189052890538905489055890568905789058890598906089061890628906389064890658906689067890688906989070890718907289073890748907589076890778907889079890808908189082890838908489085890868908789088890898909089091890928909389094890958909689097890988909989100891018910289103891048910589106891078910889109891108911189112891138911489115891168911789118891198912089121891228912389124891258912689127891288912989130891318913289133891348913589136891378913889139891408914189142891438914489145891468914789148891498915089151891528915389154891558915689157891588915989160891618916289163891648916589166891678916889169891708917189172891738917489175891768917789178891798918089181891828918389184891858918689187891888918989190891918919289193891948919589196891978919889199892008920189202892038920489205892068920789208892098921089211892128921389214892158921689217892188921989220892218922289223892248922589226892278922889229892308923189232892338923489235892368923789238892398924089241892428924389244892458924689247892488924989250892518925289253892548925589256892578925889259892608926189262892638926489265892668926789268892698927089271892728927389274892758927689277892788927989280892818928289283892848928589286892878928889289892908929189292892938929489295892968929789298892998930089301893028930389304893058930689307893088930989310893118931289313893148931589316893178931889319893208932189322893238932489325893268932789328893298933089331893328933389334893358933689337893388933989340893418934289343893448934589346893478934889349893508935189352893538935489355893568935789358893598936089361893628936389364893658936689367893688936989370893718937289373893748937589376893778937889379893808938189382893838938489385893868938789388893898939089391893928939389394893958939689397893988939989400894018940289403894048940589406894078940889409894108941189412894138941489415894168941789418894198942089421894228942389424894258942689427894288942989430894318943289433894348943589436894378943889439894408944189442894438944489445894468944789448894498945089451894528945389454894558945689457894588945989460894618946289463894648946589466894678946889469894708947189472894738947489475894768947789478894798948089481894828948389484894858948689487894888948989490894918949289493894948949589496894978949889499895008950189502895038950489505895068950789508895098951089511895128951389514895158951689517895188951989520895218952289523895248952589526895278952889529895308953189532895338953489535895368953789538895398954089541895428954389544895458954689547895488954989550895518955289553895548955589556895578955889559895608956189562895638956489565895668956789568895698957089571895728957389574895758957689577895788957989580895818958289583895848958589586895878958889589895908959189592895938959489595895968959789598895998960089601896028960389604896058960689607896088960989610896118961289613896148961589616896178961889619896208962189622896238962489625896268962789628896298963089631896328963389634896358963689637896388963989640896418964289643896448964589646896478964889649896508965189652896538965489655896568965789658896598966089661896628966389664896658966689667896688966989670896718967289673896748967589676896778967889679896808968189682896838968489685896868968789688896898969089691896928969389694896958969689697896988969989700897018970289703897048970589706897078970889709897108971189712897138971489715897168971789718897198972089721897228972389724897258972689727897288972989730897318973289733897348973589736897378973889739897408974189742897438974489745897468974789748897498975089751897528975389754897558975689757897588975989760897618976289763897648976589766897678976889769897708977189772897738977489775897768977789778897798978089781897828978389784897858978689787897888978989790897918979289793897948979589796897978979889799898008980189802898038980489805898068980789808898098981089811898128981389814898158981689817898188981989820898218982289823898248982589826898278982889829898308983189832898338983489835898368983789838898398984089841898428984389844898458984689847898488984989850898518985289853898548985589856898578985889859898608986189862898638986489865898668986789868898698987089871898728987389874898758987689877898788987989880898818988289883898848988589886898878988889889898908989189892898938989489895898968989789898898998990089901899028990389904899058990689907899088990989910899118991289913899148991589916899178991889919899208992189922899238992489925899268992789928899298993089931899328993389934899358993689937899388993989940899418994289943899448994589946899478994889949899508995189952899538995489955899568995789958899598996089961899628996389964899658996689967899688996989970899718997289973899748997589976899778997889979899808998189982899838998489985899868998789988899898999089991899928999389994899958999689997899988999990000900019000290003900049000590006900079000890009900109001190012900139001490015900169001790018900199002090021900229002390024900259002690027900289002990030900319003290033900349003590036900379003890039900409004190042900439004490045900469004790048900499005090051900529005390054900559005690057900589005990060900619006290063900649006590066900679006890069900709007190072900739007490075900769007790078900799008090081900829008390084900859008690087900889008990090900919009290093900949009590096900979009890099901009010190102901039010490105901069010790108901099011090111901129011390114901159011690117901189011990120901219012290123901249012590126901279012890129901309013190132901339013490135901369013790138901399014090141901429014390144901459014690147901489014990150901519015290153901549015590156901579015890159901609016190162901639016490165901669016790168901699017090171901729017390174901759017690177901789017990180901819018290183901849018590186901879018890189901909019190192901939019490195901969019790198901999020090201902029020390204902059020690207902089020990210902119021290213902149021590216902179021890219902209022190222902239022490225902269022790228902299023090231902329023390234902359023690237902389023990240902419024290243902449024590246902479024890249902509025190252902539025490255902569025790258902599026090261902629026390264902659026690267902689026990270902719027290273902749027590276902779027890279902809028190282902839028490285902869028790288902899029090291902929029390294902959029690297902989029990300903019030290303903049030590306903079030890309903109031190312903139031490315903169031790318903199032090321903229032390324903259032690327903289032990330903319033290333903349033590336903379033890339903409034190342903439034490345903469034790348903499035090351903529035390354903559035690357903589035990360903619036290363903649036590366903679036890369903709037190372903739037490375903769037790378903799038090381903829038390384903859038690387903889038990390903919039290393903949039590396903979039890399904009040190402904039040490405904069040790408904099041090411904129041390414904159041690417904189041990420904219042290423904249042590426904279042890429904309043190432904339043490435904369043790438904399044090441904429044390444904459044690447904489044990450904519045290453904549045590456904579045890459904609046190462904639046490465904669046790468904699047090471904729047390474904759047690477904789047990480904819048290483904849048590486904879048890489904909049190492904939049490495904969049790498904999050090501905029050390504905059050690507905089050990510905119051290513905149051590516905179051890519905209052190522905239052490525905269052790528905299053090531905329053390534905359053690537905389053990540905419054290543905449054590546905479054890549905509055190552905539055490555905569055790558905599056090561905629056390564905659056690567905689056990570905719057290573905749057590576905779057890579905809058190582905839058490585905869058790588905899059090591905929059390594905959059690597905989059990600906019060290603906049060590606906079060890609906109061190612906139061490615906169061790618906199062090621906229062390624906259062690627906289062990630906319063290633906349063590636906379063890639906409064190642906439064490645906469064790648906499065090651906529065390654906559065690657906589065990660906619066290663906649066590666906679066890669906709067190672906739067490675906769067790678906799068090681906829068390684906859068690687906889068990690906919069290693906949069590696906979069890699907009070190702907039070490705907069070790708907099071090711907129071390714907159071690717907189071990720907219072290723907249072590726907279072890729907309073190732907339073490735907369073790738907399074090741907429074390744907459074690747907489074990750907519075290753907549075590756907579075890759907609076190762907639076490765907669076790768907699077090771907729077390774907759077690777907789077990780907819078290783907849078590786907879078890789907909079190792907939079490795907969079790798907999080090801908029080390804908059080690807908089080990810908119081290813908149081590816908179081890819908209082190822908239082490825908269082790828908299083090831908329083390834908359083690837908389083990840908419084290843908449084590846908479084890849908509085190852908539085490855908569085790858908599086090861908629086390864908659086690867908689086990870908719087290873908749087590876908779087890879908809088190882908839088490885908869088790888908899089090891908929089390894908959089690897908989089990900909019090290903909049090590906909079090890909909109091190912909139091490915909169091790918909199092090921909229092390924909259092690927909289092990930909319093290933909349093590936909379093890939909409094190942909439094490945909469094790948909499095090951909529095390954909559095690957909589095990960909619096290963909649096590966909679096890969909709097190972909739097490975909769097790978909799098090981909829098390984909859098690987909889098990990909919099290993909949099590996909979099890999910009100191002910039100491005910069100791008910099101091011910129101391014910159101691017910189101991020910219102291023910249102591026910279102891029910309103191032910339103491035910369103791038910399104091041910429104391044910459104691047910489104991050910519105291053910549105591056910579105891059910609106191062910639106491065910669106791068910699107091071910729107391074910759107691077910789107991080910819108291083910849108591086910879108891089910909109191092910939109491095910969109791098910999110091101911029110391104911059110691107911089110991110911119111291113911149111591116911179111891119911209112191122911239112491125911269112791128911299113091131911329113391134911359113691137911389113991140911419114291143911449114591146911479114891149911509115191152911539115491155911569115791158911599116091161911629116391164911659116691167911689116991170911719117291173911749117591176911779117891179911809118191182911839118491185911869118791188911899119091191911929119391194911959119691197911989119991200912019120291203912049120591206912079120891209912109121191212912139121491215912169121791218912199122091221912229122391224912259122691227912289122991230912319123291233912349123591236912379123891239912409124191242912439124491245912469124791248912499125091251912529125391254912559125691257912589125991260912619126291263912649126591266912679126891269912709127191272912739127491275912769127791278912799128091281912829128391284912859128691287912889128991290912919129291293912949129591296912979129891299913009130191302913039130491305913069130791308913099131091311913129131391314913159131691317913189131991320913219132291323913249132591326913279132891329913309133191332913339133491335913369133791338913399134091341913429134391344913459134691347913489134991350913519135291353913549135591356913579135891359913609136191362913639136491365913669136791368913699137091371913729137391374913759137691377913789137991380913819138291383913849138591386913879138891389913909139191392913939139491395913969139791398913999140091401914029140391404914059140691407914089140991410914119141291413914149141591416914179141891419914209142191422914239142491425914269142791428914299143091431914329143391434914359143691437914389143991440914419144291443914449144591446914479144891449914509145191452914539145491455914569145791458914599146091461914629146391464914659146691467914689146991470914719147291473914749147591476914779147891479914809148191482914839148491485914869148791488914899149091491914929149391494914959149691497914989149991500915019150291503915049150591506915079150891509915109151191512915139151491515915169151791518915199152091521915229152391524915259152691527915289152991530915319153291533915349153591536915379153891539915409154191542915439154491545915469154791548915499155091551915529155391554915559155691557915589155991560915619156291563915649156591566915679156891569915709157191572915739157491575915769157791578915799158091581915829158391584915859158691587915889158991590915919159291593915949159591596915979159891599916009160191602916039160491605916069160791608916099161091611916129161391614916159161691617916189161991620916219162291623916249162591626916279162891629916309163191632916339163491635916369163791638916399164091641916429164391644916459164691647916489164991650916519165291653916549165591656916579165891659916609166191662916639166491665916669166791668916699167091671916729167391674916759167691677916789167991680916819168291683916849168591686916879168891689916909169191692916939169491695916969169791698916999170091701917029170391704917059170691707917089170991710917119171291713917149171591716917179171891719917209172191722917239172491725917269172791728917299173091731917329173391734917359173691737917389173991740917419174291743917449174591746917479174891749917509175191752917539175491755917569175791758917599176091761917629176391764917659176691767917689176991770917719177291773917749177591776917779177891779917809178191782917839178491785917869178791788917899179091791917929179391794917959179691797917989179991800918019180291803918049180591806918079180891809918109181191812918139181491815918169181791818918199182091821918229182391824918259182691827918289182991830918319183291833918349183591836918379183891839918409184191842918439184491845918469184791848918499185091851918529185391854918559185691857918589185991860918619186291863918649186591866918679186891869918709187191872918739187491875918769187791878918799188091881918829188391884918859188691887918889188991890918919189291893918949189591896918979189891899919009190191902919039190491905919069190791908919099191091911919129191391914919159191691917919189191991920919219192291923919249192591926919279192891929919309193191932919339193491935919369193791938919399194091941919429194391944919459194691947919489194991950919519195291953919549195591956919579195891959919609196191962919639196491965919669196791968919699197091971919729197391974919759197691977919789197991980919819198291983919849198591986919879198891989919909199191992919939199491995919969199791998919999200092001920029200392004920059200692007920089200992010920119201292013920149201592016920179201892019920209202192022920239202492025920269202792028920299203092031920329203392034920359203692037920389203992040920419204292043920449204592046920479204892049920509205192052920539205492055920569205792058920599206092061920629206392064920659206692067920689206992070920719207292073920749207592076920779207892079920809208192082920839208492085920869208792088920899209092091920929209392094920959209692097920989209992100921019210292103921049210592106921079210892109921109211192112921139211492115921169211792118921199212092121921229212392124921259212692127921289212992130921319213292133921349213592136921379213892139921409214192142921439214492145921469214792148921499215092151921529215392154921559215692157921589215992160921619216292163921649216592166921679216892169921709217192172921739217492175921769217792178921799218092181921829218392184921859218692187921889218992190921919219292193921949219592196921979219892199922009220192202922039220492205922069220792208922099221092211922129221392214922159221692217922189221992220922219222292223922249222592226922279222892229922309223192232922339223492235922369223792238922399224092241922429224392244922459224692247922489224992250922519225292253922549225592256922579225892259922609226192262922639226492265922669226792268922699227092271922729227392274922759227692277922789227992280922819228292283922849228592286922879228892289922909229192292922939229492295922969229792298922999230092301923029230392304923059230692307923089230992310923119231292313923149231592316923179231892319923209232192322923239232492325923269232792328923299233092331923329233392334923359233692337923389233992340923419234292343923449234592346923479234892349923509235192352923539235492355923569235792358923599236092361923629236392364923659236692367923689236992370923719237292373923749237592376923779237892379923809238192382923839238492385923869238792388923899239092391923929239392394923959239692397923989239992400924019240292403924049240592406924079240892409924109241192412924139241492415924169241792418924199242092421924229242392424924259242692427924289242992430924319243292433924349243592436924379243892439924409244192442924439244492445924469244792448924499245092451924529245392454924559245692457924589245992460924619246292463924649246592466924679246892469924709247192472924739247492475924769247792478924799248092481924829248392484924859248692487924889248992490924919249292493924949249592496924979249892499925009250192502925039250492505925069250792508925099251092511925129251392514925159251692517925189251992520925219252292523925249252592526925279252892529925309253192532925339253492535925369253792538925399254092541925429254392544925459254692547925489254992550925519255292553925549255592556925579255892559925609256192562925639256492565925669256792568925699257092571925729257392574925759257692577925789257992580925819258292583925849258592586925879258892589925909259192592925939259492595925969259792598925999260092601926029260392604926059260692607926089260992610926119261292613926149261592616926179261892619926209262192622926239262492625926269262792628926299263092631926329263392634926359263692637926389263992640926419264292643926449264592646926479264892649926509265192652926539265492655926569265792658926599266092661926629266392664926659266692667926689266992670926719267292673926749267592676926779267892679926809268192682926839268492685926869268792688926899269092691926929269392694926959269692697926989269992700927019270292703927049270592706927079270892709927109271192712927139271492715927169271792718927199272092721927229272392724927259272692727927289272992730927319273292733927349273592736927379273892739927409274192742927439274492745927469274792748927499275092751927529275392754927559275692757927589275992760927619276292763927649276592766927679276892769927709277192772927739277492775927769277792778927799278092781927829278392784927859278692787927889278992790927919279292793927949279592796927979279892799928009280192802928039280492805928069280792808928099281092811928129281392814928159281692817928189281992820928219282292823928249282592826928279282892829928309283192832928339283492835928369283792838928399284092841928429284392844928459284692847928489284992850928519285292853928549285592856928579285892859928609286192862928639286492865928669286792868928699287092871928729287392874928759287692877928789287992880928819288292883928849288592886928879288892889928909289192892928939289492895928969289792898928999290092901929029290392904929059290692907929089290992910929119291292913929149291592916929179291892919929209292192922929239292492925929269292792928929299293092931929329293392934929359293692937929389293992940929419294292943929449294592946929479294892949929509295192952929539295492955929569295792958929599296092961929629296392964929659296692967929689296992970929719297292973929749297592976929779297892979929809298192982929839298492985929869298792988929899299092991929929299392994929959299692997929989299993000930019300293003930049300593006930079300893009930109301193012930139301493015930169301793018930199302093021930229302393024930259302693027930289302993030930319303293033930349303593036930379303893039930409304193042930439304493045930469304793048930499305093051930529305393054930559305693057930589305993060930619306293063930649306593066930679306893069930709307193072930739307493075930769307793078930799308093081930829308393084930859308693087930889308993090930919309293093930949309593096930979309893099931009310193102931039310493105931069310793108931099311093111931129311393114931159311693117931189311993120931219312293123931249312593126931279312893129931309313193132931339313493135931369313793138931399314093141931429314393144931459314693147931489314993150931519315293153931549315593156931579315893159931609316193162931639316493165931669316793168931699317093171931729317393174931759317693177931789317993180931819318293183931849318593186931879318893189931909319193192931939319493195931969319793198931999320093201932029320393204932059320693207932089320993210932119321293213932149321593216932179321893219932209322193222932239322493225932269322793228932299323093231932329323393234932359323693237932389323993240932419324293243932449324593246932479324893249932509325193252932539325493255932569325793258932599326093261932629326393264932659326693267932689326993270932719327293273932749327593276932779327893279932809328193282932839328493285932869328793288932899329093291932929329393294932959329693297932989329993300933019330293303933049330593306933079330893309933109331193312933139331493315933169331793318933199332093321933229332393324933259332693327933289332993330933319333293333933349333593336933379333893339933409334193342933439334493345933469334793348933499335093351933529335393354933559335693357933589335993360933619336293363933649336593366933679336893369933709337193372933739337493375933769337793378933799338093381933829338393384933859338693387933889338993390933919339293393933949339593396933979339893399934009340193402934039340493405934069340793408934099341093411934129341393414934159341693417934189341993420934219342293423934249342593426934279342893429934309343193432934339343493435934369343793438934399344093441934429344393444934459344693447934489344993450934519345293453934549345593456934579345893459934609346193462934639346493465934669346793468934699347093471934729347393474934759347693477934789347993480934819348293483934849348593486934879348893489934909349193492934939349493495934969349793498934999350093501935029350393504935059350693507935089350993510935119351293513935149351593516935179351893519935209352193522935239352493525935269352793528935299353093531935329353393534935359353693537935389353993540935419354293543935449354593546935479354893549935509355193552935539355493555935569355793558935599356093561935629356393564935659356693567935689356993570935719357293573935749357593576935779357893579935809358193582935839358493585935869358793588935899359093591935929359393594935959359693597935989359993600936019360293603936049360593606936079360893609936109361193612936139361493615936169361793618936199362093621936229362393624936259362693627936289362993630936319363293633936349363593636936379363893639936409364193642936439364493645936469364793648936499365093651936529365393654936559365693657936589365993660936619366293663936649366593666936679366893669936709367193672936739367493675936769367793678936799368093681936829368393684936859368693687936889368993690936919369293693936949369593696936979369893699937009370193702937039370493705937069370793708937099371093711937129371393714937159371693717937189371993720937219372293723937249372593726937279372893729937309373193732937339373493735937369373793738937399374093741937429374393744937459374693747937489374993750937519375293753937549375593756937579375893759937609376193762937639376493765937669376793768937699377093771937729377393774937759377693777937789377993780937819378293783937849378593786937879378893789937909379193792937939379493795937969379793798937999380093801938029380393804938059380693807938089380993810938119381293813938149381593816938179381893819938209382193822938239382493825938269382793828938299383093831938329383393834938359383693837938389383993840938419384293843938449384593846938479384893849938509385193852938539385493855938569385793858938599386093861938629386393864938659386693867938689386993870938719387293873938749387593876938779387893879938809388193882938839388493885938869388793888938899389093891938929389393894938959389693897938989389993900939019390293903939049390593906939079390893909939109391193912939139391493915939169391793918939199392093921939229392393924939259392693927939289392993930939319393293933939349393593936939379393893939939409394193942939439394493945939469394793948939499395093951939529395393954939559395693957939589395993960939619396293963939649396593966939679396893969939709397193972939739397493975939769397793978939799398093981939829398393984939859398693987939889398993990939919399293993939949399593996939979399893999940009400194002940039400494005940069400794008940099401094011940129401394014940159401694017940189401994020940219402294023940249402594026940279402894029940309403194032940339403494035940369403794038940399404094041940429404394044940459404694047940489404994050940519405294053940549405594056940579405894059940609406194062940639406494065940669406794068940699407094071940729407394074940759407694077940789407994080940819408294083940849408594086940879408894089940909409194092940939409494095940969409794098940999410094101941029410394104941059410694107941089410994110941119411294113941149411594116941179411894119941209412194122941239412494125941269412794128941299413094131941329413394134941359413694137941389413994140941419414294143941449414594146941479414894149941509415194152941539415494155941569415794158941599416094161941629416394164941659416694167941689416994170941719417294173941749417594176941779417894179941809418194182941839418494185941869418794188941899419094191941929419394194941959419694197941989419994200942019420294203942049420594206942079420894209942109421194212942139421494215942169421794218942199422094221942229422394224942259422694227942289422994230942319423294233942349423594236942379423894239942409424194242942439424494245942469424794248942499425094251942529425394254942559425694257942589425994260942619426294263942649426594266942679426894269942709427194272942739427494275942769427794278942799428094281942829428394284942859428694287942889428994290942919429294293942949429594296942979429894299943009430194302943039430494305943069430794308943099431094311943129431394314943159431694317943189431994320943219432294323943249432594326943279432894329943309433194332943339433494335943369433794338943399434094341943429434394344943459434694347943489434994350943519435294353943549435594356943579435894359943609436194362943639436494365943669436794368943699437094371943729437394374943759437694377943789437994380943819438294383943849438594386943879438894389943909439194392943939439494395943969439794398943999440094401944029440394404944059440694407944089440994410944119441294413944149441594416944179441894419944209442194422944239442494425944269442794428944299443094431944329443394434944359443694437944389443994440944419444294443944449444594446944479444894449944509445194452944539445494455944569445794458944599446094461944629446394464944659446694467944689446994470944719447294473944749447594476944779447894479944809448194482944839448494485944869448794488944899449094491944929449394494944959449694497944989449994500945019450294503945049450594506945079450894509945109451194512945139451494515945169451794518945199452094521945229452394524945259452694527945289452994530945319453294533945349453594536945379453894539945409454194542945439454494545945469454794548945499455094551945529455394554945559455694557945589455994560945619456294563945649456594566945679456894569945709457194572945739457494575945769457794578945799458094581945829458394584945859458694587945889458994590945919459294593945949459594596945979459894599946009460194602946039460494605946069460794608946099461094611946129461394614946159461694617946189461994620946219462294623946249462594626946279462894629946309463194632946339463494635946369463794638946399464094641946429464394644946459464694647946489464994650946519465294653946549465594656946579465894659946609466194662946639466494665946669466794668946699467094671946729467394674946759467694677946789467994680946819468294683946849468594686946879468894689946909469194692946939469494695946969469794698946999470094701947029470394704947059470694707947089470994710947119471294713947149471594716947179471894719947209472194722947239472494725947269472794728947299473094731947329473394734947359473694737947389473994740947419474294743947449474594746947479474894749947509475194752947539475494755947569475794758947599476094761947629476394764947659476694767947689476994770947719477294773947749477594776947779477894779947809478194782947839478494785947869478794788947899479094791947929479394794947959479694797947989479994800948019480294803948049480594806948079480894809948109481194812948139481494815948169481794818948199482094821948229482394824948259482694827948289482994830948319483294833948349483594836948379483894839948409484194842948439484494845948469484794848948499485094851948529485394854948559485694857948589485994860948619486294863948649486594866948679486894869948709487194872948739487494875948769487794878948799488094881948829488394884948859488694887948889488994890948919489294893948949489594896948979489894899949009490194902949039490494905949069490794908949099491094911949129491394914949159491694917949189491994920949219492294923949249492594926949279492894929949309493194932949339493494935949369493794938949399494094941949429494394944949459494694947949489494994950949519495294953949549495594956949579495894959949609496194962949639496494965949669496794968949699497094971949729497394974949759497694977949789497994980949819498294983949849498594986949879498894989949909499194992949939499494995949969499794998949999500095001950029500395004950059500695007950089500995010950119501295013950149501595016950179501895019950209502195022950239502495025950269502795028950299503095031950329503395034950359503695037950389503995040950419504295043950449504595046950479504895049950509505195052950539505495055950569505795058950599506095061950629506395064950659506695067950689506995070950719507295073950749507595076950779507895079950809508195082950839508495085950869508795088950899509095091950929509395094950959509695097950989509995100951019510295103951049510595106951079510895109951109511195112951139511495115951169511795118951199512095121951229512395124951259512695127951289512995130951319513295133951349513595136951379513895139951409514195142951439514495145951469514795148951499515095151951529515395154951559515695157951589515995160951619516295163951649516595166951679516895169951709517195172951739517495175951769517795178951799518095181951829518395184951859518695187951889518995190951919519295193951949519595196951979519895199952009520195202952039520495205952069520795208952099521095211952129521395214952159521695217952189521995220952219522295223952249522595226952279522895229952309523195232952339523495235952369523795238952399524095241952429524395244952459524695247952489524995250952519525295253952549525595256952579525895259952609526195262952639526495265952669526795268952699527095271952729527395274952759527695277952789527995280952819528295283952849528595286952879528895289952909529195292952939529495295952969529795298952999530095301953029530395304953059530695307953089530995310953119531295313953149531595316953179531895319953209532195322953239532495325953269532795328953299533095331953329533395334953359533695337953389533995340953419534295343953449534595346953479534895349953509535195352953539535495355953569535795358953599536095361953629536395364953659536695367953689536995370953719537295373953749537595376953779537895379953809538195382953839538495385953869538795388953899539095391953929539395394953959539695397953989539995400954019540295403954049540595406954079540895409954109541195412954139541495415954169541795418954199542095421954229542395424954259542695427954289542995430954319543295433954349543595436954379543895439954409544195442954439544495445954469544795448954499545095451954529545395454954559545695457954589545995460954619546295463954649546595466954679546895469954709547195472954739547495475954769547795478954799548095481954829548395484954859548695487954889548995490954919549295493954949549595496954979549895499955009550195502955039550495505955069550795508955099551095511955129551395514955159551695517955189551995520955219552295523955249552595526955279552895529955309553195532955339553495535955369553795538955399554095541955429554395544955459554695547955489554995550955519555295553955549555595556955579555895559955609556195562955639556495565955669556795568955699557095571955729557395574955759557695577955789557995580955819558295583955849558595586955879558895589955909559195592955939559495595955969559795598955999560095601956029560395604956059560695607956089560995610956119561295613956149561595616956179561895619956209562195622956239562495625956269562795628956299563095631956329563395634956359563695637956389563995640956419564295643956449564595646956479564895649956509565195652956539565495655956569565795658956599566095661956629566395664956659566695667956689566995670956719567295673956749567595676956779567895679956809568195682956839568495685956869568795688956899569095691956929569395694956959569695697956989569995700957019570295703957049570595706957079570895709957109571195712957139571495715957169571795718957199572095721957229572395724957259572695727957289572995730957319573295733957349573595736957379573895739957409574195742957439574495745957469574795748957499575095751957529575395754957559575695757957589575995760957619576295763957649576595766957679576895769957709577195772957739577495775957769577795778957799578095781957829578395784957859578695787957889578995790957919579295793957949579595796957979579895799958009580195802958039580495805958069580795808958099581095811958129581395814958159581695817958189581995820958219582295823958249582595826958279582895829958309583195832958339583495835958369583795838958399584095841958429584395844958459584695847958489584995850958519585295853958549585595856958579585895859958609586195862958639586495865958669586795868958699587095871958729587395874958759587695877958789587995880958819588295883958849588595886958879588895889958909589195892958939589495895958969589795898958999590095901959029590395904959059590695907959089590995910959119591295913959149591595916959179591895919959209592195922959239592495925959269592795928959299593095931959329593395934959359593695937959389593995940959419594295943959449594595946959479594895949959509595195952959539595495955959569595795958959599596095961959629596395964959659596695967959689596995970959719597295973959749597595976959779597895979959809598195982959839598495985959869598795988959899599095991959929599395994959959599695997959989599996000960019600296003960049600596006960079600896009960109601196012960139601496015960169601796018960199602096021960229602396024960259602696027960289602996030960319603296033960349603596036960379603896039960409604196042960439604496045960469604796048960499605096051960529605396054960559605696057960589605996060960619606296063960649606596066960679606896069960709607196072960739607496075960769607796078960799608096081960829608396084960859608696087960889608996090960919609296093960949609596096960979609896099961009610196102961039610496105961069610796108961099611096111961129611396114961159611696117961189611996120961219612296123961249612596126961279612896129961309613196132961339613496135961369613796138961399614096141961429614396144961459614696147961489614996150961519615296153961549615596156961579615896159961609616196162961639616496165961669616796168961699617096171961729617396174961759617696177961789617996180961819618296183961849618596186961879618896189961909619196192961939619496195961969619796198961999620096201962029620396204962059620696207962089620996210962119621296213962149621596216962179621896219962209622196222962239622496225962269622796228962299623096231962329623396234962359623696237962389623996240962419624296243962449624596246962479624896249962509625196252962539625496255962569625796258962599626096261962629626396264962659626696267962689626996270962719627296273962749627596276962779627896279962809628196282962839628496285962869628796288962899629096291962929629396294962959629696297962989629996300963019630296303963049630596306963079630896309963109631196312963139631496315963169631796318963199632096321963229632396324963259632696327963289632996330963319633296333963349633596336963379633896339963409634196342963439634496345963469634796348963499635096351963529635396354963559635696357963589635996360963619636296363963649636596366963679636896369963709637196372963739637496375963769637796378963799638096381963829638396384963859638696387963889638996390963919639296393963949639596396963979639896399964009640196402964039640496405964069640796408964099641096411964129641396414964159641696417964189641996420964219642296423964249642596426964279642896429964309643196432964339643496435964369643796438964399644096441964429644396444964459644696447964489644996450964519645296453964549645596456964579645896459964609646196462964639646496465964669646796468964699647096471964729647396474964759647696477964789647996480964819648296483964849648596486964879648896489964909649196492964939649496495964969649796498964999650096501965029650396504965059650696507965089650996510965119651296513965149651596516965179651896519965209652196522965239652496525965269652796528965299653096531965329653396534965359653696537965389653996540965419654296543965449654596546965479654896549965509655196552965539655496555965569655796558965599656096561965629656396564965659656696567965689656996570965719657296573965749657596576965779657896579965809658196582965839658496585965869658796588965899659096591965929659396594965959659696597965989659996600966019660296603966049660596606966079660896609966109661196612966139661496615966169661796618966199662096621966229662396624966259662696627966289662996630966319663296633966349663596636966379663896639966409664196642966439664496645966469664796648966499665096651966529665396654966559665696657966589665996660966619666296663966649666596666966679666896669966709667196672966739667496675966769667796678966799668096681966829668396684966859668696687966889668996690966919669296693966949669596696966979669896699967009670196702967039670496705967069670796708967099671096711967129671396714967159671696717967189671996720967219672296723967249672596726967279672896729967309673196732967339673496735967369673796738967399674096741967429674396744967459674696747967489674996750967519675296753967549675596756967579675896759967609676196762967639676496765967669676796768967699677096771967729677396774967759677696777967789677996780967819678296783967849678596786967879678896789967909679196792967939679496795967969679796798967999680096801968029680396804968059680696807968089680996810968119681296813968149681596816968179681896819968209682196822968239682496825968269682796828968299683096831968329683396834968359683696837968389683996840968419684296843968449684596846968479684896849968509685196852968539685496855968569685796858968599686096861968629686396864968659686696867968689686996870968719687296873968749687596876968779687896879968809688196882968839688496885968869688796888968899689096891968929689396894968959689696897968989689996900969019690296903969049690596906969079690896909969109691196912969139691496915969169691796918969199692096921969229692396924969259692696927969289692996930969319693296933969349693596936969379693896939969409694196942969439694496945969469694796948969499695096951969529695396954969559695696957969589695996960969619696296963969649696596966969679696896969969709697196972969739697496975969769697796978969799698096981969829698396984969859698696987969889698996990969919699296993969949699596996969979699896999970009700197002970039700497005970069700797008970099701097011970129701397014970159701697017970189701997020970219702297023970249702597026970279702897029970309703197032970339703497035970369703797038970399704097041970429704397044970459704697047970489704997050970519705297053970549705597056970579705897059970609706197062970639706497065970669706797068970699707097071970729707397074970759707697077970789707997080970819708297083970849708597086970879708897089970909709197092970939709497095970969709797098970999710097101971029710397104971059710697107971089710997110971119711297113971149711597116971179711897119971209712197122971239712497125971269712797128971299713097131971329713397134971359713697137971389713997140971419714297143971449714597146971479714897149971509715197152971539715497155971569715797158971599716097161971629716397164971659716697167971689716997170971719717297173971749717597176971779717897179971809718197182971839718497185971869718797188971899719097191971929719397194971959719697197971989719997200972019720297203972049720597206972079720897209972109721197212972139721497215972169721797218972199722097221972229722397224972259722697227972289722997230972319723297233972349723597236972379723897239972409724197242972439724497245972469724797248972499725097251972529725397254972559725697257972589725997260972619726297263972649726597266972679726897269972709727197272972739727497275972769727797278972799728097281972829728397284972859728697287972889728997290972919729297293972949729597296972979729897299973009730197302973039730497305973069730797308973099731097311973129731397314973159731697317973189731997320973219732297323973249732597326973279732897329973309733197332973339733497335973369733797338973399734097341973429734397344973459734697347973489734997350973519735297353973549735597356973579735897359973609736197362973639736497365973669736797368973699737097371973729737397374973759737697377973789737997380973819738297383973849738597386973879738897389973909739197392973939739497395973969739797398973999740097401974029740397404974059740697407974089740997410974119741297413974149741597416974179741897419974209742197422974239742497425974269742797428974299743097431974329743397434974359743697437974389743997440974419744297443974449744597446974479744897449974509745197452974539745497455974569745797458974599746097461974629746397464974659746697467974689746997470974719747297473974749747597476974779747897479974809748197482974839748497485974869748797488974899749097491974929749397494974959749697497974989749997500975019750297503975049750597506975079750897509975109751197512975139751497515975169751797518975199752097521975229752397524975259752697527975289752997530975319753297533975349753597536975379753897539975409754197542975439754497545975469754797548975499755097551975529755397554975559755697557975589755997560975619756297563975649756597566975679756897569975709757197572975739757497575975769757797578975799758097581975829758397584975859758697587975889758997590975919759297593975949759597596975979759897599976009760197602976039760497605976069760797608976099761097611976129761397614976159761697617976189761997620976219762297623976249762597626976279762897629976309763197632976339763497635976369763797638976399764097641976429764397644976459764697647976489764997650976519765297653976549765597656976579765897659976609766197662976639766497665976669766797668976699767097671976729767397674976759767697677976789767997680976819768297683976849768597686976879768897689976909769197692976939769497695976969769797698976999770097701977029770397704977059770697707977089770997710977119771297713977149771597716977179771897719977209772197722977239772497725977269772797728977299773097731977329773397734977359773697737977389773997740977419774297743977449774597746977479774897749977509775197752977539775497755977569775797758977599776097761977629776397764977659776697767977689776997770977719777297773977749777597776977779777897779977809778197782977839778497785977869778797788977899779097791977929779397794977959779697797977989779997800978019780297803978049780597806978079780897809978109781197812978139781497815978169781797818978199782097821978229782397824978259782697827978289782997830978319783297833978349783597836978379783897839978409784197842978439784497845978469784797848978499785097851978529785397854978559785697857978589785997860978619786297863978649786597866978679786897869978709787197872978739787497875978769787797878978799788097881978829788397884978859788697887978889788997890978919789297893978949789597896978979789897899979009790197902979039790497905979069790797908979099791097911979129791397914979159791697917979189791997920979219792297923979249792597926979279792897929979309793197932979339793497935979369793797938979399794097941979429794397944979459794697947979489794997950979519795297953979549795597956979579795897959979609796197962979639796497965979669796797968979699797097971979729797397974979759797697977979789797997980979819798297983979849798597986979879798897989979909799197992979939799497995979969799797998979999800098001980029800398004980059800698007980089800998010980119801298013980149801598016980179801898019980209802198022980239802498025980269802798028980299803098031980329803398034980359803698037980389803998040980419804298043980449804598046980479804898049980509805198052980539805498055980569805798058980599806098061980629806398064980659806698067980689806998070980719807298073980749807598076980779807898079980809808198082980839808498085980869808798088980899809098091980929809398094980959809698097980989809998100981019810298103981049810598106981079810898109981109811198112981139811498115981169811798118981199812098121981229812398124981259812698127981289812998130981319813298133981349813598136981379813898139981409814198142981439814498145981469814798148981499815098151981529815398154981559815698157981589815998160981619816298163981649816598166981679816898169981709817198172981739817498175981769817798178981799818098181981829818398184981859818698187981889818998190981919819298193981949819598196981979819898199982009820198202982039820498205982069820798208982099821098211982129821398214982159821698217982189821998220982219822298223982249822598226982279822898229982309823198232982339823498235982369823798238982399824098241982429824398244982459824698247982489824998250982519825298253982549825598256982579825898259982609826198262982639826498265982669826798268982699827098271982729827398274982759827698277982789827998280982819828298283982849828598286982879828898289982909829198292982939829498295982969829798298982999830098301983029830398304983059830698307983089830998310983119831298313983149831598316983179831898319983209832198322983239832498325983269832798328983299833098331983329833398334983359833698337983389833998340983419834298343983449834598346983479834898349983509835198352983539835498355983569835798358983599836098361983629836398364983659836698367983689836998370983719837298373983749837598376983779837898379983809838198382983839838498385983869838798388983899839098391983929839398394983959839698397983989839998400984019840298403984049840598406984079840898409984109841198412984139841498415984169841798418984199842098421984229842398424984259842698427984289842998430984319843298433984349843598436984379843898439984409844198442984439844498445984469844798448984499845098451984529845398454984559845698457984589845998460984619846298463984649846598466984679846898469984709847198472984739847498475984769847798478984799848098481984829848398484984859848698487984889848998490984919849298493984949849598496984979849898499985009850198502985039850498505985069850798508985099851098511985129851398514985159851698517985189851998520985219852298523985249852598526985279852898529985309853198532985339853498535985369853798538985399854098541985429854398544985459854698547985489854998550985519855298553985549855598556985579855898559985609856198562985639856498565985669856798568985699857098571985729857398574985759857698577985789857998580985819858298583985849858598586985879858898589985909859198592985939859498595985969859798598985999860098601986029860398604986059860698607986089860998610986119861298613986149861598616986179861898619986209862198622986239862498625986269862798628986299863098631986329863398634986359863698637986389863998640986419864298643986449864598646986479864898649986509865198652986539865498655986569865798658986599866098661986629866398664986659866698667986689866998670986719867298673986749867598676986779867898679986809868198682986839868498685986869868798688986899869098691986929869398694986959869698697986989869998700987019870298703987049870598706987079870898709987109871198712987139871498715987169871798718987199872098721987229872398724987259872698727987289872998730987319873298733987349873598736987379873898739987409874198742987439874498745987469874798748987499875098751987529875398754987559875698757987589875998760987619876298763987649876598766987679876898769987709877198772987739877498775987769877798778987799878098781987829878398784987859878698787987889878998790987919879298793987949879598796987979879898799988009880198802988039880498805988069880798808988099881098811988129881398814988159881698817988189881998820988219882298823988249882598826988279882898829988309883198832988339883498835988369883798838988399884098841988429884398844988459884698847988489884998850988519885298853988549885598856988579885898859988609886198862988639886498865988669886798868988699887098871988729887398874988759887698877988789887998880988819888298883988849888598886988879888898889988909889198892988939889498895988969889798898988999890098901989029890398904989059890698907989089890998910989119891298913989149891598916989179891898919989209892198922989239892498925989269892798928989299893098931989329893398934989359893698937989389893998940989419894298943989449894598946989479894898949989509895198952989539895498955989569895798958989599896098961989629896398964989659896698967989689896998970989719897298973989749897598976989779897898979989809898198982989839898498985989869898798988989899899098991989929899398994989959899698997989989899999000990019900299003990049900599006990079900899009990109901199012990139901499015990169901799018990199902099021990229902399024990259902699027990289902999030990319903299033990349903599036990379903899039990409904199042990439904499045990469904799048990499905099051990529905399054990559905699057990589905999060990619906299063990649906599066990679906899069990709907199072990739907499075990769907799078990799908099081990829908399084990859908699087990889908999090990919909299093990949909599096990979909899099991009910199102991039910499105991069910799108991099911099111991129911399114991159911699117991189911999120991219912299123991249912599126991279912899129991309913199132991339913499135991369913799138991399914099141991429914399144991459914699147991489914999150991519915299153991549915599156991579915899159991609916199162991639916499165991669916799168991699917099171991729917399174991759917699177991789917999180991819918299183991849918599186991879918899189991909919199192991939919499195991969919799198991999920099201992029920399204992059920699207992089920999210992119921299213992149921599216992179921899219992209922199222992239922499225992269922799228992299923099231992329923399234992359923699237992389923999240992419924299243992449924599246992479924899249992509925199252992539925499255992569925799258992599926099261992629926399264992659926699267992689926999270992719927299273992749927599276992779927899279992809928199282992839928499285992869928799288992899929099291992929929399294992959929699297992989929999300993019930299303993049930599306993079930899309993109931199312993139931499315993169931799318993199932099321993229932399324993259932699327993289932999330993319933299333993349933599336993379933899339993409934199342993439934499345993469934799348993499935099351993529935399354993559935699357993589935999360993619936299363993649936599366993679936899369993709937199372993739937499375993769937799378993799938099381993829938399384993859938699387993889938999390993919939299393993949939599396993979939899399994009940199402994039940499405994069940799408994099941099411994129941399414994159941699417994189941999420994219942299423994249942599426994279942899429994309943199432994339943499435994369943799438994399944099441994429944399444994459944699447994489944999450994519945299453994549945599456994579945899459994609946199462994639946499465994669946799468994699947099471994729947399474994759947699477994789947999480994819948299483994849948599486994879948899489994909949199492994939949499495994969949799498994999950099501995029950399504995059950699507995089950999510995119951299513995149951599516995179951899519995209952199522995239952499525995269952799528995299953099531995329953399534995359953699537995389953999540995419954299543995449954599546995479954899549995509955199552995539955499555995569955799558995599956099561995629956399564995659956699567995689956999570995719957299573995749957599576995779957899579995809958199582995839958499585995869958799588995899959099591995929959399594995959959699597995989959999600996019960299603996049960599606996079960899609996109961199612996139961499615996169961799618996199962099621996229962399624996259962699627996289962999630996319963299633996349963599636996379963899639996409964199642996439964499645996469964799648996499965099651996529965399654996559965699657996589965999660996619966299663996649966599666996679966899669996709967199672996739967499675996769967799678996799968099681996829968399684996859968699687996889968999690996919969299693996949969599696996979969899699997009970199702997039970499705997069970799708997099971099711997129971399714997159971699717997189971999720997219972299723997249972599726997279972899729997309973199732997339973499735997369973799738997399974099741997429974399744997459974699747997489974999750997519975299753997549975599756997579975899759997609976199762997639976499765997669976799768997699977099771997729977399774997759977699777997789977999780997819978299783997849978599786997879978899789997909979199792997939979499795997969979799798997999980099801998029980399804998059980699807998089980999810998119981299813998149981599816998179981899819998209982199822998239982499825998269982799828998299983099831998329983399834998359983699837998389983999840998419984299843998449984599846998479984899849998509985199852998539985499855998569985799858998599986099861998629986399864998659986699867998689986999870998719987299873998749987599876998779987899879998809988199882998839988499885998869988799888998899989099891998929989399894998959989699897998989989999900999019990299903999049990599906999079990899909999109991199912999139991499915999169991799918999199992099921999229992399924999259992699927999289992999930999319993299933999349993599936999379993899939999409994199942999439994499945999469994799948999499995099951999529995399954999559995699957999589995999960999619996299963999649996599966999679996899969999709997199972999739997499975999769997799978999799998099981999829998399984999859998699987999889998999990999919999299993999949999599996999979999899999100000100001100002100003100004100005100006100007100008100009100010100011100012100013100014100015100016100017100018100019100020100021100022100023100024100025100026100027100028100029100030100031100032100033100034100035100036100037100038100039100040100041100042100043100044100045100046100047100048100049100050100051100052100053100054100055100056100057100058100059100060100061100062100063100064100065100066100067100068100069100070100071100072100073100074100075100076100077100078100079100080100081100082100083100084100085100086100087100088100089100090100091100092100093100094100095100096100097100098100099100100100101100102100103100104100105100106100107100108100109100110100111100112100113100114100115100116100117100118100119100120100121100122100123100124100125100126100127100128100129100130100131100132100133100134100135100136100137100138100139100140100141100142100143100144100145100146100147100148100149100150100151100152100153100154100155100156100157100158100159100160100161100162100163100164100165100166100167100168100169100170100171100172100173100174100175100176100177100178100179100180100181100182100183100184100185100186100187100188100189100190100191100192100193100194100195100196100197100198100199100200100201100202100203100204100205100206100207100208100209100210100211100212100213100214100215100216100217100218100219100220100221100222100223100224100225100226100227100228100229100230100231100232100233100234100235100236100237100238100239100240100241100242100243100244100245100246100247100248100249100250100251100252100253100254100255100256100257100258100259100260100261100262100263100264100265100266100267100268100269100270100271100272100273100274100275100276100277100278100279100280100281100282100283100284100285100286100287100288100289100290100291100292100293100294100295100296100297100298100299100300100301100302100303100304100305100306100307100308100309100310100311100312100313100314100315100316100317100318100319100320100321100322100323100324100325100326100327100328100329100330100331100332100333100334100335100336100337100338100339100340100341100342100343100344100345100346100347100348100349100350100351100352100353100354100355100356100357100358100359100360100361100362100363100364100365100366100367100368100369100370100371100372100373100374100375100376100377100378100379100380100381100382100383100384100385100386100387100388100389100390100391100392100393100394100395100396100397100398100399100400100401100402100403100404100405100406100407100408100409100410100411100412100413100414100415100416100417100418100419100420100421100422100423100424100425100426100427100428100429100430100431100432100433100434100435100436100437100438100439100440100441100442100443100444100445100446100447100448100449100450100451100452100453100454100455100456100457100458100459100460100461100462100463100464100465100466100467100468100469100470100471100472100473100474100475100476100477100478100479100480100481100482100483100484100485100486100487100488100489100490100491100492100493100494100495100496100497100498100499100500100501100502100503100504100505100506100507100508100509100510100511100512100513100514100515100516100517100518100519100520100521100522100523100524100525100526100527100528100529100530100531100532100533100534100535100536100537100538100539100540100541100542100543100544100545100546100547100548100549100550100551100552100553100554100555100556100557100558100559100560100561100562100563100564100565100566100567100568100569100570100571100572100573100574100575100576100577100578100579100580100581100582100583100584100585100586100587100588100589100590100591100592100593100594100595100596100597100598100599100600100601100602100603100604100605100606100607100608100609100610100611100612100613100614100615100616100617100618100619100620100621100622100623100624100625100626100627100628100629100630100631100632100633100634100635100636100637100638100639100640100641100642100643100644100645100646100647100648100649100650100651100652100653100654100655100656100657100658100659100660100661100662100663100664100665100666100667100668100669100670100671100672100673100674100675100676100677100678100679100680100681100682100683100684100685100686100687100688100689100690100691100692100693100694100695100696100697100698100699100700100701100702100703100704100705100706100707100708100709100710100711100712100713100714100715100716100717100718100719100720100721100722100723100724100725100726100727100728100729100730100731100732100733100734100735100736100737100738100739100740100741100742100743100744100745100746100747100748100749100750100751100752100753100754100755100756100757100758100759100760100761100762100763100764100765100766100767100768100769100770100771100772100773100774100775100776100777100778100779100780100781100782100783100784100785100786100787100788100789100790100791100792100793100794100795100796100797100798100799100800100801100802100803100804100805100806100807100808100809100810100811100812100813100814100815100816100817100818100819100820100821100822100823100824100825100826100827100828100829100830100831100832100833100834100835100836100837100838100839100840100841100842100843100844100845100846100847100848100849100850100851100852100853100854100855100856100857100858100859100860100861100862100863100864100865100866100867100868100869100870100871100872100873100874100875100876100877100878100879100880100881100882100883100884100885100886100887100888100889100890100891100892100893100894100895100896100897100898100899100900100901100902100903100904100905100906100907100908100909100910100911100912100913100914100915100916100917100918100919100920100921100922100923100924100925100926100927100928100929100930100931100932100933100934100935100936100937100938100939100940100941100942100943100944100945100946100947100948100949100950100951100952100953100954100955100956100957100958100959100960100961100962100963100964100965100966100967100968100969100970100971100972100973100974100975100976100977100978100979100980100981100982100983100984100985100986100987100988100989100990100991100992100993100994100995100996100997100998100999101000101001101002101003101004101005101006101007101008101009101010101011101012101013101014101015101016101017101018101019101020101021101022101023101024101025101026101027101028101029101030101031101032101033101034101035101036101037101038101039101040101041101042101043101044101045101046101047101048101049101050101051101052101053101054101055101056101057101058101059101060101061101062101063101064101065101066101067101068101069101070101071101072101073101074101075101076101077101078101079101080101081101082101083101084101085101086101087101088101089101090101091101092101093101094101095101096101097101098101099101100101101101102101103101104101105101106101107101108101109101110101111101112101113101114101115101116101117101118101119101120101121101122101123101124101125101126101127101128101129101130101131101132101133101134101135101136101137101138101139101140101141101142101143101144101145101146101147101148101149101150101151101152101153101154101155101156101157101158101159101160101161101162101163101164101165101166101167101168101169101170101171101172101173101174101175101176101177101178101179101180101181101182101183101184101185101186101187101188101189101190101191101192101193101194101195101196101197101198101199101200101201101202101203101204101205101206101207101208101209101210101211101212101213101214101215101216101217101218101219101220101221101222101223101224101225101226101227101228101229101230101231101232101233101234101235101236101237101238101239101240101241101242101243101244101245101246101247101248101249101250101251101252101253101254101255101256101257101258101259101260101261101262101263101264101265101266101267101268101269101270101271101272101273101274101275101276101277101278101279101280101281101282101283101284101285101286101287101288101289101290101291101292101293101294101295101296101297101298101299101300101301101302101303101304101305101306101307101308101309101310101311101312101313101314101315101316101317101318101319101320101321101322101323101324101325101326101327101328101329101330101331101332101333101334101335101336101337101338101339101340101341101342101343101344101345101346101347101348101349101350101351101352101353101354101355101356101357101358101359101360101361101362101363101364101365101366101367101368101369101370101371101372101373101374101375101376101377101378101379101380101381101382101383101384101385101386101387101388101389101390101391101392101393101394101395101396101397101398101399101400101401101402101403101404101405101406101407101408101409101410101411101412101413101414101415101416101417101418101419101420101421101422101423101424101425101426101427101428101429101430101431101432101433101434101435101436101437101438101439101440101441101442101443101444101445101446101447101448101449101450101451101452101453101454101455101456101457101458101459101460101461101462101463101464101465101466101467101468101469101470101471101472101473101474101475101476101477101478101479101480101481101482101483101484101485101486101487101488101489101490101491101492101493101494101495101496101497101498101499101500101501101502101503101504101505101506101507101508101509101510101511101512101513101514101515101516101517101518101519101520101521101522101523101524101525101526101527101528101529101530101531101532101533101534101535101536101537101538101539101540101541101542101543101544101545101546101547101548101549101550101551101552101553101554101555101556101557101558101559101560101561101562101563101564101565101566101567101568101569101570101571101572101573101574101575101576101577101578101579101580101581101582101583101584101585101586101587101588101589101590101591101592101593101594101595101596101597101598101599101600101601101602101603101604101605101606101607101608101609101610101611101612101613101614101615101616101617101618101619101620101621101622101623101624101625101626101627101628101629101630101631101632101633101634101635101636101637101638101639101640101641101642101643101644101645101646101647101648101649101650101651101652101653101654101655101656101657101658101659101660101661101662101663101664101665101666101667101668101669101670101671101672101673101674101675101676101677101678101679101680101681101682101683101684101685101686101687101688101689101690101691101692101693101694101695101696101697101698101699101700101701101702101703101704101705101706101707101708101709101710101711101712101713101714101715101716101717101718101719101720101721101722101723101724101725101726101727101728101729101730101731101732101733101734101735101736101737101738101739101740101741101742101743101744101745101746101747101748101749101750101751101752101753101754101755101756101757101758101759101760101761101762101763101764101765101766101767101768101769101770101771101772101773101774101775101776101777101778101779101780101781101782101783101784101785101786101787101788101789101790101791101792101793101794101795101796101797101798101799101800101801101802101803101804101805101806101807101808101809101810101811101812101813101814101815101816101817101818101819101820101821101822101823101824101825101826101827101828101829101830101831101832101833101834101835101836101837101838101839101840101841101842101843101844101845101846101847101848101849101850101851101852101853101854101855101856101857101858101859101860101861101862101863101864101865101866101867101868101869101870101871101872101873101874101875101876101877101878101879101880101881101882101883101884101885101886101887101888101889101890101891101892101893101894101895101896101897101898101899101900101901101902101903101904101905101906101907101908101909101910101911101912101913101914101915101916101917101918101919101920101921101922101923101924101925101926101927101928101929101930101931101932101933101934101935101936101937101938101939101940101941101942101943101944101945101946101947101948101949101950101951101952101953101954101955101956101957101958101959101960101961101962101963101964101965101966101967101968101969101970101971101972101973101974101975101976101977101978101979101980101981101982101983101984101985101986101987101988101989101990101991101992101993101994101995101996101997101998101999102000102001102002102003102004102005102006102007102008102009102010102011102012102013102014102015102016102017102018102019102020102021102022102023102024102025102026102027102028102029102030102031102032102033102034102035102036102037102038102039102040102041102042102043102044102045102046102047102048102049102050102051102052102053102054102055102056102057102058102059102060102061102062102063102064102065102066102067102068102069102070102071102072102073102074102075102076102077102078102079102080102081102082102083102084102085102086102087102088102089102090102091102092102093102094102095102096102097102098102099102100102101102102102103102104102105102106102107102108102109102110102111102112102113102114102115102116102117102118102119102120102121102122102123102124102125102126102127102128102129102130102131102132102133102134102135102136102137102138102139102140102141102142102143102144102145102146102147102148102149102150102151102152102153102154102155102156102157102158102159102160102161102162102163102164102165102166102167102168102169102170102171102172102173102174102175102176102177102178102179102180102181102182102183102184102185102186102187102188102189102190102191102192102193102194102195102196102197102198102199102200102201102202102203102204102205102206102207102208102209102210102211102212102213102214102215102216102217102218102219102220102221102222102223102224102225102226102227102228102229102230102231102232102233102234102235102236102237102238102239102240102241102242102243102244102245102246102247102248102249102250102251102252102253102254102255102256102257102258102259102260102261102262102263102264102265102266102267102268102269102270102271102272102273102274102275102276102277102278102279102280102281102282102283102284102285102286102287102288102289102290102291102292102293102294102295102296102297102298102299102300102301102302102303102304102305102306102307102308102309102310102311102312102313102314102315102316102317102318102319102320102321102322102323102324102325102326102327102328102329102330102331102332102333102334102335102336102337102338102339102340102341102342102343102344102345102346102347102348102349102350102351102352102353102354102355102356102357102358102359102360102361102362102363102364102365102366102367102368102369102370102371102372102373102374102375102376102377102378102379102380102381102382102383102384102385102386102387102388102389102390102391102392102393102394102395102396102397102398102399102400102401102402102403102404102405102406102407102408102409102410102411102412102413102414102415102416102417102418102419102420102421102422102423102424102425102426102427102428102429102430102431102432102433102434102435102436102437102438102439102440102441102442102443102444102445102446102447102448102449102450102451102452102453102454102455102456102457102458102459102460102461102462102463102464102465102466102467102468102469102470102471102472102473102474102475102476102477102478102479102480102481102482102483102484102485102486102487102488102489102490102491102492102493102494102495102496102497102498102499102500102501102502102503102504102505102506102507102508102509102510102511102512102513102514102515102516102517102518102519102520102521102522102523102524102525102526102527102528102529102530102531102532102533102534102535102536102537102538102539102540102541102542102543102544102545102546102547102548102549102550102551102552102553102554102555102556102557102558102559102560102561102562102563102564102565102566102567102568102569102570102571102572102573102574102575102576102577102578102579102580102581102582102583102584102585102586102587102588102589102590102591102592102593102594102595102596102597102598102599102600102601102602102603102604102605102606102607102608102609102610102611102612102613102614102615102616102617102618102619102620102621102622102623102624102625102626102627102628102629102630102631102632102633102634102635102636102637102638102639102640102641102642102643102644102645102646102647102648102649102650102651102652102653102654102655102656102657102658102659102660102661102662102663102664102665102666102667102668102669102670102671102672102673102674102675102676102677102678102679102680102681102682102683102684102685102686102687102688102689102690102691102692102693102694102695102696102697102698102699102700102701102702102703102704102705102706102707102708102709102710102711102712102713102714102715102716102717102718102719102720102721102722102723102724102725102726102727102728102729102730102731102732102733102734102735102736102737102738102739102740102741102742102743102744102745102746102747102748102749102750102751102752102753102754102755102756102757102758102759102760102761102762102763102764102765102766102767102768102769102770102771102772102773102774102775102776102777102778102779102780102781102782102783102784102785102786102787102788102789102790102791102792102793102794102795102796102797102798102799102800102801102802102803102804102805102806102807102808102809102810102811102812102813102814102815102816102817102818102819102820102821102822102823102824102825102826102827102828102829102830102831102832102833102834102835102836102837102838102839102840102841102842102843102844102845102846102847102848102849102850102851102852102853102854102855102856102857102858102859102860102861102862102863102864102865102866102867102868102869102870102871102872102873102874102875102876102877102878102879102880102881102882102883102884102885102886102887102888102889102890102891102892102893102894102895102896102897102898102899102900102901102902102903102904102905102906102907102908102909102910102911102912102913102914102915102916102917102918102919102920102921102922102923102924102925102926102927102928102929102930102931102932102933102934102935102936102937102938102939102940102941102942102943102944102945102946102947102948102949102950102951102952102953102954102955102956102957102958102959102960102961102962102963102964102965102966102967102968102969102970102971102972102973102974102975102976102977102978102979102980102981102982102983102984102985102986102987102988102989102990102991102992102993102994102995102996102997102998102999103000103001103002103003103004103005103006103007103008103009103010103011103012103013103014103015103016103017103018103019103020103021103022103023103024103025103026103027103028103029103030103031103032103033103034103035103036103037103038103039103040103041103042103043103044103045103046103047103048103049103050103051103052103053103054103055103056103057103058103059103060103061103062103063103064103065103066103067103068103069103070103071103072103073103074103075103076103077103078103079103080103081103082103083103084103085103086103087103088103089103090103091103092103093103094103095103096103097103098103099103100103101103102103103103104103105103106103107103108103109103110103111103112103113103114103115103116103117103118103119103120103121103122103123103124103125103126103127103128103129103130103131103132103133103134103135103136103137103138103139103140103141103142103143103144103145103146103147103148103149103150103151103152103153103154103155103156103157103158103159103160103161103162103163103164103165103166103167103168103169103170103171103172103173103174103175103176103177103178103179103180103181103182103183103184103185103186103187103188103189103190103191103192103193103194103195103196103197103198103199103200103201103202103203103204103205103206103207103208103209103210103211103212103213103214103215103216103217103218103219103220103221103222103223103224103225103226103227103228103229103230103231103232103233103234103235103236103237103238103239103240103241103242103243103244103245103246103247103248103249103250103251103252103253103254103255103256103257103258103259103260103261103262103263103264103265103266103267103268103269103270103271103272103273103274103275103276103277103278103279103280103281103282103283103284103285103286103287103288103289103290103291103292103293103294103295103296103297103298103299103300103301103302103303103304103305103306103307103308103309103310103311103312103313103314103315103316103317103318103319103320103321103322103323103324103325103326103327103328103329103330103331103332103333103334103335103336103337103338103339103340103341103342103343103344103345103346103347103348103349103350103351103352103353103354103355103356103357103358103359103360103361103362103363103364103365103366103367103368103369103370103371103372103373103374103375103376103377103378103379103380103381103382103383103384103385103386103387103388103389103390103391103392103393103394103395103396103397103398103399103400103401103402103403103404103405103406103407103408103409103410103411103412103413103414103415103416103417103418103419103420103421103422103423103424103425103426103427103428103429103430103431103432103433103434103435103436103437103438103439103440103441103442103443103444103445103446103447103448103449103450103451103452103453103454103455103456103457103458103459103460103461103462103463103464103465103466103467103468103469103470103471103472103473103474103475103476103477103478103479103480103481103482103483103484103485103486103487103488103489103490103491103492103493103494103495103496103497103498103499103500103501103502103503103504103505103506103507103508103509103510103511103512103513103514103515103516103517103518103519103520103521103522103523103524103525103526103527103528103529103530103531103532103533103534103535103536103537103538103539103540103541103542103543103544103545103546103547103548103549103550103551103552103553103554103555103556103557103558103559103560103561103562103563103564103565103566103567103568103569103570103571103572103573103574103575103576103577103578103579103580103581103582103583103584103585103586103587103588103589103590103591103592103593103594103595103596103597103598103599103600103601103602103603103604103605103606103607103608103609103610103611103612103613103614103615103616103617103618103619103620103621103622103623103624103625103626103627103628103629103630103631103632103633103634103635103636103637103638103639103640103641103642103643103644103645103646103647103648103649103650103651103652103653103654103655103656103657103658103659103660103661103662103663103664103665103666103667103668103669103670103671103672103673103674103675103676103677103678103679103680103681103682103683103684103685103686103687103688103689103690103691103692103693103694103695103696103697103698103699103700103701103702103703103704103705103706103707103708103709103710103711103712103713103714103715103716103717103718103719103720103721103722103723103724103725103726103727103728103729103730103731103732103733103734103735103736103737103738103739103740103741103742103743103744103745103746103747103748103749103750103751103752103753103754103755103756103757103758103759103760103761103762103763103764103765103766103767103768103769103770103771103772103773103774103775103776103777103778103779103780103781103782103783103784103785103786103787103788103789103790103791103792103793103794103795103796103797103798103799103800103801103802103803103804103805103806103807103808103809103810103811103812103813103814103815103816103817103818103819103820103821103822103823103824103825103826103827103828103829103830103831103832103833103834103835103836103837103838103839103840103841103842103843103844103845103846103847103848103849103850103851103852103853103854103855103856103857103858103859103860103861103862103863103864103865103866103867103868103869103870103871103872103873103874103875103876103877103878103879103880103881103882103883103884103885103886103887103888103889103890103891103892103893103894103895103896103897103898103899103900103901103902103903103904103905103906103907103908103909103910103911103912103913103914103915103916103917103918103919103920103921103922103923103924103925103926103927103928103929103930103931103932103933103934103935103936103937103938103939103940103941103942103943103944103945103946103947103948103949103950103951103952103953103954103955103956103957103958103959103960103961103962103963103964103965103966103967103968103969103970103971103972103973103974103975103976103977103978103979103980103981103982103983103984103985103986103987103988103989103990103991103992103993103994103995103996103997103998103999104000104001104002104003104004104005104006104007104008104009104010104011104012104013104014104015104016104017104018104019104020104021104022104023104024104025104026104027104028104029104030104031104032104033104034104035104036104037104038104039104040104041104042104043104044104045104046104047104048104049104050104051104052104053104054104055104056104057104058104059104060104061104062104063104064104065104066104067104068104069104070104071104072104073104074104075104076104077104078104079104080104081104082104083104084104085104086104087104088104089104090104091104092104093104094104095104096104097104098104099104100104101104102104103104104104105104106104107104108104109104110104111104112104113104114104115104116104117104118104119104120104121104122104123104124104125104126104127104128104129104130104131104132104133104134104135104136104137104138104139104140104141104142104143104144104145104146104147104148104149104150104151104152104153104154104155104156104157104158104159104160104161104162104163104164104165104166104167104168104169104170104171104172104173104174104175104176104177104178104179104180104181104182104183104184104185104186104187104188104189104190104191104192104193104194104195104196104197104198104199104200104201104202104203104204104205104206104207104208104209104210104211104212104213104214104215104216104217104218104219104220104221104222104223104224104225104226104227104228104229104230104231104232104233104234104235104236104237104238104239104240104241104242104243104244104245104246104247104248104249104250104251104252104253104254104255104256104257104258104259104260104261104262104263104264104265104266104267104268104269104270104271104272104273104274104275104276104277104278104279104280104281104282104283104284104285104286104287104288104289104290104291104292104293104294104295104296104297104298104299104300104301104302104303104304104305104306104307104308104309104310104311104312104313104314104315104316104317104318104319104320104321104322104323104324104325104326104327104328104329104330104331104332104333104334104335104336104337104338104339104340104341104342104343104344104345104346104347104348104349104350104351104352104353104354104355104356104357104358104359104360104361104362104363104364104365104366104367104368104369104370104371104372104373104374104375104376104377104378104379104380104381104382104383104384104385104386104387104388104389104390104391104392104393104394104395104396104397104398104399104400104401104402104403104404104405104406104407104408104409104410104411104412104413104414104415104416104417104418104419104420104421104422104423104424104425104426104427104428104429104430104431104432104433104434104435104436104437104438104439104440104441104442104443104444104445104446104447104448104449104450104451104452104453104454104455104456104457104458104459104460104461104462104463104464104465104466104467104468104469104470104471104472104473104474104475104476104477104478104479104480104481104482104483104484104485104486104487104488104489104490104491104492104493104494104495104496104497104498104499104500104501104502104503104504104505104506104507104508104509104510104511104512104513104514104515104516104517104518104519104520104521104522104523104524104525104526104527104528104529104530104531104532104533104534104535104536104537104538104539104540104541104542104543104544104545104546104547104548104549104550104551104552104553104554104555104556104557104558104559104560104561104562104563104564104565104566104567104568104569104570104571104572104573104574104575104576104577104578104579104580104581104582104583104584104585104586104587104588104589104590104591104592104593104594104595104596104597104598104599104600104601104602104603104604104605104606104607104608104609104610104611104612104613104614104615104616104617104618104619104620104621104622104623104624104625104626104627104628104629104630104631104632104633104634104635104636104637104638104639104640104641104642104643104644104645104646104647104648104649104650104651104652104653104654104655104656104657104658104659104660104661104662104663104664104665104666104667104668104669104670104671104672104673104674104675104676104677104678104679104680104681104682104683104684104685104686104687104688104689104690104691104692104693104694104695104696104697104698104699104700104701104702104703104704104705104706104707104708104709104710104711104712104713104714104715104716104717104718104719104720104721104722104723104724104725104726104727104728104729104730104731104732104733104734104735104736104737104738104739104740104741104742104743104744104745104746104747104748104749104750104751104752104753104754104755104756104757104758104759104760104761104762104763104764104765104766104767104768104769104770104771104772104773104774104775104776104777104778104779104780104781104782104783104784104785104786104787104788104789104790104791104792104793104794104795104796104797104798104799104800104801104802104803104804104805104806104807104808104809104810104811104812104813104814104815104816104817104818104819104820104821104822104823104824104825104826104827104828104829104830104831104832104833104834104835104836104837104838104839104840104841104842104843104844104845104846104847104848104849104850104851104852104853104854104855104856104857104858104859104860104861104862104863104864104865104866104867104868104869104870104871104872104873104874104875104876104877104878104879104880104881104882104883104884104885104886104887104888104889104890104891104892104893104894104895104896104897104898104899104900104901104902104903104904104905104906104907104908104909104910104911104912104913104914104915104916104917104918104919104920104921104922104923104924104925104926104927104928104929104930104931104932104933104934104935104936104937104938104939104940104941104942104943104944104945104946104947104948104949104950104951104952104953104954104955104956104957104958104959104960104961104962104963104964104965104966104967104968104969104970104971104972104973104974104975104976104977104978104979104980104981104982104983104984104985104986104987104988104989104990104991104992104993104994104995104996104997104998104999105000105001105002105003105004105005105006105007105008105009105010105011105012105013105014105015105016105017105018105019105020105021105022105023105024105025105026105027105028105029105030105031105032105033105034105035105036105037105038105039105040105041105042105043105044105045105046105047105048105049105050105051105052105053105054105055105056105057105058105059105060105061105062105063105064105065105066105067105068105069105070105071105072105073105074105075105076105077105078105079105080105081105082105083105084105085105086105087105088105089105090105091105092105093105094105095105096105097105098105099105100105101105102105103105104105105105106105107105108105109105110105111105112105113105114105115105116105117105118105119105120105121105122105123105124105125105126105127105128105129105130105131105132105133105134105135105136105137105138105139105140105141105142105143105144105145105146105147105148105149105150105151105152105153105154105155105156105157105158105159105160105161105162105163105164105165105166105167105168105169105170105171105172105173105174105175105176105177105178105179105180105181105182105183105184105185105186105187105188105189105190105191105192105193105194105195105196105197105198105199105200105201105202105203105204105205105206105207105208105209105210105211105212105213105214105215105216105217105218105219105220105221105222105223105224105225105226105227105228105229105230105231105232105233105234105235105236105237105238105239105240105241105242105243105244105245105246105247105248105249105250105251105252105253105254105255105256105257105258105259105260105261105262105263105264105265105266105267105268105269105270105271105272105273105274105275105276105277105278105279105280105281105282105283105284105285105286105287105288105289105290105291105292105293105294105295105296105297105298105299105300105301105302105303105304105305105306105307105308105309105310105311105312105313105314105315105316105317105318105319105320105321105322105323105324105325105326105327105328105329105330105331105332105333105334105335105336105337105338105339105340105341105342105343105344105345105346105347105348105349105350105351105352105353105354105355105356105357105358105359105360105361105362105363105364105365105366105367105368105369105370105371105372105373105374105375105376105377105378105379105380105381105382105383105384105385105386105387105388105389105390105391105392105393105394105395105396105397105398105399105400105401105402105403105404105405105406105407105408105409105410105411105412105413105414105415105416105417105418105419105420105421105422105423105424105425105426105427105428105429105430105431105432105433105434105435105436105437105438105439105440105441105442105443105444105445105446105447105448105449105450105451105452105453105454105455105456105457105458105459105460105461105462105463105464105465105466105467105468105469105470105471105472105473105474105475105476105477105478105479105480105481105482105483105484105485105486105487105488105489105490105491105492105493105494105495105496105497105498105499105500105501105502105503105504105505105506105507105508105509105510105511105512105513105514105515105516105517105518105519105520105521105522105523105524105525105526105527105528105529105530105531105532105533105534105535105536105537105538105539105540105541105542105543105544105545105546105547105548105549105550105551105552105553105554105555105556105557105558105559105560105561105562105563105564105565105566105567105568105569105570105571105572105573105574105575105576105577105578105579105580105581105582105583105584105585105586105587105588105589105590105591105592105593105594105595105596105597105598105599105600105601105602105603105604105605105606105607105608105609105610105611105612105613105614105615105616105617105618105619105620105621105622105623105624105625105626105627105628105629105630105631105632105633105634105635105636105637105638105639105640105641105642105643105644105645105646105647105648105649105650105651105652105653105654105655105656105657105658105659105660105661105662105663105664105665105666105667105668105669105670105671105672105673105674105675105676105677105678105679105680105681105682105683105684105685105686105687105688105689105690105691105692105693105694105695105696105697105698105699105700105701105702105703105704105705105706105707105708105709105710105711105712105713105714105715105716105717105718105719105720105721105722105723105724105725105726105727105728105729105730105731105732105733105734105735105736105737105738105739105740105741105742105743105744105745105746105747105748105749105750105751105752105753105754105755105756105757105758105759105760105761105762105763105764105765105766105767105768105769105770105771105772105773105774105775105776105777105778105779105780105781105782105783105784105785105786105787105788105789105790105791105792105793105794105795105796105797105798105799105800105801105802105803105804105805105806105807105808105809105810105811105812105813105814105815105816105817105818105819105820105821105822105823105824105825105826105827105828105829105830105831105832105833105834105835105836105837105838105839105840105841105842105843105844105845105846105847105848105849105850105851105852105853105854105855105856105857105858105859105860105861105862105863105864105865105866105867105868105869105870105871105872105873105874105875105876105877105878105879105880105881105882105883105884105885105886105887105888105889105890105891105892105893105894105895105896105897105898105899105900105901105902105903105904105905105906105907105908105909105910105911105912105913105914105915105916105917105918105919105920105921105922105923105924105925105926105927105928105929105930105931105932105933105934105935105936105937105938105939105940105941105942105943105944105945105946105947105948105949105950105951105952105953105954105955105956105957105958105959105960105961105962105963105964105965105966105967105968105969105970105971105972105973105974105975105976105977105978105979105980105981105982105983105984105985105986105987105988105989105990105991105992105993105994105995105996105997105998105999106000106001106002106003106004106005106006106007106008106009106010106011106012106013106014106015106016106017106018106019106020106021106022106023106024106025106026106027106028106029106030106031106032106033106034106035106036106037106038106039106040106041106042106043106044106045106046106047106048106049106050106051106052106053106054106055106056106057106058106059106060106061106062106063106064106065106066106067106068106069106070106071106072106073106074106075106076106077106078106079106080106081106082106083106084106085106086106087106088106089106090106091106092106093106094106095106096106097106098106099106100106101106102106103106104106105106106106107106108106109106110106111106112106113106114106115106116106117106118106119106120106121106122106123106124106125106126106127106128106129106130106131106132106133106134106135106136106137106138106139106140106141106142106143106144106145106146106147106148106149106150106151106152106153106154106155106156106157106158106159106160106161106162106163106164106165106166106167106168106169106170106171106172106173106174106175106176106177106178106179106180106181106182106183106184106185106186106187106188106189106190106191106192106193106194106195106196106197106198106199106200106201106202106203106204106205106206106207106208106209106210106211106212106213106214106215106216106217106218106219106220106221106222106223106224106225106226106227106228106229106230106231106232106233106234106235106236106237106238106239106240106241106242106243106244106245106246106247106248106249106250106251106252106253106254106255106256106257106258106259106260106261106262106263106264106265106266106267106268106269106270106271106272106273106274106275106276106277106278106279106280106281106282106283106284106285106286106287106288106289106290106291106292106293106294106295106296106297106298106299106300106301106302106303106304106305106306106307106308106309106310106311106312106313106314106315106316106317106318106319106320106321106322106323106324106325106326106327106328106329106330106331106332106333106334106335106336106337106338106339106340106341106342106343106344106345106346106347106348106349106350106351106352106353106354106355106356106357106358106359106360106361106362106363106364106365106366106367106368106369106370106371106372106373106374106375106376106377106378106379106380106381106382106383106384106385106386106387106388106389106390106391106392106393106394106395106396106397106398106399106400106401106402106403106404106405106406106407106408106409106410106411106412106413106414106415106416106417106418106419106420106421106422106423106424106425106426106427106428106429106430106431106432106433106434106435106436106437106438106439106440106441106442106443106444106445106446106447106448106449106450106451106452106453106454106455106456106457106458106459106460106461106462106463106464106465106466106467106468106469106470106471106472106473106474106475106476106477106478106479106480106481106482106483106484106485106486106487106488106489106490106491106492106493106494106495106496106497106498106499106500106501106502106503106504106505106506106507106508106509106510106511106512106513106514106515106516106517106518106519106520106521106522106523106524106525106526106527106528106529106530106531106532106533106534106535106536106537106538106539106540106541106542106543106544106545106546106547106548106549106550106551106552106553106554106555106556106557106558106559106560106561106562106563106564106565106566106567106568106569106570106571106572106573106574106575106576106577106578106579106580106581106582106583106584106585106586106587106588106589106590106591106592106593106594106595106596106597106598106599106600106601106602106603106604106605106606106607106608106609106610106611106612106613106614106615106616106617106618106619106620106621106622106623106624106625106626106627106628106629106630106631106632106633106634106635106636106637106638106639106640106641106642106643106644106645106646106647106648106649106650106651106652106653106654106655106656106657106658106659106660106661106662106663106664106665106666106667106668106669106670106671106672106673106674106675106676106677106678106679106680106681106682106683106684106685106686106687106688106689106690106691106692106693106694106695106696106697106698106699106700106701106702106703106704106705106706106707106708106709106710106711106712106713106714106715106716106717106718106719106720106721106722106723106724106725106726106727106728106729106730106731106732106733106734106735106736106737106738106739106740106741106742106743106744106745106746106747106748106749106750106751106752106753106754106755106756106757106758106759106760106761106762106763106764106765106766106767106768106769106770106771106772106773106774106775106776106777106778106779106780106781106782106783106784106785106786106787106788106789106790106791106792106793106794106795106796106797106798106799106800106801106802106803106804106805106806106807106808106809106810106811106812106813106814106815106816106817106818106819106820106821106822106823106824106825106826106827106828106829106830106831106832106833106834106835106836106837106838106839106840106841106842106843106844106845106846106847106848106849106850106851106852106853106854106855106856106857106858106859106860106861106862106863106864106865106866106867106868106869106870106871106872106873106874106875106876106877106878106879106880106881106882106883106884106885106886106887106888106889106890106891106892106893106894106895106896106897106898106899106900106901106902106903106904106905106906106907106908106909106910106911106912106913106914106915106916106917106918106919106920106921106922106923106924106925106926106927106928106929106930106931106932106933106934106935106936106937106938106939106940106941106942106943106944106945106946106947106948106949106950106951106952106953106954106955106956106957106958106959106960106961106962106963106964106965106966106967106968106969106970106971106972106973106974106975106976106977106978106979106980106981106982106983106984106985106986106987106988106989106990106991106992106993106994106995106996106997106998106999107000107001107002107003107004107005107006107007107008107009107010107011107012107013107014107015107016107017107018107019107020107021107022107023107024107025107026107027107028107029107030107031107032107033107034107035107036107037107038107039107040107041107042107043107044107045107046107047107048107049107050107051107052107053107054107055107056107057107058107059107060107061107062107063107064107065107066107067107068107069107070107071107072107073107074107075107076107077107078107079107080107081107082107083107084107085107086107087107088107089107090107091107092107093107094107095107096107097107098107099107100107101107102107103107104107105107106107107107108107109107110107111107112107113107114107115107116107117107118107119107120107121107122107123107124107125107126107127107128107129107130107131107132107133107134107135107136107137107138107139107140107141107142107143107144107145107146107147107148107149107150107151107152107153107154107155107156107157107158107159107160107161107162107163107164107165107166107167107168107169107170107171107172107173107174107175107176107177107178107179107180107181107182107183107184107185107186107187107188107189107190107191107192107193107194107195107196107197107198107199107200107201107202107203107204107205107206107207107208107209107210107211107212107213107214107215107216107217107218107219107220107221107222107223107224107225107226107227107228107229107230107231107232107233107234107235107236107237107238107239107240107241107242107243107244107245107246107247107248107249107250107251107252107253107254107255107256107257107258107259107260107261107262107263107264107265107266107267107268107269107270107271107272107273107274107275107276107277107278107279107280107281107282107283107284107285107286107287107288107289107290107291107292107293107294107295107296107297107298107299107300107301107302107303107304107305107306107307107308107309107310107311107312107313107314107315107316107317107318107319107320107321107322107323107324107325107326107327107328107329107330107331107332107333107334107335107336107337107338107339107340107341107342107343107344107345107346107347107348107349107350107351107352107353107354107355107356107357107358107359107360107361107362107363107364107365107366107367107368107369107370107371107372107373107374107375107376107377107378107379107380107381107382107383107384107385107386107387107388107389107390107391107392107393107394107395107396107397107398107399107400107401107402107403107404107405107406107407107408107409107410107411107412107413107414107415107416107417107418107419107420107421107422107423107424107425107426107427107428107429107430107431107432107433107434107435107436107437107438107439107440107441107442107443107444107445107446107447107448107449107450107451107452107453107454107455107456107457107458107459107460107461107462107463107464107465107466107467107468107469107470107471107472107473107474107475107476107477107478107479107480107481107482107483107484107485107486107487107488107489107490107491107492107493107494107495107496107497107498107499107500107501107502107503107504107505107506107507107508107509107510107511107512107513107514107515107516107517107518107519107520107521107522107523107524107525107526107527107528107529107530107531107532107533107534107535107536107537107538107539107540107541107542107543107544107545107546107547107548107549107550107551107552107553107554107555107556107557107558107559107560107561107562107563107564107565107566107567107568107569107570107571107572107573107574107575107576107577107578107579107580107581107582107583107584107585107586107587107588107589107590107591107592107593107594107595107596107597107598107599107600107601107602107603107604107605107606107607107608107609107610107611107612107613107614107615107616107617107618107619107620107621107622107623107624107625107626107627107628107629107630107631107632107633107634107635107636107637107638107639107640107641107642107643107644107645107646107647107648107649107650107651107652107653107654107655107656107657107658107659107660107661107662107663107664107665107666107667107668107669107670107671107672107673107674107675107676107677107678107679107680107681107682107683107684107685107686107687107688107689107690107691107692107693107694107695107696107697107698107699107700107701107702107703107704107705107706107707107708107709107710107711107712107713107714107715107716107717107718107719107720107721107722107723107724107725107726107727107728107729107730107731107732107733107734107735107736107737107738107739107740107741107742107743107744107745107746107747107748107749107750107751107752107753107754107755107756107757107758107759107760107761107762107763107764107765107766107767107768107769107770107771107772107773107774107775107776107777107778107779107780107781107782107783107784107785107786107787107788107789107790107791107792107793107794107795107796107797107798107799107800107801107802107803107804107805107806107807107808107809107810107811107812107813107814107815107816107817107818107819107820107821107822107823107824107825107826107827107828107829107830107831107832107833107834107835107836107837107838107839107840107841107842107843107844107845107846107847107848107849107850107851107852107853107854107855107856107857107858107859107860107861107862107863107864107865107866107867107868107869107870107871107872107873107874107875107876107877107878107879107880107881107882107883107884107885107886107887107888107889107890107891107892107893107894107895107896107897107898107899107900107901107902107903107904107905107906107907107908107909107910107911107912107913107914107915107916107917107918107919107920107921107922107923107924107925107926107927107928107929107930107931107932107933107934107935107936107937107938107939107940107941107942107943107944107945107946107947107948107949107950107951107952107953107954107955107956107957107958107959107960107961107962107963107964107965107966107967107968107969107970107971107972107973107974107975107976107977107978107979107980107981107982107983107984107985107986107987107988107989107990107991107992107993107994107995107996107997107998107999108000108001108002108003108004108005108006108007108008108009108010108011108012108013108014108015108016108017108018108019108020108021108022108023108024108025108026108027108028108029108030108031108032108033108034108035108036108037108038108039108040108041108042108043108044108045108046108047108048108049108050108051108052108053108054108055108056108057108058108059108060108061108062108063108064108065108066108067108068108069108070108071108072108073108074108075108076108077108078108079108080108081108082108083108084108085108086108087108088108089108090108091108092108093108094108095108096108097108098108099108100108101108102108103108104108105108106108107108108108109108110108111108112108113108114108115108116108117108118108119108120108121108122108123108124108125108126108127108128108129108130108131108132108133108134108135108136108137108138108139108140108141108142108143108144108145108146108147108148108149108150108151108152108153108154108155108156108157108158108159108160108161108162108163108164108165108166108167108168108169108170108171108172108173108174108175108176108177108178108179108180108181108182108183108184108185108186108187108188108189108190108191108192108193108194108195108196108197108198108199108200108201108202108203108204108205108206108207108208108209108210108211108212108213108214108215108216108217108218108219108220108221108222108223108224108225108226108227108228108229108230108231108232108233108234108235108236108237108238108239108240108241108242108243108244108245108246108247108248108249108250108251108252108253108254108255108256108257108258108259108260108261108262108263108264108265108266108267108268108269108270108271108272108273108274108275108276108277108278108279108280108281108282108283108284108285108286108287108288108289108290108291108292108293108294108295108296108297108298108299108300108301108302108303108304108305108306108307108308108309108310108311108312108313108314108315108316108317108318108319108320108321108322108323108324108325108326108327108328108329108330108331108332108333108334108335108336108337108338108339108340108341108342108343108344108345108346108347108348108349108350108351108352108353108354108355108356108357108358108359108360108361108362108363108364108365108366108367108368108369108370108371108372108373108374108375108376108377108378108379108380108381108382108383108384108385108386108387108388108389108390108391108392108393108394108395108396108397108398108399108400108401108402108403108404108405108406108407108408108409108410108411108412108413108414108415108416108417108418108419108420108421108422108423108424108425108426108427108428108429108430108431108432108433108434108435108436108437108438108439108440108441108442108443108444108445108446108447108448108449108450108451108452108453108454108455108456108457108458108459108460108461108462108463108464108465108466108467108468108469108470108471108472108473108474108475108476108477108478108479108480108481108482108483108484108485108486108487108488108489108490108491108492108493108494108495108496108497108498108499108500108501108502108503108504108505108506108507108508108509108510108511108512108513108514108515108516108517108518108519108520108521108522108523108524108525108526108527108528108529108530108531108532108533108534108535108536108537108538108539108540108541108542108543108544108545108546108547108548108549108550108551108552108553108554108555108556108557108558108559108560108561108562108563108564108565108566108567108568108569108570108571108572108573108574108575108576108577108578108579108580108581108582108583108584108585108586108587108588108589108590108591108592108593108594108595108596108597108598108599108600108601108602108603108604108605108606108607108608108609108610108611108612108613108614108615108616108617108618108619108620108621108622108623108624108625108626108627108628108629108630108631108632108633108634108635108636108637108638108639108640108641108642108643108644108645108646108647108648108649108650108651108652108653108654108655108656108657108658108659108660108661108662108663108664108665108666108667108668108669108670108671108672108673108674108675108676108677108678108679108680108681108682108683108684108685108686108687108688108689108690108691108692108693108694108695108696108697108698108699108700108701108702108703108704108705108706108707108708108709108710108711108712108713108714108715108716108717108718108719108720108721108722108723108724108725108726108727108728108729108730108731108732108733108734108735108736108737108738108739108740108741108742108743108744108745108746108747108748108749108750108751108752108753108754108755108756108757108758108759108760108761108762108763108764108765108766108767108768108769108770108771108772108773108774108775108776108777108778108779108780108781108782108783108784108785108786108787108788108789108790108791108792108793108794108795108796108797108798108799108800108801108802108803108804108805108806108807108808108809108810108811108812108813108814108815108816108817108818108819108820108821108822108823108824108825108826108827108828108829108830108831108832108833108834108835108836108837108838108839108840108841108842108843108844108845108846108847108848108849108850108851108852108853108854108855108856108857108858108859108860108861108862108863108864108865108866108867108868108869108870108871108872108873108874108875108876108877108878108879108880108881108882108883108884108885108886108887108888108889108890108891108892108893108894108895108896108897108898108899108900108901108902108903108904108905108906108907108908108909108910108911108912108913108914108915108916108917108918108919108920108921108922108923108924108925108926108927108928108929108930108931108932108933108934108935108936108937108938108939108940108941108942108943108944108945108946108947108948108949108950108951108952108953108954108955108956108957108958108959108960108961108962108963108964108965108966108967108968108969108970108971108972108973108974108975108976108977108978108979108980108981108982108983108984108985108986108987108988108989108990108991108992108993108994108995108996108997108998108999109000109001109002109003109004109005109006109007109008109009109010109011109012109013109014109015109016109017109018109019109020109021109022109023109024109025109026109027109028109029109030109031109032109033109034109035109036109037109038109039109040109041109042109043109044109045109046109047109048109049109050109051109052109053109054109055109056109057109058109059109060109061109062109063109064109065109066109067109068109069109070109071109072109073109074109075109076109077109078109079109080109081109082109083109084109085109086109087109088109089109090109091109092109093109094109095109096109097109098109099109100109101109102109103109104109105109106109107109108109109109110109111109112109113109114109115109116109117109118109119109120109121109122109123109124109125109126109127109128109129109130109131109132109133109134109135109136109137109138109139109140109141109142109143109144109145109146109147109148109149109150109151109152109153109154109155109156109157109158109159109160109161109162109163109164109165109166109167109168109169109170109171109172109173109174109175109176109177109178109179109180109181109182109183109184109185109186109187109188109189109190109191109192109193109194109195109196109197109198109199109200109201109202109203109204109205109206109207109208109209109210109211109212109213109214109215109216109217109218109219109220109221109222109223109224109225109226109227109228109229109230109231109232109233109234109235109236109237109238109239109240109241109242109243109244109245109246109247109248109249109250109251109252109253109254109255109256109257109258109259109260109261109262109263109264109265109266109267109268109269109270109271109272109273109274109275109276109277109278109279109280109281109282109283109284109285109286109287109288109289109290109291109292109293109294109295109296109297109298109299109300109301109302109303109304109305109306109307109308109309109310109311109312109313109314109315109316109317109318109319109320109321109322109323109324109325109326109327109328109329109330109331109332109333109334109335109336109337109338109339109340109341109342109343109344109345109346109347109348109349109350109351109352109353109354109355109356109357109358109359109360109361109362109363109364109365109366109367109368109369109370109371109372109373109374109375109376109377109378109379109380109381109382109383109384109385109386109387109388109389109390109391109392109393109394109395109396109397109398109399109400109401109402109403109404109405109406109407109408109409109410109411109412109413109414109415109416109417109418109419109420109421109422109423109424109425109426109427109428109429109430109431109432109433109434109435109436109437109438109439109440109441109442109443109444109445109446109447109448109449109450109451109452109453109454109455109456109457109458109459109460109461109462109463109464109465109466109467109468109469109470109471109472109473109474109475109476109477109478109479109480109481109482109483109484109485109486109487109488109489109490109491109492109493109494109495109496109497109498109499109500109501109502109503109504109505109506109507109508109509109510109511109512109513109514109515109516109517109518109519109520109521109522109523109524109525109526109527109528109529109530109531109532109533109534109535109536109537109538109539109540109541109542109543109544109545109546109547109548109549109550109551109552109553109554109555109556109557109558109559109560109561109562109563109564109565109566109567109568109569109570109571109572109573109574109575109576109577109578109579109580109581109582109583109584109585109586109587109588109589109590109591109592109593109594109595109596109597109598109599109600109601109602109603109604109605109606109607109608109609109610109611109612109613109614109615109616109617109618109619109620109621109622109623109624109625109626109627109628109629109630109631109632109633109634109635109636109637109638109639109640109641109642109643109644109645109646109647109648109649109650109651109652109653109654109655109656109657109658109659109660109661109662109663109664109665109666109667109668109669109670109671109672109673109674109675109676109677109678109679109680109681109682109683109684109685109686109687109688109689109690109691109692109693109694109695109696109697109698109699109700109701109702109703109704109705109706109707109708109709109710109711109712109713109714109715109716109717109718109719109720109721109722109723109724109725109726109727109728109729109730109731109732109733109734109735109736109737109738109739109740109741109742109743109744109745109746109747109748109749109750109751109752109753109754109755109756109757109758109759109760109761109762109763109764109765109766109767109768109769109770109771109772109773109774109775109776109777109778109779109780109781109782109783109784109785109786109787109788109789109790109791109792109793109794109795109796109797109798109799109800109801109802109803109804109805109806109807109808109809109810109811109812109813109814109815109816109817109818109819109820109821109822109823109824109825109826109827109828109829109830109831109832109833109834109835109836109837109838109839109840109841109842109843109844109845109846109847109848109849109850109851109852109853109854109855109856109857109858109859109860109861109862109863109864109865109866109867109868109869109870109871109872109873109874109875109876109877109878109879109880109881109882109883109884109885109886109887109888109889109890109891109892109893109894109895109896109897109898109899109900109901109902109903109904109905109906109907109908109909109910109911109912109913109914109915109916109917109918109919109920109921109922109923109924109925109926109927109928109929109930109931109932109933109934109935109936109937109938109939109940109941109942109943109944109945109946109947109948109949109950109951109952109953109954109955109956109957109958109959109960109961109962109963109964109965109966109967109968109969109970109971109972109973109974109975109976109977109978109979109980109981109982109983109984109985109986109987109988109989109990109991109992109993109994109995109996109997109998109999110000110001110002110003110004110005110006110007110008110009110010110011110012110013110014110015110016110017110018110019110020110021110022110023110024110025110026110027110028110029110030110031110032110033110034110035110036110037110038110039110040110041110042110043110044110045110046110047110048110049110050110051110052110053110054110055110056110057110058110059110060110061110062110063110064110065110066110067110068110069110070110071110072110073110074110075110076110077110078110079110080110081110082110083110084110085110086110087110088110089110090110091110092110093110094110095110096110097110098110099110100110101110102110103110104110105110106110107110108110109110110110111110112110113110114110115110116110117110118110119110120110121110122110123110124110125110126110127110128110129110130110131110132110133110134110135110136110137110138110139110140110141110142110143110144110145110146110147110148110149110150110151110152110153110154110155110156110157110158110159110160110161110162110163110164110165110166110167110168110169110170110171110172110173110174110175110176110177110178110179110180110181110182110183110184110185110186110187110188110189110190110191110192110193110194110195110196110197110198110199110200110201110202110203110204110205110206110207110208110209110210110211110212110213110214110215110216110217110218110219110220110221110222110223110224110225110226110227110228110229110230110231110232110233110234110235110236110237110238110239110240110241110242110243110244110245110246110247110248110249110250110251110252110253110254110255110256110257110258110259110260110261110262110263110264110265110266110267110268110269110270110271110272110273110274110275110276110277110278110279110280110281110282110283110284110285110286110287110288110289110290110291110292110293110294110295110296110297110298110299110300110301110302110303110304110305110306110307110308110309110310110311110312110313110314110315110316110317110318110319110320110321110322110323110324110325110326110327110328110329110330110331110332110333110334110335110336110337110338110339110340110341110342110343110344110345110346110347110348110349110350110351110352110353110354110355110356110357110358110359110360110361110362110363110364110365110366110367110368110369110370110371110372110373110374110375110376110377110378110379110380110381110382110383110384110385110386110387110388110389110390110391110392110393110394110395110396110397110398110399110400110401110402110403110404110405110406110407110408110409110410110411110412110413110414110415110416110417110418110419110420110421110422110423110424110425110426110427110428110429110430110431110432110433110434110435110436110437110438110439110440110441110442110443110444110445110446110447110448110449110450110451110452110453110454110455110456110457110458110459110460110461110462110463110464110465110466110467110468110469110470110471110472110473110474110475110476110477110478110479110480110481110482110483110484110485110486110487110488110489110490110491110492110493110494110495110496110497110498110499110500110501110502110503110504110505110506110507110508110509110510110511110512110513110514110515110516110517110518110519110520110521110522110523110524110525110526110527110528110529110530110531110532110533110534110535110536110537110538110539110540110541110542110543110544110545110546110547110548110549110550110551110552110553110554110555110556110557110558110559110560110561110562110563110564110565110566110567110568110569110570110571110572110573110574110575110576110577110578110579110580110581110582110583110584110585110586110587110588110589110590110591110592110593110594110595110596110597110598110599110600110601110602110603110604110605110606110607110608110609110610110611110612110613110614110615110616110617110618110619110620110621110622110623110624110625110626110627110628110629110630110631110632110633110634110635110636110637110638110639110640110641110642110643110644110645110646110647110648110649110650110651110652110653110654110655110656110657110658110659110660110661110662110663110664110665110666110667110668110669110670110671110672110673110674110675110676110677110678110679110680110681110682110683110684110685110686110687110688110689110690110691110692110693110694110695110696110697110698110699110700110701110702110703110704110705110706110707110708110709110710110711110712110713110714110715110716110717110718110719110720110721110722110723110724110725110726110727110728110729110730110731110732110733110734110735110736110737110738110739110740110741110742110743110744110745110746110747110748110749110750110751110752110753110754110755110756110757110758110759110760110761110762110763110764110765110766110767110768110769110770110771110772110773110774110775110776110777110778110779110780110781110782110783110784110785110786110787110788110789110790110791110792110793110794110795110796110797110798110799110800110801110802110803110804110805110806110807110808110809110810110811110812110813110814110815110816110817110818110819110820110821110822110823110824110825110826110827110828110829110830110831110832110833110834110835110836110837110838110839110840110841110842110843110844110845110846110847110848110849110850110851110852110853110854110855110856110857110858110859110860110861110862110863110864110865110866110867110868110869110870110871110872110873110874110875110876110877110878110879110880110881110882110883110884110885110886110887110888110889110890110891110892110893110894110895110896110897110898110899110900110901110902110903110904110905110906110907110908110909110910110911110912110913110914110915110916110917110918110919110920110921110922110923110924110925110926110927110928110929110930110931110932110933110934110935110936110937110938110939110940110941110942110943110944110945110946110947110948110949110950110951110952110953110954110955110956110957110958110959110960110961110962110963110964110965110966110967110968110969110970110971110972110973110974110975110976110977110978110979110980110981110982110983110984110985110986110987110988110989110990110991110992110993110994110995110996110997110998110999111000111001111002111003111004111005111006111007111008111009111010111011111012111013111014111015111016111017111018111019111020111021111022111023111024111025111026111027111028111029111030111031111032111033111034111035111036111037111038111039111040111041111042111043111044111045111046111047111048111049111050111051111052111053111054111055111056111057111058111059111060111061111062111063111064111065111066111067111068111069111070111071111072111073111074111075111076111077111078111079111080111081111082111083111084111085111086111087111088111089111090111091111092111093111094111095111096111097111098111099111100111101111102111103111104111105111106111107111108111109111110111111111112111113111114111115111116111117111118111119111120111121111122111123111124111125111126111127111128111129111130111131111132111133111134111135111136111137111138111139111140111141111142111143111144111145111146111147111148111149111150111151111152111153111154111155111156111157111158111159111160111161111162111163111164111165111166111167111168111169111170111171111172111173111174111175111176111177111178111179111180111181111182111183111184111185111186111187111188111189111190111191111192111193111194111195111196111197111198111199111200111201111202111203111204111205111206111207111208111209111210111211111212111213111214111215111216111217111218111219111220111221111222111223111224111225111226111227111228111229111230111231111232111233111234111235111236111237111238111239111240111241111242111243111244111245111246111247111248111249111250111251111252111253111254111255111256111257111258111259111260111261111262111263111264111265111266111267111268111269111270111271111272111273111274111275111276111277111278111279111280111281111282111283111284111285111286111287111288111289111290111291111292111293111294111295111296111297111298111299111300111301111302111303111304111305111306111307111308111309111310111311111312111313111314111315111316111317111318111319111320111321111322111323111324111325111326111327111328111329111330111331111332111333111334111335111336111337111338111339111340111341111342111343111344111345111346111347111348111349111350111351111352111353111354111355111356111357111358111359111360111361111362111363111364111365111366111367111368111369111370111371111372111373111374111375111376111377111378111379111380111381111382111383111384111385111386111387111388111389111390111391111392111393111394111395111396111397111398111399111400111401111402111403111404111405111406111407111408111409111410111411111412111413111414111415111416111417111418111419111420111421111422111423111424111425111426111427111428111429111430111431111432111433111434111435111436111437111438111439111440111441111442111443111444111445111446111447111448111449111450111451111452111453111454111455111456111457111458111459111460111461111462111463111464111465111466111467111468111469111470111471111472111473111474111475111476111477111478111479111480111481111482111483111484111485111486111487111488111489111490111491111492111493111494111495111496111497111498111499111500111501111502111503111504111505111506111507111508111509111510111511111512111513111514111515111516111517111518111519111520111521111522111523111524111525111526111527111528111529111530111531111532111533111534111535111536111537111538111539111540111541111542111543111544111545111546111547111548111549111550111551111552111553111554111555111556111557111558111559111560111561111562111563111564111565111566111567111568111569111570111571111572111573111574111575111576111577111578111579111580111581111582111583111584111585111586111587111588111589111590111591111592111593111594111595111596111597111598111599111600111601111602111603111604111605111606111607111608111609111610111611111612111613111614111615111616111617111618111619111620111621111622111623111624111625111626111627111628111629111630111631111632111633111634111635111636111637111638111639111640111641111642111643111644111645111646111647111648111649111650111651111652111653111654111655111656111657111658111659111660111661111662111663111664111665111666111667111668111669111670111671111672111673111674111675111676111677111678111679111680111681111682111683111684111685111686111687111688111689111690111691111692111693111694111695111696111697111698111699111700111701111702111703111704111705111706111707111708111709111710111711111712111713111714111715111716111717111718111719111720111721111722111723111724111725111726111727111728111729111730111731111732111733111734111735111736111737111738111739111740111741111742111743111744111745111746111747111748111749111750111751111752111753111754111755111756111757111758111759111760111761111762111763111764111765111766111767111768111769111770111771111772111773111774111775111776111777111778111779111780111781111782111783111784111785111786111787111788111789111790111791111792111793111794111795111796111797111798111799111800111801111802111803111804111805111806111807111808111809111810111811111812111813111814111815111816111817111818111819111820111821111822111823111824111825111826111827111828111829111830111831111832111833111834111835111836111837111838111839111840111841111842111843111844111845111846111847111848111849111850111851111852111853111854111855111856111857111858111859111860111861111862111863111864111865111866111867111868111869111870111871111872111873111874111875111876111877111878111879111880111881111882111883111884111885111886111887111888111889111890111891111892111893111894111895111896111897111898111899111900111901111902111903111904111905111906111907111908111909111910111911111912111913111914111915111916111917111918111919111920111921111922111923111924111925111926111927111928111929111930111931111932111933111934111935111936111937111938111939111940111941111942111943111944111945111946111947111948111949111950111951111952111953111954111955111956111957111958111959111960111961111962111963111964111965111966111967111968111969111970111971111972111973111974111975111976111977111978111979111980111981111982111983111984111985111986111987111988111989111990111991111992111993111994111995111996111997111998111999112000112001112002112003112004112005112006112007112008112009112010112011112012112013112014112015112016112017112018112019112020112021112022112023112024112025112026112027112028112029112030112031112032112033112034112035112036112037112038112039112040112041112042112043112044112045112046112047112048112049112050112051112052112053112054112055112056112057112058112059112060112061112062112063112064112065112066112067112068112069112070112071112072112073112074112075112076112077112078112079112080112081112082112083112084112085112086112087112088112089112090112091112092112093112094112095112096112097112098112099112100112101112102112103112104112105112106112107112108112109112110112111112112112113112114112115112116112117112118112119112120112121112122112123112124112125112126112127112128112129112130112131112132112133112134112135112136112137112138112139112140112141112142112143112144112145112146112147112148112149112150112151112152112153112154112155112156112157112158112159112160112161112162112163112164112165112166112167112168112169112170112171112172112173112174112175112176112177112178112179112180112181112182112183112184112185112186112187112188112189112190112191112192112193112194112195112196112197112198112199112200112201112202112203112204112205112206112207112208112209112210112211112212112213112214112215112216112217112218112219112220112221112222112223112224112225112226112227112228112229112230112231112232112233112234112235112236112237112238112239112240112241112242112243112244112245112246112247112248112249112250112251112252112253112254112255112256112257112258112259112260112261112262112263112264112265112266112267112268112269112270112271112272112273112274112275112276112277112278112279112280112281112282112283112284112285112286112287112288112289112290112291112292112293112294112295112296112297112298112299112300112301112302112303112304112305112306112307112308112309112310112311112312112313112314112315112316112317112318112319112320112321112322112323112324112325112326112327112328112329112330112331112332112333112334112335112336112337112338112339112340112341112342112343112344112345112346112347112348112349112350112351112352112353112354112355112356112357112358112359112360112361112362112363112364112365112366112367112368112369112370112371112372112373112374112375112376112377112378112379112380112381112382112383112384112385112386112387112388112389112390112391112392112393112394112395112396112397112398112399112400112401112402112403112404112405112406112407112408112409112410112411112412112413112414112415112416112417112418112419112420112421112422112423112424112425112426112427112428112429112430112431112432112433112434112435112436112437112438112439112440112441112442112443112444112445112446112447112448112449112450112451112452112453112454112455112456112457112458112459112460112461112462112463112464112465112466112467112468112469112470112471112472112473112474112475112476112477112478112479112480112481112482112483112484112485112486112487112488112489112490112491112492112493112494112495112496112497112498112499112500112501112502112503112504112505112506112507112508112509112510112511112512112513112514112515112516112517112518112519112520112521112522112523112524112525112526112527112528112529112530112531112532112533112534112535112536112537112538112539112540112541112542112543112544112545112546112547112548112549112550112551112552112553112554112555112556112557112558112559112560112561112562112563112564112565112566112567112568112569112570112571112572112573112574112575112576112577112578112579112580112581112582112583112584112585112586112587112588112589112590112591112592112593112594112595112596112597112598112599112600112601112602112603112604112605112606112607112608112609112610112611112612112613112614112615112616112617112618112619112620112621112622112623112624112625112626112627112628112629112630112631112632112633112634112635112636112637112638112639112640112641112642112643112644112645112646112647112648112649112650112651112652112653112654112655112656112657112658112659112660112661112662112663112664112665112666112667112668112669112670112671112672112673112674112675112676112677112678112679112680112681112682112683112684112685112686112687112688112689112690112691112692112693112694112695112696112697112698112699112700112701112702112703112704112705112706112707112708112709112710112711112712112713112714112715112716112717112718112719112720112721112722112723112724112725112726112727112728112729112730112731112732112733112734112735112736112737112738112739112740112741112742112743112744112745112746112747112748112749112750112751112752112753112754112755112756112757112758112759112760112761112762112763112764112765112766112767112768112769112770112771112772112773112774112775112776112777112778112779112780112781112782112783112784112785112786112787112788112789112790112791112792112793112794112795112796112797112798112799112800112801112802112803112804112805112806112807112808112809112810112811112812112813112814112815112816112817112818112819112820112821112822112823112824112825112826112827112828112829112830112831112832112833112834112835112836112837112838112839112840112841112842112843112844112845112846112847112848112849112850112851112852112853112854112855112856112857112858112859112860112861112862112863112864112865112866112867112868112869112870112871112872112873112874112875112876112877112878112879112880112881112882112883112884112885112886112887112888112889112890112891112892112893112894112895112896112897112898112899112900112901112902112903112904112905112906112907112908112909112910112911112912112913112914112915112916112917112918112919112920112921112922112923112924112925112926112927112928112929112930112931112932112933112934112935112936112937112938112939112940112941112942112943112944112945112946112947112948112949112950112951112952112953112954112955112956112957112958112959112960112961112962112963112964112965112966112967112968112969112970112971112972112973112974112975112976112977112978112979112980112981112982112983112984112985112986112987112988112989112990112991112992112993112994112995112996112997112998112999113000113001113002113003113004113005113006113007113008113009113010113011113012113013113014113015113016113017113018113019113020113021113022113023113024113025113026113027113028113029113030113031113032113033113034113035113036113037113038113039113040113041113042113043113044113045113046113047113048113049113050113051113052113053113054113055113056113057113058113059113060113061113062113063113064113065113066113067113068113069113070113071113072113073113074113075113076113077113078113079113080113081113082113083113084113085113086113087113088113089113090113091113092113093113094113095113096113097113098113099113100113101113102113103113104113105113106113107113108113109113110113111113112113113113114113115113116113117113118113119113120113121113122113123113124113125113126113127113128113129113130113131113132113133113134113135113136113137113138113139113140113141113142113143113144113145113146113147113148113149113150113151113152113153113154113155113156113157113158113159113160113161113162113163113164113165113166113167113168113169113170113171113172113173113174113175113176113177113178113179113180113181113182113183113184113185113186113187113188113189113190113191113192113193113194113195113196113197113198113199113200113201113202113203113204113205113206113207113208113209113210113211113212113213113214113215113216113217113218113219113220113221113222113223113224113225113226113227113228113229113230113231113232113233113234113235113236113237113238113239113240113241113242113243113244113245113246113247113248113249113250113251113252113253113254113255113256113257113258113259113260113261113262113263113264113265113266113267113268113269113270113271113272113273113274113275113276113277113278113279113280113281113282113283113284113285113286113287113288113289113290113291113292113293113294113295113296113297113298113299113300113301113302113303113304113305113306113307113308113309113310113311113312113313113314113315113316113317113318113319113320113321113322113323113324113325113326113327113328113329113330113331113332113333113334113335113336113337113338113339113340113341113342113343113344113345113346113347113348113349113350113351113352113353113354113355113356113357113358113359113360113361113362113363113364113365113366113367113368113369113370113371113372113373113374113375113376113377113378113379113380113381113382113383113384113385113386113387113388113389113390113391113392113393113394113395113396113397113398113399113400113401113402113403113404113405113406113407113408113409113410113411113412113413113414113415113416113417113418113419113420113421113422113423113424113425113426113427113428113429113430113431113432113433113434113435113436113437113438113439113440113441113442113443113444113445113446113447113448113449113450113451113452113453113454113455113456113457113458113459113460113461113462113463113464113465113466113467113468113469113470113471113472113473113474113475113476113477113478113479113480113481113482113483113484113485113486113487113488113489113490113491113492113493113494113495113496113497113498113499113500113501113502113503113504113505113506113507113508113509113510113511113512113513113514113515113516113517113518113519113520113521113522113523113524113525113526113527113528113529113530113531113532113533113534113535113536113537113538113539113540113541113542113543113544113545113546113547113548113549113550113551113552113553113554113555113556113557113558113559113560113561113562113563113564113565113566113567113568113569113570113571113572113573113574113575113576113577113578113579113580113581113582113583113584113585113586113587113588113589113590113591113592113593113594113595113596113597113598113599113600113601113602113603113604113605113606113607113608113609113610113611113612113613113614113615113616113617113618113619113620113621113622113623113624113625113626113627113628113629113630113631113632113633113634113635113636113637113638113639113640113641113642113643113644113645113646113647113648113649113650113651113652113653113654113655113656113657113658113659113660113661113662113663113664113665113666113667113668113669113670113671113672113673113674113675113676113677113678113679113680113681113682113683113684113685113686113687113688113689113690113691113692113693113694113695113696113697113698113699113700113701113702113703113704113705113706113707113708113709113710113711113712113713113714113715113716113717113718113719113720113721113722113723113724113725113726113727113728113729113730113731113732113733113734113735113736113737113738113739113740113741113742113743113744113745113746113747113748113749113750113751113752113753113754113755113756113757113758113759113760113761113762113763113764113765113766113767113768113769113770113771113772113773113774113775113776113777113778113779113780113781113782113783113784113785113786113787113788113789113790113791113792113793113794113795113796113797113798113799113800113801113802113803113804113805113806113807113808113809113810113811113812113813113814113815113816113817113818113819113820113821113822113823113824113825113826113827113828113829113830113831113832113833113834113835113836113837113838113839113840113841113842113843113844113845113846113847113848113849113850113851113852113853113854113855113856113857113858113859113860113861113862113863113864113865113866113867113868113869113870113871113872113873113874113875113876113877113878113879113880113881113882113883113884113885113886113887113888113889113890113891113892113893113894113895113896113897113898113899113900113901113902113903113904113905113906113907113908113909113910113911113912113913113914113915113916113917113918113919113920113921113922113923113924113925113926113927113928113929113930113931113932113933113934113935113936113937113938113939113940113941113942113943113944113945113946113947113948113949113950113951113952113953113954113955113956113957113958113959113960113961113962113963113964113965113966113967113968113969113970113971113972113973113974113975113976113977113978113979113980113981113982113983113984113985113986113987113988113989113990113991113992113993113994113995113996113997113998113999114000114001114002114003114004114005114006114007114008114009114010114011114012114013114014114015114016114017114018114019114020114021114022114023114024114025114026114027114028114029114030114031114032114033114034114035114036114037114038114039114040114041114042114043114044114045114046114047114048114049114050114051114052114053114054114055114056114057114058114059114060114061114062114063114064114065114066114067114068114069114070114071114072114073114074114075114076114077114078114079114080114081114082114083114084114085114086114087114088114089114090114091114092114093114094114095114096114097114098114099114100114101114102114103114104114105114106114107114108114109114110114111114112114113114114114115114116114117114118114119114120114121114122114123114124114125114126114127114128114129114130114131114132114133114134114135114136114137114138114139114140114141114142114143114144114145114146114147114148114149114150114151114152114153114154114155114156114157114158114159114160114161114162114163114164114165114166114167114168114169114170114171114172114173114174114175114176114177114178114179114180114181114182114183114184114185114186114187114188114189114190114191114192114193114194114195114196114197114198114199114200114201114202114203114204114205114206114207114208114209114210114211114212114213114214114215114216114217114218114219114220114221114222114223114224114225114226114227114228114229114230114231114232114233114234114235114236114237114238114239114240114241114242114243114244114245114246114247114248114249114250114251114252114253114254114255114256114257114258114259114260114261114262114263114264114265114266114267114268114269114270114271114272114273114274114275114276114277114278114279114280114281114282114283114284114285114286114287114288114289114290114291114292114293114294114295114296114297114298114299114300114301114302114303114304114305114306114307114308114309114310114311114312114313114314114315114316114317114318114319114320114321114322114323114324114325114326114327114328114329114330114331114332114333114334114335114336114337114338114339114340114341114342114343114344114345114346114347114348114349114350114351114352114353114354114355114356114357114358114359114360114361114362114363114364114365114366114367114368114369114370114371114372114373114374114375114376114377114378114379114380114381114382114383114384114385114386114387114388114389114390114391114392114393114394114395114396114397114398114399114400114401114402114403114404114405114406114407114408114409114410114411114412114413114414114415114416114417114418114419114420114421114422114423114424114425114426114427114428114429114430114431114432114433114434114435114436114437114438114439114440114441114442114443114444114445114446114447114448114449114450114451114452114453114454114455114456114457114458114459114460114461114462114463114464114465114466114467114468114469114470114471114472114473114474114475114476114477114478114479114480114481114482114483114484114485114486114487114488114489114490114491114492114493114494114495114496114497114498114499114500114501114502114503114504114505114506114507114508114509114510114511114512114513114514114515114516114517114518114519114520114521114522114523114524114525114526114527114528114529114530114531114532114533114534114535114536114537114538114539114540114541114542114543114544114545114546114547114548114549114550114551114552114553114554114555114556114557114558114559114560114561114562114563114564114565114566114567114568114569114570114571114572114573114574114575114576114577114578114579114580114581114582114583114584114585114586114587114588114589114590114591114592114593114594114595114596114597114598114599114600114601114602114603114604114605114606114607114608114609114610114611114612114613114614114615114616114617114618114619114620114621114622114623114624114625114626114627114628114629114630114631114632114633114634114635114636114637114638114639114640114641114642114643114644114645114646114647114648114649114650114651114652114653114654114655114656114657114658114659114660114661114662114663114664114665114666114667114668114669114670114671114672114673114674114675114676114677114678114679114680114681114682114683114684114685114686114687114688114689114690114691114692114693114694114695114696114697114698114699114700114701114702114703114704114705114706114707114708114709114710114711114712114713114714114715114716114717114718114719114720114721114722114723114724114725114726114727114728114729114730114731114732114733114734114735114736114737114738114739114740114741114742114743114744114745114746114747114748114749114750114751114752114753114754114755114756114757114758114759114760114761114762114763114764114765114766114767114768114769114770114771114772114773114774114775114776114777114778114779114780114781114782114783114784114785114786114787114788114789114790114791114792114793114794114795114796114797114798114799114800114801114802114803114804114805114806114807114808114809114810114811114812114813114814114815114816114817114818114819114820114821114822114823114824114825114826114827114828114829114830114831114832114833114834114835114836114837114838114839114840114841114842114843114844114845114846114847114848114849114850114851114852114853114854114855114856114857114858114859114860114861114862114863114864114865114866114867114868114869114870114871114872114873114874114875114876114877114878114879114880114881114882114883114884114885114886114887114888114889114890114891114892114893114894114895114896114897114898114899114900114901114902114903114904114905114906114907114908114909114910114911114912114913114914114915114916114917114918114919114920114921114922114923114924114925114926114927114928114929114930114931114932114933114934114935114936114937114938114939114940114941114942114943114944114945114946114947114948114949114950114951114952114953114954114955114956114957114958114959114960114961114962114963114964114965114966114967114968114969114970114971114972114973114974114975114976114977114978114979114980114981114982114983114984114985114986114987114988114989114990114991114992114993114994114995114996114997114998114999115000115001115002115003115004115005115006115007115008115009115010115011115012115013115014115015115016115017115018115019115020115021115022115023115024115025115026115027115028115029115030115031115032115033115034115035115036115037115038115039115040115041115042115043115044115045115046115047115048115049115050115051115052115053115054115055115056115057115058115059115060115061115062115063115064115065115066115067115068115069115070115071115072115073115074115075115076115077115078115079115080115081115082115083115084115085115086115087115088115089115090115091115092115093115094115095115096115097115098115099115100115101115102115103115104115105115106115107115108115109115110115111115112115113115114115115115116115117115118115119115120115121115122115123115124115125115126115127115128115129115130115131115132115133115134115135115136115137115138115139115140115141115142115143115144115145115146115147115148115149115150115151115152115153115154115155115156115157115158115159115160115161115162115163115164115165115166115167115168115169115170115171115172115173115174115175115176115177115178115179115180115181115182115183115184115185115186115187115188115189115190115191115192115193115194115195115196115197115198115199115200115201115202115203115204115205115206115207115208115209115210115211115212115213115214115215115216115217115218115219115220115221115222115223115224115225115226115227115228115229115230115231115232115233115234115235115236115237115238115239115240115241115242115243115244115245115246115247115248115249115250115251115252115253115254115255115256115257115258115259115260115261115262115263115264115265115266115267115268115269115270115271115272115273115274115275115276115277115278115279115280115281115282115283115284115285115286115287115288115289115290115291115292115293115294115295115296115297115298115299115300115301115302115303115304115305115306115307115308115309115310115311115312115313115314115315115316115317115318115319115320115321115322115323115324115325115326115327115328115329115330115331115332115333115334115335115336115337115338115339115340115341115342115343115344115345115346115347115348115349115350115351115352115353115354115355115356115357115358115359115360115361115362115363115364115365115366115367115368115369115370115371115372115373115374115375115376115377115378115379115380115381115382115383115384115385115386115387115388115389115390115391115392115393115394115395115396115397115398115399115400115401115402115403115404115405115406115407115408115409115410115411115412115413115414115415115416115417115418115419115420115421115422115423115424115425115426115427115428115429115430115431115432115433115434115435115436115437115438115439115440115441115442115443115444115445115446115447115448115449115450115451115452115453115454115455115456115457115458115459115460115461115462115463115464115465115466115467115468115469115470115471115472115473115474115475115476115477115478115479115480115481115482115483115484115485115486115487115488115489115490115491115492115493115494115495115496115497115498115499115500115501115502115503115504115505115506115507115508115509115510115511115512115513115514115515115516115517115518115519115520115521115522115523115524115525115526115527115528115529115530115531115532115533115534115535115536115537115538115539115540115541115542115543115544115545115546115547115548115549115550115551115552115553115554115555115556115557115558115559115560115561115562115563115564115565115566115567115568115569115570115571115572115573115574115575115576115577115578115579115580115581115582115583115584115585115586115587115588115589115590115591115592115593115594115595115596115597115598115599115600115601115602115603115604115605115606115607115608115609115610115611115612115613115614115615115616115617115618115619115620115621115622115623115624115625115626115627115628115629115630115631115632115633115634115635115636115637115638115639115640115641115642115643115644115645115646115647115648115649115650115651115652115653115654115655115656115657115658115659115660115661115662115663115664115665115666115667115668115669115670115671115672115673115674115675115676115677115678115679115680115681115682115683115684115685115686115687115688115689115690115691115692115693115694115695115696115697115698115699115700115701115702115703115704115705115706115707115708115709115710115711115712115713115714115715115716115717115718115719115720115721115722115723115724115725115726115727115728115729115730115731115732115733115734115735115736115737115738115739115740115741115742115743115744115745115746115747115748115749115750115751115752115753115754115755115756115757115758115759115760115761115762115763115764115765115766115767115768115769115770115771115772115773115774115775115776115777115778115779115780115781115782115783115784115785115786115787115788115789115790115791115792115793115794115795115796115797115798115799115800115801115802115803115804115805115806115807115808115809115810115811115812115813115814115815115816115817115818115819115820115821115822115823115824115825115826115827115828115829115830115831115832115833115834115835115836115837115838115839115840115841115842115843115844115845115846115847115848115849115850115851115852115853115854115855115856115857115858115859115860115861115862115863115864115865115866115867115868115869115870115871115872115873115874115875115876115877115878115879115880115881115882115883115884115885115886115887115888115889115890115891115892115893115894115895115896115897115898115899115900115901115902115903115904115905115906115907115908115909115910115911115912115913115914115915115916115917115918115919115920115921115922115923115924115925115926115927115928115929115930115931115932115933115934115935115936115937115938115939115940115941115942115943115944115945115946115947115948115949115950115951115952115953115954115955115956115957115958115959115960115961115962115963115964115965115966115967115968115969115970115971115972115973115974115975115976115977115978115979115980115981115982115983115984115985115986115987115988115989115990115991115992115993115994115995115996115997115998115999116000116001116002116003116004116005116006116007116008116009116010116011116012116013116014116015116016116017116018116019116020116021116022116023116024116025116026116027116028116029116030116031116032116033116034116035116036116037116038116039116040116041116042116043116044116045116046116047116048116049116050116051116052116053116054116055116056116057116058116059116060116061116062116063116064116065116066116067116068116069116070116071116072116073116074116075116076116077116078116079116080116081116082116083116084116085116086116087116088116089116090116091116092116093116094116095116096116097116098116099116100116101116102116103116104116105116106116107116108116109116110116111116112116113116114116115116116116117116118116119116120116121116122116123116124116125116126116127116128116129116130116131116132116133116134116135116136116137116138116139116140116141116142116143116144116145116146116147116148116149116150116151116152116153116154116155116156116157116158116159116160116161116162116163116164116165116166116167116168116169116170116171116172116173116174116175116176116177116178116179116180116181116182116183116184116185116186116187116188116189116190116191116192116193116194116195116196116197116198116199116200116201116202116203116204116205116206116207116208116209116210116211116212116213116214116215116216116217116218116219116220116221116222116223116224116225116226116227116228116229116230116231116232116233116234116235116236116237116238116239116240116241116242116243116244116245116246116247116248116249116250116251116252116253116254116255116256116257116258116259116260116261116262116263116264116265116266116267116268116269116270116271116272116273116274116275116276116277116278116279116280116281116282116283116284116285116286116287116288116289116290116291116292116293116294116295116296116297116298116299116300116301116302116303116304116305116306116307116308116309116310116311116312116313116314116315116316116317116318116319116320116321116322116323116324116325116326116327116328116329116330116331116332116333116334116335116336116337116338116339116340116341116342116343116344116345116346116347116348116349116350116351116352116353116354116355116356116357116358116359116360116361116362116363116364116365116366116367116368116369116370116371116372116373116374116375116376116377116378116379116380116381116382116383116384116385116386116387116388116389116390116391116392116393116394116395116396116397116398116399116400116401116402116403116404116405116406116407116408116409116410116411116412116413116414116415116416116417116418116419116420116421116422116423116424116425116426116427116428116429116430116431116432116433116434116435116436116437116438116439116440116441116442116443116444116445116446116447116448116449116450116451116452116453116454116455116456116457116458116459116460116461116462116463116464116465116466116467116468116469116470116471116472116473116474116475116476116477116478116479116480116481116482116483116484116485116486116487116488116489116490116491116492116493116494116495116496116497116498116499116500116501116502116503116504116505116506116507116508116509116510116511116512116513116514116515116516116517116518116519116520116521116522116523116524116525116526116527116528116529116530116531116532116533116534116535116536116537116538116539116540116541116542116543116544116545116546116547116548116549116550116551116552116553116554116555116556116557116558116559116560116561116562116563116564116565116566116567116568116569116570116571116572116573116574116575116576116577116578116579116580116581116582116583116584116585116586116587116588116589116590116591116592116593116594116595116596116597116598116599116600116601116602116603116604116605116606116607116608116609116610116611116612116613116614116615116616116617116618116619116620116621116622116623116624116625116626116627116628116629116630116631116632116633116634116635116636116637116638116639116640116641116642116643116644116645116646116647116648116649116650116651116652116653116654116655116656116657116658116659116660116661116662116663116664116665116666116667116668116669116670116671116672116673116674116675116676116677116678116679116680116681116682116683116684116685116686116687116688116689116690116691116692116693116694116695116696116697116698116699116700116701116702116703116704116705116706116707116708116709116710116711116712116713116714116715116716116717116718116719116720116721116722116723116724116725116726116727116728116729116730116731116732116733116734116735116736116737116738116739116740116741116742116743116744116745116746116747116748116749116750116751116752116753116754116755116756116757116758116759116760116761116762116763116764116765116766116767116768116769116770116771116772116773116774116775116776116777116778116779116780116781116782116783116784116785116786116787116788116789116790116791116792116793116794116795116796116797116798116799116800116801116802116803116804116805116806116807116808116809116810116811116812116813116814116815116816116817116818116819116820116821116822116823116824116825116826116827116828116829116830116831116832116833116834116835116836116837116838116839116840116841116842116843116844116845116846116847116848116849116850116851116852116853116854116855116856116857116858116859116860116861116862116863116864116865116866116867116868116869116870116871116872116873116874116875116876116877116878116879116880116881116882116883116884116885116886116887116888116889116890116891116892116893116894116895116896116897116898116899116900116901116902116903116904116905116906116907116908116909116910116911116912116913116914116915116916116917116918116919116920116921116922116923116924116925116926116927116928116929116930116931116932116933116934116935116936116937116938116939116940116941116942116943116944116945116946116947116948116949116950116951116952116953116954116955116956116957116958116959116960116961116962116963116964116965116966116967116968116969116970116971116972116973116974116975116976116977116978116979116980116981116982116983116984116985116986116987116988116989116990116991116992116993116994116995116996116997116998116999117000117001117002117003117004117005117006117007117008117009117010117011117012117013117014117015117016117017117018117019117020117021117022117023117024117025117026117027117028117029117030117031117032117033117034117035117036117037117038117039117040117041117042117043117044117045117046117047117048117049117050117051117052117053117054117055117056117057117058117059117060117061117062117063117064117065117066117067117068117069117070117071117072117073117074117075117076117077117078117079117080117081117082117083117084117085117086117087117088117089117090117091117092117093117094117095117096117097117098117099117100117101117102117103117104117105117106117107117108117109117110117111117112117113117114117115117116117117117118117119117120117121117122117123117124117125117126117127117128117129117130117131117132117133117134117135117136117137117138117139117140117141117142117143117144117145117146117147117148117149117150117151117152117153117154117155117156117157117158117159117160117161117162117163117164117165117166117167117168117169117170117171117172117173117174117175117176117177117178117179117180117181117182117183117184117185117186117187117188117189117190117191117192117193117194117195117196117197117198117199117200117201117202117203117204117205117206117207117208117209117210117211117212117213117214117215117216117217117218117219117220117221117222117223117224117225117226117227117228117229117230117231117232117233117234117235117236117237117238117239117240117241117242117243117244117245117246117247117248117249117250117251117252117253117254117255117256117257117258117259117260117261117262117263117264117265117266117267117268117269117270117271117272117273117274117275117276117277117278117279117280117281117282117283117284117285117286117287117288117289117290117291117292117293117294117295117296117297117298117299117300117301117302117303117304117305117306117307117308117309117310117311117312117313117314117315117316117317117318117319117320117321117322117323117324117325117326117327117328117329117330117331117332117333117334117335117336117337117338117339117340117341117342117343117344117345117346117347117348117349117350117351117352117353117354117355117356117357117358117359117360117361117362117363117364117365117366117367117368117369117370117371117372117373117374117375117376117377117378117379117380117381117382117383117384117385117386117387117388117389117390117391117392117393117394117395117396117397117398117399117400117401117402117403117404117405117406117407117408117409117410117411117412117413117414117415117416117417117418117419117420117421117422117423117424117425117426117427117428117429117430117431117432117433117434117435117436117437117438117439117440117441117442117443117444117445117446117447117448117449117450117451117452117453117454117455117456117457117458117459117460117461117462117463117464117465117466117467117468117469117470117471117472117473117474117475117476117477117478117479117480117481117482117483117484117485117486117487117488117489117490117491117492117493117494117495117496117497117498117499117500117501117502117503117504117505117506117507117508117509117510117511117512117513117514117515117516117517117518117519117520117521117522117523117524117525117526117527117528117529117530117531117532117533117534117535117536117537117538117539117540117541117542117543117544117545117546117547117548117549117550117551117552117553117554117555117556117557117558117559117560117561117562117563117564117565117566117567117568117569117570117571117572117573117574117575117576117577117578117579117580117581117582117583117584117585117586117587117588117589117590117591117592117593117594117595117596117597117598117599117600117601117602117603117604117605117606117607117608117609117610117611117612117613117614117615117616117617117618117619117620117621117622117623117624117625117626117627117628117629117630117631117632117633117634117635117636117637117638117639117640117641117642117643117644117645117646117647117648117649117650117651117652117653117654117655117656117657117658117659117660117661117662117663117664117665117666117667117668117669117670117671117672117673117674117675117676117677117678117679117680117681117682117683117684117685117686117687117688117689117690117691117692117693117694117695117696117697117698117699117700117701117702117703117704117705117706117707117708117709117710117711117712117713117714117715117716117717117718117719117720117721117722117723117724117725117726117727117728117729117730117731117732117733117734117735117736117737117738117739117740117741117742117743117744117745117746117747117748117749117750117751117752117753117754117755117756117757117758117759117760117761117762117763117764117765117766117767117768117769117770117771117772117773117774117775117776117777117778117779117780117781117782117783117784117785117786117787117788117789117790117791117792117793117794117795117796117797117798117799117800117801117802117803117804117805117806117807117808117809117810117811117812117813117814117815117816117817117818117819117820117821117822117823117824117825117826117827117828117829117830117831117832117833117834117835117836117837117838117839117840117841117842117843117844117845117846117847117848117849117850117851117852117853117854117855117856117857117858117859117860117861117862117863117864117865117866117867117868117869117870117871117872117873117874117875117876117877117878117879117880117881117882117883117884117885117886117887117888117889117890117891117892117893117894117895117896117897117898117899117900117901117902117903117904117905117906117907117908117909117910117911117912117913117914117915117916117917117918117919117920117921117922117923117924117925117926117927117928117929117930117931117932117933117934117935117936117937117938117939117940117941117942117943117944117945117946117947117948117949117950117951117952117953117954117955117956117957117958117959117960117961117962117963117964117965117966117967117968117969117970117971117972117973117974117975117976117977117978117979117980117981117982117983117984117985117986117987117988117989117990117991117992117993117994117995117996117997117998117999118000118001118002118003118004118005118006118007118008118009118010118011118012118013118014118015118016118017118018118019118020118021118022118023118024118025118026118027118028118029118030118031118032118033118034118035118036118037118038118039118040118041118042118043118044118045118046118047118048118049118050118051118052118053118054118055118056118057118058118059118060118061118062118063118064118065118066118067118068118069118070118071118072118073118074118075118076118077118078118079118080118081118082118083118084118085118086118087118088118089118090118091118092118093118094118095118096118097118098118099118100118101118102118103118104118105118106118107118108118109118110118111118112118113118114118115118116118117118118118119118120118121118122118123118124118125118126118127118128118129118130118131118132118133118134118135118136118137118138118139118140118141118142118143118144118145118146118147118148118149118150118151118152118153118154118155118156118157118158118159118160118161118162118163118164118165118166118167118168118169118170118171118172118173118174118175118176118177118178118179118180118181118182118183118184118185118186118187118188118189118190118191118192118193118194118195118196118197118198118199118200118201118202118203118204118205118206118207118208118209118210118211118212118213118214118215118216118217118218118219118220118221118222118223118224118225118226118227118228118229118230118231118232118233118234118235118236118237118238118239118240118241118242118243118244118245118246118247118248118249118250118251118252118253118254118255118256118257118258118259118260118261118262118263118264118265118266118267118268118269118270118271118272118273118274118275118276118277118278118279118280118281118282118283118284118285118286118287118288118289118290118291118292118293118294118295118296118297118298118299118300118301118302118303118304118305118306118307118308118309118310118311118312118313118314118315118316118317118318118319118320118321118322118323118324118325118326118327118328118329118330118331118332118333118334118335118336118337118338118339118340118341118342118343118344118345118346118347118348118349118350118351118352118353118354118355118356118357118358118359118360118361118362118363118364118365118366118367118368118369118370118371118372118373118374118375118376118377118378118379118380118381118382118383118384118385118386118387118388118389118390118391118392118393118394118395118396118397118398118399118400118401118402118403118404118405118406118407118408118409118410118411118412118413118414118415118416118417118418118419118420118421118422118423118424118425118426118427118428118429118430118431118432118433118434118435118436118437118438118439118440118441118442118443118444118445118446118447118448118449118450118451118452118453118454118455118456118457118458118459118460118461118462118463118464118465118466118467118468118469118470118471118472118473118474118475118476118477118478118479118480118481118482118483118484118485118486118487118488118489118490118491118492118493118494118495118496118497118498118499118500118501118502118503118504118505118506118507118508118509118510118511118512118513118514118515118516118517118518118519118520118521118522118523118524118525118526118527118528118529118530118531118532118533118534118535118536118537118538118539118540118541118542118543118544118545118546118547118548118549118550118551118552118553118554118555118556118557118558118559118560118561118562118563118564118565118566118567118568118569118570118571118572118573118574118575118576118577118578118579118580118581118582118583118584118585118586118587118588118589118590118591118592118593118594118595118596118597118598118599118600118601118602118603118604118605118606118607118608118609118610118611118612118613118614118615118616118617118618118619118620118621118622118623118624118625118626118627118628118629118630118631118632118633118634118635118636118637118638118639118640118641118642118643118644118645118646118647118648118649118650118651118652118653118654118655118656118657118658118659118660118661118662118663118664118665118666118667118668118669118670118671118672118673118674118675118676118677118678118679118680118681118682118683118684118685118686118687118688118689118690118691118692118693118694118695118696118697118698118699118700118701118702118703118704118705118706118707118708118709118710118711118712118713118714118715118716118717118718118719118720118721118722118723118724118725118726118727118728118729118730118731118732118733118734118735118736118737118738118739118740118741118742118743118744118745118746118747118748118749118750118751118752118753118754118755118756118757118758118759118760118761118762118763118764118765118766118767118768118769118770118771118772118773118774118775118776118777118778118779118780118781118782118783118784118785118786118787118788118789118790118791118792118793118794118795118796118797118798118799118800118801118802118803118804118805118806118807118808118809118810118811118812118813118814118815118816118817118818118819118820118821118822118823118824118825118826118827118828118829118830118831118832118833118834118835118836118837118838118839118840118841118842118843118844118845118846118847118848118849118850118851118852118853118854118855118856118857118858118859118860118861118862118863118864118865118866118867118868118869118870118871118872118873118874118875118876118877118878118879118880118881118882118883118884118885118886118887118888118889118890118891118892118893118894118895118896118897118898118899118900118901118902118903118904118905118906118907118908118909118910118911118912118913118914118915118916118917118918118919118920118921118922118923118924118925118926118927118928118929118930118931118932118933118934118935118936118937118938118939118940118941118942118943118944118945118946118947118948118949118950118951118952118953118954118955118956118957118958118959118960118961118962118963118964118965118966118967118968118969118970118971118972118973118974118975118976118977118978118979118980118981118982118983118984118985118986118987118988118989118990118991118992118993118994118995118996118997118998118999119000119001119002119003119004119005119006119007119008119009119010119011119012119013119014119015119016119017119018119019119020119021119022119023119024119025119026119027119028119029119030119031119032119033119034119035119036119037119038119039119040119041119042119043119044119045119046119047119048119049119050119051119052119053119054119055119056119057119058119059119060119061119062119063119064119065119066119067119068119069119070119071119072119073119074119075119076119077119078119079119080119081119082119083119084119085119086119087119088119089119090119091119092119093119094119095119096119097119098119099119100119101119102119103119104119105119106119107119108119109119110119111119112119113119114119115119116119117119118119119119120119121119122119123119124119125119126119127119128119129119130119131119132119133119134119135119136119137119138119139119140119141119142119143119144119145119146119147119148119149119150119151119152119153119154119155119156119157119158119159119160119161119162119163119164119165119166119167119168119169119170119171119172119173119174119175119176119177119178119179119180119181119182119183119184119185119186119187119188119189119190119191119192119193119194119195119196119197119198119199119200119201119202119203119204119205119206119207119208119209119210119211119212119213119214119215119216119217119218119219119220119221119222119223119224119225119226119227119228119229119230119231119232119233119234119235119236119237119238119239119240119241119242119243119244119245119246119247119248119249119250119251119252119253119254119255119256119257119258119259119260119261119262119263119264119265119266119267119268119269119270119271119272119273119274119275119276119277119278119279119280119281119282119283119284119285119286119287119288119289119290119291119292119293119294119295119296119297119298119299119300119301119302119303119304119305119306119307119308119309119310119311119312119313119314119315119316119317119318119319119320119321119322119323119324119325119326119327119328119329119330119331119332119333119334119335119336119337119338119339119340119341119342119343119344119345119346119347119348119349119350119351119352119353119354119355119356119357119358119359119360119361119362119363119364119365119366119367119368119369119370119371119372119373119374119375119376119377119378119379119380119381119382119383119384119385119386119387119388119389119390119391119392119393119394119395119396119397119398119399119400119401119402119403119404119405119406119407119408119409119410119411119412119413119414119415119416119417119418119419119420119421119422119423119424119425119426119427119428119429119430119431119432119433119434119435119436119437119438119439119440119441119442119443119444119445119446119447119448119449119450119451119452119453119454119455119456119457119458119459119460119461119462119463119464119465119466119467119468119469119470119471119472119473119474119475119476119477119478119479119480119481119482119483119484119485119486119487119488119489119490119491119492119493119494119495119496119497119498119499119500119501119502119503119504119505119506119507119508119509119510119511119512119513119514119515119516119517119518119519119520119521119522119523119524119525119526119527119528119529119530119531119532119533119534119535119536119537119538119539119540119541119542119543119544119545119546119547119548119549119550119551119552119553119554119555119556119557119558119559119560119561119562119563119564119565119566119567119568119569119570119571119572119573119574119575119576119577119578119579119580119581119582119583119584119585119586119587119588119589119590119591119592119593119594119595119596119597119598119599119600119601119602119603119604119605119606119607119608119609119610119611119612119613119614119615119616119617119618119619119620119621119622119623119624119625119626119627119628119629119630119631119632119633119634119635119636119637119638119639119640119641119642119643119644119645119646119647119648119649119650119651119652119653119654119655119656119657119658119659119660119661119662119663119664119665119666119667119668119669119670119671119672119673119674119675119676119677119678119679119680119681119682119683119684119685119686119687119688119689119690119691119692119693119694119695119696119697119698119699119700119701119702119703119704119705119706119707119708119709119710119711119712119713119714119715119716119717119718119719119720119721119722119723119724119725119726119727119728119729119730119731119732119733119734119735119736119737119738119739119740119741119742119743119744119745119746119747119748119749119750119751119752119753119754119755119756119757119758119759119760119761119762119763119764119765119766119767119768119769119770119771119772119773119774119775119776119777119778119779119780119781119782119783119784119785119786119787119788119789119790119791119792119793119794119795119796119797119798119799119800119801119802119803119804119805119806119807119808119809119810119811119812119813119814119815119816119817119818119819119820119821119822119823119824119825119826119827119828119829119830119831119832119833119834119835119836119837119838119839119840119841119842119843119844119845119846119847119848119849119850119851119852119853119854119855119856119857119858119859119860119861119862119863119864119865119866119867119868119869119870119871119872119873119874119875119876119877119878119879119880119881119882119883119884119885119886119887119888119889119890119891119892119893119894119895119896119897119898119899119900119901119902119903119904119905119906119907119908119909119910119911119912119913119914119915119916119917119918119919119920119921119922119923119924119925119926119927119928119929119930119931119932119933119934119935119936119937119938119939119940119941119942119943119944119945119946119947119948119949119950119951119952119953119954119955119956119957119958119959119960119961119962119963119964119965119966119967119968119969119970119971119972119973119974119975119976119977119978119979119980119981119982119983119984119985119986119987119988119989119990119991119992119993119994119995119996119997119998119999120000120001120002120003120004120005120006120007120008120009120010120011120012120013120014120015120016120017120018120019120020120021120022120023120024120025120026120027120028120029120030120031120032120033120034120035120036120037120038120039120040120041120042120043120044120045120046120047120048120049120050120051120052120053120054120055120056120057120058120059120060120061120062120063120064120065120066120067120068120069120070120071120072120073120074120075120076120077120078120079120080120081120082120083120084120085120086120087120088120089120090120091120092120093120094120095120096120097120098120099120100120101120102120103120104120105120106120107120108120109120110120111120112120113120114120115120116120117120118120119120120120121120122120123120124120125120126120127120128120129120130120131120132120133120134120135120136120137120138120139120140120141120142120143120144120145120146120147120148120149120150120151120152120153120154120155120156120157120158120159120160120161120162120163120164120165120166120167120168120169120170120171120172120173120174120175120176120177120178120179120180120181120182120183120184120185120186120187120188120189120190120191120192120193120194120195120196120197120198120199120200120201120202120203120204120205120206120207120208120209120210120211120212120213120214120215120216120217120218120219120220120221120222120223120224120225120226120227120228120229120230120231120232120233120234120235120236120237120238120239120240120241120242120243120244120245120246120247120248120249120250120251120252120253120254120255120256120257120258120259120260120261120262120263120264120265120266120267120268120269120270120271120272120273120274120275120276120277120278120279120280120281120282120283120284120285120286120287120288120289120290120291120292120293120294120295120296120297120298120299120300120301120302120303120304120305120306120307120308120309120310120311120312120313120314120315120316120317120318120319120320120321120322120323120324120325120326120327120328120329120330120331120332120333120334120335120336120337120338120339120340120341120342120343120344120345120346120347120348120349120350120351120352120353120354120355120356120357120358120359120360120361120362120363120364120365120366120367120368120369120370120371120372120373120374120375120376120377120378120379120380120381120382120383120384120385120386120387120388120389120390120391120392120393120394120395120396120397120398120399120400120401120402120403120404120405120406120407120408120409120410120411120412120413120414120415120416120417120418120419120420120421120422120423120424120425120426120427120428120429120430120431120432120433120434120435120436120437120438120439120440120441120442120443120444120445120446120447120448120449120450120451120452120453120454120455120456120457120458120459120460120461120462120463120464120465120466120467120468120469120470120471120472120473120474120475120476120477120478120479120480120481120482120483120484120485120486120487120488120489120490120491120492120493120494120495120496120497120498120499120500120501120502120503120504120505120506120507120508120509120510120511120512120513120514120515120516120517120518120519120520120521120522120523120524120525120526120527120528120529120530120531120532120533120534120535120536120537120538120539120540120541120542120543120544120545120546120547120548120549120550120551120552120553120554120555120556120557120558120559120560120561120562120563120564120565120566120567120568120569120570120571120572120573120574120575120576120577120578120579120580120581120582120583120584120585120586120587120588120589120590120591120592120593120594120595120596120597120598120599120600120601120602120603120604120605120606120607120608120609120610120611120612120613120614120615120616120617120618120619120620120621120622120623120624120625120626120627120628120629120630120631120632120633120634120635120636120637120638120639120640120641120642120643120644120645120646120647120648120649120650120651120652120653120654120655120656120657120658120659120660120661120662120663120664120665120666120667120668120669120670120671120672120673120674120675120676120677120678120679120680120681120682120683120684120685120686120687120688120689120690120691120692120693120694120695120696120697120698120699120700120701120702120703120704120705120706120707120708120709120710120711120712120713120714120715120716120717120718120719120720120721120722120723120724120725120726120727120728120729120730120731120732120733120734120735120736120737120738120739120740120741120742120743120744120745120746120747120748120749120750120751120752120753120754120755120756120757120758120759120760120761120762120763120764120765120766120767120768120769120770120771120772120773120774120775120776120777120778120779120780120781120782120783120784120785120786120787120788120789120790120791120792120793120794120795120796120797120798120799120800120801120802120803120804120805120806120807120808120809120810120811120812120813120814120815120816120817120818120819120820120821120822120823120824120825120826120827120828120829120830120831120832120833120834120835120836120837120838120839120840120841120842120843120844120845120846120847120848120849120850120851120852120853120854120855120856120857120858120859120860120861120862120863120864120865120866120867120868120869120870120871120872120873120874120875120876120877120878120879120880120881120882120883120884120885120886120887120888120889120890120891120892120893120894120895120896120897120898120899120900120901120902120903120904120905120906120907120908120909120910120911120912120913120914120915120916120917120918120919120920120921120922120923120924120925120926120927120928120929120930120931120932120933120934120935120936120937120938120939120940120941120942120943120944120945120946120947120948120949120950120951120952120953120954120955120956120957120958120959120960120961120962120963120964120965120966120967120968120969120970120971120972120973120974120975120976120977120978120979120980120981120982120983120984120985120986120987120988120989120990120991120992120993120994120995120996120997120998120999121000121001121002121003121004121005121006121007121008121009121010121011121012121013121014121015121016121017121018121019121020121021121022121023121024121025121026121027121028121029121030121031121032121033121034121035121036121037121038121039121040121041121042121043121044121045121046121047121048121049121050121051121052121053121054121055121056121057121058121059121060121061121062121063121064121065121066121067121068121069121070121071121072121073121074121075121076121077121078121079121080121081121082121083121084121085121086121087121088121089121090121091121092121093121094121095121096121097121098121099121100121101121102121103121104121105121106121107121108121109121110121111121112121113121114121115121116121117121118121119121120121121121122121123121124121125121126121127121128121129121130121131121132121133121134121135121136121137121138121139121140121141121142121143121144121145121146121147121148121149121150121151121152121153121154121155121156121157121158121159121160121161121162121163121164121165121166121167121168121169121170121171121172121173121174121175121176121177121178121179121180121181121182121183121184121185121186121187121188121189121190121191121192121193121194121195121196121197121198121199121200121201121202121203121204121205121206121207121208121209121210121211121212121213121214121215121216121217121218121219121220121221121222121223121224121225121226121227121228121229121230121231121232121233121234121235121236121237121238121239121240121241121242121243121244121245121246121247121248121249121250121251121252121253121254121255121256121257121258121259121260121261121262121263121264121265121266121267121268121269121270121271121272121273121274121275121276121277121278121279121280121281121282121283121284121285121286121287121288121289121290121291121292121293121294121295121296121297121298121299121300121301121302121303121304121305121306121307121308121309121310121311121312121313121314121315121316121317121318121319121320121321121322121323121324121325121326121327121328121329121330121331121332121333121334121335121336121337121338121339121340121341121342121343121344121345121346121347121348121349121350121351121352121353121354121355121356121357121358121359121360121361121362121363121364121365121366121367121368121369121370121371121372121373121374121375121376121377121378121379121380121381121382121383121384121385121386121387121388121389121390121391121392121393121394121395121396121397121398121399121400121401121402121403121404121405121406121407121408121409121410121411121412121413121414121415121416121417121418121419121420121421121422121423121424121425121426121427121428121429121430121431121432121433121434121435121436121437121438121439121440121441121442121443121444121445121446121447121448121449121450121451121452121453121454121455121456121457121458121459121460121461121462121463121464121465121466121467121468121469121470121471121472121473121474121475121476121477121478121479121480121481121482121483121484121485121486121487121488121489121490121491121492121493121494121495121496121497121498121499121500121501121502121503121504121505121506121507121508121509121510121511121512121513121514121515121516121517121518121519121520121521121522121523121524121525121526121527121528121529121530121531121532121533121534121535121536121537121538121539121540121541121542121543121544121545121546121547121548121549121550121551121552121553121554121555121556121557121558121559121560121561121562121563121564121565121566121567121568121569121570121571121572121573121574121575121576121577121578121579121580121581121582121583121584121585121586121587121588121589121590121591121592121593121594121595121596121597121598121599121600121601121602121603121604121605121606121607121608121609121610121611121612121613121614121615121616121617121618121619121620121621121622121623121624121625121626121627121628121629121630121631121632121633121634121635121636121637121638121639121640121641121642121643121644121645121646121647121648121649121650121651121652121653121654121655121656121657121658121659121660121661121662121663121664121665121666121667121668121669121670121671121672121673121674121675121676121677121678121679121680121681121682121683121684121685121686121687121688121689121690121691121692121693121694121695121696121697121698121699121700121701121702121703121704121705121706121707121708121709121710121711121712121713121714121715121716121717121718121719121720121721121722121723121724121725121726121727121728121729121730121731121732121733121734121735121736121737121738121739121740121741121742121743121744121745121746121747121748121749121750121751121752121753121754121755121756121757121758121759121760121761121762121763121764121765121766121767121768121769121770121771121772121773121774121775121776121777121778121779121780121781121782121783121784121785121786121787121788121789121790121791121792121793121794121795121796121797121798121799121800121801121802121803121804121805121806121807121808121809121810121811121812121813121814121815121816121817121818121819121820121821121822121823121824121825121826121827121828121829121830121831121832121833121834121835121836121837121838121839121840121841121842121843121844121845121846121847121848121849121850121851121852121853121854121855121856121857121858121859121860121861121862121863121864121865121866121867121868121869121870121871121872121873121874121875121876121877121878121879121880121881121882121883121884121885121886121887121888121889121890121891121892121893121894121895121896121897121898121899121900121901121902121903121904121905121906121907121908121909121910121911121912121913121914121915121916121917121918121919121920121921121922121923121924121925121926121927121928121929121930121931121932121933121934121935121936121937121938121939121940121941121942121943121944121945121946121947121948121949121950121951121952121953121954121955121956121957121958121959121960121961121962121963121964121965121966121967121968121969121970121971121972121973121974121975121976121977121978121979121980121981121982121983121984121985121986121987121988121989121990121991121992121993121994121995121996121997121998121999122000122001122002122003122004122005122006122007122008122009122010122011122012122013122014122015122016122017122018122019122020122021122022122023122024122025122026122027122028122029122030122031122032122033122034122035122036122037122038122039122040122041122042122043122044122045122046122047122048122049122050122051122052122053122054122055122056122057122058122059122060122061122062122063122064122065122066122067122068122069122070122071122072122073122074122075122076122077122078122079122080122081122082122083122084122085122086122087122088122089122090122091122092122093122094122095122096122097122098122099122100122101122102122103122104122105122106122107122108122109122110122111122112122113122114122115122116122117122118122119122120122121122122122123122124122125122126122127122128122129122130122131122132122133122134122135122136122137122138122139122140122141122142122143122144122145122146122147122148122149122150122151122152122153122154122155122156122157122158122159122160122161122162122163122164122165122166122167122168122169122170122171122172122173122174122175122176122177122178122179122180122181122182122183122184122185122186122187122188122189122190122191122192122193122194122195122196122197122198122199122200122201122202122203122204122205122206122207122208122209122210122211122212122213122214122215122216122217122218122219122220122221122222122223122224122225122226122227122228122229122230122231122232122233122234122235122236122237122238122239122240122241122242122243122244122245122246122247122248122249122250122251122252122253122254122255122256122257122258122259122260122261122262122263122264122265122266122267122268122269122270122271122272122273122274122275122276122277122278122279122280122281122282122283122284122285122286122287122288122289122290122291122292122293122294122295122296122297122298122299122300122301122302122303122304122305122306122307122308122309122310122311122312122313122314122315122316122317122318122319122320122321122322122323122324122325122326122327122328122329122330122331122332122333122334122335122336122337122338122339122340122341122342122343122344122345122346122347122348122349122350122351122352122353122354122355122356122357122358122359122360122361122362122363122364122365122366122367122368122369122370122371122372122373122374122375122376122377122378122379122380122381122382122383122384122385122386122387122388122389122390122391122392122393122394122395122396122397122398122399122400122401122402122403122404122405122406122407122408122409122410122411122412122413122414122415122416122417122418122419122420122421122422122423122424122425122426122427122428122429122430122431122432122433122434122435122436122437122438122439122440122441122442122443122444122445122446122447122448122449122450122451122452122453122454122455122456122457122458122459122460122461122462122463122464122465122466122467122468122469122470122471122472122473122474122475122476122477122478122479122480122481122482122483122484122485122486122487122488122489122490122491122492122493122494122495122496122497122498122499122500122501122502122503122504122505122506122507122508122509122510122511122512122513122514122515122516122517122518122519122520122521122522122523122524122525122526122527122528122529122530122531122532122533122534122535122536122537122538122539122540122541122542122543122544122545122546122547122548122549122550122551122552122553122554122555122556122557122558122559122560122561122562122563122564122565122566122567122568122569122570122571122572122573122574122575122576122577122578122579122580122581122582122583122584122585122586122587122588122589122590122591122592122593122594122595122596122597122598122599122600122601122602122603122604122605122606122607122608122609122610122611122612122613122614122615122616122617122618122619122620122621122622122623122624122625122626122627122628122629122630122631122632122633122634122635122636122637122638122639122640122641122642122643122644122645122646122647122648122649122650122651122652122653122654122655122656122657122658122659122660122661122662122663122664122665122666122667122668122669122670122671122672122673122674122675122676122677122678122679122680122681122682122683122684122685122686122687122688122689122690122691122692122693122694122695122696122697122698122699122700122701122702122703122704122705122706122707122708122709122710122711122712122713122714122715122716122717122718122719122720122721122722122723122724122725122726122727122728122729122730122731122732122733122734122735122736122737122738122739122740122741122742122743122744122745122746122747122748122749122750122751122752122753122754122755122756122757122758122759122760122761122762122763122764122765122766122767122768122769122770122771122772122773122774122775122776122777122778122779122780122781122782122783122784122785122786122787122788122789122790122791122792122793122794122795122796122797122798122799122800122801122802122803122804122805122806122807122808122809122810122811122812122813122814122815122816122817122818122819122820122821122822122823122824122825122826122827122828122829122830122831122832122833122834122835122836122837122838122839122840122841122842122843122844122845122846122847122848122849122850122851122852122853122854122855122856122857122858122859122860122861122862122863122864122865122866122867122868122869122870122871122872122873122874122875122876122877122878122879122880122881122882122883122884122885122886122887122888122889122890122891122892122893122894122895122896122897122898122899122900122901122902122903122904122905122906122907122908122909122910122911122912122913122914122915122916122917122918122919122920122921122922122923122924122925122926122927122928122929122930122931122932122933122934122935122936122937122938122939122940122941122942122943122944122945122946122947122948122949122950122951122952122953122954122955122956122957122958122959122960122961122962122963122964122965122966122967122968122969122970122971122972122973122974122975122976122977122978122979122980122981122982122983122984122985122986122987122988122989122990122991122992122993122994122995122996122997122998122999123000123001123002123003123004123005123006123007123008123009123010123011123012123013123014123015123016123017123018123019123020123021123022123023123024123025123026123027123028123029123030123031123032123033123034123035123036123037123038123039123040123041123042123043123044123045123046123047123048123049123050123051123052123053123054123055123056123057123058123059123060123061123062123063123064123065123066123067123068123069123070123071123072123073123074123075123076123077123078123079123080123081123082123083123084123085123086123087123088123089123090123091123092123093123094123095123096123097123098123099123100123101123102123103123104123105123106123107123108123109123110123111123112123113123114123115123116123117123118123119123120123121123122123123123124123125123126123127123128123129123130123131123132123133123134123135123136123137123138123139123140123141123142123143123144123145123146123147123148123149123150123151123152123153123154123155123156123157123158123159123160123161123162123163123164123165123166123167123168123169123170123171123172123173123174123175123176123177123178123179123180123181123182123183123184123185123186123187123188123189123190123191123192123193123194123195123196123197123198123199123200123201123202123203123204123205123206123207123208123209123210123211123212123213123214123215123216123217123218123219123220123221123222123223123224123225123226123227123228123229123230123231123232123233123234123235123236123237123238123239123240123241123242123243123244123245123246123247123248123249123250123251123252123253123254123255123256123257123258123259123260123261123262123263123264123265123266123267123268123269123270123271123272123273123274123275123276123277123278123279123280123281123282123283123284123285123286123287123288123289123290123291123292123293123294123295123296123297123298123299123300123301123302123303123304123305123306123307123308123309123310123311123312123313123314123315123316123317123318123319123320123321123322123323123324123325123326123327123328123329123330123331123332123333123334123335123336123337123338123339123340123341123342123343123344123345123346123347123348123349123350123351123352123353123354123355123356123357123358123359123360123361123362123363123364123365123366123367123368123369123370123371123372123373123374123375123376123377123378123379123380123381123382123383123384123385123386123387123388123389123390123391123392123393123394123395123396123397123398123399123400123401123402123403123404123405123406123407123408123409123410123411123412123413123414123415123416123417123418123419123420123421123422123423123424123425123426123427123428123429123430123431123432123433123434123435123436123437123438123439123440123441123442123443123444123445123446123447123448123449123450123451123452123453123454123455123456123457123458123459123460123461123462123463123464123465123466123467123468123469123470123471123472123473123474123475123476123477123478123479123480123481123482123483123484123485123486123487123488123489123490123491123492123493123494123495123496123497123498123499123500123501123502123503123504123505123506123507123508123509123510123511123512123513123514123515123516123517123518123519123520123521123522123523123524123525123526123527123528123529123530123531123532123533123534123535123536123537123538123539123540123541123542123543123544123545123546123547123548123549123550123551123552123553123554123555123556123557123558123559123560123561123562123563123564123565123566123567123568123569123570123571123572123573123574123575123576123577123578123579123580123581123582123583123584123585123586123587123588123589123590123591123592123593123594123595123596123597123598123599123600123601123602123603123604123605123606123607123608123609123610123611123612123613123614123615123616123617123618123619123620123621123622123623123624123625123626123627123628123629123630123631123632123633123634123635123636123637123638123639123640123641123642123643123644123645123646123647123648123649123650123651123652123653123654123655123656123657123658123659123660123661123662123663123664123665123666123667123668123669123670123671123672123673123674123675123676123677123678123679123680123681123682123683123684123685123686123687123688123689123690123691123692123693123694123695123696123697123698123699123700123701123702123703123704123705123706123707123708123709123710123711123712123713123714123715123716123717123718123719123720123721123722123723123724123725123726123727123728123729123730123731123732123733123734123735123736123737123738123739123740123741123742123743123744123745123746123747123748123749123750123751123752123753123754123755123756123757123758123759123760123761123762123763123764123765123766123767123768123769123770123771123772123773123774123775123776123777123778123779123780123781123782123783123784123785123786123787123788123789123790123791123792123793123794123795123796123797123798123799123800123801123802123803123804123805123806123807123808123809123810123811123812123813123814123815123816123817123818123819123820123821123822123823123824123825123826123827123828123829123830123831123832123833123834123835123836123837123838123839123840123841123842123843123844123845123846123847123848123849123850123851123852123853123854123855123856123857123858123859123860123861123862123863123864123865123866123867123868123869123870123871123872123873123874123875123876123877123878123879123880123881123882123883123884123885123886123887123888123889123890123891123892123893123894123895123896123897123898123899123900123901123902123903123904123905123906123907123908123909123910123911123912123913123914123915123916123917123918123919123920123921123922123923123924123925123926123927123928123929123930123931123932123933123934123935123936123937123938123939123940123941123942123943123944123945123946123947123948123949123950123951123952123953123954123955123956123957123958123959123960123961123962123963123964123965123966123967123968123969123970123971123972123973123974123975123976123977123978123979123980123981123982123983123984123985123986123987123988123989123990123991123992123993123994123995123996123997123998123999124000124001124002124003124004124005124006124007124008124009124010124011124012124013124014124015124016124017124018124019124020124021124022124023124024124025124026124027124028124029124030124031124032124033124034124035124036124037124038124039124040124041124042124043124044124045124046124047124048124049124050124051124052124053124054124055124056124057124058124059124060124061124062124063124064124065124066124067124068124069124070124071124072124073124074124075124076124077124078124079124080124081124082124083124084124085124086124087124088124089124090124091124092124093124094124095124096124097124098124099124100124101124102124103124104124105124106124107124108124109124110124111124112124113124114124115124116124117124118124119124120124121124122124123124124124125124126124127124128124129124130124131124132124133124134124135124136124137124138124139124140124141124142124143124144124145124146124147124148124149124150124151124152124153124154124155124156124157124158124159124160124161124162124163124164124165124166124167124168124169124170124171124172124173124174124175124176124177124178124179124180124181124182124183124184124185124186124187124188124189124190124191124192124193124194124195124196124197124198124199124200124201124202124203124204124205124206124207124208124209124210124211124212124213124214124215124216124217124218124219124220124221124222124223124224124225124226124227124228124229124230124231124232124233124234124235124236124237124238124239124240124241124242124243124244124245124246124247124248124249124250124251124252124253124254124255124256124257124258124259124260124261124262124263124264124265124266124267124268124269124270124271124272124273124274124275124276124277124278124279124280124281124282124283124284124285124286124287124288124289124290124291124292124293124294124295124296124297124298124299124300124301124302124303124304124305124306124307124308124309124310124311124312124313124314124315124316124317124318124319124320124321124322124323124324124325124326124327124328124329124330124331124332124333124334124335124336124337124338124339124340124341124342124343124344124345124346124347124348124349124350124351124352124353124354124355124356124357124358124359124360124361124362124363124364124365124366124367124368124369124370124371124372124373124374124375124376124377124378124379124380124381124382124383124384124385124386124387124388124389124390124391124392124393124394124395124396124397124398124399124400124401124402124403124404124405124406124407124408124409124410124411124412124413124414124415124416124417124418124419124420124421124422124423124424124425124426124427124428124429124430124431124432124433124434124435124436124437124438124439124440124441124442124443124444124445124446124447124448124449124450124451124452124453124454124455124456124457124458124459124460124461124462124463124464124465124466124467124468124469124470124471124472124473124474124475124476124477124478124479124480124481124482124483124484124485124486124487124488124489124490124491124492124493124494124495124496124497124498124499124500124501124502124503124504124505124506124507124508124509124510124511124512124513124514124515124516124517124518124519124520124521124522124523124524124525124526124527124528124529124530124531124532124533124534124535124536124537124538124539124540124541124542124543124544124545124546124547124548124549124550124551124552124553124554124555124556124557124558124559124560124561124562124563124564124565124566124567124568124569124570124571124572124573124574124575124576124577124578124579124580124581124582124583124584124585124586124587124588124589124590124591124592124593124594124595124596124597124598124599124600124601124602124603124604124605124606124607124608124609124610124611124612124613124614124615124616124617124618124619124620124621124622124623124624124625124626124627124628124629124630124631124632124633124634124635124636124637124638124639124640124641124642124643124644124645124646124647124648124649124650124651124652124653124654124655124656124657124658124659124660124661124662124663124664124665124666124667124668124669124670124671124672124673124674124675124676124677124678124679124680124681124682124683124684124685124686124687124688124689124690124691124692124693124694124695124696124697124698124699124700124701124702124703124704124705124706124707124708124709124710124711124712124713124714124715124716124717124718124719124720124721124722124723124724124725124726124727124728124729124730124731124732124733124734124735124736124737124738124739124740124741124742124743124744124745124746124747124748124749124750124751124752124753124754124755124756124757124758124759124760124761124762124763124764124765124766124767124768124769124770124771124772124773124774124775124776124777124778124779124780124781124782124783124784124785124786124787124788124789124790124791124792124793124794124795124796124797124798124799124800124801124802124803124804124805124806124807124808124809124810124811124812124813124814124815124816124817124818124819124820124821124822124823124824124825124826124827124828124829124830124831124832124833124834124835124836124837124838124839124840124841124842124843124844124845124846124847124848124849124850124851124852124853124854124855124856124857124858124859124860124861124862124863124864124865124866124867124868124869124870124871124872124873124874124875124876124877124878124879124880124881124882124883124884124885124886124887124888124889124890124891124892124893124894124895124896124897124898124899124900124901124902124903124904124905124906124907124908124909124910124911124912124913124914124915124916124917124918124919124920124921124922124923124924124925124926124927124928124929124930124931124932124933124934124935124936124937124938124939124940124941124942124943124944124945124946124947124948124949124950124951124952124953124954124955124956124957124958124959124960124961124962124963124964124965124966124967124968124969124970124971124972124973124974124975124976124977124978124979124980124981124982124983124984124985124986124987124988124989124990124991124992124993124994124995124996124997124998124999125000125001125002125003125004125005125006125007125008125009125010125011125012125013125014125015125016125017125018125019125020125021125022125023125024125025125026125027125028125029125030125031125032125033125034125035125036125037125038125039125040125041125042125043125044125045125046125047125048125049125050125051125052125053125054125055125056125057125058125059125060125061125062125063125064125065125066125067125068125069125070125071125072125073125074125075125076125077125078125079125080125081125082125083125084125085125086125087125088125089125090125091125092125093125094125095125096125097125098125099125100125101125102125103125104125105125106125107125108125109125110125111125112125113125114125115125116125117125118125119125120125121125122125123125124125125125126125127125128125129125130125131125132125133125134125135125136125137125138125139125140125141125142125143125144125145125146125147125148125149125150125151125152125153125154125155125156125157125158125159125160125161125162125163125164125165125166125167125168125169125170125171125172125173125174125175125176125177125178125179125180125181125182125183125184125185125186125187125188125189125190125191125192125193125194125195125196125197125198125199125200125201125202125203125204125205125206125207125208125209125210125211125212125213125214125215125216125217125218125219125220125221125222125223125224125225125226125227125228125229125230125231125232125233125234125235125236125237125238125239125240125241125242125243125244125245125246125247125248125249125250125251125252125253125254125255125256125257125258125259125260125261125262125263125264125265125266125267125268125269125270125271125272125273125274125275125276125277125278125279125280125281125282125283125284125285125286125287125288125289125290125291125292125293125294125295125296125297125298125299125300125301125302125303125304125305125306125307125308125309125310125311125312125313125314125315125316125317125318125319125320125321125322125323125324125325125326125327125328125329125330125331125332125333125334125335125336125337125338125339125340125341125342125343125344125345125346125347125348125349125350125351125352125353125354125355125356125357125358125359125360125361125362125363125364125365125366125367125368125369125370125371125372125373125374125375125376125377125378125379125380125381125382125383125384125385125386125387125388125389125390125391125392125393125394125395125396125397125398125399125400125401125402125403125404125405125406125407125408125409125410125411125412125413125414125415125416125417125418125419125420125421125422125423125424125425125426125427125428125429125430125431125432125433125434125435125436125437125438125439125440125441125442125443125444125445125446125447125448125449125450125451125452125453125454125455125456125457125458125459125460125461125462125463125464125465125466125467125468125469125470125471125472125473125474125475125476125477125478125479125480125481125482125483125484125485125486125487125488125489125490125491125492125493125494125495125496125497125498125499125500125501125502125503125504125505125506125507125508125509125510125511125512125513125514125515125516125517125518125519125520125521125522125523125524125525125526125527125528125529125530125531125532125533125534125535125536125537125538125539125540125541125542125543125544125545125546125547125548125549125550125551125552125553125554125555125556125557125558125559125560125561125562125563125564125565125566125567125568125569125570125571125572125573125574125575125576125577125578125579125580125581125582125583125584125585125586125587125588125589125590125591125592125593125594125595125596125597125598125599125600125601125602125603125604125605125606125607125608125609125610125611125612125613125614125615125616125617125618125619125620125621125622125623125624125625125626125627125628125629125630125631125632125633125634125635125636125637125638125639125640125641125642125643125644125645125646125647125648125649125650125651125652125653125654125655125656125657125658125659125660125661125662125663125664125665125666125667125668125669125670125671125672125673125674125675125676125677125678125679125680125681125682125683125684125685125686125687125688125689125690125691125692125693125694125695125696125697125698125699125700125701125702125703125704125705125706125707125708125709125710125711125712125713125714125715125716125717125718125719125720125721125722125723125724125725125726125727125728125729125730125731125732125733125734125735125736125737125738125739125740125741125742125743125744125745125746125747125748125749125750125751125752125753125754125755125756125757125758125759125760125761125762125763125764125765125766125767125768125769125770125771125772125773125774125775125776125777125778125779125780125781125782125783125784125785125786125787125788125789125790125791125792125793125794125795125796125797125798125799125800125801125802125803125804125805125806125807125808125809125810125811125812125813125814125815125816125817125818125819125820125821125822125823125824125825125826125827125828125829125830125831125832125833125834125835125836125837125838125839125840125841125842125843125844125845125846125847125848125849125850125851125852125853125854125855125856125857125858125859125860125861125862125863125864125865125866125867125868125869125870125871125872125873125874125875125876125877125878125879125880125881125882125883125884125885125886125887125888125889125890125891125892125893125894125895125896125897125898125899125900125901125902125903125904125905125906125907125908125909125910125911125912125913125914125915125916125917125918125919125920125921125922125923125924125925125926125927125928125929125930125931125932125933125934125935125936125937125938125939125940125941125942125943125944125945125946125947125948125949125950125951125952125953125954125955125956125957125958125959125960125961125962125963125964125965125966125967125968125969125970125971125972125973125974125975125976125977125978125979125980125981125982125983125984125985125986125987125988125989125990125991125992125993125994125995125996125997125998125999126000126001126002126003126004126005126006126007126008126009126010126011126012126013126014126015126016126017126018126019126020126021126022126023126024126025126026126027126028126029126030126031126032126033126034126035126036126037126038126039126040126041126042126043126044126045126046126047126048126049126050126051126052126053126054126055126056126057126058126059126060126061126062126063126064126065126066126067126068126069126070126071126072126073126074126075126076126077126078126079126080126081126082126083126084126085126086126087126088126089126090126091126092126093126094126095126096126097126098126099126100126101126102126103126104126105126106126107126108126109126110126111126112126113126114126115126116126117126118126119126120126121126122126123126124126125126126126127126128126129126130126131126132126133126134126135126136126137126138126139126140126141126142126143126144126145126146126147126148126149126150126151126152126153126154126155126156126157126158126159126160126161126162126163126164126165126166126167126168126169126170126171126172126173126174126175126176126177126178126179126180126181126182126183126184126185126186126187126188126189126190126191126192126193126194126195126196126197126198126199126200126201126202126203126204126205126206126207126208126209126210126211126212126213126214126215126216126217126218126219126220126221126222126223126224126225126226126227126228126229126230126231126232126233126234126235126236126237126238126239126240126241126242126243126244126245126246126247126248126249126250126251126252126253126254126255126256126257126258126259126260126261126262126263126264126265126266126267126268126269126270126271126272126273126274126275126276126277126278126279126280126281126282126283126284126285126286126287126288126289126290126291126292126293126294126295126296126297126298126299126300126301126302126303126304126305126306126307126308126309126310126311126312126313126314126315126316126317126318126319126320126321126322126323126324126325126326126327126328126329126330126331126332126333126334126335126336126337126338126339126340126341126342126343126344126345126346126347126348126349126350126351126352126353126354126355126356126357126358126359126360126361126362126363126364126365126366126367126368126369126370126371126372126373126374126375126376126377126378126379126380126381126382126383126384126385126386126387126388126389126390126391126392126393126394126395126396126397126398126399126400126401126402126403126404126405126406126407126408126409126410126411126412126413126414126415126416126417126418126419126420126421126422126423126424126425126426126427126428126429126430126431126432126433126434126435126436126437126438126439126440126441126442126443126444126445126446126447126448126449126450126451126452126453126454126455126456126457126458126459126460126461126462126463126464126465126466126467126468126469126470126471126472126473126474126475126476126477126478126479126480126481126482126483126484126485126486126487126488126489126490126491126492126493126494126495126496126497126498126499126500126501126502126503126504126505126506126507126508126509126510126511126512126513126514126515126516126517126518126519126520126521126522126523126524126525126526126527126528126529126530126531126532126533126534126535126536126537126538126539126540126541126542126543126544126545126546126547126548126549126550126551126552126553126554126555126556126557126558126559126560126561126562126563126564126565126566126567126568126569126570126571126572126573126574126575126576126577126578126579126580126581126582126583126584126585126586126587126588126589126590126591126592126593126594126595126596126597126598126599126600126601126602126603126604126605126606126607126608126609126610126611126612126613126614126615126616126617126618126619126620126621126622126623126624126625126626126627126628126629126630126631126632126633126634126635126636126637126638126639126640126641126642126643126644126645126646126647126648126649126650126651126652126653126654126655126656126657126658126659126660126661126662126663126664126665126666126667126668126669126670126671126672126673126674126675126676126677126678126679126680126681126682126683126684126685126686126687126688126689126690126691126692126693126694126695126696126697126698126699126700126701126702126703126704126705126706126707126708126709126710126711126712126713126714126715126716126717126718126719126720126721126722126723126724126725126726126727126728126729126730126731126732126733126734126735126736126737126738126739126740126741126742126743126744126745126746126747126748126749126750126751126752126753126754126755126756126757126758126759126760126761126762126763126764126765126766126767126768126769126770126771126772126773126774126775126776126777126778126779126780126781126782126783126784126785126786126787126788126789126790126791126792126793126794126795126796126797126798126799126800126801126802126803126804126805126806126807126808126809126810126811126812126813126814126815126816126817126818126819126820126821126822126823126824126825126826126827126828126829126830126831126832126833126834126835126836126837126838126839126840126841126842126843126844126845126846126847126848126849126850126851126852126853126854126855126856126857126858126859126860126861126862126863126864126865126866126867126868126869126870126871126872126873126874126875126876126877126878126879126880126881126882126883126884126885126886126887126888126889126890126891126892126893126894126895126896126897126898126899126900126901126902126903126904126905126906126907126908126909126910126911126912126913126914126915126916126917126918126919126920126921126922126923126924126925126926126927126928126929126930126931126932126933126934126935126936126937126938126939126940126941126942126943126944126945126946126947126948126949126950126951126952126953126954126955126956126957126958126959126960126961126962126963126964126965126966126967126968126969126970126971126972126973126974126975126976126977126978126979126980126981126982126983126984126985126986126987126988126989126990126991126992126993126994126995126996126997126998126999127000127001127002127003127004127005127006127007127008127009127010127011127012127013127014127015127016127017127018127019127020127021127022127023127024127025127026127027127028127029127030127031127032127033127034127035127036127037127038127039127040127041127042127043127044127045127046127047127048127049127050127051127052127053127054127055127056127057127058127059127060127061127062127063127064127065127066127067127068127069127070127071127072127073127074127075127076127077127078127079127080127081127082127083127084127085127086127087127088127089127090127091127092127093127094127095127096127097127098127099127100127101127102127103127104127105127106127107127108127109127110127111127112127113127114127115127116127117127118127119127120127121127122127123127124127125127126127127127128127129127130127131127132127133127134127135127136127137127138127139127140127141127142127143127144127145127146127147127148127149127150127151127152127153127154127155127156127157127158127159127160127161127162127163127164127165127166127167127168127169127170127171127172127173127174127175127176127177127178127179127180127181127182127183127184127185127186127187127188127189127190127191127192127193127194127195127196127197127198127199127200127201127202127203127204127205127206127207127208127209127210127211127212127213127214127215127216127217127218127219127220127221127222127223127224127225127226127227127228127229127230127231127232127233127234127235127236127237127238127239127240127241127242127243127244127245127246127247127248127249127250127251127252127253127254127255127256127257127258127259127260127261127262127263127264127265127266127267127268127269127270127271127272127273127274127275127276127277127278127279127280127281127282127283127284127285127286127287127288127289127290127291127292127293127294127295127296127297127298127299127300127301127302127303127304127305127306127307127308127309127310127311127312127313127314127315127316127317127318127319127320127321127322127323127324127325127326127327127328127329127330127331127332127333127334127335127336127337127338127339127340127341127342127343127344127345127346127347127348127349127350127351127352127353127354127355127356127357127358127359127360127361127362127363127364127365127366127367127368127369127370127371127372127373127374127375127376127377127378127379127380127381127382127383127384127385127386127387127388127389127390127391127392127393127394127395127396127397127398127399127400127401127402127403127404127405127406127407127408127409127410127411127412127413127414127415127416127417127418127419127420127421127422127423127424127425127426127427127428127429127430127431127432127433127434127435127436127437127438127439127440127441127442127443127444127445127446127447127448127449127450127451127452127453127454127455127456127457127458127459127460127461127462127463127464127465127466127467127468127469127470127471127472127473127474127475127476127477127478127479127480127481127482127483127484127485127486127487127488127489127490127491127492127493127494127495127496127497127498127499127500127501127502127503127504127505127506127507127508127509127510127511127512127513127514127515127516127517127518127519127520127521127522127523127524127525127526127527127528127529127530127531127532127533127534127535127536127537127538127539127540127541127542127543127544127545127546127547127548127549127550127551127552127553127554127555127556127557127558127559127560127561127562127563127564127565127566127567127568127569127570127571127572127573127574127575127576127577127578127579127580127581127582127583127584127585127586127587127588127589127590127591127592127593127594127595127596127597127598127599127600127601127602127603127604127605127606127607127608127609127610127611127612127613127614127615127616127617127618127619127620127621127622127623127624127625127626127627127628127629127630127631127632127633127634127635127636127637127638127639127640127641127642127643127644127645127646127647127648127649127650127651127652127653127654127655127656127657127658127659127660127661127662127663127664127665127666127667127668127669127670127671127672127673127674127675127676127677127678127679127680127681127682127683127684127685127686127687127688127689127690127691127692127693127694127695127696127697127698127699127700127701127702127703127704127705127706127707127708127709127710127711127712127713127714127715127716127717127718127719127720127721127722127723127724127725127726127727127728127729127730127731127732127733127734127735127736127737127738127739127740127741127742127743127744127745127746127747127748127749127750127751127752127753127754127755127756127757127758127759127760127761127762127763127764127765127766127767127768127769127770127771127772127773127774127775127776127777127778127779127780127781127782127783127784127785127786127787127788127789127790127791127792127793127794127795127796127797127798127799127800127801127802127803127804127805127806127807127808127809127810127811127812127813127814127815127816127817127818127819127820127821127822127823127824127825127826127827127828127829127830127831127832127833127834127835127836127837127838127839127840127841127842127843127844127845127846127847127848127849127850127851127852127853127854127855127856127857127858127859127860127861127862127863127864127865127866127867127868127869127870127871127872127873127874127875127876127877127878127879127880127881127882127883127884127885127886127887127888127889127890127891127892127893127894127895127896127897127898127899127900127901127902127903127904127905127906127907127908127909127910127911127912127913127914127915127916127917127918127919127920127921127922127923127924127925127926127927127928127929127930127931127932127933127934127935127936127937127938127939127940127941127942127943127944127945127946127947127948127949127950127951127952127953127954127955127956127957127958127959127960127961127962127963127964127965127966127967127968127969127970127971127972127973127974127975127976127977127978127979127980127981127982127983127984127985127986127987127988127989127990127991127992127993127994127995127996127997127998127999128000128001128002128003128004128005128006128007128008128009128010128011128012128013128014128015128016128017128018128019128020128021128022128023128024128025128026128027128028128029128030128031128032128033128034128035128036128037128038128039128040128041128042128043128044128045128046128047128048128049128050128051128052128053128054128055128056128057128058128059128060128061128062128063128064128065128066128067128068128069128070128071128072128073128074128075128076128077128078128079128080128081128082128083128084128085128086128087128088128089128090128091128092128093128094128095128096128097128098128099128100128101128102128103128104128105128106128107128108128109128110128111128112128113128114128115128116128117128118128119128120128121128122128123128124128125128126128127128128128129128130128131128132128133128134128135128136128137128138128139128140128141128142128143128144128145128146128147128148128149128150128151128152128153128154128155128156128157128158128159128160128161128162128163128164128165128166128167128168128169128170128171128172128173128174128175128176128177128178128179128180128181128182128183128184128185128186128187128188128189128190128191128192128193128194128195128196128197128198128199128200128201128202128203128204128205128206128207128208128209128210128211128212128213128214128215128216128217128218128219128220128221128222128223128224128225128226128227128228128229128230128231128232128233128234128235128236128237128238128239128240128241128242128243128244128245128246128247128248128249128250128251128252128253128254128255128256128257128258128259128260128261128262128263128264128265128266128267128268128269128270128271128272128273128274128275128276128277128278128279128280128281128282128283128284128285128286128287128288128289128290128291128292128293128294128295128296128297128298128299128300128301128302128303128304128305128306128307128308128309128310128311128312128313128314128315128316128317128318128319128320128321128322128323128324128325128326128327128328128329128330128331128332128333128334128335128336128337128338128339128340128341128342128343128344128345128346128347128348128349128350128351128352128353128354128355128356128357128358128359128360128361128362128363128364128365128366128367128368128369128370128371128372128373128374128375128376128377128378128379128380128381128382128383128384128385128386128387128388128389128390128391128392128393128394128395128396128397128398128399128400128401128402128403128404128405128406128407128408128409128410128411128412128413128414128415128416128417128418128419128420128421128422128423128424128425128426128427128428128429128430128431128432128433128434128435128436128437128438128439128440128441128442128443128444128445128446128447128448128449128450128451128452128453128454128455128456128457128458128459128460128461128462128463128464128465128466128467128468128469128470128471128472128473128474128475128476128477128478128479128480128481128482128483128484128485128486128487128488128489128490128491128492128493128494128495128496128497128498128499128500128501128502128503128504128505128506128507128508128509128510128511128512128513128514128515128516128517128518128519128520128521128522128523128524128525128526128527128528128529128530128531128532128533128534128535128536128537128538128539128540128541128542128543128544128545128546128547128548128549128550128551128552128553128554128555128556128557128558128559128560128561128562128563128564128565128566128567128568128569128570128571128572128573128574128575128576128577128578128579128580128581128582128583128584128585128586128587128588128589128590128591128592128593128594128595128596128597128598128599128600128601128602128603128604128605128606128607128608128609128610128611128612128613128614128615128616128617128618128619128620128621128622128623128624128625128626128627128628128629128630128631128632128633128634128635128636128637128638128639128640128641128642128643128644128645128646128647128648128649128650128651128652128653128654128655128656128657128658128659128660128661128662128663128664128665128666128667128668128669128670128671128672128673128674128675128676128677128678128679128680128681128682128683128684128685128686128687128688128689128690128691128692128693128694128695128696128697128698128699128700128701128702128703128704128705128706128707128708128709128710128711128712128713128714128715128716128717128718128719128720128721128722128723128724128725128726128727128728128729128730128731128732128733128734128735128736128737128738128739128740128741128742128743128744128745128746128747128748128749128750128751128752128753128754128755128756128757128758128759128760128761128762128763128764128765128766128767128768128769128770128771128772128773128774128775128776128777128778128779128780128781128782128783128784128785128786128787128788128789128790128791128792128793128794128795128796128797128798128799128800128801128802128803128804128805128806128807128808128809128810128811128812128813128814128815128816128817128818128819128820128821128822128823128824128825128826128827128828128829128830128831128832128833128834128835128836128837128838128839128840128841128842128843128844128845128846128847128848128849128850128851128852128853128854128855128856128857128858128859128860128861128862128863128864128865128866128867128868128869128870128871128872128873128874128875128876128877128878128879128880128881128882128883128884128885128886128887128888128889128890128891128892128893128894128895128896128897128898128899128900128901128902128903128904128905128906128907128908128909128910128911128912128913128914128915128916128917128918128919128920128921128922128923128924128925128926128927128928128929128930128931128932128933128934128935128936128937128938128939128940128941128942128943128944128945128946128947128948128949128950128951128952128953128954128955128956128957128958128959128960128961128962128963128964128965128966128967128968128969128970128971128972128973128974128975128976128977128978128979128980128981128982128983128984128985128986128987128988128989128990128991128992128993128994128995128996128997128998128999129000129001129002129003129004129005129006129007129008129009129010129011129012129013129014129015129016129017129018129019129020129021129022129023129024129025129026129027129028129029129030129031129032129033129034129035129036129037129038129039129040129041129042129043129044129045129046129047129048129049129050129051129052129053129054129055129056129057129058129059129060129061129062129063129064129065129066129067129068129069129070129071129072129073129074129075129076129077129078129079129080129081129082129083129084129085129086129087129088129089129090129091129092129093129094129095129096129097129098129099129100129101129102129103129104129105129106129107129108129109129110129111129112129113129114129115129116129117129118129119129120129121129122129123129124129125129126129127129128129129129130129131129132129133129134129135129136129137129138129139129140129141129142129143129144129145129146129147129148129149129150129151129152129153129154129155129156129157129158129159129160129161129162129163129164129165129166129167129168129169129170129171129172129173129174129175129176129177129178129179129180129181129182129183129184129185129186129187129188129189129190129191129192129193129194129195129196129197129198129199129200129201129202129203129204129205129206129207129208129209129210129211129212129213129214129215129216129217129218129219129220129221129222129223129224129225129226129227129228129229129230129231129232129233129234129235129236129237129238129239129240129241129242129243129244129245129246129247129248129249129250129251129252129253129254129255129256129257129258129259129260129261129262129263129264129265129266129267129268129269129270129271129272129273129274129275129276129277129278129279129280129281129282129283129284129285129286129287129288129289129290129291129292129293129294129295129296129297129298129299129300129301129302129303129304129305129306129307129308129309129310129311129312129313129314129315129316129317129318129319129320129321129322129323129324129325129326129327129328129329129330129331129332129333129334129335129336129337129338129339129340129341129342129343129344129345129346129347129348129349129350129351129352129353129354129355129356129357129358129359129360129361129362129363129364129365129366129367129368129369129370129371129372129373129374129375129376129377129378129379129380129381129382129383129384129385129386129387129388129389129390129391129392129393129394129395129396129397129398129399129400129401129402129403129404129405129406129407129408129409129410129411129412129413129414129415129416129417129418129419129420129421129422129423129424129425129426129427129428129429129430129431129432129433129434129435129436129437129438129439129440129441129442129443129444129445129446129447129448129449129450129451129452129453129454129455129456129457129458129459129460129461129462129463129464129465129466129467129468129469129470129471129472129473129474129475129476129477129478129479129480129481129482129483129484129485129486129487129488129489129490129491129492129493129494129495129496129497129498129499129500129501129502129503129504129505129506129507129508129509129510129511129512129513129514129515129516129517129518129519129520129521129522129523129524129525129526129527129528129529129530129531129532129533129534129535129536129537129538129539129540129541129542129543129544129545129546129547129548129549129550129551129552129553129554129555129556129557129558129559129560129561129562129563129564129565129566129567129568129569129570129571129572129573129574129575129576129577129578129579129580129581129582129583129584129585129586129587129588129589129590129591129592129593129594129595129596129597129598129599129600129601129602129603129604129605129606129607129608129609129610129611129612129613129614129615129616129617129618129619129620129621129622129623129624129625129626129627129628129629129630129631129632129633129634129635129636129637129638129639129640129641129642129643129644129645129646129647129648129649129650129651129652129653129654129655129656129657129658129659129660129661129662129663129664129665129666129667129668129669129670129671129672129673129674129675129676129677129678129679129680129681129682129683129684129685129686129687129688129689129690129691129692129693129694129695129696129697129698129699129700129701129702129703129704129705129706129707129708129709129710129711129712129713129714129715129716129717129718129719129720129721129722129723129724129725129726129727129728129729129730129731129732129733129734129735129736129737129738129739129740129741129742129743129744129745129746129747129748129749129750129751129752129753129754129755129756129757129758129759129760129761129762129763129764129765129766129767129768129769129770129771129772129773129774129775129776129777129778129779129780129781129782129783129784129785129786129787129788129789129790129791129792129793129794129795129796129797129798129799129800129801129802129803129804129805129806129807129808129809129810129811129812129813129814129815129816129817129818129819129820129821129822129823129824129825129826129827129828129829129830129831129832129833129834129835129836129837129838129839129840129841129842129843129844129845129846129847129848129849129850129851129852129853129854129855129856129857129858129859129860129861129862129863129864129865129866129867129868129869129870129871129872129873129874129875129876129877129878129879129880129881129882129883129884129885129886129887129888129889129890129891129892129893129894129895129896129897129898129899129900129901129902129903129904129905129906129907129908129909129910129911129912129913129914129915129916129917129918129919129920129921129922129923129924129925129926129927129928129929129930129931129932129933129934129935129936129937129938129939129940129941129942129943129944129945129946129947129948129949129950129951129952129953129954129955129956129957129958129959129960129961129962129963129964129965129966129967129968129969129970129971129972129973129974129975129976129977129978129979129980129981129982129983129984129985129986129987129988129989129990129991129992129993129994129995129996129997129998129999130000130001130002130003130004130005130006130007130008130009130010130011130012130013130014130015130016130017130018130019130020130021130022130023130024130025130026130027130028130029130030130031130032130033130034130035130036130037130038130039130040130041130042130043130044130045130046130047130048130049130050130051130052130053130054130055130056130057130058130059130060130061130062130063130064130065130066130067130068130069130070130071130072130073130074130075130076130077130078130079130080130081130082130083130084130085130086130087130088130089130090130091130092130093130094130095130096130097130098130099130100130101130102130103130104130105130106130107130108130109130110130111130112130113130114130115130116130117130118130119130120130121130122130123130124130125130126130127130128130129130130130131130132130133130134130135130136130137130138130139130140130141130142130143130144130145130146130147130148130149130150130151130152130153130154130155130156130157130158130159130160130161130162130163130164130165130166130167130168130169130170130171130172130173130174130175130176130177130178130179130180130181130182130183130184130185130186130187130188130189130190130191130192130193130194130195130196130197130198130199130200130201130202130203130204130205130206130207130208130209130210130211130212130213130214130215130216130217130218130219130220130221130222130223130224130225130226130227130228130229130230130231130232130233130234130235130236130237130238130239130240130241130242130243130244130245130246130247130248130249130250130251130252130253130254130255130256130257130258130259130260130261130262130263130264130265130266130267130268130269130270130271130272130273130274130275130276130277130278130279130280130281130282130283130284130285130286130287130288130289130290130291130292130293130294130295130296130297130298130299130300130301130302130303130304130305130306130307130308130309130310130311130312130313130314130315130316130317130318130319130320130321130322130323130324130325130326130327130328130329130330130331130332130333130334130335130336130337130338130339130340130341130342130343130344130345130346130347130348130349130350130351130352130353130354130355130356130357130358130359130360130361130362130363130364130365130366130367130368130369130370130371130372130373130374130375130376130377130378130379130380130381130382130383130384130385130386130387130388130389130390130391130392130393130394130395130396130397130398130399130400130401130402130403130404130405130406130407130408130409130410130411130412130413130414130415130416130417130418130419130420130421130422130423130424130425130426130427130428130429130430130431130432130433130434130435130436130437130438130439130440130441130442130443130444130445130446130447130448130449130450130451130452130453130454130455130456130457130458130459130460130461130462130463130464130465130466130467130468130469130470130471130472130473130474130475130476130477130478130479130480130481130482130483130484130485130486130487130488130489130490130491130492130493130494130495130496130497130498130499130500130501130502130503130504130505130506130507130508130509130510130511130512130513130514130515130516130517130518130519130520130521130522130523130524130525130526130527130528130529130530130531130532130533130534130535130536130537130538130539130540130541130542130543130544130545130546130547130548130549130550130551130552130553130554130555130556130557130558130559130560130561130562130563130564130565130566130567130568130569130570130571130572130573130574130575130576130577130578130579130580130581130582130583130584130585130586130587130588130589130590130591130592130593130594130595130596130597130598130599130600130601130602130603130604130605130606130607130608130609130610130611130612130613130614130615130616130617130618130619130620130621130622130623130624130625130626130627130628130629130630130631130632130633130634130635130636130637130638130639130640130641130642130643130644130645130646130647130648130649130650130651130652130653130654130655130656130657130658130659130660130661130662130663130664130665130666130667130668130669130670130671130672130673130674130675130676130677130678130679130680130681130682130683130684130685130686130687130688130689130690130691130692130693130694130695130696130697130698130699130700130701130702130703130704130705130706130707130708130709130710130711130712130713130714130715130716130717130718130719130720130721130722130723130724130725130726130727130728130729130730130731130732130733130734130735130736130737130738130739130740130741130742130743130744130745130746130747130748130749130750130751130752130753130754130755130756130757130758130759130760130761130762130763130764130765130766130767130768130769130770130771130772130773130774130775130776130777130778130779130780130781130782130783130784130785130786130787130788130789130790130791130792130793130794130795130796130797130798130799130800130801130802130803130804130805130806130807130808130809130810130811130812130813130814130815130816130817130818130819130820130821130822130823130824130825130826130827130828130829130830130831130832130833130834130835130836130837130838130839130840130841130842130843130844130845130846130847130848130849130850130851130852130853130854130855130856130857130858130859130860130861130862130863130864130865130866130867130868130869130870130871130872130873130874130875130876130877130878130879130880130881130882130883130884130885130886130887130888130889130890130891130892130893130894130895130896130897130898130899130900130901130902130903130904130905130906130907130908130909130910130911130912130913130914130915130916130917130918130919130920130921130922130923130924130925130926130927130928130929130930130931130932130933130934130935130936130937130938130939130940130941130942130943130944130945130946130947130948130949130950130951130952130953130954130955130956130957130958130959130960130961130962130963130964130965130966130967130968130969130970130971130972130973130974130975130976130977130978130979130980130981130982130983130984130985130986130987130988130989130990130991130992130993130994130995130996130997130998130999131000131001131002131003131004131005131006131007131008131009131010131011131012131013131014131015131016131017131018131019131020131021131022131023131024131025131026131027131028131029131030131031131032131033131034131035131036131037131038131039131040131041131042131043131044131045131046131047131048131049131050131051131052131053131054131055131056131057131058131059131060131061131062131063131064131065131066131067131068131069131070131071131072131073131074131075131076131077131078131079131080131081131082131083131084131085131086131087131088131089131090131091131092131093131094131095131096131097131098131099131100131101131102131103131104131105131106131107131108131109131110131111131112131113131114131115131116131117131118131119131120131121131122131123131124131125131126131127131128131129131130131131131132131133131134131135131136131137131138131139131140131141131142131143131144131145131146131147131148131149131150131151131152131153131154131155131156131157131158131159131160131161131162131163131164131165131166131167131168131169131170131171131172131173131174131175131176131177131178131179131180131181131182131183131184131185131186131187131188131189131190131191131192131193131194131195131196131197131198131199131200131201131202131203131204131205131206131207131208131209131210131211131212131213131214131215131216131217131218131219131220131221131222131223131224131225131226131227131228131229131230131231131232131233131234131235131236131237131238131239131240131241131242131243131244131245131246131247131248131249131250131251131252131253131254131255131256131257131258131259131260131261131262131263131264131265131266131267131268131269131270131271131272131273131274131275131276131277131278131279131280131281131282131283131284131285131286131287131288131289131290131291131292131293131294131295131296131297131298131299131300131301131302131303131304131305131306131307131308131309131310131311131312131313131314131315131316131317131318131319131320131321131322131323131324131325131326131327131328131329131330131331131332131333131334131335131336131337131338131339131340131341131342131343131344131345131346131347131348131349131350131351131352131353131354131355131356131357131358131359131360131361131362131363131364131365131366131367131368131369131370131371131372131373131374131375131376131377131378131379131380131381131382131383131384131385131386131387131388131389131390131391131392131393131394131395131396131397131398131399131400131401131402131403131404131405131406131407131408131409131410131411131412131413131414131415131416131417131418131419131420131421131422131423131424131425131426131427131428131429131430131431131432131433131434131435131436131437131438131439131440131441131442131443131444131445131446131447131448131449131450131451131452131453131454131455131456131457131458131459131460131461131462131463131464131465131466131467131468131469131470131471131472131473131474131475131476131477131478131479131480131481131482131483131484131485131486131487131488131489131490131491131492131493131494131495131496131497131498131499131500131501131502131503131504131505131506131507131508131509131510131511131512131513131514131515131516131517131518131519131520131521131522131523131524131525131526131527131528131529131530131531131532131533131534131535131536131537131538131539131540131541131542131543131544131545131546131547131548131549131550131551131552131553131554131555131556131557131558131559131560131561131562131563131564131565131566131567131568131569131570131571131572131573131574131575131576131577131578131579131580131581131582131583131584131585131586131587131588131589131590131591131592131593131594131595131596131597131598131599131600131601131602131603131604131605131606131607131608131609131610131611131612131613131614131615131616131617131618131619131620131621131622131623131624131625131626131627131628131629131630131631131632131633131634131635131636131637131638131639131640131641131642131643131644131645131646131647131648131649131650131651131652131653131654131655131656131657131658131659131660131661131662131663131664131665131666131667131668131669131670131671131672131673131674131675131676131677131678131679131680131681131682131683131684131685131686131687131688131689131690131691131692131693131694131695131696131697131698131699131700131701131702131703131704131705131706131707131708131709131710131711131712131713131714131715131716131717131718131719131720131721131722131723131724131725131726131727131728131729131730131731131732131733131734131735131736131737131738131739131740131741131742131743131744131745131746131747131748131749131750131751131752131753131754131755131756131757131758131759131760131761131762131763131764131765131766131767131768131769131770131771131772131773131774131775131776131777131778131779131780131781131782131783131784131785131786131787131788131789131790131791131792131793131794131795131796131797131798131799131800131801131802131803131804131805131806131807131808131809131810131811131812131813131814131815131816131817131818131819131820131821131822131823131824131825131826131827131828131829131830131831131832131833131834131835131836131837131838131839131840131841131842131843131844131845131846131847131848131849131850131851131852131853131854131855131856131857131858131859131860131861131862131863131864131865131866131867131868131869131870131871131872131873131874131875131876131877131878131879131880131881131882131883131884131885131886131887131888131889131890131891131892131893131894131895131896131897131898131899131900131901131902131903131904131905131906131907131908131909131910131911131912131913131914131915131916131917131918131919131920131921131922131923131924131925131926131927131928131929131930131931131932131933131934131935131936131937131938131939131940131941131942131943131944131945131946131947131948131949131950131951131952131953131954131955131956131957131958131959131960131961131962131963131964131965131966131967131968131969131970131971131972131973131974131975131976131977131978131979131980131981131982131983131984131985131986131987131988131989131990131991131992131993131994131995131996131997131998131999132000132001132002132003132004132005132006132007132008132009132010132011132012132013132014132015132016132017132018132019132020132021132022132023132024132025132026132027132028132029132030132031132032132033132034132035132036132037132038132039132040132041132042132043132044132045132046132047132048132049132050132051132052132053132054132055132056132057132058132059132060132061132062132063132064132065132066132067132068132069132070132071132072132073132074132075132076132077132078132079132080132081132082132083132084132085132086132087132088132089132090132091132092132093132094132095132096132097132098132099132100132101132102132103132104132105132106132107132108132109132110132111132112132113132114132115132116132117132118132119132120132121132122132123132124132125132126132127132128132129132130132131132132132133132134132135132136132137132138132139132140132141132142132143132144132145132146132147132148132149132150132151132152132153132154132155132156132157132158132159132160132161132162132163132164132165132166132167132168132169132170132171132172132173132174132175132176132177132178132179132180132181132182132183132184132185132186132187132188132189132190132191132192132193132194132195132196132197132198132199132200132201132202132203132204132205132206132207132208132209132210132211132212132213132214132215132216132217132218132219132220132221132222132223132224132225132226132227132228132229132230132231132232132233132234132235132236132237132238132239132240132241132242132243132244132245132246132247132248132249132250132251132252132253132254132255132256132257132258132259132260132261132262132263132264132265132266132267132268132269132270132271132272132273132274132275132276132277132278132279132280132281132282132283132284132285132286132287132288132289132290132291132292132293132294132295132296132297132298132299132300132301132302132303132304132305132306132307132308132309132310132311132312132313132314132315132316132317132318132319132320132321132322132323132324132325132326132327132328132329132330132331132332132333132334132335132336132337132338132339132340132341132342132343132344132345132346132347132348132349132350132351132352132353132354132355132356132357132358132359132360132361132362132363132364132365132366132367132368132369132370132371132372132373132374132375132376132377132378132379132380132381132382132383132384132385132386132387132388132389132390132391132392132393132394132395132396132397132398132399132400132401132402132403132404132405132406132407132408132409132410132411132412132413132414132415132416132417132418132419132420132421132422132423132424132425132426132427132428132429132430132431132432132433132434132435132436132437132438132439132440132441132442132443132444132445132446132447132448132449132450132451132452132453132454132455132456132457132458132459132460132461132462132463132464132465132466132467132468132469132470132471132472132473132474132475132476132477132478132479132480132481132482132483132484132485132486132487132488132489132490132491132492132493132494132495132496132497132498132499132500132501132502132503132504132505132506132507132508132509132510132511132512132513132514132515132516132517132518132519132520132521132522132523132524132525132526132527132528132529132530132531132532132533132534132535132536132537132538132539132540132541132542132543132544132545132546132547132548132549132550132551132552132553132554132555132556132557132558132559132560132561132562132563132564132565132566132567132568132569132570132571132572132573132574132575132576132577132578132579132580132581132582132583132584132585132586132587132588132589132590132591132592132593132594132595132596132597132598132599132600132601132602132603132604132605132606132607132608132609132610132611132612132613132614132615132616132617132618132619132620132621132622132623132624132625132626132627132628132629132630132631132632132633132634132635132636132637132638132639132640132641132642132643132644132645132646132647132648132649132650132651132652132653132654132655132656132657132658132659132660132661132662132663132664132665132666132667132668132669132670132671132672132673132674132675132676132677132678132679132680132681132682132683132684132685132686132687132688132689132690132691132692132693132694132695132696132697132698132699132700132701132702132703132704132705132706132707132708132709132710132711132712132713132714132715132716132717132718132719132720132721132722132723132724132725132726132727132728132729132730132731132732132733132734132735132736132737132738132739132740132741132742132743132744132745132746132747132748132749132750132751132752132753132754132755132756132757132758132759132760132761132762132763132764132765132766132767132768132769132770132771132772132773132774132775132776132777132778132779132780132781132782132783132784132785132786132787132788132789132790132791132792132793132794132795132796132797132798132799132800132801132802132803132804132805132806132807132808132809132810132811132812132813132814132815132816132817132818132819132820132821132822132823132824132825132826132827132828132829132830132831132832132833132834132835132836132837132838132839132840132841132842132843132844132845132846132847132848132849132850132851132852132853132854132855132856132857132858132859132860132861132862132863132864132865132866132867132868132869132870132871132872132873132874132875132876132877132878132879132880132881132882132883132884132885132886132887132888132889132890132891132892132893132894132895132896132897132898132899132900132901132902132903132904132905132906132907132908132909132910132911132912132913132914132915132916132917132918132919132920132921132922132923132924132925132926132927132928132929132930132931132932132933132934132935132936132937132938132939132940132941132942132943132944132945132946132947132948132949132950132951132952132953132954132955132956132957132958132959132960132961132962132963132964132965132966132967132968132969132970132971132972132973132974132975132976132977132978132979132980132981132982132983132984132985132986132987132988132989132990132991132992132993132994132995132996132997132998132999133000133001133002133003133004133005133006133007133008133009133010133011133012133013133014133015133016133017133018133019133020133021133022133023133024133025133026133027133028133029133030133031133032133033133034133035133036133037133038133039133040133041133042133043133044133045133046133047133048133049133050133051133052133053133054133055133056133057133058133059133060133061133062133063133064133065133066133067133068133069133070133071133072133073133074133075133076133077133078133079133080133081133082133083133084133085133086133087133088133089133090133091133092133093133094133095133096133097133098133099133100133101133102133103133104133105133106133107133108133109133110133111133112133113133114133115133116133117133118133119133120133121133122133123133124133125133126133127133128133129133130133131133132133133133134133135133136133137133138133139133140133141133142133143133144133145133146133147133148133149133150133151133152133153133154133155133156133157133158133159133160133161133162133163133164133165133166133167133168133169133170133171133172133173133174133175133176133177133178133179133180133181133182133183133184133185133186133187133188133189133190133191133192133193133194133195133196133197133198133199133200133201133202133203133204133205133206133207133208133209133210133211133212133213133214133215133216133217133218133219133220133221133222133223133224133225133226133227133228133229133230133231133232133233133234133235133236133237133238133239133240133241133242133243133244133245133246133247133248133249133250133251133252133253133254133255133256133257133258133259133260133261133262133263133264133265133266133267133268133269133270133271133272133273133274133275133276133277133278133279133280133281133282133283133284133285133286133287133288133289133290133291133292133293133294133295133296133297133298133299133300133301133302133303133304133305133306133307133308133309133310133311133312133313133314133315133316133317133318133319133320133321133322133323133324133325133326133327133328133329133330133331133332133333133334133335133336133337133338133339133340133341133342133343133344133345133346133347133348133349133350133351133352133353133354133355133356133357133358133359133360133361133362133363133364133365133366133367133368133369133370133371133372133373133374133375133376133377133378133379133380133381133382133383133384133385133386133387133388133389133390133391133392133393133394133395133396133397133398133399133400133401133402133403133404133405133406133407133408133409133410133411133412133413133414133415133416133417133418133419133420133421133422133423133424133425133426133427133428133429133430133431133432133433133434133435133436133437133438133439133440133441133442133443133444133445133446133447133448133449133450133451133452133453133454133455133456133457133458133459133460133461133462133463133464133465133466133467133468133469133470133471133472133473133474133475133476133477133478133479133480133481133482133483133484133485133486133487133488133489133490133491133492133493133494133495133496133497133498133499133500133501133502133503133504133505133506133507133508133509133510133511133512133513133514133515133516133517133518133519133520133521133522133523133524133525133526133527133528133529133530133531133532133533133534133535133536133537133538133539133540133541133542133543133544133545133546133547133548133549133550133551133552133553133554133555133556133557133558133559133560133561133562133563133564133565133566133567133568133569133570133571133572133573133574133575133576133577133578133579133580133581133582133583133584133585133586133587133588133589133590133591133592133593133594133595133596133597133598133599133600133601133602133603133604133605133606133607133608133609133610133611133612133613133614133615133616133617133618133619133620133621133622133623133624133625133626133627133628133629133630133631133632133633133634133635133636133637133638133639133640133641133642133643133644133645133646133647133648133649133650133651133652133653133654133655133656133657133658133659133660133661133662133663133664133665133666133667133668133669133670133671133672133673133674133675133676133677133678133679133680133681133682133683133684133685133686133687133688133689133690133691133692133693133694133695133696133697133698133699133700133701133702133703133704133705133706133707133708133709133710133711133712133713133714133715133716133717133718133719133720133721133722133723133724133725133726133727133728133729133730133731133732133733133734133735133736133737133738133739133740133741133742133743133744133745133746133747133748133749133750133751133752133753133754133755133756133757133758133759133760133761133762133763133764133765133766133767133768133769133770133771133772133773133774133775133776133777133778133779133780133781133782133783133784133785133786133787133788133789133790133791133792133793133794133795133796133797133798133799133800133801133802133803133804133805133806133807133808133809133810133811133812133813133814133815133816133817133818133819133820133821133822133823133824133825133826133827133828133829133830133831133832133833133834133835133836133837133838133839133840133841133842133843133844133845133846133847133848133849133850133851133852133853133854133855133856133857133858133859133860133861133862133863133864133865133866133867133868133869133870133871133872133873133874133875133876133877133878133879133880133881133882133883133884133885133886133887133888133889133890133891133892133893133894133895133896133897133898133899133900133901133902133903133904133905133906133907133908133909133910133911133912133913133914133915133916133917133918133919133920133921133922133923133924133925133926133927133928133929133930133931133932133933133934133935133936133937133938133939133940133941133942133943133944133945133946133947133948133949133950133951133952133953133954133955133956133957133958133959133960133961133962133963133964133965133966133967133968133969133970133971133972133973133974133975133976133977133978133979133980133981133982133983133984133985133986133987133988133989133990133991133992133993133994133995133996133997133998133999134000134001134002134003134004134005134006134007134008134009134010134011134012134013134014134015134016134017134018134019134020134021134022134023134024134025134026134027134028134029134030134031134032134033134034134035134036134037134038134039134040134041134042134043134044134045134046134047134048134049134050134051134052134053134054134055134056134057134058134059134060134061134062134063134064134065134066134067134068134069134070134071134072134073134074134075134076134077134078134079134080134081134082134083134084134085134086134087134088134089134090134091134092134093134094134095134096134097134098134099134100134101134102134103134104134105134106134107134108134109134110134111134112134113134114134115134116134117134118134119134120134121134122134123134124134125134126134127134128134129134130134131134132134133134134134135134136134137134138134139134140134141134142134143134144134145134146134147134148134149134150134151134152134153134154134155134156134157134158134159134160134161134162134163134164134165134166134167134168134169134170134171134172134173134174134175134176134177134178134179134180134181134182134183134184134185134186134187134188134189134190134191134192134193134194134195134196134197134198134199134200134201134202134203134204134205134206134207134208134209134210134211134212134213134214134215134216134217134218134219134220134221134222134223134224134225134226134227134228134229134230134231134232134233134234134235134236134237134238134239134240134241134242134243134244134245134246134247134248134249134250134251134252134253134254134255134256134257134258134259134260134261134262134263134264134265134266134267134268134269134270134271134272134273134274134275134276134277134278134279134280134281134282134283134284134285134286134287134288134289134290134291134292134293134294134295134296134297134298134299134300134301134302134303134304134305134306134307134308134309134310134311134312134313134314134315134316134317134318134319134320134321134322134323134324134325134326134327134328134329134330134331134332134333134334134335134336134337134338134339134340134341134342134343134344134345134346134347134348134349134350134351134352134353134354134355134356134357134358134359134360134361134362134363134364134365134366134367134368134369134370134371134372134373134374134375134376134377134378134379134380134381134382134383134384134385134386134387134388134389134390134391134392134393134394134395134396134397134398134399134400134401134402134403134404134405134406134407134408134409134410134411134412134413134414134415134416134417134418134419134420134421134422134423134424134425134426134427134428134429134430134431134432134433134434134435134436134437134438134439134440134441134442134443134444134445134446134447134448134449134450134451134452134453134454134455134456134457134458134459134460134461134462134463134464134465134466134467134468134469134470134471134472134473134474134475134476134477134478134479134480134481134482134483134484134485134486134487134488134489134490134491134492134493134494134495134496134497134498134499134500134501134502134503134504134505134506134507134508134509134510134511134512134513134514134515134516134517134518134519134520134521134522134523134524134525134526134527134528134529134530134531134532134533134534134535134536134537134538134539134540134541134542134543134544134545134546134547134548134549134550134551134552134553134554134555134556134557134558134559134560134561134562134563134564134565134566134567134568134569134570134571134572134573134574134575134576134577134578134579134580134581134582134583134584134585134586134587134588134589134590134591134592134593134594134595134596134597134598134599134600134601134602134603134604134605134606134607134608134609134610134611134612134613134614134615134616134617134618134619134620134621134622134623134624134625134626134627134628134629134630134631134632134633134634134635134636134637134638134639134640134641134642134643134644134645134646134647134648134649134650134651134652134653134654134655134656134657134658134659134660134661134662134663134664134665134666134667134668134669134670134671134672134673134674134675134676134677134678134679134680134681134682134683134684134685134686134687134688134689134690134691134692134693134694134695134696134697134698134699134700134701134702134703134704134705134706134707134708134709134710134711134712134713134714134715134716134717134718134719134720134721134722134723134724134725134726134727134728134729134730134731134732134733134734134735134736134737134738134739134740134741134742134743134744134745134746134747134748134749134750134751134752134753134754134755134756134757134758134759134760134761134762134763134764134765134766134767134768134769134770134771134772134773134774134775134776134777134778134779134780134781134782134783134784134785134786134787134788134789134790134791134792134793134794134795134796134797134798134799134800134801134802134803134804134805134806134807134808134809134810134811134812134813134814134815134816134817134818134819134820134821134822134823134824134825134826134827134828134829134830134831134832134833134834134835134836134837134838134839134840134841134842134843134844134845134846134847134848134849134850134851134852134853134854134855134856134857134858134859134860134861134862134863134864134865134866134867134868134869134870134871134872134873134874134875134876134877134878134879134880134881134882134883134884134885134886134887134888134889134890134891134892134893134894134895134896134897134898134899134900134901134902134903134904134905134906134907134908134909134910134911134912134913134914134915134916134917134918134919134920134921134922134923134924134925134926134927134928134929134930134931134932134933134934134935134936134937134938134939134940134941134942134943134944134945134946134947134948134949134950134951134952134953134954134955134956134957134958134959134960134961134962134963134964134965134966134967134968134969134970134971134972134973134974134975134976134977134978134979134980134981134982134983134984134985134986134987134988134989134990134991134992134993134994134995134996134997134998134999135000135001135002135003135004135005135006135007135008135009135010135011135012135013135014135015135016135017135018135019135020135021135022135023135024135025135026135027135028135029135030135031135032135033135034135035135036135037135038135039135040135041135042135043135044135045135046135047135048135049135050135051135052135053135054135055135056135057135058135059135060135061135062135063135064135065135066135067135068135069135070135071135072135073135074135075135076135077135078135079135080135081135082135083135084135085135086135087135088135089135090135091135092135093135094135095135096135097135098135099135100135101135102135103135104135105135106135107135108135109135110135111135112135113135114135115135116135117135118135119135120135121135122135123135124135125135126135127135128135129135130135131135132135133135134135135135136135137135138135139135140135141135142135143135144135145135146135147135148135149135150135151135152135153135154135155135156135157135158135159135160135161135162135163135164135165135166135167135168135169135170135171135172135173135174135175135176135177135178135179135180135181135182135183135184135185135186135187135188135189135190135191135192135193135194135195135196135197135198135199135200135201135202135203135204135205135206135207135208135209135210135211135212135213135214135215135216135217135218135219135220135221135222135223135224135225
  1. 2010-12-06 Yael Aharon <yael.aharon@nokia.com>
  2. Reviewed by Andreas Kling.
  3. [Qt] Support focus ring outline color for links.
  4. https://bugs.webkit.org/show_bug.cgi?id=50428
  5. Take width and offset into account when drawing focus ring.
  6. Tests: fast/css/focus-ring-outline-color.html
  7. fast/css/focus-ring-outline-offset.html
  8. fast/css/focus-ring-outline-width.html
  9. * platform/graphics/qt/GraphicsContextQt.cpp:
  10. (WebCore::GraphicsContext::drawFocusRing):
  11. 2010-12-06 Yael Aharon <yael.aharon@nokia.com>
  12. Reviewed by Andreas Kling.
  13. [Qt] Fix focus ring outline color support
  14. https://bugs.webkit.org/show_bug.cgi?id=50325
  15. * platform/graphics/qt/GraphicsContextQt.cpp:
  16. (WebCore::GraphicsContext::drawFocusRing):
  17. Take the outline width into account when drawing the focus ring of image map.
  18. Change the outline-style from dotted to solid. The default outline-width is
  19. 5 pixels, and dotted lines just don't make sense anymore.
  20. Give the focus ring alpha of 50%, following what other ports do.
  21. Save and restore the pen when drawing a focus ring.
  22. 2010-12-06 Andras Becsi <abecsi@webkit.org>
  23. Reviewed by Csaba Osztrogonác.
  24. [Qt][V8] Build fix after r73283.
  25. No new tests needed.
  26. * WebCore.pri: Add missing webaudio directory
  27. to IDL generator includes.
  28. 2010-12-06 Philippe Normand <pnormand@igalia.com>
  29. Reviewed by Martin Robinson.
  30. [soup] implement ResourceHandle::platformSetDefersLoading
  31. https://bugs.webkit.org/show_bug.cgi?id=44158
  32. * platform/network/soup/ResourceHandleSoup.cpp:
  33. (WebCore::ResourceHandle::platformSetDefersLoading): Implemented
  34. using the soup_session_{,un}pause_message APIs.
  35. 2010-12-06 Sergio Villar Senin <svillar@igalia.com>
  36. Reviewed by Martin Robinson.
  37. [GTK] Leak in webkit_soup_cache_load if file contents load fails
  38. https://bugs.webkit.org/show_bug.cgi?id=50558
  39. g_file_get_contents() could return an error after allocating a
  40. buffer for file contents. We must free that memory before
  41. returning.
  42. * platform/network/soup/cache/webkit/soup-cache.c:
  43. (webkit_soup_cache_load): Added a missing g_free().
  44. 2010-12-06 Sheriff Bot <webkit.review.bot@gmail.com>
  45. Unreviewed, rolling out r73351.
  46. http://trac.webkit.org/changeset/73351
  47. https://bugs.webkit.org/show_bug.cgi?id=50560
  48. "The change broke plugin tests in Chromium" (Requested by
  49. yurys on #webkit).
  50. * bindings/js/ScriptCallStackFactory.cpp:
  51. (WebCore::ScriptCallStack::stackTrace):
  52. * bindings/js/ScriptCallStackFactory.h:
  53. * bindings/v8/ScriptCallStackFactory.cpp:
  54. (WebCore::toScriptCallFrame):
  55. (WebCore::toScriptCallFramesVector):
  56. (WebCore::createScriptCallStack):
  57. (WebCore::ScriptCallStack::stackTrace):
  58. * bindings/v8/ScriptCallStackFactory.h:
  59. * bindings/v8/V8ConsoleMessage.cpp:
  60. (WebCore::V8ConsoleMessage::handler):
  61. * inspector/ScriptCallFrame.cpp:
  62. (WebCore::ScriptCallFrame::ScriptCallFrame):
  63. (WebCore::ScriptCallFrame::isEqual):
  64. (WebCore::ScriptCallFrame::buildInspectorObject):
  65. * inspector/ScriptCallFrame.h:
  66. (WebCore::ScriptCallFrame::sourceURL):
  67. * inspector/ScriptCallStack.h:
  68. * inspector/TimelineRecordFactory.cpp:
  69. (WebCore::TimelineRecordFactory::createGenericRecord):
  70. * inspector/front-end/ConsoleView.js:
  71. (WebInspector.ConsoleMessage.prototype._populateStackTraceTreeElement):
  72. 2010-12-06 Robert Hogan <robert@webkit.org>
  73. Reviewed by Kenneth Rohde Christiansen.
  74. [Qt] Report zero width for zero size fonts
  75. Report zero width when font size is zero.
  76. Fixes fast/text/font-size-zero.html
  77. https://bugs.webkit.org/show_bug.cgi?id=50539
  78. * platform/graphics/qt/FontQt.cpp:
  79. (WebCore::Font::floatWidthForSimpleText):
  80. (WebCore::Font::floatWidthForComplexText):
  81. 2010-12-03 Yury Semikhatsky <yurys@chromium.org>
  82. Reviewed by Pavel Feldman.
  83. [v8] Web Inspector: remove duplicate code for capturing stack trace
  84. https://bugs.webkit.org/show_bug.cgi?id=50461
  85. No new tests. Covered with existing inspector tests.
  86. * bindings/js/ScriptCallStackFactory.cpp:
  87. (WebCore::createScriptCallStack):
  88. * bindings/js/ScriptCallStackFactory.h:
  89. * bindings/v8/ScriptCallStackFactory.cpp:
  90. (WebCore::toScriptCallFrame):
  91. (WebCore::toScriptCallFramesVector):
  92. (WebCore::createScriptCallStack):
  93. * bindings/v8/ScriptCallStackFactory.h:
  94. * bindings/v8/V8ConsoleMessage.cpp:
  95. (WebCore::V8ConsoleMessage::handler):
  96. * inspector/ScriptCallFrame.cpp:
  97. (WebCore::ScriptCallFrame::ScriptCallFrame):
  98. (WebCore::ScriptCallFrame::isEqual):
  99. (WebCore::ScriptCallFrame::buildInspectorObject):
  100. * inspector/ScriptCallFrame.h:
  101. (WebCore::ScriptCallFrame::sourceURL):
  102. * inspector/ScriptCallStack.h:
  103. * inspector/TimelineRecordFactory.cpp:
  104. (WebCore::TimelineRecordFactory::createGenericRecord):
  105. * inspector/front-end/ConsoleView.js:
  106. (WebInspector.ConsoleMessage.prototype._populateStackTraceTreeElement):
  107. 2010-12-06 Sergio Villar Senin <svillar@igalia.com>
  108. Reviewed by Martin Robinson.
  109. [GTK] webkit_soup_cache_clear() does not delete all entries in the cache
  110. https://bugs.webkit.org/show_bug.cgi?id=50462
  111. Do not use g_hash_table_foreach to remove entries from the cache
  112. entries hashtable. Iterate over a list of entries to remove them
  113. from the hash table.
  114. * platform/network/soup/ResourceHandleSoup.cpp:
  115. * platform/network/soup/cache/webkit/soup-cache.c:
  116. (remove_cache_item):
  117. (webkit_soup_cache_finalize):
  118. (clear_cache_item):
  119. (webkit_soup_cache_clear):
  120. 2010-12-05 Kent Tamura <tkent@chromium.org>
  121. Unreviewed. Run sort-Xcode-project-file.
  122. * WebCore.xcodeproj/project.pbxproj:
  123. 2010-11-30 Luiz Agostini <luiz.agostini@openbossa.org>
  124. Reviewed by Darin Adler.
  125. HTML5 <details> and <summary> initial implementation
  126. https://bugs.webkit.org/show_bug.cgi?id=50309
  127. HTML5 <details> and <summary> elements initial implementation. The main objective is
  128. to add the files for html element and renderers, and to get rid of build system issues
  129. in future patches.
  130. See: http://www.w3.org/TR/html5/interactive-elements.html#the-details-element
  131. http://www.w3.org/TR/html5/interactive-elements.html#the-summary-element
  132. build systems
  133. * CMakeLists.txt:
  134. * DerivedSources.cpp:
  135. * DerivedSources.make:
  136. * GNUmakefile.am:
  137. * WebCore.gypi:
  138. * WebCore.pri:
  139. * WebCore.pro:
  140. * WebCore.vcproj/WebCore.vcproj:
  141. * WebCore.xcodeproj/project.pbxproj:
  142. * bindings/gobject/GNUmakefile.am:
  143. Some css properties to the new html elements.
  144. * css/html.css:
  145. (details):
  146. (summary):
  147. New html element associated with the corresponding tag.
  148. * html/HTMLAttributeNames.in:
  149. * html/HTMLTagNames.in:
  150. 1 html element and 3 renderers were added.
  151. * html/HTMLDetailsElement.cpp: Added.
  152. * html/HTMLDetailsElement.h: Added.
  153. * html/HTMLDetailsElement.idl: Added.
  154. * html/HTMLElementsAllInOne.cpp:
  155. * rendering/RenderDetails.cpp: Added.
  156. * rendering/RenderDetails.h: Added.
  157. * rendering/RenderDetailsMarker.cpp: Added.
  158. * rendering/RenderDetailsMarker.h: Added.
  159. * rendering/RenderSummary.cpp: Added.
  160. * rendering/RenderSummary.h: Added.
  161. * rendering/RenderingAllInOne.cpp:
  162. New renderer type checkers.
  163. * rendering/RenderObject.h:
  164. (WebCore::RenderObject::isDetails):
  165. (WebCore::RenderObject::isDetailsMarker):
  166. (WebCore::RenderObject::isSummary):
  167. 2010-12-05 Rob Buis <rwlbuis@gmail.com>
  168. Reviewed by Nikolas Zimmermann.
  169. createSVGTransformFromMatrix(undefined) => NULL ptr
  170. https://bugs.webkit.org/show_bug.cgi?id=49564
  171. Throw TYPE_MISMATCH_ERR when using undefined or null as value for matrix parameter.
  172. * svg/SVGTransformList.idl:
  173. * svg/properties/SVGTransformListPropertyTearOff.h:
  174. (WebCore::SVGTransformListPropertyTearOff::createSVGTransformFromMatrix):
  175. 2010-12-05 Alejandro G. Castro <alex@igalia.com>
  176. Reviewed by Xan Lopez.
  177. [GTK] Fix compilation warnings reported by clang
  178. https://bugs.webkit.org/show_bug.cgi?id=50252
  179. * platform/graphics/Path.h: CairoPath is now a class, not a
  180. struct.
  181. * platform/network/soup/ResourceHandleSoup.cpp:
  182. (WebCore::sendRequestCallback): Cast the status_code to int.
  183. 2010-12-05 Alejandro G. Castro <alex@igalia.com>
  184. Reviewed by Martin Robinson.
  185. [GTK] Remove setColor functions it was replicated in
  186. CairoUtilities: setSourceRGBAFromColor.
  187. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  188. (WebCore::setPlatformFill):
  189. (WebCore::setPlatformStroke):
  190. (WebCore::fillRectSourceOver):
  191. (WebCore::GraphicsContext::drawRect):
  192. (WebCore::GraphicsContext::drawLine):
  193. (WebCore::GraphicsContext::drawEllipse):
  194. (WebCore::GraphicsContext::strokeArc):
  195. (WebCore::GraphicsContext::drawConvexPolygon):
  196. (WebCore::GraphicsContext::drawFocusRing):
  197. (WebCore::GraphicsContext::fillRoundedRect):
  198. 2010-12-05 Adam Roben <aroben@apple.com>
  199. Windows production build fix
  200. Put spaces after trailing backslashes when setting
  201. %WebKitVSPropsRedirectionDir%. According to MSDN
  202. <http://msdn.microsoft.com/en-us/library/2kzfk8c7(v=VS.80).aspx>:
  203. A backslash ( \ ) followed by a newline character is interpreted as
  204. a space in the command; use a backslash at the end of a line to
  205. continue a command onto the next line. NMAKE interprets the
  206. backslash literally if any other character, including a space or
  207. tab, follows the backslash.
  208. * WebCore.vcproj/WebCore.make:
  209. 2010-12-05 Robert Hogan <robert@webkit.org>
  210. Reviewed by Andreas Kling.
  211. [Qt] Zero-sized font does not yet work
  212. Fix fast/text/font-size-zero.html
  213. Copy other ports by setting minimumFontSize to 0 for DRT runs,
  214. copy a fix to SimpleFontData from chromium/safari, and set font
  215. size in FontPlatformData to zero if size zero is requested
  216. and QFont::pixelSize otherwise. (Note that QFont doesn't accept
  217. a pixel size of zero).
  218. Also fix QFont::setPixelSize in FontPlatformData to use
  219. description.computedPixelSize rather than computedSize and
  220. pixelSize() rather than pointSizeF - since the latter gets
  221. set to -1 if pixelSize is set at all.
  222. https://bugs.webkit.org/show_bug.cgi?id=49759
  223. * platform/graphics/qt/FontPlatformData.h:
  224. (WebCore::FontPlatformDataPrivate::FontPlatformDataPrivate):
  225. (WebCore::FontPlatformData::pixelSize):
  226. * platform/graphics/qt/FontPlatformDataQt.cpp:
  227. (WebCore::FontPlatformData::FontPlatformData):
  228. * platform/graphics/qt/FontQt.cpp:
  229. (WebCore::drawTextCommon):
  230. * platform/graphics/qt/SimpleFontDataQt.cpp:
  231. (WebCore::SimpleFontData::platformInit):
  232. (WebCore::SimpleFontData::platformGlyphInit):
  233. (WebCore::SimpleFontData::platformCharWidthInit):
  234. 2010-12-04 Daniel Bates <dbates@rim.com>
  235. Reviewed by Darin Adler.
  236. Add support for lower-armenian and upper-armenian
  237. https://bugs.webkit.org/show_bug.cgi?id=49641
  238. Implement support for list-style-types lower-armenian and upper-armenian
  239. for lowercase Armenian and uppercase Armenian numerals, respectively.
  240. Tests: fast/lists/w3-css3-lower-armenian.html
  241. fast/lists/w3-css3-upper-armenian.html
  242. * css/CSSPrimitiveValueMappings.h:
  243. (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Added enum values LowerArmenian
  244. and UpperArmenian.
  245. * css/CSSValueKeywords.in: Added "upper-armenian" and "lower-armenian".
  246. * inspector/front-end/SourceCSSTokenizer.re2js: Ditto.
  247. * rendering/RenderListMarker.cpp:
  248. (WebCore::effectiveListMarkerType): Added enum values LowerArmenian
  249. and UpperArmenian.
  250. (WebCore::listMarkerSuffix): Ditto.
  251. (WebCore::listMarkerText): Ditto.
  252. (WebCore::RenderListMarker::paint): Ditto.
  253. (WebCore::RenderListMarker::computePreferredLogicalWidths): Ditto.
  254. (WebCore::RenderListMarker::getRelativeMarkerRect): Ditto.
  255. * rendering/style/RenderStyleConstants.h: Ditto.
  256. 2010-12-04 Dan Bernstein <mitz@apple.com>
  257. Reviewed by Sam Weinig.
  258. WebCore part of <rdar://problem/8145955> Add text search API for counting/marking/highlighting matches in a range
  259. https://bugs.webkit.org/show_bug.cgi?id=50530
  260. * WebCore.exp.in: Export Range version of countMatchesForText().
  261. * editing/Editor.cpp:
  262. (WebCore::isFrameInRange): Added this helper method.
  263. (WebCore::Editor::countMatchesForText): Added a Range parameter and restricted the result to
  264. matches that occur in the range.
  265. * editing/Editor.h:
  266. 2010-12-04 Gavin Peters <gavinp@chromium.org>
  267. Reviewed by Adam Barth.
  268. Implement onload events for <link rel=prefetch>
  269. https://bugs.webkit.org/show_bug.cgi?id=50187
  270. Tests: fast/dom/HTMLLinkElement/link-and-subresource-test.html
  271. fast/dom/HTMLLinkElement/prefetch-onload.html
  272. * html/HTMLLinkElement.cpp:
  273. (WebCore::HTMLLinkElement::HTMLLinkElement):
  274. (WebCore::HTMLLinkElement::~HTMLLinkElement):
  275. (WebCore::HTMLLinkElement::parseMappedAttribute):
  276. (WebCore::HTMLLinkElement::process):
  277. (WebCore::HTMLLinkElement::onloadTimerFired):
  278. (WebCore::HTMLLinkElement::notifyFinished):
  279. * html/HTMLLinkElement.h:
  280. * loader/cache/CachedResource.cpp:
  281. (WebCore::CachedResource::data):
  282. 2010-12-04 Xan Lopez <xlopez@igalia.com>
  283. Reviewed by Martin Robinson.
  284. [GTK] Drop GdkDrawable usage, it's deprecated in GTK+3.x and we can use GdkWindow
  285. https://bugs.webkit.org/show_bug.cgi?id=50451
  286. GdkDrawable has been removed in GTK+3.x. To cope with this we can
  287. actually stop using it altogether, since GdkWindow is just a
  288. typedef for it and that seems to be good enough for us.
  289. * platform/graphics/GraphicsContext.h: s/GdkDrawable/GdkWindow/.
  290. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  291. (WebCore::GraphicsContext::gdkWindow): ditto.
  292. * platform/gtk/GtkVersioning.h: declare GDK_WINDOW_XWINDOW for GTK 3.x builds.
  293. * platform/gtk/PlatformScreenGtk.cpp:
  294. (WebCore::screenAvailableRect): s/GdkDrawable/GdkWindow/.
  295. * platform/gtk/WidgetGtk.cpp:
  296. (WebCore::gdkWindow): ditto.
  297. (WebCore::Widget::setCursor): ditto.
  298. * platform/gtk/WidgetRenderingContextGtk2.cpp: ditto.
  299. 2010-12-03 Dimitri Glazkov <dglazkov@chromium.org>
  300. Reviewed by Darin Adler.
  301. REGRESSION(r71934): input event fires twice when editing text inside a text input.
  302. https://bugs.webkit.org/show_bug.cgi?id=50477
  303. Now that events escape the shadow DOM boundary, the input event is fired twice
  304. for each input, once triggered by editing, once triggered by value change.
  305. Test: fast/forms/text-input-event.html
  306. * dom/InputElement.cpp:
  307. (WebCore::InputElement::setValueFromRenderer): Added a check to ensure editable fields
  308. don't fire an extra input event.
  309. 2010-12-03 Sheriff Bot <webkit.review.bot@gmail.com>
  310. Unreviewed, rolling out r73302.
  311. http://trac.webkit.org/changeset/73302
  312. https://bugs.webkit.org/show_bug.cgi?id=50499
  313. Causes crashes in debug LayoutTests (Requested by xan_ on
  314. #webkit).
  315. * accessibility/AccessibilityRenderObject.cpp:
  316. (WebCore::AccessibilityRenderObject::renderParentObject):
  317. (WebCore::AccessibilityRenderObject::addChildren):
  318. * accessibility/AccessibilityRenderObject.h:
  319. * accessibility/chromium/AccessibilityObjectChromium.cpp:
  320. (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
  321. 2010-12-01 Ilya Tikhonovsky <loislo@chromium.org>
  322. Reviewed by Pavel Feldman.
  323. Web Inspector: Inspector protocol cleanup task.
  324. The patch has just small renames and adjustments for the protocol things.
  325. 'handler' keyword in idl file was replaced with 'domain'.
  326. 'domain' property was assigned for the each backend to frontend messages.
  327. At the next step WebInspector wrapper functions will be removed and 'agents' will be called directly.
  328. https://bugs.webkit.org/show_bug.cgi?id=50337
  329. * inspector/CodeGeneratorInspector.pm:
  330. * inspector/Inspector.idl:
  331. * inspector/front-end/inspector.js:
  332. (WebInspector_syncDispatch):
  333. 2010-12-03 Alexander Pavlov <apavlov@chromium.org>
  334. Reviewed by Yury Semikhatsky.
  335. Web Inspector: Duplicate "!important" for !important properties displayed in the Styles pane
  336. https://bugs.webkit.org/show_bug.cgi?id=50460
  337. * inspector/front-end/StylesSidebarPane.js:
  338. * inspector/front-end/inspector.css:
  339. 2010-12-03 Xan Lopez <xlopez@igalia.com>
  340. Unreviewed build fix.
  341. The JS code generator includes headers unconditionally, so we need
  342. to generate them unconditionally and disable the feature. The
  343. WebAudio files hadn't been added to our sources list.
  344. * GNUmakefile.am:
  345. 2010-12-03 Patrick Gansterer <paroga@webkit.org>
  346. Unreviewed build fix.
  347. Try to fix EFL build after r73273.
  348. * CMakeLists.txt:
  349. 2010-12-03 Chris Guillory <chris.guillory@google.com>
  350. Reviewed by Chris Fleizach.
  351. Include the FrameView widget of a RenderWidget in the accessibility tree.
  352. https://bugs.webkit.org/show_bug.cgi?id=49106
  353. Include render widget children in the accessibility tree for not mac webkit ports.
  354. * accessibility/AccessibilityRenderObject.cpp:
  355. (WebCore::AccessibilityRenderObject::renderParentObject):
  356. (WebCore::AccessibilityRenderObject::addChildren):
  357. (WebCore::AccessibilityRenderObject::addRenderWidgetChildren):
  358. * accessibility/AccessibilityRenderObject.h:
  359. * accessibility/chromium/AccessibilityObjectChromium.cpp:
  360. (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
  361. 2010-11-30 Abhishek Arya <inferno@chromium.org>
  362. Reviewed by Dave Hyatt.
  363. Don't clone an anonymous block, instead create a new one in splitBlocks. Also,
  364. when beforeChild is not in one of our children, then do the processing first
  365. to get its anonymous container before calling splitBlocks.
  366. https://bugs.webkit.org/show_bug.cgi?id=49928
  367. Tests: fast/multicol/span/anonymous-before-child-parent-crash.html
  368. fast/multicol/span/anonymous-split-block-crash.html
  369. * rendering/RenderBlock.cpp:
  370. (WebCore::RenderBlock::splitBlocks):
  371. (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
  372. 2010-12-03 Mark Rowe <mrowe@apple.com>
  373. Reviewed by Eric Seidel.
  374. Animated GIF animates much more slowly in Safari than Firefox
  375. <rdar://problem/7689300> / <http://webkit.org/b/26455>
  376. Adopt Firefox's behavior for frame duration clamping. Images that specify a frame duration
  377. of <= 10ms are treated as having a frame duration of 100ms, while all other images use the
  378. frame duration that they specify.
  379. ImageIO currently implements its own clamping of frame durations (<rdar://problem/7689297>)
  380. which will result in this change having no observable effect on platforms where it is used
  381. until an updated version of ImageIO becomes available.
  382. * platform/graphics/ImageSource.cpp:
  383. (WebCore::ImageSource::frameDurationAtIndex): Update the formatting of the comment and style
  384. of the code to match that in ImageSourceCG.
  385. * platform/graphics/cg/ImageSourceCG.cpp:
  386. (WebCore::ImageSource::frameDurationAtIndex):
  387. 2010-12-03 Chris Rogers <crogers@google.com>
  388. Unreviewed build fix.
  389. Fix M_E compile error on Chromium Win
  390. https://bugs.webkit.org/show_bug.cgi?id=50479
  391. * platform/audio/AudioUtilities.cpp:
  392. (WebCore::AudioUtilities::discreteTimeConstantForSampleRate):
  393. 2010-12-03 Chris Rogers <crogers@google.com>
  394. Unreviewed build fix.
  395. Try to fix GTK build due to recent web audio makefile changes (disable ENABLE_WEB_AUDIO explicitly)
  396. https://bugs.webkit.org/show_bug.cgi?id=50478
  397. * GNUmakefile.am:
  398. 2010-12-03 Simon Fraser <simon.fraser@apple.com>
  399. Reviewed by Dirk Schulze.
  400. Clean up some text-related code on GraphicsContext
  401. https://bugs.webkit.org/show_bug.cgi?id=50464
  402. Save 8 bytes in GraphicsContextState by rearranging the
  403. data members to reduce padding.
  404. * platform/graphics/GraphicsContextPrivate.h:
  405. (WebCore::GraphicsContextState::GraphicsContextState):
  406. 2010-12-03 Simon Fraser <simon.fraser@apple.com>
  407. Another Chromium build fix.
  408. * platform/graphics/skia/GraphicsContextSkia.cpp:
  409. (WebCore::GraphicsContext::setPlatformTextDrawingMode):
  410. 2010-12-03 Simon Fraser <simon.fraser@apple.com>
  411. Fix Chromium build.
  412. * platform/graphics/skia/PlatformContextSkia.h:
  413. 2010-12-03 Patrick Gansterer <paroga@webkit.org>
  414. Reviewed by Andreas Kling.
  415. [CMake] Remove WebCore_IDL_PURE_FILES
  416. https://bugs.webkit.org/show_bug.cgi?id=50445
  417. * CMakeLists.txt:
  418. 2010-12-03 Jia Pu <jpu@apple.com>
  419. Reviewed by Darin Adler.
  420. Need to move all code that applies correction into correction panel callback.
  421. https://bugs.webkit.org/show_bug.cgi?id=50426
  422. <rdar://problem/8720832>
  423. No new test, since there's no behavioral change.
  424. This patch is to prepare WebKit to work with upcoming AppKit changes. The main changes are:
  425. 1. Moved all calls to applyCorrectionPanelInfo() into handleCorrectionPanelResult().
  426. 2. Added more user dictionary learning code.
  427. 3. Removed m_ prefix in all member variables of CorrectionPanelInfo.
  428. * editing/CorrectionPanelInfo.h: Remove m_ prefix on member variables. Added ReasonForDismissingCorrectionPanel enum type.
  429. * editing/Editor.cpp: Moved all calls to applyCorrectionPanelInfo() into handleCorrectionPanelResult().
  430. Adopted new member variable naming in class CorrectionPanelInfo.
  431. (WebCore::Editor::respondToChangedSelection):
  432. (WebCore::Editor::~Editor):
  433. (WebCore::Editor::markMisspellingsAfterTypingToWord):
  434. (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
  435. (WebCore::Editor::correctionPanelTimerFired):
  436. (WebCore::Editor::handleCorrectionPanelResult):
  437. (WebCore::Editor::startCorrectionPanelTimer):
  438. (WebCore::Editor::stopCorrectionPanelTimer):
  439. (WebCore::Editor::handleCancelOperation):
  440. (WebCore::Editor::dismissCorrectionPanel):
  441. (WebCore::Editor::applyCorrectionPanelInfo):
  442. * editing/Editor.h: Changed signature of dismissCorrectionPanel to use ReasonForDismissingCorrectionPanel.
  443. * loader/EmptyClients.h: Ditto.
  444. (WebCore::EmptyEditorClient::dismissCorrectionPanel):
  445. * page/EditorClient.h: Ditto.
  446. 2010-12-03 Pavel Feldman <pfeldman@chromium.org>
  447. Reviewed by Yury Semikhatsky.
  448. Web Inspector: reveal in elements panel does not switch the panel itself.
  449. https://bugs.webkit.org/show_bug.cgi?id=50408
  450. * inspector/front-end/ElementsTreeOutline.js:
  451. (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired.focusElement):
  452. (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired):
  453. * inspector/front-end/ObjectPropertiesSection.js:
  454. (WebInspector.ObjectPropertyTreeElement.prototype._contextMenuEventFired):
  455. 2010-12-03 Simon Fraser <simon.fraser@apple.com>
  456. Reviewed by Nikolas Zimmermann.
  457. Clean up some text-related code on GraphicsContext
  458. https://bugs.webkit.org/show_bug.cgi?id=50464
  459. Use defined types for textDrawingMode and it's associated flags.
  460. * html/canvas/CanvasRenderingContext2D.cpp:
  461. (WebCore::CanvasRenderingContext2D::drawTextInternal):
  462. * platform/graphics/GraphicsContext.cpp:
  463. (WebCore::GraphicsContext::textDrawingMode):
  464. (WebCore::GraphicsContext::setTextDrawingMode):
  465. (WebCore::GraphicsContext::setPlatformTextDrawingMode):
  466. * platform/graphics/GraphicsContext.h:
  467. * platform/graphics/GraphicsContextPrivate.h:
  468. (WebCore::GraphicsContextState::GraphicsContextState):
  469. * platform/graphics/cairo/FontCairo.cpp:
  470. (WebCore::drawGlyphsShadow):
  471. (WebCore::Font::drawGlyphs):
  472. * platform/graphics/cg/GraphicsContextCG.cpp:
  473. (WebCore::GraphicsContext::setPlatformTextDrawingMode):
  474. * platform/graphics/chromium/FontLinux.cpp:
  475. (WebCore::Font::drawGlyphs):
  476. (WebCore::Font::drawComplexText):
  477. * platform/graphics/gtk/FontGtk.cpp:
  478. (WebCore::drawGlyphsShadow):
  479. (WebCore::Font::drawComplexText):
  480. * platform/graphics/mac/FontMac.mm:
  481. (WebCore::Font::drawGlyphs):
  482. * platform/graphics/openvg/PainterOpenVG.cpp:
  483. (WebCore::PlatformPainterState::PlatformPainterState):
  484. (WebCore::PainterOpenVG::textDrawingMode):
  485. (WebCore::PainterOpenVG::setTextDrawingMode):
  486. (WebCore::PainterOpenVG::drawText):
  487. * platform/graphics/qt/FontQt.cpp:
  488. (WebCore::drawTextCommon):
  489. * platform/graphics/skia/PlatformContextSkia.cpp:
  490. (WebCore::PlatformContextSkia::State::State):
  491. (WebCore::PlatformContextSkia::getTextDrawingMode):
  492. (WebCore::PlatformContextSkia::setTextDrawingMode):
  493. * platform/graphics/skia/SkiaFontWin.cpp:
  494. (WebCore::windowsCanHandleTextDrawing):
  495. (WebCore::paintSkiaText):
  496. * platform/graphics/texmap/TextureMapper.h:
  497. (WebCore::TextureMapper::setTextDrawingMode):
  498. (WebCore::TextureMapper::textDrawingMode):
  499. (WebCore::TextureMapper::TextureMapper):
  500. * platform/graphics/win/FontCGWin.cpp:
  501. (WebCore::drawGDIGlyphs):
  502. (WebCore::Font::drawGlyphs):
  503. * platform/graphics/wince/GraphicsContextWinCE.cpp:
  504. (WebCore::GraphicsContext::drawText):
  505. * rendering/InlineTextBox.cpp:
  506. (WebCore::updateGraphicsContext):
  507. * rendering/RenderSVGResourceGradient.cpp:
  508. (WebCore::RenderSVGResourceGradient::applyResource):
  509. * rendering/RenderSVGResourcePattern.cpp:
  510. (WebCore::RenderSVGResourcePattern::applyResource):
  511. * rendering/RenderSVGResourceSolidColor.cpp:
  512. (WebCore::RenderSVGResourceSolidColor::applyResource):
  513. * svg/SVGFont.cpp:
  514. (WebCore::Font::drawTextUsingSVGFont):
  515. 2010-12-03 Chris Rogers <crogers@google.com>
  516. Reviewed by Kenneth Russell.
  517. First steps to adding web audio files to build systems
  518. https://bugs.webkit.org/show_bug.cgi?id=49952
  519. No new tests since audio API is not yet implemented.
  520. * CMakeLists.txt:
  521. * DerivedSources.make:
  522. * ForwardingHeaders/wtf/Complex.h: Added.
  523. * GNUmakefile.am:
  524. * WebCore.gyp/WebCore.gyp:
  525. * WebCore.gypi:
  526. * WebCore.pri:
  527. * WebCore.pro:
  528. * bindings/js/JSDOMWindowCustom.cpp:
  529. (WebCore::JSDOMWindow::audioContext):
  530. * features.pri:
  531. * page/DOMWindow.idl:
  532. * platform/audio/HRTFElevation.cpp:
  533. 2010-12-03 Patrick Gansterer <paroga@webkit.org>
  534. Reviewed by David Levin.
  535. Use String::adopt in TextCodecWinCE::decode
  536. https://bugs.webkit.org/show_bug.cgi?id=50319
  537. * platform/text/wince/TextCodecWinCE.cpp:
  538. (WebCore::TextCodecWinCE::decode):
  539. 2010-12-03 Brady Eidson <beidson@apple.com>
  540. Reviewed by Anders Carlsson.
  541. Groundwork for <rdar://problem/7660733> and https://bugs.webkit.org/show_bug.cgi?id=50191
  542. WebKit2 Authentication Support
  543. * WebCore.exp.in:
  544. Expose the AuthenticationClient for WK2 platforms (Windows already does this):
  545. * platform/network/mac/AuthenticationChallenge.h:
  546. * platform/network/mac/AuthenticationMac.mm:
  547. (-[WebCoreAuthenticationClientAsChallengeSender client]):
  548. (WebCore::AuthenticationChallenge::authenticationClient):
  549. * platform/network/qt/AuthenticationChallenge.h:
  550. (WebCore::AuthenticationChallenge::authenticationClient):
  551. 2010-12-03 Ryosuke Niwa <rniwa@webkit.org>
  552. Reviewed by Darin Adler.
  553. REGRESSION: Crash when deleting text after textarea's value is modified on input event
  554. https://bugs.webkit.org/show_bug.cgi?id=49962
  555. The crash was caused by TypingCommand::deleteKeyPressed's reusing a typing command for
  556. textarea's shadow DOM after its input event handler rewrote the value set by the typing command.
  557. Because the reused typing command's ending selection was pointing at a shadow node
  558. that has been detached from the document when the event handler set the new value,
  559. rootEditableElement of the ending selection was null and caused the crash.
  560. Fixed the bug by updating the ending selection of the last typing command when it differsfrom
  561. that of the current selection held by the SelectionController in TypingCommand::deleteKeyPressed.
  562. Also fixed similar bugs in forwardDeleteKeyPressed and insertText, and insertTextRunWithoutNewlines.
  563. Tests: editing/input/set-value-on-input-and-delete.html
  564. editing/input/set-value-on-input-and-forward-delete.html
  565. editing/input/set-value-on-input-and-type-input.html
  566. editing/input/set-value-on-input-and-type-textarea.html
  567. * editing/InsertTextCommand.h: Added TypingCommand as a friend because it needs to update selection.
  568. * editing/TypingCommand.cpp:
  569. (WebCore::TypingCommand::deleteKeyPressed): Updates the last typing command's selection as needed.
  570. (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
  571. (WebCore::TypingCommand::insertText): Ditto.
  572. (WebCore::TypingCommand::updateSelectionIfDifferentFromCurrentSelection): Added.
  573. (WebCore::TypingCommand::insertTextRunWithoutNewlines): Updates InsertTextCommand's selection as needed.
  574. * editing/TypingCommand.h:
  575. 2010-12-03 Daniel Cheng <dcheng@chromium.org>
  576. Reviewed by Tony Chang.
  577. Dragging and dropping into an empty document crashes WebKit.
  578. https://bugs.webkit.org/show_bug.cgi?id=48793
  579. Remove the assert and update callers to check for a null return value.
  580. Test: manual-tests/drop-in-empty-doc.html
  581. * manual-tests/drop-in-empty-doc.html: Added.
  582. * manual-tests/resources/drop-in-empty-doc.xhtml: Added.
  583. * page/DragController.cpp:
  584. (WebCore::elementUnderMouse):
  585. (WebCore::DragController::tryDocumentDrag):
  586. (WebCore::DragController::concludeEditDrag):
  587. 2010-12-03 Patrick Gansterer <paroga@webkit.org>
  588. Reviewed by Andreas Kling.
  589. Move Inspector generator logic into main CMakeLists.txt file
  590. https://bugs.webkit.org/show_bug.cgi?id=50445
  591. * CMakeLists.txt:
  592. 2010-12-03 Patrick Gansterer <paroga@webkit.org>
  593. Reviewed by Andreas Kling.
  594. Move StringWx.cpp into wtf directory
  595. https://bugs.webkit.org/show_bug.cgi?id=50060
  596. * WebCore.gypi:
  597. * platform/text/wx/StringWx.cpp: Removed.
  598. 2010-12-03 Dimitri Glazkov <dglazkov@chromium.org>
  599. Reviewed by Darin Adler.
  600. REGRESSION(r72783): DOMActivate fires multiple times from input type=file
  601. https://bugs.webkit.org/show_bug.cgi?id=50396
  602. Test: fast/events/shadow-boundary-crossing-2.html
  603. * dom/EventContext.cpp: Reverted changes made in r72783.
  604. * dom/EventContext.h: Ditto.
  605. * dom/Node.cpp:
  606. (WebCore::Node::containsIncludingShadowDOM): Added.
  607. (WebCore::Node::dispatchGenericEvent): Reverted changes made in r72783.
  608. * dom/Node.h: Added decl.
  609. * html/HTMLLabelElement.cpp:
  610. (WebCore::HTMLLabelElement::defaultEventHandler): Reverted changes made in r72783.
  611. 2010-12-03 Patrick Gansterer <paroga@webkit.org>
  612. Reviewed by Andreas Kling.
  613. Move StringBrew.cpp into wtf directory
  614. https://bugs.webkit.org/show_bug.cgi?id=50058
  615. * platform/text/brew/StringBrew.cpp: Removed.
  616. 2010-12-03 Patrick Gansterer <paroga@webkit.org>
  617. Reviewed by Andreas Kling.
  618. Move StringHaiku.cpp into wtf directory
  619. https://bugs.webkit.org/show_bug.cgi?id=50057
  620. * platform/text/haiku/StringHaiku.cpp: Removed.
  621. 2010-12-03 Jessie Berlin <jberlin@apple.com>
  622. Reviewed by Sam Weinig.
  623. Need a WebKit2 Equivalent of WebSecurityOrigin
  624. https://bugs.webkit.org/show_bug.cgi?id=50170
  625. * WebCore.exp.in:
  626. Export the symbol for SecurityOrigin::createFromDatabaseIdentifier.
  627. 2010-12-03 Andras Becsi <abecsi@inf.u-szeged.hu>
  628. Unreviewed build fix after r73254.
  629. [Qt][V8] Add missing headers to $headerIncludes rather than $implIncludes
  630. because headers are needed by the generated .h files.
  631. No new tests needed.
  632. * bindings/scripts/CodeGeneratorV8.pm:
  633. 2010-12-03 Nikolas Zimmermann <nzimmermann@rim.com>
  634. Reviewed by Dirk Schulze.
  635. 1336 files in WebCore rebuild when you touch SVGNames
  636. https://bugs.webkit.org/show_bug.cgi?id=42025
  637. Remove global SVGNames.h dependency, as SVGAnimatedPropertyMacros.h included it.
  638. This requires to add the SVGNames.h include to lots of cpp files.
  639. No functional changes, thus no new tests.
  640. * css/CSSCursorImageValue.cpp:
  641. * css/CSSFontFaceSource.cpp:
  642. * dom/Node.cpp:
  643. * loader/cache/CachedFont.cpp:
  644. * rendering/RenderSVGResourceClipper.cpp:
  645. * rendering/RenderSVGResourceFilter.cpp:
  646. * rendering/RenderSVGTransformableContainer.cpp:
  647. * rendering/RenderSVGViewportContainer.cpp:
  648. * rendering/SVGRenderTreeAsText.cpp:
  649. * rendering/SVGResources.cpp:
  650. * rendering/svg/RenderSVGTextPath.cpp:
  651. * rendering/svg/SVGRootInlineBox.cpp:
  652. * svg/SVGAnimateElement.cpp:
  653. * svg/SVGAnimateMotionElement.cpp:
  654. * svg/SVGAnimateTransformElement.cpp:
  655. * svg/SVGDefsElement.cpp:
  656. * svg/SVGFEBlendElement.cpp:
  657. * svg/SVGFEDisplacementMapElement.cpp:
  658. * svg/SVGFEMergeElement.cpp:
  659. * svg/SVGFEMergeNodeElement.cpp:
  660. * svg/SVGFEOffsetElement.cpp:
  661. * svg/SVGFETileElement.cpp:
  662. * svg/SVGFETurbulenceElement.cpp:
  663. * svg/SVGFont.cpp:
  664. * svg/SVGGElement.cpp:
  665. * svg/SVGImageElement.cpp:
  666. * svg/SVGLength.cpp:
  667. * svg/SVGMPathElement.cpp:
  668. * svg/SVGPathElement.cpp:
  669. * svg/SVGPathSegList.cpp:
  670. * svg/SVGStyledTransformableElement.cpp:
  671. * svg/SVGSymbolElement.cpp:
  672. * svg/SVGTextContentElement.cpp:
  673. * svg/SVGTextElement.cpp:
  674. * svg/SVGTextPathElement.cpp:
  675. * svg/SVGUseElement.cpp:
  676. * svg/SVGViewSpec.cpp:
  677. * svg/animation/SMILTimeContainer.cpp:
  678. * svg/properties/SVGAnimatedPropertyMacros.h:
  679. * svg/properties/SVGPathSegListPropertyTearOff.cpp:
  680. 2010-12-02 Philippe Normand <pnormand@igalia.com>
  681. Reviewed by Martin Robinson.
  682. [GStreamer] hasVideo/Audio return false until the pipeline reaches PAUSED
  683. https://bugs.webkit.org/show_bug.cgi?id=50382
  684. Go to PAUSED even if preload is deactivated. In that case don't
  685. process the GStreamer state changes until commitLoad() has been
  686. called. This patch also fixes hasVideo and hasAudio methods,
  687. making them reactive to the playbin2 audio/video tags-changed
  688. signals.
  689. Test: media/controls-without-preload.html
  690. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  691. (WebCore::mediaPlayerPrivateMessageCallback):
  692. (WebCore::mediaPlayerPrivateVideoTagsChangedCallback):
  693. (WebCore::mediaPlayerPrivateAudioTagsChangedCallback):
  694. (WebCore::mediaPlayerPrivateAudioTagsChangeTimeoutCallback):
  695. (WebCore::mediaPlayerPrivateVideoTagsChangeTimeoutCallback):
  696. (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
  697. (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
  698. (WebCore::MediaPlayerPrivateGStreamer::load):
  699. (WebCore::MediaPlayerPrivateGStreamer::commitLoad):
  700. (WebCore::MediaPlayerPrivateGStreamer::videoTagsChanged):
  701. (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfVideoTags):
  702. (WebCore::MediaPlayerPrivateGStreamer::audioTagsChanged):
  703. (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfAudioTags):
  704. (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
  705. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
  706. (WebCore::MediaPlayerPrivateGStreamer::hasVideo):
  707. (WebCore::MediaPlayerPrivateGStreamer::hasAudio):
  708. (WebCore::MediaPlayerPrivateGStreamer::loadDelayed):
  709. 2010-12-03 Nikolas Zimmermann <nzimmermann@rim.com>
  710. Reviewed by Dirk Schulze.
  711. Finish splitting DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for the remaining SVGAnimated* types
  712. https://bugs.webkit.org/show_bug.cgi?id=50440
  713. Continuing the work on bug 42025: Introduce (DECLARE|DEFINE)_ANIMATED_(ANGLE|BOOLEAN|INTEGER|PRESERVEASPECTRATIO|RECT).
  714. The animated property declaration lives in the header, the definition in the cpp file, to avoid the dependency on SVGNames.h in all headers.
  715. No functional changes, thus no new tests.
  716. * svg/SVGAElement.cpp:
  717. * svg/SVGAElement.h:
  718. * svg/SVGAnimatedAngle.h:
  719. * svg/SVGAnimatedBoolean.h:
  720. * svg/SVGAnimatedInteger.h:
  721. * svg/SVGAnimatedPreserveAspectRatio.h:
  722. * svg/SVGAnimatedRect.h:
  723. * svg/SVGAnimationElement.cpp:
  724. * svg/SVGAnimationElement.h:
  725. (WebCore::SVGAnimationElement::calculateDistance):
  726. (WebCore::SVGAnimationElement::animationPath):
  727. * svg/SVGCircleElement.cpp:
  728. * svg/SVGCircleElement.h:
  729. * svg/SVGClipPathElement.cpp:
  730. * svg/SVGClipPathElement.h:
  731. * svg/SVGCursorElement.cpp:
  732. * svg/SVGCursorElement.h:
  733. * svg/SVGDefsElement.cpp:
  734. * svg/SVGDefsElement.h:
  735. * svg/SVGEllipseElement.cpp:
  736. * svg/SVGEllipseElement.h:
  737. * svg/SVGFEConvolveMatrixElement.cpp:
  738. * svg/SVGFEConvolveMatrixElement.h:
  739. * svg/SVGFEImageElement.cpp:
  740. * svg/SVGFEImageElement.h:
  741. * svg/SVGFETurbulenceElement.cpp:
  742. * svg/SVGFETurbulenceElement.h:
  743. * svg/SVGFilterElement.cpp:
  744. * svg/SVGFilterElement.h:
  745. * svg/SVGFilterPrimitiveStandardAttributes.h:
  746. * svg/SVGFontElement.cpp:
  747. (WebCore::SVGFontElement::firstMissingGlyphElement):
  748. (WebCore::SVGFontElement::ensureGlyphCache):
  749. * svg/SVGFontElement.h:
  750. * svg/SVGForeignObjectElement.cpp:
  751. * svg/SVGForeignObjectElement.h:
  752. * svg/SVGGElement.cpp:
  753. * svg/SVGGElement.h:
  754. (WebCore::SVGGElement::isShadowTreeContainerElement):
  755. (WebCore::SVGGElement::isValid):
  756. * svg/SVGGradientElement.cpp:
  757. * svg/SVGGradientElement.h:
  758. * svg/SVGImageElement.cpp:
  759. * svg/SVGImageElement.h:
  760. * svg/SVGLineElement.cpp:
  761. * svg/SVGLineElement.h:
  762. * svg/SVGLinearGradientElement.h:
  763. * svg/SVGMPathElement.cpp:
  764. * svg/SVGMPathElement.h:
  765. * svg/SVGMarkerElement.cpp:
  766. * svg/SVGMarkerElement.h:
  767. * svg/SVGMaskElement.cpp:
  768. * svg/SVGMaskElement.h:
  769. * svg/SVGPathElement.cpp:
  770. * svg/SVGPathElement.h:
  771. * svg/SVGPatternElement.cpp:
  772. * svg/SVGPatternElement.h:
  773. * svg/SVGPolyElement.cpp:
  774. * svg/SVGPolyElement.h:
  775. * svg/SVGRadialGradientElement.h:
  776. * svg/SVGRectElement.cpp:
  777. * svg/SVGRectElement.h:
  778. * svg/SVGSVGElement.cpp:
  779. (WebCore::SVGSVGElement::contentScriptType):
  780. (WebCore::SVGSVGElement::contentStyleType):
  781. (WebCore::SVGSVGElement::parseMappedAttribute):
  782. * svg/SVGSVGElement.h:
  783. * svg/SVGScriptElement.cpp:
  784. * svg/SVGScriptElement.h:
  785. * svg/SVGSwitchElement.cpp:
  786. * svg/SVGSwitchElement.h:
  787. (WebCore::SVGSwitchElement::isValid):
  788. * svg/SVGSymbolElement.cpp:
  789. * svg/SVGSymbolElement.h:
  790. (WebCore::SVGSymbolElement::rendererIsNeeded):
  791. * svg/SVGTextContentElement.cpp:
  792. * svg/SVGTextContentElement.h:
  793. * svg/SVGUseElement.cpp:
  794. * svg/SVGUseElement.h:
  795. * svg/SVGViewElement.cpp:
  796. * svg/SVGViewElement.h:
  797. (WebCore::SVGViewElement::viewTarget):
  798. (WebCore::SVGViewElement::rendererIsNeeded):
  799. * svg/SVGViewSpec.cpp:
  800. * svg/SVGViewSpec.h:
  801. (WebCore::SVGViewSpec::transform):
  802. (WebCore::SVGViewSpec::viewTargetString):
  803. (WebCore::SVGViewSpec::contextElement):
  804. * svg/properties/SVGAnimatedPropertyMacros.h:
  805. 2010-12-03 Noel Gordon <noel.gordon@gmail.com>
  806. Reviewed by Darin Fisher.
  807. [chromium] PNG encoder leaks memory on png_write_row errors.
  808. https://bugs.webkit.org/show_bug.cgi?id=50439
  809. Move the creation of needed C++ objects before the setjmp() point so
  810. those objects have their destructors called if libpng errors invoke
  811. the setjmp() return path.
  812. Other minor cleanup: use the skia bitmap locker class, and remove the
  813. PNGDestroyer class - instead directly call png_destroy_write_struct()
  814. at each of the encodeImpl() return points.
  815. No change in behaviour, so no new tests.
  816. * platform/image-encoders/skia/PNGImageEncoder.cpp:
  817. (WebCore::encodeImpl):
  818. (WebCore::PNGImageEncoder::encode):
  819. 2010-12-02 Philippe Normand <pnormand@igalia.com>
  820. Reviewed by Eric Carlson.
  821. Theme not updated when MediaPlayer m_private engine changes
  822. https://bugs.webkit.org/show_bug.cgi?id=50228
  823. Trigger a new rendering of the media element when the private
  824. media-player backend is updated.
  825. * html/HTMLMediaElement.cpp:
  826. (WebCore::HTMLMediaElement::mediaPlayerEngineUpdated):
  827. * html/HTMLMediaElement.h:
  828. * platform/graphics/MediaPlayer.cpp:
  829. (WebCore::MediaPlayer::MediaPlayer):
  830. (WebCore::MediaPlayer::load):
  831. * platform/graphics/MediaPlayer.h:
  832. (WebCore::MediaPlayerClient::mediaPlayerEngineUpdated):
  833. 2010-12-03 Yonathan Randolph <yonathan@gmail.com>
  834. Reviewed by Alexey Proskuryakov.
  835. XPath lexer misinterprets expression starting with "div".
  836. https://bugs.webkit.org/show_bug.cgi?id=50366
  837. * xml/XPathParser.cpp:
  838. * xml/XPathParser.h:
  839. (WebCore::XPath::Parser::isOperatorContext): removed (renamed)
  840. (WebCore::XPath::Parser::isBinaryOperatorContext): added
  841. 2010-12-02 Rob Buis <rwlbuis@gmail.com>
  842. Reviewed by Alexey Proskuryakov.
  843. CSS 2.1 failure: at-import-*
  844. https://bugs.webkit.org/show_bug.cgi?id=47153
  845. Fix at-import-010.htm by only setting m_allowImportRules
  846. to false when creating valid style or page rules.
  847. Test: css2.1/t040105-import-10-b.html
  848. * css/CSSParser.cpp:
  849. (WebCore::CSSParser::createStyleRule):
  850. 2010-12-02 Aaron Boodman <aa@chromium.org>
  851. Reviewed by David Hyatt.
  852. Reduce the number of cases where we end up with a stale value for
  853. minimumPreferredLogicalWidth(). This isn't a complete fix, but fixes a
  854. large number of cases.
  855. RenderObject::minimumPreferredLogicalWidth() sometimes reports wrong value.
  856. https://bugs.webkit.org/show_bug.cgi?id=50119
  857. * rendering/RenderBox.cpp:
  858. (WebCore::RenderBox::styleDidChange):
  859. 2010-12-02 Gregg Tavares <gman@google.com>
  860. Reviewed by David Levin.
  861. Need to initialize destination variables before calling GL
  862. https://bugs.webkit.org/show_bug.cgi?id=50048
  863. No new tests because no change in functionality.
  864. * html/canvas/WebGLFramebuffer.cpp:
  865. (WebCore::WebGLFramebuffer::initializeRenderbuffers):
  866. * html/canvas/WebGLProgram.cpp:
  867. (WebCore::WebGLProgram::cacheActiveAttribLocations):
  868. * html/canvas/WebGLRenderingContext.cpp:
  869. (WebCore::WebGLRenderingContext::getAttachedShaders):
  870. (WebCore::WebGLRenderingContext::getBufferParameter):
  871. (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter):
  872. (WebCore::WebGLRenderingContext::getBooleanParameter):
  873. (WebCore::WebGLRenderingContext::getFloatParameter):
  874. (WebCore::WebGLRenderingContext::getLongParameter):
  875. (WebCore::WebGLRenderingContext::getUnsignedLongParameter):
  876. * platform/graphics/chromium/LayerChromium.cpp:
  877. (WebCore::loadShader):
  878. (WebCore::LayerChromium::createShaderProgram):
  879. * platform/graphics/chromium/LayerRendererChromium.cpp:
  880. (WebCore::LayerRendererChromium::initializeSharedObjects):
  881. * platform/graphics/gpu/DrawingBuffer.cpp:
  882. (WebCore::DrawingBuffer::reset):
  883. * platform/graphics/gpu/Shader.cpp:
  884. (WebCore::Shader::loadProgram):
  885. 2010-12-02 Laszlo Gombos <laszlo.1.gombos@nokia.com>
  886. Reviewed by Andreas Kling.
  887. [Qt] Enable Web Timing for Qt
  888. https://bugs.webkit.org/show_bug.cgi?id=42433
  889. * features.pri: Enable Web Timing for trunk (but not yet for
  890. production)
  891. 2010-12-02 Andy Estes <aestes@apple.com>
  892. Rubber-stamped by Mark Rowe.
  893. Update bindings test results with new GObject results.
  894. * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
  895. (WebKit::kit):
  896. * bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h:
  897. * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
  898. (WebKit::kit):
  899. * bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h:
  900. * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
  901. (WebKit::kit):
  902. * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h:
  903. * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  904. (WebKit::kit):
  905. (webkit_dom_test_obj_obj_method):
  906. (webkit_dom_test_obj_obj_method_with_args):
  907. (webkit_dom_test_obj_method_that_requires_all_args):
  908. (webkit_dom_test_obj_method_that_requires_all_args_and_throws):
  909. (webkit_dom_test_obj_with_script_state_obj):
  910. (webkit_dom_test_obj_with_script_state_obj_exception):
  911. (webkit_dom_test_obj_get_read_only_test_obj_attr):
  912. (webkit_dom_test_obj_get_test_obj_attr):
  913. (webkit_dom_test_obj_get_xml_obj_attr):
  914. * bindings/scripts/test/GObject/WebKitDOMTestObjPrivate.h:
  915. 2010-12-02 Simon Fraser <simon.fraser@apple.com>
  916. Revert r73217 and r73227 because of continued bustage.
  917. * WebCore.xcodeproj/project.pbxproj:
  918. * platform/graphics/GraphicsLayer.h:
  919. (WebCore::GraphicsLayer::nativeLayer):
  920. * platform/graphics/ca/PlatformCAAnimation.h: Removed.
  921. * platform/graphics/ca/PlatformCALayer.h: Removed.
  922. * platform/graphics/ca/mac/PlatformCAAnimationMac.mm: Removed.
  923. * platform/graphics/ca/mac/PlatformCALayerMac.mm: Removed.
  924. * platform/graphics/chromium/GraphicsLayerChromium.cpp:
  925. (WebCore::GraphicsLayerChromium::nativeLayer):
  926. * platform/graphics/chromium/GraphicsLayerChromium.h:
  927. * platform/graphics/mac/GraphicsLayerMac.h: Renamed from WebCore/platform/graphics/ca/GraphicsLayerCA.h.
  928. (WebCore::GraphicsLayerMac::hasContentsLayer):
  929. (WebCore::GraphicsLayerMac::primaryLayer):
  930. (WebCore::GraphicsLayerMac::isReplicatedRootClone):
  931. (WebCore::GraphicsLayerMac::primaryLayerClones):
  932. (WebCore::GraphicsLayerMac::animationIsRunning):
  933. (WebCore::GraphicsLayerMac::contentsLayer):
  934. (WebCore::GraphicsLayerMac::ReplicaState::ReplicaState):
  935. (WebCore::GraphicsLayerMac::ReplicaState::push):
  936. (WebCore::GraphicsLayerMac::ReplicaState::setBranchType):
  937. (WebCore::GraphicsLayerMac::ReplicaState::pop):
  938. (WebCore::GraphicsLayerMac::ReplicaState::depth):
  939. (WebCore::GraphicsLayerMac::ReplicaState::replicaDepth):
  940. (WebCore::GraphicsLayerMac::hasCloneLayers):
  941. (WebCore::GraphicsLayerMac::LayerPropertyAnimation::LayerPropertyAnimation):
  942. (WebCore::GraphicsLayerMac::AnimationProcessingAction::AnimationProcessingAction):
  943. * platform/graphics/mac/GraphicsLayerMac.mm: Renamed from WebCore/platform/graphics/ca/GraphicsLayerCA.cpp.
  944. (WebCore::currentTimeToMediaTime):
  945. (WebCore::mediaTimeToCurrentTime):
  946. (-[WebAnimationDelegate animationDidStart:]):
  947. (-[WebAnimationDelegate WebCore::]):
  948. (-[WebAnimationDelegate setLayer:WebCore::]):
  949. (WebCore::copyTransform):
  950. (WebCore::getTransformFunctionValue):
  951. (WebCore::getValueFunctionNameForTransformOperation):
  952. (WebCore::propertyIdToString):
  953. (WebCore::animationIdentifier):
  954. (WebCore::getCAMediaTimingFunction):
  955. (WebCore::setLayerBorderColor):
  956. (WebCore::clearBorderColor):
  957. (WebCore::setLayerBackgroundColor):
  958. (WebCore::clearLayerBackgroundColor):
  959. (WebCore::safeSetSublayers):
  960. (WebCore::caValueFunctionSupported):
  961. (WebCore::forceSoftwareAnimation):
  962. (WebCore::nullActionsDictionary):
  963. (WebCore::animationHasStepsTimingFunction):
  964. (WebCore::GraphicsLayer::create):
  965. (WebCore::GraphicsLayerMac::GraphicsLayerMac):
  966. (WebCore::GraphicsLayerMac::~GraphicsLayerMac):
  967. (WebCore::GraphicsLayerMac::setName):
  968. (WebCore::GraphicsLayerMac::nativeLayer):
  969. (WebCore::GraphicsLayerMac::setChildren):
  970. (WebCore::GraphicsLayerMac::addChild):
  971. (WebCore::GraphicsLayerMac::addChildAtIndex):
  972. (WebCore::GraphicsLayerMac::addChildBelow):
  973. (WebCore::GraphicsLayerMac::addChildAbove):
  974. (WebCore::GraphicsLayerMac::replaceChild):
  975. (WebCore::GraphicsLayerMac::removeFromParent):
  976. (WebCore::GraphicsLayerMac::setMaskLayer):
  977. (WebCore::GraphicsLayerMac::setReplicatedLayer):
  978. (WebCore::GraphicsLayerMac::setReplicatedByLayer):
  979. (WebCore::GraphicsLayerMac::setPosition):
  980. (WebCore::GraphicsLayerMac::setAnchorPoint):
  981. (WebCore::GraphicsLayerMac::setSize):
  982. (WebCore::GraphicsLayerMac::setTransform):
  983. (WebCore::GraphicsLayerMac::setChildrenTransform):
  984. (WebCore::GraphicsLayerMac::moveOrCopyLayerAnimation):
  985. (WebCore::GraphicsLayerMac::moveOrCopyAnimationsForProperty):
  986. (WebCore::GraphicsLayerMac::setPreserves3D):
  987. (WebCore::GraphicsLayerMac::setMasksToBounds):
  988. (WebCore::GraphicsLayerMac::setDrawsContent):
  989. (WebCore::GraphicsLayerMac::setBackgroundColor):
  990. (WebCore::GraphicsLayerMac::clearBackgroundColor):
  991. (WebCore::GraphicsLayerMac::setContentsOpaque):
  992. (WebCore::GraphicsLayerMac::setBackfaceVisibility):
  993. (WebCore::GraphicsLayerMac::setOpacity):
  994. (WebCore::GraphicsLayerMac::setNeedsDisplay):
  995. (WebCore::GraphicsLayerMac::setNeedsDisplayInRect):
  996. (WebCore::GraphicsLayerMac::setContentsNeedsDisplay):
  997. (WebCore::GraphicsLayerMac::setContentsRect):
  998. (WebCore::GraphicsLayerMac::addAnimation):
  999. (WebCore::GraphicsLayerMac::pauseAnimation):
  1000. (WebCore::GraphicsLayerMac::removeAnimation):
  1001. (WebCore::GraphicsLayerMac::animationDidStart):
  1002. (WebCore::GraphicsLayerMac::setContentsToImage):
  1003. (WebCore::GraphicsLayerMac::setContentsToMedia):
  1004. (WebCore::GraphicsLayerMac::didDisplay):
  1005. (WebCore::GraphicsLayerMac::syncCompositingState):
  1006. (WebCore::GraphicsLayerMac::syncCompositingStateForThisLayerOnly):
  1007. (WebCore::GraphicsLayerMac::recursiveCommitChanges):
  1008. (WebCore::GraphicsLayerMac::commitLayerChangesBeforeSublayers):
  1009. (WebCore::GraphicsLayerMac::commitLayerChangesAfterSublayers):
  1010. (WebCore::GraphicsLayerMac::updateLayerNames):
  1011. (WebCore::GraphicsLayerMac::updateSublayerList):
  1012. (WebCore::GraphicsLayerMac::updateLayerPosition):
  1013. (WebCore::GraphicsLayerMac::updateLayerSize):
  1014. (WebCore::GraphicsLayerMac::updateAnchorPoint):
  1015. (WebCore::GraphicsLayerMac::updateTransform):
  1016. (WebCore::GraphicsLayerMac::updateChildrenTransform):
  1017. (WebCore::GraphicsLayerMac::updateMasksToBounds):
  1018. (WebCore::GraphicsLayerMac::updateContentsOpaque):
  1019. (WebCore::GraphicsLayerMac::updateBackfaceVisibility):
  1020. (WebCore::GraphicsLayerMac::updateStructuralLayer):
  1021. (WebCore::GraphicsLayerMac::ensureStructuralLayer):
  1022. (WebCore::GraphicsLayerMac::structuralLayerPurpose):
  1023. (WebCore::GraphicsLayerMac::updateLayerDrawsContent):
  1024. (WebCore::GraphicsLayerMac::updateLayerBackgroundColor):
  1025. (WebCore::GraphicsLayerMac::updateContentsImage):
  1026. (WebCore::GraphicsLayerMac::updateContentsMediaLayer):
  1027. (WebCore::GraphicsLayerMac::updateContentsCanvasLayer):
  1028. (WebCore::GraphicsLayerMac::updateContentsRect):
  1029. (WebCore::GraphicsLayerMac::updateMaskLayer):
  1030. (WebCore::GraphicsLayerMac::updateReplicatedLayers):
  1031. (WebCore::GraphicsLayerMac::ReplicaState::cloneID):
  1032. (WebCore::GraphicsLayerMac::replicatedLayerRoot):
  1033. (WebCore::GraphicsLayerMac::updateLayerAnimations):
  1034. (WebCore::GraphicsLayerMac::setCAAnimationOnLayer):
  1035. (WebCore::bug7311367Workaround):
  1036. (WebCore::GraphicsLayerMac::removeCAAnimationFromLayer):
  1037. (WebCore::copyAnimationProperties):
  1038. (WebCore::GraphicsLayerMac::pauseCAAnimationOnLayer):
  1039. (WebCore::GraphicsLayerMac::setContentsToCanvas):
  1040. (WebCore::GraphicsLayerMac::repaintLayerDirtyRects):
  1041. (WebCore::GraphicsLayerMac::updateContentsNeedsDisplay):
  1042. (WebCore::GraphicsLayerMac::createAnimationFromKeyframes):
  1043. (WebCore::GraphicsLayerMac::createTransformAnimationsFromKeyframes):
  1044. (WebCore::GraphicsLayerMac::createBasicAnimation):
  1045. (WebCore::GraphicsLayerMac::createKeyframeAnimation):
  1046. (WebCore::GraphicsLayerMac::setupAnimation):
  1047. (WebCore::GraphicsLayerMac::timingFunctionForAnimationValue):
  1048. (WebCore::GraphicsLayerMac::setAnimationEndpoints):
  1049. (WebCore::GraphicsLayerMac::setAnimationKeyframes):
  1050. (WebCore::GraphicsLayerMac::setTransformAnimationEndpoints):
  1051. (WebCore::GraphicsLayerMac::setTransformAnimationKeyframes):
  1052. (WebCore::GraphicsLayerMac::suspendAnimations):
  1053. (WebCore::GraphicsLayerMac::resumeAnimations):
  1054. (WebCore::GraphicsLayerMac::hostLayerForSublayers):
  1055. (WebCore::GraphicsLayerMac::layerForSuperlayer):
  1056. (WebCore::GraphicsLayerMac::animatedLayer):
  1057. (WebCore::GraphicsLayerMac::animatedLayerClones):
  1058. (WebCore::GraphicsLayerMac::platformLayer):
  1059. (WebCore::GraphicsLayerMac::setDebugBackgroundColor):
  1060. (WebCore::GraphicsLayerMac::setDebugBorder):
  1061. (WebCore::GraphicsLayerMac::constrainedSize):
  1062. (WebCore::GraphicsLayerMac::requiresTiledLayer):
  1063. (WebCore::GraphicsLayerMac::swapFromOrToTiledLayer):
  1064. (WebCore::GraphicsLayerMac::defaultContentsOrientation):
  1065. (WebCore::GraphicsLayerMac::updateContentsTransform):
  1066. (WebCore::GraphicsLayerMac::setupContentsLayer):
  1067. (WebCore::GraphicsLayerMac::findOrMakeClone):
  1068. (WebCore::GraphicsLayerMac::ensureCloneLayers):
  1069. (WebCore::GraphicsLayerMac::removeCloneLayers):
  1070. (WebCore::GraphicsLayerMac::positionForCloneRootLayer):
  1071. (WebCore::GraphicsLayerMac::propagateLayerChangeToReplicas):
  1072. (WebCore::GraphicsLayerMac::fetchCloneLayers):
  1073. (WebCore::GraphicsLayerMac::cloneLayer):
  1074. (WebCore::GraphicsLayerMac::setOpacityInternal):
  1075. (WebCore::GraphicsLayerMac::updateOpacityOnLayer):
  1076. (WebCore::GraphicsLayerMac::noteSublayersChanged):
  1077. (WebCore::GraphicsLayerMac::noteLayerPropertyChanged):
  1078. * platform/graphics/mac/WebLayer.h:
  1079. * platform/graphics/mac/WebLayer.mm:
  1080. (-[WebLayer initWithLayer:]):
  1081. (-[WebLayer setNeedsDisplay]):
  1082. (-[WebLayer setNeedsDisplayInRect:]):
  1083. (-[WebLayer display]):
  1084. (-[WebLayer drawInContext:]):
  1085. (-[WebLayer setLayerOwner:]):
  1086. (-[WebLayer layerOwner]):
  1087. * platform/graphics/mac/WebTiledLayer.h:
  1088. * platform/graphics/mac/WebTiledLayer.mm:
  1089. (-[WebTiledLayer initWithLayer:]):
  1090. (-[WebTiledLayer setNeedsDisplay]):
  1091. (-[WebTiledLayer setNeedsDisplayInRect:]):
  1092. (-[WebTiledLayer display]):
  1093. (-[WebTiledLayer drawInContext:]):
  1094. (-[WebTiledLayer setLayerOwner:]):
  1095. (-[WebTiledLayer layerOwner]):
  1096. * platform/graphics/qt/GraphicsLayerQt.cpp:
  1097. (WebCore::GraphicsLayerQtImpl::flushChanges):
  1098. (WebCore::GraphicsLayerQt::nativeLayer):
  1099. * platform/graphics/qt/GraphicsLayerQt.h:
  1100. * platform/graphics/win/GraphicsLayerCACF.cpp:
  1101. (WebCore::GraphicsLayerCACF::nativeLayer):
  1102. * platform/graphics/win/GraphicsLayerCACF.h:
  1103. 2010-12-02 Noel Gordon <noel.gordon@gmail.com>
  1104. Reviewed by David Levin.
  1105. [chromium] Remove dead code from PNG encoder
  1106. https://bugs.webkit.org/show_bug.cgi?id=50377
  1107. Also webkit style the PNG encoder files.
  1108. No change in behaviour, so no new tests.
  1109. * platform/image-encoders/skia/PNGImageEncoder.cpp:
  1110. (WebCore::encodeImpl):
  1111. (WebCore::PNGImageEncoder::encode):
  1112. * platform/image-encoders/skia/PNGImageEncoder.h:
  1113. 2010-12-02 Yuta Kitamura <yutak@chromium.org>
  1114. Reviewed by Alexey Proskuryakov.
  1115. An attempt to fix Chromium's clang build.
  1116. Implement (non-EventListener) marquee IDL attributes from HTML5.
  1117. https://bugs.webkit.org/show_bug.cgi?id=49786
  1118. * rendering/style/RenderStyle.h:
  1119. (WebCore::InheritedFlags::initialMarqueeSpeed):
  1120. 2010-12-02 Mikhail Naganov <mnaganov@chromium.org>
  1121. Reviewed by Pavel Feldman.
  1122. Web Inspector: Fix heap snapshots loading. Loading is now
  1123. conducted by the Profiles panel which prevents accidental
  1124. simultaneous attempts to load the same profile several times in
  1125. parallel.
  1126. https://bugs.webkit.org/show_bug.cgi?id=50427
  1127. * inspector/front-end/HeapSnapshotView.js:
  1128. (WebInspector.HeapSnapshotView.prototype._loadProfile):
  1129. (WebInspector.HeapSnapshotView.prototype.processLoadedSnapshot):
  1130. * inspector/front-end/ProfilesPanel.js:
  1131. (WebInspector.ProfilesPanel.prototype.loadHeapSnapshot):
  1132. (WebInspector.ProfilesPanel.prototype.addHeapSnapshotChunk):
  1133. (WebInspector.ProfilesPanel.prototype.finishHeapSnapshot):
  1134. 2010-12-02 Chris Marrin <cmarrin@apple.com>
  1135. Reviewed by Simon Fraser.
  1136. Fix Leopard build broken by http://trac.webkit.org/changeset/73217
  1137. * platform/graphics/ca/GraphicsLayerCA.cpp:
  1138. (WebCore::getTransformFunctionValue):
  1139. (WebCore::GraphicsLayerCA::updateContentsTransform):
  1140. * platform/graphics/ca/PlatformCALayer.h:
  1141. * platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
  1142. (PlatformCAAnimation::valueFunction):
  1143. (PlatformCAAnimation::setValueFunction):
  1144. * platform/graphics/ca/mac/PlatformCALayerMac.mm:
  1145. (PlatformCALayer::PlatformCALayer):
  1146. (PlatformCALayer::anchorPoint):
  1147. (PlatformCALayer::setAnchorPoint):
  1148. (PlatformCALayer::contentsTransform):
  1149. (PlatformCALayer::setContentsTransform):
  1150. (PlatformCALayer::isGeometryFlipped):
  1151. (PlatformCALayer::setGeometryFlipped):
  1152. (PlatformCALayer::setMinificationFilter):
  1153. (PlatformCALayer::setMagnificationFilter):
  1154. 2010-12-02 Dan Bernstein <mitz@apple.com>
  1155. Reviewed by Dave Hyatt.
  1156. CSS support for the text-emphasis properties
  1157. Part of <rdar://problem/7720300> Support the CSS3 text-emphasis property
  1158. https://bugs.webkit.org/show_bug.cgi?id=48539
  1159. Test: fast/css/parsing-text-emphasis.html
  1160. * css/CSSComputedStyleDeclaration.cpp:
  1161. (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added text-emphasis-color,
  1162. text-emphasis-position and text-emphasis-style. Left the text-emphasis shorthand unsupported.
  1163. * css/CSSParser.cpp:
  1164. (WebCore::CSSParser::parseValue): Parse the properties.
  1165. (WebCore::CSSParser::parseTextEmphasisStyle): Added.
  1166. * css/CSSParser.h:
  1167. * css/CSSPrimitiveValueMappings.h:
  1168. (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Added TextEmphasisPosition, TextEmphasisFill
  1169. and TextEmphasisMark mappings.
  1170. (WebCore::CSSPrimitiveValue::operator TextEmphasisPosition): Added.
  1171. (WebCore::CSSPrimitiveValue::operator TextEmphasisFill): Added.
  1172. (WebCore::CSSPrimitiveValue::operator TextEmphasisMark): Added.
  1173. * css/CSSPropertyLonghand.cpp:
  1174. (WebCore::initShorthandMap): Added the text-emphasis shorthand.
  1175. * css/CSSPropertyNames.in: Added -webkit-text-emphasis, -webkit-text-emphasis-color,
  1176. -webkit-text-emphasis-position, and -webkit-text-emphasis-style.
  1177. * css/CSSStyleSelector.cpp:
  1178. (WebCore::isValidVisitedLinkProperty): Added text-emphasis-color.
  1179. (WebCore::CSSStyleSelector::applyProperty): Handle the properties.
  1180. * css/CSSValueKeywords.in: Added 'over' and 'under' for text-emphasis-position. Added 'dot',
  1181. 'double-circle', 'triangle', 'sesame', 'filled' and 'open' for text-emphasis-style.
  1182. * rendering/style/RenderStyle.cpp:
  1183. (WebCore::RenderStyle::colorIncludingFallback): Handle text-emphasis-color.
  1184. (WebCore::RenderStyle::textEmphasisMark): Added. Maps the fake 'auto' value to 'dot' or
  1185. 'sesame' based on writing direction.
  1186. * rendering/style/RenderStyle.h: Added accessors.
  1187. (WebCore::InheritedFlags::textEmphasisFill):
  1188. (WebCore::InheritedFlags::textEmphasisCustomMark):
  1189. (WebCore::InheritedFlags::textEmphasisPosition):
  1190. (WebCore::InheritedFlags::setTextEmphasisColor):
  1191. (WebCore::InheritedFlags::setTextEmphasisFill):
  1192. (WebCore::InheritedFlags::setTextEmphasisMark):
  1193. (WebCore::InheritedFlags::setTextEmphasisCustomMark):
  1194. (WebCore::InheritedFlags::setTextEmphasisPosition):
  1195. (WebCore::InheritedFlags::initialTextEmphasisColor):
  1196. (WebCore::InheritedFlags::initialTextEmphasisFill):
  1197. (WebCore::InheritedFlags::initialTextEmphasisMark):
  1198. (WebCore::InheritedFlags::initialTextEmphasisCustomMark):
  1199. (WebCore::InheritedFlags::initialTextEmphasisPosition):
  1200. (WebCore::InheritedFlags::textEmphasisColor):
  1201. * rendering/style/RenderStyleConstants.h:
  1202. * rendering/style/StyleRareInheritedData.cpp:
  1203. (WebCore::StyleRareInheritedData::StyleRareInheritedData):
  1204. (WebCore::StyleRareInheritedData::operator==):
  1205. * rendering/style/StyleRareInheritedData.h:
  1206. 2010-12-02 Chris Marrin <cmarrin@apple.com>
  1207. Reviewed by Simon Fraser.
  1208. Share code between Mac (CA) and Windows (CACF) GraphicsLayer implementations
  1209. https://bugs.webkit.org/show_bug.cgi?id=49388
  1210. Replaced GraphicsLayerMac with GraphicsLayerCA. GraphicsLayerCA is essentially
  1211. identical to GraphicsLayerMac, but replaces all the CoreAnimation specific calls
  1212. with calls to PlatformCALayer and PlatformCAAnimation. This makes GraphicsLayerCA
  1213. platform neutral as long as implementations of those two classes are available.
  1214. Added implementations in PlatformCALayerMac and PlatformCAAnimationMac. Also got
  1215. rid of GraphicsLayer::nativeLayer() and replaced it with GraphicsLayer::platformLayer()
  1216. to avoid confusion since both names were used to refer to the same thing.
  1217. This patch is only for Mac. Windows implementation has not changed.
  1218. * WebCore.xcodeproj/project.pbxproj:
  1219. * platform/graphics/GraphicsLayer.h:
  1220. * platform/graphics/ca: Added.
  1221. * platform/graphics/ca/GraphicsLayerCA.cpp: Added.
  1222. * platform/graphics/ca/GraphicsLayerCA.h: Added.
  1223. * platform/graphics/ca/PlatformCAAnimation.h: Added.
  1224. * platform/graphics/ca/PlatformCALayer.h: Added.
  1225. * platform/graphics/ca/mac: Added.
  1226. * platform/graphics/ca/mac/PlatformCAAnimationMac.mm: Added.
  1227. * platform/graphics/ca/mac/PlatformCALayerMac.mm: Added.
  1228. * platform/graphics/chromium/GraphicsLayerChromium.cpp:
  1229. * platform/graphics/chromium/GraphicsLayerChromium.h:
  1230. * platform/graphics/mac/GraphicsLayerMac.h: Removed.
  1231. * platform/graphics/mac/GraphicsLayerMac.mm: Removed.
  1232. * platform/graphics/mac/WebLayer.h:
  1233. * platform/graphics/mac/WebLayer.mm:
  1234. * platform/graphics/mac/WebTiledLayer.h:
  1235. * platform/graphics/mac/WebTiledLayer.mm:
  1236. * platform/graphics/qt/GraphicsLayerQt.cpp:
  1237. * platform/graphics/qt/GraphicsLayerQt.h:
  1238. * platform/graphics/win/GraphicsLayerCACF.cpp:
  1239. * platform/graphics/win/GraphicsLayerCACF.h:
  1240. 2010-12-02 Joseph Pecoraro <joepeck@webkit.org>
  1241. Reviewed by Darin Adler.
  1242. Update ResourceLoaderSet Enumeration
  1243. https://bugs.webkit.org/show_bug.cgi?id=50405
  1244. Use size_t when working with Vectors and when comparing between size_t types.
  1245. * loader/DocumentLoader.cpp:
  1246. (WebCore::cancelAll):
  1247. (WebCore::setAllDefersLoading):
  1248. 2010-12-02 Jian Li <jianli@chromium.org>
  1249. Reviewed by Kenneth Russell.
  1250. Integer calculation issues in DataView constructor
  1251. https://bugs.webkit.org/show_bug.cgi?id=50354
  1252. Test: fast/canvas/webgl/data-view-crash.html
  1253. * html/canvas/DataView.cpp:
  1254. (WebCore::DataView::create):
  1255. 2010-12-02 Patrick Gansterer <paroga@webkit.org>
  1256. Reviewed by Darin Adler.
  1257. Add AtomicString::fromUTF8
  1258. https://bugs.webkit.org/show_bug.cgi?id=45594
  1259. Use AtomicString::fromUTF8 directly in the libxml2 parser.
  1260. * dom/XMLDocumentParserLibxml2.cpp:
  1261. (WebCore::toAtomicString):
  1262. 2010-12-02 Andy Estes <aestes@apple.com>
  1263. Fix the Qt Linux Release minimal build.
  1264. * html/HTMLMarqueeElement.cpp: Include ExceptionCode.h
  1265. 2010-12-02 Joseph Pecoraro <joepeck@webkit.org>
  1266. Reviewed by Darin Adler.
  1267. Update ResourceLoaderSet Enumeration
  1268. https://bugs.webkit.org/show_bug.cgi?id=50405
  1269. * loader/DocumentLoader.cpp:
  1270. (WebCore::cancelAll): instead of copying the HashSet, use copyToVector.
  1271. (WebCore::setAllDefersLoading): instead of copying the HashSet, use copyToVector.
  1272. 2010-12-02 Andy Estes <aestes@apple.com>
  1273. Reviewed by Darin Adler.
  1274. Implement (non-EventListener) marquee IDL attributes from HTML5.
  1275. https://bugs.webkit.org/show_bug.cgi?id=49786
  1276. Test: fast/html/marquee-element.html
  1277. * html/HTMLMarqueeElement.cpp:
  1278. (WebCore::HTMLMarqueeElement::scrollAmount): If the content attribute
  1279. can be converted to a signed integer and is >= 0, return it.
  1280. Otherwise, return the default scrollAmount value.
  1281. (WebCore::HTMLMarqueeElement::setScrollAmount): Update the content
  1282. attribute if it is >= 0. Otherwise, raise INDEX_SIZE_ERR.
  1283. (WebCore::HTMLMarqueeElement::scrollDelay): Same as scrollAmount.
  1284. (WebCore::HTMLMarqueeElement::setScrollDelay): Same as setScrollAmount.
  1285. (WebCore::HTMLMarqueeElement::loop): If the content attribute can be
  1286. converted to a signed integer and is greater than 0 or equal to -1,
  1287. return it. Otherwise, return the default loop value.
  1288. (WebCore::HTMLMarqueeElement::setLoop): Update the content attribute if
  1289. it is greater than 0 or equal to -1. Otherwise, raise INDEX_SIZE_ERR.
  1290. * html/HTMLMarqueeElement.h:
  1291. * html/HTMLMarqueeElement.idl: Update the IDL to match what is in HTML5.
  1292. * rendering/style/RenderStyle.h:
  1293. (WebCore::InheritedFlags::initialMarqueeSpeed):
  1294. 2010-12-02 Patrick Gansterer <paroga@webkit.org>
  1295. Reviewed by Andreas Kling.
  1296. [OpenVG] Remove "current path" of GraphicsContext
  1297. https://bugs.webkit.org/show_bug.cgi?id=50294
  1298. * platform/graphics/GraphicsContext.h:
  1299. * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
  1300. (WebCore::GraphicsContext::fillPath):
  1301. (WebCore::GraphicsContext::strokePath):
  1302. (WebCore::GraphicsContext::clipPath):
  1303. * platform/graphics/openvg/PainterOpenVG.cpp:
  1304. (WebCore::PainterOpenVG::PainterOpenVG):
  1305. (WebCore::PainterOpenVG::~PainterOpenVG):
  1306. (WebCore::PainterOpenVG::drawPath):
  1307. * platform/graphics/openvg/PainterOpenVG.h:
  1308. 2010-12-02 Patrick Gansterer <paroga@webkit.org>
  1309. Reviewed by Andreas Kling.
  1310. [WINCE] Remove "current path" of GraphicsContext
  1311. https://bugs.webkit.org/show_bug.cgi?id=50284
  1312. * platform/graphics/GraphicsContext.h:
  1313. * platform/graphics/wince/GraphicsContextWinCE.cpp:
  1314. (WebCore::GraphicsContext::fillPath):
  1315. (WebCore::GraphicsContext::strokePath):
  1316. 2010-12-02 Johnny Ding <jnd@chromium.org>
  1317. Reviewed by Adam Barth.
  1318. Set the right gesture status for URL redirections.
  1319. https://bugs.webkit.org/show_bug.cgi?id=47817
  1320. Tests: fast/frames/location-redirect-user-gesture.html
  1321. fast/frames/meta-refresh-user-gesture.html
  1322. * loader/NavigationScheduler.cpp:
  1323. (WebCore::ScheduledNavigation::clearUserGesture):
  1324. (WebCore::ScheduledRedirect::ScheduledRedirect):
  1325. 2010-12-02 Chris Rogers <crogers@google.com>
  1326. Reviewed by Kenneth Russell.
  1327. AudioContext needs createBuffer() method from ArrayBuffer
  1328. https://bugs.webkit.org/show_bug.cgi?id=50343
  1329. No new tests since audio API is not yet implemented.
  1330. * webaudio/AudioContext.cpp:
  1331. (WebCore::AudioContext::createBuffer):
  1332. * webaudio/AudioContext.h:
  1333. * webaudio/AudioContext.idl:
  1334. 2010-12-02 Noel Gordon <noel.gordon@gmail.com>
  1335. Reviewed by David Levin.
  1336. [chromium] Add canvas.toDataURL("image/jpeg", quality) support
  1337. https://bugs.webkit.org/show_bug.cgi?id=49365
  1338. Adds a libjpeg-based image encoder for Skia bitmaps. Default encoding quality
  1339. is 92 to match Mozilla, also Safari, though the actual value used by Safari is
  1340. undocumented, and it appears to pre-blur images prior to compression.
  1341. The preMultipliedBGRAtoRGB() routine restores the un-premultiplied RGB colors
  1342. where there is non-zero alpha. Again, this matches Firefox and Safari, but no
  1343. browser conforms to the HTML5 canvas standard here, I believe, considering the
  1344. result of canvas/philip/tests/toDataURL.jpeg.alpha.html; that test ignores the
  1345. alpha channel when extracting an "image/jpeg".toDataURL(). The correct answer
  1346. needs more investigation, bug http://webkit.org/b/40147.
  1347. Canvas toDataURL is covered by existing tests canvas/philip/tests/toDataURL.*,
  1348. and fast/canvas/*toDataURL* tests.
  1349. * WebCore.gypi:
  1350. * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
  1351. (WebCore::V8HTMLCanvasElement::toDataURLCallback): don't set encoding quality
  1352. here, just pass the toDataURL parameters through to the canvas layer.
  1353. * platform/chromium/MIMETypeRegistryChromium.cpp:
  1354. (WebCore::MIMETypeRegistry::isSupportedImageMIMETypeForEncoding): implement
  1355. the supported mimeTypes for encoding in-place.
  1356. * platform/graphics/skia/ImageBufferSkia.cpp:
  1357. (WebCore::ImageBuffer::toDataURL): add jpeg encoding and quality support.
  1358. * platform/image-encoders/skia/JPEGImageEncoder.cpp: Added.
  1359. (WebCore::prepareOutput):
  1360. (WebCore::writeOutput):
  1361. (WebCore::finishOutput):
  1362. (WebCore::handleError):
  1363. (WebCore::preMultipliedBGRAtoRGB): FIXME: bug 40147.
  1364. (WebCore::JPEGImageEncoder::encode):
  1365. * platform/image-encoders/skia/JPEGImageEncoder.h: Added.
  1366. 2010-12-02 Sheriff Bot <webkit.review.bot@gmail.com>
  1367. Unreviewed, rolling out r73152.
  1368. http://trac.webkit.org/changeset/73152
  1369. https://bugs.webkit.org/show_bug.cgi?id=50401
  1370. the patch has broken chromium win layout tests (Requested by
  1371. loislo on #webkit).
  1372. * inspector/CodeGeneratorInspector.pm:
  1373. * inspector/Inspector.idl:
  1374. * inspector/front-end/Callback.js:
  1375. * inspector/front-end/DOMAgent.js:
  1376. (WebInspector.DOMNode):
  1377. * inspector/front-end/inspector.js:
  1378. (WebInspector.loaded.WebInspector.socket.onmessage):
  1379. (WebInspector.dispatch):
  1380. (WebInspector_syncDispatch):
  1381. (WebInspector.reportProtocolError):
  1382. 2010-12-02 W. James MacLean <wjmaclean@chromium.org>
  1383. Reviewed by James Robinson.
  1384. Scaled Resized images are blurred when sent to Skia
  1385. https://bugs.webkit.org/show_bug.cgi?id=42370
  1386. This patch modifies ImageSkia.cpp to fix the calculation of resampled
  1387. bitmap sizes so as to include the transform matrix of the canvas.
  1388. Includes new tests to catch a scrolling regression and a clipping regression.
  1389. Tests: svg/custom/image-rescale-clip.html
  1390. svg/custom/image-rescale-scroll.html
  1391. svg/custom/image-rescale.svg
  1392. * platform/graphics/skia/ImageSkia.cpp:
  1393. (WebCore::computeResamplingMode):
  1394. (WebCore::drawResampledBitmap):
  1395. 2010-12-02 Erik Arvidsson <arv@chromium.org>
  1396. Reviewed by Darin Adler.
  1397. Missing DOM property for incremental input attribute
  1398. https://bugs.webkit.org/show_bug.cgi?id=50335
  1399. Test: fast/forms/incremental-dom-property.html
  1400. * html/HTMLInputElement.idl: Added attribute
  1401. 2010-12-02 John Knottenbelt <jknotten@chromium.org>
  1402. Reviewed by Steve Block.
  1403. Move requestGeolocationPermissionForFrame to GeolocationClient
  1404. https://bugs.webkit.org/show_bug.cgi?id=50061
  1405. This change facilitates client-based geolocation implementation by
  1406. bringing together permission control into the geolocation client
  1407. interface.
  1408. * page/Chrome.h:
  1409. * page/ChromeClient.h:
  1410. * page/Geolocation.cpp:
  1411. (WebCore::Geolocation::disconnectFrame):
  1412. (WebCore::Geolocation::requestPermission):
  1413. * page/GeolocationClient.h:
  1414. * page/GeolocationController.cpp:
  1415. (WebCore::GeolocationController::requestPermission):
  1416. (WebCore::GeolocationController::cancelPermissionRequest):
  1417. * page/GeolocationController.h:
  1418. * platform/mock/GeolocationClientMock.cpp:
  1419. (WebCore::GeolocationClientMock::GeolocationClientMock):
  1420. (WebCore::GeolocationClientMock::setPermission):
  1421. (WebCore::GeolocationClientMock::requestPermission):
  1422. (WebCore::GeolocationClientMock::cancelPermissionRequest):
  1423. (WebCore::GeolocationClientMock::asyncUpdatePermission):
  1424. (WebCore::GeolocationClientMock::permissionTimerFired):
  1425. (WebCore::GeolocationClientMock::reset):
  1426. (WebCore::GeolocationClientMock::stopUpdating):
  1427. (WebCore::GeolocationClientMock::asyncUpdateController):
  1428. (WebCore::GeolocationClientMock::controllerTimerFired):
  1429. * platform/mock/GeolocationClientMock.h:
  1430. 2010-12-01 Ilya Tikhonovsky <loislo@chromium.org>
  1431. Reviewed by Pavel Feldman.
  1432. Web Inspector: Inspector protocol cleanup task.
  1433. The patch has just small renames and adjustments for the protocol things.
  1434. 'handler' keyword in idl file was replaced with 'domain'.
  1435. 'domain' property was assigned for the each backend to frontend messages.
  1436. At the next step WebInspector wrapper functions will be removed and 'agents' will be called directly.
  1437. https://bugs.webkit.org/show_bug.cgi?id=50337
  1438. * inspector/CodeGeneratorInspector.pm:
  1439. * inspector/Inspector.idl:
  1440. * inspector/front-end/inspector.js:
  1441. (WebInspector_syncDispatch):
  1442. 2010-12-01 Andrey Kosyakov <caseq@chromium.org>
  1443. Reviewed by Pavel Feldman.
  1444. Web Inspector: [Resources panel] [HAR] Need a way to save timing data.
  1445. Re-implementing HAR export functionality that used to be in Resources
  1446. tab in Network tab.
  1447. https://bugs.webkit.org/show_bug.cgi?id=45663
  1448. * inspector/front-end/NetworkPanel.js:
  1449. (WebInspector.NetworkPanel.prototype._createTable):
  1450. (WebInspector.NetworkPanel.prototype._toggleViewingResourceMode):
  1451. (WebInspector.NetworkPanel.prototype._contextMenu):
  1452. (WebInspector.NetworkPanel.prototype._exportAll):
  1453. (WebInspector.NetworkPanel.prototype._exportResource):
  1454. (WebInspector.NetworkDataGridNode.prototype.refreshResource):
  1455. * inspector/front-end/networkPanel.css:
  1456. (.data-grid table.data tr.revealed.network-item):
  1457. (.data-grid.filter-other table.data tr.revealed.network-category-other):
  1458. 2010-12-02 Dai Mikurube <dmikurube@google.com>
  1459. Reviewed by Kent Tamura.
  1460. Reject named colors, accept only #rrggbb in <input type=color />
  1461. https://bugs.webkit.org/show_bug.cgi?id=50308
  1462. * html/ColorInputType.cpp: Modified to accept only simple colors like #xxxxxx.
  1463. (WebCore::isValidColorString):
  1464. 2010-12-02 Vincent Scheib <scheib@chromium.org>
  1465. Reviewed by Darin Fisher.
  1466. [chromium] histograms api updated in WebKitClient and added to ChromiumBridge
  1467. https://bugs.webkit.org/show_bug.cgi?id=50285
  1468. Test by loading "about:histograms" after navigating to accelerated pages.
  1469. * platform/chromium/ChromiumBridge.h: api update.
  1470. 2010-12-02 Andras Becsi <abecsi@webkit.org>
  1471. Unreviewed build fix.
  1472. [Qt][V8] Fix linking of generated sources.
  1473. No new tests needed.
  1474. * WebCore.pro: add missing V8ImageDataCustom.cpp.
  1475. 2010-12-02 Nikolas Zimmermann <nzimmermann@rim.com>
  1476. Reviewed by Adam Roben.
  1477. Split DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for SVGAnimatedString/SVGAnimatedEnumeration
  1478. https://bugs.webkit.org/show_bug.cgi?id=50383
  1479. Continuing the work on bug 42025: Introduce DECLARE_ANIMATED_(STRING|ENUMERATION) / DEFINE_ANIMATED_(STRING|ENUMERATION).
  1480. The animated property declaration lives in the header, the definition in the cpp file, to avoid the dependency on SVGNames.h in all headers.
  1481. No functional changes, thus no new tests.
  1482. * svg/SVGAElement.cpp:
  1483. * svg/SVGAElement.h:
  1484. (WebCore::SVGAElement::isValid):
  1485. (WebCore::SVGAElement::target):
  1486. * svg/SVGAltGlyphElement.cpp:
  1487. * svg/SVGAltGlyphElement.h:
  1488. * svg/SVGAnimatedEnumeration.h:
  1489. * svg/SVGAnimatedString.h:
  1490. * svg/SVGClipPathElement.cpp:
  1491. * svg/SVGClipPathElement.h:
  1492. * svg/SVGComponentTransferFunctionElement.cpp:
  1493. * svg/SVGComponentTransferFunctionElement.h:
  1494. * svg/SVGCursorElement.cpp:
  1495. * svg/SVGCursorElement.h:
  1496. * svg/SVGFEBlendElement.cpp:
  1497. * svg/SVGFEBlendElement.h:
  1498. * svg/SVGFEColorMatrixElement.cpp:
  1499. * svg/SVGFEColorMatrixElement.h:
  1500. * svg/SVGFEComponentTransferElement.cpp:
  1501. * svg/SVGFEComponentTransferElement.h:
  1502. * svg/SVGFECompositeElement.cpp:
  1503. * svg/SVGFECompositeElement.h:
  1504. * svg/SVGFEConvolveMatrixElement.cpp:
  1505. * svg/SVGFEConvolveMatrixElement.h:
  1506. * svg/SVGFEDiffuseLightingElement.cpp:
  1507. * svg/SVGFEDiffuseLightingElement.h:
  1508. * svg/SVGFEDisplacementMapElement.cpp:
  1509. * svg/SVGFEDisplacementMapElement.h:
  1510. * svg/SVGFEGaussianBlurElement.cpp:
  1511. * svg/SVGFEGaussianBlurElement.h:
  1512. * svg/SVGFEImageElement.cpp:
  1513. * svg/SVGFEImageElement.h:
  1514. * svg/SVGFELightElement.cpp:
  1515. * svg/SVGFEMergeNodeElement.cpp:
  1516. * svg/SVGFEMergeNodeElement.h:
  1517. * svg/SVGFEMorphologyElement.cpp:
  1518. * svg/SVGFEMorphologyElement.h:
  1519. * svg/SVGFEOffsetElement.cpp:
  1520. * svg/SVGFEOffsetElement.h:
  1521. * svg/SVGFESpecularLightingElement.cpp:
  1522. * svg/SVGFESpecularLightingElement.h:
  1523. * svg/SVGFETileElement.cpp:
  1524. * svg/SVGFETileElement.h:
  1525. * svg/SVGFETurbulenceElement.cpp:
  1526. * svg/SVGFETurbulenceElement.h:
  1527. * svg/SVGFilterElement.cpp:
  1528. * svg/SVGFilterElement.h:
  1529. * svg/SVGFilterPrimitiveStandardAttributes.cpp:
  1530. * svg/SVGFilterPrimitiveStandardAttributes.h:
  1531. * svg/SVGForeignObjectElement.cpp:
  1532. * svg/SVGForeignObjectElement.h:
  1533. * svg/SVGGradientElement.cpp:
  1534. * svg/SVGGradientElement.h:
  1535. * svg/SVGImageElement.cpp:
  1536. * svg/SVGImageElement.h:
  1537. * svg/SVGMPathElement.cpp:
  1538. * svg/SVGMPathElement.h:
  1539. * svg/SVGMarkerElement.cpp:
  1540. * svg/SVGMarkerElement.h:
  1541. * svg/SVGMaskElement.cpp:
  1542. * svg/SVGMaskElement.h:
  1543. * svg/SVGPatternElement.cpp:
  1544. * svg/SVGPatternElement.h:
  1545. * svg/SVGScriptElement.cpp:
  1546. * svg/SVGScriptElement.h:
  1547. * svg/SVGStyledElement.cpp:
  1548. * svg/SVGStyledElement.h:
  1549. (WebCore::SVGStyledElement::hasRelativeLengths):
  1550. (WebCore::SVGStyledElement::supportsMarkers):
  1551. (WebCore::SVGStyledElement::style):
  1552. (WebCore::SVGStyledElement::updateRelativeLengthsInformation):
  1553. (WebCore::SVGStyledElement::selfHasRelativeLengths):
  1554. (WebCore::SVGStyledElement::isStyled):
  1555. * svg/SVGTRefElement.cpp:
  1556. * svg/SVGTRefElement.h:
  1557. * svg/SVGTextContentElement.cpp:
  1558. * svg/SVGTextContentElement.h:
  1559. * svg/SVGTextPathElement.cpp:
  1560. * svg/SVGTextPathElement.h:
  1561. * svg/SVGUseElement.cpp:
  1562. * svg/SVGUseElement.h:
  1563. 2010-12-02 Patrick Gansterer <paroga@webkit.org>
  1564. Reviewed by Andreas Kling.
  1565. [WX] Remove "current path" of GraphicsContext
  1566. https://bugs.webkit.org/show_bug.cgi?id=50286
  1567. * platform/graphics/GraphicsContext.h:
  1568. * platform/graphics/wx/GraphicsContextWx.cpp:
  1569. (WebCore::GraphicsContext::GraphicsContext):
  1570. (WebCore::GraphicsContext::fillPath):
  1571. (WebCore::GraphicsContext::strokePath):
  1572. 2010-10-26 Martin Robinson <mrobinson@igalia.com>
  1573. Reviewed by Xan Lopez.
  1574. [GTK] Text input controls do not react properly to CSS styling
  1575. https://bugs.webkit.org/show_bug.cgi?id=40855
  1576. Improve text input control rendering. Instead of using the GTK+ border
  1577. attributes of the control modify the padding, they modify the border.
  1578. Make this same choice for search inputs and text area inputs.
  1579. * platform/gtk/RenderThemeGtk.cpp:
  1580. (WebCore::setTextInputBorders): Added this helper which sets text input control
  1581. borders based on GTK+ theme settings.
  1582. (WebCore::RenderThemeGtk::adjustTextFieldStyle): Use the setTextInputBorders helper.
  1583. (WebCore::RenderThemeGtk::adjustTextAreaStyle): Ditto.
  1584. (WebCore::RenderThemeGtk::adjustSearchFieldStyle): Ditto.
  1585. * platform/gtk/RenderThemeGtk.h:
  1586. 2010-12-02 Andreas Kling <kling@webkit.org>
  1587. Reviewed by Kenneth Rohde Christiansen.
  1588. [Qt] GraphicsContext::strokeRect() taints the context's lineWidth
  1589. https://bugs.webkit.org/show_bug.cgi?id=50269
  1590. Test: fast/canvas/canvas-lineWidth-intact-after-strokeRect.html
  1591. * platform/graphics/qt/GraphicsContextQt.cpp:
  1592. (WebCore::GraphicsContext::strokeRect): Restore the context's
  1593. original stroke thickness after painting.
  1594. 2010-12-02 Renata Hodovan <reni@webkit.org>
  1595. Reviewed by Andreas Kling.
  1596. [Qt] GraphicsContext::clip(path) should clip using winding fill
  1597. https://bugs.webkit.org/show_bug.cgi?id=49912
  1598. GraphicsContext::clip(path) now uses winding fill and this function is called by
  1599. GraphicsContext::canvasClip(path).
  1600. No new test is needed.
  1601. * platform/graphics/qt/GraphicsContextQt.cpp:
  1602. (WebCore::GraphicsContext::clip):
  1603. (WebCore::GraphicsContext::canvasClip):
  1604. 2010-12-01 Alexander Pavlov <apavlov@chromium.org>
  1605. Reviewed by Yury Semikhatsky.
  1606. Web Inspector: Remove obsolete CSS backend API from InspectorDOMAgent
  1607. https://bugs.webkit.org/show_bug.cgi?id=50318
  1608. * CMakeLists.txt:
  1609. * GNUmakefile.am:
  1610. * WebCore.gypi:
  1611. * WebCore.order:
  1612. * WebCore.pro:
  1613. * WebCore.vcproj/WebCore.vcproj:
  1614. * WebCore.xcodeproj/project.pbxproj:
  1615. * inspector/Inspector.idl:
  1616. * inspector/InspectorCSSAgent.h:
  1617. * inspector/InspectorCSSStore.cpp: Removed.
  1618. * inspector/InspectorCSSStore.h: Removed.
  1619. * inspector/InspectorController.cpp:
  1620. (WebCore::InspectorController::InspectorController):
  1621. (WebCore::InspectorController::connectFrontend):
  1622. (WebCore::InspectorController::didCommitLoad):
  1623. * inspector/InspectorController.h:
  1624. * inspector/InspectorDOMAgent.cpp:
  1625. (WebCore::InspectorDOMAgent::InspectorDOMAgent):
  1626. (WebCore::InspectorDOMAgent::unbind):
  1627. * inspector/InspectorDOMAgent.h:
  1628. (WebCore::InspectorDOMAgent::create):
  1629. 2010-12-02 Csaba Osztrogonác <ossy@webkit.org>
  1630. Unreviewed trivial buildfix after r73117.
  1631. * page/FrameView.cpp:
  1632. (WebCore::FrameView::calculateScrollbarModesForLayout):
  1633. 2010-12-02 Yuqiang Xian <yuqiang.xian@intel.com>
  1634. Reviewed by Pavel Feldman.
  1635. [V8] Speed up data property access for ImageData.
  1636. https://bugs.webkit.org/show_bug.cgi?id=49999
  1637. We create a normal V8 object which has a PixelArray as the backing storage,
  1638. and set the "data" property of the ImageData object to it.
  1639. This way "data" becomes a pure JS property and we don't need to call through
  1640. the C++ bindings for ImageData "data" access.
  1641. This eliminates big overhead in switching between JavaScript and native
  1642. contexts and performing object bindings.
  1643. No new tests. Relying on existing Canvas tests.
  1644. * WebCore.gypi:
  1645. * bindings/scripts/CodeGeneratorV8.pm:
  1646. * bindings/v8/custom/V8CanvasPixelArrayCustom.cpp:
  1647. (WebCore::toV8):
  1648. * bindings/v8/custom/V8ImageDataCustom.cpp: Added.
  1649. (WebCore::toV8):
  1650. * html/ImageData.idl:
  1651. * html/canvas/CanvasPixelArray.idl:
  1652. 2010-12-02 Kent Tamura <tkent@chromium.org>
  1653. Unreviewed. Run sort-Xcode-project-file.
  1654. * WebCore.xcodeproj/project.pbxproj:
  1655. 2010-12-02 Mike Lawther <mikelawther@chromium.org>
  1656. Reviewed by David Hyatt.
  1657. Clean up of iframe scrollbar mode code
  1658. https://bugs.webkit.org/show_bug.cgi?id=47797
  1659. Pull setChildNeedsLayout/setNeedsLayout calls out of scrollbar mode
  1660. calculation method and put back into main layout function.
  1661. Early exit from the scrollbar calc when scrollbars are turned off.
  1662. * page/FrameView.cpp:
  1663. (WebCore::FrameView::calculateScrollbarModesForLayout):
  1664. (WebCore::FrameView::layout):
  1665. 2010-12-02 Hironori Bono <hbono@chromium.org>
  1666. Reviewed by Darin Fisher.
  1667. [Chromium] Fix possible crashes in FontFallbackFont::determinePitch().
  1668. https://bugs.webkit.org/show_bug.cgi?id=25770
  1669. When all of "Arial", "Courier New", and "Times New Roman" fonts are corrupted,
  1670. FontCache::getLastResortFallbackFont() returns 0 and it causes this crash. To
  1671. avoid this crash, this change falls back to system fonts (Windows ensures they
  1672. are sane) as Win Safari does. Unfortunately, I don't have any ideas how I can
  1673. write a layout test for this issue because this crash happens on a PC some of
  1674. its system fonts are corrupted.
  1675. * platform/graphics/chromium/FontCacheChromiumWin.cpp:
  1676. (WebCore::fontDataFromDescriptionAndLogFont):
  1677. (WebCore::FontCache::getLastResortFallbackFont):
  1678. 2010-12-02 Dimitri Glazkov <dglazkov@chromium.org>
  1679. Reviewed by Kent Tamura.
  1680. Provide means to store shadow DOM nodes on Element
  1681. https://bugs.webkit.org/show_bug.cgi?id=48697
  1682. Adds shadow DOM awareness to the standard Node attach/detach,
  1683. document and tree insertion and removal cycle.
  1684. No new tests, because the code is not yet used.
  1685. * dom/Element.cpp:
  1686. (WebCore::Element::insertedIntoDocument): Added logic to cascade down to shadow DOM, if present.
  1687. (WebCore::Element::removedFromDocument): Ditto.
  1688. (WebCore::Element::insertedIntoTree): Ditto.
  1689. (WebCore::Element::removedFromTree): Ditto.
  1690. (WebCore::Element::attach): Ditto.
  1691. (WebCore::Element::detach): Ditto.
  1692. (WebCore::Element::recalcStyle):
  1693. (WebCore::Element::shadowRoot): Added.
  1694. (WebCore::Element::setShadowRoot): Added.
  1695. (WebCore::Element::clearShadowRoot): Added.
  1696. * dom/Element.h: Added decls.
  1697. * dom/ElementRareData.h: Added a member to hold a RefPtr to the shadow DOM root for the element.
  1698. 2010-12-02 Adam Barth <abarth@webkit.org>
  1699. Reviewed by Eric Seidel.
  1700. Gray-scale JPEG images with a color profile are stretched horizonally
  1701. https://bugs.webkit.org/show_bug.cgi?id=49950
  1702. Turns out gray-scale JPEGs with color profiles have the same issue as
  1703. PNGs. As with PNGs, we suppress now suppress the color profile for
  1704. gray-scale JPEGs. Most importantly, this patch adds a test.
  1705. Test: fast/images/gray-scale-jpeg-with-color-profile.html
  1706. * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
  1707. (WebCore::JPEGImageReader::decode):
  1708. 2010-12-01 Geoffrey Garen <ggaren@apple.com>
  1709. Build fix: Added a forwarding header.
  1710. * ForwardingHeaders/wtf/OSAllocator.h: Added.
  1711. 2010-12-01 Jia Pu <jpu@apple.com>
  1712. Reviewed by Darin Adler.
  1713. Support multiple correction candidates panel for misspelled word on Mac OS X.
  1714. https://bugs.webkit.org/show_bug.cgi?id=50137
  1715. <rdar://problem/8568059>
  1716. Test: platform/mac/editing/spelling/delete-autocorrected-word-1.html
  1717. Manual test: WebCore/manual-tests/autocorrection/dismiss-multiple-guesses.html
  1718. WebCore/manual-tests/autocorrection/select-from-multiple-guesses.html
  1719. This patch is for supporting multiple correction suggestion panel on Mac OS X.
  1720. The behavior and implementation is similar to that of reversion candiate panel.
  1721. * WebCore.exp.in: Added and removed symbols.
  1722. * editing/CorrectionPanelInfo.h: Added new correction panel type, PanelTypeSpellingSuggestions.
  1723. * editing/Editor.cpp:
  1724. (WebCore::markerTypesForAutocorrection): Convenient function for getting marker types to
  1725. be added to autocorrected word.
  1726. (WebCore::boundingBoxForRange): Convenient function for calculating the bounding box of a range.
  1727. (WebCore::markerTypesForReplacement): Convenient function for getting marker types to
  1728. be added to word that has been replaced by various correction panel.
  1729. (WebCore::Editor::respondToChangedSelection): Added code to trigger timer for multiple
  1730. suggestion panel.
  1731. (WebCore::Editor::guessesForMisspelledSelection): Adopted new signature of EditorClient::getGuessesForWord().
  1732. (WebCore::Editor::markMisspellingsAfterTypingToWord): Adopted new signature of applyCorrectionPanelInfo().
  1733. (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Ditto.
  1734. (WebCore::Editor::correctionPanelTimerFired): Added code to handle new multiple suggestion panel.
  1735. (WebCore::Editor::handleCorrectionPanelResult): Replaced handleRejectedCorrection(), since
  1736. with new AppKit correction panel API, not only rejection, but also confirmation can be
  1737. handled in callback.
  1738. (WebCore::Editor::stopCorrectionPanelTimer): Moved the code that clears correction panel info
  1739. from dismissCorrectionPanel() to this function to fix a bug that would occur when deleting
  1740. autocorrected word.
  1741. (WebCore::Editor::dismissCorrectionPanel): Ditto.
  1742. (WebCore::Editor::applyCorrectionPanelInfo): Added code to handle new multiple suggestion panel.
  1743. * editing/Editor.h: Replaced handleRejectedCorrection() with handleCorrectionPanelResult().
  1744. Changed the signature of applyCorrectionPanelInfo() to hanlde new correction panel type.
  1745. * editing/TextCheckingHelper.cpp:
  1746. (WebCore::TextCheckingHelper::guessesForMisspelledOrUngrammaticalRange): Adopted new EditorClient::getGuessesForWord().
  1747. * editing/TextCheckingHelper.h: Made paragraphRange() public.
  1748. * loader/EmptyClients.h:
  1749. (WebCore::EmptyEditorClient::showCorrectionPanel): Adopted new signature defined in base class.
  1750. (WebCore::EmptyEditorClient::getGuessesForWord): Ditto.
  1751. * manual-tests/autocorrection/dismiss-multiple-guesses.html: Added.
  1752. * manual-tests/autocorrection/select-from-multiple-guesses.html: Added.
  1753. * page/EditorClient.h: Changed showCorrectionPanel() to allow passing multiple correction
  1754. candidates. Changed getGuessesForWord() to allow passing in contextual text for better
  1755. correction suggestions (for those spellcheckers that utilizes such contextual information).
  1756. 2010-12-01 David Hyatt <hyatt@apple.com>
  1757. Reviewed by James Robinson.
  1758. https://bugs.webkit.org/show_bug.cgi?id=50360
  1759. Make sure to include the origin adjustment code that I added on Mac to keep truncation-rtl.html passing.
  1760. * platform/ScrollView.cpp:
  1761. (WebCore::ScrollView::updateScrollbars):
  1762. 2010-12-01 David Hyatt <hyatt@apple.com>
  1763. Reviewed by Dan Bernstein.
  1764. https://bugs.webkit.org/show_bug.cgi?id=46645
  1765. Generalize overflow section scrollOriginX code to be a point and to work in both horizontal
  1766. and vertical modes.
  1767. Not testable yet, since the rightmost/leftmost/topmost/lowestPosition functions are returning
  1768. horrendously wrong values in the vertical text case for overflow:auto objects.
  1769. * rendering/RenderLayer.cpp:
  1770. (WebCore::RenderLayer::RenderLayer):
  1771. (WebCore::RenderLayer::scrollToOffset):
  1772. (WebCore::RenderLayer::computeScrollDimensions):
  1773. (WebCore::RenderLayer::updateOverflowStatus):
  1774. * rendering/RenderLayer.h:
  1775. (WebCore::RenderLayer::scrolledContentOffset):
  1776. (WebCore::RenderLayer::scrollXOffset):
  1777. (WebCore::RenderLayer::scrollYOffset):
  1778. (WebCore::RenderLayer::scrollToXOffset):
  1779. (WebCore::RenderLayer::scrollToYOffset):
  1780. 2010-12-01 Steve Falkenburg <sfalken@apple.com>
  1781. Reviewed by Adam Roben.
  1782. WinCairo build should not use link-time code generation (LTCG)
  1783. https://bugs.webkit.org/show_bug.cgi?id=50353
  1784. * WebCore.vcproj/QTMovieWin.vcproj:
  1785. * WebCore.vcproj/WebCore.vcproj:
  1786. 2010-12-01 David Hyatt <hyatt@apple.com>
  1787. Reviewed by Darin Adler.
  1788. https://bugs.webkit.org/show_bug.cgi?id=46645
  1789. Part 1 of making scrolling work with vertical text. This patch generalizes the scrollOriginX concept
  1790. recently added for horizontal RTL documents and applies it to writing modes as well. Now the
  1791. scrollOrigin is a point, since you can start off locked to the bottom or locked to the right.
  1792. This patch also fixes numerous bugs with the scrollOrigin code using native Mac NSScrollViews and
  1793. makes them behave the same as the cross-platform code (allowing for cross-platform results to be
  1794. landed).
  1795. * page/FrameView.cpp:
  1796. (WebCore::FrameView::adjustViewSize):
  1797. * page/mac/WebCoreFrameView.h:
  1798. * platform/ScrollView.cpp:
  1799. (WebCore::ScrollView::ScrollView):
  1800. (WebCore::ScrollView::maximumScrollPosition):
  1801. (WebCore::ScrollView::minimumScrollPosition):
  1802. (WebCore::ScrollView::valueChanged):
  1803. (WebCore::ScrollView::updateScrollbars):
  1804. (WebCore::ScrollView::wheelEvent):
  1805. * platform/ScrollView.h:
  1806. (WebCore::ScrollView::scrollOrigin):
  1807. * platform/mac/ScrollViewMac.mm:
  1808. (WebCore::ScrollView::platformSetScrollPosition):
  1809. (WebCore::ScrollView::platformSetScrollOrigin):
  1810. * rendering/RenderBox.cpp:
  1811. (WebCore::RenderBox::paintRootBoxDecorations):
  1812. * rendering/RenderView.cpp:
  1813. (WebCore::RenderView::layout):
  1814. (WebCore::RenderView::docTop):
  1815. (WebCore::RenderView::docHeight):
  1816. (WebCore::RenderView::docLeft):
  1817. (WebCore::RenderView::docWidth):
  1818. * rendering/RenderView.h:
  1819. 2010-11-30 Steve Block <steveblock@google.com>
  1820. Reviewed by Jeremy Orlow.
  1821. Upstream recent changes to WebCore/platform/network/android
  1822. https://bugs.webkit.org/show_bug.cgi?id=50224
  1823. Android implementation changes only, no new tests.
  1824. * platform/network/NetworkingContext.h:
  1825. * platform/network/android/CookieJarAndroid.cpp:
  1826. (WebCore::setCookies):
  1827. (WebCore::cookies):
  1828. (WebCore::cookieRequestHeaderFieldValue):
  1829. (WebCore::cookiesEnabled):
  1830. * platform/network/android/ProxyServerAndroid.cpp: Added.
  1831. (WebCore::proxyServersForURL):
  1832. * platform/network/android/ResourceHandleAndroid.cpp:
  1833. (WebCore::ResourceHandle::start):
  1834. (WebCore::ResourceHandle::loadResourceSynchronously):
  1835. * platform/network/android/ResourceRequestAndroid.cpp:
  1836. (WebCore::initializeMaximumHTTPConnectionCountPerHost):
  1837. 2010-12-01 Steve Falkenburg <sfalken@apple.com>
  1838. Reviewed by Adam Roben.
  1839. vcproj changes can't be applied cleanly by the Windows EWS bot
  1840. https://bugs.webkit.org/show_bug.cgi?id=50328
  1841. * WebCore.vcproj/QTMovieWin.vcproj: Modified property svn:eol-style.
  1842. * WebCore.vcproj/QTMovieWinCommon.vsprops: Added property svn:eol-style.
  1843. * WebCore.vcproj/WebCore.sln: Modified property svn:eol-style.
  1844. * WebCore.vcproj/WebCore.submit.sln: Modified property svn:eol-style.
  1845. * WebCore.vcproj/WebCore.vcproj: Modified property svn:eol-style.
  1846. * WebCore.vcproj/WebCoreCFNetwork.vsprops: Added property svn:eol-style.
  1847. * WebCore.vcproj/WebCoreCG.vsprops: Added property svn:eol-style.
  1848. * WebCore.vcproj/WebCoreCURL.vsprops: Added property svn:eol-style.
  1849. * WebCore.vcproj/WebCoreCairo.vsprops: Added property svn:eol-style.
  1850. * WebCore.vcproj/WebCoreCommon.vsprops: Added property svn:eol-style.
  1851. * WebCore.vcproj/WebCoreGenerated.vcproj: Modified property svn:eol-style.
  1852. * WebCore.vcproj/WebCoreGeneratedCairo.vsprops: Added property svn:eol-style.
  1853. * WebCore.vcproj/WebCoreGeneratedCommon.vsprops: Added property svn:eol-style.
  1854. * WebCore.vcproj/WebCoreMediaQT.vsprops: Added property svn:eol-style.
  1855. * WebCore.vcproj/WebCorePthreads.vsprops: Added property svn:eol-style.
  1856. * WebCore.vcproj/WebCoreQuartzCore.vsprops: Added property svn:eol-style.
  1857. 2010-11-30 Vangelis Kokkevis <vangelis@chromium.org>
  1858. Reviewed by Darin Fisher.
  1859. Adds accelerated compositing trigger flags to Settings to allow
  1860. ports to set them via command line flags, etc.
  1861. https://bugs.webkit.org/show_bug.cgi?id=50301
  1862. * page/Settings.cpp:
  1863. (WebCore::Settings::Settings):
  1864. (WebCore::Settings::setAcceleratedCompositingFor3DTransformsEnabled):
  1865. (WebCore::Settings::setAcceleratedCompositingForVideoEnabled):
  1866. (WebCore::Settings::setAcceleratedCompositingForPluginsEnabled):
  1867. (WebCore::Settings::setAcceleratedCompositingForCanvasEnabled):
  1868. (WebCore::Settings::setAcceleratedCompositingForAnimationEnabled):
  1869. * page/Settings.h:
  1870. (WebCore::Settings::acceleratedCompositingFor3DTransformsEnabled):
  1871. (WebCore::Settings::acceleratedCompositingForVideoEnabled):
  1872. (WebCore::Settings::acceleratedCompositingForPluginsEnabled):
  1873. (WebCore::Settings::acceleratedCompositingForCanvasEnabled):
  1874. (WebCore::Settings::acceleratedCompositingForAnimationEnabled):
  1875. 2010-12-01 Darin Adler <darin@apple.com>
  1876. Fixed warning seen on buildbot.
  1877. * platform/graphics/chromium/ContentLayerChromium.cpp:
  1878. (WebCore::ContentLayerChromium::SharedValues::SharedValues): Added #if.
  1879. 2010-12-01 Ryosuke Niwa <rniwa@webkit.org>
  1880. Reviewed by Darin Adler, Tony Chang, and unofficially by Enrica Casucci.
  1881. chrome.dll!WebCore::RangeBoundaryPoint::toPosition ReadAV@NULL (cf0d0f28bc56f2591cc74f71b46036ea)
  1882. https://bugs.webkit.org/show_bug.cgi?id=47808
  1883. The crash was caused by moveParagraphWithClones' not copying the entire paragraph
  1884. when called by doApplyForSingleParagraph, which was induced by a bug in
  1885. cloneParagraphUnderNewElement which ended the cloning process early when the start node
  1886. and the end node didn't share the same parent node. Fixed the bug in cloneParagraphUnderNewElement
  1887. by calling traverseNextSibling(outerNode) instead of nextSibling().
  1888. Also added an early exit to InsertListCommand::doApply when lastSelectionRange is null.
  1889. Tests: editing/execCommand/switch-multiple-list-items-crash.html
  1890. editing/execCommand/switch-multiple-list-items.html
  1891. * editing/CompositeEditCommand.cpp:
  1892. (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
  1893. * editing/InsertListCommand.cpp:
  1894. (WebCore::InsertListCommand::doApply):
  1895. 2010-12-01 Kevin Ollivier <kevino@theolliviers.com>
  1896. [wx] Build fixes after recent trunk changes.
  1897. * platform/graphics/wx/ImageBufferWx.cpp:
  1898. (WebCore::ImageBuffer::ImageBuffer):
  1899. * platform/wx/LocalizedStringsWx.cpp:
  1900. (WebCore::platformDefaultLanguage):
  1901. 2010-12-01 Sheriff Bot <webkit.review.bot@gmail.com>
  1902. Unreviewed, rolling out r73047.
  1903. http://trac.webkit.org/changeset/73047
  1904. https://bugs.webkit.org/show_bug.cgi?id=50339
  1905. missing bug number (Requested by rniwa on #webkit).
  1906. * editing/CompositeEditCommand.cpp:
  1907. (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
  1908. * editing/InsertListCommand.cpp:
  1909. (WebCore::InsertListCommand::doApply):
  1910. 2010-12-01 Ryosuke Niwa <rniwa@webkit.org>
  1911. Reviewed by Darin Adler, Tony Chang, and unofficially by Enrica Casucci.
  1912. The crash was caused by moveParagraphWithClones' not copying the entire paragraph
  1913. when called by doApplyForSingleParagraph, which was induced by a bug in
  1914. cloneParagraphUnderNewElement which ended the cloning process early when the start node
  1915. and the end node didn't share the same parent node. Fixed the bug in cloneParagraphUnderNewElement
  1916. by calling traverseNextSibling(outerNode) instead of nextSibling().
  1917. Also added an early exit to InsertListCommand::doApply when lastSelectionRange is null.
  1918. Tests: editing/execCommand/switch-multiple-list-items-crash.html
  1919. editing/execCommand/switch-multiple-list-items.html
  1920. * editing/CompositeEditCommand.cpp:
  1921. (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
  1922. * editing/InsertListCommand.cpp:
  1923. (WebCore::InsertListCommand::doApply):
  1924. 2010-12-01 Grace Kloba <klobag@chromium.org>
  1925. Reviewed by Kenneth Russell.
  1926. [chromium] ContentLayerChromium shader should honor the platform Sk_x_SHIFT value instead of assuming BGRA color
  1927. https://bugs.webkit.org/show_bug.cgi?id=50189
  1928. * platform/graphics/chromium/ContentLayerChromium.cpp:
  1929. (WebCore::ContentLayerChromium::SharedValues::SharedValues):Use SK_B32_SHIFT to decide whether to use RGBA or BGRA shader for Skia port.
  1930. 2010-12-01 Nico Weber <thakis@chromium.org>
  1931. Reviewed by Dimitri Glazkov.
  1932. Fix clang warnings caused by -Wlogical-op-parentheses
  1933. https://bugs.webkit.org/show_bug.cgi?id=50324
  1934. * platform/graphics/mac/ComplexTextController.cpp:
  1935. (WebCore::ComplexTextController::adjustGlyphsAndAdvances):
  1936. 2010-12-01 Martin Robinson <mrobinson@igalia.com>
  1937. Build fix for GTK+.
  1938. * platform/gtk/PopupMenuGtk.cpp:
  1939. (WebCore::PopupMenuGtk::typeAheadFind): Uncomment mistakenly commented line.
  1940. 2010-12-01 Apelete Seketeli <apelete@seketeli.org> and Martin Robinson <mrobinson@igalia.com>
  1941. Reviewed by Xan Lopez.
  1942. [Gtk] Open menulists should support typeahead find
  1943. https://bugs.webkit.org/show_bug.cgi?id=27443
  1944. Added typeahead find support for open GTK+ menulists.
  1945. Test: platform/gtk/fast/forms/menulist-typeahead-find.html
  1946. * platform/gtk/PopupMenuGtk.cpp:
  1947. (WebCore::PopupMenuGtk::PopupMenuGtk): Initialize new members.
  1948. (WebCore::PopupMenuGtk::show): Track currently selected menu item
  1949. via a signal handler.
  1950. (WebCore::PopupMenuGtk::typeAheadFind): Added.
  1951. (WebCore::PopupMenuGtk::menuUnmapped): Reset typeahead find state
  1952. when menu is unmapped.
  1953. (WebCore::PopupMenuGtk::resetTypeAheadFindState): Added.
  1954. (WebCore::PopupMenuGtk::selectItemCallback): Added.
  1955. (WebCore::PopupMenuGtk::keyPressEventCallback): Added.
  1956. * platform/gtk/PopupMenuGtk.h: Added new members to track typeahead
  1957. find state.
  1958. 2010-12-01 Nikolas Zimmermann <nzimmermann@rim.com>
  1959. Reviewed by Xan Lopez.
  1960. Split DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for SVGAnimatedNumber
  1961. https://bugs.webkit.org/show_bug.cgi?id=50323
  1962. Continuing the work on bug 42025: Introduce DECLARE_ANIMATED_NUMBER / DEFINE_ANIMATED_NUMBER.
  1963. The animated property declaration lives in the header, the definition in the cpp file, to avoid the dependency on SVGNames.h in all headers.
  1964. No functional changes, thus no new tests.
  1965. * svg/SVGAnimatedNumber.h:
  1966. * svg/SVGComponentTransferFunctionElement.cpp:
  1967. * svg/SVGComponentTransferFunctionElement.h:
  1968. * svg/SVGFECompositeElement.cpp:
  1969. * svg/SVGFECompositeElement.h:
  1970. * svg/SVGFEConvolveMatrixElement.cpp:
  1971. * svg/SVGFEConvolveMatrixElement.h:
  1972. * svg/SVGFEDiffuseLightingElement.cpp:
  1973. * svg/SVGFEDiffuseLightingElement.h:
  1974. * svg/SVGFEDisplacementMapElement.cpp:
  1975. * svg/SVGFEDisplacementMapElement.h:
  1976. * svg/SVGFEGaussianBlurElement.cpp:
  1977. * svg/SVGFEGaussianBlurElement.h:
  1978. * svg/SVGFELightElement.cpp:
  1979. * svg/SVGFELightElement.h:
  1980. * svg/SVGFEMorphologyElement.cpp:
  1981. * svg/SVGFEMorphologyElement.h:
  1982. * svg/SVGFEOffsetElement.cpp:
  1983. * svg/SVGFEOffsetElement.h:
  1984. * svg/SVGFESpecularLightingElement.cpp:
  1985. * svg/SVGFESpecularLightingElement.h:
  1986. * svg/SVGFETurbulenceElement.cpp:
  1987. * svg/SVGFETurbulenceElement.h:
  1988. * svg/SVGPathElement.cpp:
  1989. * svg/SVGPathElement.h:
  1990. * svg/SVGStopElement.cpp:
  1991. * svg/SVGStopElement.h:
  1992. (WebCore::SVGStopElement::isGradientStop):
  1993. 2010-12-01 Martin Robinson <mrobinson@igalia.com>
  1994. Reviewed by Xan Lopez.
  1995. Sliders are not transformed after r50188
  1996. https://bugs.webkit.org/show_bug.cgi?id=50317
  1997. Need to call updateLayerTransform during slider layout, as sliders
  1998. may be transformed.
  1999. No new tests. This patch should make fast/forms/slider-transformed.html
  2000. pass on the GTK+ bots.
  2001. * rendering/RenderSlider.cpp:
  2002. (WebCore::RenderSlider::layout): Call updateLayerTransform here.
  2003. 2010-11-30 Pavel Feldman <pfeldman@chromium.org>
  2004. Reviewed by Yury Semikhatsky.
  2005. Web Inspector: do not make helpScreen.css lazily loaded.
  2006. https://bugs.webkit.org/show_bug.cgi?id=50304
  2007. * inspector/front-end/HelpScreen.js:
  2008. (WebInspector.HelpScreen):
  2009. (WebInspector.HelpScreen.prototype._onBlur):
  2010. * inspector/front-end/inspector.html:
  2011. 2010-12-01 Nikolas Zimmermann <nzimmermann@rim.com>
  2012. Reviewed by Xan Lopez.
  2013. Split DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for SVGLengthList/SVGNumberList/SVGTransformList
  2014. https://bugs.webkit.org/show_bug.cgi?id=50322
  2015. Continuing the work on bug 42025: Introduce DECLARE_ANIMATED_(LENGTH|NUMBER|TRANSFORM)_LIST / DEFINE_ANIMATED_(LENGTH|NUMBER|TRANSFORM).
  2016. The animated property declaration lives in the header, the definition in the cpp file, to avoid the dependency on SVGNames.h in all headers.
  2017. No functional changes, thus no new tests.
  2018. * svg/SVGAnimatedLengthList.h:
  2019. * svg/SVGAnimatedNumberList.h:
  2020. * svg/SVGAnimatedTransformList.h:
  2021. * svg/SVGComponentTransferFunctionElement.cpp:
  2022. * svg/SVGComponentTransferFunctionElement.h:
  2023. * svg/SVGFEColorMatrixElement.cpp:
  2024. * svg/SVGFEColorMatrixElement.h:
  2025. * svg/SVGFEConvolveMatrixElement.cpp:
  2026. * svg/SVGFEConvolveMatrixElement.h:
  2027. * svg/SVGGradientElement.cpp:
  2028. * svg/SVGGradientElement.h:
  2029. (WebCore::SVGGradientElement::needsPendingResourceHandling):
  2030. * svg/SVGPatternElement.cpp:
  2031. * svg/SVGPatternElement.h:
  2032. * svg/SVGPolygonElement.cpp:
  2033. * svg/SVGPolylineElement.cpp:
  2034. * svg/SVGStyledTransformableElement.cpp:
  2035. * svg/SVGStyledTransformableElement.h:
  2036. * svg/SVGTextElement.cpp:
  2037. (WebCore::SVGTextElement::SVGTextElement):
  2038. * svg/SVGTextElement.h:
  2039. (WebCore::SVGTextElement::localCoordinateSpaceTransform):
  2040. * svg/SVGTextPositioningElement.cpp:
  2041. * svg/SVGTextPositioningElement.h:
  2042. * svg/properties/SVGAnimatedPropertyMacros.h:
  2043. 2010-12-01 Alexander Pavlov <apavlov@chromium.org>
  2044. Reviewed by Yury Semikhatsky.
  2045. Web Inspector: name-only property appears in style declaration but not in the Styles pane
  2046. https://bugs.webkit.org/show_bug.cgi?id=49663
  2047. Check that at least one property has been parsed from the user input.
  2048. * inspector/InspectorStyleSheet.cpp:
  2049. (WebCore::InspectorStyle::setPropertyText):
  2050. 2010-12-01 Andrey Kosyakov <caseq@chromium.org>
  2051. Reviewed by Pavel Feldman.
  2052. Web Inspector: disable cookies tab in network resource view by default, enable for chromium
  2053. https://bugs.webkit.org/show_bug.cgi?id=50249
  2054. * inspector/front-end/NetworkItemView.js:
  2055. (WebInspector.NetworkItemView):
  2056. (WebInspector.NetworkItemView.prototype.resize):
  2057. * inspector/front-end/Settings.js:
  2058. 2010-12-01 Nikolas Zimmermann <nzimmermann@rim.com>
  2059. Reviewed by Xan Lopez.
  2060. Split DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for SVGLength
  2061. https://bugs.webkit.org/show_bug.cgi?id=50316
  2062. Introduce DECLARE_ANIMATED_LENGTH / DEFINE_ANIMATED_LENGTH, splitting up the original DECLARE_ANIMATED_PROPERTY_NEW macro
  2063. in a part that goes in the .cpp file and another that remains in the header. This avoids having to include SVGNames.h
  2064. in all SVG*Element files.
  2065. No functional changes, thus no new tests.
  2066. * svg/SVGAnimatedLength.h:
  2067. * svg/SVGCircleElement.cpp:
  2068. * svg/SVGCircleElement.h:
  2069. (WebCore::SVGCircleElement::isValid):
  2070. * svg/SVGCursorElement.cpp:
  2071. * svg/SVGCursorElement.h:
  2072. (WebCore::SVGCursorElement::isValid):
  2073. * svg/SVGEllipseElement.cpp:
  2074. * svg/SVGEllipseElement.h:
  2075. (WebCore::SVGEllipseElement::isValid):
  2076. * svg/SVGFilterElement.cpp:
  2077. * svg/SVGFilterElement.h:
  2078. * svg/SVGFilterPrimitiveStandardAttributes.cpp:
  2079. * svg/SVGFilterPrimitiveStandardAttributes.h:
  2080. * svg/SVGForeignObjectElement.cpp:
  2081. (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
  2082. * svg/SVGForeignObjectElement.h:
  2083. (WebCore::SVGForeignObjectElement::isValid):
  2084. * svg/SVGImageElement.cpp:
  2085. * svg/SVGImageElement.h:
  2086. (WebCore::SVGImageElement::isValid):
  2087. * svg/SVGLineElement.cpp:
  2088. * svg/SVGLineElement.h:
  2089. (WebCore::SVGLineElement::isValid):
  2090. (WebCore::SVGLineElement::supportsMarkers):
  2091. * svg/SVGLinearGradientElement.cpp:
  2092. * svg/SVGLinearGradientElement.h:
  2093. * svg/SVGMarkerElement.cpp:
  2094. (WebCore::SVGMarkerElement::SVGMarkerElement):
  2095. * svg/SVGMarkerElement.h:
  2096. * svg/SVGMaskElement.cpp:
  2097. * svg/SVGMaskElement.h:
  2098. (WebCore::SVGMaskElement::isValid):
  2099. (WebCore::SVGMaskElement::needsPendingResourceHandling):
  2100. * svg/SVGPatternElement.cpp:
  2101. * svg/SVGPatternElement.h:
  2102. (WebCore::SVGPatternElement::isValid):
  2103. (WebCore::SVGPatternElement::needsPendingResourceHandling):
  2104. * svg/SVGRadialGradientElement.cpp:
  2105. * svg/SVGRadialGradientElement.h:
  2106. * svg/SVGRectElement.cpp:
  2107. * svg/SVGRectElement.h:
  2108. (WebCore::SVGRectElement::isValid):
  2109. * svg/SVGSVGElement.cpp:
  2110. (WebCore::SVGSVGElement::SVGSVGElement):
  2111. * svg/SVGSVGElement.h:
  2112. (WebCore::SVGSVGElement::isValid):
  2113. (WebCore::SVGSVGElement::setContainerSize):
  2114. (WebCore::SVGSVGElement::containerSize):
  2115. (WebCore::SVGSVGElement::hasSetContainerSize):
  2116. (WebCore::SVGSVGElement::currentTranslate):
  2117. (WebCore::SVGSVGElement::timeContainer):
  2118. (WebCore::SVGSVGElement::isSVG):
  2119. (WebCore::SVGSVGElement::rendererIsNeeded):
  2120. * svg/SVGTextContentElement.cpp:
  2121. * svg/SVGTextContentElement.h:
  2122. (WebCore::SVGTextContentElement::isValid):
  2123. (WebCore::SVGTextContentElement::isTextContent):
  2124. * svg/SVGTextPathElement.cpp:
  2125. * svg/SVGTextPathElement.h:
  2126. * svg/SVGTextPositioningElement.h:
  2127. * svg/SVGUseElement.cpp:
  2128. * svg/SVGUseElement.h:
  2129. (WebCore::SVGUseElement::isValid):
  2130. (WebCore::SVGUseElement::setUpdatesBlocked):
  2131. (WebCore::SVGUseElement::isPendingResource):
  2132. * svg/properties/SVGAnimatedPropertyMacros.h:
  2133. 2010-12-01 Anton D'Auria <adauria@apple.com>
  2134. Reviewed by Kevin Decker.
  2135. Deny access to local and session storage in private browsing mode.
  2136. https://bugs.webkit.org/show_bug.cgi?id=49329
  2137. * storage/Storage.cpp:
  2138. (WebCore::Storage::length):
  2139. (WebCore::Storage::key):
  2140. (WebCore::Storage::getItem):
  2141. (WebCore::Storage::contains):
  2142. 2010-12-01 Philippe Normand <pnormand@igalia.com>
  2143. Reviewed by Martin Robinson.
  2144. Volume control not correctly initialized
  2145. https://bugs.webkit.org/show_bug.cgi?id=36299
  2146. Replaced the mute/volume Timers with g_timeouts which are (for
  2147. now, at least) more reliable than Timers for one-shot-fire-now
  2148. actions.
  2149. Test: media/video-volume.html
  2150. * platform/graphics/MediaPlayer.cpp:
  2151. (WebCore::MediaPlayer::~MediaPlayer): Reset the raw pointers to 0
  2152. when destructing the player.
  2153. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  2154. (WebCore::mediaPlayerPrivateVolumeChangeTimeoutCallback):
  2155. (WebCore::mediaPlayerPrivateMuteChangeTimeoutCallback):
  2156. (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
  2157. (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfVolumeChange):
  2158. (WebCore::MediaPlayerPrivateGStreamer::volumeChanged):
  2159. (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfMute):
  2160. (WebCore::MediaPlayerPrivateGStreamer::muteChanged):
  2161. (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin): Set
  2162. playbin2 volume/mute base on MediaPlayer related values.
  2163. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
  2164. 2010-12-01 Patrick Gansterer <paroga@webkit.org>
  2165. Reviewed by Andreas Kling.
  2166. Cleanup main CMakeLists.txt after r72664, r72672 and r72667
  2167. https://bugs.webkit.org/show_bug.cgi?id=50232
  2168. * CMakeLists.txt: Removed obsolete dependencies.
  2169. 2010-12-01 Nikolas Zimmermann <nzimmermann@rim.com>
  2170. Reviewed by Dirk Schulze.
  2171. Cleanup SVGPropertyTraits
  2172. https://bugs.webkit.org/show_bug.cgi?id=50229
  2173. Move all template specializations for non-POD types (eg. SVGLength, SVGLengthList, etc.) from SVGPropertyTraits
  2174. into the right SVG* classes, to avoid having to include a dozen SVG*.h files in SVGPropertyTraits.h, which is
  2175. included by all DOM/JS/V8 binding files and SVGElement.h.
  2176. No new functionality, thus no new tests.
  2177. * GNUmakefile.am:
  2178. * WebCore.gypi:
  2179. * WebCore.pro:
  2180. * WebCore.xcodeproj/project.pbxproj:
  2181. * bindings/scripts/CodeGenerator.pm:
  2182. * bindings/scripts/CodeGeneratorObjC.pm:
  2183. * bindings/scripts/CodeGeneratorV8.pm:
  2184. * svg/SVGAngle.h:
  2185. * svg/SVGLength.h:
  2186. * svg/SVGLengthList.h:
  2187. * svg/SVGMarkerElement.h:
  2188. * svg/SVGNumberList.h:
  2189. * svg/SVGPatternElement.h:
  2190. * svg/SVGPointList.h:
  2191. * svg/SVGPreserveAspectRatio.h:
  2192. * svg/SVGRect.h: Added.
  2193. * svg/SVGSVGElement.h:
  2194. * svg/SVGStringList.h:
  2195. * svg/SVGSymbolElement.h:
  2196. * svg/SVGTransformList.h:
  2197. * svg/SVGViewElement.h:
  2198. * svg/SVGViewSpec.h:
  2199. * svg/properties/SVGListProperty.h:
  2200. * svg/properties/SVGPropertyTraits.h:
  2201. * svg/properties/SVGTransformListPropertyTearOff.h:
  2202. 2010-11-30 Kent Tamura <tkent@chromium.org>
  2203. Reviewed by Darin Adler.
  2204. Refactor HTMLInputElement: Move a part of HTMLInputElement::
  2205. defaultEventHandler() to InputTypes
  2206. https://bugs.webkit.org/show_bug.cgi?id=50097
  2207. Move all of keyboard-related event handling to InputType.
  2208. No new tests because this should not change any behavior.
  2209. * html/BaseButtonInputType.cpp:
  2210. (WebCore::BaseButtonInputType::handleKeydownEvent):
  2211. (WebCore::BaseButtonInputType::handleKeypressEvent):
  2212. (WebCore::BaseButtonInputType::handleKeyupEvent):
  2213. * html/BaseButtonInputType.h:
  2214. * html/BaseCheckableInputType.cpp:
  2215. (WebCore::BaseCheckableInputType::handleKeydownEvent):
  2216. (WebCore::BaseCheckableInputType::handleKeypressEvent):
  2217. * html/BaseCheckableInputType.h:
  2218. * html/CheckboxInputType.cpp:
  2219. (WebCore::CheckboxInputType::handleKeyupEvent):
  2220. * html/CheckboxInputType.h:
  2221. * html/HTMLInputElement.cpp:
  2222. (WebCore::HTMLInputElement::defaultEventHandler):
  2223. We remove !implicitSubmission check for callBaseClassEarly because
  2224. implicitSubmission can not be true for keydown event and keypress
  2225. event at this point.
  2226. * html/InputType.cpp:
  2227. (WebCore::InputType::shouldSubmitImplicitly):
  2228. Returns true for a keypress event with "\r". Note that we don't overload
  2229. this function for BUTTON, FILE, IMAGE, RESET, and SUBMIT because a
  2230. keypress event with "\r" for these types returns from HTMLInputElement::defaultEventHandler()
  2231. before implicit submission checking.
  2232. (WebCore::InputType::handleKeypressEvent):
  2233. (WebCore::InputType::handleKeyupEvent):
  2234. * html/InputType.h:
  2235. * html/RadioInputType.cpp:
  2236. (WebCore::RadioInputType::handleKeydownEvent):
  2237. (WebCore::RadioInputType::handleKeyupEvent):
  2238. * html/RadioInputType.h:
  2239. * html/TextFieldInputType.cpp:
  2240. (WebCore::TextFieldInputType::shouldSubmitImplicitly):
  2241. * html/TextFieldInputType.h:
  2242. 2010-11-30 Patrick Gansterer <paroga@webkit.org>
  2243. Reviewed by Andreas Kling.
  2244. Move CSS generator logic into main CMakeLists.txt file
  2245. https://bugs.webkit.org/show_bug.cgi?id=50230
  2246. * CMakeLists.txt:
  2247. 2010-11-30 Ojan Vafai <ojan@chromium.org>
  2248. Revert r72876. It caused a ~30% perf regression in chromium's bloat-http test
  2249. https://bugs.webkit.org/show_bug.cgi?id=50288
  2250. 2010-11-29 Adam Barth <abarth@webkit.org (:abarth) (r)>
  2251. Reviewed by Darin Adler.
  2252. Introduce the notion of a "display-isolated" URL scheme for use by Chrome-internal URLs
  2253. https://bugs.webkit.org/show_bug.cgi?id=50182
  2254. A display-isolated URL can only be displayed (e.g., put in an iframe,
  2255. hyperlinked to) by documents from that scheme. In a sense, this is a
  2256. generalization of some of the protections we give file URLs, but
  2257. instead of lumping them all together into one "local" bucket, this
  2258. patch creates a separate bucket for each scheme.
  2259. For a while, I tried using a separate bucket for each origin. That
  2260. would have played nicely with what Blob URLs are trying to do, but some
  2261. "chrome" URL pages rely on being able to display other chrome URL
  2262. pages, even in different origins. For example, the New Tab Page shows
  2263. thumbnails from the "thumbnail" host.
  2264. This patch also removes a bunch of unused code. I've also propagated
  2265. the "deprecated" status of deprecatedCanDisplay to
  2266. deprecatedShouldTreatURLAsLocal because that method has no other
  2267. callers and is really asking for uppercase/lowercase bugs. I dream of
  2268. someday removing these functions.
  2269. page/SecurityOrigin.cpp:
  2270. (WebCore::SecurityOrigin::canDisplay):
  2271. (WebCore::SecurityOrigin::deprecatedCanDisplay):
  2272. platform/SchemeRegistry.cpp:
  2273. (WebCore::displayIsolatedURLSchemes):
  2274. (WebCore::SchemeRegistry::registerURLSchemeAsLocal):
  2275. (WebCore::SchemeRegistry::deprecatedShouldTreatURLAsLocal):
  2276. (WebCore::SchemeRegistry::shouldTreatURLSchemeAsLocal):
  2277. (WebCore::SchemeRegistry::registerURLSchemeAsDisplayIsolated):
  2278. (WebCore::SchemeRegistry::shouldTreatURLSchemeAsDisplayIsolated):
  2279. platform/SchemeRegistry.h:
  2280. 2010-11-29 Adam Barth <abarth@webkit.org (:abarth) (r)>
  2281. Reviewed by Darin Adler.
  2282. Introduce the notion of a "display-isolated" URL scheme for use by Chrome-internal URLs
  2283. https://bugs.webkit.org/show_bug.cgi?id=50182
  2284. This patch adds a Chromium API for registering schemes as
  2285. display-isolated. In a subsequent patch, I'll change the "chrome"
  2286. scheme in Chrome to be display isolated instead of local. That will
  2287. prevent file URLs from linking to chrome URLs.
  2288. public/WebSecurityPolicy.h:
  2289. src/WebSecurityPolicy.cpp:
  2290. (WebKit::WebSecurityPolicy::registerURLSchemeAsDisplayIsolated):
  2291. * page/SecurityOrigin.cpp:
  2292. (WebCore::SecurityOrigin::canDisplay):
  2293. (WebCore::SecurityOrigin::deprecatedCanDisplay):
  2294. * platform/SchemeRegistry.cpp:
  2295. (WebCore::SchemeRegistry::registerURLSchemeAsLocal):
  2296. (WebCore::SchemeRegistry::removeURLSchemeRegisteredAsLocal):
  2297. (WebCore::SchemeRegistry::localURLSchemes):
  2298. (WebCore::SchemeRegistry::shouldTreatURLAsLocal):
  2299. (WebCore::SchemeRegistry::shouldTreatURLSchemeAsLocal):
  2300. * platform/SchemeRegistry.h:
  2301. 2010-11-30 Chris Fleizach <cfleizach@apple.com>
  2302. Reviewed by Beth Dakin.
  2303. WebKit duplicates AXValue and AXDescription on abbr
  2304. https://bugs.webkit.org/show_bug.cgi?id=50260
  2305. stringValue() and accessibilityDescription() were returning the same value for static text with
  2306. an aria-label. Static text elements should not have an accessibility description, they
  2307. should only have a stringValue.
  2308. Test: platform/mac/accessibility/static-text-with-aria-label.html
  2309. * accessibility/AccessibilityRenderObject.cpp:
  2310. (WebCore::AccessibilityRenderObject::ariaAccessibilityDescription):
  2311. (WebCore::AccessibilityRenderObject::accessibilityDescription):
  2312. (WebCore::AccessibilityRenderObject::text):
  2313. * accessibility/AccessibilityRenderObject.h:
  2314. 2010-11-30 Ryosuke Niwa <rniwa@webkit.org>
  2315. Reviewed by Darin Adler.
  2316. [HTML5] Rename member variables of HTMLScriptElement
  2317. https://bugs.webkit.org/show_bug.cgi?id=49705
  2318. Renamed m_wasCreatedByParser to m_wasInsertedByParser, m_requested to m_isExternalScript,
  2319. m_isEvaluated to m_wasAlreadyStarted, and m_firedLoad to m_haveFiredLoad.
  2320. Also made ScriptElement's haveFiredLoadEvent and removed HTMLScriptElement's haveFiredLoadEvent.
  2321. This effectively adds the same function to SVGScriptElement, which isn't currently used anywhere.
  2322. No new tests are added since this is a refactoring.
  2323. * dom/ScriptElement.cpp:
  2324. (WebCore::ScriptElement::ScriptElement):
  2325. (WebCore::ScriptElement::insertedIntoDocument):
  2326. (WebCore::ScriptElement::childrenChanged):
  2327. (WebCore::ScriptElement::finishParsingChildren):
  2328. (WebCore::ScriptElement::requestScript):
  2329. (WebCore::ScriptElement::evaluateScript):
  2330. (WebCore::ScriptElement::executeScript):
  2331. (WebCore::ScriptElement::ignoresLoadRequest):
  2332. * dom/ScriptElement.h:
  2333. (WebCore::ScriptElement::haveFiredLoadEvent):
  2334. (WebCore::ScriptElement::setHaveFiredLoadEvent):
  2335. (WebCore::ScriptElement::wasInsertedByParser):
  2336. (WebCore::ScriptElement::wasAlreadyStarted):
  2337. * html/HTMLScriptElement.cpp:
  2338. (WebCore::HTMLScriptElement::HTMLScriptElement):
  2339. (WebCore::HTMLScriptElement::create):
  2340. (WebCore::HTMLScriptElement::cloneElementWithoutAttributesAndChildren):
  2341. * html/HTMLScriptElement.h:
  2342. * svg/SVGScriptElement.cpp:
  2343. (WebCore::SVGScriptElement::SVGScriptElement):
  2344. (WebCore::SVGScriptElement::create):
  2345. (WebCore::SVGScriptElement::svgAttributeChanged):
  2346. (WebCore::SVGScriptElement::insertedIntoDocument):
  2347. (WebCore::SVGScriptElement::dispatchLoadEvent):
  2348. (WebCore::SVGScriptElement::cloneElementWithoutAttributesAndChildren):
  2349. * svg/SVGScriptElement.h:
  2350. 2010-11-30 Darin Adler <darin@apple.com>
  2351. Rolled back most of the FileReaderLoader changes to fix 32-bit builds.
  2352. * fileapi/FileReaderLoader.cpp: Changed types back to unsigned from unsigned long long
  2353. * fileapi/FileReaderLoader.h: Ditto.
  2354. 2010-11-30 Dan Bernstein <mitz@apple.com>
  2355. Reviewed by Darin Adler.
  2356. Text search should treat all matches as word-start matches when the target begins with a separator character
  2357. https://bugs.webkit.org/show_bug.cgi?id=50302
  2358. * editing/TextIterator.cpp:
  2359. (WebCore::SearchBuffer::SearchBuffer): Disable the AtWordStarts option if it was specified and
  2360. the target string begins with one of the "separator" characters.
  2361. 2010-11-30 Pavel Feldman <pfeldman@chromium.org>
  2362. Reviewed by Dave Hyatt.
  2363. Web Inspector: [CRASH] on "Revert to this revision" of style with import.
  2364. https://bugs.webkit.org/show_bug.cgi?id=50256
  2365. Rolled back one line from http://trac.webkit.org/changeset/36904 as agreed with
  2366. David.
  2367. * css/CSSImportRule.cpp:
  2368. (WebCore::CSSImportRule::insertedIntoParent):
  2369. 2010-11-30 Martin Robinson <mrobinson@igalia.com>
  2370. Reviewed by Xan Lopez.
  2371. [GTK] fillRect shadow has incorrect behavior when using ctx.scale(x,y)
  2372. https://bugs.webkit.org/show_bug.cgi?id=50283
  2373. Adjust the mask rectangle for Cairo shadows, so that the origin
  2374. is not affected by the scale of the transformation matrix.
  2375. * platform/graphics/ContextShadow.h: Make this Qt-only member global.
  2376. * platform/graphics/cairo/ContextShadowCairo.cpp:
  2377. (WebCore::ContextShadow::beginShadowLayer): Save the original layer area.
  2378. (WebCore::ContextShadow::endShadowLayer): If the target context has a scale
  2379. transform, make sure not to scale the blur distance when blitting the shadow.
  2380. 2010-11-30 Darin Adler <darin@apple.com>
  2381. Reviewed by Alexey Proskuryakov.
  2382. Make ProgressEvent 64-bit instead of 32-bit
  2383. https://bugs.webkit.org/show_bug.cgi?id=50289
  2384. * dom/ProgressEvent.cpp:
  2385. (WebCore::ProgressEvent::ProgressEvent): Changed arguments to unsigned long long.
  2386. (WebCore::ProgressEvent::initProgressEvent): Ditto.
  2387. * dom/ProgressEvent.h: Fixed formatting. Changed types to unsigned long long.
  2388. Made isProgressEvent override private.
  2389. * dom/ProgressEvent.idl: Tweaked formatting and changed types to unsigned long long.
  2390. * fileapi/FileReader.cpp: Removed unneeded includes.
  2391. Used static on const so we'd get an error if the same constant was in a header.
  2392. (WebCore::FileReader::didReceiveData): Removed unneeded WTF prefix.
  2393. (WebCore::FileReader::fireEvent): Got rid of local variables that would narrow
  2394. bytes loaded and total bytes to 32-bit.
  2395. * fileapi/FileReaderLoader.cpp:
  2396. (WebCore::FileReaderLoader::didReceiveResponse): Restructured code a bit and
  2397. added comments. Also added handling for when ArrayBuffer::create returns 0.
  2398. (WebCore::FileReaderLoader::didReceiveData): Fixed handling of case where more
  2399. data arrives than is expected so it won't overrun the buffer. Also broke an
  2400. assertion into two and improved a comment.
  2401. * fileapi/FileReaderLoader.h: Changed bytesLoaded and totalBytes to unsigned long long.
  2402. * fileapi/FileWriter.cpp:
  2403. (WebCore::FileWriter::fireEvent): Removed narrowing casts in call to
  2404. ProgressEvent::create.
  2405. * html/canvas/ArrayBuffer.cpp:
  2406. (WebCore::ArrayBuffer::tryAllocate): Added a comment because the code here seems wrong.
  2407. * xml/XMLHttpRequest.cpp:
  2408. (WebCore::XMLHttpRequest::didSendData): Removed narrowing casts in call to
  2409. XMLHttpRequestProgressEvent::create.
  2410. (WebCore::XMLHttpRequest::didReceiveData): Removed narrowing casts in call to
  2411. dispatchProgressEvent.
  2412. * xml/XMLHttpRequestProgressEvent.h: Fixed formatting. Changed types to unsigned long long.
  2413. Made isXMLHttpRequestProgressEvent override private.
  2414. * xml/XMLHttpRequestProgressEvent.idl: Tweaked formatting and changed types to unsigned long long.
  2415. * xml/XMLHttpRequestProgressEventThrottle.cpp:
  2416. (WebCore::XMLHttpRequestProgressEventThrottle::dispatchProgressEvent): Changed types to
  2417. unsigned long long.
  2418. * xml/XMLHttpRequestProgressEventThrottle.h: Changed types to unsigned long long.
  2419. 2010-11-30 Yael Aharon <yael.aharon@nokia.com>
  2420. Reviewed by Darin Adler.
  2421. Progress and meter elements should take a form in their constructor like any other form control.
  2422. https://bugs.webkit.org/show_bug.cgi?id=50195
  2423. Tests: fast/dom/HTMLMeterElement/meter-element-form.html
  2424. fast/dom/HTMLProgressElement/progress-element-form.html
  2425. * html/HTMLMeterElement.cpp:
  2426. (WebCore::HTMLMeterElement::HTMLMeterElement):
  2427. (WebCore::HTMLMeterElement::create):
  2428. * html/HTMLMeterElement.h:
  2429. * html/HTMLProgressElement.h:
  2430. * html/HTMLTagNames.in:
  2431. 2010-11-30 Tony Chang <tony@chromium.org>
  2432. Reviewed by Adam Barth.
  2433. [chromium] fix get-int-identifier-special-values.html using TestNetscapePlugIn
  2434. https://bugs.webkit.org/show_bug.cgi?id=49036
  2435. No new tests: Covered by plugins/npruntime/get-int-identifier-special-values.html
  2436. In http://codereview.chromium.org/11574, the forked chromium test
  2437. plugin changed how it testGetIntIdentifier to work around a change
  2438. caused by a silverlight specific plugin fix:
  2439. http://codereview.chromium.org/11569/diff/1/2
  2440. It's not clear to me that this change is needed anymore since
  2441. silverlight has had multiple releases, testing without this patch
  2442. works on a test windows build, and safari win seems to run silverlight
  2443. without this either. Since there's no test for this behavior, I'm
  2444. rolling it out so we can match the upstream test.
  2445. * bindings/v8/V8NPUtils.cpp:
  2446. (WebCore::convertV8ObjectToNPVariant):
  2447. 2010-11-30 Chris Guillory <chris.guillory@google.com>
  2448. Reviewed by Chris Fleizach.
  2449. Computing style on a stale node while sending pending accessibility notification.
  2450. https://bugs.webkit.org/show_bug.cgi?id=50162
  2451. Retain node pointer members of AccessibilityImageMapLink.
  2452. Test: accessibility/image-map-title-causes-crash.html
  2453. * accessibility/AccessibilityImageMapLink.cpp:
  2454. (WebCore::AccessibilityImageMapLink::parentObject):
  2455. (WebCore::AccessibilityImageMapLink::anchorElement):
  2456. (WebCore::AccessibilityImageMapLink::url):
  2457. (WebCore::AccessibilityImageMapLink::elementRect):
  2458. * accessibility/AccessibilityImageMapLink.h:
  2459. (WebCore::AccessibilityImageMapLink::areaElement):
  2460. (WebCore::AccessibilityImageMapLink::mapElement):
  2461. (WebCore::AccessibilityImageMapLink::node):
  2462. * dom/Document.cpp:
  2463. (WebCore::Document::clearAXObjectCache):
  2464. 2010-11-30 James Robinson <jamesr@chromium.org>
  2465. Reviewed by Tony Chang.
  2466. Build fix - add parens in foo || bar && baz to make gcc happy
  2467. https://bugs.webkit.org/show_bug.cgi?id=50276
  2468. gcc 4.4 warns that statements of the form "foo || bar && baz". It wants
  2469. parens around the "bar && baz" part to make it clear which way the logical
  2470. operators bind.
  2471. * editing/TextIterator.cpp:
  2472. (WebCore::SearchBuffer::search):
  2473. 2010-11-30 Daniel Bates <dbates@rim.com>
  2474. Reviewed by David Hyatt.
  2475. Focused <area> should use CSS properties of <area> instead of associated <img>
  2476. https://bugs.webkit.org/show_bug.cgi?id=49888
  2477. Fixes an issue where the CSS properties of an <area> were not used when
  2478. the <area> was focused.
  2479. Currently, when focusing an <area> (say by pressing option + tab in Mac
  2480. Safari) we use the CSS style information for the <img> associated with
  2481. the <area>. Instead, we should use the CSS style information for the
  2482. focused <area>. In particular, this will make the us honor the outline-
  2483. color property of a focused <area> when drawing its focus ring.
  2484. Tests: fast/images/imagemap-focus-ring-outline-color-explicitly-inherited-from-map.html
  2485. fast/images/imagemap-focus-ring-outline-color-not-inherited-from-map.html
  2486. fast/images/imagemap-focus-ring-outline-color.html
  2487. * rendering/RenderImage.cpp:
  2488. (WebCore::RenderImage::paintFocusRing): Use the style information of
  2489. the focused <area> when drawing the focus ring for it.
  2490. 2010-11-30 Tony Chang <tony@chromium.org>
  2491. Reviewed by James Robinson.
  2492. [chromium] enable WebCore compiler warnings on Linux take 3
  2493. https://bugs.webkit.org/show_bug.cgi?id=50258
  2494. * WebCore.gyp/WebCore.gyp:
  2495. 2010-11-30 Mario Sanchez Prada <msanchez@igalia.com>
  2496. Reviewed by Chris Fleizach.
  2497. [GTK] Implement ROLE_COMBO_BOX
  2498. https://bugs.webkit.org/show_bug.cgi?id=25678
  2499. Implement the remaining bits for combo boxes.
  2500. This patch finishes the implementation, from the point of view of
  2501. the Atk library, of those objects exposed to ATK as combo boxes,
  2502. and their related elements (menus and menu items). It therefore
  2503. implements the proper interfaces for each type of object related
  2504. to combo boxes (AtkSelection for the combo box, AtkText for every
  2505. menu item and AtkAction for the combo box, the menu and the menu
  2506. items), takes care of emitting the proper signals when focus or a
  2507. given a selection changes and adds a new unit test to check all
  2508. this new stuff.
  2509. Make possible to ask an AccessibleMenuListOption for a sensible
  2510. string representation, so far only available through the private
  2511. and MSAA related method nameForMSAA. Just moved the implementation
  2512. of that method to an overriden version of stringValue(), which is
  2513. platform independent, and called that from nameForMSAA().
  2514. * accessibility/AccessibilityMenuListOption.h:
  2515. * accessibility/AccessibilityMenuListOption.cpp:
  2516. (WebCore::AccessibilityMenuListOption::nameForMSAA): Just call to
  2517. stringValue(), which holds from now on that used to be here.
  2518. (WebCore::AccessibilityMenuListOption::stringValue): New, override
  2519. of AccessibilityObject::stringValue() to return a proper string.
  2520. Emit the missing signals when a selection is made.
  2521. * accessibility/gtk/AXObjectCacheAtk.cpp:
  2522. (WebCore::AXObjectCache::postPlatformNotification): Emit the usual
  2523. 'focus' signals when a selection is made over the combo box.
  2524. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  2525. (setAtkStateSetFromCoreObject): Ensure the EXPANDABLE and EXPANDED
  2526. Atk states are added to the state set when needed.
  2527. (listObjectForSelection): New, returns the proper list object (the
  2528. one holding the list of available options as its children) for an
  2529. specific AtkObject implementing AtkSelection. This is needed
  2530. because sometimes the selectable options are not directly children
  2531. of the AtkSelection object (i.e. a combo box has a 'menu' object
  2532. as its only child of it, holding the list of options as children).
  2533. (optionFromList): Use listObjectForSelection() to get the actual
  2534. object holding the list of children as the available options.
  2535. (optionFromSelection): Add support for combo boxes.
  2536. (webkit_accessible_selection_add_selection): Ditto.
  2537. (webkit_accessible_selection_clear_selection): Ditto.
  2538. (webkit_accessible_selection_get_selection_count): Ditto.
  2539. (webkit_accessible_selection_is_child_selected): Ditto.
  2540. (webkit_accessible_selection_remove_selection): Ditto.
  2541. (webkit_accessible_text_get_text): Makes sure stringValue() is
  2542. considered to get the result substring when it was already
  2543. considered when checking the maximum text length for the object.
  2544. (getInterfaceMaskFromObject): Make sure the AtkSelection interface
  2545. is implemented for the combo boxes, that the AtkText is
  2546. implemented for the menu items and that the AtkAction interface is
  2547. now implemented for every object (WebCore will decide what to do).
  2548. Avoid a segfault crash when using this from unit tests.
  2549. * platform/gtk/PopupMenuGtk.cpp:
  2550. (WebCore::PopupMenuGtk::show): Make sure we got a valid GdkWindow
  2551. before calling gdk_window_get_origin() over it.
  2552. 2010-11-30 Andreas Kling <kling@webkit.org>
  2553. Reviewed by Tor Arne Vestbø.
  2554. [Qt] GraphicsContext: Avoid unnecessarily copying the painter's QTransform
  2555. Stash the transform in a const reference (QPainter::transform() returns one)
  2556. instead of making a copy in the shadow drawing parts of fillPath, strokePath and fillRect.
  2557. * platform/graphics/qt/GraphicsContextQt.cpp:
  2558. (WebCore::GraphicsContext::fillPath):
  2559. (WebCore::GraphicsContext::strokePath):
  2560. (WebCore::GraphicsContext::fillRect):
  2561. 2010-11-30 Vangelis Kokkevis <vangelis@chromium.org>
  2562. Reviewed by Simon Fraser.
  2563. Provide more fine grained control to ports over when to turn on
  2564. accelerated compositing.
  2565. https://bugs.webkit.org/show_bug.cgi?id=49998
  2566. The RenderLayerCompositor now checks with the chrome client whether
  2567. 3d transforms, video, plugins, canvas and animation require
  2568. switching over to the composited path. Layers that overlap composited
  2569. content will still turn into composited layers regardless of the
  2570. setting.
  2571. * css/MediaQueryEvaluator.cpp:
  2572. (WebCore::transform_3dMediaFeatureEval):
  2573. * page/ChromeClient.h:
  2574. (WebCore::ChromeClient::allowedCompositingTriggers):
  2575. * rendering/RenderLayer.cpp:
  2576. (WebCore::RenderLayer::canRender3DTransforms):
  2577. (WebCore::RenderLayer::updateTransform):
  2578. (WebCore::RenderLayer::currentTransform):
  2579. * rendering/RenderLayer.h:
  2580. * rendering/RenderLayerBacking.cpp:
  2581. (WebCore::RenderLayerBacking::updateLayerTransform):
  2582. * rendering/RenderLayerCompositor.cpp:
  2583. (WebCore::RenderLayerCompositor::RenderLayerCompositor):
  2584. (WebCore::RenderLayerCompositor::cacheAcceleratedCompositingFlags):
  2585. (WebCore::RenderLayerCompositor::canRender3DTransforms):
  2586. (WebCore::RenderLayerCompositor::requiresCompositingLayer):
  2587. (WebCore::RenderLayerCompositor::requiresCompositingForTransform):
  2588. (WebCore::RenderLayerCompositor::requiresCompositingForVideo):
  2589. (WebCore::RenderLayerCompositor::requiresCompositingForCanvas):
  2590. (WebCore::RenderLayerCompositor::requiresCompositingForPlugin):
  2591. (WebCore::RenderLayerCompositor::requiresCompositingForAnimation):
  2592. * rendering/RenderLayerCompositor.h:
  2593. 2010-11-30 Xan Lopez <xlopez@igalia.com>
  2594. Reviewed by Martin Robinson.
  2595. [GTK] Plug leak in SoupCache
  2596. https://bugs.webkit.org/show_bug.cgi?id=50142
  2597. Free the cache file contents when we don't need them anymore.
  2598. * platform/network/soup/cache/webkit/soup-cache.c:
  2599. (webkit_soup_cache_load):
  2600. 2010-11-30 Andras Becsi <abecsi@webkit.org>
  2601. Reviewed by Csaba Osztrogonác.
  2602. [Qt][V8] Make QtWebKit with V8 build on Linux.
  2603. https://bugs.webkit.org/show_bug.cgi?id=50244
  2604. No new tests needed.
  2605. * WebCore.pri: add missing idl file
  2606. * WebCore.pro: enable Linux build
  2607. * bindings/scripts/CodeGeneratorV8.pm: add missing headers
  2608. * bindings/v8/ScriptControllerQt.cpp: fix instantiation
  2609. (WebCore::ScriptController::qtScriptEngine):
  2610. * bindings/v8/V8GCController.cpp: fix guard
  2611. (WebCore::V8GCController::checkMemoryUsage):
  2612. * inspector/CodeGeneratorInspector.pm: add missing header
  2613. * loader/ResourceLoadScheduler.cpp: ditto
  2614. * loader/cache/MemoryCache.cpp: ditto
  2615. * loader/loader.cpp: ditto
  2616. 2010-11-30 David Hyatt <hyatt@apple.com>
  2617. Reviewed by Simon Fraser.
  2618. https://bugs.webkit.org/show_bug.cgi?id=50183
  2619. Code got commented out by accident during render tree refactoring last year. Put the code back in, since
  2620. it hurts performance to have that line commented out.
  2621. In order to put this code back in, I had to fix some bugs with preferred width computations and
  2622. overflow: scroll. Make the pref widths computation create the scrollbar if it doesn't exist yet.
  2623. Make sure the scrollbar size is included prior to checking for defined width/min-width/max-width values. Otherwise
  2624. the scrollbar inflates the width beyond the fixed size that was specified.
  2625. For table cells, there is an additional wrinkle. Make sure not to include the scrollbar size as part of the minimum
  2626. intrinsic width so that we don't incorrectly grow.
  2627. * rendering/RenderBlock.cpp:
  2628. (WebCore::RenderBlock::layoutPositionedObjects):
  2629. (WebCore::RenderBlock::computePreferredLogicalWidths):
  2630. * rendering/RenderFlexibleBox.cpp:
  2631. (WebCore::RenderFlexibleBox::computePreferredLogicalWidths):
  2632. 2010-11-30 Vitaly Repeshko <vitalyr@chromium.org>
  2633. Unreviewed.
  2634. Attempt to fix windows debug chromium build.
  2635. * html/TimeInputType.cpp: Added include providing isfinite.
  2636. 2010-11-30 Darin Adler <darin@apple.com>
  2637. Reviewed by Jon Honeycutt.
  2638. DOM binding code generator scripts import unused File::stat Perl module
  2639. https://bugs.webkit.org/show_bug.cgi?id=50250
  2640. * bindings/scripts/CodeGeneratorCPP.pm: Removed "using File::stat".
  2641. * bindings/scripts/CodeGeneratorJS.pm: Ditto.
  2642. * bindings/scripts/CodeGeneratorObjC.pm: Ditto.
  2643. * bindings/scripts/CodeGeneratorV8.pm: Ditto.
  2644. 2010-11-30 Pavel Feldman <pfeldman@chromium.org>
  2645. Reviewed by Yury Semikhatsky.
  2646. Web Inspector: implement "Revert to this revision" in resources panel.
  2647. https://bugs.webkit.org/show_bug.cgi?id=50107
  2648. * inspector/Inspector.idl:
  2649. * inspector/InspectorCSSAgent.cpp:
  2650. (WebCore::InspectorCSSAgent::setStyleSheetText2):
  2651. * inspector/InspectorCSSAgent.h:
  2652. * inspector/InspectorStyleSheet.cpp:
  2653. (WebCore::InspectorStyleSheet::reparseStyleSheet):
  2654. * inspector/front-end/CSSStyleModel.js:
  2655. (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
  2656. (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
  2657. (WebInspector.CSSStyleModel.prototype._onRevert):
  2658. * inspector/front-end/Resource.js:
  2659. (WebInspector.Resource.prototype.get contentTimestamp):
  2660. (WebInspector.Resource.prototype.setInitialContent):
  2661. (WebInspector.Resource.prototype.isLocallyModified):
  2662. (WebInspector.Resource.prototype.setContent.else.finished):
  2663. (WebInspector.Resource.prototype.setContent):
  2664. (WebInspector.Resource.prototype.revertToThis.callback):
  2665. (WebInspector.Resource.prototype.revertToThis):
  2666. (WebInspector.Resource.prototype.get baseRevision):
  2667. (WebInspector.Resource.prototype._innerRequestContent):
  2668. * inspector/front-end/ResourcesPanel.js:
  2669. (WebInspector.ResourcesPanel.prototype._showResourceView):
  2670. (WebInspector.FrameResourceTreeElement.prototype._contentChanged):
  2671. (WebInspector.ResourceRevisionTreeElement):
  2672. (WebInspector.ResourceRevisionTreeElement.prototype.onattach):
  2673. (WebInspector.ResourceRevisionTreeElement.prototype._ondragstart):
  2674. (WebInspector.ResourceRevisionTreeElement.prototype._handleContextMenuEvent):
  2675. * inspector/front-end/ScriptsPanel.js:
  2676. (WebInspector.ScriptsPanel.prototype.editScriptSource.mycallback):
  2677. (WebInspector.ScriptsPanel.prototype.editScriptSource):
  2678. * inspector/front-end/SourceView.js:
  2679. (WebInspector.SourceView.prototype._editLine):
  2680. (WebInspector.SourceView.prototype._editLineComplete):
  2681. (WebInspector.SourceView.prototype._revertEditLine):
  2682. 2010-11-30 Adam Roben <aroben@apple.com>
  2683. Clean up WebCore.vcproj's bindings filter
  2684. I added files that we compile (via an all-in-one file) but weren't in
  2685. the .vcproj, removed files that no longer exist, and added the scripts
  2686. we use.
  2687. Fixes <http://webkit.org/b/50248> WebCore.vcproj's bindings filter is
  2688. out-of-date
  2689. Reviewed by Darin Adler.
  2690. * WebCore.vcproj/WebCore.vcproj:
  2691. 2010-11-30 Adam Roben <aroben@apple.com>
  2692. Move JSIDB* files to the DerivedSources filter
  2693. This correctly reflects their location on disk. (They were formerly
  2694. listed under bindings/js.)
  2695. * WebCore.vcproj/WebCore.vcproj:
  2696. 2010-11-30 Xiaomei Ji <xji@chromium.org>
  2697. Reviewed by David Hyatt.
  2698. Remove clampNegativeToZero in adjustScrollPositionWithinRange.
  2699. https://bugs.webkit.org/show_bug.cgi?id=50203
  2700. * platform/ScrollView.cpp:
  2701. (WebCore::ScrollView::adjustScrollPositionWithinRange):
  2702. 2010-11-30 Adam Roben <aroben@apple.com>
  2703. Remove duplicate files from WebCore.vcproj
  2704. Rubber-stamped by Steve Falkenburg.
  2705. * WebCore.vcproj/WebCore.vcproj:
  2706. 2010-11-30 Adam Roben <aroben@apple.com>
  2707. Let VS do its thang with WebCore.vcproj
  2708. I just removed and readded AnimationBase.cpp.
  2709. Rubber-stamped by Steve Falkenburg.
  2710. * WebCore.vcproj/WebCore.vcproj:
  2711. 2010-11-30 Mario Sanchez Prada <msanchez@igalia.com>
  2712. Reviewed by Chris Fleizach.
  2713. ASSERT failing for combo boxes when selection changes
  2714. https://bugs.webkit.org/show_bug.cgi?id=50062
  2715. Don't call listBoxOnChange for elements using menu lists.
  2716. Test: fast/forms/select-option-accesskey-crash.html
  2717. * dom/SelectElement.cpp:
  2718. (WebCore::SelectElement::accessKeySetSelectedIndex): Extra check
  2719. to decide whether to call menuListOnChange() or listBoxOnChange()
  2720. instead of always calling listBoxOnChange().
  2721. 2010-11-30 Andreas Kling <kling@webkit.org>
  2722. Reviewed by Dirk Schulze.
  2723. GraphicsContext: Remove "current path" and have strokePath, fillPath and clipPath take a Path argument.
  2724. https://bugs.webkit.org/show_bug.cgi?id=48516
  2725. No new tests, this is refactoring only.
  2726. fillPath() -> fillPath(const Path&)
  2727. strokePath() -> strokePath(const Path&)
  2728. clipPath(WindRule) -> clipPath(const Path&, WindRule)
  2729. drawPath() was only used by CG, so made it PLATFORM(CG) specific.
  2730. The Qt, CG and Cairo implementations are best-effort.
  2731. For the rest, I've put beginPath/addPath and FIXMEs in the three affected methods.
  2732. * WebCore.exp.in:
  2733. * html/canvas/CanvasRenderingContext2D.cpp:
  2734. (WebCore::CanvasRenderingContext2D::fill):
  2735. (WebCore::CanvasRenderingContext2D::stroke):
  2736. * inspector/InspectorController.cpp:
  2737. (WebCore::drawOutlinedQuad):
  2738. * mathml/RenderMathMLRoot.cpp:
  2739. (WebCore::RenderMathMLRoot::paint):
  2740. * mathml/RenderMathMLSquareRoot.cpp:
  2741. (WebCore::RenderMathMLSquareRoot::paint):
  2742. * platform/graphics/GraphicsContext.h:
  2743. * platform/graphics/GraphicsContextPrivate.h:
  2744. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  2745. (WebCore::GraphicsContext::fillPath):
  2746. (WebCore::GraphicsContext::strokePath):
  2747. (WebCore::GraphicsContext::clipPath):
  2748. * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
  2749. * platform/graphics/cg/GraphicsContextCG.cpp:
  2750. (WebCore::GraphicsContext::drawEllipse):
  2751. (WebCore::addConvexPolygonToPath):
  2752. (WebCore::GraphicsContext::drawConvexPolygon):
  2753. (WebCore::GraphicsContext::clipConvexPolygon):
  2754. (WebCore::GraphicsContext::drawPath):
  2755. (WebCore::GraphicsContext::fillPath):
  2756. (WebCore::GraphicsContext::strokePath):
  2757. (WebCore::GraphicsContext::fillRoundedRect):
  2758. (WebCore::GraphicsContext::clipPath):
  2759. * platform/graphics/haiku/GraphicsContextHaiku.cpp:
  2760. (WebCore::GraphicsContext::strokePath):
  2761. (WebCore::GraphicsContext::fillPath):
  2762. * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
  2763. (WebCore::GraphicsContext::fillPath):
  2764. (WebCore::GraphicsContext::strokePath):
  2765. (WebCore::GraphicsContext::clipPath):
  2766. * platform/graphics/qt/GraphicsContextQt.cpp:
  2767. (WebCore::GraphicsContext::restorePlatformState):
  2768. (WebCore::GraphicsContext::fillPath):
  2769. (WebCore::GraphicsContext::strokePath):
  2770. (WebCore::GraphicsContext::clipPath):
  2771. (WebCore::GraphicsContext::strokeRect):
  2772. (WebCore::GraphicsContext::translate):
  2773. (WebCore::GraphicsContext::rotate):
  2774. (WebCore::GraphicsContext::scale):
  2775. (WebCore::GraphicsContext::concatCTM):
  2776. * platform/graphics/skia/GraphicsContextSkia.cpp:
  2777. (WebCore::GraphicsContext::clipPath):
  2778. (WebCore::GraphicsContext::fillPath):
  2779. (WebCore::GraphicsContext::strokePath):
  2780. * platform/graphics/wince/GraphicsContextWinCE.cpp:
  2781. (WebCore::GraphicsContext::fillPath):
  2782. (WebCore::GraphicsContext::strokePath):
  2783. (WebCore::GraphicsContext::clipPath):
  2784. * platform/graphics/wx/GraphicsContextWx.cpp:
  2785. (WebCore::GraphicsContext::clipPath):
  2786. (WebCore::GraphicsContext::fillPath):
  2787. (WebCore::GraphicsContext::strokePath):
  2788. * rendering/RenderBoxModelObject.cpp:
  2789. (WebCore::RenderBoxModelObject::paintBorder):
  2790. (WebCore::RenderBoxModelObject::paintBoxShadow):
  2791. * rendering/RenderEmbeddedObject.cpp:
  2792. (WebCore::RenderEmbeddedObject::paintReplaced):
  2793. * rendering/RenderObject.cpp:
  2794. (WebCore::RenderObject::drawBoxSideFromPath):
  2795. * rendering/RenderSVGResource.h:
  2796. (WebCore::RenderSVGResource::postApplyResource):
  2797. * rendering/RenderSVGResourceClipper.cpp:
  2798. (WebCore::RenderSVGResourceClipper::pathOnlyClipping):
  2799. * rendering/RenderSVGResourceFilter.cpp:
  2800. (WebCore::RenderSVGResourceFilter::postApplyResource):
  2801. * rendering/RenderSVGResourceFilter.h:
  2802. * rendering/RenderSVGResourceGradient.cpp:
  2803. (WebCore::RenderSVGResourceGradient::applyResource):
  2804. * rendering/RenderSVGResourceGradient.h:
  2805. * rendering/RenderSVGResourcePattern.cpp:
  2806. (WebCore::RenderSVGResourcePattern::postApplyResource):
  2807. * rendering/RenderSVGResourcePattern.h:
  2808. * rendering/RenderSVGResourceSolidColor.cpp:
  2809. (WebCore::RenderSVGResourceSolidColor::postApplyResource):
  2810. * rendering/RenderSVGResourceSolidColor.h:
  2811. * rendering/SVGRenderSupport.cpp:
  2812. (WebCore::SVGRenderSupport::finishRenderSVGContent):
  2813. * rendering/svg/RenderSVGPath.cpp:
  2814. (WebCore::RenderSVGPath::fillAndStrokePath):
  2815. * rendering/svg/SVGInlineTextBox.cpp:
  2816. (WebCore::SVGInlineTextBox::releasePaintingResource):
  2817. (WebCore::SVGInlineTextBox::restoreGraphicsContextAfterTextPainting):
  2818. (WebCore::SVGInlineTextBox::paintDecorationWithStyle):
  2819. * rendering/svg/SVGInlineTextBox.h:
  2820. * svg/SVGFont.cpp:
  2821. (WebCore::Font::drawTextUsingSVGFont):
  2822. 2010-11-30 Alexey Proskuryakov <ap@apple.com>
  2823. Reviewed by Darin Adler and Geoff Garen.
  2824. https://bugs.webkit.org/show_bug.cgi?id=44152
  2825. <rdar://problem/8324423> CSSOM should match DOM in discarding wrapper-less parents.
  2826. We have existing behaviors where parent objects in detached subtrees are not preserved:
  2827. - if a root of a node tree doesn't have a wrapper, it's immediately destroyed, making
  2828. its children parentNode attribute null;
  2829. - relationship between a <style> or <link> node and its stylesheet is immediately broken
  2830. when the node is removed from document (in this case, regardless of wrapper existence).
  2831. Both match Firefox. For consistency, CSSOM should do the same. In fact, it already partially
  2832. does - CSSRule.parentRule gets zeroed out when the parent rule is destroyed.
  2833. Tests: fast/dom/StyleSheet/detached-parent-rule-without-wrapper.html
  2834. fast/dom/StyleSheet/detached-stylesheet-without-wrapper.html
  2835. * css/StyleSheet.cpp: (WebCore::StyleSheet::~StyleSheet): Clear out child rule parent.
  2836. * svg/SVGFontFaceElement.cpp: (WebCore::SVGFontFaceElement::insertedIntoDocument): Keep
  2837. the new assertion from firing. This function was adding a rule to style sheet, without
  2838. telling the rule about it.
  2839. 2010-11-30 Steve Falkenburg <sfalken@apple.com>
  2840. Reviewed by Adam Roben.
  2841. All projects on Windows should use cmd files for build events
  2842. https://bugs.webkit.org/show_bug.cgi?id=50213
  2843. * WebCore.vcproj/QTMovieWinCommon.vsprops:
  2844. * WebCore.vcproj/QTMovieWinPostBuild.cmd: Added.
  2845. * WebCore.vcproj/QTMovieWinPreBuild.cmd: Added.
  2846. * WebCore.vcproj/WebCoreCommon.vsprops:
  2847. * WebCore.vcproj/WebCorePostBuild.cmd: Added.
  2848. * WebCore.vcproj/WebCorePreBuild.cmd: Added.
  2849. 2010-11-30 Sheriff Bot <webkit.review.bot@gmail.com>
  2850. Unreviewed, rolling out r72914.
  2851. http://trac.webkit.org/changeset/72914
  2852. https://bugs.webkit.org/show_bug.cgi?id=50241
  2853. "pfeldman has a revision management patch both for CSS and JS"
  2854. (Requested by apavlov on #webkit).
  2855. * English.lproj/localizedStrings.js:
  2856. * inspector/InspectorStyleSheet.cpp:
  2857. (WebCore::InspectorStyleSheet::reparseStyleSheet):
  2858. * inspector/front-end/CSSStyleModel.js:
  2859. (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
  2860. (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
  2861. (WebInspector.CSSStyleSheet.prototype.getText):
  2862. (WebInspector.CSSStyleSheet.prototype.setText):
  2863. * inspector/front-end/ResourcesPanel.js:
  2864. (WebInspector.ResourceRevisionTreeElement.prototype.onattach):
  2865. (WebInspector.ResourceRevisionTreeElement.prototype._ondragstart):
  2866. 2010-11-25 Satish Sampath <satish@chromium.org>
  2867. Reviewed by Kent Tamura.
  2868. Fix rendering of speech button when setting the attribute dynamically.
  2869. https://bugs.webkit.org/show_bug.cgi?id=50077
  2870. * html/HTMLInputElement.cpp:
  2871. (WebCore::HTMLInputElement::parseMappedAttribute):
  2872. * rendering/RenderTextControlSingleLine.cpp:
  2873. (WebCore::RenderTextControlSingleLine::speechAttributeChanged):
  2874. * rendering/RenderTextControlSingleLine.h:
  2875. 2010-11-30 Alexander Pavlov <apavlov@chromium.org>
  2876. Reviewed by Yury Semikhatsky.
  2877. Web Inspector: Enable switching between revisions of stylesheets
  2878. https://bugs.webkit.org/show_bug.cgi?id=50227
  2879. Drive-by fix: styleSheetChanged() call needed after a stylesheet reparsing on setStyleSheetText2().
  2880. * English.lproj/localizedStrings.js:
  2881. * inspector/InspectorStyleSheet.cpp:
  2882. (WebCore::InspectorStyleSheet::reparseStyleSheet):
  2883. * inspector/front-end/CSSStyleModel.js:
  2884. (WebInspector.CSSStyleModel.prototype.setStyleSheetText):
  2885. (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
  2886. (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
  2887. (WebInspector.CSSStyleSheet.prototype.getText):
  2888. * inspector/front-end/ResourcesPanel.js:
  2889. (WebInspector.ResourceRevisionTreeElement.prototype.onattach):
  2890. (WebInspector.ResourceRevisionTreeElement.prototype._ondragstart):
  2891. (WebInspector.ResourceRevisionTreeElement.prototype._handleContextMenuEvent):
  2892. 2010-11-30 John Knottenbelt <jknotten@chromium.org>
  2893. Reviewed by David Levin.
  2894. V8 binding for DOMTimeStamp should be Number, not Date
  2895. https://bugs.webkit.org/show_bug.cgi?id=49963
  2896. Test: fast/dom/domtimestamp-is-number.html
  2897. * bindings/scripts/CodeGeneratorV8.pm:
  2898. 2010-11-30 Renata Hodovan <reni@inf.u-szeged.hu>
  2899. Reviewed by Andreas Kling.
  2900. [Qt] Leak with GraphicsContext::takeOwnershipOfPlatformContext()
  2901. https://bugs.webkit.org/show_bug.cgi?id=49916
  2902. Change the order of calling QPainter::device() and QPainter::end(), so device() will return with a valid device.
  2903. No new test is needed.
  2904. * platform/graphics/qt/GraphicsContextQt.cpp:
  2905. (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
  2906. 2010-11-30 Patrick Gansterer <paroga@webkit.org>
  2907. Reviewed by Andreas Kling.
  2908. Move generator logic into main CMakeLists.txt file
  2909. https://bugs.webkit.org/show_bug.cgi?id=49885
  2910. Also make the generator calls more portable.
  2911. * CMakeLists.txt:
  2912. 2010-11-30 Mario Sanchez Prada <msanchez@igalia.com>
  2913. Unreviewed, rolling out r72902.
  2914. http://trac.webkit.org/changeset/72902
  2915. https://bugs.webkit.org/show_bug.cgi?id=50062
  2916. This change is causing layout test failures on the Tests bots
  2917. for the mac platform.
  2918. * dom/SelectElement.cpp:
  2919. (WebCore::SelectElement::accessKeySetSelectedIndex):
  2920. 2010-11-30 Sheriff Bot <webkit.review.bot@gmail.com>
  2921. Unreviewed, rolling out r72764.
  2922. http://trac.webkit.org/changeset/72764
  2923. https://bugs.webkit.org/show_bug.cgi?id=50215
  2924. This change is causing assertion failures on the debug bots.
  2925. (Requested by mrobinson on #webkit).
  2926. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  2927. (webkit_accessible_get_name):
  2928. (webkit_accessible_detach):
  2929. 2010-11-30 Pavel Feldman <pfeldman@chromium.org>
  2930. Reviewed by Yury Semikhatsky.
  2931. Web Inspector: make copy(node) work in console.
  2932. https://bugs.webkit.org/show_bug.cgi?id=50180
  2933. * inspector/front-end/InjectedScript.js:
  2934. (injectedScriptConstructor.):
  2935. 2010-11-30 Mario Sanchez Prada <msanchez@igalia.com>
  2936. Reviewed by Darin Adler.
  2937. ASSERT failing for combo boxes when selection changes
  2938. https://bugs.webkit.org/show_bug.cgi?id=50062
  2939. Don't call listBoxOnChange for elements using menu lists.
  2940. Test: accessibility/select-menulist-crash.html
  2941. * dom/SelectElement.cpp:
  2942. (WebCore::SelectElement::accessKeySetSelectedIndex): Extra check
  2943. to decide whether to call menuListOnChange() or listBoxOnChange()
  2944. instead of always calling listBoxOnChange().
  2945. 2010-11-30 Helder Correia <helder@sencha.com>
  2946. Reviewed by Kenneth Rohde Christiansen.
  2947. [Qt] Path stroke shadow has incorrect behavior when using ctx.scale(x,y)
  2948. https://bugs.webkit.org/show_bug.cgi?id=50198
  2949. Handle the special case when scaling is used and translate the shadow
  2950. offset accordingly. The correct behavior is ensured in ContextShadow
  2951. already, the issue only happens when using a non-blur shadow.
  2952. Test: fast/canvas/canvas-scale-strokePath-shadow.html
  2953. * platform/graphics/qt/GraphicsContextQt.cpp:
  2954. (WebCore::GraphicsContext::strokePath):
  2955. 2010-11-30 Helder Correia <helder@sencha.com>
  2956. Reviewed by Kenneth Rohde Christiansen.
  2957. [Qt] Path filling should keep shadow offset after context scaling
  2958. https://bugs.webkit.org/show_bug.cgi?id=50194
  2959. Handle the special case when scaling is used and translate the shadow
  2960. offset accordingly. The correct behavior is ensured in ContextShadow
  2961. already, the issue only happens when using a non-blur shadow.
  2962. Test: fast/canvas/canvas-scale-fillPath-shadow.html
  2963. * platform/graphics/qt/GraphicsContextQt.cpp:
  2964. (WebCore::GraphicsContext::fillPath):
  2965. 2010-11-30 Yury Semikhatsky <yurys@chromium.org>
  2966. Reviewed by Pavel Feldman.
  2967. Web Inspector: make ScriptCallStack and ScriptArguments reference counted
  2968. https://bugs.webkit.org/show_bug.cgi?id=50156
  2969. No new tests. This refactoring is covered with existing inspector tests.
  2970. * bindings/js/JSConsoleCustom.cpp:
  2971. (WebCore::JSConsole::profile):
  2972. (WebCore::JSConsole::profileEnd):
  2973. * bindings/js/ScriptCallStackFactory.cpp:
  2974. (WebCore::createScriptCallStack):
  2975. (WebCore::createScriptArguments):
  2976. * bindings/js/ScriptCallStackFactory.h:
  2977. * bindings/scripts/CodeGeneratorJS.pm:
  2978. * bindings/scripts/CodeGeneratorV8.pm:
  2979. * bindings/scripts/test/JS/JSTestObj.cpp:
  2980. (WebCore::jsTestObjPrototypeFunctionCustomArgsAndException):
  2981. * bindings/scripts/test/V8/V8TestObj.cpp:
  2982. (WebCore::TestObjInternal::customArgsAndExceptionCallback):
  2983. * bindings/v8/ScriptCallStackFactory.cpp:
  2984. (WebCore::createScriptCallStack):
  2985. (WebCore::createScriptArguments):
  2986. * bindings/v8/ScriptCallStackFactory.h:
  2987. * bindings/v8/V8ConsoleMessage.cpp:
  2988. (WebCore::V8ConsoleMessage::handler):
  2989. (WebCore::V8ConsoleMessage::dispatchNow):
  2990. * bindings/v8/V8ConsoleMessage.h:
  2991. * bindings/v8/custom/V8ConsoleCustom.cpp:
  2992. (WebCore::V8Console::traceCallback):
  2993. (WebCore::V8Console::assertCallback):
  2994. (WebCore::V8Console::profileCallback):
  2995. (WebCore::V8Console::profileEndCallback):
  2996. * inspector/ConsoleMessage.cpp:
  2997. (WebCore::ConsoleMessage::ConsoleMessage):
  2998. * inspector/ConsoleMessage.h:
  2999. * inspector/InspectorController.cpp:
  3000. (WebCore::InspectorController::addMessageToConsole):
  3001. (WebCore::InspectorController::startGroup):
  3002. * inspector/InspectorController.h:
  3003. * inspector/ScriptArguments.cpp:
  3004. (WebCore::ScriptArguments::create):
  3005. * inspector/ScriptArguments.h:
  3006. * inspector/ScriptCallFrame.h:
  3007. * inspector/ScriptCallStack.cpp:
  3008. (WebCore::ScriptCallStack::create):
  3009. (WebCore::ScriptCallStack::at):
  3010. (WebCore::ScriptCallStack::size):
  3011. * inspector/ScriptCallStack.h:
  3012. * page/Console.cpp:
  3013. (WebCore::Console::addMessage):
  3014. (WebCore::Console::debug):
  3015. (WebCore::Console::error):
  3016. (WebCore::Console::info):
  3017. (WebCore::Console::log):
  3018. (WebCore::Console::dir):
  3019. (WebCore::Console::dirxml):
  3020. (WebCore::Console::trace):
  3021. (WebCore::Console::assertCondition):
  3022. (WebCore::Console::count):
  3023. (WebCore::Console::markTimeline):
  3024. (WebCore::Console::profile):
  3025. (WebCore::Console::profileEnd):
  3026. (WebCore::Console::timeEnd):
  3027. (WebCore::Console::group):
  3028. (WebCore::Console::groupCollapsed):
  3029. (WebCore::Console::warn):
  3030. * page/Console.h:
  3031. 2010-11-29 Dan Bernstein <mitz@apple.com>
  3032. Build fix for non-ICU platforms after r72887.
  3033. * editing/TextIterator.cpp:
  3034. (WebCore::SearchBuffer::prependContext):
  3035. 2010-11-29 Dan Bernstein <mitz@apple.com>
  3036. Reviewed by Darin Adler.
  3037. WebCore part of <rdar://problem/8650085> adding word-prefix search options to the text search API.
  3038. https://bugs.webkit.org/show_bug.cgi?id=50038
  3039. Test: editing/text-iterator/findString.html
  3040. * GNUmakefile.am: Added FindOptions.h.
  3041. * WebCore.exp.in: Export the new methods that take FindOptions.
  3042. * WebCore.gypi: Added FindOptions.h.
  3043. * WebCore.pro: Added FindOptions.h and TextBoundaries.{cpp,h}.
  3044. * WebCore.vcproj/WebCore.vcproj: Added FindOptions.h.
  3045. * WebCore.xcodeproj/project.pbxproj: Added FindOptions.h and TextBoundaries.cpp.
  3046. * editing/Editor.cpp:
  3047. (WebCore::Editor::firstVisibleRange): Changed to use FindOptions.
  3048. (WebCore::Editor::lastVisibleRange): Ditto.
  3049. (WebCore::Editor::nextVisibleRange): Ditto.
  3050. (WebCore::Editor::findString): Ditto.
  3051. (WebCore::Editor::countMatchesForText): Ditto.
  3052. * editing/Editor.h: Added a version of findString() that takes FindOptions. Changed
  3053. countMatchesForText() to take FindOptions. Made nextVisibleRange() private and changed it
  3054. and firstVisibleRange() and lastVisibleRange() to take FindOptions.
  3055. * editing/FindOptions.h: Added.
  3056. * editing/TextIterator.cpp:
  3057. Augmented SearchBuffer with an optional prefix, which is not searched, but provides context
  3058. for determining word boundaries.
  3059. (WebCore::isSeparator): Added. Identifies a class of characters used to determine where
  3060. “words” are embedded in a word.
  3061. (WebCore::SearchBuffer::SearchBuffer): Changed to take FindOptions. Added initialization of
  3062. m_options, m_prefixLength and m_needsMoreContext.
  3063. (WebCore::SearchBuffer::append): Adjust m_prefixLength as part of the prefix gets pushed out
  3064. of the buffer.
  3065. (WebCore::SearchBuffer::needsMoreContext): Added.
  3066. (WebCore::SearchBuffer::prependContext): Added.
  3067. (WebCore::SearchBuffer::isWordStartMatch): Added.
  3068. (WebCore::SearchBuffer::search): Changed to account for the context prefix. When searching
  3069. only for word prefix matches, maintains enough context before a tentative match when moving
  3070. it to the beginning of the buffer. Reject matches that are not at word starts if requested.
  3071. Adjust m_prefixLength when pushing characters out of the buffer.
  3072. (WebCore::findPlainText): Changed to work with FindOptions. Feed the search buffer with context
  3073. if and as long as it requires more of it.
  3074. * editing/TextIterator.h: Added a version of findPlainText() that takes FindOptions.
  3075. * editing/visible_units.cpp: Moved {end,start}Of{First,Last}WordBoundary to TextBoundaries.cpp.
  3076. * page/Page.cpp:
  3077. (WebCore::Page::findString): Changed to work with FindOptions.
  3078. (WebCore::Page::markAllMatchesForText): Ditto.
  3079. * page/Page.h: Added FindOptions-based findString() and markAllMatchesForText().
  3080. * platform/text/TextBoundaries.cpp:
  3081. (WebCore::endOfFirstWordBoundaryContext): Moved here from visible_units.cpp.
  3082. (WebCore::startOfLastWordBoundaryContext): Ditto.
  3083. * platform/text/TextBoundaries.h:
  3084. 2010-11-29 Dai Mikurube <dmikurube@google.com>
  3085. Reviewed by Kent Tamura.
  3086. when empty, clicking "down" on outer-spin-button returns "max value"
  3087. https://bugs.webkit.org/show_bug.cgi?id=45491
  3088. Modified stepping-up/down from renderer
  3089. - to clamp steps,
  3090. - to handle empty values (described below), and
  3091. - to apply them for range type inputs.
  3092. Stepping-up/down for empty values are handled "the empty as 0."
  3093. For example :
  3094. * If 0 is in-range, and matches to step value
  3095. "down" -> -step
  3096. "up" -> +step
  3097. If -step or +step is out of range, new value should be 0.
  3098. * If 0 is smaller than the minimum value
  3099. "down" -> the minimum value
  3100. "up" -> the minimum value
  3101. * If 0 is larger than the maximum value
  3102. "down" -> the maximum value
  3103. "up" -> the maximum value
  3104. * If 0 is in-range, but not matched to step value
  3105. "down" -> smaler matched value nearest to 0.
  3106. e.g. <input type=number min=-100 step=3> -> -1
  3107. "up" -> larger matched value nearest to 0.
  3108. e.g. <input type=number min=-100 step=3> -> 2
  3109. As for date/datetime-local/month/time/week types, the empty is assumed as "current local date/time".
  3110. As for datetime type, the empty is assumed as "current date/time in UTC".
  3111. As for range input types, changed stepping from renderer to use stepUpFromRenderer().
  3112. It was calculated with stepUp() from RangeInputType::handleKeydownEvent().
  3113. Test: fast/forms/input-stepup-stepdown-from-renderer.html
  3114. * html/BaseDateAndTimeInputType.cpp:
  3115. (WebCore::BaseDateAndTimeInputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns the current local time
  3116. * html/BaseDateAndTimeInputType.h:
  3117. * html/DateTimeInputType.cpp:
  3118. (WebCore::DateTimeInputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns the current UTC time
  3119. * html/DateTimeInputType.h:
  3120. * html/HTMLInputElement.cpp:
  3121. (WebCore::HTMLInputElement::stepUpFromRenderer): Modified it to clamp steps, support empty values and support range type inputs
  3122. * html/HTMLInputElement.h:
  3123. (WebCore::HTMLInputElement::isRangeControl):
  3124. * html/InputType.cpp:
  3125. (WebCore::InputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns 0
  3126. * html/InputType.h:
  3127. * html/MonthInputType.cpp:
  3128. (WebCore::MonthInputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns the current local month
  3129. * html/MonthInputType.h:
  3130. * html/RangeInputType.cpp:
  3131. (WebCore::RangeInputType::handleKeydownEvent): Added comments and modified it to use stepUpFromRenderer()
  3132. * html/TimeInputType.cpp:
  3133. (WebCore::TimeInputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns the current local time
  3134. * html/TimeInputType.h:
  3135. * manual-tests/input-type-datetime-default-value.html: Added manual tests for default values of date/time inputs since they are "the current local/UTC time", which cannot be tested automatically.
  3136. 2010-11-29 Adam Barth <abarth@webkit.org>
  3137. Reviewed by Darin Adler.
  3138. Introduce the notion of a "display-isolated" URL scheme for use by Chrome-internal URLs
  3139. https://bugs.webkit.org/show_bug.cgi?id=50182
  3140. A display-isolated URL can only be displayed (e.g., put in an iframe,
  3141. hyperlinked to) by documents from that scheme. In a sense, this is a
  3142. generalization of some of the protections we give file URLs, but
  3143. instead of lumping them all together into one "local" bucket, this
  3144. patch creates a separate bucket for each scheme.
  3145. For a while, I tried using a separate bucket for each origin. That
  3146. would have played nicely with what Blob URLs are trying to do, but some
  3147. "chrome" URL pages rely on being able to display other chrome URL
  3148. pages, even in different origins. For example, the New Tab Page shows
  3149. thumbnails from the "thumbnail" host.
  3150. This patch also removes a bunch of unused code. I've also propagated
  3151. the "deprecated" status of deprecatedCanDisplay to
  3152. deprecatedShouldTreatURLAsLocal because that method has no other
  3153. callers and is really asking for uppercase/lowercase bugs. I dream of
  3154. someday removing these functions.
  3155. * page/SecurityOrigin.cpp:
  3156. (WebCore::SecurityOrigin::canDisplay):
  3157. (WebCore::SecurityOrigin::deprecatedCanDisplay):
  3158. * platform/SchemeRegistry.cpp:
  3159. (WebCore::displayIsolatedURLSchemes):
  3160. (WebCore::SchemeRegistry::registerURLSchemeAsLocal):
  3161. (WebCore::SchemeRegistry::deprecatedShouldTreatURLAsLocal):
  3162. (WebCore::SchemeRegistry::shouldTreatURLSchemeAsLocal):
  3163. (WebCore::SchemeRegistry::registerURLSchemeAsDisplayIsolated):
  3164. (WebCore::SchemeRegistry::shouldTreatURLSchemeAsDisplayIsolated):
  3165. * platform/SchemeRegistry.h:
  3166. 2010-11-29 Sergio Villar Senin <svillar@igalia.com>
  3167. Reviewed by Martin Robinson.
  3168. [GTK] Leaks in SoupCache code
  3169. https://bugs.webkit.org/show_bug.cgi?id=50161
  3170. Fixes some memory leaks in SoupCache code.
  3171. * platform/network/soup/cache/soup-http-input-stream.c:
  3172. (send_async_finished): Added a missing g_object_unref.
  3173. * platform/network/soup/cache/webkit/soup-cache.c:
  3174. (get_cacheability): Added soup_header_free_param_list.
  3175. (webkit_soup_cache_entry_set_freshness): Ditto.
  3176. (webkit_soup_cache_send_response): Ditto.
  3177. (webkit_soup_cache_has_response): Ditto.
  3178. 2010-11-29 Jian Li <jianli@chromium.org>
  3179. Reviewed by David Levin.
  3180. Add send(ArrayBuffer) to XMLHttpRequest per XMLHttpRequest Level 2 spec
  3181. https://bugs.webkit.org/show_bug.cgi?id=50199
  3182. Test: http/tests/xmlhttprequest/send-array-buffer.html
  3183. * bindings/js/JSXMLHttpRequestCustom.cpp:
  3184. (WebCore::JSXMLHttpRequest::send):
  3185. * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
  3186. (WebCore::V8XMLHttpRequest::sendCallback):
  3187. * xml/XMLHttpRequest.cpp:
  3188. (WebCore::XMLHttpRequest::send):
  3189. * xml/XMLHttpRequest.h:
  3190. 2010-11-29 James Robinson <jamesr@chromium.org>
  3191. [chromium] REGRESSION(72470): Crash in skia on some images
  3192. https://bugs.webkit.org/show_bug.cgi?id=50201
  3193. Reverts r72470
  3194. * platform/graphics/skia/ImageSkia.cpp:
  3195. (WebCore::computeResamplingMode):
  3196. (WebCore::drawResampledBitmap):
  3197. 2010-11-29 Dmitry Titov <dimich@chromium.org>
  3198. Reviewed by David Levin.
  3199. Crash when iframe transfers from one page to another and has child frames.
  3200. https://bugs.webkit.org/show_bug.cgi?id=50200
  3201. * page/Frame.cpp:
  3202. (WebCore::Frame::transferChildFrameToNewDocument):
  3203. avoid overriding 'didTransfer' which has the result of previous check.
  3204. 2010-11-19 Ryosuke Niwa <rniwa@webkit.org>
  3205. Reviewed by David Hyatt.
  3206. up arrow doesn't work with RTL text with word wrapping
  3207. https://bugs.webkit.org/show_bug.cgi?id=41987
  3208. The bug was caused by positionForPoint's not returning the correct affinity when the x coordiate
  3209. is to the left of the first line, and startOfLine's incorrectly moving position to the previous candidate.
  3210. Fixed the bug by returning upstream VisiblePosition in positionForPoint if the first inline text box's offset
  3211. is greater than 0. Also removed the code added by http://trac.webkit.org/changeset/23608 since this changeset
  3212. does not add any test, and the problem described in the changelog reproduces regardless of the code's presence.
  3213. Tests: editing/selection/click-left-of-rtl-wrapping-text.html
  3214. editing/selection/modify-up-on-rtl-wrapping-text.html
  3215. * editing/visible_units.cpp:
  3216. (WebCore::startOfLine):
  3217. * rendering/RenderText.cpp:
  3218. (WebCore::RenderText::positionForPoint):
  3219. 2010-11-29 Ilya Sherman <isherman@chromium.org>
  3220. Reviewed by Kent Tamura.
  3221. Ensure that option elements are rendered with normal font weight on Windows/Linux
  3222. https://bugs.webkit.org/show_bug.cgi?id=50055
  3223. * WebCore.gyp/WebCore.gyp: include themeChromiumSkia.css
  3224. * css/themeChromiumSkia.css: Added.
  3225. (option): font-weight: normal !important;
  3226. * rendering/RenderThemeChromiumSkia.cpp:
  3227. (WebCore::RenderThemeChromiumSkia::extraDefaultStyleSheet): include themeChromiumSkia.css
  3228. 2010-11-29 Brent Fulgham <bfulgham@webkit.org>
  3229. Unreviewed build fix.
  3230. * WebCore.vcproj/WebCoreCairo.vsprops: Provide missing WIN_CAIRO
  3231. definition so that proper targets are build.
  3232. * platform/graphics/win/cairo/FontPlatformData.h:
  3233. (WebCore::FontPlatformData::orientation): Add missing implementation.
  3234. 2010-11-29 Chris Rogers <crogers@google.com>
  3235. Reviewed by Kenneth Russell.
  3236. Switch web audio code to use FloatPoint3D instead of Vector3
  3237. https://bugs.webkit.org/show_bug.cgi?id=50186
  3238. No new tests since audio API is not yet implemented.
  3239. * platform/audio/Cone.cpp:
  3240. (WebCore::ConeEffect::gain):
  3241. * platform/audio/Cone.h:
  3242. * platform/graphics/FloatPoint3D.h:
  3243. (WebCore::FloatPoint3D::isZero):
  3244. (WebCore::operator*):
  3245. (WebCore::FloatPoint3D::distanceTo):
  3246. * webaudio/AudioListener.h:
  3247. (WebCore::AudioListener::setPosition):
  3248. (WebCore::AudioListener::position):
  3249. (WebCore::AudioListener::setOrientation):
  3250. (WebCore::AudioListener::orientation):
  3251. (WebCore::AudioListener::setUpVector):
  3252. (WebCore::AudioListener::upVector):
  3253. (WebCore::AudioListener::setVelocity):
  3254. (WebCore::AudioListener::velocity):
  3255. * webaudio/AudioPannerNode.cpp:
  3256. (WebCore::AudioPannerNode::AudioPannerNode):
  3257. (WebCore::AudioPannerNode::getAzimuthElevation):
  3258. (WebCore::AudioPannerNode::dopplerRate):
  3259. (WebCore::AudioPannerNode::distanceConeGain):
  3260. * webaudio/AudioPannerNode.h:
  3261. (WebCore::AudioPannerNode::position):
  3262. (WebCore::AudioPannerNode::setPosition):
  3263. (WebCore::AudioPannerNode::orientation):
  3264. (WebCore::AudioPannerNode::setOrientation):
  3265. (WebCore::AudioPannerNode::velocity):
  3266. (WebCore::AudioPannerNode::setVelocity):
  3267. 2010-11-29 Xiaomei Ji <xji@chromium.org>
  3268. Reviewed by David Hyatt.
  3269. Right-to-left pages should be scrollable to reveal left overflow.
  3270. https://bugs.webkit.org/show_bug.cgi?id=23556
  3271. For RTL page, save left layout overflow and include it into the document
  3272. size during layout. Use the left layout overflow when scroll and paint
  3273. the page. Behavior on LTR page should be untouched since left layout
  3274. overflow is set as 0 for LTR page.
  3275. Tests: fast/dom/horizontal-scrollbar-in-rtl-doesnt-fire-onscroll.html
  3276. fast/dom/horizontal-scrollbar-in-rtl.html
  3277. fast/dom/horizontal-scrollbar-when-dir-change.html
  3278. fast/dom/left-overflow-in-ltr.html
  3279. fast/dom/right-overflow-in-rtl.html
  3280. * page/FrameView.cpp:
  3281. (WebCore::FrameView::adjustViewSize): Save negative of left layout overflow as scroll X origin. And includes left layout overflow into document size.
  3282. * page/mac/WebCoreFrameView.h: Add methods for setting and getting scroll X origin.
  3283. * platform/ScrollView.cpp:
  3284. (WebCore::ScrollView::ScrollView):
  3285. (WebCore::ScrollView::maximumScrollPosition): Minus scroll X origin from maximum horizontal scroll position.
  3286. (WebCore::ScrollView::minimumScrollPosition):
  3287. (WebCore::ScrollView::adjustScrollPositionWithinRange):
  3288. (WebCore::ScrollView::valueChanged):
  3289. (WebCore::ScrollView::setScrollPosition):
  3290. (WebCore::ScrollView::updateScrollbars):
  3291. (WebCore::ScrollView::wheelEvent):
  3292. * platform/ScrollView.h:
  3293. * platform/mac/ScrollViewMac.mm:
  3294. (WebCore::ScrollView::platformSetContentsSize):
  3295. (WebCore::ScrollView::platformSetScrollPosition):
  3296. (WebCore::ScrollView::platformSetScrollOriginX):
  3297. * rendering/RenderBox.cpp:
  3298. (WebCore::RenderBox::styleDidChange):
  3299. (WebCore::RenderBox::paintRootBoxDecorations): Include left layout overflow into canvas size.
  3300. * rendering/RenderView.cpp:
  3301. (WebCore::RenderView::layout): Save left layout overflow.
  3302. (WebCore::RenderView::docLeft):
  3303. (WebCore::RenderView::docWidth): Include left layout overflow into doc width for RTL page.
  3304. * rendering/RenderView.h:
  3305. 2010-11-29 Simon Fraser <simon.fraser@apple.com>
  3306. Reviewed by Ojan Vafai.
  3307. bunch of pixel failures after http://trac.webkit.org/changeset/72839/
  3308. https://bugs.webkit.org/show_bug.cgi?id=50188
  3309. We need to call updateLayerTransform() for reflections, and
  3310. table rows as well.
  3311. * rendering/RenderReplica.cpp:
  3312. (WebCore::RenderReplica::layout):
  3313. * rendering/RenderTableRow.cpp:
  3314. (WebCore::RenderTableRow::layout):
  3315. * rendering/RenderTableSection.cpp:
  3316. (WebCore::RenderTableSection::layoutRows):
  3317. 2010-11-29 Xiaomei Ji <xji@chromium.org>
  3318. Reviewed by David Hyatt.
  3319. Fix tab overflow problem when alignment is not left.
  3320. https://bugs.webkit.org/show_bug.cgi?id=25459
  3321. I checked WordPad in Windows, TextEdit in Mac, OpenOffice, and Google doc.
  3322. In all of them, (when the writing mode is horizontal) when the alignment is not
  3323. left alignment, the length of tab is computed based on the tab's position
  3324. relative to the left start of line, not based on the tab's position relative
  3325. to the left edge of the document.
  3326. WebKit should follow the same.
  3327. The m_xPos in each TextRun should be relative to the left start of the line,
  3328. not left start of its containing block (in right alignment and center alignment,
  3329. left start of the line is not the same as left start of the containing block).
  3330. So, when the text is drawn, the width of tab is consistent with the width
  3331. computed in RenderBlock::computeInlineDirectionPositionsForLine().
  3332. I did not test vertical writing mode, but I think the same rule should apply.
  3333. Test: fast/dom/tab-in-right-alignment.html
  3334. * platform/graphics/TextRun.h:
  3335. * rendering/InlineTextBox.cpp:
  3336. (WebCore::InlineTextBox::textPos):
  3337. * rendering/InlineTextBox.h:
  3338. 2010-11-29 Mikhail Naganov <mnaganov@chromium.org>
  3339. Reviewed by Pavel Feldman.
  3340. WebInspector: Request JSON-serialized heap snapshot from JS engine.
  3341. This simplifies heap snapshots interaction and API. Instead of
  3342. having objects representing snapshot entities, the whole snapshot
  3343. is transferred to WebInspector and parsed there.
  3344. https://bugs.webkit.org/show_bug.cgi?id=49974
  3345. * bindings/js/ScriptHeapSnapshot.h:
  3346. (WebCore::ScriptHeapSnapshot::OutputStream::~OutputStream):
  3347. (WebCore::ScriptHeapSnapshot::~ScriptHeapSnapshot):
  3348. (WebCore::ScriptHeapSnapshot::writeJSON):
  3349. (WebCore::ScriptHeapSnapshot::ScriptHeapSnapshot):
  3350. * bindings/v8/ScriptHeapSnapshot.cpp:
  3351. (WebCore::ScriptHeapSnapshot::writeJSON):
  3352. * bindings/v8/ScriptHeapSnapshot.h:
  3353. (WebCore::ScriptHeapSnapshot::OutputStream::~OutputStream):
  3354. * inspector/Inspector.idl:
  3355. * inspector/InspectorProfilerAgent.cpp:
  3356. (WebCore::InspectorProfilerAgent::getProfile):
  3357. * inspector/front-end/HeapSnapshotView.js:
  3358. (WebInspector.HeapSnapshotEdgesIterator):
  3359. (WebInspector.HeapSnapshotEdgesIterator.prototype.get done):
  3360. (WebInspector.HeapSnapshotEdgesIterator.prototype.get isElement):
  3361. (WebInspector.HeapSnapshotEdgesIterator.prototype.get isHidden):
  3362. (WebInspector.HeapSnapshotEdgesIterator.prototype.get name):
  3363. (WebInspector.HeapSnapshotEdgesIterator.prototype.next):
  3364. (WebInspector.HeapSnapshotEdgesIterator.prototype.get node):
  3365. (WebInspector.HeapSnapshotEdgesIterator.prototype.get nodeIndex):
  3366. (WebInspector.HeapSnapshotEdgesIterator.prototype._getNameOrIndex):
  3367. (WebInspector.HeapSnapshotEdgesIterator.prototype._getType):
  3368. (WebInspector.HeapSnapshotNodeWrapper):
  3369. (WebInspector.HeapSnapshotNodeWrapper.prototype.get edges):
  3370. (WebInspector.HeapSnapshotNodeWrapper.prototype.get edgesCount):
  3371. (WebInspector.HeapSnapshotNodeWrapper.prototype.get instancesCount):
  3372. (WebInspector.HeapSnapshotNodeWrapper.prototype.get isHidden):
  3373. (WebInspector.HeapSnapshotNodeWrapper.prototype.get name):
  3374. (WebInspector.HeapSnapshotNodeWrapper.prototype.get selfSize):
  3375. (WebInspector.HeapSnapshotNodeWrapper.prototype._getName):
  3376. (WebInspector.HeapSnapshotNodeWrapper.prototype._getEdges):
  3377. (WebInspector.HeapSnapshotNodeWrapper.prototype._getType):
  3378. (WebInspector.HeapSnapshot):
  3379. (WebInspector.HeapSnapshot.prototype._init):
  3380. (WebInspector.HeapSnapshot.prototype.get rootEdges):
  3381. (WebInspector.HeapSnapshotView.prototype.snapshotLoaded):
  3382. (WebInspector.HeapSnapshotView.prototype._loadProfile.processLoadedSnapshot):
  3383. (WebInspector.HeapSnapshotView.prototype._loadProfile):
  3384. (WebInspector.HeapSnapshotView.prototype._convertSnapshot):
  3385. (WebInspector.HeapSnapshotView.prototype._prepareProfile.mergeRetainers):
  3386. (WebInspector.HeapSnapshotView.prototype._prepareProfile):
  3387. (WebInspector.HeapSnapshotView.prototype._sortData):
  3388. * inspector/front-end/ProfilesPanel.js:
  3389. (WebInspector.ProfilesPanel):
  3390. (WebInspector.ProfilesPanel.prototype.addHeapSnapshotChunk):
  3391. (WebInspector.ProfilesPanel.prototype.finishHeapSnapshot):
  3392. * inspector/front-end/inspector.js:
  3393. (WebInspector.addHeapSnapshotChunk):
  3394. (WebInspector.finishHeapSnapshot):
  3395. 2010-11-29 Simon Fraser <simon.fraser@apple.com>
  3396. Reviewed by Dave Hyatt.
  3397. layer()->currentTransform() is stale when layout changes the box size
  3398. https://bugs.webkit.org/show_bug.cgi?id=50175
  3399. RenderLayer::updateTransform() is fairly expensive, so we
  3400. have to avoid calling it from RenderBox::applyLayerTransformToRect()
  3401. every time. This requires that we update the layer's transform
  3402. during layout, instead of from updateLayerPositions() which is too late.
  3403. So call updateLayerTransform() from the various layout methods
  3404. on renderers that can be transformed, and remove it from
  3405. updateLayerPositions().
  3406. Test: fast/overflow/overflow-update-transform.html
  3407. * rendering/RenderBlock.cpp:
  3408. (WebCore::RenderBlock::layoutBlock):
  3409. (WebCore::RenderBlock::layoutOnlyPositionedObjects):
  3410. * rendering/RenderBox.cpp:
  3411. (WebCore::RenderBox::applyLayerTransformToRect):
  3412. (WebCore::RenderBox::updateLayerTransform):
  3413. * rendering/RenderBox.h:
  3414. * rendering/RenderEmbeddedObject.cpp:
  3415. (WebCore::RenderEmbeddedObject::layout):
  3416. * rendering/RenderFlexibleBox.cpp:
  3417. (WebCore::RenderFlexibleBox::layoutBlock):
  3418. * rendering/RenderIFrame.cpp:
  3419. (WebCore::RenderIFrame::layout):
  3420. * rendering/RenderLayer.cpp:
  3421. (WebCore::RenderLayer::updateLayerPositions):
  3422. * rendering/RenderReplaced.cpp:
  3423. (WebCore::RenderReplaced::layout):
  3424. * rendering/RenderTable.cpp:
  3425. (WebCore::RenderTable::layout):
  3426. 2010-11-29 Chris Rogers <crogers@google.com>
  3427. Reviewed by Kenneth Russell.
  3428. Add remaining custom JSC web audio bindings
  3429. https://bugs.webkit.org/show_bug.cgi?id=50172
  3430. No new tests since audio API is not yet implemented.
  3431. * bindings/js/JSAudioBufferSourceNodeCustom.cpp: Added.
  3432. (WebCore::JSAudioBufferSourceNode::setBuffer):
  3433. * bindings/js/JSConvolverNodeCustom.cpp: Added.
  3434. (WebCore::JSConvolverNode::setBuffer):
  3435. * bindings/js/JSJavaScriptAudioNodeCustom.cpp: Added.
  3436. (WebCore::JSJavaScriptAudioNode::markChildren):
  3437. * webaudio/AudioBufferSourceNode.idl:
  3438. * webaudio/ConvolverNode.idl:
  3439. 2010-11-29 Yael Aharon <yael.aharon@nokia.com>
  3440. Reviewed by Darin Adler.
  3441. HTMLFormElement.elements doesn't include fieldsets
  3442. https://bugs.webkit.org/show_bug.cgi?id=48193
  3443. Add fieldset and keygen to the list of form collection elements, by making them enumeratable.
  3444. This patch does not add object element to the list. A separate bug will do that.
  3445. Test: fast/forms/form-collection-elements.html
  3446. * html/HTMLFieldSetElement.h:
  3447. (WebCore::HTMLFieldSetElement::isEnumeratable):
  3448. * html/HTMLKeygenElement.h:
  3449. (WebCore::HTMLKeygenElement::isEnumeratable):
  3450. 2010-11-29 Xan Lopez <xlopez@igalia.com>
  3451. Reviewed by Martin Robinson.
  3452. Get distcheck going.
  3453. * GNUmakefile.am:
  3454. 2010-11-29 Alexey Proskuryakov <ap@apple.com>
  3455. Reviewed by Darin Adler.
  3456. https://bugs.webkit.org/show_bug.cgi?id=50181
  3457. CSS style declarations don't GC protect parents
  3458. Test: fast/dom/StyleSheet/gc-declaration-parent-rule.html
  3459. * bindings/js/JSCSSStyleDeclarationCustom.cpp: (WebCore::JSCSSStyleDeclaration::markChildren):
  3460. Protect the parent rule.
  3461. 2010-11-29 Ilya Tikhonovsky <loislo@chromium.org>
  3462. Reviewed by Pavel Feldman.
  3463. Web Inspector: UI fix. In Timeline, Paint events "Location" value is displayed
  3464. in a confusing manner. The format string should be changed from %d x %d
  3465. pattern to (%d, %d).
  3466. https://bugs.webkit.org/show_bug.cgi?id=50178
  3467. * English.lproj/localizedStrings.js:
  3468. * inspector/front-end/TimelinePanel.js:
  3469. (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
  3470. 2010-11-29 Darin Adler <darin@apple.com>
  3471. Reviewed by Andreas Kling.
  3472. Remove a couple unneeded overflow checks
  3473. https://bugs.webkit.org/show_bug.cgi?id=49816
  3474. * platform/text/TextCodecUTF16.cpp:
  3475. (WebCore::TextCodecUTF16::encode): Use an ASSERT instead of
  3476. an overflow check with CRASH.
  3477. 2010-11-29 Tony Chang <tony@chromium.org>
  3478. Unreviewed, disable warnings again on chromium linux
  3479. * WebCore.gyp/WebCore.gyp:
  3480. 2010-11-29 Cosmin Truta <ctruta@chromium.org>
  3481. Reviewed by Nikolas Zimmermann.
  3482. getBoundingClientRect: Do not truncate the coordinates to integers
  3483. https://bugs.webkit.org/show_bug.cgi?id=48110
  3484. Remove the float-to-int coordinate conversions inside getBoundingClientRect,
  3485. to comply with the CSSOM View Module API.
  3486. Tests: fast/dom/Element/getBoundingClientRect.html
  3487. fast/dom/Range/getBoundingClientRect.html
  3488. svg/zoom/page/zoom-getBoundingClientRect.xhtml
  3489. svg/zoom/page/zoom-zoom-coords.xhtml
  3490. * dom/ClientRect.cpp:
  3491. (WebCore::ClientRect::ClientRect): Added overload to allow a FloatRect argument.
  3492. * dom/ClientRect.h:
  3493. (WebCore::ClientRect::create): Ditto.
  3494. * dom/Element.cpp:
  3495. (Element::getBoundingClientRect): Removed conversion from FloatRect to IntRect.
  3496. * dom/Range.cpp:
  3497. (WebCore::Range::getBoundingClientRect): Ditto.
  3498. * rendering/RenderObject.h:
  3499. (adjustIntRectForAbsoluteZoom): Removed.
  3500. (adjustFloatRectForAbsoluteZoom): Added.
  3501. * rendering/style/RenderStyle.h:
  3502. (adjustFloatForAbsoluteZoom): Added.
  3503. 2010-11-29 Dimitri Glazkov <dglazkov@chromium.org>
  3504. Reviewed by Darin Adler.
  3505. Converge means of querying a parent node into one way, which is Node::parentNode.
  3506. https://bugs.webkit.org/show_bug.cgi?id=49686
  3507. A follow-up to r72259, which explicitly forbids further use of Node::parent by
  3508. making it private.
  3509. No change in behavior, so no new tests.
  3510. * dom/Document.cpp:
  3511. (WebCore::Document::styleForElementIgnoringPendingStylesheets): Changed to use parentNode.
  3512. (WebCore::Document::hoveredNodeDetached): Ditto.
  3513. (WebCore::Document::activeChainNodeDetached): Ditto.
  3514. * dom/Node.h: Made Node::parent private.
  3515. * page/SpatialNavigation.cpp:
  3516. (WebCore::canBeScrolledIntoView): Changed to use parentNode.
  3517. * xml/XSLTProcessorQt.cpp:
  3518. (WebCore::XSLTProcessor::transformToString): Ditto.
  3519. 2010-11-29 Tony Chang <tony@chromium.org>
  3520. Reviewed by James Robinson.
  3521. [chromium] try to enable WebCore compiler warnings on linux
  3522. https://bugs.webkit.org/show_bug.cgi?id=50168
  3523. * WebCore.gyp/WebCore.gyp:
  3524. * platform/graphics/chromium/FontLinux.cpp:
  3525. (WebCore::TextRunWalker::setPadding):
  3526. (WebCore::TextRunWalker::setGlyphXPositions):
  3527. (WebCore::glyphIndexForXPositionInScriptRun):
  3528. 2010-11-29 Alexey Proskuryakov <ap@apple.com>
  3529. Reviewed by Darin Adler.
  3530. https://bugs.webkit.org/show_bug.cgi?id=50165
  3531. CSS style rules don't GC protect parents
  3532. Tests: fast/dom/StyleSheet/gc-parent-rule.html
  3533. fast/dom/StyleSheet/gc-parent-stylesheet.html
  3534. * bindings/js/JSCSSRuleCustom.cpp: (WebCore::JSCSSRule::markChildren): Mark parents. The code
  3535. is super naive compared to what we have for nodes - but CSSOM has shallow hierarchies, so
  3536. it should be OK.
  3537. * css/CSSRule.idl: Added CustomMarkFunction.
  3538. 2010-11-29 Gavin Peters <gavinp@chromium.org>
  3539. Reviewed by Adam Barth.
  3540. Web page can prevent WebKit from loading subresources on other
  3541. pages (cache poisoning)
  3542. https://bugs.webkit.org/show_bug.cgi?id=35404
  3543. Tests: http/tests/misc/unloadable-script.html
  3544. loader/reload-subresource-when-type-changes.html
  3545. * loader/cache/MemoryCache.cpp:
  3546. (WebCore::MemoryCache::requestResource):
  3547. 2010-11-29 Simon Fraser <simon.fraser@apple.com>
  3548. Reviewed by Dan Bernstein.
  3549. Crash in WebCore::CSSStyleSelector::loadPendingImages
  3550. https://bugs.webkit.org/show_bug.cgi?id=50149
  3551. Null-check style->boxReflect() when loading pending style images.
  3552. Test: fast/reflections/pending-reflection-mask-crash.html
  3553. * css/CSSStyleSelector.cpp:
  3554. (WebCore::CSSStyleSelector::loadPendingImages):
  3555. 2010-11-29 Pavel Feldman <pfeldman@chromium.org>
  3556. Reviewed by Yury Semikhatsky.
  3557. Web Inspector: crash upon inspecting user style sheet.
  3558. https://bugs.webkit.org/show_bug.cgi?id=50109
  3559. * inspector/InspectorStyleSheet.cpp:
  3560. (WebCore::InspectorStyleSheet::resourceStyleSheetText):
  3561. 2010-11-29 Patrick Gansterer <paroga@webkit.org>
  3562. Reviewed by Adam Roben.
  3563. [WINCE] Implement WebCore::directoryName
  3564. https://bugs.webkit.org/show_bug.cgi?id=50031
  3565. Also fix handling of paths without path separator.
  3566. * platform/wince/FileSystemWinCE.cpp:
  3567. (WebCore::reverseFindPathSeparator):
  3568. (WebCore::makeAllDirectories):
  3569. (WebCore::pathGetFileName):
  3570. (WebCore::directoryName):
  3571. 2010-11-29 Patrick Gansterer <paroga@webkit.org>
  3572. Reviewed by Adam Roben.
  3573. Simplify directoryName in FileSystemWin.cpp
  3574. https://bugs.webkit.org/show_bug.cgi?id=50028
  3575. * platform/win/FileSystemWin.cpp:
  3576. (WebCore::directoryName):
  3577. 2010-11-24 Dimitri Glazkov <dglazkov@chromium.org>
  3578. Reviewed by Darin Adler.
  3579. REGRESSION (r71934): Main search field at Apple tech specs does not accept typing
  3580. https://bugs.webkit.org/show_bug.cgi?id=49868
  3581. The problem here was that the inner text element of search input was first laid out as
  3582. disabled and thus with a 0-height. This would prevent a hit test to ever reach it, even
  3583. if it's enabled.
  3584. Test: fast/forms/disabled-search-input.html
  3585. * rendering/RenderBlock.cpp:
  3586. (WebCore::RenderBlock::hasLineIfEmpty): Removed a check for textarea that is no longer necessary.
  3587. * rendering/TextControlInnerElements.cpp:
  3588. (WebCore::RenderTextControlInnerBlock::hasLineIfEmpty): Added an override to ensure that
  3589. an empty inner text element is always one-line high.
  3590. 2010-11-29 W. James MacLean <wjmaclean@chromium.org>
  3591. Reviewed by Dirk Schulze.
  3592. Large input numbers cause overflow during SVG parsing, leading to crash
  3593. https://bugs.webkit.org/show_bug.cgi?id=49546
  3594. Values outside the range supported by float lead to Infinity() or NaN()
  3595. during parsing, leading to subsequent crashes. Modified
  3596. parser to verify number is in the supported range, and return false if not.
  3597. Tests: svg/custom/svg-parse-overflow-1.html
  3598. svg/custom/svg-parse-overflow-2.html
  3599. svg/custom/svg-parse-overflow-3.html
  3600. svg/custom/svg-parse-overflow-4.html
  3601. svg/custom/svg-parse-overflow-5.html
  3602. * svg/SVGParserUtilities.cpp:
  3603. (WebCore::isValidRange):
  3604. (WebCore::genericParseNumber):
  3605. 2010-11-29 Yury Semikhatsky <yurys@chromium.org>
  3606. Reviewed by Pavel Feldman.
  3607. Web Inspector: display name of an object constructor as the object's type
  3608. https://bugs.webkit.org/show_bug.cgi?id=50063
  3609. Name of the function that has created given object is used as the object's
  3610. type when it's displayed in the inspector front-end(in case of V8). Before
  3611. this change, it was always a value of the object's constructor.name property
  3612. which is confusing in some cases(see the test).
  3613. Removed check for jsEngine from the InjectedScript.js, all VM-specific code
  3614. is now encapsulated on the bindings layer.
  3615. Test: inspector/console-object-constructor-name.html
  3616. * bindings/js/JSInjectedScriptHostCustom.cpp:
  3617. (WebCore::InjectedScriptHost::createInjectedScript):
  3618. (WebCore::JSInjectedScriptHost::constructorName):
  3619. * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
  3620. (WebCore::InjectedScriptHost::createInjectedScript):
  3621. (WebCore::V8InjectedScriptHost::constructorNameCallback):
  3622. * inspector/InjectedScriptHost.idl:
  3623. * inspector/front-end/InjectedScript.js:
  3624. (injectedScriptConstructor.):
  3625. 2010-11-29 Jeremy Moskovich <jeremy@chromium.org>
  3626. Reviewed by Eric Seidel.
  3627. https://bugs.webkit.org/show_bug.cgi?id=24346
  3628. Remove temporary workaround to load Gears plugin.
  3629. * html/HTMLObjectElement.cpp:
  3630. (WebCore::HTMLObjectElement::rendererIsNeeded):
  3631. 2010-11-29 Yael Aharon <yael.aharon@nokia.com>
  3632. Reviewed by Antonio Gomes.
  3633. Spatial Navigation: Store more information in FocusCandidate
  3634. https://bugs.webkit.org/show_bug.cgi?id=50153
  3635. More information should be stored in FocusCandidate, to avoid
  3636. recalculating it when running the spatial navigation algorithm.
  3637. No new tests, since this is code refactoring only.
  3638. * page/FocusController.cpp:
  3639. (WebCore::updateFocusCandidateIfNeeded):
  3640. (WebCore::FocusController::findFocusCandidateInContainer):
  3641. (WebCore::FocusController::advanceFocusDirectionallyInContainer):
  3642. * page/SpatialNavigation.cpp:
  3643. (WebCore::FocusCandidate::FocusCandidate):
  3644. (WebCore::canBeScrolledIntoView):
  3645. * page/SpatialNavigation.h:
  3646. (WebCore::FocusCandidate::FocusCandidate):
  3647. 2010-11-29 Dimitri Glazkov <dglazkov@chromium.org>
  3648. Reviewed by Darin Adler.
  3649. Use the right focusable check to avoid multiple focus/blur events being fired from inside of the shadow DOM.
  3650. https://bugs.webkit.org/show_bug.cgi?id=49977
  3651. * editing/SelectionController.cpp:
  3652. (WebCore::SelectionController::setFocusedNodeIfNeeded): Added a FIXME to remove redundant code.
  3653. * page/EventHandler.cpp:
  3654. (WebCore::EventHandler::dispatchMouseEvent): Changed to use isMouseFocusable, which is what shadow DOM elements
  3655. override, and added a FIXME to convert to use shadow DOM-aware traversal instead of render tree traversal.
  3656. Test: fast/events/shadow-boundary-crossing-2.html
  3657. 2010-11-29 Adam Roben <aroben@apple.com>
  3658. Windows build fix after r72715
  3659. * WebCore.vcproj/WebCore.vcproj: Add a missing </File> tag to fix an
  3660. XML syntax error.
  3661. 2010-11-29 Bernhard Bauer <bauerb@chromium.org>
  3662. Reviewed by Jeremy Orlow.
  3663. Remove databaseFileName from IDBFactoryBackendImpl
  3664. https://bugs.webkit.org/show_bug.cgi?id=50150
  3665. No new tests, since functionality is unchanged.
  3666. * storage/IDBFactoryBackendImpl.cpp:
  3667. (WebCore::openSQLiteDatabase):
  3668. * storage/IDBFactoryBackendImpl.h:
  3669. 2010-11-29 Philippe Normand <pnormand@igalia.com>
  3670. Reviewed by Xan Lopez.
  3671. [GStreamer] take video sink ownership with gst_object API
  3672. https://bugs.webkit.org/show_bug.cgi?id=49011
  3673. Use gst_object_ref_sink instead of g_object_ref_sink to avoid
  3674. possible leaks.
  3675. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  3676. (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
  3677. 2010-11-29 Jan Erik Hanssen <jhanssen@sencha.com>
  3678. Reviewed by Kenneth Rohde Christiansen.
  3679. QtWebKit asserts when selecting elided text.
  3680. https://bugs.webkit.org/show_bug.cgi?id=45391
  3681. Ensure that the length passed to fromRawDataWithoutRef() does
  3682. not exceed the length of the string.
  3683. * platform/graphics/qt/FontQt.cpp:
  3684. (WebCore::Font::selectionRectForSimpleText):
  3685. 2010-11-26 Alexander Pavlov <apavlov@chromium.org>
  3686. Reviewed by Pavel Feldman.
  3687. Web Inspector: Styles Gear Menu Choice to Display Colors "As Authored"
  3688. https://bugs.webkit.org/show_bug.cgi?id=31614
  3689. * English.lproj/localizedStrings.js:
  3690. * inspector/front-end/Color.js:
  3691. (WebInspector.Color.prototype.toString):
  3692. (WebInspector.Color.prototype._parse.this.rgba.set 0):
  3693. (WebInspector.Color.prototype._parse.set WebInspector):
  3694. (WebInspector.Color.prototype._parse):
  3695. * inspector/front-end/StylesSidebarPane.js:
  3696. (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor.nextFormat):
  3697. (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor.changeColorDisplay):
  3698. 2010-11-29 Helder Correia <helder@sencha.com>
  3699. Reviewed by Kenneth Rohde Christiansen.
  3700. [Qt] fillRect shadow has incorrect behavior when using ctx.scale(x,y)
  3701. https://bugs.webkit.org/show_bug.cgi?id=50141
  3702. Don't apply scaling transformation to shadow offsets.
  3703. Test: fast/canvas/canvas-scale-fillRect-shadow.html
  3704. * platform/graphics/ContextShadow.h:
  3705. * platform/graphics/qt/ContextShadowQt.cpp:
  3706. (WebCore::ContextShadow::beginShadowLayer):
  3707. (WebCore::ContextShadow::endShadowLayer):
  3708. * platform/graphics/qt/GraphicsContextQt.cpp:
  3709. (WebCore::GraphicsContext::fillRect):
  3710. 2010-11-28 Dimitri Glazkov <dglazkov@chromium.org>
  3711. Reviewed by Darin Adler.
  3712. Default event handlers should also be using event retargeting.
  3713. https://bugs.webkit.org/show_bug.cgi?id=49986
  3714. Test: fast/events/shadow-boundary-crossing-2.html
  3715. * dom/EventContext.cpp:
  3716. (WebCore::EventContext::defaultEventHandler): Added.
  3717. * dom/EventContext.h: Added decl.
  3718. * dom/Node.cpp:
  3719. (WebCore::Node::dispatchGenericEvent): Changed to use event retargeting for
  3720. default event handlers.
  3721. 2010-11-23 MORITA Hajime <morrita@google.com>
  3722. Reviewed by Kent Tamura.
  3723. REGRESSION: Text on <input type="search"> is not spellchecked.
  3724. https://bugs.webkit.org/show_bug.cgi?id=49651
  3725. TextControlInnerElement::isSpellCheckingEnabled() didn't consider
  3726. non-root shadow elelements and always went false for <input type="search>.
  3727. This change unifies shadow and host handling into Element::isSpellCheckingEnabled().
  3728. Test: editing/spelling/spellcheck-attribute.html
  3729. * dom/Element.cpp:
  3730. (WebCore::Element::isSpellCheckingEnabled):
  3731. * rendering/TextControlInnerElements.cpp:
  3732. * rendering/TextControlInnerElements.h:
  3733. 2010-11-28 Antonio Gomes <agomes@rim.com>
  3734. Reviewed by Kenneth Rohde Christiansen.
  3735. Spatial Navigation: use isSpatialNaviagtionEnabled from SpatialNavigation.h in HTMLInputElement::defaultEventHandler
  3736. https://bugs.webkit.org/show_bug.cgi?id=50131
  3737. For all isSpatialNavigationEnabled calls throughout WebCore, we decided to use the static method in
  3738. SpatialNavigation.h instead of directly checking from the one in Settings.h. Reason: in a soon future,
  3739. there will be a isCaretBrowsing check incorporated into this method (and probably renaming it accordingly)
  3740. to avoid feature conflicts (spatial navigation x caret browsing).
  3741. No new tests needed.
  3742. * html/HTMLInputElement.cpp:
  3743. (WebCore::HTMLInputElement::defaultEventHandler):
  3744. 2010-11-27 Benjamin Kalman <kalman@chromium.org>
  3745. Reviewed by Darin Adler.
  3746. Move Position::EditingBoundaryCrossingRule to a new header file
  3747. https://bugs.webkit.org/show_bug.cgi?id=49630
  3748. * GNUmakefile.am:
  3749. * WebCore.exp.in:
  3750. * WebCore.gypi:
  3751. * WebCore.pro:
  3752. * WebCore.vcproj/WebCore.vcproj:
  3753. * WebCore.xcodeproj/project.pbxproj:
  3754. * dom/Position.cpp:
  3755. (WebCore::downstreamIgnoringEditingBoundaries):
  3756. (WebCore::upstreamIgnoringEditingBoundaries):
  3757. * dom/Position.h:
  3758. * editing/DeleteSelectionCommand.cpp:
  3759. (WebCore::DeleteSelectionCommand::doApply):
  3760. * editing/EditingBoundary.h: Added.
  3761. * editing/visible_units.cpp:
  3762. (WebCore::startOfParagraph):
  3763. (WebCore::endOfParagraph):
  3764. (WebCore::isStartOfParagraph):
  3765. (WebCore::isEndOfParagraph):
  3766. * editing/visible_units.h:
  3767. * rendering/RenderObject.cpp:
  3768. (WebCore::RenderObject::createVisiblePosition):
  3769. 2010-11-26 Rob Buis <rwlbuis@gmail.com>
  3770. Reviewed by Simon Fraser.
  3771. Percentage z offset in transform-origin should make the property invalid
  3772. https://bugs.webkit.org/show_bug.cgi?id=48704
  3773. Discard transform-origin property when parsing invalid Z value.
  3774. Test: fast/css/transform-origin-parsing.html
  3775. * css/CSSParser.cpp:
  3776. (WebCore::CSSParser::parseTransformOriginShorthand):
  3777. (WebCore::CSSParser::parseTransformOrigin):
  3778. * css/CSSParser.h:
  3779. 2010-11-26 Dan Bernstein <mitz@apple.com>
  3780. Reviewed by Antti Koivisto.
  3781. <rdar://problem/8681368> Avoid unnecessary calls to CTFontGetPlatformFont()
  3782. https://bugs.webkit.org/show_bug.cgi?id=50096
  3783. No new test, since functionality is unchanged.
  3784. * platform/graphics/chromium/CrossProcessFontLoading.mm:
  3785. (WebCore::FontPlatformData::loadFont): Removed the ATSUFontID argument.
  3786. * platform/graphics/cocoa/FontPlatformData.h:
  3787. (WebCore::FontPlatformData::FontPlatformData): Ditto.
  3788. (WebCore::FontPlatformData::operator==): Removed comparison of font IDs.
  3789. * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
  3790. (WebCore::FontPlatformData::loadFont): Removed the ATSUFontID argument.
  3791. (WebCore::FontPlatformData::FontPlatformData): Updated.
  3792. (WebCore::FontPlatformData::operator=): Removed copying of font ID.
  3793. (WebCore::FontPlatformData::setFont): Removed setting of font ID.
  3794. * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
  3795. (WebCore::initializeATSUStyle): Call CTFontGetPlatformFont() here if necessary.
  3796. * platform/graphics/mac/FontCustomPlatformData.cpp:
  3797. (WebCore::FontCustomPlatformData::fontPlatformData): Updated for FontPlatformData change.
  3798. (WebCore::createFontCustomPlatformData): Updated for FontCustomPlatformData change.
  3799. * platform/graphics/mac/FontCustomPlatformData.h:
  3800. (WebCore::FontCustomPlatformData::FontCustomPlatformData): Removed ATSUFontID argument and
  3801. data member.
  3802. * platform/graphics/mac/SimpleFontDataATSUI.mm:
  3803. (WebCore::SimpleFontData::checkShapesArabic): Call CTFontGetPlatformFont() here if necessary.
  3804. 2010-11-26 François Sausset <sausset@gmail.com>
  3805. Reviewed by Daniel Bates.
  3806. MathML: code cleaning needed in MathMLInlineContainerElement.cpp
  3807. https://bugs.webkit.org/show_bug.cgi?id=50069
  3808. Unnecessary namespace was removed and style was adjusted.
  3809. * mathml/MathMLInlineContainerElement.cpp:
  3810. (WebCore::MathMLInlineContainerElement::createRenderer):
  3811. 2010-11-26 Andrei Popescu <andreip@google.com>
  3812. Reviewed by Jeremy Orlow.
  3813. IDBDatabase and IDBObjectStore remove* methods should be renamed to delete*
  3814. https://bugs.webkit.org/show_bug.cgi?id=50113
  3815. Modified exisiting layout tests to cover this change.
  3816. * storage/IDBDatabase.cpp:
  3817. (WebCore::IDBDatabase::deleteObjectStore):
  3818. * storage/IDBDatabase.h:
  3819. * storage/IDBDatabase.idl:
  3820. * storage/IDBDatabaseBackendImpl.cpp:
  3821. (WebCore::IDBDatabaseBackendImpl::deleteObjectStore):
  3822. (WebCore::IDBDatabaseBackendImpl::deleteObjectStoreInternal):
  3823. * storage/IDBDatabaseBackendImpl.h:
  3824. * storage/IDBDatabaseBackendInterface.h:
  3825. * storage/IDBObjectStore.cpp:
  3826. (WebCore::IDBObjectStore::deleteFunction):
  3827. (WebCore::IDBObjectStore::deleteIndex):
  3828. * storage/IDBObjectStore.h:
  3829. * storage/IDBObjectStore.idl:
  3830. * storage/IDBObjectStoreBackendImpl.cpp:
  3831. (WebCore::IDBObjectStoreBackendImpl::deleteFunction):
  3832. (WebCore::IDBObjectStoreBackendImpl::deleteInternal):
  3833. (WebCore::IDBObjectStoreBackendImpl::deleteIndex):
  3834. (WebCore::IDBObjectStoreBackendImpl::deleteIndexInternal):
  3835. * storage/IDBObjectStoreBackendImpl.h:
  3836. * storage/IDBObjectStoreBackendInterface.h:
  3837. 2010-11-26 Sheriff Bot <webkit.review.bot@gmail.com>
  3838. Unreviewed, rolling out r72701.
  3839. http://trac.webkit.org/changeset/72701
  3840. https://bugs.webkit.org/show_bug.cgi?id=50114
  3841. REGRESSION: bad transform matrix on content layer (Requested
  3842. by backer on #webkit).
  3843. * WebCore.gypi:
  3844. * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
  3845. (WebCore::Canvas2DLayerChromium::updateContents):
  3846. * platform/graphics/chromium/Canvas2DLayerChromium.h:
  3847. * platform/graphics/chromium/ContentLayerChromium.cpp:
  3848. (WebCore::ContentLayerChromium::cleanupResources):
  3849. (WebCore::ContentLayerChromium::updateContents):
  3850. (WebCore::ContentLayerChromium::updateTextureRect):
  3851. (WebCore::ContentLayerChromium::draw):
  3852. * platform/graphics/chromium/ContentLayerChromium.h:
  3853. * platform/graphics/chromium/ImageLayerChromium.cpp:
  3854. (WebCore::ImageLayerChromium::updateContents):
  3855. * platform/graphics/chromium/ImageLayerChromium.h:
  3856. * platform/graphics/chromium/LayerChromium.h:
  3857. (WebCore::LayerChromium::contentsDirty):
  3858. (WebCore::LayerChromium::updateContents):
  3859. (WebCore::LayerChromium::draw):
  3860. * platform/graphics/chromium/LayerRendererChromium.cpp:
  3861. (WebCore::LayerRendererChromium::LayerRendererChromium):
  3862. (WebCore::LayerRendererChromium::prepareToDrawLayers):
  3863. (WebCore::LayerRendererChromium::drawLayers):
  3864. (WebCore::LayerRendererChromium::updateLayersRecursive):
  3865. (WebCore::LayerRendererChromium::useRenderSurface):
  3866. (WebCore::LayerRendererChromium::drawLayer):
  3867. (WebCore::LayerRendererChromium::initializeSharedObjects):
  3868. (WebCore::LayerRendererChromium::cleanupSharedObjects):
  3869. * platform/graphics/chromium/LayerRendererChromium.h:
  3870. * platform/graphics/chromium/LayerTexture.cpp: Removed.
  3871. * platform/graphics/chromium/LayerTexture.h: Removed.
  3872. * platform/graphics/chromium/PluginLayerChromium.cpp:
  3873. (WebCore::PluginLayerChromium::updateContents):
  3874. * platform/graphics/chromium/PluginLayerChromium.h:
  3875. * platform/graphics/chromium/RenderSurfaceChromium.cpp:
  3876. (WebCore::RenderSurfaceChromium::RenderSurfaceChromium):
  3877. (WebCore::RenderSurfaceChromium::cleanupResources):
  3878. (WebCore::RenderSurfaceChromium::prepareContentsTexture):
  3879. * platform/graphics/chromium/RenderSurfaceChromium.h:
  3880. * platform/graphics/chromium/TextureManager.cpp: Removed.
  3881. * platform/graphics/chromium/TextureManager.h: Removed.
  3882. * platform/graphics/chromium/VideoLayerChromium.cpp:
  3883. (WebCore::VideoLayerChromium::updateContents):
  3884. * platform/graphics/chromium/VideoLayerChromium.h:
  3885. * platform/graphics/chromium/WebGLLayerChromium.cpp:
  3886. (WebCore::WebGLLayerChromium::updateContents):
  3887. * platform/graphics/chromium/WebGLLayerChromium.h:
  3888. 2010-11-26 Jeremy Orlow <jorlow@chromium.org>
  3889. Unreviewed build fix.
  3890. * storage/IDBIndex.cpp:
  3891. (WebCore::IDBIndex::openCursor):
  3892. (WebCore::IDBIndex::openKeyCursor):
  3893. * storage/IDBObjectStore.cpp:
  3894. (WebCore::IDBObjectStore::openCursor):
  3895. 2010-11-26 Sergio Villar Senin <svillar@igalia.com>
  3896. Reviewed by Xan Lopez.
  3897. [GTK] SoupCache should not ignore loader's conditional requests
  3898. https://bugs.webkit.org/show_bug.cgi?id=50101
  3899. SoupCache must not handle WebKit loader conditional requests and
  3900. thus should never return its own cached response if any. This was
  3901. causing frequent resource load failures as WebCore was trying to
  3902. revalidate its own resources and was not getting any expected
  3903. result.
  3904. * platform/network/soup/cache/webkit/soup-cache.c:
  3905. (webkit_soup_cache_has_response): check the presence of
  3906. conditional request headers when deciding whether the cache has a
  3907. valid response for a given request.
  3908. 2010-11-26 Jeremy Orlow <jorlow@chromium.org>
  3909. Reviewed by Steve Block.
  3910. Make IDBKeyRange match the spec
  3911. https://bugs.webkit.org/show_bug.cgi?id=50105
  3912. Remove flags and instead add two booleans for being open.
  3913. Change left to lower and right to upper everywhere.
  3914. * storage/IDBIndexBackendImpl.cpp:
  3915. (WebCore::IDBIndexBackendImpl::openCursorInternal):
  3916. * storage/IDBKey.cpp:
  3917. (WebCore::IDBKey::lowerCursorWhereFragment):
  3918. (WebCore::IDBKey::upperCursorWhereFragment):
  3919. * storage/IDBKey.h:
  3920. * storage/IDBKeyRange.cpp:
  3921. (WebCore::IDBKeyRange::IDBKeyRange):
  3922. (WebCore::IDBKeyRange::only):
  3923. (WebCore::IDBKeyRange::lowerBound):
  3924. (WebCore::IDBKeyRange::upperBound):
  3925. (WebCore::IDBKeyRange::bound):
  3926. (WebCore::IDBKeyRange::lowerWhereClauseComparisonOperator):
  3927. (WebCore::IDBKeyRange::upperWhereClauseComparisonOperator):
  3928. * storage/IDBKeyRange.h:
  3929. (WebCore::IDBKeyRange::create):
  3930. (WebCore::IDBKeyRange::lower):
  3931. (WebCore::IDBKeyRange::upper):
  3932. (WebCore::IDBKeyRange::lowerOpen):
  3933. (WebCore::IDBKeyRange::upperOpen):
  3934. * storage/IDBKeyRange.idl:
  3935. * storage/IDBObjectStoreBackendImpl.cpp:
  3936. (WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
  3937. 2010-11-25 Jeremy Orlow <jorlow@chromium.org>
  3938. Reviewed by Steve Block.
  3939. Convert open*Cursor and createIndex over to using OptionsObject
  3940. https://bugs.webkit.org/show_bug.cgi?id=50093
  3941. Add IDBKeyRange to OptionsObject's parsing abilities. Switch
  3942. more APIs over to using it.
  3943. * bindings/v8/OptionsObject.cpp:
  3944. (WebCore::OptionsObject::getKeyDOMStringList):
  3945. (WebCore::OptionsObject::getKeyKeyRange):
  3946. * bindings/v8/OptionsObject.h:
  3947. * storage/IDBIndex.cpp:
  3948. (WebCore::IDBIndex::openCursor):
  3949. (WebCore::IDBIndex::openKeyCursor):
  3950. * storage/IDBIndex.h:
  3951. (WebCore::IDBIndex::openCursor):
  3952. (WebCore::IDBIndex::openKeyCursor):
  3953. * storage/IDBIndex.idl:
  3954. * storage/IDBObjectStore.cpp:
  3955. (WebCore::IDBObjectStore::createIndex):
  3956. (WebCore::IDBObjectStore::openCursor):
  3957. * storage/IDBObjectStore.h:
  3958. (WebCore::IDBObjectStore::createIndex):
  3959. (WebCore::IDBObjectStore::openCursor):
  3960. * storage/IDBObjectStore.idl:
  3961. 2010-11-25 Jeremy Orlow <jorlow@chromium.org>
  3962. Reviewed by Steve Block.
  3963. Clean up IDBDatabase.transaction and add checks to IDBTransaction.objectStore
  3964. https://bugs.webkit.org/show_bug.cgi?id=50081
  3965. IDBDatabase.transaction should use the new optional OptionsObject way
  3966. of taking optional paramters. Modify that object to get numbers and
  3967. domStringLists from it. Verify that any requested resources exist and
  3968. return an exception if not.
  3969. When IDBTransaction.objectStore is called, verify that it's one of the
  3970. requested resources. Also verify that it still exists. Plumb the
  3971. exception code to make this work.
  3972. Tests: storage/indexeddb/create-and-remove-object-store.html
  3973. storage/indexeddb/transaction-and-objectstore-calls.html
  3974. * bindings/v8/OptionsObject.cpp:
  3975. (WebCore::OptionsObject::getKeyInteger):
  3976. (WebCore::OptionsObject::getKeyString):
  3977. (WebCore::OptionsObject::getKeyDOMStringList):
  3978. * bindings/v8/OptionsObject.h:
  3979. * storage/IDBDatabase.cpp:
  3980. (WebCore::IDBDatabase::createObjectStore):
  3981. (WebCore::IDBDatabase::transaction):
  3982. * storage/IDBDatabase.h:
  3983. (WebCore::IDBDatabase::transaction):
  3984. * storage/IDBDatabase.idl:
  3985. * storage/IDBDatabaseBackendImpl.cpp:
  3986. (WebCore::IDBDatabaseBackendImpl::transaction):
  3987. * storage/IDBTransaction.cpp:
  3988. (WebCore::IDBTransaction::objectStore):
  3989. * storage/IDBTransactionBackendImpl.cpp:
  3990. (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
  3991. (WebCore::IDBTransactionBackendImpl::objectStore):
  3992. * storage/IDBTransactionBackendImpl.h:
  3993. * storage/IDBTransactionBackendInterface.h:
  3994. 2010-11-26 Mario Sanchez Prada <msanchez@igalia.com>
  3995. Reviewed by Xan Lopez.
  3996. [GTK] events missing when a document is (re)loaded
  3997. https://bugs.webkit.org/show_bug.cgi?id=25831
  3998. Make sure webArea returns a proper name and that a signal
  3999. 'state-change::defunct' is emitted when detaching the wrapper.
  4000. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  4001. (webkit_accessible_get_name): Returns the current document's title
  4002. as fallback mechanism for webArea objects.
  4003. (webkit_accessible_detach): Emit 'state-change::defunct' function
  4004. as soon as the wrapper is detached from the related core object.
  4005. 2010-11-26 Sergio Villar Senin <svillar@igalia.com>
  4006. Reviewed by Xan Lopez.
  4007. [Gtk] ASSERT(d->m_response.isNull()) in contentSniffedCallback
  4008. https://bugs.webkit.org/show_bug.cgi?id=50083
  4009. ResourceHandleSoup should not listen to content-sniffed signal
  4010. when content sniffing is not enabled. This will prevent us
  4011. reaching an assertion on content-sniffed callback
  4012. * platform/network/soup/ResourceHandleSoup.cpp:
  4013. (WebCore::startHttp):
  4014. * platform/network/soup/cache/soup-request-http.c:
  4015. (conditional_get_ready_cb): added a comment with the
  4016. possible fix for a pure libsoup HTTP cache.
  4017. (send_async_cb): prevent an early object finalization adding a
  4018. reference.
  4019. (webkit_soup_request_http_send_async): Ditto.
  4020. 2010-11-26 Renata Hodovan <reni@inf.u-szeged.hu>
  4021. Reviewed by Antonio Gomes.
  4022. [Qt] Remove empty ScrollView::platformInit/platformDestroy
  4023. https://bugs.webkit.org/show_bug.cgi?id=50079
  4024. No new test is needed.
  4025. * platform/ScrollView.cpp:
  4026. (WebCore::ScrollView::wheelEvent):
  4027. * platform/qt/ScrollViewQt.cpp:
  4028. 2010-11-26 Pavel Feldman <pfeldman@chromium.org>
  4029. Not reviewed. Fixing inspector tests.
  4030. * inspector/front-end/Resource.js:
  4031. (WebInspector.Resource.prototype.set timing):
  4032. 2010-11-25 Pavel Feldman <pfeldman@chromium.org>
  4033. Reviewed by Yury Semikhatsky.
  4034. Web Inspector: UI polish for Network and Resources panels.
  4035. https://bugs.webkit.org/show_bug.cgi?id=50100
  4036. - Fixed timing inconsistencies
  4037. - Made grid user-selectable
  4038. - Selection in network panel is made on name column only
  4039. * inspector/front-end/NetworkPanel.js:
  4040. (WebInspector.NetworkPanel):
  4041. (WebInspector.NetworkPanel.prototype._toggleGridMode):
  4042. (WebInspector.NetworkDataGridNode.prototype.createCells):
  4043. (WebInspector.NetworkDataGridNode.prototype.select):
  4044. (WebInspector.NetworkDataGridNode.prototype.get selectable):
  4045. (WebInspector.NetworkDataGridNode.prototype._createTimelineCell):
  4046. (WebInspector.NetworkDataGridNode.prototype.refreshGraph):
  4047. (WebInspector.NetworkDataGridNode.prototype._refreshLabelPositions):
  4048. * inspector/front-end/Popover.js:
  4049. (WebInspector.PopoverHelper):
  4050. (WebInspector.PopoverHelper.prototype.setTimeout):
  4051. (WebInspector.PopoverHelper.prototype._mouseMove):
  4052. (WebInspector.PopoverHelper.prototype._handleMouseAction):
  4053. * inspector/front-end/Resource.js:
  4054. (WebInspector.Resource.prototype.get responseReceivedTime):
  4055. (WebInspector.Resource.prototype.set endTime):
  4056. (WebInspector.Resource.prototype.set timing):
  4057. * inspector/front-end/ResourceManager.js:
  4058. (WebInspector.ResourceManager.prototype.didReceiveResponse):
  4059. (WebInspector.ResourceManager.prototype.didFinishLoading):
  4060. * inspector/front-end/ResourcesPanel.js:
  4061. (WebInspector.FrameResourceTreeElement.prototype._ondragstart):
  4062. * inspector/front-end/networkPanel.css:
  4063. (.network-sidebar .data-grid td:not(.network-summary)):
  4064. (.network-sidebar .data-grid td.name-column):
  4065. (.network.panel:not(.viewing-resource) .network-sidebar td.name-column:hover):
  4066. (.network-timing-row):
  4067. (.network-timing-bar):
  4068. (.network-timing-bar-title):
  4069. (.resource-timing-view):
  4070. 2010-11-26 Helder Correia <helder@sencha.com>
  4071. Reviewed by Ariya Hidayat.
  4072. [Qt] Blur shadow for rectangle fill
  4073. https://bugs.webkit.org/show_bug.cgi?id=44488
  4074. Shadow color opacity needs to be set when blurring shadow with
  4075. ContextShadow.
  4076. Test: fast/canvas/canvas-fillRect-shadow.html
  4077. * platform/graphics/qt/GraphicsContextQt.cpp:
  4078. (WebCore::GraphicsContext::fillRect):
  4079. 2010-11-26 Hans Wennborg <hans@chromium.org>
  4080. Reviewed by Jeremy Orlow.
  4081. IndexedDB: Rename IDBDatabase.objectStores to objectStoreNames
  4082. https://bugs.webkit.org/show_bug.cgi?id=50102
  4083. Rename as per the spec: http://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html#database-interface
  4084. * manual-tests/indexeddb-persists.html:
  4085. * storage/IDBDatabase.h:
  4086. (WebCore::IDBDatabase::objectStoreNames):
  4087. * storage/IDBDatabase.idl:
  4088. * storage/IDBDatabaseBackendImpl.cpp:
  4089. (WebCore::IDBDatabaseBackendImpl::objectStoreNames):
  4090. (WebCore::IDBDatabaseBackendImpl::setVersion):
  4091. (WebCore::IDBDatabaseBackendImpl::transaction):
  4092. * storage/IDBDatabaseBackendImpl.h:
  4093. * storage/IDBDatabaseBackendInterface.h:
  4094. 2010-11-26 Andrei Popescu <andreip@google.com>
  4095. Reviewed by Jeremy Orlow.
  4096. IDBFactory::open should not have a description argument.
  4097. https://bugs.webkit.org/show_bug.cgi?id=50087
  4098. Modified exisiting tests to cover this change.
  4099. * storage/IDBDatabaseBackendImpl.cpp:
  4100. (WebCore::setMetaData):
  4101. (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl):
  4102. (WebCore::IDBDatabaseBackendImpl::setVersionInternal):
  4103. * storage/IDBDatabaseBackendImpl.h:
  4104. (WebCore::IDBDatabaseBackendImpl::create):
  4105. * storage/IDBDatabaseBackendInterface.h:
  4106. * storage/IDBFactory.cpp:
  4107. (WebCore::IDBFactory::open):
  4108. * storage/IDBFactory.h:
  4109. * storage/IDBFactory.idl:
  4110. * storage/IDBFactoryBackendImpl.cpp:
  4111. (WebCore::IDBFactoryBackendImpl::open):
  4112. * storage/IDBFactoryBackendImpl.h:
  4113. * storage/IDBFactoryBackendInterface.h:
  4114. 2010-11-25 Kenichi Ishibashi <bashi@google.com>
  4115. Reviewed by Kent Tamura.
  4116. Assertion failure by resetting <output> twice
  4117. https://bugs.webkit.org/show_bug.cgi?id=50095
  4118. Don't call setTextContentInternal() when the value wouldn't
  4119. be changed.
  4120. Test: fast/forms/output-reset-assertion-failed.html
  4121. * html/HTMLOutputElement.cpp:
  4122. (WebCore::HTMLOutputElement::HTMLOutputElement): Calls
  4123. setTextContentInternal() if and only if needed.
  4124. (WebCore::HTMLOutputElement::reset): Ditto.
  4125. (WebCore::HTMLOutputElement::setValue): Ditto.
  4126. (WebCore::HTMLOutputElement::setDefaultValue): Ditto.
  4127. 2010-11-24 Ryosuke Niwa <rniwa@webkit.org>
  4128. Crash when moving caret around a word with a first-letter rule and whitespace is not collapsible.
  4129. https://bugs.webkit.org/show_bug.cgi?id=49652
  4130. Fixed the crash by giving the correct end offset to emitText in handleTextNode.
  4131. This patch does not fix a bug in TextIterator that incorrectly calculates
  4132. the end offset of a word with a first-letter rule as demonstrated in the layout test
  4133. because fixing the bug requires an overhaul of TextIterator and new behavior is consistent
  4134. with the case when whitespace is collapsible.
  4135. Test: editing/text-iterator/first-letter-word-boundary.html
  4136. * editing/TextIterator.cpp:
  4137. (WebCore::TextIterator::handleTextNode):
  4138. 2010-11-25 Mike Lawther <mikelawther@chromium.org>
  4139. Reviewed by Kent Tamura.
  4140. Fix typos in CSS grammar (HERZ -> HERTZ)
  4141. https://bugs.webkit.org/show_bug.cgi?id=50094
  4142. * css/CSSGrammar.y:
  4143. * css/CSSParser.cpp:
  4144. (WebCore::CSSParser::lex):
  4145. * css/tokenizer.flex:
  4146. 2010-11-25 Antti Koivisto <antti@apple.com>
  4147. Reviewed by Dan Bernstein.
  4148. https://bugs.webkit.org/show_bug.cgi?id=50078
  4149. Simplify CachedResource error handling code by getting rid of the m_httpStatusCodeErrorOccurred boolean.
  4150. * loader/cache/CachedImage.cpp:
  4151. (WebCore::CachedImage::CachedImage):
  4152. * loader/cache/CachedImage.h:
  4153. (WebCore::CachedImage::shouldIgnoreHTTPStatusCodeErrors):
  4154. * loader/cache/CachedResource.h:
  4155. (WebCore::CachedResource::shouldIgnoreHTTPStatusCodeErrors):
  4156. (WebCore::CachedResource::httpStatusCodeErrorOccurred):
  4157. * loader/loader.cpp:
  4158. (WebCore::Loader::didReceiveData):
  4159. 2010-11-25 Andreas Kling <kling@webkit.org>
  4160. Reviewed by Tor Arne Vestbø.
  4161. [Qt] Remove unnecessary save/restore in GraphicsContext::drawConvexPolygon()
  4162. https://bugs.webkit.org/show_bug.cgi?id=50085
  4163. * platform/graphics/qt/GraphicsContextQt.cpp:
  4164. (WebCore::GraphicsContext::drawConvexPolygon):
  4165. Remember the previous antialiasing mode and reset it after we're done.
  4166. 2010-11-25 Ben Murdoch <benm@google.com>
  4167. Reviewed by Steve Block.
  4168. Potential crash in JavaClassV8.cpp
  4169. https://bugs.webkit.org/show_bug.cgi?id=50016
  4170. It is possible that we attempt to free uninitialised
  4171. memory in the JavaClass destrctor when using V8 in the
  4172. case that the JVM could not find the class in the constructor.
  4173. It turns out that the troublesome m_name is not acutally
  4174. used anywhere, so we remove it in this patch.
  4175. No new tests, just removing dead code.
  4176. * bridge/jni/v8/JavaClassV8.cpp: Remove unused m_name.
  4177. * bridge/jni/v8/JavaClassV8.h: Ditto.
  4178. 2010-11-25 Hans Wennborg <hans@chromium.org>
  4179. Reviewed by Jeremy Orlow.
  4180. IndexedDB: Better errors for not yet implemented features
  4181. https://bugs.webkit.org/show_bug.cgi?id=50075
  4182. Raise an exception if createObjectStore is called with autoIncrement
  4183. set to true.
  4184. Be a little bit more explicit in IDBBindingUtilities that we don't
  4185. allow using Date objects as keys yet.
  4186. * bindings/v8/IDBBindingUtilities.cpp:
  4187. (WebCore::createIDBKeyFromValue):
  4188. * storage/IDBDatabase.cpp:
  4189. (WebCore::IDBDatabase::createObjectStore):
  4190. * storage/IDBObjectStoreBackendImpl.cpp:
  4191. (WebCore::IDBObjectStoreBackendImpl::putInternal):
  4192. 2010-11-25 Pavel Feldman <pfeldman@chromium.org>
  4193. Reviewed by Yury Semikhatsky.
  4194. Web Inspector: highlight diffs of revisions against base version.
  4195. https://bugs.webkit.org/show_bug.cgi?id=50088
  4196. * inspector/front-end/CSSStyleModel.js:
  4197. (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
  4198. (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
  4199. * inspector/front-end/ResourcesPanel.js:
  4200. (WebInspector.ResourcesPanel):
  4201. (WebInspector.ResourcesPanel.prototype.show):
  4202. (WebInspector.ResourcesPanel.prototype._showResourceView.callback):
  4203. (WebInspector.ResourcesPanel.prototype._showResourceView):
  4204. (WebInspector.ResourcesPanel.prototype._applyDiffMarkup):
  4205. (WebInspector.FrameResourceTreeElement.prototype._contentChanged):
  4206. * inspector/front-end/SourceFrame.js:
  4207. (WebInspector.SourceFrame.prototype.markDiff):
  4208. (WebInspector.SourceFrame.prototype._createViewerIfNeeded):
  4209. (WebInspector.SourceFrame.prototype._updateDiffDecorations.addDecorations):
  4210. (WebInspector.SourceFrame.prototype._updateDiffDecorations):
  4211. (WebInspector.SourceFrame.prototype._removeDiffDecorations):
  4212. * inspector/front-end/SourceView.js:
  4213. * inspector/front-end/textViewer.css:
  4214. (.webkit-line-number):
  4215. (.diff-container .webkit-added-line .webkit-line-content):
  4216. (.diff-container .webkit-removed-line .webkit-line-content):
  4217. (.diff-container .webkit-changed-line .webkit-line-content):
  4218. * inspector/front-end/utilities.js:
  4219. 2010-11-25 Sheriff Bot <webkit.review.bot@gmail.com>
  4220. Unreviewed, rolling out r72732.
  4221. http://trac.webkit.org/changeset/72732
  4222. https://bugs.webkit.org/show_bug.cgi?id=50089
  4223. Made Qt bot sad and crashy (Requested by Ossy on #webkit).
  4224. * platform/network/qt/QNetworkReplyHandler.cpp:
  4225. (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
  4226. * platform/network/qt/QNetworkReplyHandler.h:
  4227. * platform/network/qt/ResourceHandleQt.cpp:
  4228. (WebCore::WebCoreSynchronousLoader::didFinishLoading):
  4229. (WebCore::WebCoreSynchronousLoader::didFail):
  4230. (WebCore::ResourceHandle::loadResourceSynchronously):
  4231. 2010-11-25 Sheriff Bot <webkit.review.bot@gmail.com>
  4232. Unreviewed, rolling out r72734.
  4233. http://trac.webkit.org/changeset/72734
  4234. https://bugs.webkit.org/show_bug.cgi?id=50086
  4235. Backing out 72732 which made Qt sad and crashy (Requested by
  4236. kling on #webkit).
  4237. * platform/network/qt/ResourceHandleQt.cpp:
  4238. (WebCore::ResourceHandle::loadResourceSynchronously):
  4239. 2010-11-25 Andreas Kling <kling@webkit.org>
  4240. Unreviewed crash fix for Qt 4.6.x.
  4241. Check that QNetworkReplyHandler::reply() doesn't return null before
  4242. using it (this code needs to work for Qt 4.6 as well.)
  4243. * platform/network/qt/ResourceHandleQt.cpp:
  4244. (WebCore::ResourceHandle::loadResourceSynchronously):
  4245. 2010-11-25 Sheriff Bot <webkit.review.bot@gmail.com>
  4246. Unreviewed, rolling out r72727.
  4247. http://trac.webkit.org/changeset/72727
  4248. https://bugs.webkit.org/show_bug.cgi?id=50084
  4249. Broke dom-breakpoints test on chromium win (Requested by
  4250. podivilov on #webkit).
  4251. * inspector/InspectorController.cpp:
  4252. (WebCore::InspectorController::setNativeBreakpoint):
  4253. * inspector/InspectorDOMAgent.cpp:
  4254. (WebCore::InspectorDOMAgent::InspectorDOMAgent):
  4255. (WebCore::InspectorDOMAgent::discardBindings):
  4256. (WebCore::InspectorDOMAgent::setDOMBreakpoint):
  4257. (WebCore::InspectorDOMAgent::removeDOMBreakpoint):
  4258. (WebCore::InspectorDOMAgent::descriptionForDOMEvent):
  4259. (WebCore::InspectorDOMAgent::removeBreakpointsForNode):
  4260. (WebCore::InspectorDOMAgent::createBreakpointId):
  4261. * inspector/InspectorDOMAgent.h:
  4262. * inspector/front-end/BreakpointManager.js:
  4263. (WebInspector.BreakpointManager.prototype.reset):
  4264. (WebInspector.BreakpointManager.prototype.createDOMBreakpoint):
  4265. (WebInspector.BreakpointManager.prototype._updateNativeBreakpointsInSettings):
  4266. (WebInspector.BreakpointManager.prototype.restoreBreakpoints):
  4267. (WebInspector.BreakpointManager.prototype.restoreDOMBreakpoints):
  4268. (WebInspector.DOMBreakpoint):
  4269. (WebInspector.DOMBreakpoint.prototype.populateLabelElement):
  4270. (WebInspector.EventListenerBreakpoint):
  4271. (WebInspector.XHRBreakpoint):
  4272. * inspector/front-end/BreakpointsSidebarPane.js:
  4273. (WebInspector.BreakpointsSidebarPane):
  4274. (WebInspector.BreakpointsSidebarPane.prototype.reset):
  4275. (WebInspector.EventListenerBreakpointsSidebarPane):
  4276. (WebInspector.EventListenerBreakpointsSidebarPane.prototype.reset):
  4277. * inspector/front-end/DOMAgent.js:
  4278. (WebInspector.DOMAgent.prototype._setDocument):
  4279. * inspector/front-end/ElementsPanel.js:
  4280. (WebInspector.ElementsPanel.prototype.reset):
  4281. * inspector/front-end/ElementsTreeOutline.js:
  4282. (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu.handlerFunction):
  4283. (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
  4284. * inspector/front-end/ScriptsPanel.js:
  4285. (WebInspector.ScriptsPanel.prototype.reset):
  4286. * inspector/front-end/inspector.js:
  4287. (WebInspector.reset):
  4288. (WebInspector.didCommitLoad):
  4289. 2010-11-25 Peter Hartmann <peter.hartmann@nokia.com>
  4290. Reviewed by Andreas Kling.
  4291. [Qt] enable usage of synchronous HTTP feature in Qt
  4292. https://bugs.webkit.org/show_bug.cgi?id=37191
  4293. Currently, we spin an event loop when doing synchronous calls to
  4294. wait for completion. This patch uses synchronous requests in Qt,
  4295. if available, and spins the event loop as a fallback solution.
  4296. Patch by Simon Hausmann and Peter Hartmann.
  4297. * platform/network/qt/QNetworkReplyHandler.cpp:
  4298. (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
  4299. * platform/network/qt/QNetworkReplyHandler.h:
  4300. * platform/network/qt/ResourceHandleQt.cpp:
  4301. (WebCore::WebCoreSynchronousLoader::setReplyFinished):
  4302. (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
  4303. (WebCore::WebCoreSynchronousLoader::didFinishLoading):
  4304. (WebCore::WebCoreSynchronousLoader::didFail):
  4305. (WebCore::WebCoreSynchronousLoader::waitForCompletion):
  4306. (WebCore::ResourceHandle::loadResourceSynchronously):
  4307. 2010-11-25 Hans Wennborg <hans@chromium.org>
  4308. Reviewed by Jeremy Orlow.
  4309. V8 Bindings: remove faulty include in OptionsObject.h
  4310. https://bugs.webkit.org/show_bug.cgi?id=50073
  4311. There is no <wtf/NonCopyable.h>, and the code doesn't try to use it
  4312. either.
  4313. No new functionality, no new tests.
  4314. * bindings/v8/OptionsObject.h:
  4315. 2010-11-25 Kenneth Rohde Christiansen <kenneth@webkit.org>
  4316. Reviewed by Simon Hausmann.
  4317. Actually handle targetDensityDpi in computeViewportAttributes
  4318. https://bugs.webkit.org/show_bug.cgi?id=50068
  4319. * dom/ViewportArguments.cpp:
  4320. (WebCore::computeViewportAttributes):
  4321. 2010-11-25 Jeremy Orlow <jorlow@chromium.org>
  4322. Reviewed by Steve Block.
  4323. Add an OptionsObject class for IndexedDB (and later Geolocation)
  4324. https://bugs.webkit.org/show_bug.cgi?id=50030
  4325. Geolocation and IndexedDB both have the concept of an optional
  4326. parameter that has various options supplied with it. In
  4327. Geolocation this was done with custom bindings, but I'm trying to
  4328. avoid that for IndexedDB.
  4329. This first patch implements it in V8 and makes createObjectStore use it.
  4330. The next patch will cover Geolocation and JSC.
  4331. Test: storage/indexeddb/create-object-store-options.html
  4332. * WebCore.gypi:
  4333. * bindings/scripts/CodeGeneratorV8.pm:
  4334. * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
  4335. (WebDOMTestObj::optionsObject):
  4336. * bindings/scripts/test/CPP/WebDOMTestObj.h:
  4337. * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
  4338. * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
  4339. * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
  4340. * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  4341. (webkit_dom_test_obj_options_object):
  4342. * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  4343. * bindings/scripts/test/JS/JSTestObj.cpp:
  4344. (WebCore::jsTestObjPrototypeFunctionOptionsObject):
  4345. * bindings/scripts/test/JS/JSTestObj.h:
  4346. * bindings/scripts/test/ObjC/DOMTestObj.h:
  4347. * bindings/scripts/test/ObjC/DOMTestObj.mm:
  4348. (-[DOMTestObj optionsObject:ooo:]):
  4349. * bindings/scripts/test/TestObj.idl:
  4350. * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
  4351. (WebCore::ConfigureV8TestMediaQueryListListenerTemplate):
  4352. * bindings/scripts/test/V8/V8TestObj.cpp:
  4353. (WebCore::TestObjInternal::optionsObjectCallback):
  4354. * bindings/v8/OptionsObject.cpp: Added.
  4355. (WebCore::OptionsObject::OptionsObject):
  4356. (WebCore::OptionsObject::~OptionsObject):
  4357. (WebCore::OptionsObject::operator=):
  4358. (WebCore::OptionsObject::undefinedOrNull):
  4359. (WebCore::OptionsObject::getKeyBool):
  4360. (WebCore::OptionsObject::getKeyString):
  4361. (WebCore::OptionsObject::getKey):
  4362. * bindings/v8/OptionsObject.h:
  4363. * bindings/js/OptionsObject.h:
  4364. * storage/IDBDatabase.cpp:
  4365. (WebCore::IDBDatabase::createObjectStore):
  4366. * storage/IDBDatabase.h:
  4367. (WebCore::IDBDatabase::createObjectStore):
  4368. * storage/IDBDatabase.idl:
  4369. 2010-11-24 Pavel Podivilov <podivilov@chromium.org>
  4370. Reviewed by Yury Semikhatsky.
  4371. Web Inspector: set DOM breakpoints by path.
  4372. https://bugs.webkit.org/show_bug.cgi?id=50017
  4373. This change is needed to be able to push DOM breakpoints for all URL's to backend
  4374. at frontend load.
  4375. * inspector/InspectorController.cpp:
  4376. (WebCore::InspectorController::setNativeBreakpoint):
  4377. * inspector/InspectorDOMAgent.cpp:
  4378. (WebCore::InspectorDOMAgent::InspectorDOMAgent):
  4379. (WebCore::InspectorDOMAgent::discardBindings):
  4380. (WebCore::InspectorDOMAgent::setDOMBreakpoint):
  4381. (WebCore::InspectorDOMAgent::removeDOMBreakpoint):
  4382. (WebCore::InspectorDOMAgent::descriptionForDOMEvent):
  4383. (WebCore::InspectorDOMAgent::removeBreakpointsForNode):
  4384. * inspector/InspectorDOMAgent.h:
  4385. * inspector/front-end/BreakpointManager.js:
  4386. (WebInspector.BreakpointManager.prototype.reset):
  4387. (WebInspector.BreakpointManager.prototype.createDOMBreakpoint):
  4388. (WebInspector.BreakpointManager.prototype._updateNativeBreakpointsInSettings):
  4389. (WebInspector.BreakpointManager.prototype.restoreBreakpoints):
  4390. (WebInspector.DOMBreakpoint):
  4391. (WebInspector.DOMBreakpoint.prototype._setNodeId):
  4392. (WebInspector.DOMBreakpoint.prototype.populateLabelElement):
  4393. (WebInspector.EventListenerBreakpoint):
  4394. (WebInspector.XHRBreakpoint):
  4395. * inspector/front-end/BreakpointsSidebarPane.js:
  4396. (WebInspector.BreakpointsSidebarPane):
  4397. (WebInspector.BreakpointsSidebarPane.prototype._reset):
  4398. (WebInspector.EventListenerBreakpointsSidebarPane):
  4399. (WebInspector.EventListenerBreakpointsSidebarPane.prototype._reset):
  4400. * inspector/front-end/DOMAgent.js:
  4401. (WebInspector.DOMAgent.prototype._setDocument):
  4402. * inspector/front-end/ElementsPanel.js:
  4403. (WebInspector.ElementsPanel.prototype.reset):
  4404. * inspector/front-end/ElementsTreeOutline.js:
  4405. (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu.handlerFunction):
  4406. (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
  4407. * inspector/front-end/ScriptsPanel.js:
  4408. (WebInspector.ScriptsPanel.prototype.reset):
  4409. * inspector/front-end/inspector.js:
  4410. (WebInspector.reset):
  4411. (WebInspector.didCommitLoad):
  4412. 2010-11-25 Pavel Feldman <pfeldman@chromium.org>
  4413. Reviewed by Yury Semikhatsky.
  4414. Web Inspector: reuse code for recreating resource views.
  4415. https://bugs.webkit.org/show_bug.cgi?id=50066
  4416. * inspector/front-end/NetworkItemView.js:
  4417. (WebInspector.NetworkItemView):
  4418. * inspector/front-end/NetworkPanel.js:
  4419. (WebInspector.NetworkPanel.prototype.refreshResource):
  4420. * inspector/front-end/ResourceManager.js:
  4421. (WebInspector.ResourceManager.resourceViewTypeMatchesResource):
  4422. (WebInspector.ResourceManager.resourceViewForResource):
  4423. (WebInspector.ResourceManager.recreateResourceView):
  4424. * inspector/front-end/ResourcesPanel.js:
  4425. (WebInspector.FrameResourceTreeElement.prototype._contentChanged):
  4426. 2010-11-25 Hans Wennborg <hans@chromium.org>
  4427. Reviewed by Jeremy Orlow.
  4428. IndexedDB: Disallow inserting records with NULL keys
  4429. https://bugs.webkit.org/show_bug.cgi?id=50033
  4430. Disallow inserting records with null keys into the object store.
  4431. * storage/IDBKey.h:
  4432. * storage/IDBObjectStoreBackendImpl.cpp:
  4433. (WebCore::IDBObjectStoreBackendImpl::putInternal):
  4434. 2010-11-25 Philippe Normand <pnormand@igalia.com>
  4435. Rubber-stamped by Xan Lopez.
  4436. g_signal_accumulator_first_wins was introduced in glib 2.27.1 so
  4437. no need to use our version if that version of glib is used during
  4438. the build.
  4439. * platform/gtk/GtkVersioning.c:
  4440. * platform/gtk/GtkVersioning.h:
  4441. 2010-11-24 Jian Li <jianli@chromium.org>
  4442. Reviewed by Kenneth Russell.
  4443. Implement DataView interface from Typed Array specification
  4444. https://bugs.webkit.org/show_bug.cgi?id=46541
  4445. Test: fast/canvas/webgl/data-view-test.html
  4446. * CMakeLists.txt:
  4447. * DerivedSources.make:
  4448. * GNUmakefile.am:
  4449. * WebCore.gypi:
  4450. * WebCore.pri:
  4451. * WebCore.pro:
  4452. * WebCore.xcodeproj/project.pbxproj:
  4453. * bindings/generic/RuntimeEnabledFeatures.h:
  4454. (WebCore::RuntimeEnabledFeatures::dataViewEnabled):
  4455. * bindings/js/JSArrayBufferViewHelper.h:
  4456. (WebCore::constructArrayBufferViewWithArrayBufferArgument):
  4457. (WebCore::constructArrayBufferView):
  4458. * bindings/js/JSDOMWindowCustom.cpp:
  4459. (WebCore::JSDOMWindow::dataView):
  4460. * bindings/js/JSDataViewCustom.cpp: Added.
  4461. * bindings/js/JSFloat32ArrayCustom.cpp:
  4462. (WebCore::JSFloat32ArrayConstructor::constructJSFloat32Array):
  4463. * bindings/js/JSInt16ArrayCustom.cpp:
  4464. (WebCore::JSInt16ArrayConstructor::constructJSInt16Array):
  4465. * bindings/js/JSInt32ArrayCustom.cpp:
  4466. (WebCore::JSInt32ArrayConstructor::constructJSInt32Array):
  4467. * bindings/js/JSInt8ArrayCustom.cpp:
  4468. (WebCore::JSInt8ArrayConstructor::constructJSInt8Array):
  4469. * bindings/js/JSUint16ArrayCustom.cpp:
  4470. (WebCore::JSUint16ArrayConstructor::constructJSUint16Array):
  4471. * bindings/js/JSUint32ArrayCustom.cpp:
  4472. (WebCore::JSUint32ArrayConstructor::constructJSUint32Array):
  4473. * bindings/js/JSUint8ArrayCustom.cpp:
  4474. (WebCore::JSUint8ArrayConstructor::constructJSUint8Array):
  4475. * bindings/v8/custom/V8ArrayBufferViewCustom.h:
  4476. (WebCore::constructWebGLArrayWithArrayBufferArgument):
  4477. (WebCore::constructWebGLArray):
  4478. * bindings/v8/custom/V8DataViewCustom.cpp: Added.
  4479. * html/canvas/ArrayBufferView.h:
  4480. (WebCore::ArrayBufferView::isDataView):
  4481. * html/canvas/DataView.cpp: Added.
  4482. * html/canvas/DataView.h: Added.
  4483. * html/canvas/DataView.idl: Added.
  4484. * page/DOMWindow.idl:
  4485. 2010-11-24 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk>
  4486. Reviewed by Martin Robinson.
  4487. [GTK] Windowless plugins gets broken key input
  4488. https://bugs.webkit.org/show_bug.cgi?id=49927
  4489. When converting the GdkEvent to XEvent we need to send the
  4490. hardware_keycode as XEvent::keycode. Instead we where sending
  4491. the GdkEvent::keyval. This is already tested by
  4492. plugins/keyboard-events.html, but a bug in the test plugin was
  4493. resulting in false positive.
  4494. * plugins/gtk/PluginViewGtk.cpp:
  4495. (WebCore::PluginView::handleKeyboardEvent):
  4496. 2010-11-24 Eric Uhrhane <ericu@chromium.org>
  4497. Reviewed by David Levin.
  4498. Implement FileWriterSync
  4499. https://bugs.webkit.org/show_bug.cgi?id=49939
  4500. Tests to follow in a separate CL, once the test framework in 47680 goes in.
  4501. Build file changes to add FileWriterBase and FileWriterBaseCallback.
  4502. * CMakeLists.txt:
  4503. * GNUmakefile.am:
  4504. * WebCore.gypi:
  4505. * WebCore.pro:
  4506. * WebCore.vcproj/WebCore.vcproj:
  4507. * WebCore.xcodeproj/project.pbxproj:
  4508. FileWriterSync doesn't turn out to need to be an ActiveDOMObject.
  4509. * bindings/scripts/CodeGeneratorV8.pm:
  4510. Added new AsyncFileWriter::waitForOperationToComplete to enable
  4511. synchronous calls.
  4512. * fileapi/AsyncFileWriter.h:
  4513. Added a way to get a FileSystemSync.
  4514. * fileapi/DOMFileSystemSync.cpp:
  4515. * fileapi/FileEntrySync.cpp:
  4516. * fileapi/FileEntrySync.h:
  4517. * fileapi/FileEntrySync.idl:
  4518. Added an error code for OK, rather than just having 0 everywhere.
  4519. * fileapi/FileError.h:
  4520. Turned FileWriterCallback into FileWriterBaseCallback.
  4521. * fileapi/FileSystemCallbacks.cpp:
  4522. * fileapi/FileSystemCallbacks.h:
  4523. Refactored out a common base class, FileWriterBase, for FileWriter and
  4524. FileWriterSync.
  4525. * fileapi/FileWriter.cpp:
  4526. * fileapi/FileWriter.h:
  4527. * fileapi/FileWriterBase.cpp: Added.
  4528. * fileapi/FileWriterBase.h: Added.
  4529. * fileapi/FileWriterBaseCallback.h: Added.
  4530. * fileapi/FileWriterSync.cpp:
  4531. * fileapi/FileWriterSync.h:
  4532. Small tweaks to deal with the base class refactoring.
  4533. * fileapi/DOMFileSystem.cpp:
  4534. * fileapi/DOMFileSystemSync.h:
  4535. Removed "CallWith=ScriptExecutionContext", as FileWriterSync doesn't actually need it.
  4536. * fileapi/FileWriterSync.idl:
  4537. 2010-11-24 Martin Robinson <mrobinson@igalia.com>
  4538. Reviewed by Xan Lopez.
  4539. Build fix for GTK+. There were some typos in my last build fix
  4540. and the empty command (semicolon) seems to be necessary for wildcard
  4541. rule chains.
  4542. * GNUmakefile.am: Small build fixes.
  4543. 2010-11-24 James Robinson <jamesr@chromium.org>
  4544. Reviewed by Kenneth Russell.
  4545. [chromium] Compositor needs to manage its VRAM use
  4546. https://bugs.webkit.org/show_bug.cgi?id=49629
  4547. This adds a basic texture manager to the Chromium compositor to limit the amount of VRAM
  4548. used by compositor textures and switches ContentLayerChromium, ImageLayerChromium, and
  4549. RenderSurfaceChromium to use managed LayerTexture. The other *LayerChromium classes (Canvas,
  4550. Video, and WebGL) and the root layer are still unmanaged.
  4551. The TextureManager works by providing tokens to callers that want to use a managed texture.
  4552. The token can be used to request a texture, see if the previously requested texture is still
  4553. available, and to protect/unprotect textures when they cannot be collected. Whenever a
  4554. texture is created the manager attempts to free up the least recently used textures until the
  4555. total memory use is below the provided threshhold. If the manager cannot satisfy the memory
  4556. limit it will not return any new textures until some old textures are released.
  4557. A LayerTexture wraps a TextureManager token, size, and format. A LayerChromium can check if a
  4558. previously requested texture is still available for use and reserve the LayerTexture's underlying
  4559. storage between the updateContentsIfDirty() and the draw() call.
  4560. Also changes LayerChromium from having separate contentsDirty()/updateContents() calls to a single
  4561. updateContentsIfDirty().
  4562. Tests: compositing/lots-of-img-layers-with-opacity.html
  4563. compositing/lots-of-img-layers.html
  4564. * WebCore.gypi:
  4565. * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
  4566. (WebCore::Canvas2DLayerChromium::updateContentsIfDirty):
  4567. * platform/graphics/chromium/Canvas2DLayerChromium.h:
  4568. * platform/graphics/chromium/ContentLayerChromium.cpp:
  4569. (WebCore::ContentLayerChromium::cleanupResources):
  4570. (WebCore::ContentLayerChromium::updateContentsIfDirty):
  4571. (WebCore::ContentLayerChromium::updateTextureRect):
  4572. (WebCore::ContentLayerChromium::draw):
  4573. * platform/graphics/chromium/ContentLayerChromium.h:
  4574. * platform/graphics/chromium/ImageLayerChromium.cpp:
  4575. (WebCore::ImageLayerChromium::updateContentsIfDirty):
  4576. * platform/graphics/chromium/ImageLayerChromium.h:
  4577. * platform/graphics/chromium/LayerChromium.h:
  4578. (WebCore::LayerChromium::updateContentsIfDirty):
  4579. (WebCore::LayerChromium::draw):
  4580. * platform/graphics/chromium/LayerRendererChromium.cpp:
  4581. (WebCore::LayerRendererChromium::LayerRendererChromium):
  4582. (WebCore::LayerRendererChromium::prepareToDrawLayers):
  4583. (WebCore::LayerRendererChromium::drawLayers):
  4584. (WebCore::LayerRendererChromium::updateLayersRecursive):
  4585. (WebCore::LayerRendererChromium::useRenderSurface):
  4586. (WebCore::LayerRendererChromium::drawLayer):
  4587. (WebCore::LayerRendererChromium::initializeSharedObjects):
  4588. (WebCore::LayerRendererChromium::cleanupSharedObjects):
  4589. * platform/graphics/chromium/LayerRendererChromium.h:
  4590. (WebCore::LayerRendererChromium::renderSurfaceSharedValues):
  4591. (WebCore::LayerRendererChromium::textureManager):
  4592. * platform/graphics/chromium/LayerTexture.cpp: Added.
  4593. (WebCore::LayerTexture::LayerTexture):
  4594. (WebCore::LayerTexture::~LayerTexture):
  4595. (WebCore::LayerTexture::isValid):
  4596. (WebCore::LayerTexture::reserve):
  4597. (WebCore::LayerTexture::unreserve):
  4598. (WebCore::LayerTexture::bindTexture):
  4599. (WebCore::LayerTexture::framebufferTexture2D):
  4600. * platform/graphics/chromium/LayerTexture.h: Added.
  4601. (WebCore::LayerTexture::create):
  4602. * platform/graphics/chromium/PluginLayerChromium.cpp:
  4603. (WebCore::PluginLayerChromium::updateContentsIfDirty):
  4604. * platform/graphics/chromium/PluginLayerChromium.h:
  4605. * platform/graphics/chromium/RenderSurfaceChromium.cpp:
  4606. (WebCore::RenderSurfaceChromium::SharedValues::SharedValues):
  4607. (WebCore::RenderSurfaceChromium::SharedValues::~SharedValues):
  4608. (WebCore::RenderSurfaceChromium::RenderSurfaceChromium):
  4609. (WebCore::RenderSurfaceChromium::cleanupResources):
  4610. (WebCore::RenderSurfaceChromium::prepareContentsTexture):
  4611. (WebCore::RenderSurfaceChromium::draw):
  4612. * platform/graphics/chromium/RenderSurfaceChromium.h:
  4613. (WebCore::RenderSurfaceChromium::SharedValues::shaderProgram):
  4614. (WebCore::RenderSurfaceChromium::SharedValues::shaderSamplerLocation):
  4615. (WebCore::RenderSurfaceChromium::SharedValues::shaderMatrixLocation):
  4616. (WebCore::RenderSurfaceChromium::SharedValues::shaderAlphaLocation):
  4617. (WebCore::RenderSurfaceChromium::SharedValues::initialized):
  4618. * platform/graphics/chromium/TextureManager.cpp: Added.
  4619. (WebCore::memoryUseBytes):
  4620. (WebCore::TextureManager::TextureManager):
  4621. (WebCore::TextureManager::getToken):
  4622. (WebCore::TextureManager::releaseToken):
  4623. (WebCore::TextureManager::hasTexture):
  4624. (WebCore::TextureManager::protectTexture):
  4625. (WebCore::TextureManager::unprotectTexture):
  4626. (WebCore::TextureManager::reduceMemoryToLimit):
  4627. (WebCore::TextureManager::addTexture):
  4628. (WebCore::TextureManager::removeTexture):
  4629. (WebCore::TextureManager::requestTexture):
  4630. * platform/graphics/chromium/TextureManager.h: Added.
  4631. (WebCore::TextureManager::create):
  4632. * platform/graphics/chromium/VideoLayerChromium.cpp:
  4633. (WebCore::VideoLayerChromium::updateContentsIfDirty):
  4634. * platform/graphics/chromium/VideoLayerChromium.h:
  4635. * platform/graphics/chromium/WebGLLayerChromium.cpp:
  4636. (WebCore::WebGLLayerChromium::updateContentsIfDirty):
  4637. * platform/graphics/chromium/WebGLLayerChromium.h:
  4638. 2010-11-24 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk>
  4639. Reviewed by Martin Robinson.
  4640. [GTK] response.isNull() assert when using directory file URI
  4641. https://bugs.webkit.org/show_bug.cgi?id=49018
  4642. Do ensure that didReceiveResponse happens before any call to
  4643. didReceiveData. That was not true for file:// URIs pointing to
  4644. directories and thus was triggering an assertion.
  4645. Test: platform/gtk/fast/loader/crash-display-local-directory.html
  4646. * platform/network/soup/ResourceHandleSoup.cpp:
  4647. (WebCore::gotHeadersCallback):
  4648. (WebCore::contentSniffedCallback):
  4649. (WebCore::parseDataUrl):
  4650. (WebCore::sendRequestCallback):
  4651. (WebCore::readCallback):
  4652. 2010-11-24 Xan Lopez <xlopez@igalia.com>
  4653. Reviewed by Martin Robinson.
  4654. * bindings/gobject/WebKitDOMBinding.h: fix stlye nit.
  4655. 2010-11-24 Xan Lopez <xlopez@igalia.com>
  4656. Reviewed by Martin Robinson.
  4657. [GTK] Make kit() methods return the proper type instead of gpointer
  4658. https://bugs.webkit.org/show_bug.cgi?id=50034
  4659. Change kit() methods to return proper type pointer.
  4660. * bindings/gobject/WebKitDOMBinding.cpp: change implementions of
  4661. kit methods.
  4662. * bindings/gobject/WebKitDOMBinding.h: change their declarations.
  4663. * bindings/scripts/CodeGeneratorGObject.pm: change the generated
  4664. kit() methods.
  4665. 2010-11-24 Martin Robinson <mrobinson@igalia.com>
  4666. Reviewed by Xan Lopez.
  4667. [GTK] DerivedSources/WebCore/DocTypeStrings.cpp is generated for every build
  4668. https://bugs.webkit.org/show_bug.cgi?id=50032
  4669. Instead of listing two targets for rules that have two outputs, make
  4670. a dependency chain. This fixes the issue where some files are generated
  4671. unconditionally. Also remove all unnecessary semicolons from the file.
  4672. No new tests as this is just a build fix.
  4673. * GNUmakefile.am: Fix GNUmake dependency issue.
  4674. 2010-11-24 Nico Weber <nicolasweber@gmx.de>
  4675. Reviewed by Adam Barth.
  4676. Chromium/Mac: Make scaled images un-ugly when using the webkit image decoders
  4677. https://bugs.webkit.org/show_bug.cgi?id=49965
  4678. Probably covered by existing tests whose expectations were overwritten
  4679. in http://trac.webkit.org/changeset/70858
  4680. * platform/image-decoders/cg/ImageDecoderCG.cpp:
  4681. (WebCore::RGBA32Buffer::asNewNativeImage):
  4682. 2010-11-24 Alexander Pavlov <apavlov@chromium.org>
  4683. Reviewed by Pavel Feldman.
  4684. Web Inspector: Crash when inspecting http://alphaarnhem.nl/beta/
  4685. https://bugs.webkit.org/show_bug.cgi?id=50025
  4686. @font-face rules were improperly handled by source data extractor.
  4687. * css/CSSParser.cpp:
  4688. (WebCore::CSSParser::CSSParser):
  4689. (WebCore::CSSParser::parseDeclaration):
  4690. (WebCore::CSSParser::createStyleRule):
  4691. (WebCore::CSSParser::markRuleBodyStart):
  4692. (WebCore::CSSParser::markPropertyStart):
  4693. (WebCore::CSSParser::markPropertyEnd):
  4694. * css/CSSParser.h:
  4695. 2010-11-24 Cris Neckar <cdn@chromium.org>
  4696. Reviewed by Adam Barth.
  4697. Added check when parsing local fonts to ensure that a value's unit type is either string or ident.
  4698. https://bugs.webkit.org/show_bug.cgi?id=49883
  4699. Test: fast/css/local_font_invalid.html
  4700. * css/CSSParser.cpp:
  4701. (WebCore::CSSParser::parseFontFaceSrc):
  4702. 2010-11-24 Pavel Feldman <pfeldman@chromium.org>
  4703. Reviewed by Yury Semikhatsky.
  4704. Web Inspector: place local modifications to under original
  4705. resource nodes in the resource panel.
  4706. https://bugs.webkit.org/show_bug.cgi?id=50029
  4707. * English.lproj/localizedStrings.js:
  4708. * inspector/Inspector.idl:
  4709. * inspector/InspectorController.cpp:
  4710. (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
  4711. (WebCore::InspectorController::scriptImported):
  4712. * inspector/InspectorResourceAgent.cpp:
  4713. (WebCore::InspectorResourceAgent::setInitialContent):
  4714. * inspector/InspectorResourceAgent.h:
  4715. * inspector/front-end/CSSStyleModel.js:
  4716. (WebInspector.CSSStyleModel.prototype.setRuleSelector):
  4717. (WebInspector.CSSStyleModel.prototype.addRule):
  4718. (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
  4719. (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
  4720. (WebInspector.CSSStyleDeclaration.prototype.insertPropertyAt):
  4721. (WebInspector.CSSProperty.prototype.setText):
  4722. (WebInspector.CSSProperty.prototype.setDisabled.callback):
  4723. (WebInspector.CSSProperty.prototype.setDisabled):
  4724. (WebInspector.CSSStyleSheet.prototype.setText):
  4725. * inspector/front-end/NetworkPanel.js:
  4726. (WebInspector.NetworkPanel.prototype.refreshResource):
  4727. * inspector/front-end/Resource.js:
  4728. (WebInspector.Resource.prototype.set content):
  4729. (WebInspector.Resource.prototype.get contentTimestamp):
  4730. (WebInspector.Resource.prototype.setInitialContent):
  4731. * inspector/front-end/ResourceManager.js:
  4732. (WebInspector.ResourceManager):
  4733. (WebInspector.ResourceManager.prototype.setInitialContent):
  4734. * inspector/front-end/ResourcesPanel.js:
  4735. (WebInspector.ResourcesPanel):
  4736. (WebInspector.ResourcesPanel.prototype.reset):
  4737. (WebInspector.ResourcesPanel.prototype._innerShowView):
  4738. (WebInspector.FrameResourceTreeElement):
  4739. (WebInspector.FrameResourceTreeElement.prototype._errorsWarningsUpdated):
  4740. (WebInspector.FrameResourceTreeElement.prototype._contentChanged.else.finished):
  4741. (WebInspector.FrameResourceTreeElement.prototype._contentChanged):
  4742. (WebInspector.ResourceRevisionTreeElement):
  4743. * inspector/front-end/SourceFrame.js:
  4744. (WebInspector.SourceFrame.prototype.get scrollTop):
  4745. (WebInspector.SourceFrame.prototype.set scrollTop):
  4746. * inspector/front-end/SourceView.js:
  4747. (WebInspector.SourceView.prototype.get scrollTop):
  4748. (WebInspector.SourceView.prototype.set scrollTop):
  4749. (WebInspector.SourceView.prototype._editLine):
  4750. (WebInspector.SourceView.prototype._editLineComplete):
  4751. * inspector/front-end/StylesSidebarPane.js:
  4752. (WebInspector.StylePropertyTreeElement.prototype):
  4753. 2010-11-24 Andrey Kosyakov <caseq@chromium.org>
  4754. Reviewed by Pavel Feldman.
  4755. Web Inspector: extension API cleanup
  4756. https://bugs.webkit.org/show_bug.cgi?id=50019
  4757. * inspector/front-end/ElementsPanel.js:
  4758. (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged):
  4759. (WebInspector.ElementsPanel):
  4760. * inspector/front-end/ExtensionAPI.js: See bug for summary of extension API changes.
  4761. (WebInspector.injectedExtensionAPI.Resources.resourceDispatch):
  4762. (WebInspector.injectedExtensionAPI):
  4763. (WebInspector.injectedExtensionAPI.Resources.prototype.getHAR):
  4764. (WebInspector.injectedExtensionAPI.ResourceImpl.prototype.getContent):
  4765. (WebInspector.injectedExtensionAPI.Panels.prototype.create):
  4766. (WebInspector.injectedExtensionAPI.PanelImpl):
  4767. (WebInspector.injectedExtensionAPI.PanelWithSidebarImpl):
  4768. (WebInspector.injectedExtensionAPI.PanelWithSidebarImpl.prototype.createSidebarPane):
  4769. (WebInspector.injectedExtensionAPI.PanelWithSidebarImpl.prototype.createWatchExpressionSidebarPane):
  4770. (WebInspector.injectedExtensionAPI.ElementsPanel):
  4771. (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setHeight):
  4772. (WebInspector.injectedExtensionAPI.Audits.prototype.addCategory):
  4773. (WebInspector.injectedExtensionAPI.AuditCategoryImpl.auditResultDispatch):
  4774. (WebInspector.injectedExtensionAPI.AuditCategoryImpl):
  4775. (WebInspector.injectedExtensionAPI.AuditResultImpl.prototype.get Severity):
  4776. (WebInspector.injectedExtensionAPI.InspectedWindow):
  4777. (WebInspector.injectedExtensionAPI.InspectedWindow.prototype.eval):
  4778. * inspector/front-end/ExtensionCommon.js:
  4779. (WebInspector.commonExtensionSymbols):
  4780. * inspector/front-end/ExtensionServer.js:
  4781. (WebInspector.ExtensionServer):
  4782. (WebInspector.ExtensionServer.prototype.notifyObjectSelected):
  4783. (WebInspector.ExtensionServer.prototype.notifyResourceFinished):
  4784. (WebInspector.ExtensionServer.prototype.notifyPageLoaded):
  4785. (WebInspector.ExtensionServer.prototype.notifyPageDOMContentLoaded):
  4786. (WebInspector.ExtensionServer.prototype._onCreatePanel):
  4787. (WebInspector.ExtensionServer.prototype._onReload):
  4788. (WebInspector.ExtensionServer.prototype._onGetHAR):
  4789. (WebInspector.ExtensionServer.prototype._onGetResourceContent):
  4790. (WebInspector.ExtensionServer.prototype._onAddAuditCategory):
  4791. (WebInspector.ExtensionServer.prototype._buildExtensionAPIInjectedScript):
  4792. * inspector/front-end/HAREntry.js:
  4793. (WebInspector.HARLog):
  4794. (WebInspector.HARLog.prototype.build):
  4795. (WebInspector.HARLog.prototype._convertResource):
  4796. * inspector/front-end/inspector.js:
  4797. (WebInspector.domContentEventFired):
  4798. (WebInspector.loadEventFired):
  4799. (WebInspector.didCommitLoad):
  4800. 2010-11-23 Jeremy Orlow <jorlow@chromium.org>
  4801. Reviewed by Steve Block.
  4802. Fix minor errors in IndexedDB
  4803. https://bugs.webkit.org/show_bug.cgi?id=49970
  4804. * Remove SNAPSHOT_READ per spec.
  4805. * Assert that the transaction that changes the db is a setVersion
  4806. transaction.
  4807. * When an objectStore already exists, throw a CONSTRAINT_ERR.
  4808. * When not in a setVersion transaction, throw a NOT_ALLOWED_ERR.
  4809. Test: storage/indexeddb/createAndRemoveObjectStore.html
  4810. * storage/IDBDatabase.cpp:
  4811. (WebCore::IDBDatabase::createObjectStore):
  4812. * storage/IDBDatabaseBackendImpl.cpp:
  4813. (WebCore::IDBDatabaseBackendImpl::createObjectStore):
  4814. * storage/IDBTransaction.h:
  4815. * storage/IDBTransaction.idl:
  4816. 2010-11-24 Philippe Normand <pnormand@igalia.com>
  4817. Reviewed by Xan Lopez.
  4818. [GStreamer] pause webkitvideosink during fullscreen video playback
  4819. https://bugs.webkit.org/show_bug.cgi?id=48824
  4820. Added an identity element before the webkitvideosink so that when
  4821. fullscreen video is active the element can drop the incoming
  4822. buffers so that webkitvideosink appears paused.
  4823. * platform/graphics/gstreamer/GStreamerGWorld.cpp:
  4824. (WebCore::GStreamerGWorld::enterFullscreen):
  4825. (WebCore::GStreamerGWorld::exitFullscreen):
  4826. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  4827. (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
  4828. 2010-11-24 Avi Drissman <avi@google.com>
  4829. Reviewed by Antonio Gomes.
  4830. Add preference to not select when right-clicked
  4831. https://bugs.webkit.org/show_bug.cgi?id=23351
  4832. Test: editing/selection/context-menu-text-selection.html
  4833. * editing/EditingBehavior.h:
  4834. (WebCore::EditingBehavior::shouldSelectOnContextualMenuClick):
  4835. * page/EventHandler.cpp:
  4836. (WebCore::EventHandler::sendContextMenuEvent):
  4837. 2010-11-24 Andras Becsi <abecsi@inf.u-szeged.hu>
  4838. Reviewed by Csaba Osztrogonác.
  4839. Make build-webkit --minimal build with ENABLE_INSPECTOR=0.
  4840. https://bugs.webkit.org/show_bug.cgi?id=49975
  4841. No new tests needed.
  4842. * features.pri: Make the Qt buildsystem aware
  4843. that the inspector is enabled by default.
  4844. 2010-11-24 Martin Robinson <mrobinson@igalia.com>
  4845. Reviewed by Xan Lopez.
  4846. [GTK] The WebKitWebView should expose a set of signals encapsulating the behavior of the EditorClient
  4847. https://bugs.webkit.org/show_bug.cgi?id=49143
  4848. * platform/gtk/GtkVersioning.c:
  4849. (g_signal_accumulator_first_wins): Add g_signal_accumulator_first_wins for versions of
  4850. GLib before 2.28.
  4851. * platform/gtk/GtkVersioning.h:
  4852. 2010-11-24 Sheriff Bot <webkit.review.bot@gmail.com>
  4853. Unreviewed, rolling out r72499.
  4854. http://trac.webkit.org/changeset/72499
  4855. https://bugs.webkit.org/show_bug.cgi?id=50022
  4856. This change is causing crashes on the bots. (Requested by
  4857. mrobinson on #webkit).
  4858. * accessibility/AccessibilityMenuListOption.cpp:
  4859. (WebCore::AccessibilityMenuListOption::nameForMSAA):
  4860. * accessibility/AccessibilityMenuListOption.h:
  4861. * accessibility/gtk/AXObjectCacheAtk.cpp:
  4862. (WebCore::AXObjectCache::postPlatformNotification):
  4863. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  4864. (setAtkStateSetFromCoreObject):
  4865. (optionFromList):
  4866. (optionFromSelection):
  4867. (webkit_accessible_selection_add_selection):
  4868. (webkit_accessible_selection_clear_selection):
  4869. (webkit_accessible_selection_get_selection_count):
  4870. (webkit_accessible_selection_is_child_selected):
  4871. (webkit_accessible_selection_remove_selection):
  4872. (webkit_accessible_text_get_text):
  4873. (getInterfaceMaskFromObject):
  4874. * platform/gtk/PopupMenuGtk.cpp:
  4875. (WebCore::PopupMenuGtk::show):
  4876. 2010-11-24 Patrick Gansterer <paroga@webkit.org>
  4877. Reviewed by Csaba Osztrogonác.
  4878. Simplify makeprop.pl
  4879. https://bugs.webkit.org/show_bug.cgi?id=49925
  4880. Don't generate CSSPropertyNamesHash.h.
  4881. Instead generate CSSPropertyNames directly.
  4882. * GNUmakefile.am: Removed rule for CSSPropertyNamesHash.h.
  4883. * css/makeprop.pl:
  4884. 2010-11-24 Patrick Gansterer <paroga@webkit.org>
  4885. Reviewed by Csaba Osztrogonác.
  4886. Remove Bakefile build system files
  4887. https://bugs.webkit.org/show_bug.cgi?id=49983
  4888. r53757 only removed the content, but not the files.
  4889. This patch removes that empty files.
  4890. * WebCoreSources.bkl: Removed.
  4891. * webcore-base.bkl: Removed.
  4892. * webcore-wx.bkl: Removed.
  4893. 2010-11-24 Renata Hodovan <reni@inf.u-szeged.hu>
  4894. Reviewed by Andreas Kling.
  4895. [Qt] GraphicsContext: Clean up Qt/WebCore type conversion functions
  4896. https://bugs.webkit.org/show_bug.cgi?id=49919
  4897. Add ASSERT_NOT_REACHED() if the given WebCore type doesn't have an equivalent type in Qt.
  4898. Also change the return value of toQtLineJoin() from Qt::MiterJoin to the default Qt::SvgMiterJoin,
  4899. because the previous one doesn't work currently.
  4900. No new test is needed.
  4901. * platform/graphics/qt/GraphicsContextQt.cpp:
  4902. (WebCore::GraphicsContext::toQtCompositionMode):
  4903. (WebCore::toQtLineCap):
  4904. (WebCore::toQtLineJoin):
  4905. (WebCore::toQPenStyle):
  4906. (WebCore::toQtFillRule):
  4907. 2010-11-24 Patrick Gansterer <paroga@webkit.org>
  4908. Reviewed by Csaba Osztrogonác.
  4909. Simplify makevalues.pl
  4910. https://bugs.webkit.org/show_bug.cgi?id=49926
  4911. Don't generate CSSValueKeywordsHash.h.
  4912. Instead generate CSSValueKeywords.cpp directly.
  4913. * GNUmakefile.am: Removed rule for CSSValueKeywordsHash.h.
  4914. * css/makevalues.pl:
  4915. 2010-11-24 Andras Becsi <abecsi@inf.u-szeged.hu>
  4916. Reviewed by Kenneth Rohde Christiansen.
  4917. Make WebKit2 compile with !ENABLE(INSPECTOR).
  4918. https://bugs.webkit.org/show_bug.cgi?id=49973
  4919. No new tests needed.
  4920. * bindings/js/ScriptHeapSnapshot.h:
  4921. * bindings/js/ScriptProfile.cpp:
  4922. * bindings/js/ScriptProfile.h:
  4923. * inspector/InspectorDebuggerAgent.cpp:
  4924. * inspector/InspectorDebuggerAgent.h:
  4925. * inspector/InspectorProfilerAgent.cpp:
  4926. * inspector/InspectorProfilerAgent.h:
  4927. * inspector/ScriptBreakpoint.h:
  4928. 2010-11-24 Patrick Gansterer <paroga@webkit.org>
  4929. Reviewed by Csaba Osztrogonác.
  4930. Simplify make-hash-tools.pl
  4931. https://bugs.webkit.org/show_bug.cgi?id=49922
  4932. HashTools.h does not need to be generated, because it only contains static code.
  4933. * html/DocTypeStrings.gperf: Include findDoctypeEntry function.
  4934. * make-hash-tools.pl: Do not generate HashTools.h.
  4935. * platform/ColorData.gperf: Include findColor function.
  4936. * platform/HashTools.h: Added.
  4937. 2010-11-24 Andreas Kling <kling@webkit.org>
  4938. Reviewed by Simon Hausmann.
  4939. [Qt] Pass Qt::TextBypassShaping flag when calculating shadow layer rects
  4940. Without this, we could end up with a slightly too small shadow layer
  4941. for some string/font combinations.
  4942. * platform/graphics/qt/FontQt.cpp:
  4943. (WebCore::drawTextCommon):
  4944. 2010-11-22 Pavel Feldman <pfeldman@chromium.org>
  4945. Reviewed by Yury Semikhatsky.
  4946. Web Inspector: add timing tab to the network item view.
  4947. https://bugs.webkit.org/show_bug.cgi?id=49920
  4948. * WebCore.gypi:
  4949. * WebCore.vcproj/WebCore.vcproj:
  4950. * inspector/front-end/NetworkItemView.js:
  4951. (WebInspector.NetworkItemView):
  4952. * inspector/front-end/NetworkPanel.js:
  4953. (WebInspector.NetworkPanel.prototype._showPopover):
  4954. * inspector/front-end/Resource.js:
  4955. (WebInspector.Resource.prototype.set timing):
  4956. * inspector/front-end/ResourceTimingView.js: Added.
  4957. (WebInspector.ResourceTimingView):
  4958. (WebInspector.ResourceTimingView.prototype.show):
  4959. (WebInspector.ResourceTimingView.prototype._refresh):
  4960. (WebInspector.ResourceTimingView.createTimingTable):
  4961. * inspector/front-end/WebKit.qrc:
  4962. * inspector/front-end/inspector.html:
  4963. * inspector/front-end/networkPanel.css:
  4964. (#network-views .network-item-view .tabbed-pane-header):
  4965. (.resource-timing-view):
  4966. (.resource-timing-view table):
  4967. (.resource-timing-view .network-timing-bar):
  4968. (.resource-timing-view .network-timing-bar.proxy):
  4969. (.resource-timing-view .network-timing-bar.dns):
  4970. (.resource-timing-view .network-timing-bar.connecting):
  4971. (.resource-timing-view .network-timing-bar.ssl):
  4972. (.resource-timing-view .network-timing-bar.sending):
  4973. (.resource-timing-view .network-timing-bar.waiting):
  4974. (.resource-timing-view .network-timing-bar.receiving):
  4975. (.resource-timing-view.visible):
  4976. 2010-11-24 Pavel Feldman <pfeldman@chromium.org>
  4977. Not reviewed. Follow up to r72652 (style id change in inspector).
  4978. * inspector/front-end/AuditRules.js:
  4979. (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.selectorsCallback):
  4980. 2010-11-22 Pavel Feldman <pfeldman@chromium.org>
  4981. Reviewed by Yury Semikhatsky.
  4982. Web Inspector: refactor ResourceView hierarchy.
  4983. https://bugs.webkit.org/show_bug.cgi?id=49864
  4984. This refactoring splits ResourceView.js into:
  4985. NetworkItemView.js (tabbed pane)
  4986. ResourceHeadersView.js (header tab)
  4987. ResourceCookiesView.js (cookies tab)
  4988. ResourceView.js (base class for content tab).
  4989. CookiesTable was extracted from CookieItemsView and
  4990. brushed up. headersVisible flag has been removed.
  4991. * English.lproj/localizedStrings.js:
  4992. * WebCore.gypi:
  4993. * WebCore.vcproj/WebCore.vcproj:
  4994. * inspector/front-end/CookieItemsView.js:
  4995. (WebInspector.CookieItemsView):
  4996. (WebInspector.CookieItemsView.prototype.get statusBarItems):
  4997. (WebInspector.CookieItemsView.prototype.hide):
  4998. (WebInspector.CookieItemsView.prototype.resize):
  4999. (WebInspector.CookieItemsView.prototype._updateWithCookies):
  5000. (WebInspector.CookieItemsView.prototype._filterCookiesForDomain):
  5001. (WebInspector.CookieItemsView.prototype._deleteCookie):
  5002. (WebInspector.CookieItemsView.prototype._deleteButtonClicked):
  5003. (WebInspector.CookieItemsView.prototype._refreshButtonClicked):
  5004. (WebInspector.SimpleCookiesTable):
  5005. (WebInspector.SimpleCookiesTable.prototype.setCookies):
  5006. (WebInspector.SimpleCookiesTable.prototype.resize):
  5007. * inspector/front-end/CookiesTable.js: Added.
  5008. (WebInspector.CookiesTable):
  5009. (WebInspector.CookiesTable.prototype.updateWidths):
  5010. (WebInspector.CookiesTable.prototype.setCookies):
  5011. (WebInspector.CookiesTable.prototype.addCookiesFolder):
  5012. (WebInspector.CookiesTable.prototype.get selectedCookie):
  5013. (WebInspector.CookiesTable.prototype._rebuildTable):
  5014. (WebInspector.CookiesTable.prototype.reset):
  5015. (WebInspector.CookiesTable.prototype._populateNode):
  5016. (WebInspector.CookiesTable.prototype._totalSize):
  5017. (WebInspector.CookiesTable.prototype._sortCookies.localeCompare):
  5018. (WebInspector.CookiesTable.prototype._sortCookies.numberCompare):
  5019. (WebInspector.CookiesTable.prototype._sortCookies.expiresCompare):
  5020. (WebInspector.CookiesTable.prototype._sortCookies):
  5021. (WebInspector.CookiesTable.prototype._createGridNode):
  5022. (WebInspector.CookiesTable.prototype._onDeleteFromGrid):
  5023. * inspector/front-end/FileSystemView.js:
  5024. (WebInspector.FileSystemView.prototype._selectFileSystemTab):
  5025. (WebInspector.FileSystemView.prototype.selectTemporaryFileSystemTab):
  5026. * inspector/front-end/FontView.js:
  5027. (WebInspector.FontView.prototype.hasContent):
  5028. (WebInspector.FontView.prototype._createContentIfNeeded):
  5029. (WebInspector.FontView.prototype.show):
  5030. (WebInspector.FontView.prototype.updateFontPreviewSize):
  5031. * inspector/front-end/ImageView.js:
  5032. (WebInspector.ImageView.prototype.hasContent):
  5033. (WebInspector.ImageView.prototype.show):
  5034. * inspector/front-end/NetworkItemView.js: Added.
  5035. (WebInspector.NetworkItemView):
  5036. (WebInspector.NetworkItemView.prototype.show):
  5037. (WebInspector.NetworkItemView.prototype._selectTab):
  5038. (WebInspector.NetworkItemView.prototype._tabSelected):
  5039. (WebInspector.NetworkItemView.prototype.resize):
  5040. (WebInspector.NetworkItemView.prototype.selectContentTab):
  5041. * inspector/front-end/NetworkPanel.js:
  5042. (WebInspector.NetworkPanel.prototype.show):
  5043. (WebInspector.NetworkPanel.prototype.refreshResource):
  5044. (WebInspector.NetworkPanel.prototype._showResource):
  5045. (WebInspector.NetworkPanel.prototype._closeVisibleResource):
  5046. * inspector/front-end/ResourceCookiesView.js: Added.
  5047. (WebInspector.ResourceCookiesView):
  5048. (WebInspector.ResourceCookiesView.prototype.show):
  5049. * inspector/front-end/ResourceHeadersView.js: Added.
  5050. (WebInspector.ResourceHeadersView):
  5051. (WebInspector.ResourceHeadersView.prototype._refreshURL):
  5052. (WebInspector.ResourceHeadersView.prototype._refreshQueryString):
  5053. (WebInspector.ResourceHeadersView.prototype._refreshFormData):
  5054. (WebInspector.ResourceHeadersView.prototype._refreshRequestPayload):
  5055. (WebInspector.ResourceHeadersView.prototype._refreshParms):
  5056. (WebInspector.ResourceHeadersView.prototype._toggleURLdecoding):
  5057. (WebInspector.ResourceHeadersView.prototype._getHeaderValue):
  5058. (WebInspector.ResourceHeadersView.prototype._refreshRequestHeaders):
  5059. (WebInspector.ResourceHeadersView.prototype._refreshResponseHeaders):
  5060. (WebInspector.ResourceHeadersView.prototype._refreshHTTPInformation):
  5061. (WebInspector.ResourceHeadersView.prototype._refreshHeaders):
  5062. * inspector/front-end/ResourceView.js:
  5063. (WebInspector.ResourceView):
  5064. (WebInspector.ResourceView.prototype.hasContent):
  5065. * inspector/front-end/ResourcesPanel.js:
  5066. (WebInspector.ResourcesPanel.prototype.show):
  5067. (WebInspector.ResourcesPanel.prototype.showResource):
  5068. (WebInspector.ResourcesPanel.prototype._showResourceView):
  5069. * inspector/front-end/ScriptsPanel.js:
  5070. (WebInspector.ScriptsPanel.prototype.show):
  5071. (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
  5072. * inspector/front-end/SourceView.js:
  5073. (WebInspector.SourceView):
  5074. (WebInspector.SourceView.prototype.show):
  5075. (WebInspector.SourceView.prototype.hide):
  5076. (WebInspector.SourceView.prototype.resize):
  5077. (WebInspector.SourceView.prototype.setupSourceFrameIfNeeded):
  5078. (WebInspector.SourceView.prototype.hasContent):
  5079. (WebInspector.SourceView.prototype.updateLocalContent):
  5080. (WebInspector.SourceView.prototype.selectLocalContentTab):
  5081. * inspector/front-end/StylesSidebarPane.js:
  5082. * inspector/front-end/TabbedPane.js:
  5083. (WebInspector.TabbedPane):
  5084. (WebInspector.TabbedPane.prototype.appendTab):
  5085. (WebInspector.TabbedPane.prototype.selectTab):
  5086. (WebInspector.TabbedPane.prototype._showTab):
  5087. (WebInspector.TabbedPane.prototype._hideTab):
  5088. * inspector/front-end/WebKit.qrc:
  5089. * inspector/front-end/inspector.css:
  5090. (.webkit-line-gutter-backdrop):
  5091. (.resource-view):
  5092. (.resource-view.visible):
  5093. (.resource-view.font):
  5094. (.resource-view.image > .image):
  5095. (.resource-view.image > .info):
  5096. (.storage-view):
  5097. (.storage-view .data-grid):
  5098. (.storage-empty-view, .storage-view .storage-table-error):
  5099. (.storage-view .storage-table-error):
  5100. * inspector/front-end/inspector.html:
  5101. * inspector/front-end/networkPanel.css:
  5102. (.network-cell-subtitle):
  5103. (.network-header-subtitle):
  5104. (#network-views .network-item-view .tabbed-pane-header):
  5105. (#network-views.small .network-item-view .tabbed-pane-header):
  5106. (.network-item-view):
  5107. (.network-item-view.visible):
  5108. (.network-item-view .tabbed-pane-header):
  5109. (.network-item-view .scope-bar li):
  5110. (.resource-headers-view):
  5111. (.resource-headers-view.visible):
  5112. (.resource-headers-view .outline-disclosure .parent):
  5113. (.resource-headers-view .outline-disclosure .children li):
  5114. (.resource-headers-view .outline-disclosure li.expanded .header-count):
  5115. (.resource-headers-view .outline-disclosure .header-name):
  5116. (.resource-headers-view .outline-disclosure .header-value):
  5117. (.resource-headers-view .outline-disclosure .raw-form-data):
  5118. (.resource-cookies-view):
  5119. (.resource-cookies-view.visible):
  5120. (.resource-cookies-view .data-grid):
  5121. (.resource-cookies-view .data-grid .row-group):
  5122. 2010-11-24 Pavel Feldman <pfeldman@chromium.org>
  5123. Reviewed by Yury Semikhatsky.
  5124. Web Inspector: add "Locally modified" group into the resource panel.
  5125. https://bugs.webkit.org/show_bug.cgi?id=50005
  5126. * English.lproj/localizedStrings.js:
  5127. * inspector/front-end/ResourcesPanel.js:
  5128. (WebInspector.ResourcesPanel):
  5129. (WebInspector.ResourcesPanel.prototype.reset):
  5130. (WebInspector.ResourcesPanel.prototype.addLocallyModifiedRevision):
  5131. (WebInspector.ResourcesPanel.prototype._innerShowView):
  5132. (WebInspector.BaseStorageTreeElement.prototype.set titleText):
  5133. (WebInspector.LocallyModifiedResourceTreeElement):
  5134. (WebInspector.LocallyModifiedResourceTreeElement.prototype.onselect):
  5135. (WebInspector.LocallyModifiedResourceTreeElement.prototype.gcRevisions):
  5136. (WebInspector.LocallyModifiedRevisionTreeElement):
  5137. (WebInspector.LocallyModifiedRevisionTreeElement.prototype.onattach):
  5138. (WebInspector.LocallyModifiedRevisionTreeElement.prototype.onselect):
  5139. (WebInspector.LocallyModifiedRevisionTreeElement.prototype._ondragstart):
  5140. 2010-11-24 Pavel Feldman <pfeldman@chromium.org>
  5141. Reviewed by Yury Semikhatsky.
  5142. Web Inspector: pass style id to front-end as Object, not string.
  5143. https://bugs.webkit.org/show_bug.cgi?id=49971
  5144. * inspector/Inspector.idl:
  5145. * inspector/InspectorCSSAgent.cpp:
  5146. (WebCore::InspectorCSSAgent::getStylesForNode2):
  5147. (WebCore::InspectorCSSAgent::getStyleSheetText2):
  5148. (WebCore::InspectorCSSAgent::setPropertyText2):
  5149. (WebCore::InspectorCSSAgent::toggleProperty2):
  5150. (WebCore::InspectorCSSAgent::setRuleSelector2):
  5151. * inspector/InspectorCSSAgent.h:
  5152. * inspector/InspectorStyleSheet.cpp:
  5153. (WebCore::InspectorStyle::buildObjectForStyle):
  5154. (WebCore::InspectorStyleSheet::finalURL):
  5155. (WebCore::InspectorStyleSheet::ruleForId):
  5156. (WebCore::InspectorStyleSheet::buildObjectForStyleSheet):
  5157. (WebCore::InspectorStyleSheet::buildObjectForRule):
  5158. (WebCore::InspectorStyleSheet::text):
  5159. (WebCore::InspectorStyleSheet::ruleOrStyleId):
  5160. (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
  5161. (WebCore::InspectorStyleSheetForInlineStyle::text):
  5162. * inspector/InspectorStyleSheet.h:
  5163. (WebCore::InspectorCSSId::InspectorCSSId):
  5164. (WebCore::InspectorCSSId::isEmpty):
  5165. (WebCore::InspectorCSSId::styleSheetId):
  5166. (WebCore::InspectorCSSId::ordinal):
  5167. (WebCore::InspectorCSSId::asInspectorValue):
  5168. (WebCore::InspectorStyleSheet::id):
  5169. (WebCore::InspectorStyleSheetForInlineStyle::styleForId):
  5170. * inspector/front-end/CSSStyleModel.js:
  5171. (WebInspector.CSSStyleModel.prototype.setRuleSelector):
  5172. (WebInspector.CSSStyleModel.prototype.addRule):
  5173. (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
  5174. (WebInspector.CSSStyleDeclaration.prototype.insertPropertyAt):
  5175. (WebInspector.CSSProperty.prototype.setText):
  5176. (WebInspector.CSSProperty.prototype.setDisabled.callback):
  5177. (WebInspector.CSSProperty.prototype.setDisabled):
  5178. (WebInspector.CSSStyleSheet.createForId):
  5179. (WebInspector.CSSStyleSheet.prototype.setText):
  5180. 2010-11-24 Sheriff Bot <webkit.review.bot@gmail.com>
  5181. Unreviewed, rolling out r72647.
  5182. http://trac.webkit.org/changeset/72647
  5183. https://bugs.webkit.org/show_bug.cgi?id=50009
  5184. breaks the http layout tests (Requested by philn-tp on
  5185. #webkit).
  5186. * platform/network/soup/ResourceHandleSoup.cpp:
  5187. (WebCore::sendRequestCallback):
  5188. (WebCore::startHttp):
  5189. (WebCore::ResourceHandle::platformSetDefersLoading):
  5190. 2010-11-23 Philippe Normand <pnormand@igalia.com>
  5191. Reviewed by Martin Robinson.
  5192. [soup] implement ResourceHandle::platformSetDefersLoading
  5193. https://bugs.webkit.org/show_bug.cgi?id=44158
  5194. * platform/network/soup/ResourceHandleSoup.cpp:
  5195. (WebCore::ResourceHandle::platformSetDefersLoading): Implemented
  5196. using the soup_session_{,un}pause_message APIs.
  5197. 2010-11-22 Abhishek Arya <inferno@chromium.org>
  5198. Reviewed by Adam Barth.
  5199. r71925 broke the chrome new tab page. r71925 blocked drag and drop
  5200. of same security origin objects onto themselves if their origin is
  5201. marked unique. We need to allow drag and drop in that scenario.
  5202. https://bugs.webkit.org/show_bug.cgi?id=49098
  5203. Test: http/tests/security/drag-drop-same-unique-origin.html
  5204. * page/SecurityOrigin.cpp:
  5205. (WebCore::SecurityOrigin::canReceiveDragData):
  5206. 2010-11-23 Cris Neckar <cdn@chromium.org>
  5207. Reviewed by Dimitri Glazkov.
  5208. Removed unneeded conversions to RenderBlock.
  5209. https://bugs.webkit.org/show_bug.cgi?id=49896
  5210. Test: fast/css/input-search-table-column-crash.html
  5211. * rendering/RenderTextControlSingleLine.cpp:
  5212. (WebCore::RenderTextControlSingleLine::adjustControlHeightBasedOnLineHeight):
  5213. 2010-11-23 Ryosuke Niwa <rniwa@webkit.org>
  5214. Reviewed by Adam Barth.
  5215. XMLDocumentParser::notifyFinished calls ScriptController's executeScript without updating isEvaluated flag
  5216. https://bugs.webkit.org/show_bug.cgi?id=49701
  5217. Fixed the bug by calling ScriptElement's executeScript, which sets isEvaluated flag to true.
  5218. Test: fast/dom/script-clone-rerun-src.xhtml
  5219. * dom/XMLDocumentParser.cpp:
  5220. (WebCore::XMLDocumentParser::notifyFinished):
  5221. 2010-11-23 Sheriff Bot <webkit.review.bot@gmail.com>
  5222. Unreviewed, rolling out r72628.
  5223. http://trac.webkit.org/changeset/72628
  5224. https://bugs.webkit.org/show_bug.cgi?id=49994
  5225. This patch is causing layout-test failtures on GTK Linux
  5226. 64-bit Debug (Requested by ctguil on #webkit).
  5227. * accessibility/AccessibilityRenderObject.cpp:
  5228. (WebCore::AccessibilityRenderObject::renderParentObject):
  5229. (WebCore::AccessibilityRenderObject::addChildren):
  5230. * accessibility/AccessibilityRenderObject.h:
  5231. * accessibility/chromium/AccessibilityObjectChromium.cpp:
  5232. (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
  5233. 2010-11-23 Xan Lopez <xlopez@igalia.com>
  5234. Reviewed by Martin Robinson.
  5235. [GTK] Fix IFrame DOM bindings API
  5236. https://bugs.webkit.org/show_bug.cgi?id=49980
  5237. Fix IFrame API naming. It needs special casing because of the two
  5238. consecutive capital letters.
  5239. * bindings/scripts/CodeGeneratorGObject.pm:
  5240. 2010-11-23 Shimeng (Simon) Wang <swang@google.com>
  5241. Reviewed by Steve Block.
  5242. Use platform bridge to set scroll position.
  5243. https://bugs.webkit.org/show_bug.cgi?id=49550
  5244. Refactoring only. Existing tests shall suffice.
  5245. * platform/android/PlatformBridge.h:
  5246. * platform/android/ScrollViewAndroid.cpp:
  5247. (WebCore::ScrollView::platformSetScrollPosition):
  5248. 2010-11-23 Andreas Kling <kling@webkit.org>
  5249. Reviewed by Tor Arne Vestbø.
  5250. [Qt] Selecting shadowed text causes rendering artifacts
  5251. https://bugs.webkit.org/show_bug.cgi?id=49990
  5252. When selecting text starting from the end of a word, we need to use
  5253. the X coordinate of the start of the substring when calculating the
  5254. bounding rect for a ContextShadow.
  5255. * platform/graphics/qt/FontQt.cpp:
  5256. (WebCore::drawTextCommon):
  5257. 2010-11-23 Chris Guillory <chris.guillory@google.com>
  5258. Reviewed by Dimitri Glazkov.
  5259. Include the FrameView widget of a RenderWidget in the accessibility tree.
  5260. https://bugs.webkit.org/show_bug.cgi?id=49106
  5261. Include render widget children in the accessibility tree for not mac webkit ports.
  5262. Test: accessibility/iframe-has-document.html
  5263. * accessibility/AccessibilityRenderObject.cpp:
  5264. (WebCore::AccessibilityRenderObject::renderParentObject):
  5265. (WebCore::AccessibilityRenderObject::addChildren):
  5266. (WebCore::AccessibilityRenderObject::addRenderWidgetChildren):
  5267. * accessibility/AccessibilityRenderObject.h:
  5268. * accessibility/chromium/AccessibilityObjectChromium.cpp:
  5269. (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
  5270. 2010-11-23 Chris Rogers <crogers@google.com>
  5271. Reviewed by Alexey Proskuryakov.
  5272. Add .responseType and .response to XMLHttpRequest
  5273. https://bugs.webkit.org/show_bug.cgi?id=49633
  5274. Tests: fast/xmlhttprequest/xmlhttprequest-responsetype-abort.html
  5275. fast/xmlhttprequest/xmlhttprequest-responsetype-arraybuffer.html
  5276. fast/xmlhttprequest/xmlhttprequest-responsetype-document.html
  5277. fast/xmlhttprequest/xmlhttprequest-responsetype-text.html
  5278. * bindings/js/JSXMLHttpRequestCustom.cpp:
  5279. (WebCore::JSXMLHttpRequest::markChildren):
  5280. (WebCore::JSXMLHttpRequest::open):
  5281. (WebCore::JSXMLHttpRequest::response):
  5282. * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
  5283. (WebCore::V8XMLHttpRequest::responseAccessorGetter):
  5284. * xml/XMLHttpRequest.cpp:
  5285. (WebCore::XMLHttpRequest::XMLHttpRequest):
  5286. (WebCore::XMLHttpRequest::responseText):
  5287. (WebCore::XMLHttpRequest::responseXML):
  5288. (WebCore::XMLHttpRequest::responseBlob):
  5289. (WebCore::XMLHttpRequest::responseArrayBuffer):
  5290. (WebCore::XMLHttpRequest::setResponseType):
  5291. (WebCore::XMLHttpRequest::responseType):
  5292. (WebCore::XMLHttpRequest::setAsBlob):
  5293. (WebCore::XMLHttpRequest::open):
  5294. (WebCore::XMLHttpRequest::clearResponse):
  5295. (WebCore::XMLHttpRequest::didFinishLoading):
  5296. (WebCore::XMLHttpRequest::didReceiveData):
  5297. * xml/XMLHttpRequest.h:
  5298. (WebCore::XMLHttpRequest::asBlob):
  5299. (WebCore::XMLHttpRequest::optionalResponseXML):
  5300. (WebCore::XMLHttpRequest::optionalResponseBlob):
  5301. (WebCore::XMLHttpRequest::responseTypeCode):
  5302. (WebCore::XMLHttpRequest::optionalResponseArrayBuffer):
  5303. * xml/XMLHttpRequest.idl:
  5304. 2010-11-23 Abhishek Arya <inferno@chromium.org>
  5305. Reviewed by Adam Barth.
  5306. dispatchEvent call in EventSource endRequest can lead to calling endRequest
  5307. again which frees up the pending activity. Make sure we have request in flight
  5308. to prevent that from happening.
  5309. https://bugs.webkit.org/show_bug.cgi?id=49448
  5310. Test: http/tests/eventsource/eventsource-status-error-iframe-crash.html
  5311. * page/EventSource.cpp:
  5312. (WebCore::EventSource::endRequest):
  5313. (WebCore::EventSource::close):
  5314. 2010-11-23 Sheriff Bot <webkit.review.bot@gmail.com>
  5315. Unreviewed, rolling out r72618.
  5316. http://trac.webkit.org/changeset/72618
  5317. https://bugs.webkit.org/show_bug.cgi?id=49987
  5318. "Newly added test is failing on Chromium-linux, patch author
  5319. said to rollout" (Requested by jparent on #webkit).
  5320. * editing/EditingBehavior.h:
  5321. * page/EventHandler.cpp:
  5322. (WebCore::EventHandler::sendContextMenuEvent):
  5323. 2010-11-23 Avi Drissman <avi@google.com>
  5324. Reviewed by Antonio Gomes.
  5325. Add preference to not select when right-clicked
  5326. https://bugs.webkit.org/show_bug.cgi?id=23351
  5327. Test: editing/selection/context-menu-text-selection.html
  5328. * editing/EditingBehavior.h:
  5329. (WebCore::EditingBehavior::shouldSelectOnContextualMenuClick):
  5330. * page/EventHandler.cpp:
  5331. (WebCore::EventHandler::sendContextMenuEvent):
  5332. 2010-11-23 Alexander Pavlov <apavlov@chromium.org>
  5333. Reviewed by Pavel Feldman.
  5334. Web Inspector: [STYLES] invalid color values are not marked as such.
  5335. https://bugs.webkit.org/show_bug.cgi?id=49960
  5336. Properties having a valid structure but invalid values will also
  5337. be marked as non-parsedOk in the Styles pane.
  5338. * css/CSSGrammar.y:
  5339. * inspector/InspectorStyleSheet.cpp:
  5340. (WebCore::InspectorStyle::populateObjectWithStyleProperties):
  5341. 2010-11-23 Adam Bergkvist <adam.bergkvist@ericsson.com>
  5342. Reviewed by Martin Robinson.
  5343. [GTK] Building with Blob support fails
  5344. https://bugs.webkit.org/show_bug.cgi?id=49724
  5345. Build fix.
  5346. * GNUmakefile.am:
  5347. * platform/gtk/FileSystemGtk.cpp:
  5348. (WebCore::seekFile): Not implemented.
  5349. 2010-11-23 Kenneth Rohde Christiansen <kenneth@webkit.org>
  5350. Reviewed by Andreas Kling.
  5351. Make setShouldDelegateScrolling not a real setting, so that it works
  5352. similar to the related setUseFixedLayout and setPaintEntireContents
  5353. options which are all in ScrollView.
  5354. * page/FrameView.cpp:
  5355. * page/FrameView.h:
  5356. * page/Settings.cpp:
  5357. (WebCore::Settings::Settings):
  5358. * page/Settings.h:
  5359. * platform/ScrollView.cpp:
  5360. (WebCore::ScrollView::ScrollView):
  5361. (WebCore::ScrollView::setDelegatesScrolling):
  5362. * platform/ScrollView.h:
  5363. (WebCore::ScrollView::delegatesScrolling):
  5364. 2010-11-23 Adam Roben <aroben@apple.com>
  5365. Don't rely on DocumentLoader outliving the load/unload events
  5366. DocumentLoader::m_documentLoadTiming is used to record how long firing
  5367. the load event took. But the DocumentLoader was being destroyed while
  5368. the event was being dispatched (due to a call to document.open), which
  5369. meant that when we tried to record the time when the load event
  5370. finished, we were writing into freed memory. We now protect the
  5371. DocumentLoader using a RefPtr. (I initially made a change where we
  5372. would only access the DocumentLoader after the event has finished
  5373. firing, but it seemed possible that a different DocumentLoader could
  5374. have come into existence by then, which would cause us to record the
  5375. times on the wrong DocumentLoadTiming struct.)
  5376. I only saw a crash when firing the load event, but the code for timing
  5377. the unload event seemed like it was vulnerable to the same issue, so I
  5378. made the same fix for it.
  5379. Fixes <http://webkit.org/b/49972> REGRESSION (r72415?): Crash in
  5380. DOMWindow::dispatchTimedEvent when running fast/dom/onload-open.html
  5381. Reviewed by Darin Fisher.
  5382. * loader/FrameLoader.cpp:
  5383. (WebCore::FrameLoader::stopLoading):
  5384. * page/DOMWindow.cpp:
  5385. (WebCore::DOMWindow::dispatchLoadEvent):
  5386. Protect the DocumentLoader (and thus its DocumentLoadTiming) with a
  5387. RefPtr.
  5388. 2010-11-17 Zhenyao Mo <zmo@google.com>
  5389. Reviewed by Kenneth Russell.
  5390. readPixels should generate INVALID_ENUM if only one of type/format mismatch UNSIGNED_BYTE/RGBA
  5391. https://bugs.webkit.org/show_bug.cgi?id=49673
  5392. Test: fast/canvas/webgl/read-pixels-test.html
  5393. * html/canvas/WebGLRenderingContext.cpp:
  5394. (WebCore::WebGLRenderingContext::readPixels):
  5395. 2010-11-23 Alexander Pavlov <apavlov@chromium.org>
  5396. Reviewed by Pavel Feldman.
  5397. Web Inspector: [STYLES] Use strike through as an 'overridden' marker.
  5398. https://bugs.webkit.org/show_bug.cgi?id=49961
  5399. "line-through" is used for inactive properties overridden within the same style.
  5400. * inspector/front-end/inspector.css:
  5401. (.styles-section .properties .overloaded, .styles-section .properties .inactive, .styles-section .properties .disabled):
  5402. 2010-11-23 Yael Aharon <yael.aharon@nokia.com>
  5403. Reviewed by Antonio Gomes.
  5404. Spatial Navigation: Code cleanup
  5405. https://bugs.webkit.org/show_bug.cgi?id=49442
  5406. Remove code that is not used anymore after http://trac.webkit.org/changeset/72522.
  5407. Added const to canBeScrolledIntoView.
  5408. No new tests because this is only code cleanup.
  5409. * page/FocusController.cpp:
  5410. * page/FocusController.h:
  5411. * page/SpatialNavigation.cpp:
  5412. (WebCore::canBeScrolledIntoView):
  5413. * page/SpatialNavigation.h:
  5414. 2010-11-23 Jeremy Orlow <jorlow@chromium.org>
  5415. Reviewed by Steve Block.
  5416. Remove unimplemented (and untested) methods from IndexedDB
  5417. https://bugs.webkit.org/show_bug.cgi?id=49911
  5418. * storage/IDBCursor.idl:
  5419. * storage/IDBDatabase.idl:
  5420. 2010-11-18 Satish Sampath <satish@chromium.org>
  5421. Reviewed by Jeremy Orlow.
  5422. For speech input event, send an event object containing all the recognition results and metadata.
  5423. https://bugs.webkit.org/show_bug.cgi?id=49736
  5424. Currently the speech input event 'onwebkitspeechchange' receives no parameters. WebCore already
  5425. has the full list of recognition results and populates only the top result into the input field
  5426. automatically. In this patch we pass a SpeechInputEvent object to the event handler, and the JS
  5427. code can access the full list of results via "event.results.length", "results[i].utterance" and
  5428. "results[i].confidence". Also updated mock object with appropriate methods to test multiple results.
  5429. Test: fast/speech/input-onspeechchange-event.html
  5430. * CMakeLists.txt:
  5431. * GNUmakefile.am:
  5432. * WebCore.gypi:
  5433. * WebCore.pri:
  5434. * WebCore.pro:
  5435. * WebCore.xcodeproj/project.pbxproj:
  5436. * bindings/js/JSEventCustom.cpp:
  5437. (WebCore::toJS): Added new event
  5438. * bindings/v8/custom/V8EventCustom.cpp:
  5439. (WebCore::toV8): Added new event
  5440. * dom/Event.cpp:
  5441. (WebCore::Event::isSpeechInputEvent):
  5442. * dom/Event.h:
  5443. * html/HTMLInputElement.cpp:
  5444. * html/HTMLInputElement.h:
  5445. * page/SpeechInputEvent.h: New file implementing SpeechInputEvent.idl
  5446. (WebCore::SpeechInputEvent::~SpeechInputEvent):
  5447. (WebCore::SpeechInputEvent::create):
  5448. (WebCore::SpeechInputEvent::isSpeechInputEvent):
  5449. (WebCore::SpeechInputEvent::results):
  5450. (WebCore::SpeechInputEvent::SpeechInputEvent):
  5451. * page/SpeechInputEvent.idl: New file defining SpeechInputEvent object
  5452. * page/SpeechInputListener.h:
  5453. * page/SpeechInputResult.cpp:
  5454. (WebCore::SpeechInputResult::create):
  5455. * page/SpeechInputResult.h:
  5456. * page/SpeechInputResult.idl: New file defining a single SpeechInputResult object
  5457. * page/SpeechInputResultList.h: New file implementing SpeechInputResultList.idl
  5458. (WebCore::SpeechInputResultList::create):
  5459. (WebCore::SpeechInputResultList::length):
  5460. (WebCore::SpeechInputResultList::item):
  5461. (WebCore::SpeechInputResultList::SpeechInputResultList):
  5462. * page/SpeechInputResultList.idl: New file defining a list of SpeechInputResult objects
  5463. * platform/mock/SpeechInputClientMock.cpp:
  5464. (WebCore::SpeechInputClientMock::addRecognitionResult): Renamed method and added one parameter.
  5465. (WebCore::SpeechInputClientMock::clearResults):
  5466. (WebCore::SpeechInputClientMock::timerFired):
  5467. * platform/mock/SpeechInputClientMock.h:
  5468. * rendering/TextControlInnerElements.cpp:
  5469. (WebCore::InputFieldSpeechButtonElement::setRecognitionResult): Pass new event object to handler.
  5470. 2010-11-22 Alexey Proskuryakov <ap@apple.com>
  5471. Reviewed by Darin Adler.
  5472. https://bugs.webkit.org/show_bug.cgi?id=49860
  5473. CSS style rules don't GC protect objects reachable as their properties
  5474. Test: fast/dom/StyleSheet/gc-rule-children-wrappers.html
  5475. * Android.jscbindings.mk:
  5476. * CMakeLists.txt:
  5477. * GNUmakefile.am:
  5478. * WebCore.gypi:
  5479. * WebCore.pro:
  5480. * WebCore.vcproj/WebCore.vcproj:
  5481. * WebCore.xcodeproj/project.pbxproj:
  5482. * bindings/js/JSBindingsAllInOne.cpp:
  5483. Added new files, sorted appropriate sections for easier adding.
  5484. * bindings/js/JSCSSFontFaceRuleCustom.cpp: Added.
  5485. (WebCore::JSCSSFontFaceRule::markChildren):
  5486. * bindings/js/JSCSSImportRuleCustom.cpp: Added.
  5487. (WebCore::JSCSSImportRule::markChildren):
  5488. * bindings/js/JSCSSMediaRuleCustom.cpp: Added.
  5489. (WebCore::JSCSSMediaRule::markChildren):
  5490. * bindings/js/JSCSSPageRuleCustom.cpp: Added.
  5491. (WebCore::JSCSSPageRule::markChildren):
  5492. * bindings/js/JSCSSStyleRuleCustom.cpp: Added.
  5493. (WebCore::JSCSSStyleRule::markChildren):
  5494. * bindings/js/JSWebKitCSSKeyframeRuleCustom.cpp: Added.
  5495. (WebCore::JSWebKitCSSKeyframeRule::markChildren):
  5496. * bindings/js/JSWebKitCSSKeyframesRuleCustom.cpp: Added.
  5497. (WebCore::JSWebKitCSSKeyframesRule::markChildren):
  5498. Mark objects reachable through these ones.
  5499. * css/CSSFontFaceRule.idl:
  5500. * css/CSSImportRule.idl:
  5501. * css/CSSMediaRule.idl:
  5502. * css/CSSPageRule.idl:
  5503. * css/CSSStyleRule.idl:
  5504. * css/WebKitCSSKeyframeRule.idl:
  5505. * css/WebKitCSSKeyframesRule.idl:
  5506. Added CustomMarkFunction IDL attribute.
  5507. 2010-11-23 Helder Correia <helder@sencha.com>
  5508. Reviewed by Ariya Hidayat.
  5509. [Qt] Drawing an image on canvas with shadowBlur draws a solid shadow
  5510. https://bugs.webkit.org/show_bug.cgi?id=49878
  5511. Add support for blurry shadows when drawing images on canvas.
  5512. Test: fast/canvas/canvas-drawImage-shadow.html
  5513. * platform/graphics/qt/ContextShadowQt.cpp:
  5514. (WebCore::ContextShadow::endShadowLayer): Make composition work for solid shadow too.
  5515. * platform/graphics/qt/ImageQt.cpp:
  5516. (WebCore::BitmapImage::draw): Remove old shadow code and introduce ContextShadow.
  5517. 2010-11-22 Patrick Gansterer <paroga@webkit.org>
  5518. Reviewed by Adam Roben.
  5519. Port ContextMenuWin.cpp to WinCE
  5520. https://bugs.webkit.org/show_bug.cgi?id=48408
  5521. * platform/ContextMenu.h:
  5522. * platform/win/ContextMenuWin.cpp:
  5523. (WebCore::ContextMenu::ContextMenu):
  5524. (WebCore::ContextMenu::itemCount):
  5525. (WebCore::insertMenuItem):
  5526. (WebCore::ContextMenu::insertItem):
  5527. (WebCore::contextMenuItemByIdOrPosition):
  5528. (WebCore::ContextMenu::setPlatformDescription):
  5529. (WebCore::contextMenuItemVector):
  5530. (WebCore::platformMenuDescription):
  5531. 2010-11-22 David Hyatt <hyatt@apple.com>
  5532. Back out r72527 since it caused multiple rendering regressions. Details in bug.
  5533. * rendering/InlineFlowBox.cpp:
  5534. (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
  5535. * rendering/RenderListItem.cpp:
  5536. (WebCore::RenderListItem::positionListMarker):
  5537. 2010-11-22 John Knottenbelt <jknotten@chromium.org>
  5538. Reviewed by Steve Block.
  5539. Implement mocks for client-based Geolocation.
  5540. https://bugs.webkit.org/show_bug.cgi?id=49258
  5541. * Android.mk:
  5542. * CMakeLists.txt:
  5543. * GNUmakefile.am:
  5544. * WebCore.gypi:
  5545. * WebCore.pro:
  5546. * WebCore.vcproj/WebCore.vcproj:
  5547. * WebCore.xcodeproj/project.pbxproj:
  5548. * platform/mock/GeolocationClientMock.cpp: Added.
  5549. (WebCore::GeolocationClientMock::GeolocationClientMock):
  5550. (WebCore::GeolocationClientMock::~GeolocationClientMock):
  5551. (WebCore::GeolocationClientMock::setController):
  5552. (WebCore::GeolocationClientMock::setPosition):
  5553. (WebCore::GeolocationClientMock::setError):
  5554. (WebCore::GeolocationClientMock::geolocationDestroyed):
  5555. (WebCore::GeolocationClientMock::startUpdating):
  5556. (WebCore::GeolocationClientMock::stopUpdating):
  5557. (WebCore::GeolocationClientMock::setEnableHighAccuracy):
  5558. (WebCore::GeolocationClientMock::lastPosition):
  5559. (WebCore::GeolocationClientMock::timerFired):
  5560. (WebCore::GeolocationClientMock::makeGeolocationCallback):
  5561. * platform/mock/GeolocationClientMock.h: Added.
  5562. 2010-11-22 Tony Gentilcore <tonyg@chromium.org>
  5563. Reviewed by Adam Barth.
  5564. Fix bogus include guard.
  5565. * loader/NavigationScheduler.h:
  5566. 2010-11-22 Andreas Kling <kling@webkit.org>
  5567. Reviewed by Ariya Hidayat.
  5568. [Qt] Canvas: strokeText() and fillText() produce same shadow
  5569. https://bugs.webkit.org/show_bug.cgi?id=48845
  5570. Test: fast/canvas/canvas-strokeText-strokes-shadow.html
  5571. * platform/graphics/qt/FontQt.cpp:
  5572. (WebCore::drawTextCommon): Stroke the shadow rather than filling it in the cTextStroke case.
  5573. 2010-11-22 Patrick Gansterer <paroga@webkit.org>
  5574. Reviewed by Sam Weinig.
  5575. Use WTF::FixedArray::size()
  5576. https://bugs.webkit.org/show_bug.cgi?id=49891
  5577. * dom/Document.cpp:
  5578. (WebCore::Document::~Document):
  5579. 2010-11-22 Ryosuke Niwa <rniwa@webkit.org>
  5580. Reviewed by Tony Chang.
  5581. SelectionController::typingStyle() should return EditingStyle*
  5582. https://bugs.webkit.org/show_bug.cgi?id=49813
  5583. Changed the return type of SelectionController::typingStyle to EditingStyle*.
  5584. Extracted textDirection from Editor::textDirectionForSelection to hide the underlying
  5585. CSSMutableStyleDeclaration.
  5586. Also extracted the code to preserve unicode-bidi and direction CSS properties in
  5587. InsertTextCommand::input, and moved into EditingStyle::prepareToApplyAt. ShouldPreserveWritingDirection,
  5588. which is added to the argument list of EditingStyle::prepareToApplyAt, decides whether or not
  5589. these two properties are preserved.
  5590. Also added SelectionController::copyTypingStyle() to copy the typing style as an instance of
  5591. CSSMutableStyleDeclaration.
  5592. No new tests are added since this is a refactoring.
  5593. * editing/EditingStyle.cpp:
  5594. (WebCore::EditingStyle::textDirection): Extracted from Editor::textDirectionForSelection.
  5595. (WebCore::EditingStyle::removeStyleConflictingWithStyleOfNode): Added a missing null check.
  5596. (WebCore::EditingStyle::prepareToApplyAt): See above.
  5597. (WebCore::editingStyleIncludingTypingStyle): Calls SelectionController::typingStyle.
  5598. * editing/EditingStyle.h: Moved WritingDirection from Editor.h
  5599. * editing/Editor.cpp:
  5600. (WebCore::Editor::textDirectionForSelection): Calls EditingStyle::textDirection.
  5601. (WebCore::Editor::computeAndSetTypingStyle): Calls SelectionController::typingStyle.
  5602. (WebCore::Editor::selectionComputedStyle): Ditto.
  5603. (WebCore::Editor::styleForSelectionStart): Ditto.
  5604. * editing/Editor.h:
  5605. * editing/InsertLineBreakCommand.cpp:
  5606. (WebCore::InsertLineBreakCommand::doApply): Ditto.
  5607. * editing/InsertTextCommand.cpp:
  5608. (WebCore::InsertTextCommand::input): Calls EditingStyle::prepareToApplyAt with PreserveWritingDirection.
  5609. * editing/SelectionController.h:
  5610. (WebCore::SelectionController::typingStyle): Returns EditingStyle* rather than CSSMutableStyleDeclaration*.
  5611. (WebCore::SelectionController::copyTypingStyle): Added.
  5612. 2010-11-22 Patrick Gansterer <paroga@webkit.org>
  5613. Reviewed by Adam Roben.
  5614. [WINCE] Set correct preprocessor definitions
  5615. https://bugs.webkit.org/show_bug.cgi?id=49887
  5616. * config.h:
  5617. 2010-11-22 James Robinson <jamesr@chromium.org>
  5618. Reviewed by Dimitri Glazkov.
  5619. [chromium] font-size:0 text runs should have zero width
  5620. https://bugs.webkit.org/show_bug.cgi?id=49871
  5621. Returns 0 from platformWidthForGlyph if the specified font size is 0.
  5622. Test: fast/text/font-size-zero.html
  5623. * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:
  5624. (WebCore::SimpleFontData::platformWidthForGlyph):
  5625. * platform/graphics/chromium/SimpleFontDataLinux.cpp:
  5626. (WebCore::SimpleFontData::platformWidthForGlyph):
  5627. 2010-11-22 Charlie Reis <creis@chromium.org>
  5628. Reviewed by Darin Fisher.
  5629. Update correct content state during back/forward navigations
  5630. https://bugs.webkit.org/show_bug.cgi?id=48809
  5631. Ensures that history's previousItem is non-null when clients try to
  5632. update content state (e.g., Chromium's UpdateSessionHistory). We now
  5633. track load completions with a boolean field rather than by clearing
  5634. previousItem.
  5635. Test: fast/history/saves-state-after-frame-nav.html
  5636. * loader/HistoryController.cpp:
  5637. * loader/HistoryController.h:
  5638. 2010-11-22 Luiz Agostini <luiz.agostini@openbossa.org>
  5639. Unreviewed, Windows build fix.
  5640. Adding JSMediaQueryList to DerivedSources.cpp.
  5641. * DerivedSources.cpp:
  5642. 2010-11-22 Adam Roben <aroben@apple.com>
  5643. Use paths relative to $WebKitVSPropsRedirectionDir to access shared .vsprops files
  5644. Apple's Windows build allows placing header files and import libraries for WebKit's
  5645. dependencies (CoreGraphics, CFNetwork, SQLite, etc.) outside the source tree via the
  5646. $WebKitLibrariesDir environment variable. This is both required for production builds and
  5647. convenient for Apple-internal developer builds. Apple's production builds also require that
  5648. WebKit's shared .vsprops files be accessed relative to $WebKitLibrariesDir. In production
  5649. builds, the files are copied into that directory tree by the
  5650. WebKitLibraries/win/tools/WinTools.make file. In Apple-internal developer builds, the
  5651. copying is done by
  5652. JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreGenerated.make.
  5653. This .vsprops copying is problematic in one very important case: when a developer updates
  5654. their source tree and then tries to build. Visual Studio only reads .vsprops files when a
  5655. project is first loaded. So, when Visual Studio is first opened after the .vsprops files are
  5656. updated, it reads in the old files that were already residing in $WebKitLibrariesDir. When a
  5657. build is started, JavaScriptCoreGenerated.make copies the new .vsprops files into
  5658. $WebKitLibrariesDir, but Visual Studio will not pick up the changes. The rest of the build
  5659. will proceed with out-of-date .vsprops files, which will likely result in a build failure.
  5660. To fix this, we now use normal relative paths to access the .vsprops files in the source
  5661. tree rather than in $WebKitLibrariesDir, but prefix those paths with a new environment
  5662. variable, $WebKitVSPropsRedirectionDir. In developer builds, this environment variable is
  5663. unset, so the normal relative paths are used to read the .vsprops files out of the source
  5664. tree directly. In production builds, this environment variable is set to a fake directory
  5665. that will cause the .vsprops files in $WebKitLibrariesDir to be found when the relative path
  5666. is resolved.
  5667. For example, JavaScriptCore.vcproj uses this path for FeatureDefines.vsprops:
  5668. $(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops
  5669. In developer builds, where $WebKitVSPropsRedirectionDir is unset, this will point to the
  5670. files in WebKitLibraries\win\tools\vsprops in the source tree. In production builds,
  5671. JavaScriptCore.make sets $WebKitVSPropsRedirectionDir to
  5672. "$(SRCROOT)\AppleInternal\tools\vsprops\OpenSource\1\2\3\", so the full path for
  5673. FeatureDefines.vsprops becomes:
  5674. $(SRCROOT)\AppleInternal\tools\vsprops\OpenSource\1\2\3\..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops
  5675. which resolves to:
  5676. $(SRCROOT)\AppleInternal\tools\vsprops\OpenSource\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops
  5677. (We rely on the fact that Windows doesn't care whether the directories "1", "2", and "3"
  5678. actually exist since they are matched by an equal number of ".." path components.)
  5679. Note that Visual Studio still won't pick up changes made to .vsprops files while Visual
  5680. Studio is open, but that problem hasn't seemed to cause developers many headaches so far.
  5681. Fixes <http://webkit.org/b/49181> Windows build fails mysteriously when .vsprops files are
  5682. updated
  5683. Reviewed by Dave Hyatt.
  5684. * WebCore.vcproj/WebCore.make: Set $WebKitVSPropsRedirectionDir so that
  5685. production builds can find the .vsprops files.
  5686. * WebCore.vcproj/QTMovieWin.vcproj:
  5687. * WebCore.vcproj/WebCore.vcproj:
  5688. Changed to use paths relative to $WebKitVSPropsRedirectionDir to access shared .vsprops
  5689. files.
  5690. 2010-10-21 Luiz Agostini <luiz.agostini@openbossa.org>
  5691. Reviewed by Darin Adler.
  5692. Implement CSSOM View matchMedia interface
  5693. https://bugs.webkit.org/show_bug.cgi?id=37205
  5694. New interfaces may be used to evaluate media queries and to associate listeners
  5695. to media queries. Those listeners are called whenever the associated query changes.
  5696. Specification may be found at http://dev.w3.org/csswg/cssom-view/#the-mediaquerylist-interface
  5697. operator== added to JS version of ScriptValue.
  5698. Method isFunction added to JS and V8 versions of ScriptValue.
  5699. * bindings/js/ScriptValue.cpp:
  5700. (WebCore::ScriptValue::isFunction):
  5701. * bindings/js/ScriptValue.h:
  5702. (WebCore::ScriptValue::operator==):
  5703. * bindings/v8/ScriptValue.h:
  5704. (WebCore::ScriptValue::isFunction):
  5705. Some changes were needed to the code generators to handle type MediaQueryListListener.
  5706. * bindings/scripts/CodeGeneratorGObject.pm:
  5707. * bindings/scripts/CodeGeneratorJS.pm:
  5708. * bindings/scripts/CodeGeneratorV8.pm:
  5709. Some changes to the bindings test results that were previously added.
  5710. * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
  5711. * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h:
  5712. * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
  5713. (WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):
  5714. * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
  5715. (WebCore::TestMediaQueryListListenerInternal::methodCallback):
  5716. (WebCore::ConfigureV8TestMediaQueryListListenerTemplate):
  5717. New interfaces:
  5718. * css/MediaQueryList.cpp: Added.
  5719. * css/MediaQueryList.h: Added.
  5720. * css/MediaQueryList.idl: Added.
  5721. * css/MediaQueryListListener.cpp: Added.
  5722. * css/MediaQueryListListener.h: Added.
  5723. * css/MediaQueryListListener.idl: Added.
  5724. To avoid adding code to classes DOMWindow and Document a new class MediaQueryMatcher was created.
  5725. * css/MediaQueryMatcher.cpp: Added.
  5726. * css/MediaQueryMatcher.h: Added.
  5727. Document and DOMWindow have changed to support new features. DOMWindow is the class that
  5728. publishes methods matchMedia but for page cache to work properly the reference to the
  5729. MediaQueryMatcher must be in Document.
  5730. * dom/Document.cpp:
  5731. (WebCore::Document::~Document):
  5732. (WebCore::Document::mediaQueryMatcher):
  5733. (WebCore::Document::styleSelectorChanged):
  5734. * dom/Document.h:
  5735. * page/DOMWindow.cpp:
  5736. (WebCore::DOMWindow::matchMedia):
  5737. * page/DOMWindow.h:
  5738. * page/DOMWindow.idl:
  5739. Build systems
  5740. * CMakeLists.txt:
  5741. * DerivedSources.make:
  5742. * GNUmakefile.am:
  5743. * WebCore.gypi:
  5744. * WebCore.pri:
  5745. * WebCore.pro:
  5746. * WebCore.vcproj/WebCore.vcproj:
  5747. * WebCore.xcodeproj/project.pbxproj:
  5748. * bindings/gobject/GNUmakefile.am:
  5749. Tests: fast/media/media-query-list-01.html
  5750. fast/media/media-query-list-02.html
  5751. fast/media/media-query-list-03.html
  5752. fast/media/media-query-list-04.html
  5753. fast/media/media-query-list-05.html
  5754. fast/media/media-query-list-06.html
  5755. fast/media/media-query-list-07.html
  5756. 2010-11-22 Alexander Pavlov <apavlov@chromium.org>
  5757. Reviewed by Pavel Feldman.
  5758. Web Inspector: [REGRESSION] Contents of rules inside @media not displayed/editable
  5759. https://bugs.webkit.org/show_bug.cgi?id=49804
  5760. * css/CSSImportRule.cpp:
  5761. (WebCore::CSSImportRule::insertedIntoParent):
  5762. * inspector/InspectorCSSAgent.cpp:
  5763. (WebCore::InspectorCSSAgent::setStyleSheetText2):
  5764. * inspector/InspectorStyleSheet.cpp:
  5765. (WebCore::asCSSRuleList):
  5766. (WebCore::InspectorStyleSheet::reparseStyleSheet):
  5767. (WebCore::InspectorStyleSheet::setText):
  5768. (WebCore::InspectorStyleSheet::addRule):
  5769. (WebCore::InspectorStyleSheet::ruleForId):
  5770. (WebCore::InspectorStyleSheet::ruleIndexByStyle):
  5771. (WebCore::InspectorStyleSheet::ensureText):
  5772. (WebCore::InspectorStyleSheet::ensureSourceData):
  5773. (WebCore::InspectorStyleSheet::ensureFlatRules):
  5774. (WebCore::InspectorStyleSheet::revalidateStyle):
  5775. (WebCore::InspectorStyleSheet::buildArrayForRuleList):
  5776. (WebCore::InspectorStyleSheet::fixUnparsedPropertyRanges):
  5777. (WebCore::InspectorStyleSheet::collectFlatRules):
  5778. * inspector/InspectorStyleSheet.h:
  5779. 2010-11-22 Ilya Tikhonovsky <loislo@chromium.org>
  5780. Reviewed by Pavel Feldman.
  5781. Web Inspector: dump inspector protocol messages into console.
  5782. Sometimes I need to dump inspector messages into console.
  5783. It'd be much simple to have this code in repository and
  5784. enable protocol dumping just by a flag.
  5785. https://bugs.webkit.org/show_bug.cgi?id=49905
  5786. * inspector/CodeGeneratorInspector.pm:
  5787. * inspector/front-end/WorkersSidebarPane.js:
  5788. (WebInspector.WorkersSidebarPane.prototype.reset):
  5789. * inspector/front-end/inspector.js:
  5790. (WebInspector_syncDispatch):
  5791. 2010-11-22 Andreas Kling <kling@webkit.org>
  5792. Reviewed by Nikolas Zimmermann.
  5793. GraphicsContext: Make drawFocusRing() take a Path instead of a Vector<Path>
  5794. https://bugs.webkit.org/show_bug.cgi?id=49840
  5795. This avoid copying a Path object when drawing focus rings.
  5796. * platform/graphics/GraphicsContext.h:
  5797. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  5798. (WebCore::GraphicsContext::drawFocusRing):
  5799. * platform/graphics/haiku/GraphicsContextHaiku.cpp:
  5800. (WebCore::GraphicsContext::drawFocusRing):
  5801. * platform/graphics/mac/GraphicsContextMac.mm:
  5802. (WebCore::GraphicsContext::drawFocusRing):
  5803. * platform/graphics/qt/GraphicsContextQt.cpp:
  5804. (WebCore::GraphicsContext::drawFocusRing):
  5805. * platform/graphics/skia/GraphicsContextSkia.cpp:
  5806. (WebCore::GraphicsContext::drawFocusRing):
  5807. * platform/graphics/win/GraphicsContextCGWin.cpp:
  5808. (WebCore::GraphicsContext::drawFocusRing):
  5809. * platform/graphics/wince/GraphicsContextWinCE.cpp:
  5810. (WebCore::GraphicsContext::drawFocusRing):
  5811. * platform/graphics/wx/GraphicsContextWx.cpp:
  5812. (WebCore::GraphicsContext::drawFocusRing):
  5813. * rendering/RenderImage.h:
  5814. * rendering/RenderImage.cpp:
  5815. (WebCore::RenderImage::paint):
  5816. (WebCore::RenderImage::paintFocusRing):
  5817. Renamed from paintFocusRings since it only paints one ring.
  5818. 2010-11-22 Renata Hodovan <reni@webkit.org>
  5819. Reviewed by Andreas Kling.
  5820. Outside list bullets ignore text-align style.
  5821. https://bugs.webkit.org/show-bug.cgi?id=15713
  5822. Fix the position of outside markers by setting its logicalLeft member. Embedded markers need special treatment.
  5823. First, the total width of markers should be calculated. Subtracting it from logicalLeft we get the outermost bullet's
  5824. position. As for the others, this sum should be decremented with the previous marker's width.
  5825. In case of vertical markers the padding is unneeded.
  5826. Test: fast/lists/outSideListMarkers.html
  5827. * rendering/InlineFlowBox.cpp:
  5828. (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
  5829. * rendering/RenderListItem.cpp:
  5830. (WebCore::RenderListItem::positionListMarker):
  5831. 2010-11-22 Yael Aharon <yael.aharon@nokia.com>, Chang Shu <chang.shu@nokia.com>
  5832. Reviewed by Antonio Gomes.
  5833. Spatial Navigation: issues with the node selection algorithm.
  5834. https://bugs.webkit.org/show_bug.cgi?id=49382
  5835. Modify the Spatial Navigation algorithm, to better handle initial focus and
  5836. navigation between frames.
  5837. The new algorithm takes the rect of the focused node as the startingRect,
  5838. instead of the node itself. That allows us to construct a virtual rect if
  5839. there is no focused node, or if it is off the screen.
  5840. The virtual rect is the edge of the container in the direction of the navigation.
  5841. With this patch, scrollable containers and frames will scroll regardless of weather
  5842. they have focusable content. Users will be able to use arrow keys to view all the
  5843. content of such a container. The only exception is if the container has style overflow:hidden.
  5844. We will not scroll in that case.
  5845. With this patch, we handle z-index and positioning so that if there are 2 overlapping focusable nodes,
  5846. we do a hit test and only the node on top can get focus.
  5847. hasOffScreenRect() was modified so that it can check if a node will be off-screen even after we scrolled
  5848. its parent container. We do not add the scrolling conditions for containers that have overflow:hidden
  5849. and cannot scroll.
  5850. calculateScrollbarModesForLayout is used to decide if a frame can scroll or not. We cannot rely on
  5851. the exsistance of the scrollbar, because it could be removed via the API, while the frame is still
  5852. allowed to scroll.
  5853. * page/FocusController.cpp:
  5854. (WebCore::updateFocusCandidateIfNeeded):
  5855. (WebCore::FocusController::findFocusCandidateInContainer):
  5856. (WebCore::FocusController::advanceFocusDirectionallyInContainer):
  5857. (WebCore::FocusController::advanceFocusDirectionally):
  5858. * page/FocusController.h:
  5859. * page/FrameView.h:
  5860. * page/SpatialNavigation.cpp:
  5861. (WebCore::FocusCandidate::FocusCandidate):
  5862. (WebCore::distanceDataForNode):
  5863. (WebCore::alignmentForRects):
  5864. (WebCore::areRectsMoreThanFullScreenApart):
  5865. (WebCore::isRectInDirection):
  5866. (WebCore::hasOffscreenRect):
  5867. (WebCore::scrollInDirection):
  5868. (WebCore::isScrollableContainerNode):
  5869. (WebCore::scrollableEnclosingBoxOrParentFrameForNodeInDirection):
  5870. (WebCore::canScrollInDirection):
  5871. (WebCore::rectToAbsoluteCoordinates):
  5872. (WebCore::nodeRectInAbsoluteCoordinates):
  5873. (WebCore::frameRectInAbsoluteCoordinates):
  5874. (WebCore::entryAndExitPointsForDirection):
  5875. (WebCore::canBeScrolledIntoView):
  5876. (WebCore::virtualRectForDirection):
  5877. * page/SpatialNavigation.h:
  5878. 2010-11-22 Nikolas Zimmermann <nzimmermann@rim.com>
  5879. Reviewed by Dirk Schulze.
  5880. Fix various problems with the SVG*List code
  5881. https://bugs.webkit.org/show_bug.cgi?id=49880
  5882. Write tests for SVGNumberList/SVGPointList/SVGStringList/SVGTransformList and extend SVGLengthList tests.
  5883. SVG DOM <-> XML DOM synchronization is now tested for all these types, and works great. Unify the string format produced
  5884. by the various valueAsString() functions for maximum compatibility with Firefox / Opera.
  5885. * Build a real transform string for SVGTransformList, instead of dumping the elements of the concatted matrix.
  5886. * Add SVGStringList XML dom synchronization, only affects SVGTests requiredFeatures/requiredExtensions/systemLanguage.
  5887. * Make all animVal properties readonly, tested by types-dom-07-f.svg (from SVG 1.1 2nd edition).
  5888. * Enable StrictTypeChecking/RequiresAllArguments=Raise for all SVGList types.
  5889. Tests: svg/W3C-SVG-1.1-SE/types-dom-07-f.svg
  5890. svg/dom/SVGNumberList-basics.xhtml
  5891. svg/dom/SVGPointList-basics.xhtml
  5892. svg/dom/SVGStringList-basics.xhtml
  5893. svg/dom/SVGTransformList-basics.xhtml
  5894. * bindings/js/JSSVGLengthCustom.cpp:
  5895. (WebCore::JSSVGLength::setValue): Throw NO_MODIFICATION_ALLOWED_ERR when the SVGPropertyTearOffs role is AnimValRole.
  5896. (WebCore::JSSVGLength::convertToSpecifiedUnits): Ditto.
  5897. * bindings/scripts/CodeGeneratorJS.pm: Ditto.
  5898. * bindings/scripts/CodeGeneratorObjC.pm: Ditto.
  5899. * bindings/scripts/CodeGeneratorV8.pm: Ditto.
  5900. * bindings/v8/custom/V8SVGLengthCustom.cpp:
  5901. (WebCore::V8SVGLength::valueAccessorSetter): Ditto.
  5902. (WebCore::V8SVGLength::convertToSpecifiedUnitsCallback): Ditto.
  5903. * svg/SVGAElement.cpp:
  5904. (WebCore::SVGAElement::synchronizeProperty): Also synchronize the SVGTests SVGStringLists.
  5905. * svg/SVGAnimationElement.cpp:
  5906. (WebCore::SVGAnimationElement::synchronizeProperty): Ditto.
  5907. * svg/SVGCircleElement.cpp:
  5908. (WebCore::SVGCircleElement::synchronizeProperty): Ditto.
  5909. * svg/SVGClipPathElement.cpp:
  5910. (WebCore::SVGClipPathElement::synchronizeProperty): Ditto.
  5911. * svg/SVGCursorElement.cpp:
  5912. (WebCore::SVGCursorElement::synchronizeProperty): Ditto.
  5913. * svg/SVGDefsElement.cpp:
  5914. (WebCore::SVGDefsElement::synchronizeProperty): Ditto.
  5915. * svg/SVGEllipseElement.cpp:
  5916. (WebCore::SVGEllipseElement::synchronizeProperty): Ditto.
  5917. * svg/SVGForeignObjectElement.cpp:
  5918. (WebCore::SVGForeignObjectElement::synchronizeProperty): Ditto.
  5919. * svg/SVGGElement.cpp:
  5920. (WebCore::SVGGElement::synchronizeProperty): Ditto.
  5921. * svg/SVGImageElement.cpp:
  5922. (WebCore::SVGImageElement::synchronizeProperty): Ditto.
  5923. * svg/SVGLengthList.cpp:
  5924. (WebCore::SVGLengthList::valueAsString): Use ' ' instead of ',' as seperator.
  5925. * svg/SVGLengthList.idl: Enable StrictTypeChecking, RequiresAllArguments=Raise.
  5926. * svg/SVGLineElement.cpp:
  5927. (WebCore::SVGLineElement::synchronizeProperty): Also synchronize the SVGTests SVGStringLists.
  5928. * svg/SVGMaskElement.cpp:
  5929. (WebCore::SVGMaskElement::synchronizeProperty): Ditto.
  5930. * svg/SVGNumberList.cpp:
  5931. (WebCore::SVGNumberList::valueAsString): Use ' ' instead of ',' as seperator.
  5932. * svg/SVGNumberList.idl: Enable StrictTypeChecking, RequiresAllArguments=Raise.
  5933. * svg/SVGPathElement.cpp:
  5934. (WebCore::SVGPathElement::synchronizeProperty): Also synchronize the SVGTests SVGStringLists.
  5935. * svg/SVGPatternElement.cpp:
  5936. (WebCore::SVGPatternElement::synchronizeProperty): Ditto.
  5937. * svg/SVGPointList.idl: Enable StrictTypeChecking, RequiresAllArguments=Raise.
  5938. * svg/SVGPolyElement.cpp:
  5939. (WebCore::SVGPolyElement::synchronizeProperty): Also synchronize the SVGTests SVGStringLists.
  5940. * svg/SVGRectElement.cpp:
  5941. (WebCore::SVGRectElement::synchronizeProperty): Ditto.
  5942. * svg/SVGSVGElement.cpp:
  5943. (WebCore::SVGSVGElement::synchronizeProperty): Ditto.
  5944. * svg/SVGStringList.cpp:
  5945. (WebCore::SVGStringList::valueAsString): Add valueAsString() implementation, necessary for SVG DOM <-> XML DOM synchronization.
  5946. * svg/SVGStringList.h:
  5947. * svg/SVGStringList.idl: Enable StrictTypeChecking, RequiresAllArguments=Raise.
  5948. * svg/SVGSwitchElement.cpp:
  5949. (WebCore::SVGSwitchElement::synchronizeProperty): Also synchronize the SVGTests SVGStringLists.
  5950. * svg/SVGTests.cpp: Rewrite, similar to SVGPolyElement, to synchronize the requiredFeatures/requiredExtension/systemLanguage SVGStringLists with their XML DOM attributes.
  5951. (WebCore::SVGTests::SVGTests):
  5952. (WebCore::SVGTests::isValid):
  5953. (WebCore::SVGTests::parseMappedAttribute):
  5954. (WebCore::SVGTests::isKnownAttribute):
  5955. (WebCore::SVGTests::handleAttributeChange):
  5956. (WebCore::SVGTests::synchronizeProperties): To be called by all classes inheriting from SVGTests, in their synchronizeProperty() methods.
  5957. (WebCore::SVGTests::synchronizeRequiredFeatures):
  5958. (WebCore::SVGTests::synchronizeRequiredExtensions):
  5959. (WebCore::SVGTests::synchronizeSystemLanguage):
  5960. (WebCore::SVGTests::requiredFeatures):
  5961. (WebCore::SVGTests::requiredExtensions):
  5962. (WebCore::SVGTests::systemLanguage):
  5963. * svg/SVGTests.h:
  5964. * svg/SVGTextContentElement.cpp:
  5965. (WebCore::SVGTextContentElement::synchronizeProperty): Also synchronize the SVGTests SVGStringLists.
  5966. * svg/SVGTransform.cpp:
  5967. (WebCore::SVGTransform::valueAsString): Added a proper way to serialize a SVGTransform into a String.
  5968. * svg/SVGTransform.h:
  5969. * svg/SVGTransformList.cpp:
  5970. (WebCore::SVGTransformList::valueAsString): Rewrite, to build a real transform list string, instead of dumping the concatted matrix.
  5971. * svg/SVGUseElement.cpp:
  5972. (WebCore::SVGUseElement::synchronizeProperty): Also synchronize the SVGTests SVGStringLists.
  5973. * svg/properties/SVGListProperty.h: s/TYPE_MISMATCH_ERR/SVGException::SVG_WRONG_TYPE_ERR/ for compatibility with Firefox.
  5974. (WebCore::SVGListProperty::initializeValuesAndWrappers):
  5975. (WebCore::SVGListProperty::insertItemBeforeValuesAndWrappers):
  5976. (WebCore::SVGListProperty::replaceItemValues):
  5977. (WebCore::SVGListProperty::replaceItemValuesAndWrappers):
  5978. (WebCore::SVGListProperty::removeItemValuesAndWrappers): Handle corner case, the item passed to removeItem() was the only on in the list, list is empty now, nothing to replace.
  5979. (WebCore::SVGListProperty::appendItemValuesAndWrappers):
  5980. (WebCore::SVGListProperty::role): Expose the role of this list property.
  5981. * svg/properties/SVGPathSegListPropertyTearOff.h: s/TYPE_MISMATCH_ERR/SVGException::SVG_WRONG_TYPE_ERR/ for compatibility with Firefox.
  5982. (WebCore::SVGPathSegListPropertyTearOff::initialize):
  5983. (WebCore::SVGPathSegListPropertyTearOff::insertItemBefore):
  5984. (WebCore::SVGPathSegListPropertyTearOff::replaceItem):
  5985. (WebCore::SVGPathSegListPropertyTearOff::appendItem):
  5986. * svg/properties/SVGProperty.h: Add new virtual SVGPropertyRole role() accessor.
  5987. * svg/properties/SVGPropertyTearOff.h:
  5988. (WebCore::SVGPropertyTearOff::create): Store the passed in SVGProperyRole, instead of ignoring it.
  5989. (WebCore::SVGPropertyTearOff::role):
  5990. (WebCore::SVGPropertyTearOff::SVGPropertyTearOff):
  5991. * svg/properties/SVGStaticPropertyTearOff.h:
  5992. (WebCore::SVGStaticPropertyTearOff::SVGStaticPropertyTearOff): Pass UndefinedRole as default role to SVGPropertyTearOff.
  5993. * svg/properties/SVGStaticPropertyWithParentTearOff.h: Ditto.
  5994. (WebCore::SVGStaticPropertyWithParentTearOff::SVGStaticPropertyWithParentTearOff):
  5995. 2010-11-22 Yuzo Fujishima <yuzo@google.com>
  5996. Reviewed by Dan Bernstein.
  5997. Fix for Bug 49374 - Web Font specified with base64 data URI ending with EOT is not rendered.
  5998. https://bugs.webkit.org/show_bug.cgi?id=49374
  5999. Test: fast/css/font-face-data-uri.html
  6000. * css/CSSFontFaceSrcValue.cpp:
  6001. (WebCore::CSSFontFaceSrcValue::isSupportedFormat): Do not check "file
  6002. extension" for data URI. For other URI, check against ".eot" rather
  6003. than "eot".
  6004. 2010-11-21 Patrick Gansterer <paroga@webkit.org>
  6005. Reviewed by Csaba Osztrogonác.
  6006. Use WTF_ARRAY_LENGTH in WebCore directory
  6007. https://bugs.webkit.org/show_bug.cgi?id=49882
  6008. * accessibility/AccessibilityObject.cpp:
  6009. (WebCore::createARIARoleMap):
  6010. * bindings/js/JSDOMWindowBase.cpp:
  6011. (WebCore::JSDOMWindowBase::JSDOMWindowBase):
  6012. * bindings/scripts/CodeGeneratorV8.pm:
  6013. * bindings/scripts/test/V8/V8TestObj.cpp:
  6014. (WebCore::ConfigureV8TestObjTemplate):
  6015. * css/CSSComputedStyleDeclaration.cpp:
  6016. * css/CSSMutableStyleDeclaration.cpp:
  6017. (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
  6018. * css/CSSParser.cpp:
  6019. (WebCore::CSSParser::parseAnimationShorthand):
  6020. (WebCore::CSSParser::parseTransitionShorthand):
  6021. * css/CSSPropertyLonghand.cpp:
  6022. (WebCore::initShorthandMap):
  6023. * dom/ExceptionCode.cpp:
  6024. (WebCore::getExceptionCodeDescription):
  6025. * editing/ApplyStyleCommand.cpp:
  6026. (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement):
  6027. * editing/EditingStyle.cpp:
  6028. * editing/Editor.cpp:
  6029. (WebCore::triStateOfStyle):
  6030. * editing/EditorCommand.cpp:
  6031. (WebCore::createCommandMap):
  6032. * editing/MarkupAccumulator.cpp:
  6033. (WebCore::appendCharactersReplacingEntities):
  6034. * html/canvas/WebGLBuffer.cpp:
  6035. (WebCore::WebGLBuffer::getCachedMaxIndex):
  6036. (WebCore::WebGLBuffer::setCachedMaxIndex):
  6037. * loader/FTPDirectoryParser.cpp:
  6038. (WebCore::parseOneFTPLine):
  6039. * mathml/RenderMathMLOperator.cpp:
  6040. (WebCore::RenderMathMLOperator::updateFromElement):
  6041. * page/animation/AnimationBase.cpp:
  6042. (WebCore::addShorthandProperties):
  6043. * rendering/RenderTextControl.cpp:
  6044. (WebCore::RenderTextControl::hasValidAvgCharWidth):
  6045. * rendering/break_lines.cpp:
  6046. * svg/SVGTransformable.cpp:
  6047. (WebCore::parseAndSkipType):
  6048. * svg/SVGViewSpec.cpp:
  6049. (WebCore::SVGViewSpec::parseViewSpec):
  6050. * svg/SVGZoomAndPan.cpp:
  6051. (WebCore::SVGZoomAndPan::parseZoomAndPan):
  6052. * xml/XPathFunctions.cpp:
  6053. (WebCore::XPath::createFunctionMap):
  6054. 2010-11-21 Mario Sanchez Prada <msanchez@igalia.com>
  6055. Reviewed by Chris Fleizach.
  6056. [GTK] Implement ROLE_COMBO_BOX
  6057. https://bugs.webkit.org/show_bug.cgi?id=25678
  6058. Implement the remaining bits for combo boxes.
  6059. This patch finishes the implementation, from the point of view of
  6060. the Atk library, of those objects exposed to ATK as combo boxes,
  6061. and their related elements (menus and menu items). It therefore
  6062. implements the proper interfaces for each type of object related
  6063. to combo boxes (AtkSelection for the combo box, AtkText for every
  6064. menu item and AtkAction for the combo box, the menu and the menu
  6065. items), takes care of emitting the proper signals when focus or a
  6066. given a selection changes and adds a new unit test to check all
  6067. this new stuff.
  6068. Make possible to ask an AccessibleMenuListOption for a sensible
  6069. string representation, so far only available through the private
  6070. and MSAA related method nameForMSAA. Just moved the implementation
  6071. of that method to an overriden version of stringValue(), which is
  6072. platform independent, and called that from nameForMSAA().
  6073. * accessibility/AccessibilityMenuListOption.h:
  6074. * accessibility/AccessibilityMenuListOption.cpp:
  6075. (WebCore::AccessibilityMenuListOption::nameForMSAA): Just call to
  6076. stringValue(), which holds from now on that used to be here.
  6077. (WebCore::AccessibilityMenuListOption::stringValue): New, override
  6078. of AccessibilityObject::stringValue() to return a proper string.
  6079. Emit the missing signals when a selection is made.
  6080. * accessibility/gtk/AXObjectCacheAtk.cpp:
  6081. (WebCore::AXObjectCache::postPlatformNotification): Emit the usual
  6082. 'focus' signals when a selection is made over the combo box.
  6083. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  6084. (setAtkStateSetFromCoreObject): Ensure the EXPANDABLE and EXPANDED
  6085. Atk states are added to the state set when needed.
  6086. (listObjectForSelection): New, returns the proper list object (the
  6087. one holding the list of available options as its children) for an
  6088. specific AtkObject implementing AtkSelection. This is needed
  6089. because sometimes the selectable options are not directly children
  6090. of the AtkSelection object (i.e. a combo box has a 'menu' object
  6091. as its only child of it, holding the list of options as children).
  6092. (optionFromList): Use listObjectForSelection() to get the actual
  6093. object holding the list of children as the available options.
  6094. (optionFromSelection): Add support for combo boxes.
  6095. (webkit_accessible_selection_add_selection): Ditto.
  6096. (webkit_accessible_selection_clear_selection): Ditto.
  6097. (webkit_accessible_selection_get_selection_count): Ditto.
  6098. (webkit_accessible_selection_is_child_selected): Ditto.
  6099. (webkit_accessible_selection_remove_selection): Ditto.
  6100. (webkit_accessible_text_get_text): Makes sure stringValue() is
  6101. considered to get the result substring when it was already
  6102. considered when checking the maximum text length for the object.
  6103. (getInterfaceMaskFromObject): Make sure the AtkSelection interface
  6104. is implemented for the combo boxes, that the AtkText is
  6105. implemented for the menu items and that the AtkAction interface is
  6106. now implemented for every object (WebCore will decide what to do).
  6107. Avoid a segfault crash when using this from unit tests.
  6108. * platform/gtk/PopupMenuGtk.cpp:
  6109. (WebCore::PopupMenuGtk::show): Make sure we got a valid GdkWindow
  6110. before calling gdk_window_get_origin() over it.
  6111. 2010-11-21 Patrick Gansterer <paroga@webkit.org>
  6112. Reviewed by Csaba Osztrogonác.
  6113. Use WTF_ARRAY_LENGTH in WebCore/platform directory
  6114. https://bugs.webkit.org/show_bug.cgi?id=49881
  6115. * platform/KURL.cpp:
  6116. (WebCore::portAllowed):
  6117. * platform/KURLGoogle.cpp:
  6118. (WebCore::portAllowed):
  6119. * platform/MIMETypeRegistry.cpp:
  6120. (WebCore::initializeSupportedImageMIMETypes):
  6121. (WebCore::initializeSupportedJavaScriptMIMETypes):
  6122. (WebCore::initializeSupportedNonImageMimeTypes):
  6123. * platform/UUID.cpp:
  6124. (WebCore::createCanonicalUUIDString):
  6125. * platform/efl/RenderThemeEfl.cpp:
  6126. (WebCore::RenderThemeEfl::applyEdjeStateFromForm):
  6127. * platform/graphics/GraphicsTypes.cpp:
  6128. * platform/graphics/chromium/FontCacheChromiumWin.cpp:
  6129. (WebCore::FontCodepage::if):
  6130. * platform/graphics/chromium/FontUtilsChromiumWin.cpp:
  6131. * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
  6132. (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
  6133. * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
  6134. (WebCore::disableComponentsOnce):
  6135. * platform/graphics/mac/SimpleFontDataATSUI.mm:
  6136. (WebCore::SimpleFontData::checkShapesArabic):
  6137. * platform/graphics/mac/SimpleFontDataCoreText.cpp:
  6138. (WebCore::SimpleFontData::getCFStringAttributes):
  6139. * platform/graphics/win/GraphicsContextCGWin.cpp:
  6140. (WebCore::GraphicsContext::drawLineForTextChecking):
  6141. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
  6142. (WebCore::disableComponentsOnce):
  6143. * platform/graphics/win/QTMovie.cpp:
  6144. (QTMovie::load):
  6145. * platform/network/cf/SocketStreamHandleCFNet.cpp:
  6146. (WebCore::SocketStreamHandle::createStreams):
  6147. * platform/text/TextEncodingRegistry.cpp:
  6148. (WebCore::pruneBlacklistedCodecs):
  6149. * platform/text/transcoder/FontTranscoder.cpp:
  6150. (WebCore::FontTranscoder::FontTranscoder):
  6151. 2010-11-20 Andreas Kling <kling@webkit.org>
  6152. Rubber-stamped by Antonio Gomes.
  6153. [Qt] Fix spelling error (isEmtpyValue -> isEmptyValue)
  6154. * platform/graphics/qt/FontPlatformDataQt.cpp:
  6155. (WebCore::isEmptyValue):
  6156. (WebCore::FontPlatformData::FontPlatformData):
  6157. 2010-11-20 Andreas Kling <kling@webkit.org>
  6158. Reviewed by Antonio Gomes.
  6159. [Qt] Limit the size of image preview "cursor" when dragging
  6160. https://bugs.webkit.org/show_bug.cgi?id=49872
  6161. Respect DragController::maxDragImageSize() (currently 400x400.)
  6162. * platform/qt/DragImageQt.cpp:
  6163. (WebCore::dragImageSize):
  6164. (WebCore::scaleDragImage):
  6165. 2010-11-20 Andreas Kling <kling@webkit.org>
  6166. Reviewed by Antonio Gomes.
  6167. [Qt] Dragging a selection should use a rendering of the selection as "cursor" for the drag
  6168. https://bugs.webkit.org/show_bug.cgi?id=49870
  6169. Implement Frame::dragImageForSelection() and the necessary DragImage helpers for Qt.
  6170. * page/qt/FrameQt.cpp:
  6171. (WebCore::Frame::dragImageForSelection):
  6172. * platform/qt/DragImageQt.cpp:
  6173. (WebCore::deleteDragImage):
  6174. (WebCore::createDragImageFromImage):
  6175. 2010-11-20 Xan Lopez <xlopez@igalia.com>
  6176. Reviewed by Martin Robinson.
  6177. [GTK] Memory managament for DOM GObject wrappers
  6178. https://bugs.webkit.org/show_bug.cgi?id=40302
  6179. Initial attempt to have a kind of poor man's garbage collection
  6180. for GObject DOM objects. We tie the object's lifecycle to their
  6181. parent Frame and/or its document; that is, all objects will be
  6182. collected when their parent frame is destroyed or when that frame
  6183. transitions to a new document. Manual management (calling
  6184. g_object_unref on them) is also allowed, and is required for
  6185. objects that are not in the DOM tree (eg NodeLists).
  6186. * GNUmakefile.am:
  6187. * bindings/gobject/DOMObjectCache.cpp: Added.
  6188. * bindings/gobject/DOMObjectCache.h: Copied from WebCore/bindings/gobject/WebKitDOMBinding.h.
  6189. * bindings/gobject/WebKitDOMBinding.cpp: Remove the old cache code.
  6190. * bindings/gobject/WebKitDOMBinding.h: ditto.
  6191. * bindings/scripts/CodeGeneratorGObject.pm: include the new DOMObjectCache header.
  6192. 2010-11-20 Helder Correia <helder@sencha.com>
  6193. Reviewed by Andreas Kling.
  6194. [Qt] Path stroke lacks blur shadow support
  6195. https://bugs.webkit.org/show_bug.cgi?id=49490
  6196. Add blur shadow support to strokePath().
  6197. Test: fast/canvas/canvas-strokePath-shadow.html
  6198. * platform/graphics/qt/GraphicsContextQt.cpp:
  6199. (WebCore::GraphicsContext::strokePath):
  6200. 2010-11-20 Kwang Yul Seo <skyul@company100.net>
  6201. Reviewed by David Kilzer.
  6202. [BREWMP] Replace HTONL, HTONS, NTOHL and NTOHS with byte order conversion functions from AEEstd.h
  6203. https://bugs.webkit.org/show_bug.cgi?id=49518
  6204. HTONL, HTONS, NTOHL and NTOHS macros are prohibited in Mod1. Use byte order conversion functions provided by AEEstd.h.
  6205. * platform/graphics/WOFFFileFormat.cpp:
  6206. 2010-11-20 Kwang Yul Seo <skyul@company100.net>
  6207. Reviewed by David Kilzer.
  6208. [BREWMP] Use std_wstrlen instead of WSTRLEN
  6209. https://bugs.webkit.org/show_bug.cgi?id=49516
  6210. WSTRLEN is prohibited in Mod1. Use std_wstrlen from AEEstd.h instead.
  6211. * platform/text/brew/StringBrew.cpp:
  6212. (WTF::String::String):
  6213. 2010-11-20 Patrick Gansterer <paroga@webkit.org>
  6214. Reviewed by David Kilzer.
  6215. [WINCE] Implement textBreakLast and textBreakPrevious
  6216. https://bugs.webkit.org/show_bug.cgi?id=49552
  6217. This allows us to use TextBoundaries.cpp and remove TextBoundariesWinCE.cpp.
  6218. Also unify the different TextBreakIterator::first() implementations.
  6219. * platform/text/wince/TextBoundariesWinCE.cpp: Removed.
  6220. * platform/text/wince/TextBreakIteratorWinCE.cpp:
  6221. (WebCore::TextBreakIterator::first):
  6222. (WebCore::TextBreakIterator::last):
  6223. (WebCore::textBreakLast):
  6224. (WebCore::textBreakPrevious):
  6225. 2010-11-20 Andreas Kling <kling@webkit.org>
  6226. Reviewed by David Kilzer.
  6227. Path: Remove unused method swap()
  6228. https://bugs.webkit.org/show_bug.cgi?id=49853
  6229. * platform/graphics/Path.h:
  6230. 2010-11-20 David Kilzer <ddkilzer@apple.com>
  6231. <http://webkit.org/b/49867> MediaPlayerPrivateQTKit::setPreservesPitch(bool) leaks an NSDictionary
  6232. Reviewed by Dan Bernstein.
  6233. * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
  6234. (WebCore::MediaPlayerPrivateQTKit::setPreservesPitch): Use
  6235. RetainPtr<NSDictionary> for movieAttributes.
  6236. 2010-11-20 Patrick Gansterer <paroga@webkit.org>
  6237. Reviewed by Andreas Kling.
  6238. Use String::fromUTF8 instead of UTF8Encoding().decode
  6239. in the libxml XMLDocumentParser
  6240. https://bugs.webkit.org/show_bug.cgi?id=45488
  6241. * dom/XMLDocumentParser.cpp:
  6242. (WebCore::toString):
  6243. 2010-11-20 Renata Hodovan <reni@inf.u-szeged.hu>
  6244. Reviewed by Dirk Schulze.
  6245. FilterPrimitives should have a pointer to its Filter object.
  6246. https://bugs.webkit.org/show_bug.cgi?id=49863
  6247. FilterPrimitives should have a renderer, and they need a member pointer to their Filter objects for Layout() calls.
  6248. This patch adds this member to FilterEffect.
  6249. No new test is needed because these modifications are covered by all of SVG Filter tests.
  6250. * platform/graphics/filters/FEBlend.cpp:
  6251. (WebCore::FEBlend::FEBlend):
  6252. (WebCore::FEBlend::create):
  6253. (WebCore::FEBlend::apply):
  6254. * platform/graphics/filters/FEBlend.h:
  6255. * platform/graphics/filters/FEColorMatrix.cpp:
  6256. (WebCore::FEColorMatrix::FEColorMatrix):
  6257. (WebCore::FEColorMatrix::create):
  6258. (WebCore::FEColorMatrix::apply):
  6259. * platform/graphics/filters/FEColorMatrix.h:
  6260. * platform/graphics/filters/FEComponentTransfer.cpp:
  6261. (WebCore::FEComponentTransfer::FEComponentTransfer):
  6262. (WebCore::FEComponentTransfer::create):
  6263. (WebCore::FEComponentTransfer::apply):
  6264. * platform/graphics/filters/FEComponentTransfer.h:
  6265. * platform/graphics/filters/FEComposite.cpp:
  6266. (WebCore::FEComposite::FEComposite):
  6267. (WebCore::FEComposite::create):
  6268. (WebCore::FEComposite::determineAbsolutePaintRect):
  6269. (WebCore::FEComposite::apply):
  6270. * platform/graphics/filters/FEComposite.h:
  6271. * platform/graphics/filters/FEConvolveMatrix.cpp:
  6272. (WebCore::FEConvolveMatrix::FEConvolveMatrix):
  6273. (WebCore::FEConvolveMatrix::create):
  6274. (WebCore::FEConvolveMatrix::apply):
  6275. * platform/graphics/filters/FEConvolveMatrix.h:
  6276. (WebCore::FEConvolveMatrix::determineAbsolutePaintRect):
  6277. * platform/graphics/filters/FEDiffuseLighting.cpp:
  6278. (WebCore::FEDiffuseLighting::FEDiffuseLighting):
  6279. (WebCore::FEDiffuseLighting::create):
  6280. * platform/graphics/filters/FEDiffuseLighting.h:
  6281. * platform/graphics/filters/FEDisplacementMap.cpp:
  6282. (WebCore::FEDisplacementMap::FEDisplacementMap):
  6283. (WebCore::FEDisplacementMap::create):
  6284. (WebCore::FEDisplacementMap::apply):
  6285. * platform/graphics/filters/FEDisplacementMap.h:
  6286. (WebCore::FEDisplacementMap::determineAbsolutePaintRect):
  6287. * platform/graphics/filters/FEFlood.cpp:
  6288. (WebCore::FEFlood::FEFlood):
  6289. (WebCore::FEFlood::create):
  6290. (WebCore::FEFlood::apply):
  6291. * platform/graphics/filters/FEFlood.h:
  6292. (WebCore::FEFlood::determineAbsolutePaintRect):
  6293. * platform/graphics/filters/FEGaussianBlur.cpp:
  6294. (WebCore::FEGaussianBlur::FEGaussianBlur):
  6295. (WebCore::FEGaussianBlur::create):
  6296. (WebCore::FEGaussianBlur::determineAbsolutePaintRect):
  6297. (WebCore::FEGaussianBlur::apply):
  6298. * platform/graphics/filters/FEGaussianBlur.h:
  6299. * platform/graphics/filters/FELighting.cpp:
  6300. (WebCore::FELighting::FELighting):
  6301. (WebCore::FELighting::apply):
  6302. * platform/graphics/filters/FELighting.h:
  6303. (WebCore::FELighting::determineAbsolutePaintRect):
  6304. * platform/graphics/filters/FEMerge.cpp:
  6305. (WebCore::FEMerge::FEMerge):
  6306. (WebCore::FEMerge::create):
  6307. (WebCore::FEMerge::apply):
  6308. * platform/graphics/filters/FEMerge.h:
  6309. * platform/graphics/filters/FEMorphology.cpp:
  6310. (WebCore::FEMorphology::FEMorphology):
  6311. (WebCore::FEMorphology::create):
  6312. (WebCore::FEMorphology::determineAbsolutePaintRect):
  6313. (WebCore::FEMorphology::apply):
  6314. * platform/graphics/filters/FEMorphology.h:
  6315. * platform/graphics/filters/FEOffset.cpp:
  6316. (WebCore::FEOffset::FEOffset):
  6317. (WebCore::FEOffset::create):
  6318. (WebCore::FEOffset::determineAbsolutePaintRect):
  6319. (WebCore::FEOffset::apply):
  6320. * platform/graphics/filters/FEOffset.h:
  6321. * platform/graphics/filters/FESpecularLighting.cpp:
  6322. (WebCore::FESpecularLighting::FESpecularLighting):
  6323. (WebCore::FESpecularLighting::create):
  6324. * platform/graphics/filters/FESpecularLighting.h:
  6325. * platform/graphics/filters/FETile.cpp:
  6326. (WebCore::FETile::FETile):
  6327. (WebCore::FETile::create):
  6328. (WebCore::FETile::apply):
  6329. * platform/graphics/filters/FETile.h:
  6330. (WebCore::FETile::determineAbsolutePaintRect):
  6331. * platform/graphics/filters/FETurbulence.cpp:
  6332. (WebCore::FETurbulence::FETurbulence):
  6333. (WebCore::FETurbulence::create):
  6334. (WebCore::FETurbulence::apply):
  6335. * platform/graphics/filters/FETurbulence.h:
  6336. (WebCore::FETurbulence::determineAbsolutePaintRect):
  6337. * platform/graphics/filters/FilterEffect.cpp:
  6338. (WebCore::FilterEffect::FilterEffect):
  6339. (WebCore::FilterEffect::determineAbsolutePaintRect):
  6340. (WebCore::FilterEffect::effectContext):
  6341. * platform/graphics/filters/FilterEffect.h:
  6342. (WebCore::FilterEffect::filter):
  6343. * platform/graphics/filters/SourceAlpha.cpp:
  6344. (WebCore::SourceAlpha::create):
  6345. (WebCore::SourceAlpha::determineAbsolutePaintRect):
  6346. (WebCore::SourceAlpha::apply):
  6347. * platform/graphics/filters/SourceAlpha.h:
  6348. (WebCore::SourceAlpha::SourceAlpha):
  6349. * platform/graphics/filters/SourceGraphic.cpp:
  6350. (WebCore::SourceGraphic::create):
  6351. (WebCore::SourceGraphic::determineAbsolutePaintRect):
  6352. (WebCore::SourceGraphic::apply):
  6353. * platform/graphics/filters/SourceGraphic.h:
  6354. (WebCore::SourceGraphic::SourceGraphic):
  6355. * rendering/RenderSVGResourceFilter.cpp:
  6356. (WebCore::RenderSVGResourceFilter::buildPrimitives):
  6357. (WebCore::RenderSVGResourceFilter::applyResource):
  6358. (WebCore::RenderSVGResourceFilter::postApplyResource):
  6359. * rendering/RenderSVGResourceFilter.h:
  6360. * rendering/SVGRenderTreeAsText.cpp:
  6361. (WebCore::writeSVGResourceContainer):
  6362. * svg/SVGFEBlendElement.cpp:
  6363. (WebCore::SVGFEBlendElement::build):
  6364. * svg/SVGFEBlendElement.h:
  6365. * svg/SVGFEColorMatrixElement.cpp:
  6366. (WebCore::SVGFEColorMatrixElement::build):
  6367. * svg/SVGFEColorMatrixElement.h:
  6368. * svg/SVGFEComponentTransferElement.cpp:
  6369. (WebCore::SVGFEComponentTransferElement::build):
  6370. * svg/SVGFEComponentTransferElement.h:
  6371. * svg/SVGFECompositeElement.cpp:
  6372. (WebCore::SVGFECompositeElement::build):
  6373. * svg/SVGFECompositeElement.h:
  6374. * svg/SVGFEConvolveMatrixElement.cpp:
  6375. (WebCore::SVGFEConvolveMatrixElement::build):
  6376. * svg/SVGFEConvolveMatrixElement.h:
  6377. * svg/SVGFEDiffuseLightingElement.cpp:
  6378. (WebCore::SVGFEDiffuseLightingElement::build):
  6379. * svg/SVGFEDiffuseLightingElement.h:
  6380. * svg/SVGFEDisplacementMapElement.cpp:
  6381. (WebCore::SVGFEDisplacementMapElement::build):
  6382. * svg/SVGFEDisplacementMapElement.h:
  6383. * svg/SVGFEFloodElement.cpp:
  6384. (WebCore::SVGFEFloodElement::build):
  6385. * svg/SVGFEFloodElement.h:
  6386. * svg/SVGFEGaussianBlurElement.cpp:
  6387. (WebCore::SVGFEGaussianBlurElement::build):
  6388. * svg/SVGFEGaussianBlurElement.h:
  6389. * svg/SVGFEImageElement.cpp:
  6390. (WebCore::SVGFEImageElement::build):
  6391. * svg/SVGFEImageElement.h:
  6392. * svg/SVGFEMergeElement.cpp:
  6393. (WebCore::SVGFEMergeElement::build):
  6394. * svg/SVGFEMergeElement.h:
  6395. * svg/SVGFEMorphologyElement.cpp:
  6396. (WebCore::SVGFEMorphologyElement::build):
  6397. * svg/SVGFEMorphologyElement.h:
  6398. * svg/SVGFEOffsetElement.cpp:
  6399. (WebCore::SVGFEOffsetElement::build):
  6400. * svg/SVGFEOffsetElement.h:
  6401. * svg/SVGFESpecularLightingElement.cpp:
  6402. (WebCore::SVGFESpecularLightingElement::build):
  6403. * svg/SVGFESpecularLightingElement.h:
  6404. * svg/SVGFETileElement.cpp:
  6405. (WebCore::SVGFETileElement::build):
  6406. * svg/SVGFETileElement.h:
  6407. * svg/SVGFETurbulenceElement.cpp:
  6408. (WebCore::SVGFETurbulenceElement::build):
  6409. * svg/SVGFETurbulenceElement.h:
  6410. * svg/SVGFilterPrimitiveStandardAttributes.h:
  6411. * svg/graphics/filters/SVGFEImage.cpp:
  6412. (WebCore::FEImage::FEImage):
  6413. (WebCore::FEImage::create):
  6414. (WebCore::FEImage::determineAbsolutePaintRect):
  6415. (WebCore::FEImage::apply):
  6416. * svg/graphics/filters/SVGFEImage.h:
  6417. * svg/graphics/filters/SVGFilterBuilder.cpp:
  6418. (WebCore::SVGFilterBuilder::SVGFilterBuilder):
  6419. * svg/graphics/filters/SVGFilterBuilder.h:
  6420. (WebCore::SVGFilterBuilder::create):
  6421. 2010-11-20 Helder Correia <helder@sencha.com>
  6422. Reviewed by Andreas Kling.
  6423. [Qt] GraphicsContext::strokeArc() is not necessary any more
  6424. https://bugs.webkit.org/show_bug.cgi?id=49859
  6425. Remove strokeArc() from the Qt port.
  6426. No test is needed.
  6427. * platform/graphics/qt/GraphicsContextQt.cpp:
  6428. 2010-11-20 Helder Correia <helder@sencha.com>
  6429. Reviewed by Andreas Kling.
  6430. [Qt] Path fill lacks blur shadow support
  6431. https://bugs.webkit.org/show_bug.cgi?id=49491
  6432. Add blur shadow support to fillPath().
  6433. Test: fast/canvas/canvas-fillPath-shadow.html
  6434. * platform/graphics/qt/GraphicsContextQt.cpp:
  6435. (WebCore::GraphicsContext::fillPath):
  6436. 2010-11-19 W. James MacLean <wjmaclean@chromium.org>
  6437. Reviewed by James Robinson.
  6438. Scaled Resized images are blurred when sent to Skia
  6439. https://bugs.webkit.org/show_bug.cgi?id=42370
  6440. This patch modifies ImageSkia.cpp to fix the calculation of resampled
  6441. bitmap sizes so as to include the transform matrix of the canvas.
  6442. Includes a new test to catch a regression that occured the first time
  6443. this patch was applied.
  6444. Tests: svg/custom/image-rescale-scroll.html
  6445. svg/custom/image-rescale.svg
  6446. * platform/graphics/skia/ImageSkia.cpp:
  6447. (WebCore::computeResamplingMode):
  6448. (WebCore::drawResampledBitmap):
  6449. 2010-11-19 Jia Pu <jpu@apple.com>
  6450. Reviewed by Dan Bernstein.
  6451. Regression: contraction is considered misspelling.
  6452. https://bugs.webkit.org/show_bug.cgi?id=49423
  6453. <rdar://problem/8654206>
  6454. Test: platform/mac/editing/spelling/autocorrection-contraction.html
  6455. manual-tests/autocorrection/autocorrection-contraction.html
  6456. * editing/Editor.cpp:
  6457. (WebCore::isAmbiguousBoundaryCharacter): Moved function to the top of the file so that it can
  6458. be used by all other functions in the file.
  6459. (WebCore::Editor::markMisspellingsAfterTypingToWord): Renamed markMisspellingsAfterTypingToPosition()
  6460. to improve readability, and to pass in additional argument. Before we apply pending
  6461. autocorrection, we check to see if currently typed character makes current word a partial
  6462. contraction, for instance "wouldn'". If that's the case, we would not apply the pending
  6463. correction.
  6464. (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Make sure currently typed word
  6465. is not a partial contraction, such as "wouldn'", before mark it as misspelled. Also update
  6466. the location of ambiguous boundary if other replacements have changed the length of the
  6467. paragraph.
  6468. * editing/Editor.h:
  6469. * editing/TypingCommand.cpp:
  6470. (WebCore::TypingCommand::markMisspellingsAfterTyping): Adopt renamed function.
  6471. * manual-tests/autocorrection/autocorrection-contraction.html: Added.
  6472. 2010-11-19 Andreas Kling <kling@webkit.org>
  6473. Reviewed by Antonio Gomes.
  6474. ScrollView: Make delegatesScrolling() and avoidScrollbarCreation() const.
  6475. https://bugs.webkit.org/show_bug.cgi?id=49854
  6476. * page/FrameView.cpp:
  6477. (WebCore::FrameView::delegatesScrolling):
  6478. (WebCore::FrameView::avoidScrollbarCreation):
  6479. * page/FrameView.h:
  6480. * platform/ScrollView.h:
  6481. (WebCore::ScrollView::delegatesScrolling):
  6482. (WebCore::ScrollView::avoidScrollbarCreation):
  6483. 2010-11-19 Pavel Podivilov <podivilov@chromium.org>
  6484. Reviewed by Yury Semikhatsky.
  6485. Web Inspector: scripts panel should be shown before execution line is scrolled into view.
  6486. https://bugs.webkit.org/show_bug.cgi?id=49792
  6487. * inspector/front-end/ScriptsPanel.js:
  6488. (WebInspector.ScriptsPanel.prototype.debuggerPaused):
  6489. 2010-11-19 James Simonsen <simonjam@chromium.org>
  6490. Reviewed by Tony Chang.
  6491. [chromium] Fix whitespace character handling in complex text on linux
  6492. https://bugs.webkit.org/show_bug.cgi?id=49771
  6493. * platform/graphics/SimpleFontData.h:
  6494. (WebCore::SimpleFontData::isZeroWidthSpaceGlyph): Added.
  6495. (WebCore::SimpleFontData::boundsForGlyph): Use isZeroWidthSpaceGlyph().
  6496. (WebCore::SimpleFontData::widthForGlyph): Use isZeroWidthSpaceGlyph().
  6497. * platform/graphics/chromium/FontLinux.cpp:
  6498. (WebCore::TextRunWalker::nextScriptRun): Cache currently used font data.
  6499. (WebCore::TextRunWalker::setGlyphXPositions): Skip zero width spaces.
  6500. (WebCore::TextRunWalker::normalizeSpacesAndMirrorChars): Normalize zero width spaces.
  6501. (WebCore::TextRunWalker::getNormalizedTextRun):
  6502. 2010-11-19 Steve Falkenburg <sfalken@apple.com>
  6503. Reviewed by Adam Roben.
  6504. Add Debug_Cairo_CFLite and Release_Cairo_CFLite configurations for all vcproj files
  6505. https://bugs.webkit.org/show_bug.cgi?id=49819
  6506. * WebCore.vcproj/QTMovieWin.vcproj:
  6507. * WebCore.vcproj/WebCore.vcproj:
  6508. * WebCore.vcproj/WebCoreGenerated.vcproj:
  6509. 2010-11-19 Brady Eidson <beidson@apple.com>
  6510. Reviewed by Darin Adler.
  6511. <rdar://problem/8613727> and https://bugs.webkit.org/show_bug.cgi?id=49836
  6512. Add WebKit2 API relevant to customization of context menus
  6513. * WebCore.exp.in:
  6514. 2010-11-19 Michael Saboff <msaboff@apple.com>
  6515. Reviewed by Sam Weinig.
  6516. Removed import of DOMSVGAnimatedPathData.h to fix build.
  6517. * bindings/objc/DOMSVG.h:
  6518. 2010-11-19 Avi Drissman <avi@google.com>
  6519. Reviewed by Antonio Gomes.
  6520. Complete support for Unix editing mode
  6521. https://bugs.webkit.org/show_bug.cgi?id=49757
  6522. * page/Settings.cpp:
  6523. (WebCore::Settings::Settings):
  6524. * page/Settings.h:
  6525. 2010-11-19 Nate Chapin <japhet@chromium.org>
  6526. Reviewed by Alexey Proskuryakov.
  6527. Remove requests from ResourceLoadScheduler's queue before
  6528. actually starting them. We're holding a RefPtr anyway, and
  6529. the load might be terminated and removed from the queue synchronously.
  6530. https://bugs.webkit.org/show_bug.cgi?id=49693
  6531. Test: fast/loader/subresource-willSendRequest-null.html
  6532. * loader/ResourceLoadScheduler.cpp:
  6533. (WebCore::ResourceLoadScheduler::servePendingRequests):
  6534. 2010-11-18 Zhenyao Mo <zmo@google.com>
  6535. Reviewed by Kenneth Russell.
  6536. Make sure is* return false if the name is never bound
  6537. https://bugs.webkit.org/show_bug.cgi?id=49767
  6538. * html/canvas/WebGLBuffer.h: Add function to check whether the buffer has been bound before.
  6539. (WebCore::WebGLBuffer::hasEverBeenBound):
  6540. * html/canvas/WebGLFramebuffer.cpp: Ditto.
  6541. (WebCore::WebGLFramebuffer::WebGLFramebuffer):
  6542. * html/canvas/WebGLFramebuffer.h: Ditto.
  6543. (WebCore::WebGLFramebuffer::hasEverBeenBound):
  6544. (WebCore::WebGLFramebuffer::setBound):
  6545. * html/canvas/WebGLRenderbuffer.cpp: Ditto.
  6546. (WebCore::WebGLRenderbuffer::WebGLRenderbuffer):
  6547. * html/canvas/WebGLRenderbuffer.h: Ditto.
  6548. (WebCore::WebGLRenderbuffer::hasEverBeenBound):
  6549. (WebCore::WebGLRenderbuffer::setBound):
  6550. * html/canvas/WebGLRenderingContext.cpp:
  6551. (WebCore::WebGLRenderingContext::bindFramebuffer): Set bound status to true.
  6552. (WebCore::WebGLRenderingContext::bindRenderbuffer): Ditto.
  6553. (WebCore::WebGLRenderingContext::isBuffer): Return false if it's never bound.
  6554. (WebCore::WebGLRenderingContext::isFramebuffer): Ditto.
  6555. (WebCore::WebGLRenderingContext::isRenderbuffer): Ditto.
  6556. (WebCore::WebGLRenderingContext::isTexture): Ditto.
  6557. * html/canvas/WebGLTexture.h: Add function to check whether the texture has been bound before.
  6558. (WebCore::WebGLTexture::hasEverBeenBound):
  6559. 2010-11-19 Benjamin Poulain <benjamin.poulain@nokia.com>
  6560. Reviewed by Kenneth Rohde Christiansen.
  6561. [Qt] mask-box-image renders wrong in certain conditions
  6562. https://bugs.webkit.org/show_bug.cgi?id=43476
  6563. Qt does not follow the same convention as the other port
  6564. when rendering a pixmap with null width of height. When one
  6565. of those dimension is null, we should ignore the painting call
  6566. to behave like the other ports.
  6567. * platform/graphics/qt/ImageQt.cpp:
  6568. (WebCore::Image::drawPattern):
  6569. 2010-11-18 Zhenyao Mo <zmo@google.com>
  6570. Reviewed by Kenneth Russell.
  6571. GraphicsContext3D::reshape is clearing using current clear color instead of transparent
  6572. https://bugs.webkit.org/show_bug.cgi?id=44064
  6573. * platform/graphics/gpu/DrawingBuffer.cpp:
  6574. (WebCore::DrawingBuffer::reset): Use 0 as clear values.
  6575. * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
  6576. (WebCore::GraphicsContext3D::reshape): Ditto.
  6577. 2010-11-19 Chris Rogers <crogers@google.com>
  6578. Reviewed by Darin Adler.
  6579. AudioContext should not include "HTMLNames.h"
  6580. https://bugs.webkit.org/show_bug.cgi?id=49680
  6581. No new tests since audio API is not yet implemented.
  6582. * webaudio/AudioContext.cpp:
  6583. 2010-11-19 Steve Falkenburg <sfalken@apple.com>
  6584. Reviewed by Darin Adler.
  6585. Normalize Cairo/CFLite project/solution configuration names
  6586. https://bugs.webkit.org/show_bug.cgi?id=49818
  6587. * WebCore.vcproj/WebCore.vcproj:
  6588. * WebCore.vcproj/WebCoreGenerated.vcproj:
  6589. 2010-11-19 Daniel Bates <dbates@rim.com>
  6590. Reviewed by Antonio Gomes.
  6591. Replace null checks of newParent in Frame::transferChildFrameToNewDocument() with ASSERT
  6592. https://bugs.webkit.org/show_bug.cgi?id=49489
  6593. Substitute ASSERT(newParent) for null-checks for newParent in
  6594. Frame::transferChildFrameToNewDocument() since newParent is
  6595. never null.
  6596. When Frame::transferChildFrameToNewDocument() is called the child
  6597. frame's owner element has already been transferred to the new
  6598. document D and D is attached (i.e. has a frame).
  6599. * page/Frame.cpp:
  6600. (WebCore::Frame::transferChildFrameToNewDocument):
  6601. 2010-11-19 Anders Carlsson <andersca@apple.com>
  6602. Reviewed by Sam Weinig.
  6603. Add SandboxExtension abstraction and use it for the injected bundle extension
  6604. https://bugs.webkit.org/show_bug.cgi?id=49817
  6605. Export fileSystemRepresentation symbol needed by WebKit2.
  6606. * WebCore.exp.in:
  6607. 2010-11-19 Steve Falkenburg <sfalken@apple.com>
  6608. Windows build fix. Remove leftover Debug_Internal use.
  6609. * WebCore.vcproj/WebCore.vcproj:
  6610. 2010-11-18 Steve Falkenburg <sfalken@apple.com>
  6611. Reviewed by Adam Roben.
  6612. Windows vcproj configuration names should be normalized across projects
  6613. https://bugs.webkit.org/show_bug.cgi?id=49776
  6614. * WebCore.vcproj/WebCore.sln:
  6615. * WebCore.vcproj/WebCore.submit.sln:
  6616. * WebCore.vcproj/WebCoreGenerated.vcproj:
  6617. * WebCore.vcproj/WebCoreGeneratedCairo.vsprops: Added.
  6618. * WebCore.vcproj/WebCoreGeneratedCommon.vsprops: Added.
  6619. 2010-11-19 James Simonsen <simonjam@chromium.org>
  6620. Reviewed by Darin Fisher.
  6621. [Web Timing] Add unloadEventStart
  6622. https://bugs.webkit.org/show_bug.cgi?id=49101
  6623. * loader/DocumentLoadTiming.h:
  6624. (WebCore::DocumentLoadTiming::DocumentLoadTiming):
  6625. * loader/FrameLoader.cpp:
  6626. (WebCore::FrameLoader::stopLoading): Use dispatchTimedEvent().
  6627. * page/DOMWindow.cpp:
  6628. (WebCore::DOMWindow::dispatchLoadEvent): Use dispatchTimedEvent().
  6629. (WebCore::DOMWindow::dispatchTimedEvent): Added.
  6630. * page/DOMWindow.h:
  6631. * page/Timing.cpp:
  6632. (WebCore::Timing::unloadEventStart):
  6633. * page/Timing.h:
  6634. * page/Timing.idl:
  6635. 2010-11-19 Martin Robinson <mrobinson@igalia.com>
  6636. Reviewed by Daniel Bates.
  6637. [GTK] fast/text/international tests are flaky on the bots
  6638. https://bugs.webkit.org/show_bug.cgi?id=49781
  6639. Beef up the == operator overload for Freetype FontPlatformData. Before
  6640. if two FontPlatformDatas had hash values which fell into the same bucket
  6641. and were similar enough, they would be evaluated as being equal, leading
  6642. to failures.
  6643. No new tests for this change. It's very hard to test, because it depends
  6644. on the memory address of new allocations. Hopefully flakiness on the bots
  6645. will go away after patch.
  6646. * platform/graphics/freetype/FontPlatformDataFreeType.cpp:
  6647. (WebCore::FontPlatformData::operator==): Beef up the == operator overload.
  6648. 2010-11-19 Benjamin Poulain <benjamin.poulain@nokia.com>
  6649. Reviewed by Kenneth Rohde Christiansen.
  6650. [Qt] mask-box-image renders wrong in certain conditions
  6651. https://bugs.webkit.org/show_bug.cgi?id=43476
  6652. When rendering a pixmap with a dest rect having a null dimension,
  6653. Qt uses the dimension of the Pixmap. The other ports do not render
  6654. anything by convention.
  6655. This patch change BitmapImage to follow the convention of other ports and do not
  6656. paint anything.
  6657. * platform/graphics/qt/ImageQt.cpp:
  6658. (WebCore::BitmapImage::draw):
  6659. 2010-11-19 Nikolas Zimmermann <nzimmermann@rim.com>
  6660. Reviewed by Dirk Schulze.
  6661. Don't call invalidateSVGAttributes() from the setFooBaseValue() methods
  6662. https://bugs.webkit.org/show_bug.cgi?id=49807
  6663. Covered by existing tests.
  6664. * svg/SVGComponentTransferFunctionElement.cpp:
  6665. (WebCore::SVGComponentTransferFunctionElement::parseMappedAttribute): Use setFooBaseValue(newList) instead of fooBaseValue() = newList;
  6666. * svg/SVGFEColorMatrixElement.cpp:
  6667. (WebCore::SVGFEColorMatrixElement::parseMappedAttribute): Ditto.
  6668. * svg/SVGFEConvolveMatrixElement.cpp:
  6669. (WebCore::SVGFEConvolveMatrixElement::parseMappedAttribute): Ditto.
  6670. * svg/SVGGradientElement.cpp:
  6671. (WebCore::SVGGradientElement::parseMappedAttribute): Ditto.
  6672. * svg/SVGPatternElement.cpp:
  6673. (WebCore::SVGPatternElement::parseMappedAttribute): Ditto.
  6674. * svg/SVGStyledTransformableElement.cpp:
  6675. (WebCore::SVGStyledTransformableElement::parseMappedAttribute): Ditto.
  6676. * svg/SVGTextElement.cpp:
  6677. (WebCore::SVGTextElement::parseMappedAttribute): Ditto.
  6678. * svg/SVGTextPositioningElement.cpp:
  6679. (WebCore::SVGTextPositioningElement::parseMappedAttribute): Ditto.
  6680. * svg/properties/SVGAnimatedPropertyMacros.h: Don't call invalidateSVGAttributes() in setFooBaseValue().
  6681. 2010-11-19 Sheriff Bot <webkit.review.bot@gmail.com>
  6682. Unreviewed, rolling out r72399.
  6683. http://trac.webkit.org/changeset/72399
  6684. https://bugs.webkit.org/show_bug.cgi?id=49805
  6685. Broke Chromium build (Requested by antonm_ on #webkit).
  6686. * page/chromium/ChromeClientChromium.h:
  6687. * platform/chromium/PopupMenuChromium.cpp:
  6688. (WebCore::PopupContainer::showPopup):
  6689. (WebCore::PopupContainer::showExternal):
  6690. (WebCore::PopupListBox::layout):
  6691. (WebCore::PopupMenuChromium::show):
  6692. * platform/chromium/PopupMenuChromium.h:
  6693. 2010-11-19 Yael Aharon <yael.aharon@nokia.com>
  6694. Reviewed by Antonio Gomes.
  6695. Focus ring in image maps does not take zooming into account
  6696. https://bugs.webkit.org/show_bug.cgi?id=49625
  6697. Take pageZoomFactor into account when calculating the path of the focus ring.
  6698. Test: fast/images/imagemap-focus-ring-zoom.html
  6699. * html/HTMLAreaElement.cpp:
  6700. (WebCore::HTMLAreaElement::getPath):
  6701. 2010-11-19 Nikolas Zimmermann <nzimmermann@rim.com>
  6702. Reviewed by Dirk Schulze.
  6703. SVGTransformList::consolidate() fails on empty lists
  6704. https://bugs.webkit.org/show_bug.cgi?id=49619
  6705. Return null in consolidate() when the list is empty, according to SVG 1.1.
  6706. Test: svg/dom/SVGTransformList-empty-list-consolidation.html
  6707. * svg/properties/SVGTransformListPropertyTearOff.h:
  6708. (WebCore::SVGTransformListPropertyTearOff::consolidate):
  6709. 2010-11-19 Jay Civelli <jcivelli@chromium.org>
  6710. Reviewed by David Levin.
  6711. [chromium] Removing the now unused code to show popup externally on Mac.
  6712. https://bugs.webkit.org/show_bug.cgi?id=49747
  6713. * page/chromium/ChromeClientChromium.h:
  6714. * platform/chromium/PopupMenuChromium.cpp:
  6715. (WebCore::PopupContainer::showPopup):
  6716. (WebCore::PopupListBox::layout):
  6717. (WebCore::PopupMenuChromium::show):
  6718. * platform/chromium/PopupMenuChromium.h:
  6719. 2010-11-18 Ilya Tikhonovsky <loislo@chromium.org>
  6720. Reviewed by Yury Semikhatsky.
  6721. Web Inspector: reduce the footprint of InspectorBackendDispatcher.
  6722. InspectorBackendDispatcher is a generated file.
  6723. Its content is not optimal and loc may be reduced by a quarter.
  6724. In each generated function we have a code for getting 'in' values from
  6725. the arguments properties object. I've extracted this code into separate getters.
  6726. The side effect is better readability of the generated code.
  6727. https://bugs.webkit.org/show_bug.cgi?id=49729
  6728. * inspector/CodeGeneratorInspector.pm:
  6729. 2010-11-19 John Knottenbelt <jknotten@chromium.org>
  6730. Reviewed by Jeremy Orlow.
  6731. Reentrant Geolocation tests crash with an assertion.
  6732. https://bugs.webkit.org/show_bug.cgi?id=39908
  6733. PositionErrors should not be sent to Geolocation watches or one shots
  6734. that are due to receive a valid cached position.
  6735. Test: fast/dom/Geolocation/maximum-age.html
  6736. * page/Geolocation.cpp:
  6737. (WebCore::Geolocation::sendError):
  6738. (WebCore::Geolocation::copyCachedNotifiers):
  6739. (WebCore::Geolocation::handleError):
  6740. * page/Geolocation.h:
  6741. 2010-11-19 Sam Magnuson <smagnuso@gmail.com>
  6742. Reviewed by Laszlo Gombos.
  6743. [Qt] Compile with QT_NO_CLIPBOARD
  6744. https://bugs.webkit.org/show_bug.cgi?id=49742
  6745. * platform/qt/PasteboardQt.cpp:
  6746. (WebCore::Pasteboard::canSmartReplace):
  6747. 2010-11-19 Nikolas Zimmermann <nzimmermann@rim.com>
  6748. Reviewed by Andreas Kling.
  6749. Remove more unused V8/SVG code
  6750. https://bugs.webkit.org/show_bug.cgi?id=49800
  6751. Remove DOMSVGObjectWithContextMap and all usages.
  6752. * bindings/scripts/CodeGeneratorV8.pm:
  6753. * bindings/v8/DOMDataStore.cpp:
  6754. (WebCore::DOMDataStore::DOMDataStore):
  6755. (WebCore::DOMDataStore::getDOMWrapperMap):
  6756. * bindings/v8/DOMDataStore.h:
  6757. (WebCore::DOMDataStore::domSvgElementInstanceMap):
  6758. * bindings/v8/ScopedDOMDataStore.cpp:
  6759. (WebCore::ScopedDOMDataStore::ScopedDOMDataStore):
  6760. (WebCore::ScopedDOMDataStore::~ScopedDOMDataStore):
  6761. * bindings/v8/StaticDOMDataStore.cpp:
  6762. (WebCore::StaticDOMDataStore::StaticDOMDataStore):
  6763. * bindings/v8/StaticDOMDataStore.h:
  6764. * bindings/v8/V8DOMMap.cpp:
  6765. (WebCore::removeAllDOMObjectsInCurrentThread):
  6766. * bindings/v8/V8DOMMap.h:
  6767. 2010-11-19 Zoltan Herczeg <zherczeg@webkit.org>
  6768. Reviewed by Nikolas Zimmermann.
  6769. createImageBuffer fail should be handled in the same way as other fails
  6770. https://bugs.webkit.org/show_bug.cgi?id=49799
  6771. When createImageBuffer fails (i.e the image width or height is less than
  6772. 0.5, which is rounded to 0) it just returs with false. Since the m_filter
  6773. hash map is not updated in this case, the filter image is not drawn.
  6774. Test: svg/filters/filter-rounding-issues.svg
  6775. * rendering/RenderSVGResourceFilter.cpp:
  6776. (WebCore::RenderSVGResourceFilter::applyResource):
  6777. 2010-11-19 Nikolas Zimmermann <nzimmermann@rim.com>
  6778. Reviewed by Andreas Kling.
  6779. Remove old style SVG DOM JS bindings and DeprecatedSVGAnimated* files
  6780. https://bugs.webkit.org/show_bug.cgi?id=49796
  6781. Just remove the old style SVG DOM JS bindings, now that everything has been converted to the new concept.
  6782. * GNUmakefile.am: Remove SVGList/SVGListTraits/JSSVGPODListCustom/JSSVGPODTypeWrapper/JSSVGContextCache and V8SVGPODTypeWrapper files.
  6783. * WebCore.gypi: Ditto.
  6784. * WebCore.pro: Ditto.
  6785. * WebCore.vcproj/WebCore.vcproj: Ditto.
  6786. * WebCore.xcodeproj/project.pbxproj: Ditto.
  6787. * bindings/js/JSSVGContextCache.h: Removed.
  6788. * bindings/js/JSSVGPODListCustom.h: Removed.
  6789. * bindings/js/JSSVGPODTypeWrapper.h: Removed.
  6790. * bindings/v8/V8Proxy.cpp: Remove SVG specific context cache code, which is no longer needed.
  6791. * bindings/v8/V8Proxy.h: Ditto.
  6792. * bindings/v8/V8SVGPODTypeWrapper.h: Removed.
  6793. * svg/DeprecatedSVGAnimatedProperty.h: Removed.
  6794. * svg/DeprecatedSVGAnimatedPropertyTraits.h: Removed.
  6795. * svg/DeprecatedSVGAnimatedTemplate.h: Removed.
  6796. * svg/SVGElement.h: Remove DeprecatedSVGAnimated* include, which pulled in SVGNames.h for every file.
  6797. * svg/SVGList.h: Removed.
  6798. * svg/SVGListTraits.h: Removed.
  6799. 2010-11-19 Alexander Pavlov <apavlov@chromium.org>
  6800. Reviewed by Pavel Feldman.
  6801. Web Inspector: [REGRESSION] Crash on opening WebInspector for a page with CSS containing @media with nested rules
  6802. https://bugs.webkit.org/show_bug.cgi?id=49731
  6803. Temporarily disable building of styles for nested rules.
  6804. * inspector/InspectorStyleSheet.cpp:
  6805. (WebCore::InspectorStyleSheet::buildObjectForRule):
  6806. (WebCore::InspectorStyleSheet::buildObjectForStyle):
  6807. (WebCore::InspectorStyleSheet::ensureParsedDataReady):
  6808. (WebCore::InspectorStyleSheet::ensureSourceData):
  6809. * inspector/InspectorStyleSheet.h:
  6810. * inspector/front-end/StylesSidebarPane.js:
  6811. (WebInspector.StylesSidebarPane.prototype._rebuildUpdate):
  6812. (WebInspector.StylesSidebarPane.prototype._refreshStyleRules):
  6813. (WebInspector.StylesSidebarPane.prototype._rebuildStyleRules):
  6814. 2010-11-19 Nikolas Zimmermann <nzimmermann@rim.com>
  6815. Not reviewed. Fix Qt build.
  6816. * WebCore.pro: Move SVGPathSegListPropertyTearOff.cpp from HEADERS to SOURCES list. This got lost, when reapplying the patch from the bug - I only fixed it locally before landing the first time.
  6817. 2010-11-19 Nikolas Zimmermann <nzimmermann@rim.com>
  6818. Reviewed by Dirk Schulze.
  6819. Convert SVGPathSeg/SVGPathSegList to the new SVGPropertyTearOff concept
  6820. https://bugs.webkit.org/show_bug.cgi?id=49580
  6821. SVGPathElement.cloneNode loses generated pathSegList
  6822. https://bugs.webkit.org/show_bug.cgi?id=43388
  6823. SVG Path elements are not correctly updated through pathSegList manipulation on relative values
  6824. https://bugs.webkit.org/show_bug.cgi?id=30219
  6825. Changing an SVGPathSeg does not update a following Smooth Cubic Curveto
  6826. https://bugs.webkit.org/show_bug.cgi?id=19741
  6827. SVGPathElement should only build SVGPathSeg* list on demand
  6828. https://bugs.webkit.org/show_bug.cgi?id=10827
  6829. Tests: svg/W3C-SVG-1.1-SE/paths-dom-02-f.svg
  6830. svg/dom/SVGPathSegList-appendItem.xhtml
  6831. svg/dom/SVGPathSegList-clear-and-initialize.xhtml
  6832. svg/dom/SVGPathSegList-cloning.html
  6833. svg/dom/SVGPathSegList-insertItemBefore.xhtml
  6834. svg/dom/SVGPathSegList-removeItem.xhtml
  6835. svg/dom/SVGPathSegList-replaceItem.xhtml
  6836. svg/dom/SVGPathSegList-xml-dom-synchronization.xhtml
  6837. svg/dom/SVGPathSegList-xml-dom-synchronization2.xhtml
  6838. svg/dom/SVGPathSegList-segment-modification.svg
  6839. Convert SVGPathSeg*/SVGPathSegList to the new SVG(Animated)PropertyTearOff concept.
  6840. Unlike all other SVG* types that use the SVGPropertyTearOff concept, SVGPathSegs are already refcounted,
  6841. and don't need to be wrapped in SVGPropertyTearOff objects. The consequence is that SVGPathSegs need to track
  6842. themselves to which list and path element they belong. Introduce new SVGAnimatedPathSegListPropertyTearOff
  6843. and SVGPathSegListPropertyTearOff classes, that encapsulate the special needed for SVGPathSegList.
  6844. Each SVGPathSeg now needs to store a RefPtr<SVGPathElement> - this makes it impossible to use SVGPathSegList
  6845. to represent the 'd' attribute internally in SVGPathElement. SVGPathSegList is now only used in the SVG DOM bindings
  6846. if someone explicitely requests 'pathElement.pathSegList' (eg. via JS). Switch to use SVGPathByteStream to store
  6847. the 'd' attribute data in SVGPathElement, which is much more compact, and less memory intensive.
  6848. Dirk already prepared SVGPathParserFactory some months ago, which allows easy conversion between
  6849. String/Path/SVGPathSegList/SVGPathByteStream in all directions, including normalizing the lists, when requested.
  6850. As consequence SVGPathSegList is now only built on demand, when explicitely requested. Using the SVGAnimatedProperty
  6851. concept gives us 'd' attribute <-> SVGPathSegList synchronization for free, fixing several bugs, listed above.
  6852. * Android.mk: Remove obsolete SVGPathSeg*.cpp files and SVGAnimatedPathData.cpp from build.
  6853. * CMakeLists.txt: Ditto.
  6854. * DerivedSources.make: Remove SVGAnimatedPathData IDL generation.
  6855. * GNUmakefile.am: Remove obsolete SVGPathSeg*.cpp files and SVGAnimatedPathData.cpp from build.
  6856. * WebCore.gyp/WebCore.gyp: Remove SVGAnimatedPathData IDL generation.
  6857. * WebCore.gypi: Remove obsolete SVGPathSeg*.cpp files and SVGAnimatedPathData.cpp from build.
  6858. * WebCore.order: Remove no-longer existant SVGAnimatedPathData symbols.
  6859. * WebCore.pro: Remove obsolete SVGPathSeg*.cpp files and SVGAnimatedPathData.cpp / JSSVGPathSegCustom.* from build.
  6860. * WebCore.vcproj/WebCore.vcproj: Ditto.
  6861. * WebCore.xcodeproj/project.pbxproj: Ditto.
  6862. * bindings/js/JSBindingsAllInOne.cpp: Remove JSSVGPathSegCustom.cpp from build.
  6863. * bindings/js/JSDOMBinding.cpp: Adapt to toJS() changes, remove context parameter.
  6864. (WebCore::setDOMException):
  6865. * bindings/js/JSDOMBinding.h: Remove obsolete CREATE_SVG_OBJECT_WRAPPER macro, the context parameter is not existant anymore.
  6866. * bindings/js/JSSVGPathSegCustom.cpp: Replace CREATE_SVG_OBJECT_WRAPPER by CREATE_DOM_OBJECT_WRAPPER. Remove context parameter/handling.
  6867. (WebCore::toJS):
  6868. * bindings/js/JSSVGPathSegListCustom.cpp: Removed.
  6869. * bindings/scripts/CodeGenerator.pm: Map 'SVGPathSegList' IDL type to SVG 'SVGPathSegListPropertyTearOff' native type.
  6870. * bindings/scripts/CodeGeneratorJS.pm: Remove IsSVGTypeNeedingContextParameter() methods and usages. Handle SVGPathSegListPropertyTearOff.
  6871. * bindings/scripts/CodeGeneratorObjC.pm: Handle SVGPathSegListPropertyTearOff.
  6872. * bindings/scripts/CodeGeneratorV8.pm: Remove IsSVGTypeNeedingContextParameter() methods and usages.
  6873. * rendering/SVGRenderTreeAsText.cpp: Build path string from byte stream, not path segment list.
  6874. (WebCore::operator<<):
  6875. * svg/SVGAllInOne.cpp: Remove obsolete cpp files.
  6876. * svg/SVGAnimatedPathData.cpp: Removed.
  6877. * svg/SVGAnimatedPathData.h: Removed.
  6878. * svg/SVGAnimatedPathData.idl: Removed.
  6879. * svg/SVGPathElement.cpp: Build SVGPathList on demand. Use SVGPathByteStream to parse/store the 'd' attribute content.
  6880. (WebCore::SVGPathElement::SVGPathElement):
  6881. (WebCore::SVGPathElement::getPathSegAtLength): Use SVGPathByteStream, not SVGPathSegList to determine the getPathSegAtLength() information.
  6882. (WebCore::SVGPathElement::createSVGPathSegClosePath): Pass SVGPathElement to SVGPathSeg and a SVGPathSegRole parameter and store it to track the list origin.
  6883. (WebCore::SVGPathElement::createSVGPathSegMovetoAbs): Ditto.
  6884. (WebCore::SVGPathElement::createSVGPathSegMovetoRel): Ditto.
  6885. (WebCore::SVGPathElement::createSVGPathSegLinetoAbs): Ditto.
  6886. (WebCore::SVGPathElement::createSVGPathSegLinetoRel): Ditto.
  6887. (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicAbs): Ditto.
  6888. (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicRel): Ditto.
  6889. (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticAbs): Ditto.
  6890. (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticRel): Ditto.
  6891. (WebCore::SVGPathElement::createSVGPathSegArcAbs): Ditto.
  6892. (WebCore::SVGPathElement::createSVGPathSegArcRel): Ditto.
  6893. (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalAbs): Ditto.
  6894. (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalRel): Ditto.
  6895. (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalAbs): Ditto.
  6896. (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalRel): Ditto.
  6897. (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothAbs): Ditto.
  6898. (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothRel): Ditto.
  6899. (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothAbs): Ditto.
  6900. (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothRel): Ditto.
  6901. (WebCore::SVGPathElement::parseMappedAttribute): Build SVGPathByteStream from 'd' attribute, not a SVGPathSegList.
  6902. (WebCore::SVGPathElement::svgAttributeChanged): If a SVGPathSegList object has been built, synchronize it with the 'd' attribute.
  6903. (WebCore::SVGPathElement::synchronizeProperty): Synchronize 'd' attribute with the SVGPathSegList, if needed.
  6904. (WebCore::SVGPathElement::synchronizeD): Added.
  6905. (WebCore::SVGPathElement::pathSegList): Use same trick as in SVGPolyElement to expose the 'pathSegList' / 'animatedPathSegList' object to the SVG DOM bindings.
  6906. (WebCore::SVGPathElement::normalizedPathSegList): Ditto.
  6907. (WebCore::SVGPathElement::animatedPathSegList): Ditto.
  6908. (WebCore::SVGPathElement::animatedNormalizedPathSegList): Ditto.
  6909. (WebCore::SVGPathElement::toPathData): Build 'Path' object from SVGPathByteStream, not from SVGPathSegList.
  6910. (WebCore::SVGPathElement::pathSegListChanged): Used to synchronize the SVGPathSegLists and the d attribute, as well as any changes from any SVGPathSeg associated with this SVGPathElement.
  6911. * svg/SVGPathElement.h: Add new accessors...
  6912. (WebCore::SVGPathElement::pathByteStream): ... needed by SVGRenderTreeAsText.
  6913. (WebCore::SVGPathElement::animatablePathSegList): ... needed by SVGPathSegListPropertyTearOff.
  6914. * svg/SVGPathElement.idl: Merge SVGAnimatedPathData interface into SVGPathElement.
  6915. * svg/SVGPathParserFactory.cpp: Cleanup SVGPathParserFactory, remove obsolete methods, now that SVGPathElement switched to using SVGPathByteStream internally.
  6916. (WebCore::globalSVGPathSegListBuilder):
  6917. (WebCore::SVGPathParserFactory::buildSVGPathByteStreamFromSVGPathSegList):
  6918. (WebCore::SVGPathParserFactory::buildPathFromByteStream):
  6919. (WebCore::SVGPathParserFactory::buildSVGPathSegListFromByteStream):
  6920. (WebCore::SVGPathParserFactory::buildStringFromSVGPathSegList):
  6921. (WebCore::SVGPathParserFactory::buildSVGPathByteStreamFromString):
  6922. (WebCore::SVGPathParserFactory::buildAnimatedSVGPathByteStream):
  6923. (WebCore::SVGPathParserFactory::getSVGPathSegAtLengthFromSVGPathByteStream):
  6924. * svg/SVGPathParserFactory.h:
  6925. * svg/SVGPathSeg.cpp: Removed.
  6926. * svg/SVGPathSeg.h: Add new SVGPathSegRole enum, identifying to which list a path segment belongs.
  6927. (WebCore::SVGPathSeg::SVGPathSeg):
  6928. * svg/SVGPathSeg.idl: Reindented.
  6929. * svg/SVGPathSegArc.cpp: Removed.
  6930. * svg/SVGPathSegArc.h: All setters now call the commitChange() method.
  6931. * svg/SVGPathSegArcAbs.idl: Enable StrictTypeChecking.
  6932. * svg/SVGPathSegArcRel.idl: Ditto.
  6933. * svg/SVGPathSegClosePath.cpp: Removed.
  6934. * svg/SVGPathSegClosePath.h:
  6935. * svg/SVGPathSegCurvetoCubic.cpp: Removed.
  6936. * svg/SVGPathSegCurvetoCubic.h: All setters now call the commitChange() method.
  6937. * svg/SVGPathSegCurvetoCubicAbs.idl: Enable StrictTypeChecking.
  6938. * svg/SVGPathSegCurvetoCubicRel.idl: Ditto.
  6939. * svg/SVGPathSegCurvetoCubicSmooth.cpp: Removed.
  6940. * svg/SVGPathSegCurvetoCubicSmooth.h: All setters now call the commitChange() method.
  6941. * svg/SVGPathSegCurvetoCubicSmoothAbs.idl: Enable StrictTypeChecking.
  6942. * svg/SVGPathSegCurvetoCubicSmoothRel.idl: Ditto.
  6943. * svg/SVGPathSegCurvetoQuadratic.cpp: Removed.
  6944. * svg/SVGPathSegCurvetoQuadratic.h: All setters now call the commitChange() method.
  6945. * svg/SVGPathSegCurvetoQuadraticAbs.idl: Enable StrictTypeChecking.
  6946. * svg/SVGPathSegCurvetoQuadraticRel.idl: Ditto.
  6947. * svg/SVGPathSegCurvetoQuadraticSmooth.cpp: Removed.
  6948. * svg/SVGPathSegCurvetoQuadraticSmooth.h: All setters now call the commitChange() method.
  6949. * svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl: Enable StrictTypeChecking.
  6950. * svg/SVGPathSegCurvetoQuadraticSmoothRel.idl: Ditto.
  6951. * svg/SVGPathSegLineto.cpp: Removed.
  6952. * svg/SVGPathSegLineto.h: All setters now call the commitChange() method.
  6953. * svg/SVGPathSegLinetoAbs.idl: Enable StrictTypeChecking.
  6954. * svg/SVGPathSegLinetoHorizontal.cpp: Removed.
  6955. * svg/SVGPathSegLinetoHorizontal.h: All setters now call the commitChange() method.
  6956. * svg/SVGPathSegLinetoHorizontalAbs.idl: Enable StrictTypeChecking.
  6957. * svg/SVGPathSegLinetoHorizontalRel.idl: Ditto.
  6958. * svg/SVGPathSegLinetoRel.idl: Enable StrictTypeChecking.
  6959. * svg/SVGPathSegLinetoVertical.cpp: Removed.
  6960. * svg/SVGPathSegLinetoVertical.h: All setters now call the commitChange() method.
  6961. * svg/SVGPathSegLinetoVerticalAbs.idl: Enable StrictTypeChecking.
  6962. * svg/SVGPathSegLinetoVerticalRel.idl: Ditto.
  6963. * svg/SVGPathSegList.cpp: Switch from SVGList<RefPtr<SVGPathSeg> > to a plain Vector<RefPtr<SVGPathSeg> >.
  6964. (WebCore::SVGPathSegList::valueAsString): Utilize SVGPathParserFactory to build a String from a SVGPathSegList.
  6965. (WebCore::SVGPathSegList::commitChange): Call SVGPathElement::pathSegListChanged().
  6966. * svg/SVGPathSegList.h:
  6967. (WebCore::SVGPathSegList::SVGPathSegList):
  6968. * svg/SVGPathSegList.idl: Remove [JSCCustom] flags, no longer needed.
  6969. * svg/SVGPathSegListBuilder.cpp: Adapt to SVGPathSegList API changes.
  6970. (WebCore::SVGPathSegListBuilder::SVGPathSegListBuilder):
  6971. (WebCore::SVGPathSegListBuilder::moveTo):
  6972. (WebCore::SVGPathSegListBuilder::lineTo):
  6973. (WebCore::SVGPathSegListBuilder::lineToHorizontal):
  6974. (WebCore::SVGPathSegListBuilder::lineToVertical):
  6975. (WebCore::SVGPathSegListBuilder::curveToCubic):
  6976. (WebCore::SVGPathSegListBuilder::curveToCubicSmooth):
  6977. (WebCore::SVGPathSegListBuilder::curveToQuadratic):
  6978. (WebCore::SVGPathSegListBuilder::curveToQuadraticSmooth):
  6979. (WebCore::SVGPathSegListBuilder::arcTo):
  6980. (WebCore::SVGPathSegListBuilder::closePath):
  6981. * svg/SVGPathSegListBuilder.h: Ditto.
  6982. (WebCore::SVGPathSegListBuilder::setCurrentSVGPathElement):
  6983. (WebCore::SVGPathSegListBuilder::setCurrentSVGPathSegList):
  6984. (WebCore::SVGPathSegListBuilder::setCurrentSVGPathSegRole):
  6985. (WebCore::SVGPathSegListBuilder::cleanup):
  6986. * svg/SVGPathSegListSource.cpp: Ditto.
  6987. (WebCore::SVGPathSegListSource::SVGPathSegListSource):
  6988. (WebCore::SVGPathSegListSource::parseSVGSegmentType):
  6989. (WebCore::SVGPathSegListSource::nextCommand):
  6990. (WebCore::SVGPathSegListSource::parseMoveToSegment):
  6991. (WebCore::SVGPathSegListSource::parseLineToSegment):
  6992. (WebCore::SVGPathSegListSource::parseCurveToQuadraticSmoothSegment):
  6993. * svg/SVGPathSegListSource.h: Ditto.
  6994. (WebCore::SVGPathSegListSource::create):
  6995. * svg/SVGPathSegMoveto.cpp: Removed.
  6996. * svg/SVGPathSegMoveto.h: All setters now call the commitChange() method.
  6997. * svg/SVGPathSegMovetoAbs.idl: Enable StrictTypeChecking.
  6998. * svg/SVGPathSegMovetoRel.idl: Ditto.
  6999. * svg/SVGPathSegWithContext.h: Added. This is the new base class for all SVGPathSeg derived types, that's associated with a SVGPathElement and a 'role' (normalized/unaltered segment list).
  7000. (WebCore::SVGPathSegWithContext::SVGPathSegWithContext):
  7001. (WebCore::SVGPathSegWithContext::animatedProperty):
  7002. (WebCore::SVGPathSegWithContext::setContextAndRole):
  7003. (WebCore::SVGPathSegWithContext::commitChange):
  7004. (WebCore::SVGPathSegSingleCoordinate::x):
  7005. (WebCore::SVGPathSegSingleCoordinate::setX):
  7006. (WebCore::SVGPathSegSingleCoordinate::y):
  7007. (WebCore::SVGPathSegSingleCoordinate::setY):
  7008. (WebCore::SVGPathSegSingleCoordinate::SVGPathSegSingleCoordinate):
  7009. * svg/properties/SVGAnimatedPathSegListPropertyTearOff.h: Added.
  7010. (WebCore::SVGAnimatedPathSegListPropertyTearOff::baseVal):
  7011. (WebCore::SVGAnimatedPathSegListPropertyTearOff::animVal):
  7012. (WebCore::SVGAnimatedPathSegListPropertyTearOff::removeItemFromList):
  7013. (WebCore::SVGAnimatedPathSegListPropertyTearOff::create):
  7014. (WebCore::SVGAnimatedPathSegListPropertyTearOff::SVGAnimatedPathSegListPropertyTearOff):
  7015. * svg/properties/SVGPathSegListPropertyTearOff.cpp: Added.
  7016. (WebCore::SVGPathSegListPropertyTearOff::clear): Added in the cpp file, not in the header, as it needs access to SVGPathSegWithContext, which we can't include from the header.
  7017. (WebCore::SVGPathSegListPropertyTearOff::getItem): Ditto.
  7018. (WebCore::SVGPathSegListPropertyTearOff::removeItem): Ditto.
  7019. (WebCore::SVGPathSegListPropertyTearOff::contextElement): Needs access to SVGPathElement, that's why it lives in the cpp file.
  7020. (WebCore::SVGPathSegListPropertyTearOff::processIncomingListItemValue): Needs access to SVGPathSegWithContext.
  7021. * svg/properties/SVGPathSegListPropertyTearOff.h: Added.
  7022. (WebCore::SVGPathSegListPropertyTearOff::create):
  7023. (WebCore::SVGPathSegListPropertyTearOff::removeItemFromList):
  7024. (WebCore::SVGPathSegListPropertyTearOff::numberOfItems):
  7025. (WebCore::SVGPathSegListPropertyTearOff::initialize):
  7026. (WebCore::SVGPathSegListPropertyTearOff::insertItemBefore):
  7027. (WebCore::SVGPathSegListPropertyTearOff::replaceItem):
  7028. (WebCore::SVGPathSegListPropertyTearOff::appendItem):
  7029. (WebCore::SVGPathSegListPropertyTearOff::SVGPathSegListPropertyTearOff):
  7030. (WebCore::SVGPathSegListPropertyTearOff::commitChange):
  7031. (WebCore::SVGPathSegListPropertyTearOff::processIncomingListItemWrapper):
  7032. 2010-11-19 Pavel Feldman <pfeldman@chromium.org>
  7033. Not reviewed: one line follow up to r72376.
  7034. * inspector/InspectorResourceAgent.cpp:
  7035. (WebCore::buildObjectForResourceResponse):
  7036. 2010-11-19 Sergio Villar Senin <svillar@igalia.com>
  7037. Reviewed by Xan Lopez.
  7038. [Gtk] "CRITICAL **: msg_got_headers_cb: assertion `entry' failed" when using HTTP cache
  7039. https://bugs.webkit.org/show_bug.cgi?id=49666
  7040. WebKit resource load cache does validate its own resources by
  7041. issuing conditional requests to the server. The HTTP cache was
  7042. making the assumption that any possible conditional request was
  7043. always generated by itself.
  7044. * platform/network/soup/cache/webkit/soup-cache.c:
  7045. (webkit_soup_cache_entry_remove): added an assertion
  7046. (msg_got_headers_cb):
  7047. 2010-11-19 Dai Mikurube <dmikurube@google.com>
  7048. Reviewed by Kent Tamura.
  7049. stepUp/stepDown for values in step-mismatching state for input elements
  7050. https://bugs.webkit.org/show_bug.cgi?id=48976
  7051. Fixed stepUp/stepDown behaviors for step-mismatching values to follow the specification of
  7052. HTML5 4.10.7.3 Common input element APIs. In details, disabled any stepwise adjustment for
  7053. step-mismatching values.
  7054. * html/HTMLInputElement.cpp:
  7055. (WebCore::HTMLInputElement::applyStep):
  7056. 2010-11-19 Pavel Feldman <pfeldman@chromium.org>
  7057. Not reviewed. Rolled out build failures introduced in r72373.
  7058. * inspector/CodeGeneratorInspector.pm:
  7059. 2010-11-18 Pavel Feldman <pfeldman@chromium.org>
  7060. Reviewed by Yury Semikhatsky.
  7061. Web Inspector: provide response code and status text as
  7062. a part of raw headers data.
  7063. https://bugs.webkit.org/show_bug.cgi?id=49668
  7064. * GNUmakefile.am:
  7065. * WebCore.gypi:
  7066. * WebCore.pro:
  7067. * WebCore.vcproj/WebCore.vcproj:
  7068. * WebCore.xcodeproj/project.pbxproj:
  7069. * inspector/InspectorResourceAgent.cpp:
  7070. (WebCore::buildObjectForResourceResponse):
  7071. * inspector/front-end/NetworkPanel.js:
  7072. (WebInspector.NetworkDataGridNode.prototype._refreshStatusCell):
  7073. * inspector/front-end/ResourceManager.js:
  7074. (WebInspector.ResourceManager.prototype._updateResourceWithResponse):
  7075. * platform/network/ResourceLoadInfo.h: Renamed from WebCore/platform/network/ResourceRawHeaders.h.
  7076. (WebCore::ResourceLoadInfo::ResourceLoadInfo):
  7077. * platform/network/ResourceResponseBase.cpp:
  7078. (WebCore::ResourceResponseBase::resourceLoadInfo):
  7079. (WebCore::ResourceResponseBase::setResourceLoadInfo):
  7080. * platform/network/ResourceResponseBase.h:
  7081. 2010-11-19 Mike Lawther <mikelawther@chromium.org>
  7082. Reviewed by James Robinson.
  7083. [skia] assert when attempting to get (but not use) pointer to outside the canvas
  7084. https://bugs.webkit.org/show_bug.cgi?id=49698
  7085. Early return to avoid getting a pointer to outside the canvas, and
  7086. hence triggering a Skia assert.
  7087. * platform/graphics/skia/ImageBufferSkia.cpp:
  7088. (WebCore::getImageData):
  7089. 2010-11-18 Ilya Tikhonovsky <loislo@chromium.org>
  7090. Reviewed by Yury Semikhatsky.
  7091. Web Inspector: reduce the footprint of InspectorBackendDispatcher.
  7092. InspectorBackendDispatcher is a generated file.
  7093. Its content is not optimal and loc may be reduced by a quarter.
  7094. In each generated function we have a code for getting 'in' values from
  7095. the arguments properties object. I've extracted this code into separate getters.
  7096. The side effect is better readability of the generated code.
  7097. https://bugs.webkit.org/show_bug.cgi?id=49729
  7098. * inspector/CodeGeneratorInspector.pm:
  7099. 2010-11-19 Yael Aharon <yael.aharon@nokia.com>
  7100. Reviewed by Antonio Gomes.
  7101. [Qt] Focus ring does not show for image maps
  7102. https://bugs.webkit.org/show_bug.cgi?id=49615
  7103. Draw a focus ring for the paths surrounding the focus ring of image map area.
  7104. Provide Qt specific results for the test fast/images/imagemap-focus-ring.html.
  7105. * platform/graphics/qt/GraphicsContextQt.cpp:
  7106. (WebCore::GraphicsContext::drawFocusRing):
  7107. 2010-11-01 MORITA Hajime <morrita@google.com>
  7108. Reviewed by David Hyatt.
  7109. Navigating dark background websites results in blinding white flashes between pages.
  7110. https://bugs.webkit.org/show_bug.cgi?id=45640
  7111. This FOUC is caused by an early layout request before the <body> is ready,
  7112. and the page's background style given for <body>, instead of <html>.
  7113. So many sites have such stylesheets that we should care them.
  7114. - Some DOM operation such as 'element.offsetLeft' causes page layout.
  7115. - The page layout results page repaint
  7116. - The page page repaint makes a white screen. because there is nothing to paint
  7117. before <body> is available.
  7118. This change:
  7119. - extracted existing FOUC check on RenderBlock and RenderLayer to
  7120. Document::mayCauseFlashOfUnstyledContent(),
  7121. - checked non-<head> element availability on mayCauseFlashOfUnstyledContent(), and
  7122. - added FOUC guards before requesting reapint on FrameView.
  7123. Note that non-<head> document root children are typically <body>, but possibly
  7124. some other type of elements in the case of non-HTML documents.
  7125. No new tests. The data loading speed matters and it cannot be
  7126. captured by DRT.
  7127. * dom/Document.cpp:
  7128. (hasHeadSibling): Added.
  7129. (WebCore::Document::mayCauseFlashOfUnstyledContent): Added.
  7130. * dom/Document.h:
  7131. * page/FrameView.cpp:
  7132. (WebCore::FrameView::invalidateRect): Added a guard.
  7133. (WebCore::FrameView::repaintContentRectangle): Added a guard.
  7134. (WebCore::FrameView::doDeferredRepaints): Added a guard.
  7135. (WebCore::FrameView::shouldUpdate): Added.
  7136. * page/FrameView.h:
  7137. * rendering/RenderBlock.cpp:
  7138. (WebCore::RenderBlock::paintContents): Replaced FOUC check to use mayCauseFlashOfUnstyledContent
  7139. * rendering/RenderLayer.cpp:
  7140. (WebCore::RenderLayer::paintLayer): Replaced FOUC check to use mayCauseFlashOfUnstyledContent
  7141. 2010-11-18 Kent Tamura <tkent@chromium.org>
  7142. Reviewed by Tony Chang.
  7143. Add more validation message functions
  7144. https://bugs.webkit.org/show_bug.cgi?id=49716
  7145. Add the following message functions:
  7146. - validationMessageValueMissingForCheckbox()
  7147. - validationMessageValueMissingForFile()
  7148. - validationMessageValueMissingForMultipleFile()
  7149. - validationMessageValueMissingForRadio()
  7150. - validationMessageValueMissingForSelect()
  7151. and update ValidityState, HTMLInputElement, and InputTypes to use them.
  7152. No new tests because this doesn't change visible behavior.
  7153. * html/CheckboxInputType.cpp:
  7154. (WebCore::CheckboxInputType::valueMissingText):
  7155. * html/CheckboxInputType.h:
  7156. * html/FileInputType.cpp:
  7157. (WebCore::FileInputType::valueMissingText):
  7158. * html/FileInputType.h:
  7159. * html/HTMLInputElement.cpp:
  7160. (WebCore::HTMLInputElement::valueMissingText):
  7161. * html/HTMLInputElement.h:
  7162. * html/InputType.cpp:
  7163. (WebCore::InputType::valueMissingText):
  7164. * html/InputType.h:
  7165. * html/RadioInputType.cpp:
  7166. (WebCore::RadioInputType::valueMissingText):
  7167. * html/RadioInputType.h:
  7168. * html/ValidityState.cpp:
  7169. (WebCore::ValidityState::validationMessage):
  7170. * platform/LocalizedStrings.cpp:
  7171. (WebCore::validationMessageValueMissingForCheckboxText):
  7172. (WebCore::validationMessageValueMissingForFileText):
  7173. (WebCore::validationMessageValueMissingForMultipleFileText):
  7174. (WebCore::validationMessageValueMissingForRadioText):
  7175. (WebCore::validationMessageValueMissingForSelectText):
  7176. * platform/LocalizedStrings.h:
  7177. * platform/android/LocalizedStringsAndroid.cpp:
  7178. (WebCore::validationMessageValueMissingForCheckboxText):
  7179. (WebCore::validationMessageValueMissingForFileText):
  7180. (WebCore::validationMessageValueMissingForMultipleFileText):
  7181. (WebCore::validationMessageValueMissingForRadioText):
  7182. (WebCore::validationMessageValueMissingForSelectText):
  7183. * platform/brew/LocalizedStringsBrew.cpp:
  7184. (WebCore::validationMessageValueMissingForCheckboxText):
  7185. (WebCore::validationMessageValueMissingForFileText):
  7186. (WebCore::validationMessageValueMissingForMultipleFileText):
  7187. (WebCore::validationMessageValueMissingForRadioText):
  7188. (WebCore::validationMessageValueMissingForSelectText):
  7189. * platform/efl/LocalizedStringsEfl.cpp:
  7190. (WebCore::validationMessageValueMissingForCheckboxText):
  7191. (WebCore::validationMessageValueMissingForFileText):
  7192. (WebCore::validationMessageValueMissingForMultipleFileText):
  7193. (WebCore::validationMessageValueMissingForRadioText):
  7194. (WebCore::validationMessageValueMissingForSelectText):
  7195. * platform/gtk/LocalizedStringsGtk.cpp:
  7196. (WebCore::validationMessageValueMissingForCheckboxText):
  7197. (WebCore::validationMessageValueMissingForFileText):
  7198. (WebCore::validationMessageValueMissingForMultipleFileText):
  7199. (WebCore::validationMessageValueMissingForRadioText):
  7200. (WebCore::validationMessageValueMissingForSelectText):
  7201. * platform/haiku/LocalizedStringsHaiku.cpp:
  7202. (WebCore::validationMessageValueMissingText):
  7203. (WebCore::validationMessageValueMissingForCheckboxText):
  7204. (WebCore::validationMessageValueMissingForFileText):
  7205. (WebCore::validationMessageValueMissingForMultipleFileText):
  7206. (WebCore::validationMessageValueMissingForRadioText):
  7207. (WebCore::validationMessageValueMissingForSelectText):
  7208. * platform/wx/LocalizedStringsWx.cpp:
  7209. (WebCore::validationMessageValueMissingForCheckboxText):
  7210. (WebCore::validationMessageValueMissingForFileText):
  7211. (WebCore::validationMessageValueMissingForMultipleFileText):
  7212. (WebCore::validationMessageValueMissingForRadioText):
  7213. (WebCore::validationMessageValueMissingForSelectText):
  7214. 2010-11-18 Gavin Barraclough <barraclough@apple.com>
  7215. Reviewed by Oliver Hunt.
  7216. Bug 49708 - Stop recompiling functions to regenerate exception info.
  7217. Instead only hold info as necessary – keep divot info is the inspector
  7218. is enabled, line number info is debugging or profiling, and handler
  7219. info for functions with try/catch.
  7220. * bindings/js/JSDOMWindowBase.cpp:
  7221. (WebCore::JSDOMWindowBase::supportsRichSourceInfo):
  7222. - report to JSC whether the inspector is enabled - in which
  7223. case we will generate better error messages on exceptions.
  7224. * bindings/js/JSDOMWindowBase.h:
  7225. 2010-11-18 Jian Li <jianli@chromium.org>
  7226. Reviewed by Kenneth Russell.
  7227. Make binding code generation scripts support 'short' type
  7228. https://bugs.webkit.org/show_bug.cgi?id=49704
  7229. Updated binding tests.
  7230. * bindings/scripts/CodeGeneratorJS.pm: Also fixed a style issue.
  7231. * bindings/scripts/CodeGeneratorV8.pm:
  7232. * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
  7233. * bindings/scripts/test/CPP/WebDOMTestObj.h:
  7234. * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
  7235. * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
  7236. * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  7237. * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  7238. * bindings/scripts/test/JS/JSTestObj.cpp:
  7239. * bindings/scripts/test/JS/JSTestObj.h:
  7240. * bindings/scripts/test/ObjC/DOMTestObj.h:
  7241. * bindings/scripts/test/ObjC/DOMTestObj.mm:
  7242. * bindings/scripts/test/TestObj.idl:
  7243. * bindings/scripts/test/V8/V8TestObj.cpp:
  7244. 2010-11-18 Mark Rowe <mrowe@apple.com>
  7245. Rubber-stamped by Adam Roben.
  7246. <rdar://problem/8602509&8602717&8602724> Enable compaction support.
  7247. * Configurations/WebCore.xcconfig:
  7248. 2010-11-18 Dave Hyatt <hyatt@apple.com>
  7249. Reviewed by Dan Bernstein.
  7250. https://bugs.webkit.org/show_bug.cgi?id=49772
  7251. Fix nested ruby. My previous checkin (for 49717) broke it. Push the ruby text and ruby base text
  7252. together based off logicalTopOverflow and logicalBottomOverflow rather than lineTop and lineBottom.
  7253. This way the overflow from nested rubies is accounted for.
  7254. Added fast/ruby/nested-ruby.html
  7255. * rendering/RenderRubyRun.cpp:
  7256. (WebCore::RenderRubyRun::layout):
  7257. 2010-11-18 Kinuko Yasuda <kinuko@chromium.org>
  7258. Reviewed by Nate Chapin.
  7259. [V8] ASSERT(WTF::isMainThread()) fails in V8Binding::int32ToWebCoreString in workers
  7260. https://bugs.webkit.org/show_bug.cgi?id=49613
  7261. No new tests. Running existing worker tests like
  7262. fast/workers/storage/execute-sql-args-worker.html in chromium
  7263. would verify it.
  7264. * bindings/v8/V8Binding.cpp:
  7265. (WebCore::int32ToWebCoreStringFast):
  7266. (WebCore::int32ToWebCoreString):
  7267. 2010-11-18 Alexey Proskuryakov <ap@apple.com>
  7268. Windows build fix.
  7269. https://bugs.webkit.org/show_bug.cgi?id=49762
  7270. Stylesheet wrappers are not GC protected
  7271. * bindings/js/JSBindingsAllInOne.cpp: Added new custom binding files.
  7272. 2010-11-18 Dave Hyatt <hyatt@apple.com>
  7273. Reviewed by Dan Bernstein.
  7274. https://bugs.webkit.org/show_bug.cgi?id=49717
  7275. Implement better behavior for the logical height and block direction spacing of ruby text and ruby
  7276. base text.
  7277. Added six new tests: ruby-auto-line-expansion.html (one version for each of the four writing modes) to
  7278. test ruby text accommodation and quirks-mode-ruby-spacing.html / quirks-mode-ruby-spacing-bt.html to test
  7279. that ruby doesn't reset line-height.
  7280. * css/html.css:
  7281. Remove the line-height:normal rule for <ruby> This behavior was incorrect, since a <ruby> on a line
  7282. by itself in quirks mode would cause the overall line-height of the enclosing block to not be honored.
  7283. * rendering/InlineBox.h:
  7284. (WebCore::InlineBox::adjustBlockDirectionPosition):
  7285. Add adjustBlockDirectionPosition as a shorthand for calling adjustPosition with the correct delta (x or y)
  7286. depending on orientation.
  7287. * rendering/InlineFlowBox.cpp:
  7288. (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
  7289. placeBoxesInBlockDirection now looks for Ruby runs, and when it encounters them it sets a flag, containsRuby,
  7290. to true. This flag is stored as a bit on the RootInlineBox and lets us know whether we need to do a later
  7291. crawl of the line boxes after they are positioned to see if all the Ruby texts fit or not.
  7292. Add the notion of a lineTop and lineBottom that include margins, since flipped lines writing modes (lr and bt)
  7293. mess up the flipping otherwise. These new variables are lineTopIncludingMargins and lineBottomIncludingMargins.
  7294. This is only relevant for replaced elements, since the block direction margins of inline flows are always 0.
  7295. Because RenderRubyRun is implemented as an inline-block (this is probably not a behavior we want to keep long-term),
  7296. the line-height is propagated into the inline-block, and it ends up being counted as part of the overall lineTop
  7297. and lineBottom since it is inside the inline-block's height. To prevent this from happening, we have to fake it
  7298. as though RenderRubyRun was just a normal inline. We look at the line boxes of the ruby base and we push lineTop/Bottom
  7299. in by the leading on either side so that it isn't counted as part of lineTop and lineBottom. This enables the later
  7300. Ruby code that examines the spacing between lines to not be fooled into thinking it can't intrude into an inline-block's
  7301. interior on a previous line.
  7302. (WebCore::InlineFlowBox::computeBlockDirectionRubyAdjustment):
  7303. This function computes the amount that a line box has to be moved in order to accommodate all of the Ruby texts on the
  7304. line. With tb and rl writing modes, the Ruby is trying to fit between the current line and a previous line, and so
  7305. we're checking some highest previous position and computing the amount we have to move.
  7306. For lr and bt writing modes, the lines are flipped relative to the block direction, so we are computing how much we have
  7307. to move the *following* line based off a lowest position.
  7308. In all writing modes we will allow Ruby text to intrude into the padding of a block.
  7309. * rendering/InlineFlowBox.h:
  7310. * rendering/RenderBlock.cpp:
  7311. (WebCore::RenderBlock::layoutBlockChildren):
  7312. Ruby text is now considered a special child that should be excluded from normal layout, margin collapsing and height
  7313. computations. Rename the layoutLegend function to be more generalized and make it apply to both Ruby text and to
  7314. legends. This means that the RenderRubyRun computes its logical height without any regard for the ruby text.
  7315. * rendering/RenderBlock.h:
  7316. (WebCore::RenderBlock::layoutSpecialExcludedChild):
  7317. layoutSpecialExcludedChild is the new version of layoutLegend and it is implemented by RenderFieldset and RenderRubyRun.
  7318. * rendering/RenderBlockLineLayout.cpp:
  7319. (WebCore::RenderBlock::layoutInlineChildren):
  7320. When we hit the end of line layout, if we're in lr or bt writing modes, we have to potentially grow the height of the block
  7321. to accommodate ruby text along the bottom side of the line. We call computeBlockDirectionRubyAdjustment here in flipped lines
  7322. writing mode only, and then we increase the logical height of the block if necessary.
  7323. * rendering/RenderFieldset.cpp:
  7324. (WebCore::RenderFieldset::layoutSpecialExcludedChild):
  7325. * rendering/RenderFieldset.h:
  7326. No changes here other than the function rename.
  7327. * rendering/RenderRubyRun.cpp:
  7328. (WebCore::RenderRubyRun::staticCreateRubyRun):
  7329. Remove the hack that locked RenderRubyRun's writing mode to tb or rl, since it didn't really work anyway, and it isn't necessary
  7330. now that RenderRubyRun has its own layout method.
  7331. (WebCore::RenderRubyRun::layoutSpecialExcludedChild):
  7332. RenderRubyRun lays out the ruby text here but doesn't do anything with its placement yet. We wait until the base is positioned
  7333. and then handled positioning the RenderRubyText at the end of RenderRubyRun's layout method.
  7334. (WebCore::RenderRubyRun::layout):
  7335. * rendering/RenderRubyRun.h:
  7336. RenderRubyRun now has its own layout method that calls the base class to get the RenderRubyBase positioned and then moves the
  7337. RenderRubyText such that its bottommost line box's bottom and the RenderRubyBase's topmost line box's line top are flush with
  7338. one another. The RenderRubyText will commonly be positioned at a negative coordinate now and spill out of the RenderRubyRun
  7339. as overflow.
  7340. * rendering/RootInlineBox.cpp:
  7341. (WebCore::RootInlineBox::RootInlineBox):
  7342. Added the m_containsRuby bit for performance to avoid the extra pass to try to accommodate ruby texts when none are present.
  7343. (WebCore::RootInlineBox::adjustPosition):
  7344. Fixed a bug in adjustPosition where the lineTop, lineBottom and blockLogicalHeight values were always being augmented by dy
  7345. even in vertical writing modes (where dx needed to be used instead).
  7346. (WebCore::RootInlineBox::alignBoxesInBlockDirection):
  7347. (WebCore::RootInlineBox::blockDirectionRubyAdjustment):
  7348. * rendering/RootInlineBox.h:
  7349. (WebCore::RootInlineBox::containsRuby):
  7350. RootInlineBox now calls blockDirectionRubyAdjustment to determine the amount of additional spacing that has to exist between
  7351. the lines in order to accommodate all Ruby texts, and then it does adjustPosition to move the new line by the amount required.
  7352. 2010-11-18 Alexey Proskuryakov <ap@apple.com>
  7353. Reviewed by Geoffrey Garen.
  7354. https://bugs.webkit.org/show_bug.cgi?id=49762
  7355. Stylesheet wrappers are not GC protected
  7356. Tests: fast/dom/StyleSheet/gc-inline-style-cssvalues.html
  7357. fast/dom/StyleSheet/gc-styleheet-wrapper.xhtml
  7358. * Android.jscbindings.mk:
  7359. * CMakeLists.txt:
  7360. * GNUmakefile.am:
  7361. * WebCore.gypi:
  7362. * WebCore.pro:
  7363. * WebCore.vcproj/WebCore.vcproj:
  7364. Added the new custom bindings files.
  7365. * WebCore.xcodeproj/project.pbxproj: Added the new custom bindings files. Also, added some
  7366. existing headers.
  7367. * bindings/js/JSDOMBinding.cpp: (WebCore::isObservableThroughDOM): If a node has a stylesheet
  7368. with a wrapper, it may be the only thing having the stylesheet's wrapper alive, so its own
  7369. wrapper has to stay alive, too.
  7370. While at it, also fixed the same issue with inline style declarations.
  7371. Also, added a FIXME comment about one with attribute nodes. We implement a less conservative
  7372. approach for nodes, so perhaps fixing this is not as easy as removing a hasCustomProperties()
  7373. check.
  7374. * bindings/js/JSHTMLLinkElementCustom.cpp: Added.
  7375. (WebCore::JSHTMLLinkElement::markChildren):
  7376. * bindings/js/JSHTMLStyleElementCustom.cpp: Added.
  7377. (WebCore::JSHTMLStyleElement::markChildren):
  7378. * bindings/js/JSProcessingInstructionCustom.cpp: Added.
  7379. (WebCore::JSProcessingInstruction::markChildren):
  7380. Mark stylesheets owned by these nodes. As always in markChildren() functions, we do it
  7381. conservatively, without checking whether the stylesheet or any of its children have custom
  7382. properties.
  7383. * dom/ProcessingInstruction.idl:
  7384. * html/HTMLLinkElement.idl:
  7385. * html/HTMLStyleElement.idl:
  7386. These have custom mark functions now.
  7387. 2010-11-18 Jian Li <jianli@chromium.org>
  7388. Reviewed by Kenneth Russell.
  7389. Move length and slice out of ArrayBufferView interface
  7390. https://bugs.webkit.org/show_bug.cgi?id=49697
  7391. No functionality change. Covered by existing ArrayBuffer tests.
  7392. * WebCore.gypi:
  7393. * WebCore.pro:
  7394. * WebCore.xcodeproj/project.pbxproj:
  7395. * bindings/js/JSArrayBufferViewCustom.cpp: Removed.
  7396. * bindings/v8/custom/V8ArrayBufferViewCustom.cpp: Removed.
  7397. * html/canvas/ArrayBufferView.h:
  7398. * html/canvas/ArrayBufferView.idl:
  7399. * html/canvas/Float32Array.cpp:
  7400. (WebCore::Float32Array::slice):
  7401. * html/canvas/Float32Array.h:
  7402. * html/canvas/Float32Array.idl:
  7403. * html/canvas/Int16Array.cpp:
  7404. (WebCore::Int16Array::slice):
  7405. * html/canvas/Int16Array.h:
  7406. * html/canvas/Int16Array.idl:
  7407. * html/canvas/Int32Array.cpp:
  7408. (WebCore::Int32Array::slice):
  7409. * html/canvas/Int32Array.h:
  7410. * html/canvas/Int32Array.idl:
  7411. * html/canvas/Int8Array.cpp:
  7412. (WebCore::Int8Array::slice):
  7413. * html/canvas/Int8Array.h:
  7414. * html/canvas/Int8Array.idl:
  7415. * html/canvas/TypedArrayBase.h:
  7416. (WebCore::TypedArrayBase::length):
  7417. * html/canvas/Uint16Array.cpp:
  7418. (WebCore::Uint16Array::slice):
  7419. * html/canvas/Uint16Array.h:
  7420. * html/canvas/Uint16Array.idl:
  7421. * html/canvas/Uint32Array.cpp:
  7422. (WebCore::Uint32Array::slice):
  7423. * html/canvas/Uint32Array.h:
  7424. * html/canvas/Uint32Array.idl:
  7425. * html/canvas/Uint8Array.cpp:
  7426. (WebCore::Uint8Array::slice):
  7427. * html/canvas/Uint8Array.h:
  7428. * html/canvas/Uint8Array.idl:
  7429. * html/canvas/WebGLRenderingContext.cpp:
  7430. (WebCore::WebGLRenderingContext::readPixels):
  7431. 2010-11-17 Zhenyao Mo <zmo@google.com>
  7432. Reviewed by Kenneth Russell.
  7433. Implement UNPACK_COLORSPACE_CONVERSION_WEBGL
  7434. https://bugs.webkit.org/show_bug.cgi?id=47196
  7435. * platform/image-decoders/ImageDecoder.h:
  7436. (WebCore::ImageDecoder::ignoresGammaAndColorProfile): Add a getter function for the ignoreGammaAndColorProfile setting.
  7437. * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
  7438. (WebCore::JPEGImageReader::decode): Hookup ignoreGammaAndColorProfile setting with color profile processing.
  7439. * platform/image-decoders/png/PNGImageDecoder.cpp:
  7440. (WebCore::PNGImageDecoder::headerAvailable): Ditto.
  7441. 2010-11-18 Steve Falkenburg <sfalken@apple.com>
  7442. Reviewed by Adam Roben.
  7443. Remove leftover Windows Debug_Internal configurations
  7444. https://bugs.webkit.org/show_bug.cgi?id=49758
  7445. * WebCore.vcproj/QTMovieWin.vcproj:
  7446. * WebCore.vcproj/WebCore.vcproj:
  7447. 2010-11-18 Sheriff Bot <webkit.review.bot@gmail.com>
  7448. Unreviewed, rolling out r72299.
  7449. http://trac.webkit.org/changeset/72299
  7450. https://bugs.webkit.org/show_bug.cgi?id=49761
  7451. Broke chromium ui test SessionHistoryTest.FrameBackForward.
  7452. (Requested by dave_levin on #webkit).
  7453. * loader/HistoryController.cpp:
  7454. (WebCore::HistoryController::HistoryController):
  7455. (WebCore::HistoryController::saveDocumentState):
  7456. (WebCore::HistoryController::updateForBackForwardNavigation):
  7457. (WebCore::HistoryController::updateForCommit):
  7458. (WebCore::HistoryController::updateForFrameLoadCompleted):
  7459. (WebCore::HistoryController::setCurrentItem):
  7460. (WebCore::HistoryController::createItem):
  7461. (WebCore::HistoryController::createItemTree):
  7462. (WebCore::HistoryController::recursiveGoToItem):
  7463. * loader/HistoryController.h:
  7464. 2010-11-18 James Robinson <jamesr@chromium.org>
  7465. Reviewed by Darin Fisher.
  7466. [chromium] REGRESSION(72141): Chromium fails acid3 on windows and linux
  7467. https://bugs.webkit.org/show_bug.cgi?id=49638
  7468. Avoid clamping zero text size to 12pt in FontPlatformData::setupPaint() in FontPlatformDataLinux.cpp
  7469. Set all metrics to 0 if the font size is specified as zero in SimpleFontDataChromiumWin.cpp, just
  7470. like Safari Win did in r72270.
  7471. Test: fast/text/font-size-zero.html
  7472. * platform/graphics/chromium/FontPlatformDataLinux.cpp:
  7473. (WebCore::FontPlatformData::setupPaint):
  7474. * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:
  7475. (WebCore::SimpleFontData::platformInit):
  7476. 2010-11-18 Rob Buis <rwlbuis@gmail.com>
  7477. Reviewed by Simon Fraser.
  7478. Only inject fullscreen.css when in fullscreen
  7479. https://bugs.webkit.org/show_bug.cgi?id=49510
  7480. Refactor to only add fullscreen sheet rules when document is in fullscreen mode.
  7481. * css/CSSStyleSelector.cpp:
  7482. (WebCore::CSSStyleSelector::CSSStyleSelector):
  7483. (WebCore::loadFullDefaultStyle):
  7484. (WebCore::loadFullScreenRulesIfNeeded):
  7485. (WebCore::CSSStyleSelector::styleForElement):
  7486. 2010-11-18 Steve Falkenburg <sfalken@apple.com>
  7487. Reviewed by Adam Roben.
  7488. Debug_Internal Windows configuration is unnecessary, should be removed
  7489. https://bugs.webkit.org/show_bug.cgi?id=49753
  7490. * WebCorePrefix.h:
  7491. 2010-11-18 Steve Falkenburg <sfalken@apple.com>
  7492. Reviewed by Adam Roben.
  7493. Clean up vcproj errors
  7494. https://bugs.webkit.org/show_bug.cgi?id=49741
  7495. * WebCore.vcproj/WebCore.vcproj:
  7496. 2010-11-18 Alexey Proskuryakov <ap@apple.com>
  7497. Reviewed by Anders Carlsson.
  7498. https://bugs.webkit.org/show_bug.cgi?id=49694
  7499. Add some comments about XSLStyleSheet owner node
  7500. No change in behavior, so no tests.
  7501. * dom/ProcessingInstruction.cpp:
  7502. (WebCore::ProcessingInstruction::checkStyleSheet):
  7503. * xml/XSLStyleSheet.h:
  7504. (WebCore::XSLStyleSheet::create):
  7505. (WebCore::XSLStyleSheet::createEmbedded):
  7506. (WebCore::XSLStyleSheet::createForXSLTProcessor):
  7507. * xml/XSLStyleSheetLibxslt.cpp:
  7508. (WebCore::XSLStyleSheet::XSLStyleSheet):
  7509. * xml/XSLTProcessorLibxslt.cpp:
  7510. (WebCore::xsltStylesheetPointer):
  7511. * xml/XSLTProcessorQt.cpp:
  7512. (WebCore::XSLTProcessor::transformToString):
  7513. 2010-11-18 Jer Noble <jer.noble@apple.com>
  7514. Reviewed by Eric Carlson.
  7515. REGRESSION (Safari 5.0.1): HTML5 videos on YouTube never start playing on Windows
  7516. https://bugs.webkit.org/show_bug.cgi?id=44439
  7517. <rdar://problem/8342407>
  7518. setUpCookiesForQuickTime() previously depended on having setFrameView() called first
  7519. in order to get a Frame, and when it wasn't set, the cookie-copy failed. Now,
  7520. setUpCookiesForQuickTime uses the MediaPlayerClient function mediaPlayerOwningDocument()
  7521. to retrieve the document and subsequently, the Frame.
  7522. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
  7523. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::setUpCookiesForQuickTime):
  7524. 2010-11-18 Joseph Pecoraro <joepeck@webkit.org>
  7525. Reviewed by Darin Adler.
  7526. Allow no-store resources to be used for back navigation
  7527. https://bugs.webkit.org/show_bug.cgi?id=49672
  7528. Test: http/tests/cache/history-only-cached-subresource-loads.html
  7529. HTTP allows "Cache-Control: no-store" resources to "cached" for the
  7530. purposes of history, such as back/forward navigation. Previously
  7531. WebCore just immediately evicted these resources, now we leave them in
  7532. the cache as long as they are not "https". This allows us to use them
  7533. if they are used in a back navigation, or lazily evict and replace
  7534. them on other load types expecting non-stale resources.
  7535. (WebCore::CachedResource::CachedResource):
  7536. (WebCore::CachedResource::removeClient): instead of immediately removing the resource from the cache, leave it in the cache.
  7537. * loader/cache/CachedResourceLoader.cpp:
  7538. (WebCore::CachedResourceLoader::checkForReload):
  7539. (WebCore::CachedResourceLoader::requestResource): allow history only resources if the CachePolicy is CachePolicyHistoryBuffer (back/forward navigation).
  7540. * loader/cache/MemoryCache.cpp:
  7541. (WebCore::MemoryCache::requestResource): lazily remove history only resources if it is requested for a load type expecting non-stale resources.
  7542. * loader/cache/MemoryCache.h: default the forHistory parameter to false.
  7543. Rename cache policy CachePolicyAllowStale to CachePolicyHistoryBuffer.
  7544. * loader/FrameLoader.cpp:
  7545. (WebCore::FrameLoader::subresourceCachePolicy):
  7546. * loader/cache/CachePolicy.h:
  7547. * loader/cache/CachedResource.cpp:
  7548. 2010-11-18 Alexey Proskuryakov <ap@apple.com>
  7549. Reviewed by Darin Adler.
  7550. https://bugs.webkit.org/show_bug.cgi?id=49700
  7551. XSLTProcessor.importNode is only tested with document nodes, and hits an assertion
  7552. Test: fast/xsl/import-non-document-node.xhtml
  7553. * css/CSSStyleSheet.cpp:
  7554. (WebCore::isAcceptableCSSStyleSheetParent):
  7555. (WebCore::CSSStyleSheet::CSSStyleSheet):
  7556. * css/StyleSheet.cpp:
  7557. (WebCore::StyleSheet::StyleSheet):
  7558. Moved the assertion - hopefully, it's valid for CSS stylesheets.
  7559. 2010-11-18 Charlie Reis <creis@chromium.org>
  7560. Reviewed by Darin Fisher.
  7561. Update correct content state during back/forward navigations
  7562. https://bugs.webkit.org/show_bug.cgi?id=48809
  7563. Ensures that history's previousItem is non-null when clients try to
  7564. update content state (e.g., Chromium's UpdateSessionHistory). We now
  7565. track load completions with a boolean field rather than by clearing
  7566. previousItem.
  7567. Behavior covered by existing tests in fast/history and fast/loader.
  7568. * loader/HistoryController.cpp:
  7569. 2010-11-18 Sheriff Bot <webkit.review.bot@gmail.com>
  7570. Unreviewed, rolling out r72288.
  7571. http://trac.webkit.org/changeset/72288
  7572. https://bugs.webkit.org/show_bug.cgi?id=49730
  7573. 'krit attempted to do that, but revert got stuck' (Requested
  7574. by antonm on #webkit).
  7575. * Android.mk:
  7576. * CMakeLists.txt:
  7577. * DerivedSources.make:
  7578. * GNUmakefile.am:
  7579. * WebCore.gyp/WebCore.gyp:
  7580. * WebCore.gypi:
  7581. * WebCore.order:
  7582. * WebCore.pro:
  7583. * WebCore.vcproj/WebCore.vcproj:
  7584. * WebCore.xcodeproj/project.pbxproj:
  7585. * bindings/js/JSBindingsAllInOne.cpp:
  7586. * bindings/js/JSDOMBinding.cpp:
  7587. (WebCore::setDOMException):
  7588. * bindings/js/JSDOMBinding.h:
  7589. (WebCore::createDOMObjectWrapper):
  7590. (WebCore::getDOMObjectWrapper):
  7591. * bindings/js/JSSVGPathSegCustom.cpp:
  7592. (WebCore::toJS):
  7593. * bindings/js/JSSVGPathSegListCustom.cpp: Added.
  7594. (WebCore::JSSVGPathSegList::clear):
  7595. (WebCore::JSSVGPathSegList::initialize):
  7596. (WebCore::JSSVGPathSegList::getItem):
  7597. (WebCore::JSSVGPathSegList::insertItemBefore):
  7598. (WebCore::JSSVGPathSegList::replaceItem):
  7599. (WebCore::JSSVGPathSegList::removeItem):
  7600. (WebCore::JSSVGPathSegList::appendItem):
  7601. * bindings/scripts/CodeGenerator.pm:
  7602. * bindings/scripts/CodeGeneratorJS.pm:
  7603. * bindings/scripts/CodeGeneratorObjC.pm:
  7604. * bindings/scripts/CodeGeneratorV8.pm:
  7605. * rendering/SVGRenderTreeAsText.cpp:
  7606. (WebCore::operator<<):
  7607. * svg/SVGAllInOne.cpp:
  7608. * svg/SVGAnimatedPathData.cpp: Added.
  7609. * svg/SVGAnimatedPathData.h: Copied from WebCore/svg/SVGPathSegClosePath.h.
  7610. (WebCore::SVGAnimatedPathData::~SVGAnimatedPathData):
  7611. * svg/SVGAnimatedPathData.idl: Copied from WebCore/svg/SVGPathSegCurvetoQuadraticAbs.idl.
  7612. * svg/SVGPathElement.cpp:
  7613. (WebCore::SVGPathElement::SVGPathElement):
  7614. (WebCore::SVGPathElement::getPathSegAtLength):
  7615. (WebCore::SVGPathElement::createSVGPathSegClosePath):
  7616. (WebCore::SVGPathElement::createSVGPathSegMovetoAbs):
  7617. (WebCore::SVGPathElement::createSVGPathSegMovetoRel):
  7618. (WebCore::SVGPathElement::createSVGPathSegLinetoAbs):
  7619. (WebCore::SVGPathElement::createSVGPathSegLinetoRel):
  7620. (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicAbs):
  7621. (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicRel):
  7622. (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticAbs):
  7623. (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticRel):
  7624. (WebCore::SVGPathElement::createSVGPathSegArcAbs):
  7625. (WebCore::SVGPathElement::createSVGPathSegArcRel):
  7626. (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalAbs):
  7627. (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalRel):
  7628. (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalAbs):
  7629. (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalRel):
  7630. (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothAbs):
  7631. (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothRel):
  7632. (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothAbs):
  7633. (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothRel):
  7634. (WebCore::SVGPathElement::parseMappedAttribute):
  7635. (WebCore::SVGPathElement::svgAttributeChanged):
  7636. (WebCore::SVGPathElement::synchronizeProperty):
  7637. (WebCore::SVGPathElement::pathSegList):
  7638. (WebCore::SVGPathElement::normalizedPathSegList):
  7639. (WebCore::SVGPathElement::animatedPathSegList):
  7640. (WebCore::SVGPathElement::animatedNormalizedPathSegList):
  7641. (WebCore::SVGPathElement::toPathData):
  7642. * svg/SVGPathElement.h:
  7643. (WebCore::SVGPathElement::isValid):
  7644. (WebCore::SVGPathElement::supportsMarkers):
  7645. * svg/SVGPathElement.idl:
  7646. * svg/SVGPathParserFactory.cpp:
  7647. (WebCore::globalSVGPathSegListBuilder):
  7648. (WebCore::SVGPathParserFactory::buildPathFromByteStream):
  7649. (WebCore::SVGPathParserFactory::buildPathFromSVGPathSegList):
  7650. (WebCore::SVGPathParserFactory::buildSVGPathSegListFromString):
  7651. (WebCore::SVGPathParserFactory::buildSVGPathSegListFromByteStream):
  7652. (WebCore::SVGPathParserFactory::buildStringFromSVGPathSegList):
  7653. (WebCore::SVGPathParserFactory::buildSVGPathByteStreamFromString):
  7654. (WebCore::SVGPathParserFactory::buildAnimatedSVGPathByteStream):
  7655. (WebCore::SVGPathParserFactory::getSVGPathSegAtLengthFromSVGPathSegList):
  7656. * svg/SVGPathParserFactory.h:
  7657. * svg/SVGPathSeg.cpp: Copied from WebCore/svg/SVGPathSegLinetoHorizontalRel.idl.
  7658. (WebCore::SVGPathSeg::associatedAttributeName):
  7659. * svg/SVGPathSeg.h:
  7660. (WebCore::SVGPathSegSingleCoord::setX):
  7661. (WebCore::SVGPathSegSingleCoord::x):
  7662. (WebCore::SVGPathSegSingleCoord::setY):
  7663. (WebCore::SVGPathSegSingleCoord::y):
  7664. (WebCore::SVGPathSegSingleCoord::SVGPathSegSingleCoord):
  7665. * svg/SVGPathSeg.idl:
  7666. * svg/SVGPathSegArc.cpp: Copied from WebCore/svg/SVGPathSegClosePath.h.
  7667. (WebCore::SVGPathSegArcAbs::SVGPathSegArcAbs):
  7668. (WebCore::SVGPathSegArcRel::SVGPathSegArcRel):
  7669. * svg/SVGPathSegArc.h:
  7670. (WebCore::SVGPathSegArc::SVGPathSegArc):
  7671. (WebCore::SVGPathSegArc::setX):
  7672. (WebCore::SVGPathSegArc::x):
  7673. (WebCore::SVGPathSegArc::setY):
  7674. (WebCore::SVGPathSegArc::y):
  7675. (WebCore::SVGPathSegArc::setR1):
  7676. (WebCore::SVGPathSegArc::r1):
  7677. (WebCore::SVGPathSegArc::setR2):
  7678. (WebCore::SVGPathSegArc::r2):
  7679. (WebCore::SVGPathSegArc::setAngle):
  7680. (WebCore::SVGPathSegArc::angle):
  7681. (WebCore::SVGPathSegArc::setLargeArcFlag):
  7682. (WebCore::SVGPathSegArc::largeArcFlag):
  7683. (WebCore::SVGPathSegArc::setSweepFlag):
  7684. (WebCore::SVGPathSegArc::sweepFlag):
  7685. (WebCore::SVGPathSegArcAbs::create):
  7686. (WebCore::SVGPathSegArcAbs::pathSegType):
  7687. (WebCore::SVGPathSegArcAbs::pathSegTypeAsLetter):
  7688. (WebCore::SVGPathSegArcRel::create):
  7689. (WebCore::SVGPathSegArcRel::pathSegType):
  7690. (WebCore::SVGPathSegArcRel::pathSegTypeAsLetter):
  7691. * svg/SVGPathSegArcAbs.idl:
  7692. * svg/SVGPathSegArcRel.idl:
  7693. * svg/SVGPathSegClosePath.cpp: Added.
  7694. * svg/SVGPathSegClosePath.h:
  7695. (WebCore::SVGPathSegClosePath::create):
  7696. (WebCore::SVGPathSegClosePath::SVGPathSegClosePath):
  7697. * svg/SVGPathSegCurvetoCubic.cpp: Copied from WebCore/svg/SVGPathSegClosePath.h.
  7698. (WebCore::SVGPathSegCurvetoCubicAbs::SVGPathSegCurvetoCubicAbs):
  7699. (WebCore::SVGPathSegCurvetoCubicRel::SVGPathSegCurvetoCubicRel):
  7700. * svg/SVGPathSegCurvetoCubic.h:
  7701. (WebCore::SVGPathSegCurvetoCubic::SVGPathSegCurvetoCubic):
  7702. (WebCore::SVGPathSegCurvetoCubic::setX):
  7703. (WebCore::SVGPathSegCurvetoCubic::x):
  7704. (WebCore::SVGPathSegCurvetoCubic::setY):
  7705. (WebCore::SVGPathSegCurvetoCubic::y):
  7706. (WebCore::SVGPathSegCurvetoCubic::setX1):
  7707. (WebCore::SVGPathSegCurvetoCubic::x1):
  7708. (WebCore::SVGPathSegCurvetoCubic::setY1):
  7709. (WebCore::SVGPathSegCurvetoCubic::y1):
  7710. (WebCore::SVGPathSegCurvetoCubic::setX2):
  7711. (WebCore::SVGPathSegCurvetoCubic::x2):
  7712. (WebCore::SVGPathSegCurvetoCubic::setY2):
  7713. (WebCore::SVGPathSegCurvetoCubic::y2):
  7714. (WebCore::SVGPathSegCurvetoCubicAbs::create):
  7715. (WebCore::SVGPathSegCurvetoCubicAbs::pathSegType):
  7716. (WebCore::SVGPathSegCurvetoCubicAbs::pathSegTypeAsLetter):
  7717. (WebCore::SVGPathSegCurvetoCubicRel::create):
  7718. (WebCore::SVGPathSegCurvetoCubicRel::pathSegType):
  7719. (WebCore::SVGPathSegCurvetoCubicRel::pathSegTypeAsLetter):
  7720. * svg/SVGPathSegCurvetoCubicAbs.idl:
  7721. * svg/SVGPathSegCurvetoCubicRel.idl:
  7722. * svg/SVGPathSegCurvetoCubicSmooth.cpp: Copied from WebCore/svg/SVGPathSegClosePath.h.
  7723. (WebCore::SVGPathSegCurvetoCubicSmoothAbs::SVGPathSegCurvetoCubicSmoothAbs):
  7724. (WebCore::SVGPathSegCurvetoCubicSmoothRel::SVGPathSegCurvetoCubicSmoothRel):
  7725. * svg/SVGPathSegCurvetoCubicSmooth.h:
  7726. (WebCore::SVGPathSegCurvetoCubicSmooth::SVGPathSegCurvetoCubicSmooth):
  7727. (WebCore::SVGPathSegCurvetoCubicSmooth::setX):
  7728. (WebCore::SVGPathSegCurvetoCubicSmooth::x):
  7729. (WebCore::SVGPathSegCurvetoCubicSmooth::setY):
  7730. (WebCore::SVGPathSegCurvetoCubicSmooth::y):
  7731. (WebCore::SVGPathSegCurvetoCubicSmooth::setX2):
  7732. (WebCore::SVGPathSegCurvetoCubicSmooth::x2):
  7733. (WebCore::SVGPathSegCurvetoCubicSmooth::setY2):
  7734. (WebCore::SVGPathSegCurvetoCubicSmooth::y2):
  7735. (WebCore::SVGPathSegCurvetoCubicSmoothAbs::create):
  7736. (WebCore::SVGPathSegCurvetoCubicSmoothAbs::pathSegType):
  7737. (WebCore::SVGPathSegCurvetoCubicSmoothAbs::pathSegTypeAsLetter):
  7738. (WebCore::SVGPathSegCurvetoCubicSmoothRel::create):
  7739. (WebCore::SVGPathSegCurvetoCubicSmoothRel::pathSegType):
  7740. (WebCore::SVGPathSegCurvetoCubicSmoothRel::pathSegTypeAsLetter):
  7741. * svg/SVGPathSegCurvetoCubicSmoothAbs.idl:
  7742. * svg/SVGPathSegCurvetoCubicSmoothRel.idl:
  7743. * svg/SVGPathSegCurvetoQuadratic.cpp: Copied from WebCore/svg/SVGPathSegClosePath.h.
  7744. (WebCore::SVGPathSegCurvetoQuadraticAbs::SVGPathSegCurvetoQuadraticAbs):
  7745. (WebCore::SVGPathSegCurvetoQuadraticRel::SVGPathSegCurvetoQuadraticRel):
  7746. * svg/SVGPathSegCurvetoQuadratic.h:
  7747. (WebCore::SVGPathSegCurvetoQuadratic::SVGPathSegCurvetoQuadratic):
  7748. (WebCore::SVGPathSegCurvetoQuadratic::setX):
  7749. (WebCore::SVGPathSegCurvetoQuadratic::x):
  7750. (WebCore::SVGPathSegCurvetoQuadratic::setY):
  7751. (WebCore::SVGPathSegCurvetoQuadratic::y):
  7752. (WebCore::SVGPathSegCurvetoQuadratic::setX1):
  7753. (WebCore::SVGPathSegCurvetoQuadratic::x1):
  7754. (WebCore::SVGPathSegCurvetoQuadratic::setY1):
  7755. (WebCore::SVGPathSegCurvetoQuadratic::y1):
  7756. (WebCore::SVGPathSegCurvetoQuadraticAbs::create):
  7757. (WebCore::SVGPathSegCurvetoQuadraticAbs::pathSegType):
  7758. (WebCore::SVGPathSegCurvetoQuadraticAbs::pathSegTypeAsLetter):
  7759. (WebCore::SVGPathSegCurvetoQuadraticRel::create):
  7760. (WebCore::SVGPathSegCurvetoQuadraticRel::pathSegType):
  7761. (WebCore::SVGPathSegCurvetoQuadraticRel::pathSegTypeAsLetter):
  7762. * svg/SVGPathSegCurvetoQuadraticAbs.idl:
  7763. * svg/SVGPathSegCurvetoQuadraticRel.idl:
  7764. * svg/SVGPathSegCurvetoQuadraticSmooth.cpp: Copied from WebCore/svg/SVGPathSegClosePath.h.
  7765. (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::SVGPathSegCurvetoQuadraticSmoothAbs):
  7766. (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::SVGPathSegCurvetoQuadraticSmoothRel):
  7767. * svg/SVGPathSegCurvetoQuadraticSmooth.h:
  7768. (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::create):
  7769. (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::pathSegType):
  7770. (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::pathSegTypeAsLetter):
  7771. (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::create):
  7772. (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::pathSegType):
  7773. (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::pathSegTypeAsLetter):
  7774. * svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl:
  7775. * svg/SVGPathSegCurvetoQuadraticSmoothRel.idl:
  7776. * svg/SVGPathSegLineto.cpp: Copied from WebCore/svg/SVGPathSegClosePath.h.
  7777. (WebCore::SVGPathSegLinetoAbs::SVGPathSegLinetoAbs):
  7778. (WebCore::SVGPathSegLinetoRel::SVGPathSegLinetoRel):
  7779. * svg/SVGPathSegLineto.h:
  7780. (WebCore::SVGPathSegLinetoAbs::create):
  7781. (WebCore::SVGPathSegLinetoAbs::pathSegType):
  7782. (WebCore::SVGPathSegLinetoAbs::pathSegTypeAsLetter):
  7783. (WebCore::SVGPathSegLinetoRel::create):
  7784. (WebCore::SVGPathSegLinetoRel::pathSegType):
  7785. (WebCore::SVGPathSegLinetoRel::pathSegTypeAsLetter):
  7786. * svg/SVGPathSegLinetoAbs.idl:
  7787. * svg/SVGPathSegLinetoHorizontal.cpp: Copied from WebCore/svg/SVGPathSegClosePath.h.
  7788. (WebCore::SVGPathSegLinetoHorizontalAbs::SVGPathSegLinetoHorizontalAbs):
  7789. (WebCore::SVGPathSegLinetoHorizontalRel::SVGPathSegLinetoHorizontalRel):
  7790. * svg/SVGPathSegLinetoHorizontal.h:
  7791. (WebCore::SVGPathSegLinetoHorizontal::SVGPathSegLinetoHorizontal):
  7792. (WebCore::SVGPathSegLinetoHorizontal::setX):
  7793. (WebCore::SVGPathSegLinetoHorizontal::x):
  7794. (WebCore::SVGPathSegLinetoHorizontalAbs::create):
  7795. (WebCore::SVGPathSegLinetoHorizontalAbs::pathSegType):
  7796. (WebCore::SVGPathSegLinetoHorizontalAbs::pathSegTypeAsLetter):
  7797. (WebCore::SVGPathSegLinetoHorizontalRel::create):
  7798. (WebCore::SVGPathSegLinetoHorizontalRel::pathSegType):
  7799. (WebCore::SVGPathSegLinetoHorizontalRel::pathSegTypeAsLetter):
  7800. * svg/SVGPathSegLinetoHorizontalAbs.idl:
  7801. * svg/SVGPathSegLinetoHorizontalRel.idl:
  7802. * svg/SVGPathSegLinetoRel.idl:
  7803. * svg/SVGPathSegLinetoVertical.cpp: Copied from WebCore/svg/SVGPathSegClosePath.h.
  7804. (WebCore::SVGPathSegLinetoVerticalAbs::SVGPathSegLinetoVerticalAbs):
  7805. (WebCore::SVGPathSegLinetoVerticalRel::SVGPathSegLinetoVerticalRel):
  7806. * svg/SVGPathSegLinetoVertical.h:
  7807. (WebCore::SVGPathSegLinetoVertical::SVGPathSegLinetoVertical):
  7808. (WebCore::SVGPathSegLinetoVertical::setY):
  7809. (WebCore::SVGPathSegLinetoVertical::y):
  7810. (WebCore::SVGPathSegLinetoVerticalAbs::create):
  7811. (WebCore::SVGPathSegLinetoVerticalAbs::pathSegType):
  7812. (WebCore::SVGPathSegLinetoVerticalAbs::pathSegTypeAsLetter):
  7813. (WebCore::SVGPathSegLinetoVerticalRel::create):
  7814. (WebCore::SVGPathSegLinetoVerticalRel::pathSegType):
  7815. (WebCore::SVGPathSegLinetoVerticalRel::pathSegTypeAsLetter):
  7816. * svg/SVGPathSegLinetoVerticalAbs.idl:
  7817. * svg/SVGPathSegLinetoVerticalRel.idl:
  7818. * svg/SVGPathSegList.cpp:
  7819. (WebCore::SVGPathSegList::SVGPathSegList):
  7820. * svg/SVGPathSegList.h:
  7821. (WebCore::SVGPathSegList::create):
  7822. * svg/SVGPathSegList.idl:
  7823. * svg/SVGPathSegListBuilder.cpp:
  7824. (WebCore::SVGPathSegListBuilder::SVGPathSegListBuilder):
  7825. (WebCore::SVGPathSegListBuilder::moveTo):
  7826. (WebCore::SVGPathSegListBuilder::lineTo):
  7827. (WebCore::SVGPathSegListBuilder::lineToHorizontal):
  7828. (WebCore::SVGPathSegListBuilder::lineToVertical):
  7829. (WebCore::SVGPathSegListBuilder::curveToCubic):
  7830. (WebCore::SVGPathSegListBuilder::curveToCubicSmooth):
  7831. (WebCore::SVGPathSegListBuilder::curveToQuadratic):
  7832. (WebCore::SVGPathSegListBuilder::curveToQuadraticSmooth):
  7833. (WebCore::SVGPathSegListBuilder::arcTo):
  7834. (WebCore::SVGPathSegListBuilder::closePath):
  7835. * svg/SVGPathSegListBuilder.h:
  7836. (WebCore::SVGPathSegListBuilder::setCurrentSVGPathSegList):
  7837. (WebCore::SVGPathSegListBuilder::cleanup):
  7838. * svg/SVGPathSegListSource.cpp:
  7839. (WebCore::SVGPathSegListSource::SVGPathSegListSource):
  7840. (WebCore::SVGPathSegListSource::parseSVGSegmentType):
  7841. (WebCore::SVGPathSegListSource::nextCommand):
  7842. (WebCore::SVGPathSegListSource::parseMoveToSegment):
  7843. (WebCore::SVGPathSegListSource::parseLineToSegment):
  7844. (WebCore::SVGPathSegListSource::parseCurveToQuadraticSmoothSegment):
  7845. * svg/SVGPathSegListSource.h:
  7846. (WebCore::SVGPathSegListSource::create):
  7847. * svg/SVGPathSegMoveto.cpp: Copied from WebCore/svg/SVGPathSegClosePath.h.
  7848. (WebCore::SVGPathSegMovetoAbs::SVGPathSegMovetoAbs):
  7849. (WebCore::SVGPathSegMovetoRel::SVGPathSegMovetoRel):
  7850. * svg/SVGPathSegMoveto.h:
  7851. (WebCore::SVGPathSegMovetoAbs::create):
  7852. (WebCore::SVGPathSegMovetoAbs::pathSegType):
  7853. (WebCore::SVGPathSegMovetoAbs::pathSegTypeAsLetter):
  7854. (WebCore::SVGPathSegMovetoRel::create):
  7855. (WebCore::SVGPathSegMovetoRel::pathSegType):
  7856. (WebCore::SVGPathSegMovetoRel::pathSegTypeAsLetter):
  7857. * svg/SVGPathSegMovetoAbs.idl:
  7858. * svg/SVGPathSegMovetoRel.idl:
  7859. * svg/SVGPathSegWithContext.h: Removed.
  7860. * svg/properties/SVGAnimatedPathSegListPropertyTearOff.h: Removed.
  7861. * svg/properties/SVGPathSegListPropertyTearOff.cpp: Removed.
  7862. * svg/properties/SVGPathSegListPropertyTearOff.h: Removed.
  7863. 2010-11-18 Sheriff Bot <webkit.review.bot@gmail.com>
  7864. Unreviewed, rolling out r72292.
  7865. http://trac.webkit.org/changeset/72292
  7866. https://bugs.webkit.org/show_bug.cgi?id=49732
  7867. will break win build (Requested by loislo on #webkit).
  7868. * inspector/CodeGeneratorInspector.pm:
  7869. 2010-11-18 Ilya Tikhonovsky <loislo@chromium.org>
  7870. Reviewed by Yury Semikhatsky.
  7871. Web Inspector: reduce the footprint of InspectorBackendDispatcher.
  7872. InspectorBackendDispatcher is a generated file.
  7873. Its content is not optimal and loc may be reduced by a quarter.
  7874. In each generated function we have a code for getting 'in' values from
  7875. the arguments properties object. I've extracted this code into separate getters.
  7876. The side effect is better readability of the generated code.
  7877. https://bugs.webkit.org/show_bug.cgi?id=49729
  7878. * inspector/CodeGeneratorInspector.pm:
  7879. 2010-11-18 Alexander Pavlov <apavlov@chromium.org>
  7880. Reviewed by Pavel Feldman.
  7881. [v8] fast/css/getFloatValueForUnit.html fails since http://trac.webkit.org/changeset/72189
  7882. https://bugs.webkit.org/show_bug.cgi?id=49656
  7883. Explicitly specify indexerType for the generation of V8WebKitCSSTransformValue binding.
  7884. * bindings/scripts/CodeGeneratorV8.pm:
  7885. 2010-11-18 Nikolas Zimmermann <nzimmermann@rim.com>
  7886. Reviewed by Dirk Schulze.
  7887. Convert SVGPathSeg/SVGPathSegList to the new SVGPropertyTearOff concept
  7888. https://bugs.webkit.org/show_bug.cgi?id=49580
  7889. SVGPathElement.cloneNode loses generated pathSegList
  7890. https://bugs.webkit.org/show_bug.cgi?id=43388
  7891. SVG Path elements are not correctly updated through pathSegList manipulation on relative values
  7892. https://bugs.webkit.org/show_bug.cgi?id=30219
  7893. Changing an SVGPathSeg does not update a following Smooth Cubic Curveto
  7894. https://bugs.webkit.org/show_bug.cgi?id=19741
  7895. SVGPathElement should only build SVGPathSeg* list on demand
  7896. https://bugs.webkit.org/show_bug.cgi?id=10827
  7897. Tests: svg/W3C-SVG-1.1-SE/paths-dom-02-f.svg
  7898. svg/dom/SVGPathSegList-appendItem.xhtml
  7899. svg/dom/SVGPathSegList-clear-and-initialize.xhtml
  7900. svg/dom/SVGPathSegList-cloning.html
  7901. svg/dom/SVGPathSegList-insertItemBefore.xhtml
  7902. svg/dom/SVGPathSegList-removeItem.xhtml
  7903. svg/dom/SVGPathSegList-replaceItem.xhtml
  7904. svg/dom/SVGPathSegList-xml-dom-synchronization.xhtml
  7905. svg/dom/SVGPathSegList-xml-dom-synchronization2.xhtml
  7906. svg/dom/SVGPathSegList-segment-modification.svg
  7907. Convert SVGPathSeg*/SVGPathSegList to the new SVG(Animated)PropertyTearOff concept.
  7908. Unlike all other SVG* types that use the SVGPropertyTearOff concept, SVGPathSegs are already refcounted,
  7909. and don't need to be wrapped in SVGPropertyTearOff objects. The consequence is that SVGPathSegs need to track
  7910. themselves to which list and path element they belong. Introduce new SVGAnimatedPathSegListPropertyTearOff
  7911. and SVGPathSegListPropertyTearOff classes, that encapsulate the special needed for SVGPathSegList.
  7912. Each SVGPathSeg now needs to store a RefPtr<SVGPathElement> - this makes it impossible to use SVGPathSegList
  7913. to represent the 'd' attribute internally in SVGPathElement. SVGPathSegList is now only used in the SVG DOM bindings
  7914. if someone explicitely requests 'pathElement.pathSegList' (eg. via JS). Switch to use SVGPathByteStream to store
  7915. the 'd' attribute data in SVGPathElement, which is much more compact, and less memory intensive.
  7916. Dirk already prepared SVGPathParserFactory some months ago, which allows easy conversion between
  7917. String/Path/SVGPathSegList/SVGPathByteStream in all directions, including normalizing the lists, when requested.
  7918. As consequence SVGPathSegList is now only built on demand, when explicitely requested. Using the SVGAnimatedProperty
  7919. concept gives us 'd' attribute <-> SVGPathSegList synchronization for free, fixing several bugs, listed above.
  7920. * Android.mk: Remove obsolete SVGPathSeg*.cpp files and SVGAnimatedPathData.cpp from build.
  7921. * CMakeLists.txt: Ditto.
  7922. * DerivedSources.make: Remove SVGAnimatedPathData IDL generation.
  7923. * GNUmakefile.am: Remove obsolete SVGPathSeg*.cpp files and SVGAnimatedPathData.cpp from build.
  7924. * WebCore.gyp/WebCore.gyp: Remove SVGAnimatedPathData IDL generation.
  7925. * WebCore.gypi: Remove obsolete SVGPathSeg*.cpp files and SVGAnimatedPathData.cpp from build.
  7926. * WebCore.order: Remove no-longer existant SVGAnimatedPathData symbols.
  7927. * WebCore.pro: Remove obsolete SVGPathSeg*.cpp files and SVGAnimatedPathData.cpp / JSSVGPathSegCustom.* from build.
  7928. * WebCore.vcproj/WebCore.vcproj: Ditto.
  7929. * WebCore.xcodeproj/project.pbxproj: Ditto.
  7930. * bindings/js/JSBindingsAllInOne.cpp: Remove JSSVGPathSegCustom.cpp from build.
  7931. * bindings/js/JSDOMBinding.cpp: Adapt to toJS() changes, remove context parameter.
  7932. (WebCore::setDOMException):
  7933. * bindings/js/JSDOMBinding.h: Remove obsolete CREATE_SVG_OBJECT_WRAPPER macro, the context parameter is not existant anymore.
  7934. * bindings/js/JSSVGPathSegCustom.cpp: Replace CREATE_SVG_OBJECT_WRAPPER by CREATE_DOM_OBJECT_WRAPPER. Remove context parameter/handling.
  7935. (WebCore::toJS):
  7936. * bindings/js/JSSVGPathSegListCustom.cpp: Removed.
  7937. * bindings/scripts/CodeGenerator.pm: Map 'SVGPathSegList' IDL type to SVG 'SVGPathSegListPropertyTearOff' native type.
  7938. * bindings/scripts/CodeGeneratorJS.pm: Remove IsSVGTypeNeedingContextParameter() methods and usages. Handle SVGPathSegListPropertyTearOff.
  7939. * bindings/scripts/CodeGeneratorObjC.pm: Handle SVGPathSegListPropertyTearOff.
  7940. * bindings/scripts/CodeGeneratorV8.pm: Remove IsSVGTypeNeedingContextParameter() methods and usages.
  7941. * rendering/SVGRenderTreeAsText.cpp: Build path string from byte stream, not path segment list.
  7942. (WebCore::operator<<):
  7943. * svg/SVGAllInOne.cpp: Remove obsolete cpp files.
  7944. * svg/SVGAnimatedPathData.cpp: Removed.
  7945. * svg/SVGAnimatedPathData.h: Removed.
  7946. * svg/SVGAnimatedPathData.idl: Removed.
  7947. * svg/SVGPathElement.cpp: Build SVGPathList on demand. Use SVGPathByteStream to parse/store the 'd' attribute content.
  7948. (WebCore::SVGPathElement::SVGPathElement):
  7949. (WebCore::SVGPathElement::getPathSegAtLength): Use SVGPathByteStream, not SVGPathSegList to determine the getPathSegAtLength() information.
  7950. (WebCore::SVGPathElement::createSVGPathSegClosePath): Pass SVGPathElement to SVGPathSeg and a SVGPathSegRole parameter and store it to track the list origin.
  7951. (WebCore::SVGPathElement::createSVGPathSegMovetoAbs): Ditto.
  7952. (WebCore::SVGPathElement::createSVGPathSegMovetoRel): Ditto.
  7953. (WebCore::SVGPathElement::createSVGPathSegLinetoAbs): Ditto.
  7954. (WebCore::SVGPathElement::createSVGPathSegLinetoRel): Ditto.
  7955. (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicAbs): Ditto.
  7956. (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicRel): Ditto.
  7957. (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticAbs): Ditto.
  7958. (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticRel): Ditto.
  7959. (WebCore::SVGPathElement::createSVGPathSegArcAbs): Ditto.
  7960. (WebCore::SVGPathElement::createSVGPathSegArcRel): Ditto.
  7961. (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalAbs): Ditto.
  7962. (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalRel): Ditto.
  7963. (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalAbs): Ditto.
  7964. (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalRel): Ditto.
  7965. (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothAbs): Ditto.
  7966. (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothRel): Ditto.
  7967. (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothAbs): Ditto.
  7968. (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothRel): Ditto.
  7969. (WebCore::SVGPathElement::parseMappedAttribute): Build SVGPathByteStream from 'd' attribute, not a SVGPathSegList.
  7970. (WebCore::SVGPathElement::svgAttributeChanged): If a SVGPathSegList object has been built, synchronize it with the 'd' attribute.
  7971. (WebCore::SVGPathElement::synchronizeProperty): Synchronize 'd' attribute with the SVGPathSegList, if needed.
  7972. (WebCore::SVGPathElement::synchronizeD): Added.
  7973. (WebCore::SVGPathElement::pathSegList): Use same trick as in SVGPolyElement to expose the 'pathSegList' / 'animatedPathSegList' object to the SVG DOM bindings.
  7974. (WebCore::SVGPathElement::normalizedPathSegList): Ditto.
  7975. (WebCore::SVGPathElement::animatedPathSegList): Ditto.
  7976. (WebCore::SVGPathElement::animatedNormalizedPathSegList): Ditto.
  7977. (WebCore::SVGPathElement::toPathData): Build 'Path' object from SVGPathByteStream, not from SVGPathSegList.
  7978. (WebCore::SVGPathElement::pathSegListChanged): Used to synchronize the SVGPathSegLists and the d attribute, as well as any changes from any SVGPathSeg associated with this SVGPathElement.
  7979. * svg/SVGPathElement.h: Add new accessors...
  7980. (WebCore::SVGPathElement::pathByteStream): ... needed by SVGRenderTreeAsText.
  7981. (WebCore::SVGPathElement::animatablePathSegList): ... needed by SVGPathSegListPropertyTearOff.
  7982. * svg/SVGPathElement.idl: Merge SVGAnimatedPathData interface into SVGPathElement.
  7983. * svg/SVGPathParserFactory.cpp: Cleanup SVGPathParserFactory, remove obsolete methods, now that SVGPathElement switched to using SVGPathByteStream internally.
  7984. (WebCore::globalSVGPathSegListBuilder):
  7985. (WebCore::SVGPathParserFactory::buildSVGPathByteStreamFromSVGPathSegList):
  7986. (WebCore::SVGPathParserFactory::buildPathFromByteStream):
  7987. (WebCore::SVGPathParserFactory::buildSVGPathSegListFromByteStream):
  7988. (WebCore::SVGPathParserFactory::buildStringFromSVGPathSegList):
  7989. (WebCore::SVGPathParserFactory::buildSVGPathByteStreamFromString):
  7990. (WebCore::SVGPathParserFactory::buildAnimatedSVGPathByteStream):
  7991. (WebCore::SVGPathParserFactory::getSVGPathSegAtLengthFromSVGPathByteStream):
  7992. * svg/SVGPathParserFactory.h:
  7993. * svg/SVGPathSeg.cpp: Removed.
  7994. * svg/SVGPathSeg.h: Add new SVGPathSegRole enum, identifying to which list a path segment belongs.
  7995. (WebCore::SVGPathSeg::SVGPathSeg):
  7996. * svg/SVGPathSeg.idl: Reindented.
  7997. * svg/SVGPathSegArc.cpp: Removed.
  7998. * svg/SVGPathSegArc.h: All setters now call the commitChange() method.
  7999. * svg/SVGPathSegArcAbs.idl: Enable StrictTypeChecking.
  8000. * svg/SVGPathSegArcRel.idl: Ditto.
  8001. * svg/SVGPathSegClosePath.cpp: Removed.
  8002. * svg/SVGPathSegClosePath.h:
  8003. * svg/SVGPathSegCurvetoCubic.cpp: Removed.
  8004. * svg/SVGPathSegCurvetoCubic.h: All setters now call the commitChange() method.
  8005. * svg/SVGPathSegCurvetoCubicAbs.idl: Enable StrictTypeChecking.
  8006. * svg/SVGPathSegCurvetoCubicRel.idl: Ditto.
  8007. * svg/SVGPathSegCurvetoCubicSmooth.cpp: Removed.
  8008. * svg/SVGPathSegCurvetoCubicSmooth.h: All setters now call the commitChange() method.
  8009. * svg/SVGPathSegCurvetoCubicSmoothAbs.idl: Enable StrictTypeChecking.
  8010. * svg/SVGPathSegCurvetoCubicSmoothRel.idl: Ditto.
  8011. * svg/SVGPathSegCurvetoQuadratic.cpp: Removed.
  8012. * svg/SVGPathSegCurvetoQuadratic.h: All setters now call the commitChange() method.
  8013. * svg/SVGPathSegCurvetoQuadraticAbs.idl: Enable StrictTypeChecking.
  8014. * svg/SVGPathSegCurvetoQuadraticRel.idl: Ditto.
  8015. * svg/SVGPathSegCurvetoQuadraticSmooth.cpp: Removed.
  8016. * svg/SVGPathSegCurvetoQuadraticSmooth.h: All setters now call the commitChange() method.
  8017. * svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl: Enable StrictTypeChecking.
  8018. * svg/SVGPathSegCurvetoQuadraticSmoothRel.idl: Ditto.
  8019. * svg/SVGPathSegLineto.cpp: Removed.
  8020. * svg/SVGPathSegLineto.h: All setters now call the commitChange() method.
  8021. * svg/SVGPathSegLinetoAbs.idl: Enable StrictTypeChecking.
  8022. * svg/SVGPathSegLinetoHorizontal.cpp: Removed.
  8023. * svg/SVGPathSegLinetoHorizontal.h: All setters now call the commitChange() method.
  8024. * svg/SVGPathSegLinetoHorizontalAbs.idl: Enable StrictTypeChecking.
  8025. * svg/SVGPathSegLinetoHorizontalRel.idl: Ditto.
  8026. * svg/SVGPathSegLinetoRel.idl: Enable StrictTypeChecking.
  8027. * svg/SVGPathSegLinetoVertical.cpp: Removed.
  8028. * svg/SVGPathSegLinetoVertical.h: All setters now call the commitChange() method.
  8029. * svg/SVGPathSegLinetoVerticalAbs.idl: Enable StrictTypeChecking.
  8030. * svg/SVGPathSegLinetoVerticalRel.idl: Ditto.
  8031. * svg/SVGPathSegList.cpp: Switch from SVGList<RefPtr<SVGPathSeg> > to a plain Vector<RefPtr<SVGPathSeg> >.
  8032. (WebCore::SVGPathSegList::valueAsString): Utilize SVGPathParserFactory to build a String from a SVGPathSegList.
  8033. (WebCore::SVGPathSegList::commitChange): Call SVGPathElement::pathSegListChanged().
  8034. * svg/SVGPathSegList.h:
  8035. (WebCore::SVGPathSegList::SVGPathSegList):
  8036. * svg/SVGPathSegList.idl: Remove [JSCCustom] flags, no longer needed.
  8037. * svg/SVGPathSegListBuilder.cpp: Adapt to SVGPathSegList API changes.
  8038. (WebCore::SVGPathSegListBuilder::SVGPathSegListBuilder):
  8039. (WebCore::SVGPathSegListBuilder::moveTo):
  8040. (WebCore::SVGPathSegListBuilder::lineTo):
  8041. (WebCore::SVGPathSegListBuilder::lineToHorizontal):
  8042. (WebCore::SVGPathSegListBuilder::lineToVertical):
  8043. (WebCore::SVGPathSegListBuilder::curveToCubic):
  8044. (WebCore::SVGPathSegListBuilder::curveToCubicSmooth):
  8045. (WebCore::SVGPathSegListBuilder::curveToQuadratic):
  8046. (WebCore::SVGPathSegListBuilder::curveToQuadraticSmooth):
  8047. (WebCore::SVGPathSegListBuilder::arcTo):
  8048. (WebCore::SVGPathSegListBuilder::closePath):
  8049. * svg/SVGPathSegListBuilder.h: Ditto.
  8050. (WebCore::SVGPathSegListBuilder::setCurrentSVGPathElement):
  8051. (WebCore::SVGPathSegListBuilder::setCurrentSVGPathSegList):
  8052. (WebCore::SVGPathSegListBuilder::setCurrentSVGPathSegRole):
  8053. (WebCore::SVGPathSegListBuilder::cleanup):
  8054. * svg/SVGPathSegListSource.cpp: Ditto.
  8055. (WebCore::SVGPathSegListSource::SVGPathSegListSource):
  8056. (WebCore::SVGPathSegListSource::parseSVGSegmentType):
  8057. (WebCore::SVGPathSegListSource::nextCommand):
  8058. (WebCore::SVGPathSegListSource::parseMoveToSegment):
  8059. (WebCore::SVGPathSegListSource::parseLineToSegment):
  8060. (WebCore::SVGPathSegListSource::parseCurveToQuadraticSmoothSegment):
  8061. * svg/SVGPathSegListSource.h: Ditto.
  8062. (WebCore::SVGPathSegListSource::create):
  8063. * svg/SVGPathSegMoveto.cpp: Removed.
  8064. * svg/SVGPathSegMoveto.h: All setters now call the commitChange() method.
  8065. * svg/SVGPathSegMovetoAbs.idl: Enable StrictTypeChecking.
  8066. * svg/SVGPathSegMovetoRel.idl: Ditto.
  8067. * svg/SVGPathSegWithContext.h: Added. This is the new base class for all SVGPathSeg derived types, that's associated with a SVGPathElement and a 'role' (normalized/unaltered segment list).
  8068. (WebCore::SVGPathSegWithContext::SVGPathSegWithContext):
  8069. (WebCore::SVGPathSegWithContext::animatedProperty):
  8070. (WebCore::SVGPathSegWithContext::setContextAndRole):
  8071. (WebCore::SVGPathSegWithContext::commitChange):
  8072. (WebCore::SVGPathSegSingleCoordinate::x):
  8073. (WebCore::SVGPathSegSingleCoordinate::setX):
  8074. (WebCore::SVGPathSegSingleCoordinate::y):
  8075. (WebCore::SVGPathSegSingleCoordinate::setY):
  8076. (WebCore::SVGPathSegSingleCoordinate::SVGPathSegSingleCoordinate):
  8077. * svg/properties/SVGAnimatedPathSegListPropertyTearOff.h: Added.
  8078. (WebCore::SVGAnimatedPathSegListPropertyTearOff::baseVal):
  8079. (WebCore::SVGAnimatedPathSegListPropertyTearOff::animVal):
  8080. (WebCore::SVGAnimatedPathSegListPropertyTearOff::removeItemFromList):
  8081. (WebCore::SVGAnimatedPathSegListPropertyTearOff::create):
  8082. (WebCore::SVGAnimatedPathSegListPropertyTearOff::SVGAnimatedPathSegListPropertyTearOff):
  8083. * svg/properties/SVGPathSegListPropertyTearOff.cpp: Added.
  8084. (WebCore::SVGPathSegListPropertyTearOff::clear): Added in the cpp file, not in the header, as it needs access to SVGPathSegWithContext, which we can't include from the header.
  8085. (WebCore::SVGPathSegListPropertyTearOff::getItem): Ditto.
  8086. (WebCore::SVGPathSegListPropertyTearOff::removeItem): Ditto.
  8087. (WebCore::SVGPathSegListPropertyTearOff::contextElement): Needs access to SVGPathElement, that's why it lives in the cpp file.
  8088. (WebCore::SVGPathSegListPropertyTearOff::processIncomingListItemValue): Needs access to SVGPathSegWithContext.
  8089. * svg/properties/SVGPathSegListPropertyTearOff.h: Added.
  8090. (WebCore::SVGPathSegListPropertyTearOff::create):
  8091. (WebCore::SVGPathSegListPropertyTearOff::removeItemFromList):
  8092. (WebCore::SVGPathSegListPropertyTearOff::numberOfItems):
  8093. (WebCore::SVGPathSegListPropertyTearOff::initialize):
  8094. (WebCore::SVGPathSegListPropertyTearOff::insertItemBefore):
  8095. (WebCore::SVGPathSegListPropertyTearOff::replaceItem):
  8096. (WebCore::SVGPathSegListPropertyTearOff::appendItem):
  8097. (WebCore::SVGPathSegListPropertyTearOff::SVGPathSegListPropertyTearOff):
  8098. (WebCore::SVGPathSegListPropertyTearOff::commitChange):
  8099. (WebCore::SVGPathSegListPropertyTearOff::processIncomingListItemWrapper):
  8100. 2010-11-18 Mario Sanchez Prada <msanchez@igalia.com>
  8101. Reviewed by Martin Robinson.
  8102. [Gtk] atk_text_get_selection returns the wrong offsets after a link
  8103. https://bugs.webkit.org/show_bug.cgi?id=49514
  8104. Consider possible embedded objects to calculate startOffset.
  8105. So far we were using offsetInContainerNode() to calculate the
  8106. value of startOffset when checking the offsets for the current
  8107. selection, which was wrong because that wouldn't work ok if any
  8108. embedded object was present in the paragraph before the
  8109. selection. Thus, we need to consider this fact when calculating
  8110. the startOffset from the point of view of the object this function
  8111. is called on, in order to return the right and actual values.
  8112. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  8113. (getSelectionOffsetsForObject): Check range length from the first
  8114. position in the object the function is called on until the first
  8115. position of current selection, and use it as startOffset.
  8116. 2010-11-12 Stephen White <senorblanco@chromium.org>
  8117. Reviewed by Simon Fraser.
  8118. Fix for multiple urls in a background-image causing repeated repaints.
  8119. https://bugs.webkit.org/show_bug.cgi?id=42390
  8120. Change the key of RenderBoxModelObject's LastPaintSizeMap to include
  8121. the layer of the element being drawn, so that the same URL used
  8122. repeated in the same background-image, or another element's
  8123. background-image, can be uniquely identified. The layer is a void
  8124. pointer, since it is only used as part of the key and using a
  8125. void pointer will discourage dereferencing it. This pointer is NULL
  8126. when called from RenderImage (<img> elements).
  8127. Covered by fast/backgrounds/size/contain-and-cover.html
  8128. * rendering/RenderBoxModelObject.cpp:
  8129. (WebCore::ImageQualityController::keyDestroyed):
  8130. The old objectDestroyed() is renamed to keyDestroyed().
  8131. (WebCore::ImageQualityController::objectDestroyed):
  8132. The new objectDestroyed() iterates over all outstanding resizes
  8133. to remove any resizes pertaining to this object.
  8134. (WebCore::ImageQualityController::highQualityRepaintTimerFired):
  8135. Retrieve the RenderBoxModelObject from the pair's "first" member.
  8136. (WebCore::ImageQualityController::shouldPaintAtLowQuality):
  8137. Create a key from the {object, layer} pair, and use it to access
  8138. the repaint size map.
  8139. (WebCore::RenderBoxModelObject::shouldPaintAtLowQuality):
  8140. Plumb the layer through to the image quality controller.
  8141. (WebCore::RenderBoxModelObject::paintFillLayerExtended):
  8142. Pass the bgLayer when checking
  8143. * rendering/RenderBoxModelObject.h:
  8144. Add the void* layer parameter to shouldPaintAtLowQuality.
  8145. * rendering/RenderImage.cpp:
  8146. (WebCore::RenderImage::paintIntoRect):
  8147. Pass 0 (null) for the layer parameter in this case.
  8148. 2010-11-18 Chris Rogers <crogers@google.com>
  8149. Reviewed by Dimitri Glazkov.
  8150. Add loadPlatformAudioResource() and decodeAudioFileData() to ChromiumBridge
  8151. https://bugs.webkit.org/show_bug.cgi?id=49557
  8152. No new tests since audio API is not yet implemented.
  8153. * platform/chromium/ChromiumBridge.h:
  8154. 2010-11-17 Sheriff Bot <webkit.review.bot@gmail.com>
  8155. Unreviewed, rolling out r72228.
  8156. http://trac.webkit.org/changeset/72228
  8157. https://bugs.webkit.org/show_bug.cgi?id=49712
  8158. Caused many >10 regressions on Win and Linux gpu layout test
  8159. runs. (Requested by dave_levin on #webkit).
  8160. * html/canvas/WebGLFramebuffer.cpp:
  8161. (WebCore::WebGLFramebuffer::onAccess):
  8162. (WebCore::WebGLFramebuffer::initializeRenderbuffers):
  8163. * html/canvas/WebGLFramebuffer.h:
  8164. * html/canvas/WebGLRenderingContext.cpp:
  8165. (WebCore::WebGLRenderingContext::clear):
  8166. (WebCore::WebGLRenderingContext::copyTexImage2D):
  8167. (WebCore::WebGLRenderingContext::copyTexSubImage2D):
  8168. (WebCore::WebGLRenderingContext::drawArrays):
  8169. (WebCore::WebGLRenderingContext::drawElements):
  8170. (WebCore::WebGLRenderingContext::readPixels):
  8171. (WebCore::WebGLRenderingContext::texImage2DBase):
  8172. 2010-11-17 Sheriff Bot <webkit.review.bot@gmail.com>
  8173. Unreviewed, rolling out r72243.
  8174. http://trac.webkit.org/changeset/72243
  8175. https://bugs.webkit.org/show_bug.cgi?id=49710
  8176. Seemed to cause a large set of Chromium layout test to start
  8177. failing. (Requested by dave_levin on #webkit).
  8178. * bindings/v8/V8NPUtils.cpp:
  8179. (WebCore::convertV8ObjectToNPVariant):
  8180. 2010-11-17 Adam Roben <aroben@apple.com>
  8181. Fix Acid3 in Safari for Windows
  8182. Reviewed by Dave Hyatt.
  8183. * platform/graphics/win/SimpleFontDataWin.cpp:
  8184. (WebCore::SimpleFontData::initGDIFont): Initialize all our metrics to 0
  8185. if we have a font size of 0.
  8186. 2010-11-17 Dimitri Glazkov <dglazkov@chromium.org>
  8187. Reviewed by Darin Adler.
  8188. Converge means of querying a parent node into one way, which is Node::parentNode.
  8189. https://bugs.webkit.org/show_bug.cgi?id=49686
  8190. No change in behavior, so no new tests.
  8191. * accessibility/AccessibilityObject.cpp:
  8192. (WebCore::renderListItemContainerForNode): Changed to use parentNode.
  8193. * accessibility/AccessibilityRenderObject.cpp:
  8194. (WebCore::AccessibilityRenderObject::mouseButtonListener): Ditto.
  8195. (WebCore::siblingWithAriaRole): Ditto.
  8196. (WebCore::AccessibilityRenderObject::getDocumentLinks): Ditto.
  8197. (WebCore::AccessibilityRenderObject::accessibilityImageMapHitTest): Ditto.
  8198. * accessibility/mac/AccessibilityObjectWrapper.mm: Ditto.
  8199. (blockquoteLevel): Ditto.
  8200. * bindings/v8/V8GCController.cpp:
  8201. (WebCore::ObjectGrouperVisitor::visitDOMWrapper): Ditto.
  8202. * dom/ContainerNode.cpp: Ditto.
  8203. (WebCore::ContainerNode::insertBefore): Ditto.
  8204. (WebCore::ContainerNode::insertBeforeCommon): Ditto.
  8205. (WebCore::ContainerNode::replaceChild): Ditto.
  8206. (WebCore::ContainerNode::removeChild): Ditto.
  8207. (WebCore::ContainerNode::appendChild): Ditto.
  8208. (WebCore::ContainerNode::parserAddChild): Ditto.
  8209. * dom/DocumentType.cpp:
  8210. (WebCore::DocumentType::insertedIntoDocument): Ditto.
  8211. * dom/Element.cpp:
  8212. (WebCore::Element::computeInheritedLanguage): Ditto.
  8213. * dom/MouseRelatedEvent.cpp:
  8214. (WebCore::MouseRelatedEvent::receivedTarget): Ditto.
  8215. * dom/Position.cpp:
  8216. (WebCore::Position::isCandidate): Changed to use parentNode.
  8217. * dom/PositionIterator.cpp:
  8218. (WebCore::PositionIterator::isCandidate): Ditto.
  8219. * editing/AppendNodeCommand.cpp:
  8220. (WebCore::AppendNodeCommand::AppendNodeCommand): Ditto.
  8221. * editing/ApplyStyleCommand.cpp:
  8222. (WebCore::dummySpanAncestorForNode): Ditto.
  8223. (WebCore::ApplyStyleCommand::splitAncestorsWithUnicodeBidi): Ditto.
  8224. (WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock): Ditto.
  8225. (WebCore::highestEmbeddingAncestor): Ditto.
  8226. (WebCore::ApplyStyleCommand::splitTextElementAtEnd): Ditto.
  8227. (WebCore::ApplyStyleCommand::mergeStartWithPreviousIfIdentical): Ditto.
  8228. (WebCore::ApplyStyleCommand::mergeEndWithNextIfIdentical): Ditto.
  8229. * editing/CompositeEditCommand.cpp:
  8230. (WebCore::CompositeEditCommand::splitTreeToNode): Ditto.
  8231. * editing/DeleteSelectionCommand.cpp:
  8232. (WebCore::updatePositionForNodeRemoval): Ditto.
  8233. * editing/Editor.cpp:
  8234. (WebCore::Editor::textDirectionForSelection): Ditto.
  8235. * editing/MergeIdenticalElementsCommand.cpp:
  8236. (WebCore::MergeIdenticalElementsCommand::doUnapply): Ditto.
  8237. * editing/htmlediting.cpp:
  8238. (WebCore::isEmptyTableCell): Ditto.
  8239. * editing/markup.cpp:
  8240. (WebCore::StyledMarkupAccumulator::serializeNodes): Ditto.
  8241. * editing/visible_units.cpp:
  8242. (WebCore::previousLinePosition): Ditto.
  8243. (WebCore::nextLinePosition): Ditto.
  8244. * html/HTMLAreaElement.cpp:
  8245. (WebCore::HTMLAreaElement::imageElement): Ditto.
  8246. * html/HTMLElement.cpp:
  8247. (WebCore::HTMLElement::setOuterHTML): Ditto.
  8248. (WebCore::HTMLElement::insertAdjacent): Ditto.
  8249. (WebCore::HTMLElement::supportsFocus): Ditto.
  8250. * html/HTMLEmbedElement.cpp:
  8251. (WebCore::HTMLEmbedElement::insertedIntoDocument): Ditto.
  8252. (WebCore::HTMLEmbedElement::attributeChanged): Ditto.
  8253. * html/HTMLTableElement.cpp:
  8254. (WebCore::HTMLTableElement::insertRow): Ditto.
  8255. * html/HTMLTableRowsCollection.cpp: Ditto.
  8256. (WebCore::isInHead): Ditto.
  8257. (WebCore::isInBody): Ditto.
  8258. (WebCore::isInFoot): Ditto.
  8259. (WebCore::HTMLTableRowsCollection::rowAfter): Ditto.
  8260. * html/HTMLViewSourceDocument.cpp:
  8261. (WebCore::HTMLViewSourceDocument::addRange): Ditto.
  8262. * html/MediaDocument.cpp:
  8263. (WebCore::MediaDocument::replaceMediaElementTimerFired): Ditto.
  8264. * html/parser/HTMLConstructionSite.cpp:
  8265. (WebCore::HTMLConstructionSite::attach): Ditto.
  8266. (WebCore::HTMLConstructionSite::findFosterSite): Ditto.
  8267. * html/parser/HTMLTreeBuilder.cpp:
  8268. * page/FocusController.cpp:
  8269. (WebCore::FocusController::findFocusableNodeInDirection): Ditto.
  8270. * rendering/MediaControlElements.cpp:
  8271. (WebCore::MediaControlElement::rendererIsNeeded): Ditto.
  8272. (WebCore::MediaControlElement::attach): Ditto.
  8273. (WebCore::MediaControlElement::updateStyle): Ditto.
  8274. (WebCore::MediaControlInputElement::rendererIsNeeded): Ditto.
  8275. (WebCore::MediaControlInputElement::attach): Ditto.
  8276. (WebCore::MediaControlInputElement::updateStyle): Ditto.
  8277. * rendering/RenderSVGGradientStop.cpp:
  8278. (WebCore::RenderSVGGradientStop::gradientElement): Ditto.
  8279. * svg/SVGAElement.cpp:
  8280. (WebCore::SVGAElement::createRenderer): Ditto.
  8281. (WebCore::SVGAElement::childShouldCreateRenderer): Ditto.
  8282. * svg/SVGFELightElement.cpp:
  8283. (WebCore::SVGFELightElement::svgAttributeChanged): Ditto.
  8284. (WebCore::SVGFELightElement::childrenChanged): Ditto.
  8285. * svg/SVGFEMergeNodeElement.cpp:
  8286. (WebCore::SVGFEMergeNodeElement::svgAttributeChanged): Ditto.
  8287. * svg/SVGLength.cpp:
  8288. (WebCore::SVGLength::determineViewport): Ditto.
  8289. * svg/SVGStyledElement.cpp:
  8290. (WebCore::SVGStyledElement::updateRelativeLengthsInformation): Ditto.
  8291. * svg/SVGUseElement.cpp:
  8292. (WebCore::SVGUseElement::removeDisallowedElementsFromSubtree): Ditto.
  8293. * svg/animation/SVGSMILElement.cpp:
  8294. (WebCore::SVGSMILElement::insertedIntoDocument): Ditto.
  8295. * xml/XPathNodeSet.cpp:
  8296. (WebCore::XPath::NodeSet::sort): Ditto.
  8297. * xml/XPathStep.cpp:
  8298. (WebCore::XPath::Step::nodesInAxis): Ditto.
  8299. * xml/XSLTProcessorLibxslt.cpp:
  8300. (WebCore::xsltStylesheetPointer): Ditto.
  8301. 2010-11-17 Kenneth Rohde Christiansen <kenneth@webkit.org>
  8302. Reviewed by Andreas Kling.
  8303. ScrollView: Don't translate by scrollX/scrollY or clip when paintsEntireContents()
  8304. This makes paint() with paintEntireContents() do exactly what it's supposed to:
  8305. paint from 0,0 to contentsSize().
  8306. The clipping was a no-op anyway since visibleContentRect() will return the whole
  8307. rect in paintsEntireContents() mode.
  8308. * platform/ScrollView.cpp:
  8309. (WebCore::ScrollView::paint):
  8310. 2010-11-17 Kenneth Rohde Christansen <kenneth@webkit.org>
  8311. Reviewed by Andreas Kling.
  8312. ScrollView: Update the actualVisibleContentRect after delegating a scroll.
  8313. This lets us avoid updating the actualVisibleContentRect from the client
  8314. after each scroll. We had to do this synchronously for WebKit2 to support
  8315. programmatic "animated scrolling" from JS.
  8316. * platform/ScrollView.cpp:
  8317. (WebCore::ScrollView::setScrollPosition):
  8318. 2010-11-17 Andreas Kling <kling@webkit.org>
  8319. Reviewed by Kenneth Rohde Christiansen.
  8320. ScrollView: Decouple actualVisibleContentRect from visibleContentRect
  8321. Added actualVisibleContentRect() which will return the override provided
  8322. by setActualVisibleContentRect() or fall back to visibleContentRect()
  8323. if no override has been set.
  8324. This is similar to what the iPhone does.
  8325. * platform/ScrollView.cpp:
  8326. (WebCore::ScrollView::visibleContentRect):
  8327. * platform/ScrollView.h:
  8328. (WebCore::ScrollView::actualVisibleContentRect):
  8329. (WebCore::ScrollView::setActualVisibleContentRect): IntRect -> const IntRect&
  8330. 2010-11-17 Tony Chang <tony@chromium.org>
  8331. Reviewed by Adam Barth.
  8332. [chromium] fix get-int-identifier-special-values.html using TestNetscapePlugIn
  8333. https://bugs.webkit.org/show_bug.cgi?id=49036
  8334. No new tests: Covered by plugins/npruntime/get-int-identifier-special-values.html
  8335. In http://codereview.chromium.org/11574, the forked chromium test
  8336. plugin changed how it testGetIntIdentifier to work around a change
  8337. caused by a silverlight specific plugin fix:
  8338. http://codereview.chromium.org/11569/diff/1/2
  8339. It's not clear to me that this change is needed anymore since
  8340. silverlight has had multiple releases, testing without this patch
  8341. works on a test windows build, and safari win seems to run silverlight
  8342. without this either. Since there's no test for this behavior, I'm
  8343. rolling it out so we can match the upstream test.
  8344. * bindings/v8/V8NPUtils.cpp:
  8345. (WebCore::convertV8ObjectToNPVariant):
  8346. 2010-11-17 Andreas Kling <kling@webkit.org>
  8347. Reviewed by Kenneth Rohde Christiansen.
  8348. ScrollView: Let visibleContentRect() return the contentsSize() if paintsEntireContents()
  8349. * platform/ScrollView.cpp:
  8350. (WebCore::ScrollView::visibleContentRect):
  8351. 2010-11-17 James Simonsen <simonjam@chromium.org>
  8352. Reviewed by Tony Chang.
  8353. [chromium] Fix negative letter spacing in complex text on linux
  8354. https://bugs.webkit.org/show_bug.cgi?id=49563
  8355. Test: fast/text/atsui-negative-spacing-features.html
  8356. * platform/graphics/chromium/FontLinux.cpp: Make spacing signed.
  8357. 2010-11-17 Andreas Kling <kling@webkit.org>
  8358. Reviewed by Kenneth Rohde Christiansen.
  8359. ScrollView: Avoid unnecessary work in setScrollPosition() when scrolling is delegated.
  8360. * platform/ScrollView.cpp:
  8361. (WebCore::ScrollView::setScrollPosition): If delegatesScrolling(), we never use the
  8362. newScrollPosition, so move that calculation below the delegation path.
  8363. 2010-11-17 Dave Hyatt <hyatt@apple.com>
  8364. Reviewed by Sam Weinig.
  8365. https://bugs.webkit.org/show_bug.cgi?id=48537
  8366. Fonts with no vertical metrics should synthesize baselines when they appear
  8367. on lines that do use fonts with vertical metrics. Basically we want to make
  8368. sure that English text behaves like vertical-align:middle, i.e., its baseline
  8369. should be treated as though it cuts through the middle of the ascent+descent.
  8370. The way this works is that each line in the line box tree is labeled as having
  8371. a baseline type that is either ideographic or alphabetic for the purposes of
  8372. vertical alignment. A line becomes ideographic if any font with vertical tables
  8373. is either explicitly specified as the primary font or in any of the used fonts
  8374. in the text on that line.
  8375. This baselineType is passed down to computeLogicalBoxHeights and placeBoxesInBlockDirection,
  8376. and passed to the ascent and descent methods of the fonts that are examined.
  8377. The underlying Font code selects an appropriate baseline given the type passed in.
  8378. This patch also rewrites vertical alignment to lop 4 bytes off all RenderInlines and
  8379. to instead carry around the cached vertical positions for RenderInlines in a new
  8380. VerticalPositionCache object. This cache only lives for a single layout
  8381. operation, but it does cache information across all the lines built and placed during the
  8382. layout.
  8383. This matches the old behavior, since every call to layoutInlineChildren invalidated
  8384. all of the vertical positions in all of the RenderInlines anyway.
  8385. The VerticalPositionCache consists of two HashMaps, and it caches vertical alignment
  8386. positions for both alphabetic and ideographic baseline types.
  8387. The vertical-align computation has now been moved out of RenderBoxModelObject and
  8388. RenderInline and just placed right into verticalPositionForBox in InlineFlowBox.
  8389. This function has been changed to no longer be recursive when checking parents,
  8390. and it now relies on the fact that the parent vertical alignment computation result
  8391. has already been stored in the logicalTop() of that parent's line box. By checking
  8392. the line box logicalTop() value instead of recurring, the performance of first lines
  8393. now significantly improves to no longer have O(n^2) behavior in the depth of the line
  8394. box tree on the first line.
  8395. All of the baselinePosition functions on the various RenderObjects have been amended
  8396. to take a FontBaseline as the first argument. This patch does not attempt to fix up
  8397. MathML or form controls yet and just hardcodes AlphabeticBaselines for those renderers.
  8398. The RenderTableCell baselinePosition virtual method has been made non-virtual and had
  8399. all arguments removed, since it actually had no real connection with the rest of the
  8400. baseline positioning system. Cell baseline positioning works by calling firstLineBoxBaseline,
  8401. and that method has been patched to use the cached baselineType for the first line box
  8402. when computing the baseline of that line.
  8403. Added fast/blockflow/vertical-baseline-alignment.html and fast/blockflow/vertical-align-table-baseline.html.
  8404. * WebCore.xcodeproj/project.pbxproj:
  8405. * mathml/RenderMathMLFraction.cpp:
  8406. (WebCore::RenderMathMLFraction::baselinePosition):
  8407. * mathml/RenderMathMLFraction.h:
  8408. * mathml/RenderMathMLOperator.cpp:
  8409. (WebCore::RenderMathMLOperator::baselinePosition):
  8410. * mathml/RenderMathMLOperator.h:
  8411. * mathml/RenderMathMLRow.cpp:
  8412. (WebCore::RenderMathMLRow::baselinePosition):
  8413. * mathml/RenderMathMLRow.h:
  8414. * mathml/RenderMathMLSubSup.cpp:
  8415. (WebCore::RenderMathMLSubSup::baselinePosition):
  8416. * mathml/RenderMathMLSubSup.h:
  8417. * mathml/RenderMathMLUnderOver.cpp:
  8418. (WebCore::RenderMathMLUnderOver::layout):
  8419. (WebCore::RenderMathMLUnderOver::baselinePosition):
  8420. * mathml/RenderMathMLUnderOver.h:
  8421. * platform/graphics/SimpleFontData.h:
  8422. * rendering/InlineBox.h:
  8423. (WebCore::InlineBox::baselinePosition):
  8424. * rendering/InlineFlowBox.cpp:
  8425. (WebCore::verticalPositionForBox):
  8426. (WebCore::InlineFlowBox::computeLogicalBoxHeights):
  8427. (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
  8428. * rendering/InlineFlowBox.h:
  8429. * rendering/InlineTextBox.cpp:
  8430. (WebCore::InlineTextBox::baselinePosition):
  8431. * rendering/InlineTextBox.h:
  8432. * rendering/RenderBlock.cpp:
  8433. (WebCore::RenderBlock::baselinePosition):
  8434. (WebCore::RenderBlock::firstLineBoxBaseline):
  8435. (WebCore::RenderBlock::lastLineBoxBaseline):
  8436. * rendering/RenderBlock.h:
  8437. * rendering/RenderBlockLineLayout.cpp:
  8438. (WebCore::RenderBlock::computeBlockDirectionPositionsForLine):
  8439. (WebCore::RenderBlock::layoutInlineChildren):
  8440. * rendering/RenderBox.cpp:
  8441. (WebCore::RenderBox::baselinePosition):
  8442. * rendering/RenderBox.h:
  8443. * rendering/RenderBoxModelObject.cpp:
  8444. * rendering/RenderBoxModelObject.h:
  8445. * rendering/RenderFileUploadControl.cpp:
  8446. (WebCore::RenderFileUploadControl::paintObject):
  8447. * rendering/RenderInline.cpp:
  8448. (WebCore::RenderInline::RenderInline):
  8449. (WebCore::RenderInline::baselinePosition):
  8450. * rendering/RenderInline.h:
  8451. * rendering/RenderListBox.cpp:
  8452. (WebCore::RenderListBox::baselinePosition):
  8453. * rendering/RenderListBox.h:
  8454. * rendering/RenderListMarker.cpp:
  8455. (WebCore::RenderListMarker::baselinePosition):
  8456. * rendering/RenderListMarker.h:
  8457. * rendering/RenderSlider.cpp:
  8458. (WebCore::RenderSlider::baselinePosition):
  8459. * rendering/RenderSlider.h:
  8460. * rendering/RenderTableCell.cpp:
  8461. (WebCore::RenderTableCell::baselinePosition):
  8462. * rendering/RenderTableCell.h:
  8463. * rendering/RenderTextControlMultiLine.cpp:
  8464. (WebCore::RenderTextControlMultiLine::baselinePosition):
  8465. * rendering/RenderTextControlMultiLine.h:
  8466. * rendering/RootInlineBox.cpp:
  8467. (WebCore::RootInlineBox::alignBoxesInBlockDirection):
  8468. * rendering/RootInlineBox.h:
  8469. (WebCore::RootInlineBox::baselinePosition):
  8470. * rendering/VerticalPositionCache.h: Added.
  8471. (WebCore::VerticalPositionCache::VerticalPositionCache):
  8472. (WebCore::VerticalPositionCache::get):
  8473. (WebCore::VerticalPositionCache::set):
  8474. * rendering/svg/SVGInlineTextBox.cpp:
  8475. (WebCore::SVGInlineTextBox::calculateBoundaries):
  8476. 2010-11-17 Sam Weinig <sam@webkit.org>
  8477. Reviewed by Anders Carlsson.
  8478. Add stubbed out ScrollAnimator for the Mac
  8479. https://bugs.webkit.org/show_bug.cgi?id=49678
  8480. * WebCore.xcodeproj/project.pbxproj:
  8481. Add ScrollAnimator.h/cpp.
  8482. * platform/mac/ScrollAnimatorMac.cpp: Added.
  8483. (WebCore::ScrollAnimator::create):
  8484. (WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
  8485. (WebCore::ScrollAnimatorMac::~ScrollAnimatorMac):
  8486. (WebCore::ScrollAnimatorMac::scroll):
  8487. (WebCore::ScrollAnimatorMac::setScrollPositionAndStopAnimation):
  8488. * platform/mac/ScrollAnimatorMac.h: Added.
  8489. ScrollAnimatorMac just calls through to the base class for now.
  8490. 2010-11-17 Cris Neckar <cdn@chromium.org>
  8491. Reviewed by Adam Barth.
  8492. Modified codepath for object fallback content which has failed to load.
  8493. Refactored CachedResource error handling to use more granular statuses instead of a boolean value.
  8494. https://bugs.webkit.org/show_bug.cgi?id=46921
  8495. Test: fast/html/object-image-nested-fallback.html
  8496. * html/HTMLObjectElement.cpp:
  8497. (WebCore::HTMLObjectElement::renderFallbackContent):
  8498. * loader/cache/CachedCSSStyleSheet.cpp:
  8499. (WebCore::CachedCSSStyleSheet::error):
  8500. * loader/cache/CachedCSSStyleSheet.h:
  8501. * loader/cache/CachedFont.cpp:
  8502. (WebCore::CachedFont::ensureCustomFontData):
  8503. (WebCore::CachedFont::error):
  8504. * loader/cache/CachedFont.h:
  8505. * loader/cache/CachedImage.cpp:
  8506. (WebCore::CachedImage::data):
  8507. (WebCore::CachedImage::error):
  8508. * loader/cache/CachedImage.h:
  8509. * loader/cache/CachedResource.cpp:
  8510. (WebCore::CachedResource::CachedResource):
  8511. (WebCore::CachedResource::canUseCacheValidator):
  8512. (WebCore::CachedResource::mustRevalidate):
  8513. * loader/cache/CachedResource.h:
  8514. (WebCore::CachedResource::error):
  8515. (WebCore::CachedResource::httpStatusCodeError):
  8516. (WebCore::CachedResource::errorOccurred):
  8517. * loader/cache/CachedScript.cpp:
  8518. (WebCore::CachedScript::error):
  8519. * loader/cache/CachedScript.h:
  8520. * loader/cache/CachedXSLStyleSheet.cpp:
  8521. (WebCore::CachedXSLStyleSheet::error):
  8522. * loader/cache/CachedXSLStyleSheet.h:
  8523. * loader/loader.cpp:
  8524. (WebCore::Loader::load):
  8525. (WebCore::Loader::didFinishLoading):
  8526. (WebCore::Loader::didFail):
  8527. (WebCore::Loader::didReceiveData):
  8528. 2010-11-16 Zhenyao Mo <zmo@google.com>
  8529. Reviewed by Kenneth Russell.
  8530. WebGLRenderingContext needs to zero textures and renderbuffers
  8531. https://bugs.webkit.org/show_bug.cgi?id=49355
  8532. Test: fast/canvas/webgl/uninitialized-test.html
  8533. * html/canvas/WebGLFramebuffer.cpp:
  8534. (WebCore::WebGLFramebuffer::onAccess): Use a parameter to decide if renderbuffer initialization is needed.
  8535. (WebCore::WebGLFramebuffer::initializeRenderbuffers): Don't return false if color buffer doesn't exist.
  8536. * html/canvas/WebGLFramebuffer.h: Modify onAccess function signature.
  8537. * html/canvas/WebGLRenderingContext.cpp:
  8538. (WebCore::WebGLRenderingContext::clear): Call onAccess with an added parameter.
  8539. (WebCore::WebGLRenderingContext::copyTexImage2D): Ditto.
  8540. (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto.
  8541. (WebCore::WebGLRenderingContext::drawArrays): Ditto.
  8542. (WebCore::WebGLRenderingContext::drawElements): Ditto.
  8543. (WebCore::WebGLRenderingContext::readPixels): Ditto.
  8544. (WebCore::WebGLRenderingContext::texImage2DBase): Create buffer data of 0s if input is null to initialize textures.
  8545. 2010-11-17 Ryosuke Niwa <rniwa@webkit.org>
  8546. Reviewed by Darin Adler.
  8547. Merge ScriptElement and ScriptElementData
  8548. https://bugs.webkit.org/show_bug.cgi?id=49647
  8549. Merged two classes.
  8550. * dom/AsyncScriptRunner.cpp:
  8551. (WebCore::AsyncScriptRunner::executeScriptSoon): Takes ScriptElement* instead of ScriptElementData*.
  8552. (WebCore::AsyncScriptRunner::timerFired): Uses ScriptElement* instead of ScriptElementData*.
  8553. * dom/AsyncScriptRunner.h:
  8554. * dom/ScriptElement.cpp:
  8555. (WebCore::ScriptElement::ScriptElement): Merged with ScriptElementData::ScriptElementData.
  8556. (WebCore::ScriptElement::~ScriptElement): Merged with ScriptElementData::~ScriptElementData.
  8557. (WebCore::ScriptElement::insertedIntoDocument): Calls createdByParser, isAsynchronous, requestScript, and scriptContent.
  8558. (WebCore::ScriptElement::removedFromDocument): Calls stopLoadRequest.
  8559. (WebCore::ScriptElement::childrenChanged): Calls createdByParser and accesses m_element.
  8560. (WebCore::ScriptElement::finishParsingChildren): Calls scriptContent.
  8561. (WebCore::ScriptElement::handleSourceAttribute): Calls ignoresLoadRequest and requestScript.
  8562. (WebCore::ScriptElement::requestScript): Moved from ScriptElementData; calls dispatchErrorEvent.
  8563. (WebCore::ScriptElement::evaluateScript): Moved from ScriptElementData.
  8564. (WebCore::ScriptElement::executeScript): Ditto.
  8565. (WebCore::ScriptElement::stopLoadRequest): Ditto.
  8566. (WebCore::ScriptElement::execute): Moved from ScriptElementData; calls dispatchErrorEvent and dispatchLoadEvent.
  8567. (WebCore::ScriptElement::notifyFinished): Moved from ScriptElementData.
  8568. (WebCore::ScriptElement::ignoresLoadRequest): Ditto.
  8569. (WebCore::ScriptElement::shouldExecuteAsJavaScript): Moved from ScriptElementData; calls typeAttributeValue, languageAttributeValue,
  8570. forAttributeValue, and eventAttributeValue.
  8571. (WebCore::ScriptElement::scriptCharset): Moved from ScriptElementData.
  8572. (WebCore::ScriptElement::scriptContent): Ditto.
  8573. (WebCore::ScriptElement::isAsynchronous): Moved from ScriptElementData; calls sourceAttributeValue and asyncAttributeValue.
  8574. (WebCore::ScriptElement::isDeferred): Moved from ScriptElementData; calls sourceAttributeValue, asyncAttributeValue,
  8575. and deferAttributeValue.
  8576. * dom/ScriptElement.h:
  8577. (WebCore::ScriptElement::element):
  8578. (WebCore::ScriptElement::haveFiredLoadEvent):
  8579. (WebCore::ScriptElement::setHaveFiredLoadEvent):
  8580. (WebCore::ScriptElement::createdByParser):
  8581. (WebCore::ScriptElement::isEvaluated):
  8582. 2010-11-17 Tenghui Zhu <ztenghui@google.com>
  8583. Reviewed by Jeremy Orlow.
  8584. profileCallback and profileEndCallback should be guarded with ENABLE_JAVASCRIPT_DEBUGGER
  8585. https://bugs.webkit.org/show_bug.cgi?id=49623
  8586. No new tests. Just a compiling error fix.
  8587. * bindings/v8/custom/V8ConsoleCustom.cpp:
  8588. Add the guard ENABLE_JAVA_SCRIPT_DEBUGGER to profileCallback and profileEndCallback
  8589. 2010-11-17 John Knottenbelt <jknotten@chromium.org>
  8590. Reviewed by Jeremy Orlow.
  8591. Introduce GeoNotifierVector typedef for increased readability
  8592. https://bugs.webkit.org/show_bug.cgi?id=49597
  8593. * page/Geolocation.cpp:
  8594. (WebCore::Geolocation::Watchers::getNotifiersVector):
  8595. (WebCore::Geolocation::sendError):
  8596. (WebCore::Geolocation::sendPosition):
  8597. (WebCore::Geolocation::stopTimer):
  8598. (WebCore::Geolocation::stopTimersForOneShots):
  8599. (WebCore::Geolocation::stopTimersForWatchers):
  8600. (WebCore::Geolocation::cancelRequests):
  8601. (WebCore::Geolocation::cancelAllRequests):
  8602. (WebCore::Geolocation::handleError):
  8603. (WebCore::Geolocation::makeSuccessCallbacks):
  8604. * page/Geolocation.h:
  8605. 2010-11-17 John Knottenbelt <jknotten@chromium.org>
  8606. Reviewed by Jeremy Orlow.
  8607. Convert correctly between GeolocationPosition and Geoposition
  8608. timestamp formats.
  8609. https://bugs.webkit.org/show_bug.cgi?id=48518
  8610. Test: fast/dom/Geolocation/timestamp.html
  8611. * page/Geolocation.cpp:
  8612. (WebCore::createGeoposition):
  8613. 2010-11-17 Chang Shu <chang.shu@nokia.com>
  8614. Reviewed by Antonio Gomes.
  8615. [Mac] Suppress single select popup menu when spatial navigation is enabled on Mac.
  8616. This makes spatial navigation work properly for single select box.
  8617. Test: fast/events/spatial-navigation/snav-single-select.html
  8618. * dom/SelectElement.cpp:
  8619. (WebCore::nextValidIndex):
  8620. (WebCore::SelectElement::menuListDefaultEventHandler):
  8621. 2010-11-17 Satish Sampath <satish@chromium.org>
  8622. Reviewed by Jeremy Orlow.
  8623. Clear the speech input mock explicitly before each test.
  8624. https://bugs.webkit.org/show_bug.cgi?id=49660
  8625. * platform/mock/SpeechInputClientMock.cpp:
  8626. (WebCore::SpeechInputClientMock::clearResults): Added clearResults method.
  8627. * platform/mock/SpeechInputClientMock.h:
  8628. 2010-11-17 Alexander Pavlov <apavlov@chromium.org>
  8629. [Chromium] Unreviewed, fix Chromium-Mac build from r72189.
  8630. * css/CSSPrimitiveValue.cpp:
  8631. (WebCore::CSSPrimitiveValue::getDoubleValue):
  8632. 2010-11-17 Hans Wennborg <hans@chromium.org>
  8633. Reviewed by Jeremy Orlow.
  8634. IndexedDB: IDBKey::whereSyntax should impose conditions on all columns
  8635. https://bugs.webkit.org/show_bug.cgi?id=49601
  8636. The WHERE clause should specifiy a condition for each key column to
  8637. make sure that the ObjectStoreData_composit index can be used when
  8638. querying the object store based on key. Not using the index causes
  8639. severe performance degradation for common IDB operations.
  8640. * storage/IDBKey.cpp:
  8641. (WebCore::IDBKey::whereSyntax):
  8642. 2010-11-17 Eric Uhrhane <ericu@chromium.org>
  8643. Reviewed by David Levin.
  8644. [Chromium] implementation of async FileWriter for workers
  8645. https://bugs.webkit.org/show_bug.cgi?id=47681
  8646. Tests are in a separate changelist.
  8647. * platform/CrossThreadCopier.h: Changed CrossThreadCopier[Base] to support PassRefPtrs
  8648. 2010-11-17 Alejandro G. Castro <alex@igalia.com>
  8649. Reviewed by Martin Robinson.
  8650. [gtk] r69119 modified just the gtk2 version of the
  8651. scrolled_window_paint function but not the gtk3 version
  8652. https://bugs.webkit.org/show_bug.cgi?id=49585
  8653. Use gtk_paint_shadow the same as the actual code from GTK+. Avoid
  8654. using state and use the same values we are using for gtk2 in the
  8655. paint function.
  8656. * platform/gtk/ScrollbarThemeGtk.cpp:
  8657. (WebCore::ScrollbarThemeGtk::paintButton): Initialized the
  8658. depressed attribute of the state variable to avoid using it
  8659. without initialization.
  8660. * platform/gtk/gtk3drawing.c:
  8661. (moz_gtk_scrolled_window_paint):
  8662. 2010-11-16 Alexander Pavlov <apavlov@chromium.org>
  8663. Reviewed by Simon Fraser.
  8664. CSSPrimitiveValue.getFloatValue does not convert sizes
  8665. https://bugs.webkit.org/show_bug.cgi?id=35770
  8666. Implemented all same-category unit conversions (length, angle, time, frequency) and retained
  8667. absolute-relative (cm, mm, in, pt, pc) length conversions intact.
  8668. Illegal unit conversion attempts will throw an INVALID_ACCESS_ERR DOMException.
  8669. * css/CSSPrimitiveValue.cpp:
  8670. (WebCore::unitCategory):
  8671. (WebCore::conversionToCanonicalUnitsScaleFactor):
  8672. (WebCore::CSSPrimitiveValue::getDoubleValue):
  8673. (WebCore::CSSPrimitiveValue::canonicalUnitTypeForCategory):
  8674. (WebCore::CSSPrimitiveValue::getDoubleValueInternal):
  8675. (WebCore::CSSPrimitiveValue::getIdent):
  8676. * css/CSSPrimitiveValue.h:
  8677. (WebCore::CSSPrimitiveValue::getFloatValue):
  8678. (WebCore::CSSPrimitiveValue::getIntValue):
  8679. 2010-11-17 Ademar de Souza Reis Jr. <ademar.reis@openbossa.org>
  8680. Reviewed by Andreas Kling.
  8681. Document::nodesFromRect() has wrong source code documentation
  8682. https://bugs.webkit.org/show_bug.cgi?id=49610
  8683. * dom/Document.h: fix nodesFromRect() documentation
  8684. 2010-11-17 Alexis Menard <alexis.menard@nokia.com>, Simon Hausmann <simon.hausmann@nokia.com>
  8685. Reviewed by Kenneth Christiansen, Tor Arne Vestbø.
  8686. [Qt] Add support for use GStreamer with the Qt build
  8687. Make it possible to use gstreamer with the Qt build via the USE_GSTREAMER macro. The
  8688. integration is rather basic at this point, allowing for software based rendering
  8689. only at the moment. AC integration and fullscreen playback is still missing.
  8690. * WebCore.pro: Added a bunch of gstreamer files to the build and guard it as a
  8691. build option with the USE_GSTREAMER macro.
  8692. * platform/graphics/MediaPlayer.cpp:
  8693. (WebCore::installedMediaEngines): Don't use the generic media player registration
  8694. when using GStreamer. These #ifdefs should be removed, but the gstreamer folks want
  8695. to be able to build with gstreamer _and_ another backend simultaenously.
  8696. * platform/graphics/gstreamer/ImageGStreamer.h:
  8697. * platform/graphics/gstreamer/ImageGStreamerQt.cpp: Added.
  8698. (ImageGStreamer::createImage):
  8699. (ImageGStreamer::ImageGStreamer):
  8700. (ImageGStreamer::~ImageGStreamer):
  8701. * platform/graphics/gstreamer/PlatformVideoWindowPrivate.h: Added.
  8702. * platform/graphics/gstreamer/PlatformVideoWindowQt.cpp: Added.
  8703. (FullScreenVideoWindow::FullScreenVideoWindow):
  8704. (FullScreenVideoWindow::keyPressEvent):
  8705. (FullScreenVideoWindow::event):
  8706. (PlatformVideoWindow::PlatformVideoWindow):
  8707. (PlatformVideoWindow::~PlatformVideoWindow):
  8708. (PlatformVideoWindow::prepareForOverlay):
  8709. 2010-11-17 Alexander Pavlov <apavlov@chromium.org>
  8710. Reviewed by Pavel Feldman.
  8711. Web Inspector: [REGRESSION] editing disabled styles breaks style bodies.
  8712. https://bugs.webkit.org/show_bug.cgi?id=49602
  8713. * inspector/InspectorStyleSheet.cpp:
  8714. (WebCore::InspectorStyle::setPropertyText):
  8715. * inspector/front-end/StylesSidebarPane.js:
  8716. (WebInspector.StylePropertyTreeElement.prototype.get name):
  8717. (WebInspector.StylePropertyTreeElement.prototype.get priority):
  8718. (WebInspector.StylePropertyTreeElement.prototype.get value):
  8719. 2010-11-16 Adam Roben <aroben@apple.com>
  8720. Move QTMovieWin's settings into a vsprops file
  8721. Fixes <http://webkit.org/b/49644> QTMovieWin should use a vsprops file
  8722. Reviewed by Steve Falkenburg.
  8723. * WebCore.vcproj/QTMovieWin.vcproj:
  8724. * WebCore.vcproj/QTMovieWinCommon.vsprops: Added.
  8725. 2010-11-16 Andy Estes <aestes@apple.com>
  8726. Reviewed by Dave Hyatt.
  8727. WebKit mishandles line boxes where the content height exceeds the
  8728. specified line-height.
  8729. https://bugs.webkit.org/show_bug.cgi?id=49410
  8730. If a line height is explicitly specified on a text box and fallback
  8731. fonts are in use, only the primary font should be considered when
  8732. computing the box's ascent and descent. This prevents the inline box
  8733. from being sized larger than the specified line height.
  8734. This patch also fixes a math error when computing a used font's descent
  8735. in the case where line height isn't explicitly set. This change results
  8736. in a number of layout tests needing re-baselining.
  8737. Test: fast/css/line-height-determined-by-primary-font.html
  8738. * rendering/InlineFlowBox.cpp:
  8739. (WebCore::InlineFlowBox::computeLogicalBoxHeights):
  8740. 2010-11-15 Ryosuke Niwa <rniwa@webkit.org>
  8741. Reviewed by Darin Adler.
  8742. ScriptElementData should be a private member of ScriptElement
  8743. https://bugs.webkit.org/show_bug.cgi?id=49578
  8744. Privatized m_data of ScriptElement. Added haveFiredLoadEvent, setHaveFiredLoadEvent, createdByParser,
  8745. and isEvaluated to ScriptElement to proxy calls from HTMLScriptElement and SVGScriptElement to ScriptElementData.
  8746. No tests are added since this is a cleanup.
  8747. * dom/ScriptElement.h:
  8748. (WebCore::ScriptElement::haveFiredLoadEvent): Added.
  8749. (WebCore::ScriptElement::setHaveFiredLoadEvent): Added.
  8750. (WebCore::ScriptElement::createdByParser): Added.
  8751. (WebCore::ScriptElement::isEvaluated): Added.
  8752. * html/HTMLScriptElement.cpp:
  8753. (WebCore::HTMLScriptElement::dispatchLoadEvent): Calls haveFiredLoadEvent and setHaveFiredLoadEvent.
  8754. (WebCore::HTMLScriptElement::cloneElementWithoutAttributesAndChildren): Calls isEvaluated.
  8755. * html/HTMLScriptElement.h:
  8756. (WebCore::HTMLScriptElement::text): Calls scriptContent.
  8757. (WebCore::HTMLScriptElement::haveFiredLoadEvent): Calls haveFiredLoadEvent.
  8758. * svg/SVGScriptElement.cpp:
  8759. (WebCore::SVGScriptElement::svgAttributeChanged): Calls haveFiredLoadEvent and createdByParser.
  8760. (WebCore::SVGScriptElement::insertedIntoDocument): Calls createdByParser.
  8761. (WebCore::SVGScriptElement::finishParsingChildren): Calls setHaveFiredLoadEvent.
  8762. (WebCore::SVGScriptElement::haveLoadedRequiredResources): Ditto.
  8763. (WebCore::SVGScriptElement::dispatchLoadEvent): Calls haveFiredLoadEvent.
  8764. (WebCore::SVGScriptElement::cloneElementWithoutAttributesAndChildren): Calls createdByParser,
  8765. haveFiredLoadEvent, and setHaveFiredLoadEvent.
  8766. 2010-11-16 Antti Koivisto <antti@apple.com>
  8767. Reviewed by Darin Adler.
  8768. https://bugs.webkit.org/show_bug.cgi?id=49320
  8769. Minor ResourceLoadScheduler cleanups
  8770. * loader/ResourceLoadScheduler.cpp:
  8771. (WebCore::ResourceLoadScheduler::scheduleLoad):
  8772. (WebCore::ResourceLoadScheduler::servePendingRequests):
  8773. (WebCore::ResourceLoadScheduler::HostInformation::~HostInformation):
  8774. (WebCore::ResourceLoadScheduler::HostInformation::remove):
  8775. (WebCore::ResourceLoadScheduler::HostInformation::hasRequests):
  8776. * loader/ResourceLoadScheduler.h:
  8777. 2010-11-16 Dave Hyatt <hyatt@apple.com>
  8778. Reviewed by Sam Weinig.
  8779. Add a baselineType member to RootInlineBox that caches whether the default baseline behavior for that
  8780. line should be ideographic or alphabetic. Add a requiresIdeographicsBaseline recursive function to
  8781. InlineFlowBox that scans for the use of any vertical fonts.
  8782. * rendering/InlineFlowBox.cpp:
  8783. (WebCore::InlineFlowBox::requiresIdeographicBaseline):
  8784. * rendering/InlineFlowBox.h:
  8785. * rendering/RootInlineBox.cpp:
  8786. (WebCore::RootInlineBox::RootInlineBox):
  8787. (WebCore::RootInlineBox::alignBoxesInBlockDirection):
  8788. * rendering/RootInlineBox.h:
  8789. (WebCore::RootInlineBox::baselineType):
  8790. 2010-11-16 Dave Hyatt <hyatt@apple.com>
  8791. Reviewed by Sam Weinig.
  8792. Add FontBaseline.h and make ascent and descent take a baseline parameter so that both an
  8793. alphabetic and ideographic baseline can be requested.
  8794. * WebCore.xcodeproj/project.pbxproj:
  8795. * platform/graphics/Font.h:
  8796. (WebCore::Font::ascent):
  8797. (WebCore::Font::descent):
  8798. * platform/graphics/FontBaseline.h: Added.
  8799. * platform/graphics/SimpleFontData.h:
  8800. (WebCore::SimpleFontData::ascent):
  8801. (WebCore::SimpleFontData::descent):
  8802. (WebCore::SimpleFontData::height):
  8803. 2010-11-16 Antti Koivisto <koivisto@iki.fi>
  8804. Reviewed by Adam Barth.
  8805. https://bugs.webkit.org/show_bug.cgi?id=31223
  8806. Make primitive values immutable.
  8807. Make CSSPrimitiveValue setFloatValue and setStringValue always throw NO_MODIFICATION_ALLOWED exception.
  8808. Reasoning:
  8809. - these setters never worked correctly, style was not invalidated so changing values would have no effect on rendering
  8810. - computed style is immutable in all cases, and it wasn't
  8811. - no other engine seems to support mutable primitives, as a result there is no content using these APIs
  8812. - mutable primitive values are pointless, the usual way to change the value of a propertly is to replace it with a new value
  8813. - allowing mutation of primitive values makes optimizations harder
  8814. * css/CSSPrimitiveValue.cpp:
  8815. (WebCore::CSSPrimitiveValue::setFloatValue):
  8816. (WebCore::CSSPrimitiveValue::setStringValue):
  8817. 2010-11-16 Steve Falkenburg <sfalken@apple.com>
  8818. Reviewed by Adam Roben.
  8819. Disable LTCG for Windows Release builds. Add new Release_LTCG configuration.
  8820. https://bugs.webkit.org/show_bug.cgi?id=49632
  8821. * WebCore.vcproj/QTMovieWin.vcproj:
  8822. * WebCore.vcproj/WebCore.make:
  8823. * WebCore.vcproj/WebCore.sln:
  8824. * WebCore.vcproj/WebCore.vcproj:
  8825. 2010-11-16 Anders Carlsson <andersca@apple.com>
  8826. Reviewed by John Sullivan.
  8827. Set the original URL for downloads
  8828. https://bugs.webkit.org/show_bug.cgi?id=49628
  8829. Export symbols needed by WebKit2.
  8830. * WebCore.exp.in:
  8831. 2010-11-16 Dave Hyatt <hyatt@apple.com>
  8832. Reviewed by Dan Bernstein.
  8833. https://bugs.webkit.org/show_bug.cgi?id=11004
  8834. font-size:0 is ignored. Remove the minimum font size of 1 in CSSStyleSelector.
  8835. Change the pref value for minimum font size from 1 to 0. Make sure to never use the NSFont's size,
  8836. since it doesn't honor a size of 0. Instead pass the size in to the FontPlatformData(NSFont*) version
  8837. of the constructor rather than using [NSFont pointSize].
  8838. https://bugs.webkit.org/show_bug.cgi?id=49582
  8839. Negative leading is not handled correctly. There are two bugs here. The first is that
  8840. maxAscent and maxDescent can be negative, so we need a notion of whether or not we have
  8841. set them before so that we can allow them to be < 0.
  8842. The second issue is that we should understand where fonts will end up relative to
  8843. our baseline (excluding line height), and only allow those boxes to impact ascent and
  8844. descent if the actual font box (without factoring in line height) is above or below the
  8845. root line box baseline.
  8846. Added fast/css/negative-leading.html
  8847. These two bug fixes have to land together to keep the Acid 3 test rendering correctly.
  8848. * WebCore.exp.in:
  8849. * css/CSSStyleSelector.cpp:
  8850. (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize):
  8851. * platform/graphics/cocoa/FontPlatformData.h:
  8852. * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
  8853. (WebCore::FontPlatformData::FontPlatformData):
  8854. * platform/graphics/mac/FontCacheMac.mm:
  8855. (WebCore::FontCache::getFontDataForCharacters):
  8856. (WebCore::FontCache::createFontPlatformData):
  8857. * platform/graphics/mac/SimpleFontDataMac.mm:
  8858. (WebCore::SimpleFontData::smallCapsFontData):
  8859. * rendering/InlineFlowBox.cpp:
  8860. (WebCore::InlineFlowBox::computeLogicalBoxHeights):
  8861. * rendering/InlineFlowBox.h:
  8862. * rendering/RootInlineBox.cpp:
  8863. (WebCore::RootInlineBox::alignBoxesInBlockDirection):
  8864. 2010-11-16 Darin Adler <darin@apple.com>
  8865. https://bugs.webkit.org/show_bug.cgi?id=49611
  8866. REGRESSION (r72115): 5 layout tests are broken
  8867. * loader/FrameLoader.cpp:
  8868. (WebCore::FrameLoader::loadFrameRequest): Roll change from
  8869. https://bugs.webkit.org/show_bug.cgi?id=48603 out. I'll roll
  8870. it back in after fixing the failing tests.
  8871. 2010-11-16 Dan Bernstein <mitz@apple.com>
  8872. Reviewed by Simon Fraser.
  8873. <rdar://problem/8672000> REGRESSION (r72040): Error image with alt text can cause style to be frozen in a subtree
  8874. https://bugs.webkit.org/show_bug.cgi?id=49579
  8875. r72040 introduced a call to setNeedsStyleRecalc() from RenderImage::imageChanged(). When imageChanged()
  8876. got called beneath recalcStyle() on some ancestor element, the result was that the ancestor’s
  8877. childNeedsStyleRecalc flag got cleared, but its descendants all the way down to the image did not.
  8878. Thereafter, setNeedsStyleRecalc() would fail to propagate from that subtree up to the root. The fix
  8879. is to avoid the newly-added setNeedsStyleRecalc() in most cases, including during reclacStyle(), and
  8880. just keep it for when it is needed.
  8881. Tests: fast/block/float/015.html
  8882. fast/images/style-access-during-imageChanged-style-freeze.html
  8883. * dom/Document.cpp:
  8884. (WebCore::Document::isPendingStyleRecalc): Added.
  8885. * dom/Document.h:
  8886. * rendering/RenderImage.cpp:
  8887. (WebCore::RenderImage::imageChanged): Only defer intrinsic size compoutation if a style recalc
  8888. is coming (indicating that current style() is stale).
  8889. 2010-11-11 Zhenyao Mo <zmo@google.com>
  8890. Reviewed by Kenneth Russell.
  8891. Implement UNPACK_COLORSPACE_CONVERSION_WEBGL
  8892. https://bugs.webkit.org/show_bug.cgi?id=47196
  8893. * html/canvas/WebGLRenderingContext.cpp:
  8894. (WebCore::WebGLRenderingContext::texImage2DImpl): Apply UNPACK_COLORSPACE_CONVERSION settings to image uploading.
  8895. (WebCore::WebGLRenderingContext::texSubImage2DImpl): Ditto.
  8896. * platform/graphics/GraphicsContext3D.cpp:
  8897. (WebCore::GraphicsContext3D::extractImageData): Ditto.
  8898. * platform/graphics/GraphicsContext3D.h:
  8899. * platform/graphics/ImageSource.cpp:
  8900. (WebCore::ImageSource::ImageSource): Add ignoreGammaColorProfile parameter.
  8901. (WebCore::ImageSource::setData): Ditto.
  8902. * platform/graphics/ImageSource.h:
  8903. * platform/graphics/cg/GraphicsContext3DCG.cpp:
  8904. (WebCore::GraphicsContext3D::getImageData): Ditto.
  8905. * platform/graphics/cg/ImageSourceCG.cpp:
  8906. (WebCore::ImageSource::ImageSource): Ditto.
  8907. * platform/graphics/qt/GraphicsContext3DQt.cpp:
  8908. (WebCore::GraphicsContext3D::getImageData): Ditto.
  8909. * platform/graphics/qt/ImageDecoderQt.cpp:
  8910. (WebCore::ImageDecoder::create): Ditto.
  8911. (WebCore::ImageDecoderQt::ImageDecoderQt): Ditto.
  8912. * platform/graphics/qt/ImageDecoderQt.h:
  8913. * platform/graphics/skia/GraphicsContext3DSkia.cpp:
  8914. (WebCore::GraphicsContext3D::getImageData): Ditto.
  8915. * platform/image-decoders/ImageDecoder.cpp:
  8916. (WebCore::ImageDecoder::create): Ditto.
  8917. * platform/image-decoders/ImageDecoder.h:
  8918. (WebCore::ImageDecoder::ImageDecoder): Ditto.
  8919. * platform/image-decoders/bmp/BMPImageDecoder.cpp:
  8920. (WebCore::BMPImageDecoder::BMPImageDecoder):
  8921. * platform/image-decoders/bmp/BMPImageDecoder.h:
  8922. * platform/image-decoders/gif/GIFImageDecoder.cpp:
  8923. (WebCore::GIFImageDecoder::GIFImageDecoder): Ditto.
  8924. * platform/image-decoders/gif/GIFImageDecoder.h:
  8925. * platform/image-decoders/ico/ICOImageDecoder.cpp:
  8926. (WebCore::ICOImageDecoder::ICOImageDecoder): Ditto.
  8927. (WebCore::ICOImageDecoder::decodeAtIndex): Ditto.
  8928. * platform/image-decoders/ico/ICOImageDecoder.h:
  8929. * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
  8930. (WebCore::JPEGImageDecoder::JPEGImageDecoder): Ditto.
  8931. * platform/image-decoders/jpeg/JPEGImageDecoder.h:
  8932. * platform/image-decoders/png/PNGImageDecoder.cpp:
  8933. (WebCore::PNGImageDecoder::PNGImageDecoder): Ditto.
  8934. (WebCore::PNGImageDecoder::headerAvailable): Ignore gamma settings if ignoreGammaAndColorProfile is true.
  8935. * platform/image-decoders/png/PNGImageDecoder.h:
  8936. * platform/image-decoders/webp/WEBPImageDecoder.cpp:
  8937. (WebCore::WEBPImageDecoder::WEBPImageDecoder): Add ignoreGammaAndColorProfile parameter.
  8938. * platform/image-decoders/webp/WEBPImageDecoder.h:
  8939. 2010-11-16 Eric Carlson <eric.carlson@apple.com>
  8940. Unreviewed attempt to fix GTK build after http://trac.webkit.org/changeset/72117
  8941. * platform/graphics/MediaPlayer.cpp:
  8942. (WebCore::installedMediaEngines):
  8943. 2010-11-12 Zhenyao Mo <zmo@google.com>
  8944. Reviewed by Kenneth Russell.
  8945. Refactor GL backend flags
  8946. https://bugs.webkit.org/show_bug.cgi?id=49460
  8947. * html/canvas/WebGLRenderingContext.cpp:
  8948. (WebCore::WebGLRenderingContext::WebGLRenderingContext): Call setupFlags().
  8949. (WebCore::WebGLRenderingContext::initializeNewContext): Remove flag initialization to setupFlags().
  8950. (WebCore::WebGLRenderingContext::setupFlags): Initialize GL flags.
  8951. (WebCore::WebGLRenderingContext::getRenderbufferParameter): Use accessor function instead of member.
  8952. (WebCore::WebGLRenderingContext::renderbufferStorage): Ditto.
  8953. * html/canvas/WebGLRenderingContext.h: Use flags set in setupFlags instead of querying underlying GL implementation.
  8954. (WebCore::WebGLRenderingContext::isGLES2Compliant):
  8955. (WebCore::WebGLRenderingContext::isGLES2NPOTStrict):
  8956. (WebCore::WebGLRenderingContext::isErrorGeneratedOnOutOfBoundsAccesses):
  8957. (WebCore::WebGLRenderingContext::isResourceSafe):
  8958. (WebCore::WebGLRenderingContext::isDepthStencilSupported):
  8959. * platform/graphics/Extensions3D.h: Add NPOT extension.
  8960. * platform/graphics/GraphicsContext3D.h: Remove GL flag queries at this level.
  8961. * platform/graphics/chromium/Extensions3DChromium.h: Add resource_safe and strict_attribs extensions.
  8962. * platform/graphics/mac/GraphicsContext3DMac.mm: Remove GL flag queries at this level.
  8963. 2010-11-16 Kenneth Russell <kbr@google.com>
  8964. Reviewed by Dimitri Glazkov.
  8965. WebIDL conversions from string to number and array to number should not generate TypeError
  8966. https://bugs.webkit.org/show_bug.cgi?id=49218
  8967. Recent SVG-related changes to the StrictTypeChecking extended attribute in
  8968. CodeGeneratorJS.pm and CodeGeneratorV8.pm were not correct according to the Web IDL and
  8969. ECMA-262 specifications. In particular, when an attribute or function argument is specified
  8970. as a number type (floating-point or integer), passing in a String or object is not supposed
  8971. to raise an exception.
  8972. The original intent of the StrictTypeChecking extended attribute was to properly raise
  8973. TypeError when an interface type is required, but the supplied object does not implement the
  8974. interface type (http://dev.w3.org/2006/webapi/WebIDL/#es-interface). Historically WebKit has
  8975. silently passed null to the C++ bindings in this case. The handling of strings in the
  8976. original StrictTypeChecking implementation was also incorrect, raising exceptions when it
  8977. should not.
  8978. The semantics of StrictTypeChecking have been changed to enforce only the restrictions on
  8979. interface types. The V8 custom bindings for WebGL have been updated to match the behavior of
  8980. the autogenerated code.
  8981. Test: fast/canvas/webgl/type-conversion-test.html
  8982. * bindings/scripts/CodeGeneratorJS.pm:
  8983. * bindings/scripts/CodeGeneratorV8.pm:
  8984. * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
  8985. (WebCore::getObjectParameter):
  8986. (WebCore::V8WebGLRenderingContext::getFramebufferAttachmentParameterCallback):
  8987. (WebCore::V8WebGLRenderingContext::getParameterCallback):
  8988. (WebCore::V8WebGLRenderingContext::getProgramParameterCallback):
  8989. (WebCore::V8WebGLRenderingContext::getShaderParameterCallback):
  8990. (WebCore::vertexAttribAndUniformHelperf):
  8991. 2010-11-16 Alexey Proskuryakov <ap@apple.com>
  8992. Windows build fix.
  8993. * DerivedSources.cpp: Removing CSS Variables generated files.
  8994. 2010-11-16 Eric Carlson <eric.carlson@apple.com>
  8995. Reviewed by John Sullivan.
  8996. getMIMEType(s)ForExtension should consult system mapping
  8997. https://bugs.webkit.org/show_bug.cgi?id=49497
  8998. No new tests possible.
  8999. * platform/MIMETypeRegistry.cpp:
  9000. (WebCore::MIMETypeRegistry::getMediaMIMETypeForExtension): Add the type returned by getMIMETypeForExtension.
  9001. Put the result of mediaMIMETypeMap().get() in a local variable and test instead of calling
  9002. constains() and then get().
  9003. (WebCore::MIMETypeRegistry::getMediaMIMETypesForExtension): Ditto.
  9004. 2010-11-16 Eric Carlson <eric.carlson@apple.com>
  9005. Reviewed by Darin Adler.
  9006. Rename QTKit based media engine class name
  9007. https://bugs.webkit.org/show_bug.cgi?id=36663
  9008. No new tests as this just renames a class and restructures existing code.
  9009. * platform/graphics/MediaPlayer.cpp:
  9010. (WebCore::installedMediaEngines): Use a macro with the platform media player class name to reduce the
  9011. number of #ifs in the code.
  9012. * platform/graphics/mac/MediaPlayerPrivateQTKit.h: Rename MediaPlayerPrivate to MediaPlayerPrivateQTKit.
  9013. * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
  9014. (WebCore::MediaPlayerPrivateQTKit::create):
  9015. (WebCore::MediaPlayerPrivateQTKit::registerMediaEngine):
  9016. (WebCore::MediaPlayerPrivateQTKit::MediaPlayerPrivateQTKit):
  9017. (WebCore::MediaPlayerPrivateQTKit::~MediaPlayerPrivateQTKit):
  9018. (WebCore::MediaPlayerPrivateQTKit::createQTMovie):
  9019. (WebCore::MediaPlayerPrivateQTKit::createQTMovieView):
  9020. (WebCore::MediaPlayerPrivateQTKit::detachQTMovieView):
  9021. (WebCore::MediaPlayerPrivateQTKit::createQTVideoRenderer):
  9022. (WebCore::MediaPlayerPrivateQTKit::destroyQTVideoRenderer):
  9023. (WebCore::MediaPlayerPrivateQTKit::createQTMovieLayer):
  9024. (WebCore::MediaPlayerPrivateQTKit::destroyQTMovieLayer):
  9025. (WebCore::MediaPlayerPrivateQTKit::currentRenderingMode):
  9026. (WebCore::MediaPlayerPrivateQTKit::preferredRenderingMode):
  9027. (WebCore::MediaPlayerPrivateQTKit::setUpVideoRendering):
  9028. (WebCore::MediaPlayerPrivateQTKit::tearDownVideoRendering):
  9029. (WebCore::MediaPlayerPrivateQTKit::hasSetUpVideoRendering):
  9030. (WebCore::MediaPlayerPrivateQTKit::createQTTime):
  9031. (WebCore::MediaPlayerPrivateQTKit::resumeLoad):
  9032. (WebCore::MediaPlayerPrivateQTKit::load):
  9033. (WebCore::MediaPlayerPrivateQTKit::loadInternal):
  9034. (WebCore::MediaPlayerPrivateQTKit::prepareToPlay):
  9035. (WebCore::MediaPlayerPrivateQTKit::platformMedia):
  9036. (WebCore::MediaPlayerPrivateQTKit::platformLayer):
  9037. (WebCore::MediaPlayerPrivateQTKit::play):
  9038. (WebCore::MediaPlayerPrivateQTKit::pause):
  9039. (WebCore::MediaPlayerPrivateQTKit::duration):
  9040. (WebCore::MediaPlayerPrivateQTKit::currentTime):
  9041. (WebCore::MediaPlayerPrivateQTKit::seek):
  9042. (WebCore::MediaPlayerPrivateQTKit::doSeek):
  9043. (WebCore::MediaPlayerPrivateQTKit::cancelSeek):
  9044. (WebCore::MediaPlayerPrivateQTKit::seekTimerFired):
  9045. (WebCore::MediaPlayerPrivateQTKit::paused):
  9046. (WebCore::MediaPlayerPrivateQTKit::seeking):
  9047. (WebCore::MediaPlayerPrivateQTKit::naturalSize):
  9048. (WebCore::MediaPlayerPrivateQTKit::hasVideo):
  9049. (WebCore::MediaPlayerPrivateQTKit::hasAudio):
  9050. (WebCore::MediaPlayerPrivateQTKit::supportsFullscreen):
  9051. (WebCore::MediaPlayerPrivateQTKit::setVolume):
  9052. (WebCore::MediaPlayerPrivateQTKit::hasClosedCaptions):
  9053. (WebCore::MediaPlayerPrivateQTKit::setClosedCaptionsVisible):
  9054. (WebCore::MediaPlayerPrivateQTKit::setRate):
  9055. (WebCore::MediaPlayerPrivateQTKit::setPreservesPitch):
  9056. (WebCore::MediaPlayerPrivateQTKit::buffered):
  9057. (WebCore::MediaPlayerPrivateQTKit::maxTimeSeekable):
  9058. (WebCore::MediaPlayerPrivateQTKit::maxTimeLoaded):
  9059. (WebCore::MediaPlayerPrivateQTKit::bytesLoaded):
  9060. (WebCore::MediaPlayerPrivateQTKit::totalBytes):
  9061. (WebCore::MediaPlayerPrivateQTKit::cancelLoad):
  9062. (WebCore::MediaPlayerPrivateQTKit::cacheMovieScale):
  9063. (WebCore::MediaPlayerPrivateQTKit::isReadyForVideoSetup):
  9064. (WebCore::MediaPlayerPrivateQTKit::prepareForRendering):
  9065. (WebCore::MediaPlayerPrivateQTKit::updateStates):
  9066. (WebCore::MediaPlayerPrivateQTKit::loadStateChanged):
  9067. (WebCore::MediaPlayerPrivateQTKit::rateChanged):
  9068. (WebCore::MediaPlayerPrivateQTKit::sizeChanged):
  9069. (WebCore::MediaPlayerPrivateQTKit::timeChanged):
  9070. (WebCore::MediaPlayerPrivateQTKit::didEnd):
  9071. (WebCore::MediaPlayerPrivateQTKit::setSize):
  9072. (WebCore::MediaPlayerPrivateQTKit::setVisible):
  9073. (WebCore::MediaPlayerPrivateQTKit::hasAvailableVideoFrame):
  9074. (WebCore::MediaPlayerPrivateQTKit::repaint):
  9075. (WebCore::MediaPlayerPrivateQTKit::paintCurrentFrameInContext):
  9076. (WebCore::MediaPlayerPrivateQTKit::paint):
  9077. (WebCore::MediaPlayerPrivateQTKit::getSupportedTypes):
  9078. (WebCore::MediaPlayerPrivateQTKit::supportsType):
  9079. (WebCore::MediaPlayerPrivateQTKit::isAvailable):
  9080. (WebCore::MediaPlayerPrivateQTKit::disableUnsupportedTracks):
  9081. (WebCore::MediaPlayerPrivateQTKit::sawUnsupportedTracks):
  9082. (WebCore::MediaPlayerPrivateQTKit::supportsAcceleratedRendering):
  9083. (WebCore::MediaPlayerPrivateQTKit::acceleratedRenderingStateChanged):
  9084. (WebCore::MediaPlayerPrivateQTKit::hasSingleSecurityOrigin):
  9085. (WebCore::MediaPlayerPrivateQTKit::movieLoadType):
  9086. (WebCore::MediaPlayerPrivateQTKit::setPreload):
  9087. (WebCore::MediaPlayerPrivateQTKit::mediaTimeForTimeValue):
  9088. (-[WebCoreMovieObserver initWithCallback:]):
  9089. 2010-11-16 Alexey Proskuryakov <ap@apple.com>
  9090. Reviewed by Dave Hyatt.
  9091. https://bugs.webkit.org/show_bug.cgi?id=49483
  9092. Remove CSS Variable support
  9093. * Android.derived.jscbindings.mk:
  9094. * Android.derived.v8bindings.mk:
  9095. * Android.mk:
  9096. * CMakeLists.txt:
  9097. * DerivedSources.make:
  9098. * GNUmakefile.am:
  9099. * WebCore.gypi:
  9100. * WebCore.pri:
  9101. * WebCore.pro:
  9102. * WebCore.vcproj/WebCore.vcproj:
  9103. * WebCore.xcodeproj/project.pbxproj:
  9104. * bindings/js/JSCSSRuleCustom.cpp:
  9105. (WebCore::toJS):
  9106. * bindings/v8/custom/V8DOMWindowCustom.cpp
  9107. * bindings/objc/DOMCSS.mm:
  9108. (kitClass):
  9109. * bindings/scripts/CodeGeneratorJS.pm:
  9110. * css/CSSComputedStyleDeclaration.cpp:
  9111. (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  9112. * css/CSSGrammar.y:
  9113. * css/CSSMutableStyleDeclaration.cpp:
  9114. (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
  9115. (WebCore::CSSMutableStyleDeclaration::removeProperty):
  9116. (WebCore::CSSMutableStyleDeclaration::addParsedProperties):
  9117. (WebCore::CSSMutableStyleDeclaration::copy):
  9118. * css/CSSMutableStyleDeclaration.h:
  9119. (WebCore::CSSMutableStyleDeclaration::create):
  9120. * css/CSSParser.cpp:
  9121. (WebCore::CSSParser::CSSParser):
  9122. (WebCore::CSSParser::~CSSParser):
  9123. (WebCore::CSSParser::parseValue):
  9124. (WebCore::CSSParser::lex):
  9125. (WebCore::CSSParser::recheckAtKeyword):
  9126. (WebCore::CSSParser::text):
  9127. (WebCore::CSSParser::createMediaRule):
  9128. (WebCore::CSSParser::createKeyframesRule):
  9129. (WebCore::CSSParser::createStyleRule):
  9130. (WebCore::CSSParser::createFontFaceRule):
  9131. (WebCore::CSSParser::addNamespace):
  9132. (WebCore::CSSParser::createPageRule):
  9133. * css/CSSParser.h:
  9134. * css/CSSParserValues.cpp:
  9135. (WebCore::CSSParserValueList::addValue):
  9136. (WebCore::CSSParserValueList::deleteValueAt):
  9137. (WebCore::CSSParserValue::createCSSValue):
  9138. * css/CSSParserValues.h:
  9139. (WebCore::CSSParserValueList::CSSParserValueList):
  9140. * css/CSSPrimitiveValue.cpp:
  9141. (WebCore::CSSPrimitiveValue::cleanup):
  9142. (WebCore::CSSPrimitiveValue::getStringValue):
  9143. (WebCore::CSSPrimitiveValue::cssText):
  9144. (WebCore::CSSPrimitiveValue::parserValue):
  9145. * css/CSSPrimitiveValue.h:
  9146. * css/CSSProperty.cpp:
  9147. (WebCore::CSSProperty::cssText):
  9148. * css/CSSPropertyNames.in:
  9149. * css/CSSRule.h:
  9150. * css/CSSRule.idl:
  9151. * css/CSSStyleDeclaration.cpp:
  9152. (WebCore::CSSStyleDeclaration::copyPropertiesInSet):
  9153. * css/CSSStyleSelector.cpp:
  9154. (WebCore::CSSStyleSelector::addMatchedDeclaration):
  9155. (WebCore::CSSRuleSet::addRulesFromSheet):
  9156. (WebCore::CSSStyleSelector::applyProperty):
  9157. * css/CSSStyleSelector.h:
  9158. * css/CSSValue.h:
  9159. * css/CSSVariableDependentValue.cpp: Removed.
  9160. * css/CSSVariableDependentValue.h: Removed.
  9161. * css/CSSVariablesDeclaration.cpp: Removed.
  9162. * css/CSSVariablesDeclaration.h: Removed.
  9163. * css/CSSVariablesDeclaration.idl: Removed.
  9164. * css/CSSVariablesRule.cpp: Removed.
  9165. * css/CSSVariablesRule.h: Removed.
  9166. * css/CSSVariablesRule.idl: Removed.
  9167. * css/StyleBase.h:
  9168. (WebCore::StyleBase::isMediaRule):
  9169. * css/tokenizer.flex:
  9170. * page/DOMWindow.idl:
  9171. 2010-11-16 Darin Adler <darin@apple.com>
  9172. Reviewed by Sam Weinig.
  9173. https://bugs.webkit.org/show_bug.cgi?id=48603
  9174. Boolean logic mistake in local file check
  9175. * loader/FrameLoader.cpp:
  9176. (WebCore::FrameLoader::loadFrameRequest): Fix logic so that both checks have to pass
  9177. before accepting a local file load.
  9178. 2010-11-15 Darin Adler <darin@apple.com>
  9179. Reviewed by Sam Weinig.
  9180. Harden additional string functions against large lengths
  9181. https://bugs.webkit.org/show_bug.cgi?id=49574
  9182. * platform/text/TextCodecUTF16.cpp:
  9183. (WebCore::TextCodecUTF16::encode): Check for length that is
  9184. too large for size_t.
  9185. * platform/text/TextStream.cpp:
  9186. (WebCore::TextStream::operator<<): Check for length that is
  9187. too large for size_t.
  9188. 2010-11-16 Pavel Feldman <pfeldman@chromium.org>
  9189. Not reviewed. Touching inspector controller to make gtk / qt happier.
  9190. * inspector/InspectorController.cpp:
  9191. 2010-11-16 Carlos Garcia Campos <cgarcia@igalia.com>
  9192. Reviewed by Martin Robinson.
  9193. [GTK] Use gdk_pixbuf_get_from_surface() when available
  9194. https://bugs.webkit.org/show_bug.cgi?id=49532
  9195. * platform/graphics/gtk/GdkCairoUtilities.cpp:
  9196. (cairoImageSurfaceToGdkPixbuf):
  9197. 2010-11-16 Pavel Feldman <pfeldman@chromium.org>
  9198. Reviewed by Yury Semikhatsky.
  9199. Web Inspector: init front-end UI upon DOMContentLoaded, not load event.
  9200. https://bugs.webkit.org/show_bug.cgi?id=49596
  9201. * inspector/front-end/inspector.js:
  9202. (windowLoaded):
  9203. 2010-11-15 Alexander Pavlov <apavlov@chromium.org>
  9204. Reviewed by Pavel Feldman.
  9205. Web Inspector: Migrate frontend to the new CSS editing/retrieval API
  9206. https://bugs.webkit.org/show_bug.cgi?id=49492
  9207. Test: inspector/styles-new-API.html
  9208. * inspector/front-end/AuditRules.js:
  9209. (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.selectorsCallback):
  9210. (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.routine):
  9211. (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback):
  9212. (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.styleSheetCallback):
  9213. (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.allStylesCallback):
  9214. (WebInspector.AuditRules.UnusedCssRule.prototype.doRun):
  9215. (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
  9216. (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.receivedImages):
  9217. * inspector/front-end/CSSStyleModel.js:
  9218. (WebInspector.CSSStyleModel.prototype.getStylesAsync):
  9219. (WebInspector.CSSStyleModel.prototype.getComputedStyleAsync):
  9220. (WebInspector.CSSStyleModel.prototype.getInlineStyleAsync):
  9221. (WebInspector.CSSStyleModel.prototype.setRuleSelector):
  9222. (WebInspector.CSSStyleModel.prototype.setRuleSelector.callback):
  9223. (WebInspector.CSSStyleModel.prototype.addRule):
  9224. (WebInspector.CSSStyleModel.prototype.addRule.callback):
  9225. (WebInspector.CSSStyleDeclaration):
  9226. (WebInspector.CSSStyleDeclaration.prototype.propertyAt):
  9227. (WebInspector.CSSStyleDeclaration.prototype.pastLastSourcePropertyIndex):
  9228. (WebInspector.CSSStyleDeclaration.prototype.newBlankProperty):
  9229. (WebInspector.CSSStyleDeclaration.prototype.insertPropertyAt):
  9230. (WebInspector.CSSStyleDeclaration.prototype.appendProperty):
  9231. (WebInspector.CSSRule):
  9232. (WebInspector.CSSProperty.prototype.get propertyText):
  9233. (WebInspector.CSSProperty.prototype.setText):
  9234. (WebInspector.CSSProperty.prototype.setDisabled):
  9235. (WebInspector.CSSStyleSheet):
  9236. (WebInspector.CSSStyleSheet.createForId):
  9237. (WebInspector.CSSStyleSheet.prototype.getText):
  9238. (WebInspector.CSSStyleSheet.prototype.setText):
  9239. * inspector/front-end/Settings.js:
  9240. * inspector/front-end/StylesSidebarPane.js:
  9241. (WebInspector.StylePropertiesSection.prototype.onpopulate):
  9242. (WebInspector.StylePropertiesSection.prototype.addNewBlankProperty):
  9243. (WebInspector.StylePropertiesSection.prototype._debugShowStyle.removeStyleBox):
  9244. (WebInspector.StylePropertiesSection.prototype._debugShowStyle):
  9245. (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted):
  9246. (WebInspector.StylePropertyTreeElement.prototype):
  9247. (WebInspector.StylePropertyTreeElement.prototype.):
  9248. * inspector/front-end/inspector.css:
  9249. (.styles-section .properties li.not-parsed-ok):
  9250. (.styles-section .properties li.not-parsed-ok::before):
  9251. (.styles-section .properties .inactive):
  9252. 2010-11-16 Sheriff Bot <webkit.review.bot@gmail.com>
  9253. Unreviewed, rolling out r72082.
  9254. http://trac.webkit.org/changeset/72082
  9255. https://bugs.webkit.org/show_bug.cgi?id=49594
  9256. "broken SnowLeopard build" (Requested by apavlov on #webkit).
  9257. * css/CSSPrimitiveValue.cpp:
  9258. (WebCore::scaleFactorForConversion):
  9259. (WebCore::CSSPrimitiveValue::getDoubleValue):
  9260. (WebCore::CSSPrimitiveValue::getIdent):
  9261. * css/CSSPrimitiveValue.h:
  9262. (WebCore::CSSPrimitiveValue::getFloatValue):
  9263. (WebCore::CSSPrimitiveValue::getIntValue):
  9264. 2010-11-16 Sheriff Bot <webkit.review.bot@gmail.com>
  9265. Unreviewed, rolling out r72087.
  9266. http://trac.webkit.org/changeset/72087
  9267. https://bugs.webkit.org/show_bug.cgi?id=49593
  9268. "broken build" (Requested by apavlov on #webkit).
  9269. * css/CSSPrimitiveValue.cpp:
  9270. (WebCore::unitCategory):
  9271. 2010-11-15 Pavel Feldman <pfeldman@chromium.org>
  9272. Reviewed by Yury Semikhatsky.
  9273. Web Inspector: rename StoragePanel to ResourcesPanel.
  9274. https://bugs.webkit.org/show_bug.cgi?id=49534
  9275. * WebCore.gypi:
  9276. * WebCore.vcproj/WebCore.vcproj:
  9277. * inspector/front-end/DatabaseQueryView.js:
  9278. (WebInspector.DatabaseQueryView.prototype._queryFinished):
  9279. * inspector/front-end/DatabaseTableView.js:
  9280. (WebInspector.DatabaseTableView.prototype._queryFinished):
  9281. * inspector/front-end/ExtensionServer.js:
  9282. (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource):
  9283. * inspector/front-end/Images/storageIcon.png: Removed.
  9284. * inspector/front-end/ResourceManager.js:
  9285. (WebInspector.ResourceManager.prototype.setOverrideContent):
  9286. (WebInspector.ResourceTreeModel.prototype.addOrUpdateFrame):
  9287. (WebInspector.ResourceTreeModel.prototype.didCommitLoadForFrame):
  9288. (WebInspector.ResourceTreeModel.prototype.frameDetachedFromParent):
  9289. (WebInspector.ResourceTreeModel.prototype._clearChildFramesAndResources):
  9290. (WebInspector.ResourceTreeModel.prototype.addResourceToFrame):
  9291. * inspector/front-end/StoragePanel.js: Removed.
  9292. * inspector/front-end/WebKit.qrc:
  9293. * inspector/front-end/inspector.css:
  9294. (.resources.panel .sidebar):
  9295. (.resources.panel .sidebar li):
  9296. (.resources.panel .sidebar li.parent):
  9297. (.resources.panel .sidebar li.selected):
  9298. (.resources.panel .sidebar li.selected .selection):
  9299. (.resources.panel .sidebar :focus li.selected .selection):
  9300. (body.inactive .resources.panel .sidebar li.selected .selection):
  9301. (.resources.panel .sidebar .icon):
  9302. (.resources.panel .base-storage-tree-element-title):
  9303. (.resources.panel .status):
  9304. (.resources.panel li .status .bubble):
  9305. * inspector/front-end/inspector.html:
  9306. * inspector/front-end/inspector.js:
  9307. (WebInspector._createPanels):
  9308. (WebInspector.openResource):
  9309. (WebInspector.showPanel):
  9310. (WebInspector.selectDatabase):
  9311. (WebInspector.selectDOMStorage):
  9312. (WebInspector.addDatabase):
  9313. (WebInspector.addDOMStorage):
  9314. (WebInspector.updateDOMStorage):
  9315. (WebInspector.updateApplicationCacheStatus):
  9316. (WebInspector.didGetFileSystemPath):
  9317. (WebInspector.didGetFileSystemError):
  9318. (WebInspector.didGetFileSystemDisabled):
  9319. (WebInspector.updateNetworkState):
  9320. (WebInspector._choosePanelToShowSourceLine):
  9321. 2010-11-16 Alexander Pavlov <apavlov@chromium.org>
  9322. Unreviewed SnowLeopard build fix.
  9323. * css/CSSPrimitiveValue.cpp:
  9324. (WebCore::unitCategory):
  9325. 2010-11-16 Kenneth Rohde Christiansen <kenneth@webkit.org>
  9326. Reviewed by Andreas Kling.
  9327. Viewport meta tag: Fix geometry computation
  9328. Available width and height should also be divided by the device pixel ratio.
  9329. * dom/ViewportArguments.cpp:
  9330. (WebCore::computeViewportAttributes):
  9331. * platform/network/qt/DnsPrefetchHelper.cpp:
  9332. 2010-11-12 Alexander Pavlov <apavlov@chromium.org>
  9333. Reviewed by Simon Fraser.
  9334. CSSPrimitiveValue.getFloatValue does not convert sizes
  9335. https://bugs.webkit.org/show_bug.cgi?id=35770
  9336. Implemented all same-category unit conversions (length, angle, time, frequency) and retained
  9337. absolute-relative (cm, mm, in, pt, pc) length conversions intact.
  9338. Illegal unit conversion attempts will throw an INVALID_ACCESS_ERR DOMException.
  9339. * css/CSSPrimitiveValue.cpp:
  9340. (WebCore::unitCategory):
  9341. (WebCore::scaleFactorForConversion):
  9342. (WebCore::CSSPrimitiveValue::getDoubleValue):
  9343. (WebCore::CSSPrimitiveValue::canonicalUnitTypeForCategory):
  9344. (WebCore::CSSPrimitiveValue::getDoubleValueInternal):
  9345. * css/CSSPrimitiveValue.h:
  9346. 2010-11-15 Pavel Feldman <pfeldman@chromium.org>
  9347. Reviewed by Yury Semikhatsky.
  9348. Web Inspector: extract HTML title setter in treeoutline.js.
  9349. https://bugs.webkit.org/show_bug.cgi?id=49540
  9350. * inspector/front-end/ElementsTreeOutline.js:
  9351. (WebInspector.ElementsTreeElement.prototype.adjustCollapsedRange):
  9352. (WebInspector.ElementsTreeElement.prototype.updateTitle):
  9353. * inspector/front-end/treeoutline.js:
  9354. (TreeElement.prototype.get titleHTML):
  9355. (TreeElement.prototype.set titleHTML):
  9356. (TreeElement.prototype._setListItemNodeContent):
  9357. 2010-11-16 John Knottenbelt <jknotten@chromium.org>
  9358. Reviewed by Jeremy Orlow.
  9359. Assert that DeviceOrientationClientMock is used by only one controller.
  9360. https://bugs.webkit.org/show_bug.cgi?id=48506
  9361. This is a design constraint of the DeviceOrientationClientMock because the
  9362. m_controller field can only store a pointer to a single instance of the
  9363. corresponding DeviceOrientationController.
  9364. * platform/mock/DeviceOrientationClientMock.cpp:
  9365. (WebCore::DeviceOrientationClientMock::setController):
  9366. 2010-11-16 Mihai Parparita <mihaip@chromium.org>
  9367. Reviewed by Adam Barth.
  9368. fast/images/size-failure.html results in malloc of 2 Gb after switching to WebKit image decoders
  9369. https://bugs.webkit.org/show_bug.cgi?id=48634
  9370. Specify the capacity when calling CFDataCreateMutable, which can signal
  9371. malloc failures (by returning NULL), unlike CFDataSetLength.
  9372. * platform/image-decoders/cg/ImageDecoderCG.cpp:
  9373. (WebCore::RGBA32Buffer::setSize):
  9374. 2010-11-15 Rob Buis <rwlbuis@gmail.com>
  9375. Reviewed by Dirk Schulze and Darin Adler.
  9376. requiredFeatures does not adapt to SVGStringList changes
  9377. https://bugs.webkit.org/show_bug.cgi?id=40887
  9378. Centralize the const_cast handling and only do it if needed.
  9379. Remove the const_cast in all svgAttributeChanged functions and move
  9380. it to SVGTest::handleAttributeChange. Add an early return to
  9381. handleAttributeChange to avoid unnecessary const_casts.
  9382. No tests necessary as functionality has not changed.
  9383. * svg/SVGCircleElement.cpp:
  9384. (WebCore::SVGCircleElement::svgAttributeChanged):
  9385. * svg/SVGEllipseElement.cpp:
  9386. (WebCore::SVGEllipseElement::svgAttributeChanged):
  9387. * svg/SVGForeignObjectElement.cpp:
  9388. (WebCore::SVGForeignObjectElement::svgAttributeChanged):
  9389. * svg/SVGGElement.cpp:
  9390. (WebCore::SVGGElement::svgAttributeChanged):
  9391. * svg/SVGImageElement.cpp:
  9392. (WebCore::SVGImageElement::svgAttributeChanged):
  9393. * svg/SVGLineElement.cpp:
  9394. (WebCore::SVGLineElement::svgAttributeChanged):
  9395. * svg/SVGPathElement.cpp:
  9396. (WebCore::SVGPathElement::svgAttributeChanged):
  9397. * svg/SVGPolyElement.cpp:
  9398. (WebCore::SVGPolyElement::svgAttributeChanged):
  9399. * svg/SVGRectElement.cpp:
  9400. (WebCore::SVGRectElement::svgAttributeChanged):
  9401. * svg/SVGSVGElement.cpp:
  9402. (WebCore::SVGSVGElement::svgAttributeChanged):
  9403. * svg/SVGTests.cpp:
  9404. (WebCore::SVGTests::handleAttributeChange):
  9405. * svg/SVGTests.h:
  9406. * svg/SVGTextContentElement.cpp:
  9407. (WebCore::SVGTextContentElement::svgAttributeChanged):
  9408. * svg/SVGUseElement.cpp:
  9409. (WebCore::SVGUseElement::svgAttributeChanged):
  9410. 2010-11-15 Dimitri Glazkov <dglazkov@chromium.org>
  9411. Reviewed by Darin Adler.
  9412. REGRESSION(r71934): Removing an element with a shadow DOM from under a cursor causes a crash.
  9413. https://bugs.webkit.org/show_bug.cgi?id=49569
  9414. Test: fast/events/remove-shadow-host-crash.html
  9415. * rendering/TextControlInnerElements.h:
  9416. (WebCore::TextControlInnerElement::isShadowNode):
  9417. (WebCore::TextControlInnerElement::shadowParentNode):
  9418. 2010-11-12 Ryosuke Niwa <rniwa@webkit.org>
  9419. Reviewed by Darin Adler.
  9420. ScriptElement rather than HTMLScriptElement and SVGScriptElement should have ScriptElementData
  9421. https://bugs.webkit.org/show_bug.cgi?id=49469
  9422. Moved m_data, scriptCharset, scriptContent, shouldExecuteAsJavaScript, and executeScript from
  9423. HTMLScriptElement and SVGScriptElement to ScriptElementData.
  9424. Also made insertedIntoDocument, removedFromDocument, childrenChanged, finishParsingChildren,
  9425. and handleSourceAttribute of ScriptElement non-static.
  9426. No new tests are added since this is a cleanup.
  9427. * dom/ScriptElement.cpp:
  9428. (WebCore::ScriptElement::scriptCharset): Added.
  9429. (WebCore::ScriptElement::scriptContent): Added.
  9430. (WebCore::ScriptElement::shouldExecuteAsJavaScript): Added.
  9431. (WebCore::ScriptElement::executeScript): Added.
  9432. (WebCore::ScriptElement::insertedIntoDocument): Made non-static. Accesses m_data.
  9433. (WebCore::ScriptElement::removedFromDocument): Ditto.
  9434. (WebCore::ScriptElement::childrenChanged): Ditto.
  9435. (WebCore::ScriptElement::finishParsingChildren): Ditto.
  9436. (WebCore::ScriptElement::handleSourceAttribute): Ditto.
  9437. * dom/ScriptElement.h: Moved the declaration of ScriptElement after that of ScriptElementData
  9438. because ScriptElement has to instantiate ScriptElementData.
  9439. (WebCore::ScriptElement::ScriptElement): Initializes m_data.
  9440. * html/HTMLScriptElement.cpp: Removed scriptCharset, scriptContent, shouldExecuteAsJavaScript, and executeScript.
  9441. (WebCore::HTMLScriptElement::HTMLScriptElement): Initializes ScriptElement instead of ScriptElementData.
  9442. (WebCore::HTMLScriptElement::childrenChanged): Calls ScriptElement::childrenChanged.
  9443. (WebCore::HTMLScriptElement::parseMappedAttribute): Calls ScriptElement::handleSourceAttribute.
  9444. (WebCore::HTMLScriptElement::finishParsingChildren): Calls ScriptElement::finishParsingChildren.
  9445. (WebCore::HTMLScriptElement::insertedIntoDocument): Calls ScriptElement::insertedIntoDocument.
  9446. (WebCore::HTMLScriptElement::removedFromDocument): Calls ScriptElement::removedFromDocument.
  9447. * html/HTMLScriptElement.h:
  9448. * svg/SVGScriptElement.cpp: Removed scriptCharset, scriptContent, shouldExecuteAsJavaScript, and executeScript.
  9449. (WebCore::SVGScriptElement::SVGScriptElement): Initializes ScriptElement instead of ScriptElementData.
  9450. (WebCore::SVGScriptElement::svgAttributeChanged): Calls ScriptElement::handleSourceAttribute.
  9451. (WebCore::SVGScriptElement::insertedIntoDocument): Calls ScriptElement::insertedIntoDocument.
  9452. (WebCore::SVGScriptElement::removedFromDocument): Calls ScriptElement::removedFromDocument.
  9453. (WebCore::SVGScriptElement::childrenChanged): Calls ScriptElement::childrenChanged.
  9454. (WebCore::SVGScriptElement::finishParsingChildren): Calls ScriptElement::finishParsingChildren.
  9455. * svg/SVGScriptElement.h:
  9456. 2010-11-15 Kent Tamura <tkent@chromium.org>
  9457. Reviewed by Darin Adler.
  9458. Refactor HTMLInputElement: Move a part of HTMLInputElement::
  9459. defaultEventHandler() to InputTypes.
  9460. https://bugs.webkit.org/show_bug.cgi?id=48317
  9461. Move out the followings to InputTypes:
  9462. - click event processing,
  9463. - the first keydown event processing, and
  9464. - DOMActivate event processing.
  9465. Move m_xPos and m_yPos from HTMLInputElement to ImageInputType as
  9466. m_clickLocation. It's ok to move them because they should be valid only
  9467. when HTMLInputElement::m_activeSubmit is true. For type=image,
  9468. m_activeSubmit is true only in DOMActivate event handling. So we reset
  9469. m_clickLocation in handleDOMActivateEvent() with Event::underlyingEvent().
  9470. No new tests because this is just a refactoring.
  9471. * html/BaseDateAndTimeInputType.cpp:
  9472. (WebCore::BaseDateAndTimeInputType::handleKeydownEvent):
  9473. * html/BaseDateAndTimeInputType.h:
  9474. * html/FileInputType.cpp:
  9475. (WebCore::FileInputType::handleDOMActivateEvent):
  9476. * html/FileInputType.h:
  9477. * html/HTMLInputElement.cpp:
  9478. (WebCore::HTMLInputElement::HTMLInputElement):
  9479. (WebCore::HTMLInputElement::defaultEventHandler):
  9480. * html/HTMLInputElement.h:
  9481. * html/ImageInputType.cpp:
  9482. (WebCore::ImageInputType::appendFormData):
  9483. (WebCore::ImageInputType::handleDOMActivateEvent):
  9484. * html/ImageInputType.h:
  9485. * html/InputType.cpp:
  9486. (WebCore::InputType::handleClickEvent):
  9487. (WebCore::InputType::handleDOMActivateEvent):
  9488. (WebCore::InputType::handleKeydownEvent):
  9489. * html/InputType.h:
  9490. * html/NumberInputType.cpp:
  9491. (WebCore::NumberInputType::handleKeydownEvent):
  9492. * html/NumberInputType.h:
  9493. * html/RadioInputType.cpp:
  9494. (WebCore::RadioInputType::handleClickEvent):
  9495. * html/RadioInputType.h:
  9496. * html/RangeInputType.cpp:
  9497. (WebCore::RangeInputType::handleKeydownEvent):
  9498. * html/RangeInputType.h:
  9499. * html/ResetInputType.cpp:
  9500. (WebCore::ResetInputType::handleDOMActivateEvent):
  9501. * html/ResetInputType.h:
  9502. * html/SubmitInputType.cpp:
  9503. (WebCore::SubmitInputType::handleDOMActivateEvent):
  9504. * html/SubmitInputType.h:
  9505. * html/TextFieldInputType.cpp:
  9506. (WebCore::TextFieldInputType::handleKeydownEvent):
  9507. (WebCore::TextFieldInputType::handleKeydownEventForSpinButton):
  9508. * html/TextFieldInputType.h:
  9509. 2010-11-15 Chris Rogers <crogers@google.com>
  9510. Reviewed by Kenneth Russell.
  9511. Add AudioNode custom bindings
  9512. https://bugs.webkit.org/show_bug.cgi?id=49119
  9513. No new tests since audio API is not yet implemented.
  9514. * bindings/js/JSAudioNodeCustom.cpp: Added.
  9515. (WebCore::JSAudioNode::connect):
  9516. (WebCore::JSAudioNode::disconnect):
  9517. * bindings/v8/custom/V8AudioNodeCustom.cpp: Added.
  9518. (WebCore::V8AudioNode::connectCallback):
  9519. (WebCore::V8AudioNode::disconnectCallback):
  9520. * webaudio/AudioNode.idl:
  9521. 2010-11-15 Dave Hyatt <hyatt@apple.com>
  9522. Reviewed by Dan Bernstein.
  9523. https://bugs.webkit.org/show_bug.cgi?id=49570
  9524. Put italics specialization check back in CSSFontSelector. I had to back it out, since it broke
  9525. a layout test, and the issue was that local font fallback fonts should not be considered by the
  9526. specialization check (since you never want to pick a fallback over an actual @font-face rule if
  9527. the @font-face rule can handle it).
  9528. * css/CSSFontFace.h:
  9529. (WebCore::CSSFontFace::create):
  9530. (WebCore::CSSFontFace::isLocalFallback):
  9531. (WebCore::CSSFontFace::CSSFontFace):
  9532. * css/CSSFontSelector.cpp:
  9533. (WebCore::CSSFontSelector::addFontFaceRule):
  9534. (WebCore::compareFontFaces):
  9535. 2010-11-15 Adele Peterson <adele@apple.com>
  9536. Reviewed by Darin Adler.
  9537. Fix for: https://bugs.webkit.org/show_bug.cgi?id=49452
  9538. Placeholder should not be swapped in and out of the text control's inner text element
  9539. There's no need to swap the placeholder text in and out of the inner text element. Instead, just paint the text.
  9540. This reduces complexity and makes it easier to make independent decisions about the placeholder text and the text control value.
  9541. * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::setValueFromRenderer):
  9542. Since updatePlaceholderVisibility checks the value, set the value before calling updatePlaceholderVisibility.
  9543. * rendering/RenderTextControl.cpp:
  9544. (WebCore::RenderTextControl::updatePlaceholderVisibility): Remove code that set the inner text value with the placeholder text.
  9545. (WebCore::RenderTextControl::paintObject): Paint the placeholder text during the background phase.
  9546. * rendering/RenderTextControl.h:
  9547. * rendering/RenderTextControlMultiLine.cpp:
  9548. (WebCore::RenderTextControlMultiLine::nodeAtPoint): Remove custom hit testing that tried to avoid hitting the placeholder text at the wrong time.
  9549. (WebCore::RenderTextControlMultiLine::updateFromElement): Remove code that set the inner text value with the placeholder text.
  9550. (WebCore::RenderTextControlMultiLine::createInnerTextStyle): Remove code that created the inner text style based on the placeholder pseudoelement.
  9551. (WebCore::RenderTextControlMultiLine::textBoxInsetLeft): Added.
  9552. (WebCore::RenderTextControlMultiLine::textBoxInsetRight): Added.
  9553. * rendering/RenderTextControlMultiLine.h:
  9554. * rendering/RenderTextControlSingleLine.cpp:
  9555. (WebCore::RenderTextControlSingleLine::updateFromElement): Remove code that set the inner text value with the placeholder text.
  9556. (WebCore::RenderTextControlSingleLine::createInnerTextStyle): Remove code that created the inner text style based on the placeholder pseudoelement.
  9557. (WebCore::RenderTextControlSingleLine::textBoxInsetLeft): Added.
  9558. (WebCore::RenderTextControlSingleLine::textBoxInsetRight): Added.
  9559. * rendering/RenderTextControlSingleLine.h:
  9560. * rendering/TextControlInnerElements.cpp: Removed custom hit testing that tried to avoid hitting the placeholder text at the wrong time.
  9561. 2010-11-15 Andreas Kling <kling@webkit.org>
  9562. Unreviewed buildfix (Qt WebKit2 minimal)
  9563. * platform/qt/CookieJarQt.cpp: Add missing <QStringList> include.
  9564. 2010-11-15 Chris Rogers <crogers@google.com>
  9565. Reviewed by Kenneth Russell.
  9566. Add Event and EventListener hooks for JavaScriptAudioNode and AudioProcessingEvent
  9567. https://bugs.webkit.org/show_bug.cgi?id=49357
  9568. No new tests since audio API is not yet implemented.
  9569. * bindings/js/JSEventCustom.cpp:
  9570. (WebCore::toJS):
  9571. * bindings/js/JSEventTarget.cpp:
  9572. (WebCore::toJS):
  9573. * bindings/v8/V8DOMWrapper.cpp:
  9574. (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
  9575. * bindings/v8/custom/V8EventCustom.cpp:
  9576. (WebCore::toV8):
  9577. * dom/Event.cpp:
  9578. (WebCore::Event::isAudioProcessingEvent):
  9579. * dom/Event.h:
  9580. * dom/EventNames.h:
  9581. * dom/EventTarget.cpp:
  9582. (WebCore::EventTarget::toJavaScriptAudioNode):
  9583. * dom/EventTarget.h:
  9584. 2010-11-15 Alexey Proskuryakov <ap@apple.com>
  9585. Reviewed by Darin Adler.
  9586. A minor style fix in StyledElement.cpp.
  9587. * dom/StyledElement.cpp:
  9588. (WebCore::StyledElement::addCSSProperty):
  9589. (WebCore::StyledElement::addCSSImageProperty):
  9590. 2010-11-15 Alexey Proskuryakov <ap@apple.com>
  9591. Reviewed by Darin Adler.
  9592. https://bugs.webkit.org/show_bug.cgi?id=49565
  9593. Remove Attr.style accessor
  9594. * dom/Attr.idl: Only keep the accessor for Objective C API. Inspector doesn't seem to need
  9595. it any more.
  9596. 2010-11-15 Beth Dakin <bdakin@apple.com>
  9597. Reviewed by Darin Adler.
  9598. Fix for https://bugs.webkit.org/show_bug.cgi?id=49555
  9599. Frame::scalePage() should treat the origin as an absolute
  9600. coordinate
  9601. -and corresponding-
  9602. <rdar://problem/8667138>
  9603. * page/Frame.cpp:
  9604. (WebCore::Frame::scalePage):
  9605. 2010-11-15 Dan Bernstein <mitz@apple.com>
  9606. Reviewed by Darin Adler.
  9607. <rdar://problem/8662770> Error image has incorrect size when a custom font is used
  9608. Test: fast/images/style-access-during-imageChanged-crash.html
  9609. * rendering/RenderImage.cpp:
  9610. (WebCore::RenderImage::RenderImage): Added initialization of m_needsToSetSizeForAltText.
  9611. (WebCore::RenderImage::imageSizeForError): Factored the non-alt-text dependent size computation
  9612. out of setImageSizeForAltText() into this function.
  9613. (WebCore::RenderImage::setImageSizeForAltText): Changed to use imageSizeForError().
  9614. (WebCore::RenderImage::styleDidChange): Added. If m_needsToSetSizeForAltText is true, sets the
  9615. intrinsic size and calls imageDimensionsChanged() as needed to cause layout or invalidation.
  9616. (WebCore::RenderImage::imageChanged): Moved some code from here...
  9617. (WebCore::RenderImage::imageDimensionsChanged): ...to here.
  9618. * rendering/RenderImage.h:
  9619. 2010-11-15 Anders Carlsson <andersca@apple.com>
  9620. Reviewed by Dimitri Glazkov.
  9621. ASSERTION (r72003): Assertion failure when running layout tests
  9622. https://bugs.webkit.org/show_bug.cgi?id=49561
  9623. r72003 added the 'formaction' URL attribute to HTMLButtonElement and HTMLInputElement,
  9624. but did not add the attribute to the isURLAttribute which lead to assertion failures
  9625. when running the layout tests with a debug build.
  9626. * html/HTMLButtonElement.cpp:
  9627. (WebCore::HTMLButtonElement::isURLAttribute):
  9628. * html/HTMLButtonElement.h:
  9629. * html/HTMLInputElement.cpp:
  9630. (WebCore::HTMLInputElement::isURLAttribute):
  9631. 2010-11-15 Alexey Proskuryakov <ap@apple.com>
  9632. Reviewed by Darin Adler.
  9633. https://bugs.webkit.org/show_bug.cgi?id=49559
  9634. DOMWindow.getComputedStyle pseudo element argument lacks ConvertUndefinedOrNullToNullString
  9635. No observable change in behavior, so no tests.
  9636. * page/DOMWindow.idl: Added ConvertUndefinedOrNullToNullString.
  9637. 2010-11-15 Andreas Kling <kling@webkit.org>
  9638. Reviewed by Tor Arne Vestbø.
  9639. [Qt] Make WTF_USE_MEEGOTOUCH available for WebKit2 as well
  9640. Move this into WebCore/features.pri which is used by both WebCore and WebKit2.
  9641. * WebCore.pro:
  9642. * features.pri:
  9643. 2010-11-15 Martin Robinson <mrobinson@igalia.com>
  9644. Build fix for GTK+.
  9645. * GNUmakefile.am: Add some missing generated files to the source list.
  9646. 2010-11-15 Kenneth Russell <kbr@google.com>
  9647. Reviewed by James Robinson.
  9648. [chromium] Avoid copying of SkBitmap in LayerRendererChromium
  9649. https://bugs.webkit.org/show_bug.cgi?id=49560
  9650. Ran CSS 3D content to test. No other new tests.
  9651. * platform/graphics/chromium/LayerRendererChromium.cpp:
  9652. (WebCore::LayerRendererChromium::updateRootLayerTextureRect):
  9653. 2010-11-15 Vangelis Kokkevis <vangelis@chromium.org>
  9654. Reviewed by Kenneth Russell.
  9655. [chromium] Fixes layer opacity implementation of composited layers
  9656. https://bugs.webkit.org/show_bug.cgi?id=49233
  9657. This introduces a fairly drastic change in how LayerRendererChromium draws
  9658. composited layers. Layers that have non-zero opacity as well as layers that
  9659. clip their descendants (and have non-trivial transforms) are now first
  9660. rendered onto off-screen surfaces (RenderSurfaceChromium's). The compositing
  9661. operation now consists of two distinct phases: First a hierarchical traversal
  9662. of the layer tree to compute the layer transforms, determine what the necessary
  9663. RenderSurfaces are and sort layer that preserve-3d based on their z-value. A second
  9664. pass goes through all the RenderSurfaces discovered by the first pass and updates
  9665. their contents.
  9666. Additional significant side-effects of this change are:
  9667. 1. Depth buffer and depth testing is no longer used. Drawing relies on a painter's
  9668. algorithm to render layers with the preserves-3d property from back to front using
  9669. the Z coordinate of their center. This will further be improved in the future with
  9670. the intoduction of a BSP tree to properly deal with intersecting layers.
  9671. 2. Compositor no longer uses the stencil buffer to do clipping. Clipping is now performed
  9672. by rendering layer subtrees into an offscreen buffer and setting the appropriate
  9673. scissor and viewport transformation.
  9674. Tests: abs-position-inside-opacity.html (for the opacity implementation)
  9675. and the rest of the compositing layout tests to verify that
  9676. everything still works.
  9677. * WebCore.gypi:
  9678. * platform/graphics/chromium/ContentLayerChromium.cpp:
  9679. (WebCore::ContentLayerChromium::cleanupResources):
  9680. (WebCore::ContentLayerChromium::requiresClippedUpdateRect):
  9681. (WebCore::ContentLayerChromium::calculateClippedUpdateRect):
  9682. (WebCore::ContentLayerChromium::updateContents):
  9683. * platform/graphics/chromium/LayerChromium.cpp:
  9684. (WebCore::LayerChromium::LayerChromium):
  9685. (WebCore::LayerChromium::cleanupResources):
  9686. (WebCore::LayerChromium::createRenderSurface):
  9687. (WebCore::LayerChromium::descendantsDrawContent):
  9688. (WebCore::LayerChromium::descendantsDrawContentRecursive):
  9689. * platform/graphics/chromium/LayerChromium.h:
  9690. (WebCore::LayerChromium::drawTransform):
  9691. (WebCore::LayerChromium::layerRenderer):
  9692. * platform/graphics/chromium/LayerRendererChromium.cpp:
  9693. (WebCore::orthoMatrix):
  9694. (WebCore::isScaleOrTranslation):
  9695. (WebCore::LayerRendererChromium::compareLayerZ):
  9696. (WebCore::LayerRendererChromium::LayerRendererChromium):
  9697. (WebCore::LayerRendererChromium::prepareToDrawLayers):
  9698. (WebCore::LayerRendererChromium::drawLayers):
  9699. (WebCore::LayerRendererChromium::updateLayersRecursive):
  9700. (WebCore::LayerRendererChromium::useRenderSurface):
  9701. (WebCore::LayerRendererChromium::drawLayer):
  9702. (WebCore::LayerRendererChromium::setScissorToRect):
  9703. (WebCore::LayerRendererChromium::setDrawViewportRect):
  9704. (WebCore::LayerRendererChromium::initializeSharedObjects):
  9705. (WebCore::LayerRendererChromium::cleanupSharedObjects):
  9706. * platform/graphics/chromium/LayerRendererChromium.h:
  9707. * platform/graphics/chromium/RenderSurfaceChromium.cpp: Added.
  9708. (WebCore::RenderSurfaceChromium::RenderSurfaceChromium):
  9709. (WebCore::RenderSurfaceChromium::~RenderSurfaceChromium):
  9710. (WebCore::RenderSurfaceChromium::cleanupResources):
  9711. (WebCore::RenderSurfaceChromium::layerRenderer):
  9712. (WebCore::RenderSurfaceChromium::prepareContentsTexture):
  9713. * platform/graphics/chromium/RenderSurfaceChromium.h: Added.
  9714. (WebCore::RenderSurfaceChromium::contentRectCenter):
  9715. (WebCore::RenderSurfaceChromium::contentRect):
  9716. * platform/graphics/chromium/VideoLayerChromium.cpp:
  9717. (WebCore::VideoLayerChromium::cleanupResources):
  9718. 2010-11-15 Martin Robinson <mrobinson@igalia.com>
  9719. Reviewed by Andreas Kling.
  9720. [GTK] gdk_pixbuf_get_from_surface from GtkVersioning.h is broken on GTK+ 2 builds
  9721. https://bugs.webkit.org/show_bug.cgi?id=49549
  9722. No new tests. This can be verified by loading any existing vertical text test
  9723. in GtkLauncher and noticing the lack of CRITICAL GLib exceptions. There's currently
  9724. no automatic way of verifying custom cursors.
  9725. * platform/gtk/GtkVersioning.c:
  9726. (gdk_pixbuf_get_from_surface): Reverse a sanity check in this method to be correct.
  9727. 2010-11-12 Jer Noble <jer.noble@apple.com>
  9728. Reviewed by Brady Eidson.
  9729. Can't view HTML5 video when running Safari with an authenticated proxy server
  9730. <rdar://problem/8351926>
  9731. * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
  9732. (WebCore::MediaPlayerPrivate::createQTMovie):
  9733. 2010-11-14 Abhishek Arya <inferno@chromium.org>
  9734. Reviewed by Dimitri Glazkov.
  9735. Event dispatch call can blow away the node's renderer initialized
  9736. before the call in updateSelectionForMouseDrag function. We need
  9737. to initialize it after the call.
  9738. https://bugs.webkit.org/show_bug.cgi?id=49524
  9739. * page/EventHandler.cpp:
  9740. (WebCore::EventHandler::updateSelectionForMouseDrag):
  9741. 2010-11-15 Patrick Gansterer <paroga@webkit.org>
  9742. Reviewed by Martin Robinson.
  9743. Make ContextShadow compile on all platforms
  9744. https://bugs.webkit.org/show_bug.cgi?id=49535
  9745. Add a void* typedef for PlatformImage and PlatformContext for unsupported platforms
  9746. and move them into the WebCore namespace like all other Platform* typedefs.
  9747. * platform/graphics/ContextShadow.h:
  9748. 2010-11-15 Renata Hodovan <reni@webkit.org>
  9749. Reviewed by Andreas Kling.
  9750. SVGFEImageElement doesn't support dynamic invalidation
  9751. https://bugs.webkit.org/show_bug.cgi?id=49536
  9752. The dynamic changes are captured by the svgAttributeChanged function. Invalidate the filter primitive if necessary.
  9753. Tests: svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr.html
  9754. svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop.html
  9755. * svg/SVGFEImageElement.cpp:
  9756. (WebCore::SVGFEImageElement::svgAttributeChanged):
  9757. * svg/SVGFEImageElement.h:
  9758. 2010-11-15 Yael Aharon <yael.aharon@nokia.com>
  9759. Reviewed by Antonio Gomes.
  9760. [Qt] Focus ring does not show on focused links.
  9761. https://bugs.webkit.org/show_bug.cgi?id=49515
  9762. After http://trac.webkit.org/changeset/69766 the focus ring on links is no longer
  9763. visible in Qt.
  9764. The reason is that Qt always returned true in RenderTheme::supportsFocusRing(),
  9765. but until r69766, we did not check that for links. Qt draws its own focus ring
  9766. for controls that it draws, but not for links.
  9767. Change the return value to false if the style's appearance is not something that Qt
  9768. draws by itself or does not support.
  9769. Added a Qt specific test result for the new test added in r69766.
  9770. * platform/qt/RenderThemeQt.cpp:
  9771. (WebCore::RenderThemeQt::supportsFocusRing):
  9772. 2010-11-15 Dai Mikurube <dmikurube@google.com>
  9773. Reviewed by Kent Tamura.
  9774. Implement formaction, formenctype, formmethod and formtarget attributes for input and button tags
  9775. https://bugs.webkit.org/show_bug.cgi?id=49240
  9776. Tests: fast/forms/formaction-attribute.html
  9777. fast/forms/formmethod-attribute-button-html.html
  9778. fast/forms/formmethod-attribute-input-html.html
  9779. fast/forms/formtarget-attribute-button-html.html
  9780. fast/forms/formtarget-attribute-input-html.html
  9781. fast/forms/mailto/formenctype-attribute-button-html.html
  9782. fast/forms/mailto/formenctype-attribute-input-html.html
  9783. fast/forms/submit-form-attributes.html
  9784. * html/HTMLAttributeNames.in: Added formaction, formmethod, formtarget and formenctype attributes
  9785. * html/HTMLButtonElement.idl:
  9786. * html/HTMLInputElement.idl:
  9787. * loader/FormSubmission.cpp: Modified to check the pressed button and its attributes
  9788. (WebCore::FormSubmission::Attributes::copyFrom):
  9789. (WebCore::FormSubmission::create):
  9790. * loader/FormSubmission.h:
  9791. 2010-11-15 Pavel Feldman <pfeldman@chromium.org>
  9792. Reviewed by Yury Semikhatsky.
  9793. Web Inspector: Do not hide default Ctrl+A behavior on non-Mac.
  9794. https://bugs.webkit.org/show_bug.cgi?id=49527
  9795. * inspector/front-end/TextPrompt.js:
  9796. (WebInspector.TextPrompt.prototype._onKeyDown):
  9797. 2010-11-15 Ilya Sherman <isherman@chromium.org>
  9798. Reviewed by Kent Tamura.
  9799. Add capability for displaying warnings to autofill popup
  9800. Warnings are displayed in dark gray italic.
  9801. https://bugs.webkit.org/show_bug.cgi?id=49291
  9802. http://code.google.com/p/chromium/issues/detail?id=58509
  9803. * platform/chromium/PopupMenuChromium.cpp:
  9804. (WebCore::PopupListBox::getRowFont):
  9805. Use item-specific font, not just the generic menu font.
  9806. (WebCore::PopupListBox::selectIndex):
  9807. Updated to clear the selection when hovering over a non-selectable item.
  9808. * platform/chromium/PopupMenuChromium.h: Minor cleanup
  9809. 2010-11-14 David Hyatt <hyatt@apple.com>
  9810. Back out the italics portion of the previous patch until I can figure out why it
  9811. doesn't work.
  9812. * css/CSSFontSelector.cpp:
  9813. (WebCore::compareFontFaces):
  9814. 2010-11-14 Kent Tamura <tkent@chromium.org>
  9815. Reviewed by Dimitri Glazkov.
  9816. Improve API for form validation message strings
  9817. https://bugs.webkit.org/show_bug.cgi?id=34945
  9818. This change introduces three new functions;
  9819. validationMessageTypeMismatchFor*Text(). The implementation for each
  9820. platform is just a call to validationMessageTypeMismatchText().
  9821. Some validationMessage*() functions have new parameters. The parameters
  9822. are ignored in all platforms for now.
  9823. This change doesn't change any behavior. However a platform can add
  9824. additional information to validation messages. e.g. Changing "type
  9825. mismatch" to "Please specify an e-mail address" for <input type=email>.
  9826. * html/EmailInputType.cpp:
  9827. (WebCore::EmailInputType::typeMismatchText): Call validationMessageTypeMismatchForEmailText()
  9828. or validationMessageTypeMismatchForMultipleEmailText().
  9829. * html/EmailInputType.h:
  9830. * html/HTMLFormControlElement.h: Add maxLength() and value() to access them from ValidityState.
  9831. * html/HTMLInputElement.cpp: Add the following functions to pass extra
  9832. information to validation message string functions.
  9833. (WebCore::HTMLInputElement::minimumString):
  9834. (WebCore::HTMLInputElement::maximumString):
  9835. (WebCore::HTMLInputElement::stepBaseString):
  9836. (WebCore::HTMLInputElement::stepString):
  9837. (WebCore::HTMLInputElement::typeMismatchText):
  9838. * html/HTMLInputElement.h:
  9839. * html/HTMLTextAreaElement.h:
  9840. * html/InputType.cpp:
  9841. (WebCore::InputType::typeMismatchText): Call validationMessageTypeMismatchText().
  9842. * html/InputType.h:
  9843. * html/URLInputType.cpp:
  9844. (WebCore::URLInputType::typeMismatchText): Call validationMessageTypeMismatchForURLText().
  9845. * html/URLInputType.h:
  9846. * html/ValidityState.cpp:
  9847. (WebCore::ValidityState::validationMessage):
  9848. * platform/LocalizedStrings.cpp:
  9849. (WebCore::validationMessageTypeMismatchForEmailText):
  9850. (WebCore::validationMessageTypeMismatchForMultipleEmailText):
  9851. (WebCore::validationMessageTypeMismatchForURLText):
  9852. (WebCore::validationMessageTooLongText):
  9853. (WebCore::validationMessageRangeUnderflowText):
  9854. (WebCore::validationMessageRangeOverflowText):
  9855. (WebCore::validationMessageStepMismatchText):
  9856. * platform/LocalizedStrings.h:
  9857. - Add validationMessageTypeMismatchForEmailText(),
  9858. validationMessageTypeMismatchForMultipleEmailText() and
  9859. validationMessageTypeMismatchForURLText()
  9860. - Add length parameters to validationMessageTooLongText().
  9861. - Add the minimum value parameter to validationMessageRangeUnderflowText()
  9862. - Add the maximum value parameter to validationMessageRangeOverflowText()
  9863. - Add parameters of the base value and the step value to validationMessageStepMismatchText()
  9864. * platform/android/LocalizedStringsAndroid.cpp:
  9865. (WebCore::validationMessageTypeMismatchForEmailText):
  9866. (WebCore::validationMessageTypeMismatchForMultipleEmailText):
  9867. (WebCore::validationMessageTypeMismatchForURLText):
  9868. (WebCore::validationMessageTooLongText):
  9869. (WebCore::validationMessageRangeUnderflowText):
  9870. (WebCore::validationMessageRangeOverflowText):
  9871. (WebCore::validationMessageStepMismatchText):
  9872. * platform/brew/LocalizedStringsBrew.cpp:
  9873. (WebCore::validationMessageTypeMismatchForEmailText):
  9874. (WebCore::validationMessageTypeMismatchForMultipleEmailText):
  9875. (WebCore::validationMessageTypeMismatchForURLText):
  9876. (WebCore::validationMessageTooLongText):
  9877. (WebCore::validationMessageRangeUnderflowText):
  9878. (WebCore::validationMessageRangeOverflowText):
  9879. (WebCore::validationMessageStepMismatchText):
  9880. * platform/efl/LocalizedStringsEfl.cpp:
  9881. (WebCore::validationMessageRangeOverflowText):
  9882. (WebCore::validationMessageRangeUnderflowText):
  9883. (WebCore::validationMessageStepMismatchText):
  9884. (WebCore::validationMessageTooLongText):
  9885. (WebCore::validationMessageTypeMismatchForEmailText):
  9886. (WebCore::validationMessageTypeMismatchForMultipleEmailText):
  9887. (WebCore::validationMessageTypeMismatchForURLText):
  9888. * platform/gtk/LocalizedStringsGtk.cpp:
  9889. (WebCore::validationMessageTypeMismatchForEmailText):
  9890. (WebCore::validationMessageTypeMismatchForMultipleEmailText):
  9891. (WebCore::validationMessageTypeMismatchForURLText):
  9892. (WebCore::validationMessageTooLongText):
  9893. (WebCore::validationMessageRangeUnderflowText):
  9894. (WebCore::validationMessageRangeOverflowText):
  9895. (WebCore::validationMessageStepMismatchText):
  9896. * platform/haiku/LocalizedStringsHaiku.cpp:
  9897. (WebCore::validationMessageTypeMismatchForEmailText):
  9898. (WebCore::validationMessageTypeMismatchForMultipleEmailText):
  9899. (WebCore::validationMessageTypeMismatchForURLText):
  9900. (WebCore::validationMessageTooLongText):
  9901. (WebCore::validationMessageRangeUnderflowText):
  9902. (WebCore::validationMessageRangeOverflowText):
  9903. (WebCore::validationMessageStepMismatchText):
  9904. * platform/wx/LocalizedStringsWx.cpp:
  9905. (WebCore::validationMessageTypeMismatchForEmailText):
  9906. (WebCore::validationMessageTypeMismatchForMultipleEmailText):
  9907. (WebCore::validationMessageTypeMismatchForURLText):
  9908. (WebCore::validationMessageTooLongText):
  9909. (WebCore::validationMessageRangeUnderflowText):
  9910. (WebCore::validationMessageRangeOverflowText):
  9911. (WebCore::validationMessageStepMismatchText):
  9912. 2010-11-14 Kent Tamura <tkent@chromium.org>
  9913. Reviewed by Andreas Kling.
  9914. KeyboardEvent::keyIdentifier() should return "const String&"
  9915. https://bugs.webkit.org/show_bug.cgi?id=49426
  9916. No new tests. This shouldn't change the current behavior.
  9917. * dom/KeyboardEvent.h:
  9918. (WebCore::KeyboardEvent::keyIdentifier): Change the return type; String -> const String&
  9919. * dom/SelectElement.cpp:
  9920. (WebCore::SelectElement::menuListDefaultEventHandler):
  9921. Change the type of a variable to have keyIdentifier(); String -> const String&
  9922. (WebCore::SelectElement::listBoxDefaultEventHandler): ditto.
  9923. * html/HTMLInputElement.cpp:
  9924. (WebCore::HTMLInputElement::defaultEventHandler): ditto.
  9925. (WebCore::HTMLInputElement::handleKeyEventForRange): ditto.
  9926. * page/EventHandler.cpp:
  9927. (WebCore::EventHandler::handleKeyboardSelectionMovement): ditto.
  9928. 2010-11-14 Kenichi Ishibashi <bashi@google.com>
  9929. Reviewed by Kent Tamura.
  9930. [HTML5] "form" attribute support for form control elements
  9931. https://bugs.webkit.org/show_bug.cgi?id=47813
  9932. Adds a list of form-associated elements with form attribute into
  9933. the Document class to support form attribute.
  9934. Adds a function to determine the right place to locate
  9935. form-associated elements with form attribute into
  9936. m_associatedElements of HTMLFormElement class.
  9937. Tests: fast/forms/form-attribute-elements-order.html
  9938. fast/forms/form-attribute-elements-order2.html
  9939. fast/forms/form-attribute-elements.html
  9940. fast/forms/form-attribute.html
  9941. * dom/Document.cpp:
  9942. (WebCore::Document::registerFormElementWithFormAttribute): Added.
  9943. (WebCore::Document::unregisterFormElementWithFormAttribute): Added.
  9944. (WebCore::Document::resetFormElementsOwner): Added.
  9945. * dom/Document.h: Added the list for elements with form attribute.
  9946. * html/HTMLAttributeNames.in: Added form attribute.
  9947. * html/HTMLFormControlElement.cpp:
  9948. (WebCore::HTMLFormControlElement::insertedIntoTree): Modified to handle
  9949. form attribute.
  9950. (WebCore::HTMLFormControlElement::removedFromTree): Ditto.
  9951. (WebCore::HTMLFormControlElement::resetFormOwner): Added.
  9952. (WebCore::HTMLFormControlElement::attributeChanged): Added.
  9953. * html/HTMLFormControlElement.h:
  9954. * html/HTMLFormElement.cpp:
  9955. (WebCore::HTMLFormElement::HTMLFormElement): Modified to initialize
  9956. newly-added variables.
  9957. (WebCore::HTMLFormElement::insertedIntoDocument): Modified to reset
  9958. form owner of form-associated elements.
  9959. (WebCore::HTMLFormElement::removedFromDocument): Ditto.
  9960. (WebCore::HTMLFormElement::formElementIndexWithFormAttribute): Added.
  9961. (WebCore::HTMLFormElement::formElementIndex): Modified to treat
  9962. form-associated elements with form attribute separately.
  9963. (WebCore::HTMLFormElement::removeFormElement): Modified to handle
  9964. form-associated elements with form attribute.
  9965. * html/HTMLFormElement.h: Added three variables to handle form attribute.
  9966. * html/HTMLOutputElement.cpp: Removed "FIXME" comment.
  9967. (WebCore::HTMLOutputElement::parseMappedAttribute):
  9968. * html/HTMLOutputElement.h: Removed setForm().
  9969. 2010-11-14 David Hyatt <hyatt@apple.com>
  9970. Reviewed by Dan Bernstein.
  9971. https://bugs.webkit.org/show_bug.cgi?id=49521
  9972. REGRESSION svg/W3C-SVG-1.1/fonts-desc-02-t.svg broken by r71979.
  9973. Refine the font selection function for @font-face to be smarter about what fonts it prefers. If
  9974. a font is labeled as only supporting small-caps, then prefer it to one that claims to support both
  9975. normal and small-caps. The specialized font is more likely to be true small-caps and to not rely
  9976. on synthesis.
  9977. Added the same logic for italic as well. Prefer the font that is specifically restricted to
  9978. italic to one that claims it can support anything.
  9979. * css/CSSFontSelector.cpp:
  9980. (WebCore::compareFontFaces):
  9981. 2010-11-14 Ryuan Choi <ryuan.choi@samsung.com>
  9982. Reviewed by Martin Robinson.
  9983. [EFL] add pango support
  9984. https://bugs.webkit.org/show_bug.cgi?id=46029
  9985. Include pango related files.
  9986. No new tests; functionality is unchanged.
  9987. * CMakeListsEfl.txt:
  9988. 2010-11-12 Tenghui Zhu <ztenghui@google.com>
  9989. Reviewed by Andreas Kling.
  9990. [V8] Code generation script error in generating the SVGStaticListPropertyTearOff
  9991. https://bugs.webkit.org/show_bug.cgi?id=49463
  9992. * bindings/scripts/CodeGeneratorV8.pm: The svgNativeType is the one containing
  9993. the SVGStaticListPropertyTearOff string, not the svgListPropertyType.
  9994. 2010-11-14 Patrick Gansterer <paroga@webkit.org>
  9995. Reviewed by Andreas Kling.
  9996. Sort CMakeLists.txt
  9997. https://bugs.webkit.org/show_bug.cgi?id=49507
  9998. * CMakeLists.txt:
  9999. 2010-11-13 Patrick Gansterer <paroga@webkit.org>
  10000. Reviewed by Yury Semikhatsky.
  10001. Buildfix for !ENABLE(INSPECTOR)
  10002. https://bugs.webkit.org/show_bug.cgi?id=49500
  10003. Also unify the position of the condition in the cpp files.
  10004. * inspector/ConsoleMessage.cpp:
  10005. * inspector/InspectorResourceAgent.cpp:
  10006. * inspector/InspectorState.cpp:
  10007. * inspector/ScriptCallFrame.cpp:
  10008. * inspector/ScriptCallStack.cpp:
  10009. 2010-11-13 David Hyatt <hyatt@apple.com>
  10010. Reviewed by Anders Carlsson.
  10011. https://bugs.webkit.org/show_bug.cgi?id=49506
  10012. Repaint is broken across writing mode boundaries. It's not enough to add in flipped offsets. You have
  10013. to flip the rect itself.
  10014. Added fast/repaint/repaint-across-writing-mode-boundary.html
  10015. * rendering/RenderBox.cpp:
  10016. (WebCore::RenderBox::computeRectForRepaint):
  10017. 2010-11-13 David Hyatt <hyatt@apple.com>
  10018. Reviewed by Dan Bernstein.
  10019. https://bugs.webkit.org/show_bug.cgi?id=49505
  10020. REGRESSION: @font-face doesn't work with the small-caps variant. This was broken by the addition of SVG fonts
  10021. support long ago. This patch fixes the SVG code so that it doesn't break non-SVG fonts.
  10022. Added fast/blockflow/broken-ideograph-small-caps.html
  10023. * css/CSSFontFace.cpp:
  10024. (WebCore::CSSFontFace::hasSVGFontFaceSource):
  10025. * css/CSSFontFace.h:
  10026. * css/CSSFontFaceSource.cpp:
  10027. (WebCore::CSSFontFaceSource::getFontData):
  10028. * css/CSSFontFaceSource.h:
  10029. * css/CSSFontSelector.cpp:
  10030. (WebCore::CSSFontSelector::addFontFaceRule):
  10031. (WebCore::CSSFontSelector::getFontData):
  10032. 2010-11-13 Dan Bernstein <mitz@apple.com>
  10033. Reviewed by Dave Hyatt.
  10034. fast/text/hyphen* tests have different results on Leopard
  10035. https://bugs.webkit.org/show_bug.cgi?id=43296
  10036. * platform/text/mac/TextBreakIteratorInternalICUMac.mm:
  10037. (WebCore::topLanguagePreference): Changed to look up the value of the AppleLanguages default
  10038. through the normal NSUserDefaults search order rather than skipping the application domain.
  10039. This makes this function respect DumpRenderTree’s setting of the default in the application
  10040. domain.
  10041. 2010-11-13 David Hyatt <hyatt@apple.com>
  10042. Reviewed by Dan Bernstein.
  10043. https://bugs.webkit.org/show_bug.cgi?id=49499
  10044. broken-ideographic-font.html causes layout test flakiness in release builds. The reason for this is
  10045. that the custom font data for m_brokenIdeographFontData was never getting pruned out of the tree.
  10046. The same problem exists for custom small caps fonts, so I made sure that the small caps fonts get
  10047. pruned as well. In addition, custom small caps fonts were never getting deleted either.
  10048. I also made allowsLigatures in FontPlatformData orientation-independent, and the callers check it
  10049. instead.
  10050. Unskip fast/blockflow/broken-ideographic-font.html
  10051. * platform/graphics/SimpleFontData.cpp:
  10052. (WebCore::SimpleFontData::~SimpleFontData):
  10053. * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:
  10054. (WebCore::SimpleFontData::platformDestroy):
  10055. (WebCore::SimpleFontData::smallCapsFontData):
  10056. * platform/graphics/chromium/SimpleFontDataLinux.cpp:
  10057. (WebCore::SimpleFontData::platformDestroy):
  10058. (WebCore::SimpleFontData::smallCapsFontData):
  10059. * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
  10060. (WebCore::FontPlatformData::allowsLigatures):
  10061. * platform/graphics/freetype/SimpleFontDataFreeType.cpp:
  10062. (WebCore::SimpleFontData::platformDestroy):
  10063. (WebCore::SimpleFontData::smallCapsFontData):
  10064. * platform/graphics/haiku/SimpleFontDataHaiku.cpp:
  10065. (WebCore::SimpleFontData::platformDestroy):
  10066. (WebCore::SimpleFontData::smallCapsFontData):
  10067. * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
  10068. (WebCore::disableLigatures):
  10069. * platform/graphics/mac/SimpleFontDataCoreText.cpp:
  10070. (WebCore::SimpleFontData::getCFStringAttributes):
  10071. * platform/graphics/mac/SimpleFontDataMac.mm:
  10072. (WebCore::SimpleFontData::platformDestroy):
  10073. * platform/graphics/win/SimpleFontDataWin.cpp:
  10074. (WebCore::SimpleFontData::platformDestroy):
  10075. (WebCore::SimpleFontData::smallCapsFontData):
  10076. * platform/graphics/wx/SimpleFontDataWx.cpp:
  10077. (WebCore::SimpleFontData::platformDestroy):
  10078. (WebCore::SimpleFontData::smallCapsFontData):
  10079. 2010-11-13 David Hyatt <hyatt@apple.com>
  10080. https://bugs.webkit.org/show_bug.cgi?id=49496
  10081. Fix broken-ideographic-font.html. I had the font installed locally on my machine, and this covered up
  10082. the fact that CoreText was implicitly using it as fallback in the vertical case only. The bots don't have
  10083. the font installed locally, and so they showed the bug.
  10084. Make sure the GlyphPage is filled with horizontal glyphs for a broken ideograph font, so that CoreText is
  10085. willing to fill.
  10086. * platform/graphics/mac/SimpleFontDataCoreText.cpp:
  10087. (WebCore::SimpleFontData::getCFStringAttributes):
  10088. 2010-11-13 David Hyatt <hyatt@apple.com>
  10089. Reviewed by Dan Bernstein.
  10090. https://bugs.webkit.org/show_bug.cgi?id=49464
  10091. Fix bugs with the orientation of fonts when the font is brought in via fallback, when the font contains no
  10092. vertical tables, or when the font is loaded via font-face in both horizontal and vertical forms.
  10093. (1) Include orientation as part of the @font-face hashtables so that the fonts are treated as
  10094. distinct when used in horizontal and vertical forms.
  10095. (2) Let the orientation member of FontPlatformData represent the desired orientation rather than
  10096. the supported one. Add an orientation member to SimpleFontData that represents the actual
  10097. supported orientation of the font.
  10098. (3) For fonts with no vertical tables, add a brokenIdeographicsFont accessor that is invoked when
  10099. CJK ideographs are encountered. This is essentially identical to the small caps fallback mechanism
  10100. but invoked only for ideographs. The special ideograph font locks the orientation to vertical and
  10101. renders the glyphs upright even when the font has no vertical tables. Punctuation and such will
  10102. still look funny, and really this is a bug in the font, but at least this way it will be apparent
  10103. that the font is to blame.
  10104. Added fast/blockflow/broken-ideographic-font.html and fast/blockflow/vertical-font-fallback.html.
  10105. * css/CSSFontFaceSource.cpp:
  10106. (WebCore::CSSFontFaceSource::getFontData):
  10107. * css/CSSSegmentedFontFace.cpp:
  10108. (WebCore::CSSSegmentedFontFace::getFontData):
  10109. * platform/graphics/Font.cpp:
  10110. (WebCore::Font::isCJKIdeograph):
  10111. * platform/graphics/Font.h:
  10112. * platform/graphics/FontFastPath.cpp:
  10113. (WebCore::Font::glyphDataForCharacter):
  10114. * platform/graphics/SimpleFontData.cpp:
  10115. (WebCore::SimpleFontData::SimpleFontData):
  10116. (WebCore::SimpleFontData::~SimpleFontData):
  10117. (WebCore::SimpleFontData::brokenIdeographFontData):
  10118. * platform/graphics/SimpleFontData.h:
  10119. (WebCore::SimpleFontData::orientation):
  10120. * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
  10121. (WebCore::FontPlatformData::FontPlatformData):
  10122. * platform/graphics/mac/FontMac.mm:
  10123. (WebCore::showGlyphsWithAdvances):
  10124. * platform/graphics/mac/SimpleFontDataMac.mm:
  10125. (WebCore::SimpleFontData::platformInit):
  10126. (WebCore::SimpleFontData::platformBoundsForGlyph):
  10127. (WebCore::SimpleFontData::platformWidthForGlyph):
  10128. 2010-11-13 Rob Buis <rwlbuis@gmail.com>
  10129. Reviewed by Dirk Schulze.
  10130. requiredFeatures does not adapt to SVGStringList changes
  10131. https://bugs.webkit.org/show_bug.cgi?id=40887
  10132. Centralize logic of handling of SVGElement validity changes.
  10133. The logic is to detach the SVGElement when changing from valid
  10134. to invalid, and to attach when changing from invalid to valid.
  10135. Tests: svg/dynamic-updates/SVGCircleElement-dom-requiredFeatures.html
  10136. svg/dynamic-updates/SVGCircleElement-svgdom-requiredFeatures.html
  10137. svg/dynamic-updates/SVGEllipseElement-dom-requiredFeatures.html
  10138. svg/dynamic-updates/SVGEllipseElement-svgdom-requiredFeatures.html
  10139. svg/dynamic-updates/SVGForeignObjectElement-dom-requiredFeatures.html
  10140. svg/dynamic-updates/SVGForeignObjectElement-svgdom-requiredFeatures.html
  10141. svg/dynamic-updates/SVGGElement-dom-requiredFeatures.html
  10142. svg/dynamic-updates/SVGGElement-svgdom-requiredFeatures.html
  10143. svg/dynamic-updates/SVGImageElement-dom-requiredFeatures.html
  10144. svg/dynamic-updates/SVGImageElement-svgdom-requiredFeatures.html
  10145. svg/dynamic-updates/SVGLineElement-dom-requiredFeatures.html
  10146. svg/dynamic-updates/SVGLineElement-svgdom-requiredFeatures.html
  10147. svg/dynamic-updates/SVGPathElement-dom-requiredFeatures.html
  10148. svg/dynamic-updates/SVGPathElement-svgdom-requiredFeatures.html
  10149. svg/dynamic-updates/SVGPolygonElement-dom-requiredFeatures.html
  10150. svg/dynamic-updates/SVGPolygonElement-svgdom-requiredFeatures.html
  10151. svg/dynamic-updates/SVGPolylineElement-dom-requiredFeatures.html
  10152. svg/dynamic-updates/SVGPolylineElement-svgdom-requiredFeatures.html
  10153. svg/dynamic-updates/SVGRectElement-dom-requiredFeatures.html
  10154. svg/dynamic-updates/SVGRectElement-svgdom-requiredFeatures.html
  10155. svg/dynamic-updates/SVGSVGElement-dom-requiredFeatures.html
  10156. svg/dynamic-updates/SVGSVGElement-svgdom-requiredFeatures.html
  10157. svg/dynamic-updates/SVGTextElement-dom-requiredFeatures.html
  10158. svg/dynamic-updates/SVGTextElement-svgdom-requiredFeatures.html
  10159. svg/dynamic-updates/SVGUseElement-dom-requiredFeatures.html
  10160. svg/dynamic-updates/SVGUseElement-svgdom-requiredFeatures.html
  10161. * svg/SVGCircleElement.cpp:
  10162. (WebCore::SVGCircleElement::svgAttributeChanged):
  10163. * svg/SVGEllipseElement.cpp:
  10164. (WebCore::SVGEllipseElement::svgAttributeChanged):
  10165. * svg/SVGForeignObjectElement.cpp:
  10166. (WebCore::SVGForeignObjectElement::svgAttributeChanged):
  10167. * svg/SVGGElement.cpp:
  10168. (WebCore::SVGGElement::svgAttributeChanged):
  10169. * svg/SVGImageElement.cpp:
  10170. (WebCore::SVGImageElement::svgAttributeChanged):
  10171. * svg/SVGLineElement.cpp:
  10172. (WebCore::SVGLineElement::svgAttributeChanged):
  10173. * svg/SVGPathElement.cpp:
  10174. (WebCore::SVGPathElement::svgAttributeChanged):
  10175. * svg/SVGPolyElement.cpp:
  10176. (WebCore::SVGPolyElement::svgAttributeChanged):
  10177. * svg/SVGRectElement.cpp:
  10178. (WebCore::SVGRectElement::svgAttributeChanged):
  10179. * svg/SVGSVGElement.cpp:
  10180. (WebCore::SVGSVGElement::svgAttributeChanged):
  10181. * svg/SVGTests.cpp:
  10182. (WebCore::knownAttribute):
  10183. (WebCore::SVGTests::isKnownAttribute):
  10184. (WebCore::SVGTests::handleAttributeChange): Centralized handling of SVGElement validity changes.
  10185. * svg/SVGTests.h:
  10186. * svg/SVGTextContentElement.cpp:
  10187. (WebCore::SVGTextContentElement::svgAttributeChanged):
  10188. (WebCore::SVGTextContentElement::isKnownAttribute):
  10189. * svg/SVGTextContentElement.h:
  10190. * svg/SVGUseElement.cpp:
  10191. (WebCore::SVGUseElement::svgAttributeChanged):
  10192. 2010-11-13 Andrey Kosyakov <caseq@chromium.org>
  10193. Reviewed by Pavel Feldman.
  10194. Web Inspector: [refactoring] support Views in TabbedPane and streamline tab selection in resource view
  10195. https://bugs.webkit.org/show_bug.cgi?id=49493
  10196. * inspector/front-end/NetworkPanel.js:
  10197. (WebInspector.NetworkPanel.prototype._showResource):
  10198. * inspector/front-end/ResourceView.js:
  10199. (WebInspector.ResourceView):
  10200. (WebInspector.ResourceView.prototype.selectContentTab):
  10201. (WebInspector.ResourceView.prototype._selectTab):
  10202. (WebInspector.ResourceView.prototype._refreshCookies):
  10203. (WebInspector.ResourceCookiesTab.prototype.show):
  10204. * inspector/front-end/StoragePanel.js:
  10205. (WebInspector.StoragePanel.prototype.showResource):
  10206. * inspector/front-end/TabbedPane.js:
  10207. (WebInspector.TabbedPane.prototype.appendTab):
  10208. (WebInspector.TabbedPane.prototype.hasTab):
  10209. (WebInspector.TabbedPane.prototype.selectTabById):
  10210. (WebInspector.TabbedPane.prototype._hideTab):
  10211. (WebInspector.TabbedPane.prototype._showTab):
  10212. * inspector/front-end/inspector.css:
  10213. (.resource-view-cookies):
  10214. (.resource-view-cookies.visible):
  10215. 2010-11-13 Yury Semikhatsky <yurys@chromium.org>
  10216. Reviewed by Pavel Feldman.
  10217. REGRESSION(71515): Web Inspector: Safari crash calling console.log when Log JavaScript Exceptions to Console is checked
  10218. https://bugs.webkit.org/show_bug.cgi?id=49362
  10219. * page/Console.cpp:
  10220. (WebCore::Console::addMessage): avoid accessing ScriptArguments and ScriptCallStack after their ownership
  10221. has been passed to the inspector.
  10222. 2010-11-13 Yury Semikhatsky <yurys@chromium.org>
  10223. Reviewed by Pavel Feldman.
  10224. Web Inspector: DOM event listener name is cropped in Elements panel
  10225. https://bugs.webkit.org/show_bug.cgi?id=49387
  10226. * inspector/front-end/inspector.css:
  10227. (.event-bar): use margin-left instead of left to fit child node into its parent
  10228. 2010-11-13 Ilya Sherman <isherman@chromium.org>
  10229. Reviewed by Shinichiro Hamaji.
  10230. Fixes regression from previous patch -- computes y offsets for elements
  10231. that are scrolled out of the window.
  10232. https://bugs.webkit.org/show_bug.cgi?id=49306
  10233. * manual-tests/select-scroll.html: Added.
  10234. * platform/chromium/PopupMenuChromium.cpp:
  10235. (WebCore::PopupListBox::layout):
  10236. 2010-11-12 Daniel Bates <dbates@rim.com>
  10237. Reviewed by Adam Barth.
  10238. Transferred <iframe>s may not have a unique internal name
  10239. https://bugs.webkit.org/show_bug.cgi?id=48768
  10240. Fixes an issue where an <iframe> that is transferred from
  10241. document A to document B, where A != B, may not have a
  10242. unique internal name in B.
  10243. Test: fast/frames/iframe-reparenting-unique-name.html
  10244. * html/HTMLFrameElementBase.cpp:
  10245. (WebCore::HTMLFrameElementBase::setNameAndOpenURL): Inlined code from
  10246. HTMLFrameElementBase::setName() so that we can remove setName(), which
  10247. was only called being called by HTMLFrameElementBase::setNameAndOpenURL().
  10248. * html/HTMLFrameElementBase.h: Removed HTMLFrameElementBase::setName().
  10249. * html/HTMLFrameOwnerElement.h: Removed HTMLFrameOwnerElement::setName().
  10250. * page/Frame.cpp:
  10251. (WebCore::Frame::transferChildFrameToNewDocument): Modified to call FrameTree::transferChild().
  10252. * page/FrameTree.cpp:
  10253. (WebCore::FrameTree::transferChild): Added.
  10254. (WebCore::FrameTree::appendChild): Moved the majority of the code into FrameTree::actuallyAppendChild().
  10255. (WebCore::FrameTree::actuallyAppendChild): Added.
  10256. * page/FrameTree.h:
  10257. 2010-11-12 Joseph Pecoraro <joepeck@webkit.org>
  10258. Reviewed by Alexey Proskuryakov.
  10259. Some FrameLoader.h Cleanup
  10260. https://bugs.webkit.org/show_bug.cgi?id=49484
  10261. Removed function signatures without any implementation. The functions
  10262. used to exist, and were nicely refactored into PageCache in r60688 and
  10263. the signatures were left behind.
  10264. Removed function signature setLoadType. Added in r17238 back when the
  10265. file was named WebFrameLoader, and the implementation was lost during
  10266. the transition from its mm implementation.
  10267. Removed function signature updateHistoryAfterClientRedirect. Implementation
  10268. and call points were removed in r18541 but the signature was left behind,
  10269. and jumped files!
  10270. Removed unused debug variable m_didDispatchDidCommitLoad. It was added
  10271. and used in Assertions in r28399. It was removed soon after, in r28464
  10272. because they were, "firing like crazy. Not sure why yet." It was
  10273. never used again.
  10274. Added const qualifier and moved interruptionForPolicyChangeError to
  10275. be more like its buddies.
  10276. * loader/FrameLoader.cpp:
  10277. (WebCore::FrameLoader::FrameLoader):
  10278. (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
  10279. (WebCore::FrameLoader::interruptionForPolicyChangeError):
  10280. (WebCore::FrameLoader::dispatchDidCommitLoad):
  10281. * loader/FrameLoader.h:
  10282. 2010-11-12 Yael Aharon <yael.aharon@nokia.com>
  10283. Reviewed by David Hyatt.
  10284. Spatial Navigation: Cannot focus on some ContainerNode
  10285. https://bugs.webkit.org/show_bug.cgi?id=48393
  10286. ContainerNode::getLowerRightCorner() assumes that the lowest right corner of its last child
  10287. is its own lowest right corner. If that child is an empty text node after an image, it does
  10288. not have size and position information, so we should go to the previous child.
  10289. Tests: fast/events/spatial-navigation/snav-container-only-white-space.html
  10290. fast/events/spatial-navigation/snav-container-white-space.html
  10291. * dom/ContainerNode.cpp:
  10292. (WebCore::ContainerNode::getLowerRightCorner):
  10293. 2010-11-12 James Simonsen <simonjam@chromium.org>
  10294. Reviewed by Darin Fisher.
  10295. [Web Timing] Rename interfaces:
  10296. - Navigation -> PerformanceNavigation
  10297. - Timing -> PerformanceTiming
  10298. https://bugs.webkit.org/show_bug.cgi?id=48919
  10299. * DerivedSources.cpp:
  10300. * DerivedSources.make:
  10301. * GNUmakefile.am:
  10302. * WebCore.gypi:
  10303. * WebCore.vcproj/WebCore.vcproj:
  10304. * WebCore.xcodeproj/project.pbxproj:
  10305. * page/Performance.cpp:
  10306. (WebCore::Performance::navigation):
  10307. (WebCore::Performance::timing):
  10308. * page/Performance.h:
  10309. * page/Performance.idl:
  10310. * page/PerformanceNavigation.cpp: Renamed from WebCore/page/Navigation.cpp.
  10311. (WebCore::PerformanceNavigation::PerformanceNavigation):
  10312. (WebCore::PerformanceNavigation::frame):
  10313. (WebCore::PerformanceNavigation::disconnectFrame):
  10314. (WebCore::PerformanceNavigation::type):
  10315. (WebCore::PerformanceNavigation::redirectCount):
  10316. * page/PerformanceNavigation.h: Renamed from WebCore/page/Navigation.h.
  10317. (WebCore::PerformanceNavigation::create):
  10318. * page/PerformanceNavigation.idl: Renamed from WebCore/page/Navigation.idl.
  10319. * page/PerformanceTiming.cpp: Renamed from WebCore/page/Timing.cpp.
  10320. (WebCore::toIntegerMilliseconds):
  10321. (WebCore::getPossiblySkewedTimeInKnownRange):
  10322. (WebCore::PerformanceTiming::PerformanceTiming):
  10323. (WebCore::PerformanceTiming::frame):
  10324. (WebCore::PerformanceTiming::disconnectFrame):
  10325. (WebCore::PerformanceTiming::navigationStart):
  10326. (WebCore::PerformanceTiming::unloadEventEnd):
  10327. (WebCore::PerformanceTiming::redirectStart):
  10328. (WebCore::PerformanceTiming::redirectEnd):
  10329. (WebCore::PerformanceTiming::fetchStart):
  10330. (WebCore::PerformanceTiming::domainLookupStart):
  10331. (WebCore::PerformanceTiming::domainLookupEnd):
  10332. (WebCore::PerformanceTiming::connectStart):
  10333. (WebCore::PerformanceTiming::connectEnd):
  10334. (WebCore::PerformanceTiming::requestStart):
  10335. (WebCore::PerformanceTiming::requestEnd):
  10336. (WebCore::PerformanceTiming::responseStart):
  10337. (WebCore::PerformanceTiming::responseEnd):
  10338. (WebCore::PerformanceTiming::domLoading):
  10339. (WebCore::PerformanceTiming::domInteractive):
  10340. (WebCore::PerformanceTiming::domContentLoaded):
  10341. (WebCore::PerformanceTiming::domComplete):
  10342. (WebCore::PerformanceTiming::loadEventStart):
  10343. (WebCore::PerformanceTiming::loadEventEnd):
  10344. (WebCore::PerformanceTiming::documentLoader):
  10345. (WebCore::PerformanceTiming::documentTiming):
  10346. (WebCore::PerformanceTiming::documentLoadTiming):
  10347. (WebCore::PerformanceTiming::resourceLoadTiming):
  10348. (WebCore::PerformanceTiming::resourceLoadTimeRelativeToAbsolute):
  10349. * page/PerformanceTiming.h: Renamed from WebCore/page/Timing.h.
  10350. (WebCore::PerformanceTiming::create):
  10351. * page/PerformanceTiming.idl: Renamed from WebCore/page/Timing.idl.
  10352. 2010-11-12 Eric Carlson <eric.carlson@apple.com>
  10353. Reviewed by Simon Fraser.
  10354. Remove unused code from HTMLMediaElement
  10355. https://bugs.webkit.org/show_bug.cgi?id=49451
  10356. Just removing code, so no new tests.
  10357. * html/HTMLMediaElement.cpp: Removed unused functions.
  10358. * html/HTMLMediaElement.h:
  10359. 2010-11-12 Ryosuke Niwa <rniwa@webkit.org>
  10360. Unreviewed Xcode project fix.
  10361. * WebCore.xcodeproj/project.pbxproj:
  10362. 2010-11-12 Alexey Proskuryakov <ap@apple.com>
  10363. Reviewed by Simon Fraser.
  10364. https://bugs.webkit.org/show_bug.cgi?id=49473
  10365. WebKitCSSMatrix shouldn't inherit from StyleBase
  10366. No change in behavior, so no tests.
  10367. * css/WebKitCSSMatrix.cpp:
  10368. (WebCore::WebKitCSSMatrix::WebKitCSSMatrix): We don't inherit from StyleBase any more, so
  10369. no need to initialize always-null parent.
  10370. (WebCore::WebKitCSSMatrix::setMatrixValue): Since there was never a parent, useStrictParsing()
  10371. just returned true.
  10372. * css/WebKitCSSMatrix.h: Just inherit from RefCounted<WebKitCSSMatrix>. Removed unused default
  10373. constructor and copy constructor.
  10374. * html/canvas/WebGLRenderingContext.h: Removed an unnneded forward declaration.
  10375. 2010-11-12 Helder Correia <helder@sencha.com>
  10376. Reviewed by Andreas Kling.
  10377. [Qt] Path::addArc() does not set right angle direction on full arcs
  10378. https://bugs.webkit.org/show_bug.cgi?id=49138
  10379. Ensure correctness of nonzero winding rule for full arc paths.
  10380. Invert the sign of the span if the direction is counterclockwise.
  10381. Test: fast/canvas/canvas-arc-360-winding.html
  10382. * platform/graphics/qt/PathQt.cpp:
  10383. (WebCore::Path::addArc):
  10384. 2010-11-05 Dimitri Glazkov <dglazkov@chromium.org>
  10385. Reviewed by Darin Adler.
  10386. Implement shadow DOM-aware event targeting and introduce EventContext to track the context of each event dispatch.
  10387. https://bugs.webkit.org/show_bug.cgi?id=46015
  10388. Test: fast/events/shadow-boundary-crossing-2.html
  10389. This patch adds the notion of EventContext (and a very similar-acting WindowEventContext, specifically
  10390. for DOMWindow), an abstraction that carries information around dispatching an event for any given Node.
  10391. This abstraction is necessary to ensure that events, fired from shadow DOM nodes are properly retargeted to
  10392. appear as if they are coming from their host, thus never exposing the shadow DOM nodes to the world outside.
  10393. * Android.mk: Added EventContext, WindowEventContext files.
  10394. * CMakeLists.txt: Ditto.
  10395. * GNUmakefile.am: Ditto.
  10396. * WebCore.gypi: Ditto.
  10397. * WebCore.pro: Ditto.
  10398. * WebCore.xcodeproj/project.pbxproj: Ditto.
  10399. * WebCore.vcproj/WebCore.vcproj: Ditto.
  10400. * dom/ContainerNode.cpp:
  10401. (WebCore::notifyChildInserted): Changed to be shadow DOM-aware.
  10402. * dom/EventContext.cpp: Added.
  10403. * dom/EventContext.h: Added.
  10404. * dom/Node.cpp:
  10405. (WebCore::Node::markAncestorsWithChildNeedsStyleRecalc): Changed to be shadow DOM-aware.
  10406. (WebCore::Node::createRendererIfNeeded): Ditto.
  10407. (WebCore::Node::parentOrHostNode): Added new helper method.
  10408. (WebCore::Node::enclosingLinkEventParentOrSelf): Changed to be shadow DOM-aware.
  10409. (WebCore::eventTargetRespectingSVGTargetRules): Collapsed two helper methods into one.
  10410. (WebCore::Node::getEventAncestors): Renamed and refactored to collect a vector of EventContexts.
  10411. (WebCore::Node::topEventContext): Added.
  10412. (WebCore::eventHasListeners): Changed to use EventContexts.
  10413. (WebCore::Node::dispatchGenericEvent): Ditto.
  10414. * dom/Node.h: Removed eventParentNode that's no longer needed, added parentOrHostNode decl,
  10415. and changed signature of eventAncestors to use EventContexts.
  10416. * dom/Text.cpp:
  10417. (WebCore::Text::createRenderer): Changed to be shadow DOM-aware.
  10418. * dom/WindowEventContext.cpp: Added.
  10419. * dom/WindowEventContext.h: Added.
  10420. * inspector/InspectorDOMAgent.cpp:
  10421. (WebCore::InspectorDOMAgent::getEventListenersForNode): Changed to use EventContexts.
  10422. * page/EventHandler.cpp:
  10423. (WebCore::EventHandler::updateMouseEventTargetNode): Removed code that's no longer necessary.
  10424. * rendering/RenderTextControlMultiLine.cpp:
  10425. (WebCore::RenderTextControlMultiLine::subtreeHasChanged): Removed event invocation that's
  10426. no longer necessary.
  10427. * rendering/ShadowElement.h: Made m_shadowParent a RefPtr to avoid stale references when parent
  10428. is deleted.
  10429. * rendering/TextControlInnerElements.cpp:
  10430. (WebCore::TextControlInnerTextElement::defaultEventHandler): Flipped the condition back
  10431. from where it was prior to r60418.
  10432. * svg/SVGElement.cpp: Removed eventParentNode that's no longer needed.
  10433. * svg/SVGElement.h: Ditto.
  10434. 2010-11-12 Ryuan Choi <ryuan.choi@samsung.com>
  10435. Reviewed by Martin Robinson.
  10436. [GTK] Remove unnecessary header for FontPlatformDataPango.cpp
  10437. https://bugs.webkit.org/show_bug.cgi?id=46029
  10438. Remove unnecessary header includes.
  10439. No new tests, as there's no functionality.
  10440. * platform/graphics/pango/FontPlatformDataPango.cpp:
  10441. 2010-11-11 Abhishek Arya <inferno@chromium.org>
  10442. Reviewed by Adam Barth.
  10443. Not allow drag and drop across different origins.
  10444. https://bugs.webkit.org/show_bug.cgi?id=49098
  10445. Test: http/tests/security/drag-drop-different-origin.html
  10446. * page/DragController.cpp:
  10447. (WebCore::DragController::tryDocumentDrag):
  10448. * page/SecurityOrigin.cpp:
  10449. (WebCore::SecurityOrigin::canDropOnTarget):
  10450. * page/SecurityOrigin.h:
  10451. 2010-11-11 Alexander Pavlov <apavlov@chromium.org>
  10452. Reviewed by Yury Semikhatsky.
  10453. Web Inspector: Inspect element tooltip obscures element metrics
  10454. https://bugs.webkit.org/show_bug.cgi?id=47822
  10455. * inspector/InspectorController.cpp:
  10456. (WebCore::InspectorController::drawNodeHighlight):
  10457. (WebCore::InspectorController::drawElementTitle):
  10458. 2010-11-12 Luiz Agostini <luiz.agostini@openbossa.org>
  10459. Reviewed by Kenneth Rohde Christiansen.
  10460. [Qt] Button's background style from default Qt Mobile Theme is overriding facebook's button style
  10461. https://bugs.webkit.org/show_bug.cgi?id=48198
  10462. Instead of creating gradients that goes from white to grey and cover the whole element the gradients
  10463. are created by varying the alpha channel of a dark color. This way the effect will not override the
  10464. background color of the elements.
  10465. * css/themeQtMobile.css:
  10466. 2010-11-12 Justin Schuh <jschuh@chromium.org>
  10467. Reviewed by Adam Barth.
  10468. Use a RefPtr inside ContainerNode::willRemove loop
  10469. https://bugs.webkit.org/show_bug.cgi?id=49237
  10470. Test: fast/innerHTML/innerHTML-iframe.html
  10471. * dom/ContainerNode.cpp:
  10472. (WebCore::ContainerNode::willRemove):
  10473. 2010-11-12 Pavel Feldman <pfeldman@chromium.org>
  10474. Reviewed by Yury Semikhatsky.
  10475. Web Inspector: add more event listener breakpoint types, add support for regular breakpoint hit state, beautify hit rendering.
  10476. https://bugs.webkit.org/show_bug.cgi?id=49130
  10477. * English.lproj/localizedStrings.js:
  10478. * inspector/front-end/BreakpointManager.js:
  10479. (WebInspector.BreakpointManager.prototype.debuggerPaused):
  10480. (WebInspector.Breakpoint.jsBreakpointId):
  10481. (WebInspector.Breakpoint.prototype.get id):
  10482. * inspector/front-end/BreakpointsSidebarPane.js:
  10483. (WebInspector.EventListenerBreakpointsSidebarPane):
  10484. (WebInspector.EventListenerBreakpointsSidebarPane.prototype._createCategory):
  10485. * inspector/front-end/CallStackSidebarPane.js:
  10486. (WebInspector.CallStackSidebarPane.prototype._breakpointHit): don't call populateStatusMessage for JS breakpoints
  10487. since there is no specific message in that case.
  10488. * inspector/front-end/ScriptsPanel.js:
  10489. (WebInspector.ScriptsPanel):
  10490. (WebInspector.ScriptsPanel.prototype.reset):
  10491. * inspector/front-end/inspector.css:
  10492. (#elements-sidebar):
  10493. (.pane > .body):
  10494. (#scripts-sidebar):
  10495. (li.breakpoint-hit .breakpoint-hit-marker):
  10496. 2010-11-12 Andrey Kosyakov <caseq@chromium.org>
  10497. Reviewed by Yury Semikhatsky.
  10498. Web Inspector: [Extensions API] [refactoring] generate public API interfaces automatically
  10499. https://bugs.webkit.org/show_bug.cgi?id=49441
  10500. * inspector/front-end/ExtensionAPI.js:
  10501. (WebInspector.injectedExtensionAPI.PanelImpl):
  10502. (WebInspector.injectedExtensionAPI):
  10503. (WebInspector.injectedExtensionAPI.WatchExpressionSidebarPane):
  10504. (WebInspector.injectedExtensionAPI.AuditCategoryImpl):
  10505. (WebInspector.injectedExtensionAPI.AuditResultImpl):
  10506. (WebInspector.injectedExtensionAPI.AuditResultImpl.prototype.get Severity):
  10507. (WebInspector.injectedExtensionAPI.):
  10508. 2010-11-12 Renata Hodovan <reni@webkit.org>
  10509. Reviewed by Nikolas Zimmermann.
  10510. SVGFEDisplacementMapElement doesn't support dynamic invalidation
  10511. https://bugs.webkit.org/show_bug.cgi?id=49430
  10512. The dynamic changes are captured by the svgAttributeChanged function. Invalidate the filter primitive if necessary.
  10513. Tests: svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr.html
  10514. svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr.html
  10515. svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr.html
  10516. svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr.html
  10517. svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr.html
  10518. svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop.html
  10519. svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop.html
  10520. svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop.html
  10521. svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop.html
  10522. svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop.html
  10523. * svg/SVGFEDisplacementMapElement.cpp:
  10524. (WebCore::SVGFEDisplacementMapElement::svgAttributeChanged):
  10525. * svg/SVGFEDisplacementMapElement.h:
  10526. 2010-11-12 Andrey Kosyakov <caseq@chromium.org>
  10527. Reviewed by Yury Semikhatsky.
  10528. Web Inspector: [refactoring] do not use absolute positioning for tabbed panes
  10529. https://bugs.webkit.org/show_bug.cgi?id=49439
  10530. * inspector/front-end/TabbedPane.js:
  10531. (WebInspector.TabbedPane):
  10532. (WebInspector.TabbedPane.prototype.appendTab):
  10533. * inspector/front-end/inspector.css:
  10534. (.resource-view.visible):
  10535. (.resource-view .tabbed-pane-header):
  10536. (.resource-view-cookies):
  10537. (.tabbed-pane):
  10538. (.tabbed-pane-content):
  10539. * inspector/front-end/networkPanel.css:
  10540. 2010-11-12 John Knottenbelt <jknotten@chromium.org>
  10541. Reviewed by Steve Block.
  10542. Rename GeolocationControllerClient to GeolocationClient.
  10543. https://bugs.webkit.org/show_bug.cgi?id=49259
  10544. No new tests, renaming only.
  10545. * GNUmakefile.am:
  10546. * WebCore.gypi:
  10547. * WebCore.order:
  10548. * WebCore.vcproj/WebCore.vcproj:
  10549. * WebCore.xcodeproj/project.pbxproj:
  10550. * page/GeolocationClient.h: Renamed from WebCore/page/GeolocationControllerClient.h.
  10551. (WebCore::GeolocationClient::~GeolocationClient):
  10552. * page/GeolocationController.cpp:
  10553. (WebCore::GeolocationController::GeolocationController):
  10554. * page/GeolocationController.h:
  10555. * page/Page.h:
  10556. 2010-11-12 Ilya Sherman <isherman@chromium.org>
  10557. Reviewed by Eric Seidel.
  10558. Remove some trailing whitespace
  10559. https://bugs.webkit.org/show_bug.cgi?id=49433
  10560. * platform/PopupMenuClient.h:
  10561. * platform/chromium/PopupMenuChromium.cpp:
  10562. (WebCore::PopupContainer::show):
  10563. (WebCore::PopupListBox::paintRow):
  10564. (WebCore::PopupListBox::scrollToRevealRow):
  10565. * platform/chromium/PopupMenuChromium.h:
  10566. * platform/chromium/SearchPopupMenuChromium.cpp:
  10567. * rendering/RenderMenuList.h:
  10568. (WebCore::RenderMenuList::toRenderMenuList):
  10569. * rendering/RenderTextControlSingleLine.h:
  10570. (WebCore::toRenderTextControlSingleLine):
  10571. 2010-11-12 Ryosuke Niwa <rniwa@webkit.org>
  10572. Reviewed by Csaba Osztrogonác.
  10573. [qt] script-clone tests added in r71895 fails on qt platform
  10574. https://bugs.webkit.org/show_bug.cgi?id=49429
  10575. Fixed parseEndElement to call ScriptElement's executeScript as supposed to that of ScriptController.
  10576. * dom/XMLDocumentParserQt.cpp:
  10577. (WebCore::XMLDocumentParser::parseEndElement):
  10578. 2010-11-05 MORITA Hajime <morrita@google.com>
  10579. Reviewed by Kent Tamura.
  10580. Refactoring: Return values of TextCheckingHelper::paragraphAlignedRange should form a class.
  10581. https://bugs.webkit.org/show_bug.cgi?id=49053
  10582. Replaced paragraphAlignedRange() function call into
  10583. TextCheckingParagraph class. The class encapsulates a range of a
  10584. paragraph, and its relation within associated checking range.
  10585. Instance variables of the class are computed lazily. So we can save unnecessary
  10586. memory allocation and DOM tree traversal.
  10587. No new tests, no behavior change.
  10588. * editing/Editor.cpp:
  10589. (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Replaced paragraphAlignedRange() call.
  10590. (WebCore::Editor::changeBackToReplacedString): Replaced paragraphAlignedRange() call.
  10591. * editing/TextCheckingHelper.cpp:
  10592. (WebCore::expandToParagraphBoundary):
  10593. (WebCore::TextCheckingParagraph::TextCheckingParagraph):
  10594. (WebCore::TextCheckingParagraph::~TextCheckingParagraph):
  10595. (WebCore::TextCheckingParagraph::expandRangeToNextEnd):
  10596. (WebCore::TextCheckingParagraph::invalidateParagraphRangeValues):
  10597. (WebCore::TextCheckingParagraph::rangeLength):
  10598. (WebCore::TextCheckingParagraph::paragraphRange):
  10599. (WebCore::TextCheckingParagraph::subrange):
  10600. (WebCore::TextCheckingParagraph::offsetTo):
  10601. (WebCore::TextCheckingParagraph::isEmpty):
  10602. (WebCore::TextCheckingParagraph::offsetAsRange):
  10603. (WebCore::TextCheckingParagraph::text):
  10604. (WebCore::TextCheckingParagraph::checkingStart):
  10605. (WebCore::TextCheckingParagraph::checkingEnd):
  10606. (WebCore::TextCheckingParagraph::checkingLength):
  10607. (WebCore::TextCheckingHelper::findFirstBadGrammar): Replaced paragraphAlignedRange() call.
  10608. (WebCore::TextCheckingHelper::guessesForMisspelledOrUngrammaticalRange): Replaced paragraphAlignedRange() call.
  10609. * editing/TextCheckingHelper.h:
  10610. (WebCore::TextCheckingParagraph::textLength):
  10611. (WebCore::TextCheckingParagraph::textSubstring):
  10612. (WebCore::TextCheckingParagraph::textCharacters):
  10613. (WebCore::TextCheckingParagraph::textCharAt):
  10614. (WebCore::TextCheckingParagraph::checkingSubstring):
  10615. (WebCore::TextCheckingParagraph::checkingRangeMatches):
  10616. (WebCore::TextCheckingParagraph::isCheckingRangeCoveredBy):
  10617. (WebCore::TextCheckingParagraph::checkingRangeCovers):
  10618. (WebCore::TextCheckingParagraph::checkingRange):
  10619. (WebCore::TextCheckingParagraph::isTextEmpty):
  10620. (WebCore::TextCheckingParagraph::isRangeEmpty):
  10621. 2010-11-11 Ryosuke Niwa <rniwa@webkit.org>
  10622. Reviewed by Darin Adler.
  10623. Script runs more than once after a clone
  10624. https://bugs.webkit.org/show_bug.cgi?id=48966
  10625. The bug was caused by cloneElementWithoutChildren's not propagating isEvaluated flag,
  10626. which indicates whether or not the script has already started, and the fact
  10627. neither HTMLScriptRunner nor XMLDocumentParser was setting isEvaluated flag to true.
  10628. Fixed the bug by making cloneElementWithoutChildren call a virtual cloneElementWithoutAttributesAndChildren,
  10629. and override it in HTMLScriptElement and SVGScriptElement to propagate isEvaluated flag,
  10630. and replacing direct access to ScriptController by a call to new ScriptElementData::executeScript,
  10631. which updates the isEvaluated flag properly.
  10632. See also: http://www.whatwg.org/specs/web-apps/current-work/#already-started
  10633. Tests: fast/dom/script-clone-rerun-self.html
  10634. fast/dom/script-clone-rerun.html
  10635. svg/dom/SVGScriptElement/script-clone-rerun-self.svg
  10636. svg/dom/SVGScriptElement/script-clone-rerun.svg
  10637. * dom/Element.cpp:
  10638. (WebCore::Element::cloneElementWithoutChildren): Calls cloneElementWithoutChildren.
  10639. (WebCore::Element::cloneElementWithoutAttributesAndChildren): Extracted from cloneElementWithoutChildren.
  10640. * dom/Element.h:
  10641. * dom/ScriptElement.cpp:
  10642. (WebCore::ScriptElementData::ScriptElementData): Added isEvaluated flag to the argument list.
  10643. (WebCore::ScriptElementData::evaluateScript): Extracted from HTMLScriptRunner::executeScript.
  10644. (WebCore::ScriptElementData::executeScript): Renamed evaluated to isEvaluated.
  10645. (WebCore::ScriptElementData::ignoresLoadRequest): Renamed evaluated to isEvaluated.
  10646. * dom/ScriptElement.h: Renamed evaluated to isEvaluated.
  10647. (WebCore::ScriptElementData::isEvaluated): Added.
  10648. * dom/XMLDocumentParserLibxml2.cpp:
  10649. (WebCore::XMLDocumentParser::endElementNs): Calls ScriptElement::executeScript.
  10650. * html/HTMLScriptElement.cpp:
  10651. (WebCore::HTMLScriptElement::HTMLScriptElement): Added isEvaluated flag to the argument list.
  10652. (WebCore::HTMLScriptElement::create): Calls the constructor with the isEvaluated flag set to false.
  10653. (WebCore::HTMLScriptElement::cloneElementWithoutAttributesAndChildren): Propagates isEvaluated.
  10654. (WebCore::HTMLScriptElement::executeScript): Added; calls ScriptElementData::executeScript.
  10655. * html/HTMLScriptElement.h:
  10656. * html/parser/HTMLScriptRunner.cpp:
  10657. (WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent): Added an assertion that was lost
  10658. in extracting ScriptElementData::executeScript.
  10659. (WebCore::HTMLScriptRunner::runScript): Calls ScriptElementData::executeScript.
  10660. * html/parser/HTMLScriptRunner.h:
  10661. * svg/SVGScriptElement.cpp:
  10662. (WebCore::SVGScriptElement::SVGScriptElement): Added isEvaluated flag to the argument list.
  10663. (WebCore::SVGScriptElement::create): Calls the constructor with the isEvaluated flag set to false.
  10664. (WebCore::SVGScriptElement::cloneElementWithoutAttributesAndChildren): Propagates isEvaluated.
  10665. (WebCore::SVGScriptElement::executeScript): Added; calls ScriptElementData::executeScript.
  10666. * svg/SVGScriptElement.h:
  10667. 2010-11-11 Shinichiro Hamaji <hamaji@chromium.org>
  10668. Reviewed by Darin Adler.
  10669. REGRESSION: window.print in onload doesn't fire if there's an img
  10670. https://bugs.webkit.org/show_bug.cgi?id=48195
  10671. This issue was introduced in
  10672. https://bugs.webkit.org/show_bug.cgi?id=43658
  10673. This happens because FrameLoader::isLoading() is false while an
  10674. image is still loading. Now, window.print() happens after all
  10675. resources are loaded.
  10676. Also changed the name of a member variable as Darin suggested in Bug 43658.
  10677. Added a manual test as DRT doesn't support window.print() yet.
  10678. * loader/DocumentLoader.cpp:
  10679. (WebCore::DocumentLoader::DocumentLoader):
  10680. (WebCore::DocumentLoader::updateLoading):
  10681. * loader/DocumentLoader.h:
  10682. * page/DOMWindow.cpp:
  10683. (WebCore::DOMWindow::DOMWindow):
  10684. (WebCore::DOMWindow::print):
  10685. (WebCore::DOMWindow::finishedLoading):
  10686. * page/DOMWindow.h:
  10687. 2010-11-11 James Simonsen <simonjam@chromium.org>
  10688. Reviewed by Tony Chang.
  10689. [chromium] Support letter spacing and fix whitespace wrapping on linux
  10690. When lines wrapped on RTL text, the whitespace was inserted before
  10691. the first character on the new line instead of at the end of the
  10692. previous line. This has been fixed.
  10693. The missing cluster information needed for letter spacing was hidden in
  10694. harfbuzz's attributes struct.
  10695. https://bugs.webkit.org/show_bug.cgi?id=49405
  10696. * platform/graphics/chromium/FontLinux.cpp:
  10697. (WebCore::TextRunWalker::letterSpacing): Added.
  10698. (WebCore::TextRunWalker::isWordBreak): No need for isRTL.
  10699. (WebCore::TextRunWalker::setPadding): Ditto.
  10700. (WebCore::TextRunWalker::setGlyphXPositions): Support letter spacing. No whitespace before RTL text on new line.
  10701. (WebCore::glyphIndexForXPositionInScriptRun): Support letter spacing.
  10702. 2010-11-11 Kavita Kanetkar <kkanetkar@chromium.org>
  10703. Reviewed by Dumitru Daniliuc.
  10704. FileSystem: Fix a link error for non-chromium WebKit build
  10705. https://bugs.webkit.org/show_bug.cgi?id=49296
  10706. * WebCore.xcodeproj/project.pbxproj:
  10707. * inspector/InspectorFileSystemAgent.cpp:
  10708. (WebCore::InspectorFileSystemAgentCallbacks::didOpenFileSystem):
  10709. (WebCore::InspectorFileSystemAgentCallbacks::didReadDirectoryEntry):
  10710. (WebCore::InspectorFileSystemAgentCallbacks::didReadDirectoryEntries):
  10711. (WebCore::InspectorFileSystemAgentCallbacks::didCreateFileWriter):
  10712. (WebCore::InspectorFileSystemAgentCallbacks::didFail):
  10713. (WebCore::InspectorFileSystemAgent::revealFolderInOS):
  10714. 2010-11-11 Nate Chapin <japhet@chromium.org>
  10715. Reviewed by Antti Koivisto.
  10716. Cleanup after http://trac.webkit.org/changeset/71562, namely:
  10717. Make deferred request handle simpler.
  10718. Don't perform callbacks associated with network load starting
  10719. (e.g., willSendRequest) until the load is in fact sent to the network.
  10720. Make ResourceLoadScheduler a friend of ResourceLoader and make
  10721. ResourceLoader::start() protected to try to ensure loads actually
  10722. go through the scheduler.
  10723. https://bugs.webkit.org/show_bug.cgi?id=49351
  10724. Behavior should be covered by existing tests.
  10725. * loader/NetscapePlugInStreamLoader.cpp:
  10726. (WebCore::NetscapePlugInStreamLoader::create):
  10727. * loader/ResourceLoadScheduler.cpp:
  10728. (WebCore::ResourceLoadScheduler::servePendingRequests):
  10729. * loader/ResourceLoadScheduler.h:
  10730. (WebCore::ResourceLoadScheduler::HostInformation::limitRequests):
  10731. * loader/ResourceLoader.cpp:
  10732. (WebCore::ResourceLoader::init):
  10733. (WebCore::ResourceLoader::start):
  10734. (WebCore::ResourceLoader::setDefersLoading):
  10735. (WebCore::ResourceLoader::didCancel):
  10736. * loader/ResourceLoader.h:
  10737. (WebCore::ResourceLoader::reachedTerminalState):
  10738. (WebCore::ResourceLoader::request):
  10739. * loader/SubresourceLoader.cpp:
  10740. (WebCore::SubresourceLoader::create):
  10741. * loader/loader.cpp:
  10742. (WebCore::Loader::load):
  10743. (WebCore::Loader::willSendRequest):
  10744. * loader/loader.h:
  10745. 2010-11-11 Carol Szabo <carol.szabo@nokia.com>
  10746. Reviewed by Kent Tamura.
  10747. css2:order of counters in out-of flow content
  10748. https://bugs.webkit.org/show_bug.cgi?id=32412
  10749. Tests: fast/css/content/content-none.html
  10750. fast/css/content/content-normal.html
  10751. * css/CSSParser.cpp:
  10752. (WebCore::CSSParser::parseContent):
  10753. Added support for none, normal, open-quote, no-open-quote, etc.
  10754. identifiers in terms of parsing only, as this has effect on the
  10755. evaluation of counters. No further implementation needed for
  10756. none and normal, the others are parsed but do not work as expected.
  10757. 2010-11-11 Julie-Jeongeun-Kim <jiyuluna@gmail.com>
  10758. Reviewed by Kent Tamura.
  10759. SelectionStart, selectionEnd properties return wrong values when the selection is in a read-only input or textarea element
  10760. https://bugs.webkit.org/show_bug.cgi?id=25444
  10761. 'rootEditableElement()' is checked on RenderTextControl::indexForVisiblePosition.
  10762. It means that just editable elements can get selection information.
  10763. ReadOnly element is not editable element. So, it just returns and can't get correct selection information.
  10764. INPUT and TEXTAREA elements can be read-only but 'indexForVisiblePosition' doesn't accept them.
  10765. So, Selectable elements, INPUT and TEXTAREA, checking is added for that case.
  10766. Even if they are read-only, they are selectable.
  10767. new tests:fast/forms/selection-start-end-readonly.html
  10768. * html/HTMLInputElement.idl:
  10769. * rendering/RenderTextControl.cpp:
  10770. (WebCore::RenderTextControl::isSelectableElement):
  10771. (WebCore::RenderTextControl::indexForVisiblePosition):
  10772. * rendering/RenderTextControl.h:
  10773. 2010-11-11 Adam Barth <abarth@webkit.org>
  10774. Reviewed by David Levin.
  10775. Add some RefPtrs to be on the safe side
  10776. https://bugs.webkit.org/show_bug.cgi?id=49301
  10777. Hopefully no behavior change.
  10778. * html/parser/HTMLTreeBuilder.cpp:
  10779. (WebCore::HTMLTreeBuilder::processIsindexStartTagForInBody):
  10780. 2010-11-11 Chris Rogers <crogers@google.com>
  10781. Reviewed by Kenneth Russell.
  10782. Fix Accelerate.framework issues in VectorMath 32-bit ppc & i386 vs. other architectures (64-bit, ARM, etc.).
  10783. On the Mac we use the highly optimized versions in Accelerate.framework
  10784. In 32-bit mode (__ppc__ or __i386__) <Accelerate/Accelerate.h> includes <vecLib/vDSP_translate.h> which defines macros
  10785. of the same name as our namespaced function names, so we must handle this case differently.
  10786. Other architectures (64bit, ARM, etc.) do not include this header file.
  10787. https://bugs.webkit.org/show_bug.cgi?id=49112
  10788. No new tests since audio API is not yet implemented.
  10789. * platform/audio/VectorMath.cpp:
  10790. (WebCore::VectorMath::vsmul):
  10791. (WebCore::VectorMath::vadd):
  10792. 2010-11-11 Dan Bernstein <mitz@apple.com>
  10793. Reviewed by Darin Adler.
  10794. <rdar://problem/8657116> fast/text/justification-padding-mid-word.html fails on Windows
  10795. https://bugs.webkit.org/show_bug.cgi?id=49378
  10796. * platform/graphics/win/UniscribeController.cpp:
  10797. (WebCore::UniscribeController::shapeAndPlaceItem): For all characters that need to be treated
  10798. as zero-width spaces, substitute the space glyph with zero advance. Apply justification padding
  10799. and word spacing only at characters treated as (non-zero-width) spaces.
  10800. 2010-11-11 Darin Adler <darin@apple.com>
  10801. Reviewed by Sam Weinig.
  10802. Harden some string functions against large lengths
  10803. https://bugs.webkit.org/show_bug.cgi?id=49293
  10804. * rendering/RenderText.cpp:
  10805. (WebCore::makeCapitalized): Check before incrementing length.
  10806. 2010-11-10 Zhenyao Mo <zmo@google.com>
  10807. Reviewed by Kenneth Russell.
  10808. bufferData/bufferSubData should not crash with null data input
  10809. https://bugs.webkit.org/show_bug.cgi?id=49350
  10810. * html/canvas/WebGLRenderingContext.cpp: return early if input data is null.
  10811. (WebCore::WebGLRenderingContext::bufferData):
  10812. (WebCore::WebGLRenderingContext::bufferSubData):
  10813. 2010-11-10 Zhenyao Mo <zmo@google.com>
  10814. Reviewed by Kenneth Russell.
  10815. Implement UNPACK_COLORSPACE_CONVERSION_WEBGL
  10816. https://bugs.webkit.org/show_bug.cgi?id=47196
  10817. This is the first patch for this bug. We add constants and methods, but haven't hooked it up with texture uploading yet. Also, in order to check in constants.html, we need to remove out-dated constants, and update affected tests correspondingly.
  10818. Test: fast/canvas/webgl/constants.html
  10819. * html/canvas/WebGLRenderingContext.cpp:
  10820. (WebCore::WebGLRenderingContext::WebGLRenderingContext): Move init code to initializeNewContext.
  10821. (WebCore::WebGLRenderingContext::initializeNewContext): Ditto.
  10822. (WebCore::WebGLRenderingContext::getParameter): Implement UNPACK_COLORSPACE_CONVERSION_WEBGL.
  10823. (WebCore::WebGLRenderingContext::pixelStorei): Ditto.
  10824. * html/canvas/WebGLRenderingContext.h: Add a member to track UNPACK_COLORSPACE_CONVERSION_WEBGL setting.
  10825. * html/canvas/WebGLRenderingContext.idl: Update constants.
  10826. * platform/graphics/GraphicsContext3D.h: Update constants.
  10827. 2010-11-11 Chris Marrin <cmarrin@apple.com>
  10828. Reviewed by James Robinson.
  10829. Add multisampling support to DrawingBuffer.
  10830. https://bugs.webkit.org/show_bug.cgi?id=49206
  10831. Added support for the GL_ANGLE_framebuffer_blit and GL_ANGLE_framebuffer_multisample
  10832. extensions to Extensions3D. Then I use these to add multisample support to DrawingBuffer.
  10833. This re-lands changes rolled out by http://trac.webkit.org/changeset/71839. It includes
  10834. the change from http://trac.webkit.org/changeset/71831 and additional changes to
  10835. DrawingBufferChromium.cpp which cause the broken canvas tests to pass.
  10836. * platform/graphics/Extensions3D.h:
  10837. * platform/graphics/chromium/DrawingBufferChromium.cpp:
  10838. (WebCore::DrawingBuffer::DrawingBuffer):
  10839. (WebCore::DrawingBuffer::~DrawingBuffer):
  10840. (WebCore::DrawingBuffer::publishToPlatformLayer):
  10841. (WebCore::DrawingBuffer::didReset):
  10842. (WebCore::DrawingBuffer::platformColorBuffer):
  10843. * platform/graphics/chromium/Extensions3DChromium.h:
  10844. (WebCore::Extensions3DChromium::blitFramebuffer):
  10845. (WebCore::Extensions3DChromium::renderbufferStorageMultisample):
  10846. * platform/graphics/gpu/DrawingBuffer.cpp:
  10847. (WebCore::DrawingBuffer::create):
  10848. (WebCore::DrawingBuffer::clear):
  10849. (WebCore::DrawingBuffer::reset):
  10850. (WebCore::DrawingBuffer::commit):
  10851. (WebCore::DrawingBuffer::bind):
  10852. * platform/graphics/gpu/DrawingBuffer.h:
  10853. (WebCore::DrawingBuffer::multisample):
  10854. * platform/graphics/gpu/mac/DrawingBufferMac.mm:
  10855. (WebCore::DrawingBuffer::DrawingBuffer):
  10856. (WebCore::DrawingBuffer::didReset):
  10857. (WebCore::DrawingBuffer::platformColorBuffer):
  10858. * platform/graphics/opengl/Extensions3DOpenGL.cpp:
  10859. (WebCore::Extensions3DOpenGL::supports):
  10860. (WebCore::Extensions3DOpenGL::blitFramebuffer):
  10861. (WebCore::Extensions3DOpenGL::renderbufferStorageMultisample):
  10862. * platform/graphics/opengl/Extensions3DOpenGL.h:
  10863. * platform/graphics/skia/ImageBufferSkia.cpp:
  10864. (WebCore::ImageBuffer::draw):
  10865. 2010-11-11 David Hyatt <hyatt@apple.com>
  10866. Reviewed by Simon Fraser.
  10867. https://bugs.webkit.org/show_bug.cgi?id=48664
  10868. Make repaint invalidation work with flipped blocks ("rl" and "bt" writing modes).
  10869. This patch disables the layout state for flipped blocks, since the paint offset isn't right.
  10870. Bugs in the overflow sides for lines have been fixed. before/AfterSideVisible/LayoutOverflowForLine
  10871. now respect flipping (and don't incorrectly change sides). This is a very confusing aspect of
  10872. the overflow stuff (and at some point we should consider renaming top/left/right/bottom since they
  10873. aren't physical).
  10874. offsetFromContainer and mapLocalToContainer remain physical and refer to the top left offset.
  10875. This means at every step up you convert to the correct physical coordinate. It also means these
  10876. functions will be unreliable during layout for flipped blocks. At first glance, this seems to be
  10877. more or less ok.
  10878. computeRectForRepaint now delays flipping conversions until you cross a writing-mode boundary. This
  10879. allows for documents to be fully flipped and repaint during layout can still be reliable. This is
  10880. critical for incremental line layout repainting.
  10881. Added new tests in fast/repaint and also rebaselined the tests in that directory because I'm tired
  10882. of all the stale results and failures.
  10883. * editing/SelectionController.cpp:
  10884. (WebCore::SelectionController::absoluteBoundsForLocalRect):
  10885. (WebCore::SelectionController::paintCaret):
  10886. * rendering/InlineTextBox.cpp:
  10887. (WebCore::InlineTextBox::selectionRect):
  10888. * rendering/RenderBlock.cpp:
  10889. (WebCore::RenderBlock::layoutBlock):
  10890. (WebCore::RenderBlock::layoutOnlyPositionedObjects):
  10891. (WebCore::RenderBlock::paintSelection):
  10892. * rendering/RenderBlockLineLayout.cpp:
  10893. (WebCore::RenderBlock::beforeSideVisibleOverflowForLine):
  10894. (WebCore::RenderBlock::afterSideVisibleOverflowForLine):
  10895. (WebCore::RenderBlock::beforeSideLayoutOverflowForLine):
  10896. (WebCore::RenderBlock::afterSideLayoutOverflowForLine):
  10897. * rendering/RenderBox.cpp:
  10898. (WebCore::RenderBox::layout):
  10899. (WebCore::RenderBox::mapLocalToContainer):
  10900. (WebCore::RenderBox::offsetFromContainer):
  10901. (WebCore::RenderBox::clippedOverflowRectForRepaint):
  10902. (WebCore::RenderBox::computeRectForRepaint):
  10903. (WebCore::RenderBox::flipForWritingMode):
  10904. (WebCore::RenderBox::locationOffsetIncludingFlipping):
  10905. * rendering/RenderBox.h:
  10906. * rendering/RenderFlexibleBox.cpp:
  10907. (WebCore::RenderFlexibleBox::layoutBlock):
  10908. * rendering/RenderInline.cpp:
  10909. (WebCore::RenderInline::clippedOverflowRectForRepaint):
  10910. * rendering/RenderSlider.cpp:
  10911. (WebCore::RenderSlider::layout):
  10912. * rendering/RenderTable.cpp:
  10913. (WebCore::RenderTable::layout):
  10914. * rendering/RenderTableRow.cpp:
  10915. (WebCore::RenderTableRow::layout):
  10916. * rendering/RenderTableSection.cpp:
  10917. (WebCore::RenderTableSection::layout):
  10918. (WebCore::RenderTableSection::layoutRows):
  10919. * rendering/RenderView.cpp:
  10920. (WebCore::RenderView::computeRectForRepaint):
  10921. * rendering/ShadowElement.cpp:
  10922. (WebCore::ShadowBlockElement::layoutAsPart):
  10923. 2010-11-11 Chris Marrin <cmarrin@apple.com>
  10924. Reviewed by Simon Fraser.
  10925. Share code between Mac (CA) and Windows (CACF) GraphicsLayer implementations
  10926. https://bugs.webkit.org/show_bug.cgi?id=49388
  10927. Renamed GraphicsLayerCA.* to GraphicsLayerMac.*
  10928. * WebCore.xcodeproj/project.pbxproj:
  10929. * platform/graphics/mac/GraphicsLayerCA.h: Removed.
  10930. * platform/graphics/mac/GraphicsLayerCA.mm: Removed.
  10931. * platform/graphics/mac/GraphicsLayerMac.h: Copied from WebCore/platform/graphics/mac/GraphicsLayerCA.h.
  10932. * platform/graphics/mac/GraphicsLayerMac.mm: Copied from WebCore/platform/graphics/mac/GraphicsLayerCA.mm.
  10933. 2010-11-11 Kenneth Russell <kbr@google.com>
  10934. Reviewed by James Robinson.
  10935. [chromium] Missing adoptPtr in GraphicsContext3DSkia.cpp
  10936. https://bugs.webkit.org/show_bug.cgi?id=49359
  10937. * platform/graphics/skia/GraphicsContext3DSkia.cpp:
  10938. (WebCore::GraphicsContext3D::getImageData):
  10939. 2010-11-11 Dan Bernstein <mitz@apple.com>
  10940. Reviewed by Adam Roben.
  10941. <rdar://problem/8113511> Enable auto-hyphenation
  10942. * WebCore.vcproj/WebCore.vcproj: Included HyphenationCF.cpp instead of Hyphenation.cpp.
  10943. * platform/text/cf/HyphenationCF.cpp: Added functions and definitions for Windows to look up CFStringGetHyphenationLocationBeforeIndex
  10944. and CFStringIsHyphenationAvailableForLocale at runtime.
  10945. (wkCFStringGetHyphenationLocationBeforeIndex):
  10946. (wkCFStringIsHyphenationAvailableForLocale):
  10947. (WebCore::lastHyphenLocation): Added a cast.
  10948. 2010-11-11 Eric Carlson <eric.carlson@apple.com>
  10949. Reviewed by Eric Seidel.
  10950. video-pause-immediately.html sometimes fails
  10951. https://bugs.webkit.org/show_bug.cgi?id=49397
  10952. * html/HTMLMediaElement.cpp:
  10953. (WebCore::HTMLMediaElement::playInternal): Don't bother calling invalidateCachedTime, it
  10954. will be called from updatePlayState.
  10955. (WebCore::HTMLMediaElement::pauseInternal): Don't bother calling refreshCachedTime, it
  10956. will be called from updatePlayState.
  10957. (WebCore::HTMLMediaElement::updatePlayState): Call refreshCachedTime after telling the media
  10958. engine to pause so we cache the post-paused time.
  10959. 2010-11-11 Mihai Parparita <mihaip@chromium.org>
  10960. Unreviewed rollout.
  10961. Roll out r71827 and r71831, which caused many GPU canvas test failures.
  10962. * platform/graphics/Extensions3D.h:
  10963. * platform/graphics/chromium/DrawingBufferChromium.cpp:
  10964. (WebCore::DrawingBuffer::reset):
  10965. (WebCore::DrawingBuffer::getRenderingResultsAsTexture):
  10966. * platform/graphics/chromium/Extensions3DChromium.h:
  10967. * platform/graphics/gpu/DrawingBuffer.cpp:
  10968. (WebCore::DrawingBuffer::create):
  10969. (WebCore::DrawingBuffer::clear):
  10970. (WebCore::DrawingBuffer::bind):
  10971. * platform/graphics/gpu/DrawingBuffer.h:
  10972. * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
  10973. (WebCore::SharedGraphicsContext3D::create):
  10974. * platform/graphics/gpu/mac/DrawingBufferMac.mm:
  10975. (WebCore::DrawingBuffer::DrawingBuffer):
  10976. (WebCore::DrawingBuffer::reset):
  10977. * platform/graphics/opengl/Extensions3DOpenGL.cpp:
  10978. (WebCore::Extensions3DOpenGL::supports):
  10979. * platform/graphics/opengl/Extensions3DOpenGL.h:
  10980. * platform/graphics/skia/ImageBufferSkia.cpp:
  10981. (WebCore::ImageBuffer::draw):
  10982. 2010-11-11 Eric Carlson <eric.carlson@apple.com>
  10983. Restore the portion of the ChangeLog removed in my last commit.
  10984. 2010-11-11 Eric Carlson <eric.carlson@apple.com>
  10985. Unreviewed Leoaprd build fix.
  10986. * html/HTMLMediaElement.cpp:
  10987. (WebCore::HTMLMediaElement::invalidateCachedTime): Make the const a double.
  10988. 2010-11-11 Dirk Schulze <krit@webkit.org>
  10989. Unreviewed Qt build fix.
  10990. SVGAnimation calcMode 'spline' should be useable for from-to and from-by animations
  10991. https://bugs.webkit.org/show_bug.cgi?id=49284
  10992. * svg/SVGAnimationElement.cpp:
  10993. (WebCore::SVGAnimationElement::calculatePercentFromKeyPoints):
  10994. (WebCore::SVGAnimationElement::startedActiveInterval):
  10995. 2010-11-11 Hans Wennborg <hans@chromium.org>
  10996. Reviewed by Jeremy Orlow.
  10997. IndexedDB: signal IDBFactoryBackendInterface destruction to embedder
  10998. https://bugs.webkit.org/show_bug.cgi?id=49313
  10999. Define IDBFactoryBackendInterface destructor out-of-line to allow
  11000. for embedder-specific implementation. For Chromium, have the
  11001. destructor call ChromiumBridge::idbShutdown().
  11002. * platform/chromium/ChromiumBridge.h:
  11003. * storage/IDBFactoryBackendInterface.cpp:
  11004. (WebCore::IDBFactoryBackendInterface::~IDBFactoryBackendInterface):
  11005. * storage/IDBFactoryBackendInterface.h:
  11006. * storage/chromium/IDBFactoryBackendInterface.cpp:
  11007. (WebCore::IDBFactoryBackendInterface::~IDBFactoryBackendInterface):
  11008. 2010-11-11 Dirk Schulze <krit@webkit.org>
  11009. Reviewed by Nikolas Zimmermann.
  11010. SVGAnimation calcMode 'spline' should be useable for from-to and from-by animations
  11011. https://bugs.webkit.org/show_bug.cgi?id=49284
  11012. Add support for from-to and from-by animations in combination with calcMode 'spline' for SVGAnimations.
  11013. Tests: svg/animations/animate-calcMode-spline-by.html
  11014. svg/animations/animate-calcMode-spline-from-by.html
  11015. svg/animations/animate-calcMode-spline-from-to.html
  11016. svg/animations/animate-calcMode-spline-to.html
  11017. svg/animations/animate-calcMode-spline-values.html
  11018. * svg/SVGAnimationElement.cpp:
  11019. (WebCore::SVGAnimationElement::calculateKeyTimesIndex): Added to share more code.
  11020. (WebCore::SVGAnimationElement::calculatePercentFromKeyPoints):
  11021. (WebCore::SVGAnimationElement::currentValuesForValuesAnimation):
  11022. (WebCore::SVGAnimationElement::startedActiveInterval):
  11023. (WebCore::SVGAnimationElement::updateAnimation):
  11024. * svg/SVGAnimationElement.h:
  11025. 2010-11-10 Chris Marrin <cmarrin@apple.com>
  11026. Reviewed by James Robinson.
  11027. Add multisampling support to DrawingBuffer.
  11028. https://bugs.webkit.org/show_bug.cgi?id=49206
  11029. Added support for the GL_ANGLE_framebuffer_blit and GL_ANGLE_framebuffer_multisample
  11030. extensions to Extensions3D. Then I use these to add multisample support to DrawingBuffer.
  11031. * platform/graphics/Extensions3D.h:
  11032. * platform/graphics/chromium/DrawingBufferChromium.cpp:
  11033. (WebCore::DrawingBuffer::platformColorBuffer):
  11034. * platform/graphics/chromium/Extensions3DChromium.h:
  11035. (WebCore::Extensions3DChromium::blitFramebuffer):
  11036. (WebCore::Extensions3DChromium::renderbufferStorageMultisample):
  11037. * platform/graphics/gpu/DrawingBuffer.cpp:
  11038. (WebCore::DrawingBuffer::create):
  11039. (WebCore::DrawingBuffer::clear):
  11040. (WebCore::DrawingBuffer::reset):
  11041. (WebCore::DrawingBuffer::commit):
  11042. (WebCore::DrawingBuffer::bind):
  11043. * platform/graphics/gpu/DrawingBuffer.h:
  11044. (WebCore::DrawingBuffer::multisample):
  11045. * platform/graphics/gpu/mac/DrawingBufferMac.mm:
  11046. (WebCore::DrawingBuffer::DrawingBuffer):
  11047. (WebCore::DrawingBuffer::platformLayer):
  11048. (WebCore::DrawingBuffer::platformColorBuffer):
  11049. * platform/graphics/opengl/Extensions3DOpenGL.cpp:
  11050. (WebCore::Extensions3DOpenGL::supports):
  11051. (WebCore::Extensions3DOpenGL::blitFramebuffer):
  11052. (WebCore::Extensions3DOpenGL::renderbufferStorageMultisample):
  11053. * platform/graphics/opengl/Extensions3DOpenGL.h:
  11054. * platform/graphics/skia/ImageBufferSkia.cpp:
  11055. (WebCore::ImageBuffer::draw):
  11056. 2010-11-11 Eric Carlson <eric.carlson@apple.com>
  11057. Build fix after r71824.
  11058. * html/HTMLMediaElement.cpp:
  11059. (WebCore::HTMLMediaElement::invalidateCachedTime): Use an explicit cast from double to float.
  11060. (WebCore::HTMLMediaElement::currentTime): Ditto.
  11061. 2010-11-11 Eric Carlson <eric.carlson@apple.com>
  11062. Reviewed by Antti Koivisto.
  11063. Lots of time spent in MediaPlayerPrivate::currentTime() when playing multiple videos.
  11064. https://bugs.webkit.org/show_bug.cgi?id=49009
  11065. Make it possible for HTMLMediaElement to cache the movie time and report 'currentTime'
  11066. as [cached time + elapsed wall time]. The media engine returns the maximum duration it
  11067. is safe to calculate time before resampling the actual movie time with the new
  11068. maximumDurationToCacheMovieTime method. Because this may be different for different media
  11069. engines the default return value is 0, making it an opt-in feature.
  11070. No new tests were added because the existing tests already check currentTime, and because
  11071. it is only possible to look for drift between the calculated and actual media time by
  11072. calculating the time AND getting the actual media time - which the defeats the purpose of
  11073. the change. Building with LOG_CACHED_TIME_WARNINGS defined enables code that does both
  11074. and logs warnings when the delta between calculated and observed is greater than 0.01.
  11075. * html/HTMLMediaElement.cpp:
  11076. (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize new member variables.
  11077. (WebCore::HTMLMediaElement::prepareForLoad): Force a time resync before setting m_paused.
  11078. (WebCore::HTMLMediaElement::seek): Force a time resync before getting the current time before
  11079. seeking so there is no drift.
  11080. (WebCore::HTMLMediaElement::refreshCachedTime): New, update the cached movie time and the
  11081. wall clock time it was recorded.
  11082. (WebCore::HTMLMediaElement::invalidateCachedTime): New, flag the cached time as invalid.
  11083. (WebCore::HTMLMediaElement::currentTime): Use a cached movie time for as long as the media
  11084. engine says it is safe. Lots of optional logging can be enabled to help ports fine tune
  11085. the maximum cache interval.
  11086. (WebCore::HTMLMediaElement::ended): Force a time resync before setting m_paused.
  11087. (WebCore::HTMLMediaElement::endScrubbing): Fix a typo in the logging.
  11088. (WebCore::HTMLMediaElement::scheduleTimeupdateEvent): Call currentTime() instead of calling
  11089. MediaPlayer so we use the cached time as much as it possible.
  11090. (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Invalidate cached time because the engine
  11091. seeked.
  11092. (WebCore::HTMLMediaElement::mediaPlayerRateChanged): Ditto.
  11093. (WebCore::HTMLMediaElement::updatePlayState): Invalidate cached time before changing m_paused.
  11094. * html/HTMLMediaElement.h:
  11095. * platform/graphics/MediaPlayer.cpp:
  11096. (WebCore::MediaPlayer::maximumDurationToCacheMovieTime): New.
  11097. * platform/graphics/MediaPlayer.h:
  11098. * platform/graphics/MediaPlayerPrivate.h:
  11099. (WebCore::MediaPlayerPrivateInterface::maximumDurationToCacheMovieTime): New.
  11100. * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
  11101. (WebCore::MediaPlayerPrivate::maximumDurationToCacheMovieTime): New, say it is safe to cache
  11102. time for five seconds (based on lots of experimenting with LOG_CACHED_TIME_WARNINGS enabled).
  11103. 2010-11-11 Adam Roben <aroben@apple.com>
  11104. Windows build fix after r71816
  11105. r71816 renamed
  11106. WebCore/platform/graphics/cairo/FontPlatformDataCairoWin.h to
  11107. WebCore/platform/graphics/win/FontPlatformData.h. This made Apple's
  11108. Windows port pick up this header in preference to
  11109. WebCore/platform/cg/FontPlatformData.h, thus breaking the build. I
  11110. moved the file to
  11111. WebCore/platform/graphics/win/cairo/FontPlatformData.h so it won't be
  11112. picked up by Apple's Windows build.
  11113. * WebCore.vcproj/WebCore.vcproj: Updated for file move and let VS
  11114. re-sort the files.
  11115. * WebCore.vcproj/WebCoreCairo.vsprops: Added
  11116. platform/graphics/win/cairo to the include path.
  11117. * WebCore.vcproj/copyForwardingHeaders.cmd: Copy files from
  11118. platform/graphics/win/cairo to $WebKitOutputDir.
  11119. * platform/graphics/cg/FontPlatformData.h: Touched to force this file
  11120. to be recopied for Apple's build.
  11121. * platform/graphics/win/cairo/FontPlatformData.h: Renamed from
  11122. WebCore/platform/graphics/win/FontPlatformData.h.
  11123. 2010-11-11 Balazs Kelemen <kbalazs@webkit.org>
  11124. Reviewed by Andreas Kling.
  11125. [Qt][WK2] Implement BackingStore
  11126. https://bugs.webkit.org/show_bug.cgi?id=49377
  11127. No change in functionality so no tests.
  11128. Add a way to hand off ownership of the QPainter and the underlying
  11129. QPaintDevice to the GraphicsContext.
  11130. * platform/graphics/GraphicsContext.h:
  11131. * platform/graphics/qt/GraphicsContextQt.cpp:
  11132. (WebCore::GraphicsContextPlatformPrivate::takeOwnershipOfPlatformContext):
  11133. (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
  11134. (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
  11135. (WebCore::GraphicsContext::takeOwnershipOfPlatformContext):
  11136. 2010-11-11 Ryuan Choi <ryuan.choi@samsung.com>
  11137. Reviewed by Adam Barth.
  11138. [GTK] Move font related files.
  11139. https://bugs.webkit.org/show_bug.cgi?id=48116
  11140. Move pango and freetype related files to share non-GTK+ platforms.
  11141. No new tests because this is pure refactoring.
  11142. * CMakeListsEfl.txt:
  11143. * GNUmakefile.am:
  11144. * WebCore.vcproj/WebCore.vcproj:
  11145. * platform/graphics/cairo/FontCacheFreeType.cpp: Removed.
  11146. * platform/graphics/cairo/FontCustomPlatformData.cpp: Removed.
  11147. * platform/graphics/cairo/FontPlatformData.h: Removed.
  11148. * platform/graphics/cairo/FontPlatformDataFreeType.cpp: Removed.
  11149. * platform/graphics/cairo/FontPlatformDataFreeType.h: Removed.
  11150. * platform/graphics/cairo/GlyphPageTreeNodeCairo.cpp: Removed.
  11151. * platform/graphics/cairo/SimpleFontDataCairo.cpp: Removed.
  11152. * platform/graphics/freetype: Added.
  11153. * platform/graphics/freetype/FontCacheFreeType.cpp: Copied from WebCore/platform/graphics/cairo/FontCacheFreeType.cpp.
  11154. * platform/graphics/freetype/FontCustomPlatformDataFreeType.cpp: Copied from WebCore/platform/graphics/cairo/FontCustomPlatformData.cpp.
  11155. * platform/graphics/freetype/FontPlatformData.h: Copied from WebCore/platform/graphics/cairo/FontPlatformDataFreeType.h.
  11156. * platform/graphics/freetype/FontPlatformDataFreeType.cpp: Copied from WebCore/platform/graphics/cairo/FontPlatformDataFreeType.cpp.
  11157. * platform/graphics/freetype/GlyphPageTreeNodeFreeType.cpp: Copied from WebCore/platform/graphics/cairo/GlyphPageTreeNodeCairo.cpp.
  11158. * platform/graphics/freetype/SimpleFontDataFreeType.cpp: Copied from WebCore/platform/graphics/cairo/SimpleFontDataCairo.cpp.
  11159. * platform/graphics/gtk/FontCachePango.cpp: Removed.
  11160. * platform/graphics/gtk/FontCustomPlatformDataPango.cpp: Removed.
  11161. * platform/graphics/gtk/FontPlatformDataPango.cpp: Removed.
  11162. * platform/graphics/gtk/FontPlatformDataPango.h: Removed.
  11163. * platform/graphics/gtk/GlyphPageTreeNodePango.cpp: Removed.
  11164. * platform/graphics/gtk/SimpleFontDataPango.cpp: Removed.
  11165. * platform/graphics/pango: Added.
  11166. * platform/graphics/pango/FontCachePango.cpp: Copied from WebCore/platform/graphics/gtk/FontCachePango.cpp.
  11167. * platform/graphics/pango/FontCustomPlatformDataPango.cpp: Copied from WebCore/platform/graphics/gtk/FontCustomPlatformDataPango.cpp.
  11168. * platform/graphics/pango/FontPlatformData.h: Copied from WebCore/platform/graphics/gtk/FontPlatformDataPango.h.
  11169. * platform/graphics/pango/FontPlatformDataPango.cpp: Copied from WebCore/platform/graphics/gtk/FontPlatformDataPango.cpp.
  11170. * platform/graphics/pango/GlyphPageTreeNodePango.cpp: Copied from WebCore/platform/graphics/gtk/GlyphPageTreeNodePango.cpp.
  11171. * platform/graphics/pango/SimpleFontDataPango.cpp: Copied from WebCore/platform/graphics/gtk/SimpleFontDataPango.cpp.
  11172. * platform/graphics/win/FontPlatformData.h: Copied from WebCore/platform/graphics/win/FontPlatformDataCairoWin.h.
  11173. * platform/graphics/win/FontPlatformDataCairoWin.h: Removed.
  11174. 2010-11-11 Pavel Feldman <pfeldman@chromium.org>
  11175. Reviewed by Yury Semikhatsky.
  11176. Web Inspector: size of resources in summary is 0
  11177. when there are redirects.
  11178. https://bugs.webkit.org/show_bug.cgi?id=49242
  11179. * inspector/front-end/NetworkPanel.js:
  11180. (WebInspector.NetworkPanel.prototype._updateSummaryBar):
  11181. 2010-11-11 Ben Murdoch <benm@google.com>
  11182. Reviewed by Darin Fisher.
  11183. document.createTouch and document.createTouchList should specify EnabledAtRuntime
  11184. https://bugs.webkit.org/show_bug.cgi?id=49324
  11185. The createTouch and createTouchList APIs added to Document.idl in
  11186. http://trac.webkit.org/changeset/70047 should have EnabledAtRuntime
  11187. specified as touch related features are controlled by a
  11188. RuntimeEnabledFeature flag in addition to a compile time guard.
  11189. No new tests. This should have been part of r70047 and
  11190. that revision provided adequate tests of the new feature.
  11191. * bindings/generic/RuntimeEnabledFeatures.h:
  11192. (WebCore::RuntimeEnabledFeatures::createTouchEnabled):
  11193. (WebCore::RuntimeEnabledFeatures::createTouchListEnabled):
  11194. * dom/Document.idl: Add EnabledAtRuntime specifier to the
  11195. idl methods.
  11196. 2010-11-09 Pavel Feldman <pfeldman@chromium.org>
  11197. Reviewed by Yury Semikhatsky.
  11198. Web Inspector: Provide context menu item 'Reveal in Elements Panel'
  11199. on elements in inspector UI.
  11200. https://bugs.webkit.org/show_bug.cgi?id=49161
  11201. * English.lproj/localizedStrings.js:
  11202. * inspector/front-end/ElementsTreeOutline.js:
  11203. (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired.focusElement):
  11204. (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired):
  11205. * inspector/front-end/ObjectPropertiesSection.js:
  11206. (WebInspector.ObjectPropertyTreeElement.prototype.update):
  11207. (WebInspector.ObjectPropertyTreeElement.prototype._contextMenuEventFired):
  11208. (WebInspector.ObjectPropertyTreeElement.prototype._contextMenuEventFired.revealElement):
  11209. 2010-11-11 Pavel Feldman <pfeldman@chromium.org>
  11210. Reviewed by Yury Semikhatsky.
  11211. Web Inspector: Audit panel toolbar icon shifts left when clicked.
  11212. https://bugs.webkit.org/show_bug.cgi?id=48766
  11213. * inspector/front-end/Images/auditsIcon.png:
  11214. 2010-11-11 Nikolas Zimmermann <nzimmermann@rim.com>
  11215. Reviewed by Dirk Schulze.
  11216. chrome.dll!WebCore::SVGLengthInternal::valueInSpecifiedUnitsAttrGetter ReadAV@NULL (4cf97a4f3ebe8006a2f5ffcc5bc10aeb)
  11217. https://bugs.webkit.org/show_bug.cgi?id=49331
  11218. Test: svg/dom/SVGPolygonElement-baseVal-list-removal-crash.html
  11219. * svg/properties/SVGListProperty.h:
  11220. (WebCore::SVGListProperty::replaceItemValuesAndWrappers): Avoid premature deletion of 'oldItem'.
  11221. (WebCore::SVGListProperty::removeItemValuesAndWrappers): Ditto.
  11222. 2010-11-11 Kenneth Rohde Christiansen <kenneth@webkit.org>
  11223. Reviewed by Andreas Kling.
  11224. Make it possible to override the visibleContentRect in the case the
  11225. client is handling the scrolling. This is similar to what the iPhone does.
  11226. * platform/ScrollView.cpp:
  11227. (WebCore::ScrollView::visibleContentRect):
  11228. * platform/ScrollView.h:
  11229. (WebCore::ScrollView::setActualVisibleContentRect):
  11230. 2010-11-11 Andreas Kling <kling@webkit.org>
  11231. Reviewed by Kenneth Rohde Christiansen.
  11232. FrameView: Don't clip to visibleContentRect in paintEntireContents mode
  11233. https://bugs.webkit.org/show_bug.cgi?id=49375
  11234. In paintEntireContents mode (used in combination with tiling) we
  11235. cannot clip to the actual visibleContentRect as the clipped regions
  11236. will not be updated again on scroll. If paintsEntireContents is
  11237. enabled, return the actual content rect.
  11238. * page/FrameView.cpp:
  11239. (WebCore::FrameView::windowClipRect):
  11240. 2010-11-10 Nikolas Zimmermann <nzimmermann@rim.com>
  11241. Reviewed by Dirk Schulze.
  11242. Convert SVGMatrix/SVGTransform/SVGTransformList to the new SVGPropertyTearOff concept
  11243. https://bugs.webkit.org/show_bug.cgi?id=49311
  11244. Move the last list type, SVGTransformList, and the last POD types, SVGMatrix & SVGTransform, over to the new SVGPropertyTearOff concept.
  11245. Removes the need for a custom JSSVGMatrix/V8SVGMatrix implementation, it's all integrated within the bindings now.
  11246. Tests: svg/W3C-SVG-1.1-SE/coords-dom-01-f.svg
  11247. svg/W3C-SVG-1.1-SE/coords-dom-02-f.svg
  11248. svg/W3C-SVG-1.1-SE/coords-dom-03-f.svg
  11249. svg/W3C-SVG-1.1-SE/coords-dom-04-f.svg
  11250. svg/W3C-SVG-1.1-SE/types-dom-01-b.svg
  11251. svg/W3C-SVG-1.1-SE/types-dom-02-f.svg
  11252. svg/W3C-SVG-1.1-SE/types-dom-03-b.svg
  11253. svg/W3C-SVG-1.1-SE/types-dom-04-b.svg
  11254. svg/W3C-SVG-1.1-SE/types-dom-05-b.svg
  11255. svg/dom/SVGMatrix.html
  11256. svg/dom/SVGTransform.html
  11257. svg/dom/SVGTransformList.html
  11258. * Android.jscbindings.mk: Removed JSSVGMatrixCustom.cpp.
  11259. * Android.v8bindings.mk: Removed V8SVGMatrixCustom.cpp.
  11260. * CMakeLists.txt: Remove JSSVGMatrixCustom.cpp.
  11261. * GNUmakefile.am: Ditto. Add SVGAnimatedTransformListPropertyTearOff.h/SVGStaticPropertyWithParentTearOff.h/SVGTransformListPropertyTearOff.h/SVGAnimatedTransformList.h/SVGMatrix.h to build.
  11262. * WebCore.gypi: Ditto.
  11263. * WebCore.pro: Ditto.
  11264. * WebCore.vcproj/WebCore.vcproj: Ditto.
  11265. * WebCore.xcodeproj/project.pbxproj: Ditto.
  11266. * bindings/js/JSBindingsAllInOne.cpp: Remove JSSVGMatrixCustom.cpp
  11267. * bindings/js/JSSVGMatrixCustom.cpp: Removed.
  11268. * bindings/scripts/CodeGenerator.pm: Convert SVGMatrix/SVGTransform/SVGTransformList to the new concept.
  11269. * bindings/scripts/CodeGeneratorJS.pm: Ditto.
  11270. * bindings/scripts/CodeGeneratorObjC.pm: Ditto.
  11271. * bindings/scripts/CodeGeneratorV8.pm: Ditto.
  11272. * bindings/v8/custom/V8SVGMatrixCustom.cpp: Removed.
  11273. * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove SVGTransformList handling.
  11274. * svg/DeprecatedSVGAnimatedTemplate.h: Ditto.
  11275. * svg/SVGAnimateTransformElement.cpp: Adapt to SVGTransformList API changes.
  11276. (WebCore::transformListFor):
  11277. (WebCore::SVGAnimateTransformElement::resetToBaseValue):
  11278. (WebCore::SVGAnimateTransformElement::calculateAnimatedValue):
  11279. (WebCore::SVGAnimateTransformElement::applyResultsToTarget):
  11280. * svg/SVGAnimatedTransformList.h: Added.
  11281. * svg/SVGGradientElement.cpp: Ditto.
  11282. (WebCore::SVGGradientElement::SVGGradientElement):
  11283. (WebCore::SVGGradientElement::parseMappedAttribute):
  11284. * svg/SVGGradientElement.h: Ditto.
  11285. * svg/SVGLinearGradientElement.cpp: Ditto.
  11286. (WebCore::SVGLinearGradientElement::collectGradientAttributes):
  11287. * svg/SVGMatrix.h: Added. SVGMatrix inherits from AffineTransform, and is only used in the bindings. It implements SVGs special requirements.
  11288. (WebCore::SVGMatrix::translate): Returns a copy of the matrix, not affecting the original matrix.
  11289. (WebCore::SVGMatrix::scale): Ditto.
  11290. (WebCore::SVGMatrix::scaleNonUniform): Ditto.
  11291. (WebCore::SVGMatrix::rotate): Ditto.
  11292. (WebCore::SVGMatrix::flipX): Ditto.
  11293. (WebCore::SVGMatrix::flipY): Ditto.
  11294. (WebCore::SVGMatrix::skewX): Ditto.
  11295. (WebCore::SVGMatrix::skewY): Ditto.
  11296. (WebCore::SVGMatrix::multiply): Ditto.
  11297. (WebCore::SVGMatrix::inverse): Ditto.
  11298. (WebCore::SVGMatrix::rotateFromVector): Dittto.
  11299. * svg/SVGMatrix.idl: Enable StrictTypeChecking/RequiresAllArguments=Raise on all attributes/functions.
  11300. * svg/SVGPatternElement.cpp: Adapt to SVGTransformList API changes.
  11301. (WebCore::SVGPatternElement::SVGPatternElement):
  11302. (WebCore::SVGPatternElement::parseMappedAttribute):
  11303. (WebCore::SVGPatternElement::collectPatternAttributes):
  11304. * svg/SVGPatternElement.h: Ditto.
  11305. * svg/SVGPoint.idl: Enable StrictTypeChecking/RequiresAllArguments=Raise for 'matrixTransform', now that SVGMatrix has been converted to the new scheme.
  11306. * svg/SVGRadialGradientElement.cpp: Adapt to SVGTransformList API changes.
  11307. (WebCore::SVGRadialGradientElement::collectGradientAttributes):
  11308. * svg/SVGSVGElement.cpp: Ditto.
  11309. (WebCore::SVGSVGElement::createSVGTransformFromMatrix):
  11310. (WebCore::SVGSVGElement::viewBoxToViewTransform):
  11311. * svg/SVGSVGElement.h: Ditto.
  11312. * svg/SVGStyledTransformableElement.cpp: Ditto.
  11313. (WebCore::SVGStyledTransformableElement::SVGStyledTransformableElement):
  11314. (WebCore::SVGStyledTransformableElement::animatedLocalTransform):
  11315. (WebCore::SVGStyledTransformableElement::parseMappedAttribute):
  11316. * svg/SVGStyledTransformableElement.h: Ditto.
  11317. * svg/SVGTextElement.cpp: Ditto.
  11318. (WebCore::SVGTextElement::SVGTextElement):
  11319. (WebCore::SVGTextElement::parseMappedAttribute):
  11320. (WebCore::SVGTextElement::animatedLocalTransform):
  11321. * svg/SVGTextElement.h: Ditto.
  11322. * svg/SVGTransform.cpp: Modernize code, inlined some getters.
  11323. (WebCore::SVGTransform::SVGTransform):
  11324. (WebCore::SVGTransform::setMatrix):
  11325. * svg/SVGTransform.h: Reindent header.
  11326. (WebCore::SVGTransform::type):
  11327. (WebCore::SVGTransform::svgMatrix):
  11328. (WebCore::SVGTransform::matrix):
  11329. (WebCore::SVGTransform::angle):
  11330. (WebCore::SVGTransform::rotationCenter):
  11331. (WebCore::SVGTransform::isValid):
  11332. (WebCore::operator==): Avoid function calls, make operator== a friend of SVGTransform, and compare members directly.
  11333. (WebCore::operator!=):
  11334. * svg/SVGTransform.idl:
  11335. * svg/SVGTransformList.cpp: Rewritten as plain Vector<SVGTransform>.
  11336. (WebCore::SVGTransformList::createSVGTransformFromMatrix):
  11337. (WebCore::SVGTransformList::consolidate):
  11338. (WebCore::SVGTransformList::concatenate):
  11339. (WebCore::SVGTransformList::valueAsString):
  11340. * svg/SVGTransformList.h:
  11341. (WebCore::SVGTransformList::SVGTransformList):
  11342. * svg/SVGTransformList.idl: Enable StrictTypeChecking/RequiresAllArguments=Raise on all attributes/functions.
  11343. * svg/SVGTransformable.cpp: Adapt to SVGTransformList API changes.
  11344. (WebCore::SVGTransformable::parseTransformAttribute):
  11345. * svg/SVGTransformable.h: Ditto.
  11346. * svg/SVGViewSpec.cpp: Ditto.
  11347. (WebCore::SVGViewSpec::SVGViewSpec):
  11348. (WebCore::SVGViewSpec::setTransform):
  11349. (WebCore::SVGViewSpec::parseViewSpec):
  11350. * svg/SVGViewSpec.h: Ditto.
  11351. (WebCore::SVGViewSpec::transform):
  11352. * svg/properties/SVGAnimatedListPropertyTearOff.h: Made constructor and members protected.
  11353. * svg/properties/SVGAnimatedPropertyMacros.h: Add new helper macro DECLARE_ANIMATED_TRANSFORM_LIST_PROPERTY. This is needed until we expand all macros.
  11354. * svg/properties/SVGAnimatedTransformListPropertyTearOff.h: Added. Extends SVGAnimatedListPropertyTearOff, returning SVGTransformListPropertyTearOff objects.
  11355. (WebCore::SVGAnimatedTransformListPropertyTearOff::baseVal):
  11356. (WebCore::SVGAnimatedTransformListPropertyTearOff::animVal):
  11357. (WebCore::SVGAnimatedTransformListPropertyTearOff::create):
  11358. (WebCore::SVGAnimatedTransformListPropertyTearOff::SVGAnimatedTransformListPropertyTearOff):
  11359. * svg/properties/SVGListPropertyTearOff.h: Made construct and members protected.
  11360. * svg/properties/SVGProperty.h: Declare commitChange() as pure virtual method.
  11361. * svg/properties/SVGPropertyTraits.h: Handle SVGTransformList.
  11362. * svg/properties/SVGStaticPropertyWithParentTearOff.h: Added. Same concept as JSSVGStaticPODTypeWrapperWithParent, used to expose SVGPropertyTearOffs for types
  11363. that are using this concept themselves. (SVGMatrix attribute of SVGTransform, both are POD types, using SVGPropertyTearOff).
  11364. (WebCore::SVGStaticPropertyWithParentTearOff::create):
  11365. (WebCore::SVGStaticPropertyWithParentTearOff::commitChange):
  11366. (WebCore::SVGStaticPropertyWithParentTearOff::SVGStaticPropertyWithParentTearOff):
  11367. * svg/properties/SVGTransformListPropertyTearOff.h: Added. Extends SVGListPropertyTearOff by two special SVGTransformList methods: consolidate and createSVGTransformFromMatrix.
  11368. (WebCore::SVGTransformListPropertyTearOff::create):
  11369. (WebCore::SVGTransformListPropertyTearOff::createSVGTransformFromMatrix):
  11370. (WebCore::SVGTransformListPropertyTearOff::consolidate):
  11371. (WebCore::SVGTransformListPropertyTearOff::SVGTransformListPropertyTearOff):
  11372. 2010-11-11 Alejandro G. Castro <alex@igalia.com>
  11373. Reviewed by Nikolas Zimmermann.
  11374. Fixed WebKitGTK gtk3 compilation.
  11375. * platform/gtk/WidgetRenderingContextGtk3.cpp:
  11376. (WebCore::WidgetRenderingContext::WidgetRenderingContext):
  11377. 2010-11-11 Dan Bernstein <mitz@apple.com>
  11378. Reverted r71975:71976. That change was wrong, and the tests caught it.
  11379. * platform/graphics/mac/ComplexTextController.h:
  11380. (WebCore::ComplexTextController::ComplexTextRun::create):
  11381. * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
  11382. (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun):
  11383. (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
  11384. 2010-11-11 Matthew Delaney <mdelaney@apple.com>
  11385. Reviewed by Dan Bernstein.
  11386. Fix LayoutTests/canvas/philip/tests/2d.drawImage.null.html
  11387. https://bugs.webkit.org/show_bug.cgi?id=48307
  11388. There are no new tests because this is a fix for a pre-existing failing test.)
  11389. * bindings/js/JSCanvasRenderingContext2DCustom.cpp: Corrected expection throwing cases to match up with spec.
  11390. 2010-11-10 Ryosuke Niwa <rniwa@webkit.org>
  11391. Reviewed by Adam Barth.
  11392. [HTML5] 10.2.8.4 Scripts that modify the page as it is being parsed
  11393. https://bugs.webkit.org/show_bug.cgi?id=49364
  11394. Fixed HTMLScriptRunner's executeScript to use the ScriptController of the frame to which script element belongs
  11395. as supposed to that of the frame associated with the HTMLScriptRunner.
  11396. See also: http://www.whatwg.org/specs/web-apps/current-work/#scripts-that-modify-the-page-as-it-is-being-parsed
  11397. Test: fast/parser/script-modify-page-outer.html
  11398. * html/parser/HTMLScriptRunner.cpp:
  11399. (WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent): Calls executeScript.
  11400. (WebCore::HTMLScriptRunner::executeScript): Uses the correct ScriptController instance.
  11401. (WebCore::HTMLScriptRunner::runScript): Call executeScript.
  11402. * html/parser/HTMLScriptRunner.h:
  11403. 2010-11-10 Dan Bernstein <mitz@apple.com>
  11404. Style fix I said I’d make then forgot to make.
  11405. * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
  11406. (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun):
  11407. 2010-11-10 Ned Holbrook <nholbrook@apple.com>
  11408. Reviewed by Dan Bernstein.
  11409. Allow for the possibility of CoreText generating multiple runs for a single text run.
  11410. https://bugs.webkit.org/show_bug.cgi?id=49353
  11411. * platform/graphics/mac/ComplexTextController.h:
  11412. (WebCore::ComplexTextController::ComplexTextRun::create):
  11413. * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
  11414. (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun):
  11415. (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
  11416. 2010-10-15 Martin Robinson <mrobinson@igalia.com>
  11417. Reviewed by Xan Lopez.
  11418. [GTK] Widgets do not support CSS transformations
  11419. https://bugs.webkit.org/show_bug.cgi?id=40139
  11420. Instead of rendering directly onto the target drawable when rendering
  11421. form controls on GTK+ 2.0, render onto an intermediate surface and use
  11422. cairo to blit the result back to the target surface. This has two
  11423. benefits. The first is that it always honors the current Cairo
  11424. transformation. The second is that since the intermediate drawable is
  11425. always a 32-bit GdkPixmap, we do not have to have a set of widgets
  11426. per-colormap any longer.
  11427. This change also begins the abstraction of widget rendering so that GTK+
  11428. 2 and GTK+ 3 can use the same code path. The WidgetRenderingContext will
  11429. eventually hide all version differences from RenderThemeGtk, which can
  11430. just focus on interpreting the GtkStyle properties.
  11431. * GNUmakefile.am: Add WidgetRenderinContext source files to the sources list.
  11432. * platform/graphics/cairo/PlatformRefPtrCairo.cpp:
  11433. (WTF::refPlatformPtr): Add a specialization for Cairo patterns.
  11434. (WTF::derefPlatformPtr): Ditto.
  11435. * platform/graphics/cairo/PlatformRefPtrCairo.h: Ditto.
  11436. * platform/gtk/RenderThemeGtk.cpp:
  11437. (WebCore::RenderThemeGtk::RenderThemeGtk): No longer keep a set of
  11438. widgets per-colormap for GTK+, instead just determine if we can use RGBA
  11439. colormaps and go from there.
  11440. (WebCore::RenderThemeGtk::~RenderThemeGtk): Ditto.
  11441. (WebCore::RenderThemeGtk::getIndicatorMetrics): Put the logic for
  11442. getting toggle button indicator metrics into this helper.
  11443. (WebCore::RenderThemeGtk::paintRenderObject): Now uses
  11444. WidgetRenderingContext to do widget rendering.
  11445. (WebCore::setToggleSize): Use the new getIndicatorMetrics helper.
  11446. * platform/gtk/RenderThemeGtk.h: Added a member to track whether or not
  11447. the widgets are using a RGBA colormap. Also remove a defunct Page*
  11448. member.
  11449. * platform/gtk/ScrollbarThemeGtk.cpp: Switch all widget drawing
  11450. operations to use WidgetRenderingContext.
  11451. (WebCore::ScrollbarThemeGtk::paintTrackBackground): Ditto.
  11452. (WebCore::ScrollbarThemeGtk::paintScrollbarBackground): Ditto.
  11453. (WebCore::ScrollbarThemeGtk::paintThumb): Ditto.
  11454. (WebCore::ScrollbarThemeGtk::paint): Ditto.
  11455. (WebCore::ScrollbarThemeGtk::paintButton): Ditto.
  11456. * platform/gtk/WidgetRenderingContext.h: Added.
  11457. * platform/gtk/WidgetRenderingContextGtk2.cpp: Added.
  11458. (WebCore::purgeScratchBuffer): Added, this is similar to the scratch
  11459. buffer implementation from ContextShadow.
  11460. (WebCore::PurgeScratchBufferTimer::fired): Ditto.
  11461. (WebCore::scheduleScratchBufferPurge): Ditto.
  11462. (WebCore::getExtraSpaceForWidget):
  11463. (WebCore::WidgetRenderingContext::WidgetRenderingContext): Added.
  11464. (WebCore::WidgetRenderingContext::~WidgetRenderingContext): Added.
  11465. (WebCore::WidgetRenderingContext::paintMozillaWidget): Added.
  11466. * platform/gtk/WidgetRenderingContextGtk3.cpp: Added.
  11467. (WebCore::WidgetRenderingContext::WidgetRenderingContext): Added.
  11468. (WebCore::~WidgetRenderingContext::WidgetRenderingContext): Added.
  11469. (WebCore::WidgetRenderingContext::paintMozillaWidget): Added.
  11470. 2010-11-10 Beth Dakin <bdakin@apple.com>
  11471. Reviewed by Simon Fraser.
  11472. Fix for https://bugs.webkit.org/show_bug.cgi?id=49356
  11473. -[WebView _scaleWebView:] should take and origin and scroll the
  11474. document
  11475. -and corresponding-
  11476. <rdar://problem/8643921>
  11477. Apply the scale to the origin, and set a new scroll position.
  11478. * page/Frame.cpp:
  11479. (WebCore::Frame::scalePage):
  11480. * page/Frame.h:
  11481. * WebCore.exp.in:
  11482. 2010-11-10 Dan Bernstein <mitz@apple.com>
  11483. Reviewed by Darin Adler.
  11484. REGRESSION (r71566): r71566 breaks bidi-control-chars-treated-as-ZWS.html
  11485. https://bugs.webkit.org/show_bug.cgi?id=49295
  11486. * platform/graphics/mac/ComplexTextControllerATSUI.cpp: Reverted to r71565. Eliding bidi
  11487. control characters from ATSUI is no longer necessary since ComplexTextController removes
  11488. any glyphs corresponding to them.
  11489. (WebCore::ComplexTextController::ComplexTextRun::overrideLayoutOperation):
  11490. (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun):
  11491. 2010-11-10 Pascal Massimino <pascal.massimino@gmail.com>
  11492. Reviewed by Adam Barth.
  11493. Simplify the alpha-detection code in png's decoding loop.
  11494. https://bugs.webkit.org/show_bug.cgi?id=49333
  11495. Added a special test for this case: png_per_row_alpha_decoding.html
  11496. * platform/image-decoders/png/PNGImageDecoder.cpp:
  11497. (WebCore::PNGImageDecoder::rowAvailable): modified loop.
  11498. 2010-11-10 Dan Bernstein <mitz@apple.com>
  11499. Reviewed by Simon Fraser.
  11500. <rdar://problem/8647848> REGRESSION (r68551): Spaces shown at soft hyphens with complex justification
  11501. https://bugs.webkit.org/show_bug.cgi?id=49352
  11502. Test: fast/text/justification-padding-mid-word.html
  11503. * platform/graphics/mac/ComplexTextController.cpp:
  11504. (WebCore::ComplexTextController::adjustGlyphsAndAdvances): Changed to add justification padding
  11505. and word spacing only at characters that are treated as space, instead of all characters that
  11506. use the space glyph (which includes characters treated as zero-width space as well).
  11507. 2010-11-10 Matthew Delaney <mdelaney@apple.com>
  11508. Reviewed by Darin Adler.
  11509. Crash in documentWillBecomeInactive() when closing window with Reader showing content with SVG
  11510. https://bugs.webkit.org/show_bug.cgi?id=49084
  11511. Manual test added.
  11512. * manual-tests/svg-deep-clone-to-new-doc.html: Added manual test for reproducing bug since an automated version proved to be a bit tough to craft up.
  11513. * svg/SVGSVGElement.cpp: Added in necessary document ownership transfer calls.
  11514. * svg/SVGSVGElement.h:
  11515. 2010-11-10 Pavel Feldman <pfeldman@chromium.org>
  11516. Reviewed by Yury Semikhatsky.
  11517. Web Inspector: Red error bubbles don't fit content.
  11518. https://bugs.webkit.org/show_bug.cgi?id=49305
  11519. * inspector/front-end/textViewer.css:
  11520. (.webkit-html-message-bubble):
  11521. 2010-11-10 Alexey Proskuryakov <ap@apple.com>
  11522. Release build fix.
  11523. * css/StyleSheet.cpp: isAcceptableStyleSheetParent() is a debug-only function.
  11524. 2010-11-08 Alexey Proskuryakov <ap@apple.com>
  11525. Reviewed by Darin Adler.
  11526. https://bugs.webkit.org/show_bug.cgi?id=45205
  11527. <rdar://problem/8391455> Detached elements shouldn't have style sheets.
  11528. Tests: fast/dom/StyleSheet/detached-style-2.html
  11529. fast/dom/StyleSheet/detached-style-pi.xhtml
  11530. fast/dom/StyleSheet/detached-style.html
  11531. fast/dom/StyleSheet/detached-style-pi-2.xhtml
  11532. * bindings/js/JSStyleSheetCustom.cpp: (WebCore::JSStyleSheet::markChildren):
  11533. There is no longer a need to mark owner nodes - StyleSheet->ownerNode() is only non-null when
  11534. the node is in document.
  11535. * css/StyleSheet.cpp: (WebCore::StyleSheet::StyleSheet): Added an assertion checking that
  11536. all nodes that can be StyleSheet parents have been verified.
  11537. * css/StyleSheet.h: (WebCore::StyleSheet::clearOwnerNode): Added.
  11538. * dom/ProcessingInstruction.cpp:
  11539. (WebCore::ProcessingInstruction::~ProcessingInstruction): Clear stylesheet's owner node. This
  11540. shouldn't have observable effect, since a processing instruction that is in document can only
  11541. be destroyed with document, and a reachable stylsheet keeps document alive.
  11542. (WebCore::ProcessingInstruction::removedFromDocument): Clear the relationship between node and style sheet when removed.
  11543. (WebCore::ProcessingInstruction::setCSSStyleSheet): If the element was removed during load, we still
  11544. don't want to create a style sheet.
  11545. * dom/StyleElement.cpp:
  11546. (WebCore::StyleElement::sheet): There is no reason for lazy creation. It was a wrong fix for
  11547. bug 14462, whose regression test still passes.
  11548. (WebCore::StyleElement::removedFromDocument): Clear the relationship between node and style sheet when removed.
  11549. (WebCore::StyleElement::finishParsingChildren): Don't call sheet(), it doens't have side effects any more.
  11550. (WebCore::StyleElement::createSheet): Assert that the element is in document. We never want
  11551. to create a style sheet for an element that isn't.
  11552. * dom/StyleElement.h: (WebCore::StyleElement::sheet): Made implementation inline, now that
  11553. it's a simple getter.
  11554. * html/HTMLLinkElement.cpp:
  11555. (WebCore::HTMLLinkElement::~HTMLLinkElement): Clear stylesheet's owner node.
  11556. (WebCore::HTMLLinkElement::process): Assert that there is no style sheet lingering for any reason.
  11557. (WebCore::HTMLLinkElement::removedFromDocument): Clear the relationship between node and style sheet when removed.
  11558. (WebCore::HTMLLinkElement::setCSSStyleSheet): If the element was removed during load, we still
  11559. don't want to create a style sheet.
  11560. * html/HTMLStyleElement.cpp: (WebCore::HTMLStyleElement::~HTMLStyleElement):
  11561. * html/HTMLStyleElement.h:
  11562. * svg/SVGStyleElement.cpp: (WebCore::SVGStyleElement::~SVGStyleElement):
  11563. * svg/SVGStyleElement.h:
  11564. Clear stylesheet's owner node. As above, this shouldn't have observable effect.
  11565. * xml/XSLTProcessor.h:
  11566. * xml/XSLTProcessor.cpp: (WebCore::XSLTProcessor::~XSLTProcessor):
  11567. * dom/Document.cpp: (WebCore::Document::~Document):
  11568. * css/CSSParser.cpp: (WebCore::CSSParser::parseSelector):
  11569. Assert that stylesheet won't outlive its owner node. We don't really use refcounting here.
  11570. 2010-11-10 Dan Bernstein <mitz@apple.com>
  11571. Reviewed by Dave Hyatt.
  11572. REGRESSION (r71566): r71566 breaks bidi-control-chars-treated-as-ZWS.html
  11573. https://bugs.webkit.org/show_bug.cgi?id=49295
  11574. * platform/graphics/mac/ComplexTextController.h: Added m_indexOffset.
  11575. * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
  11576. (WebCore::ComplexTextController::ComplexTextRun::overrideLayoutOperation): Use m_indexOffset
  11577. instead of computing the offset based on m_directionalOverride.
  11578. (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): Set m_indexOffset to
  11579. the offset between indices in m_characters and indices in the text passed to ATSUI.
  11580. 2010-11-10 Pavel Feldman <pfeldman@chromium.org>
  11581. Reviewed by Yury Semikhatsky.
  11582. Web Inspector: Gear menu floats to right edge and expands
  11583. to bottom of "Styles" section.
  11584. https://bugs.webkit.org/show_bug.cgi?id=49303
  11585. This fixes computed style's option wrapping to the next line.
  11586. * inspector/front-end/inspector.css:
  11587. (.sidebar-pane-subtitle):
  11588. 2010-11-10 Stephen White <senorblanco@chromium.org>
  11589. Reviewed by James Robinson.
  11590. Fix canvas.putImageData(canvas.getImageData(...)) to be lossless.
  11591. https://bugs.webkit.org/show_bug.cgi?id=49330
  11592. These cycles should be lossless for valid colours. A similar fix went
  11593. into the CG port at r32878.
  11594. Covered by canvas/philip/tests/2d.imageData.put.unchanged.html.
  11595. * platform/graphics/skia/ImageBufferSkia.cpp:
  11596. (WebCore::mulDiv255Ceil):
  11597. A helper function to do (a + b + 254) / 255 without a divide.
  11598. (WebCore::putImageData):
  11599. Use the above helper to round up when premultiplying alpha.
  11600. 2010-11-10 Csaba Osztrogonác <ossy@webkit.org>
  11601. Reviewed by David Hyatt.
  11602. HTML5 Ruby support should be mandatory feature
  11603. https://bugs.webkit.org/show_bug.cgi?id=49272
  11604. Remove Ruby as optional feature.
  11605. * Configurations/FeatureDefines.xcconfig:
  11606. * DerivedSources.make:
  11607. * GNUmakefile.am:
  11608. * WebCorePrefix.h: Touch WebCorePrefix.h to avoid incremental build failure on Windows.
  11609. * config.h: Touch config.h to avoid incremental build failure on Windows.
  11610. * features.pri:
  11611. * html/HTMLTagNames.in:
  11612. * rendering/RenderBlock.cpp: Remove ENABLE_RUBY guard.
  11613. (WebCore::canMergeContiguousAnonymousBlocks):
  11614. * rendering/RenderObject.cpp: Remove ENABLE_RUBY guard.
  11615. (WebCore::RenderObject::createObject):
  11616. * rendering/RenderRuby.cpp: Remove ENABLE_RUBY guard.
  11617. * rendering/RenderRuby.h: Remove ENABLE_RUBY guard.
  11618. * rendering/RenderRubyBase.cpp: Remove ENABLE_RUBY guard.
  11619. * rendering/RenderRubyBase.h: Remove ENABLE_RUBY guard.
  11620. * rendering/RenderRubyRun.cpp: Remove ENABLE_RUBY guard.
  11621. * rendering/RenderRubyRun.h: Remove ENABLE_RUBY guard.
  11622. * rendering/RenderRubyText.cpp: Remove ENABLE_RUBY guard.
  11623. * rendering/RenderRubyText.h: Remove ENABLE_RUBY guard.
  11624. 2010-11-10 Martin Robinson <mrobinson@igalia.com>
  11625. Reviewed by Xan Lopez.
  11626. [GTK] Complex text does not have full CSS text-shadow support
  11627. https://bugs.webkit.org/show_bug.cgi?id=45597
  11628. Add ContextShadow support to FontGtk, which enables non-solid shadows
  11629. for complex text rendering.
  11630. Test: platform/gtk/fonts/complex-text-shadows.html
  11631. * platform/graphics/gtk/FontGtk.cpp:
  11632. (WebCore::destroyPangoRegion): Added this helper, which helps reduce
  11633. the number of #ifdefs when dealing with GTK+ region type differences.
  11634. (WebCore::getPangoRegionExtents): Ditto.
  11635. (WebCore::drawGlyphsShadow): Added this helper which either renders
  11636. a solid shadow manually or uses ContextShadow to render a blurry shadow.
  11637. (WebCore::Font::drawComplexText): Use the new helpers.
  11638. 2010-11-10 Alejandro G. Castro <alex@igalia.com>
  11639. Reviewed by Martin Robinson.
  11640. [gtk] The revision r71528 causes crashes in GObjectEventListener
  11641. https://bugs.webkit.org/show_bug.cgi?id=49314
  11642. Moved the addition of the event listener to the node after calling
  11643. the constructor of the event listener. This is required beacuse
  11644. the addEventListener API receives the EventListener inside a
  11645. PassRefPtr.
  11646. * bindings/gobject/GObjectEventListener.cpp:
  11647. (WebCore::GObjectEventListener::GObjectEventListener):
  11648. * bindings/gobject/GObjectEventListener.h:
  11649. (WebCore::GObjectEventListener::addEventListener):
  11650. 2010-11-02 Alexander Pavlov <apavlov@chromium.org>
  11651. Reviewed by Pavel Feldman.
  11652. Web Inspector: Enable InspectorCSSAgent (not used by frontend for CSS editing yet)
  11653. https://bugs.webkit.org/show_bug.cgi?id=48834
  11654. Drive-by fix: use a single API method to retrieve all node-related styles instead of a bunch of separate calls.
  11655. Test: inspector/styles-new-API.html
  11656. * inspector/CodeGeneratorInspector.pm:
  11657. * inspector/Inspector.idl:
  11658. * inspector/InspectorCSSAgent.cpp:
  11659. (WebCore::InspectorCSSAgent::InspectorCSSAgent):
  11660. (WebCore::InspectorCSSAgent::setDOMAgent):
  11661. (WebCore::InspectorCSSAgent::reset):
  11662. (WebCore::InspectorCSSAgent::getStylesForNode2):
  11663. (WebCore::InspectorCSSAgent::getComputedStyleForNode2):
  11664. (WebCore::InspectorCSSAgent::addRule2):
  11665. (WebCore::InspectorCSSAgent::querySelectorAll):
  11666. * inspector/InspectorCSSAgent.h:
  11667. * inspector/InspectorController.cpp:
  11668. (WebCore::InspectorController::InspectorController):
  11669. (WebCore::InspectorController::connectFrontend):
  11670. (WebCore::InspectorController::releaseFrontendLifetimeAgents):
  11671. (WebCore::InspectorController::didCommitLoad):
  11672. * inspector/InspectorController.h:
  11673. (WebCore::InspectorController::cssAgent):
  11674. * inspector/InspectorDOMAgent.cpp:
  11675. * inspector/InspectorDOMAgent.h:
  11676. * inspector/InspectorStyleSheet.cpp:
  11677. (WebCore::InspectorStyle::setPropertyText):
  11678. (WebCore::InspectorStyle::styleText):
  11679. (WebCore::InspectorStyle::disableProperty):
  11680. (WebCore::InspectorStyle::populateAllProperties):
  11681. (WebCore::InspectorStyle::populateObjectWithStyleProperties):
  11682. (WebCore::InspectorStyleSheet::buildObjectForRule):
  11683. (WebCore::InspectorStyleSheet::fixUnparsedPropertyRanges):
  11684. (WebCore::InspectorStyleSheet::ensureSourceData):
  11685. (WebCore::InspectorStyleSheetForInlineStyle::text):
  11686. * inspector/InspectorStyleSheet.h:
  11687. (WebCore::InspectorStyleProperty::setRawTextFromStyleDeclaration):
  11688. (WebCore::InspectorStyleProperty::hasRawText):
  11689. 2010-11-10 Alexander Pavlov <apavlov@chromium.org>
  11690. Reviewed by Yury Semikhatsky.
  11691. Web Inspector: Move CSSStyleDeclaration from DOMAgent.js into CSSStyleModel.js
  11692. https://bugs.webkit.org/show_bug.cgi?id=49312
  11693. No new tests, as it's just code motion.
  11694. * inspector/front-end/CSSStyleModel.js:
  11695. (WebInspector.CSSStyleDeclaration):
  11696. (WebInspector.CSSStyleDeclaration.parsePayload):
  11697. (WebInspector.CSSStyleDeclaration.prototype.get allProperties):
  11698. (WebInspector.CSSStyleDeclaration.prototype.getLiveProperty):
  11699. (WebInspector.CSSStyleDeclaration.prototype.getPropertyValue):
  11700. (WebInspector.CSSStyleDeclaration.prototype.getPropertyPriority):
  11701. (WebInspector.CSSStyleDeclaration.prototype.getPropertyShorthand):
  11702. (WebInspector.CSSStyleDeclaration.prototype.isPropertyImplicit):
  11703. (WebInspector.CSSStyleDeclaration.prototype.styleTextWithShorthands):
  11704. (WebInspector.CSSStyleDeclaration.prototype.getLonghandProperties):
  11705. (WebInspector.CSSStyleDeclaration.prototype.getShorthandValue):
  11706. (WebInspector.CSSStyleDeclaration.prototype.getShorthandPriority):
  11707. (WebInspector.CSSStyleDeclaration.prototype.appendProperty):
  11708. (WebInspector.CSSStyleDeclaration.prototype.propertyAt):
  11709. (WebInspector.CSSRule):
  11710. (WebInspector.CSSRule.parsePayload):
  11711. (WebInspector.CSSRule.prototype.get isUserAgent):
  11712. (WebInspector.CSSRule.prototype.get isUser):
  11713. (WebInspector.CSSRule.prototype.get isViaInspector):
  11714. (WebInspector.CSSRule.prototype.get isRegular):
  11715. (WebInspector.CSSProperty):
  11716. (WebInspector.CSSProperty.parsePayload):
  11717. (WebInspector.CSSProperty.prototype.get propertyText):
  11718. (WebInspector.CSSProperty.prototype.get isLive):
  11719. (WebInspector.CSSProperty.prototype.get active):
  11720. (WebInspector.CSSProperty.prototype.get styleBased):
  11721. (WebInspector.CSSProperty.prototype.get inactive):
  11722. (WebInspector.CSSProperty.prototype.get disabled):
  11723. (WebInspector.CSSProperty.prototype.setText):
  11724. (WebInspector.CSSProperty.prototype.setValue):
  11725. (WebInspector.CSSProperty.prototype.setDisabled.callback):
  11726. (WebInspector.CSSProperty.prototype.setDisabled):
  11727. * inspector/front-end/DOMAgent.js:
  11728. 2010-11-10 Sheriff Bot <webkit.review.bot@gmail.com>
  11729. Unreviewed, rolling out r71733.
  11730. http://trac.webkit.org/changeset/71733
  11731. https://bugs.webkit.org/show_bug.cgi?id=49319
  11732. made qt bot crashy and sad (Requested by kling on #webkit).
  11733. * page/FrameView.cpp:
  11734. (WebCore::FrameView::windowClipRect):
  11735. 2010-11-10 Peter Rybin <peter.rybin@gmail.com>
  11736. Reviewed by Adam Barth.
  11737. HTML parser should provide script column position within HTML document to JavaScript engine
  11738. https://bugs.webkit.org/show_bug.cgi?id=45271
  11739. Replaces line number with TextPosition struct so that script engine
  11740. gets script starting line/column.
  11741. * ForwardingHeaders/wtf/text/TextPosition.h: Added.
  11742. * bindings/js/ScriptSourceCode.h:
  11743. (WebCore::ScriptSourceCode::ScriptSourceCode):
  11744. * bindings/v8/ScheduledAction.cpp:
  11745. (WebCore::ScheduledAction::ScheduledAction):
  11746. * bindings/v8/ScriptController.cpp:
  11747. (WebCore::ScriptController::eventHandlerPosition):
  11748. * bindings/v8/ScriptController.h:
  11749. * bindings/v8/ScriptEventListener.cpp:
  11750. (WebCore::createAttributeEventListener):
  11751. * bindings/v8/ScriptSourceCode.h:
  11752. (WebCore::ScriptSourceCode::ScriptSourceCode):
  11753. (WebCore::ScriptSourceCode::startLine):
  11754. (WebCore::ScriptSourceCode::startPosition):
  11755. * bindings/v8/V8LazyEventListener.cpp:
  11756. (WebCore::V8LazyEventListener::V8LazyEventListener):
  11757. (WebCore::V8LazyEventListener::prepareListenerObject):
  11758. * bindings/v8/V8LazyEventListener.h:
  11759. (WebCore::V8LazyEventListener::create):
  11760. * bindings/v8/V8Proxy.cpp:
  11761. (WebCore::V8Proxy::compileScript):
  11762. (WebCore::V8Proxy::evaluate):
  11763. (WebCore::V8Proxy::runScript):
  11764. * bindings/v8/V8Proxy.h:
  11765. * bindings/v8/WorkerContextExecutionProxy.cpp:
  11766. (WebCore::WorkerContextExecutionProxy::evaluate):
  11767. (WebCore::WorkerContextExecutionProxy::runScript):
  11768. * bindings/v8/WorkerContextExecutionProxy.h:
  11769. * bindings/v8/WorkerScriptController.cpp:
  11770. (WebCore::WorkerScriptController::evaluate):
  11771. * dom/PendingScript.cpp:
  11772. (WebCore::PendingScript::releaseElementAndClear):
  11773. * dom/PendingScript.h:
  11774. (WebCore::PendingScript::PendingScript):
  11775. (WebCore::PendingScript::operator=):
  11776. (WebCore::PendingScript::startingPosition):
  11777. * dom/ScriptableDocumentParser.h:
  11778. * dom/XMLDocumentParser.h:
  11779. * dom/XMLDocumentParserLibxml2.cpp:
  11780. (WebCore::XMLDocumentParser::XMLDocumentParser):
  11781. (WebCore::XMLDocumentParser::startElementNs):
  11782. (WebCore::XMLDocumentParser::endElementNs):
  11783. (WebCore::XMLDocumentParser::lineNumber):
  11784. (WebCore::XMLDocumentParser::columnNumber):
  11785. (WebCore::XMLDocumentParser::textPosition):
  11786. (WebCore::XMLDocumentParser::textPositionOneBased):
  11787. * dom/XMLDocumentParserQt.cpp:
  11788. (WebCore::XMLDocumentParser::XMLDocumentParser):
  11789. (WebCore::XMLDocumentParser::textPosition):
  11790. (WebCore::XMLDocumentParser::parseStartElement):
  11791. (WebCore::XMLDocumentParser::parseEndElement):
  11792. * html/parser/HTMLDocumentParser.cpp:
  11793. (WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder):
  11794. (WebCore::HTMLDocumentParser::textPosition):
  11795. * html/parser/HTMLDocumentParser.h:
  11796. * html/parser/HTMLScriptRunner.cpp:
  11797. (WebCore::HTMLScriptRunner::sourceFromPendingScript):
  11798. (WebCore::HTMLScriptRunner::execute):
  11799. (WebCore::HTMLScriptRunner::runScript):
  11800. * html/parser/HTMLScriptRunner.h:
  11801. * html/parser/HTMLTreeBuilder.cpp:
  11802. (WebCore::uninitializedPositionValue1):
  11803. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  11804. (WebCore::HTMLTreeBuilder::takeScriptToProcess):
  11805. (WebCore::HTMLTreeBuilder::processEndTag):
  11806. (WebCore::HTMLTreeBuilder::processScriptStartTag):
  11807. * html/parser/HTMLTreeBuilder.h:
  11808. 2010-11-10 Ilya Sherman <isherman@chromium.org>
  11809. Reviewed by Shinichiro Hamaji.
  11810. Fix autofill popup height computation -- take icon heights into account.
  11811. https://bugs.webkit.org/show_bug.cgi?id=49306
  11812. * platform/chromium/PopupMenuChromium.cpp:
  11813. (WebCore::PopupListBox::layout):
  11814. 2010-11-10 Kenneth Rohde Christiansen <kenneth@webkit.org>
  11815. Reviewed by Andreas Kling.
  11816. In paintEntireContents mode (used in combination with tiling) we
  11817. cannot clip to the actual visibleContentRect as the clipped regions
  11818. will not be updated again on scroll. If paintsEntireContents is
  11819. enabled, return the actual content rect.
  11820. * page/FrameView.cpp:
  11821. (WebCore::FrameView::windowClipRect):
  11822. 2010-11-10 Shinichiro Hamaji <hamaji@chromium.org>
  11823. Adding a manual test which I forgot to add in r71618.
  11824. [Chromium] display:none has no effect on <option> element
  11825. https://bugs.webkit.org/show_bug.cgi?id=49169
  11826. * manual-tests/display-none-option.html: Added.
  11827. 2010-11-10 Shane Stephens <shanestephens@google.com>
  11828. Reviewed by Dirk Schulze.
  11829. SVGTextElement supplemental transforms pre-multiplied but should be
  11830. post-multiplied in animatedLocalTransform
  11831. https://bugs.webkit.org/show_bug.cgi?id=48215
  11832. Test: svg/animations/animate-text-nested-transforms.svg
  11833. * svg/SVGTextElement.cpp:
  11834. (WebCore::SVGTextElement::animatedLocalTransform):
  11835. Switched order of multiplication. Note that due to a bug in
  11836. AffineTransform's operator* implementation the order of arguments is
  11837. reversed (see http://bugs.webkit.org/show_bug.cgi?id=48031).
  11838. 2010-11-09 Abhishek Arya <inferno@chromium.org>
  11839. Reviewed by Dan Bernstein.
  11840. Fieldsets avoid floats. Legend elements are expected to have their parent
  11841. as fieldset. When this not the case, floats get added incorrectly added to the
  11842. legend blocks. This patch tries to prevent those floats addition.
  11843. https://bugs.webkit.org/show_bug.cgi?id=49214
  11844. Test: fast/blockflow/overhanging-float-legend-crash.html
  11845. * rendering/RenderBox.cpp:
  11846. (WebCore::RenderBox::avoidsFloats):
  11847. * rendering/RenderObject.cpp:
  11848. (WebCore::RenderObject::isLegend):
  11849. * rendering/RenderObject.h:
  11850. 2010-11-10 Cris Neckar <cdn@chromium.org>
  11851. Reviewed by Nikolas Zimmermann.
  11852. Added check to ensure that svg viewport containers are not treated in the same way as generic svg containers.
  11853. https://bugs.webkit.org/show_bug.cgi?id=49188
  11854. Test: svg/dom/viewport-container-crash.svg
  11855. * rendering/SVGImageBufferTools.cpp:
  11856. (WebCore::SVGImageBufferTools::renderSubtreeToImageBuffer):
  11857. 2010-11-09 Gyuyoung Kim <gyuyoung.kim@samsung.com>
  11858. Reviewed by Eric Seidel.
  11859. [WML] Fix build breaks when WML is enabled.
  11860. https://bugs.webkit.org/show_bug.cgi?id=49168
  11861. The backForward() of Page class returns BackForwarddController class type.
  11862. So, WML classes need to include the BackForwardController.h file. And, select()
  11863. of RenderTextControl.h was removed. Thus, the select() should be replaced by
  11864. setSelectionRange().
  11865. * wml/WMLDoElement.cpp: Includes BackForwardController.h.
  11866. * wml/WMLDocument.cpp: ditto.
  11867. * wml/WMLInputElement.cpp:
  11868. (WebCore::WMLInputElement::select): Replaced by setSelectionRange().
  11869. * wml/WMLPageState.cpp: Includes BackForwardController.h.
  11870. * wml/WMLPrevElement.cpp: ditto.
  11871. 2010-11-09 Chris Rogers <crogers@google.com>
  11872. Reviewed by Kenneth Russell.
  11873. Add JavaScriptAudioNode files
  11874. https://bugs.webkit.org/show_bug.cgi?id=48875
  11875. No new tests since audio API is not yet implemented.
  11876. * webaudio/JavaScriptAudioNode.cpp: Added.
  11877. (WebCore::JavaScriptAudioNode::create):
  11878. (WebCore::JavaScriptAudioNode::JavaScriptAudioNode):
  11879. (WebCore::JavaScriptAudioNode::~JavaScriptAudioNode):
  11880. (WebCore::JavaScriptAudioNode::initialize):
  11881. (WebCore::JavaScriptAudioNode::uninitialize):
  11882. (WebCore::JavaScriptAudioNode::toJavaScriptAudioNode):
  11883. (WebCore::JavaScriptAudioNode::process):
  11884. (WebCore::JavaScriptAudioNode::fireProcessEventDispatch):
  11885. (WebCore::JavaScriptAudioNode::fireProcessEvent):
  11886. (WebCore::JavaScriptAudioNode::reset):
  11887. (WebCore::JavaScriptAudioNode::scriptExecutionContext):
  11888. * webaudio/JavaScriptAudioNode.h: Added.
  11889. (WebCore::JavaScriptAudioNode::eventTargetData):
  11890. (WebCore::JavaScriptAudioNode::ensureEventTargetData):
  11891. (WebCore::JavaScriptAudioNode::bufferSize):
  11892. (WebCore::JavaScriptAudioNode::doubleBufferIndex):
  11893. (WebCore::JavaScriptAudioNode::swapBuffers):
  11894. (WebCore::JavaScriptAudioNode::refEventTarget):
  11895. (WebCore::JavaScriptAudioNode::derefEventTarget):
  11896. * webaudio/JavaScriptAudioNode.idl: Added.
  11897. 2010-11-09 Nico Weber <thakis@chromium.org>
  11898. Reviewed by Kenneth Russell.
  11899. [Chromium] Text jitter during 2D CSS transform
  11900. https://bugs.webkit.org/show_bug.cgi?id=49224
  11901. Text subpixel rendering only works in AlphaPremultipliedFirst |
  11902. kCGBitmapByteOrder32Host contexts:
  11903. http://www.cocoabuilder.com/archive/cocoa/228931-sub-pixel-font-smoothing-with-cgbitmapcontext.html
  11904. Changing this has the added benefit that the data layout now matches
  11905. skia.
  11906. * platform/graphics/chromium/ContentLayerChromium.cpp:
  11907. (WebCore::ContentLayerChromium::SharedValues::SharedValues):
  11908. (WebCore::ContentLayerChromium::updateContents):
  11909. * platform/graphics/chromium/ImageLayerChromium.cpp:
  11910. (WebCore::ImageLayerChromium::updateContents):
  11911. * platform/graphics/chromium/LayerRendererChromium.cpp:
  11912. (WebCore::LayerRendererChromium::setRootLayerCanvasSize):
  11913. 2010-11-09 Helder Correia <helder@sencha.com>
  11914. Reviewed by Darin Adler.
  11915. Philip Canvas test 2d.path.rect.winding fails
  11916. https://bugs.webkit.org/show_bug.cgi?id=49225
  11917. Rect path direction is important for nonzero winding rule.
  11918. The rect(x, y, w, h) method must create a new subpath containing just the four points
  11919. (x, y), (x+w, y), (x+w, y+h), (x, y+h), with those four points connected by straight
  11920. lines, and must then mark the subpath as closed.
  11921. * html/canvas/CanvasRenderingContext2D.cpp:
  11922. (WebCore::CanvasRenderingContext2D::rect):
  11923. 2010-11-09 Fumitoshi Ukai <ukai@chromium.org>
  11924. Unreviewed build fix on Chromium/Win at r71711
  11925. RefCound.h reported an error that it cannot access private member
  11926. declared in class 'WebCore::FileWriterSync' at
  11927. WebCore::FileWriterSync::~FileWriterSync.
  11928. * fileapi/FileWriterSync.h: make destructor public
  11929. 2010-11-09 Chris Rogers <crogers@google.com>
  11930. Reviewed by James Robinson.
  11931. AudioFileReaderMac.cpp must include <CoreServices/CoreServices.h>
  11932. https://bugs.webkit.org/show_bug.cgi?id=49270
  11933. * platform/audio/mac/AudioFileReaderMac.cpp:
  11934. 2010-11-09 Eric Uhrhane <ericu@chromium.org>
  11935. Reviewed by David Levin.
  11936. Add idl and mock classes for FileWriterSync.
  11937. https://bugs.webkit.org/show_bug.cgi?id=48693
  11938. No new tests, as there's no functionality.
  11939. Build file additions.
  11940. * CMakeLists.txt:
  11941. * DerivedSources.cpp:
  11942. * DerivedSources.make:
  11943. * GNUmakefile.am:
  11944. * WebCore.gypi:
  11945. * WebCore.pro:
  11946. * WebCore.vcproj/WebCore.vcproj:
  11947. * WebCore.xcodeproj/project.pbxproj:
  11948. * bindings/scripts/CodeGeneratorV8.pm:
  11949. * fileapi/FileWriterSync.cpp: Added.
  11950. * fileapi/FileWriterSync.h: Added.
  11951. * fileapi/FileWriterSync.idl: Added.
  11952. 2010-11-09 Mario Sanchez Prada <msanchez@igalia.com>
  11953. Reviewed by Chris Fleizach.
  11954. [GTK] Improve accessibility of focusable lists
  11955. https://bugs.webkit.org/show_bug.cgi?id=25679
  11956. Emit the 'selected' and 'focused' events as needed.
  11957. This is the last bit of a series of patches to fix bug 25679,
  11958. which just ensures that the right signals are emmited whenever a
  11959. selection inside a listbox object changes, that is, the signals
  11960. 'state-changed::selected', 'state-changed::focused' and
  11961. 'focus-event', along with the right detail for each of them to
  11962. report if the focus/selection has been activated or not.
  11963. * accessibility/gtk/AXObjectCacheAtk.cpp:
  11964. (WebCore::notifyChildrenSelectionChange): New, takes care of
  11965. emitting all the needed signals when children selection has
  11966. changed, both from the point of view of the container and the
  11967. selected/unselected items inside of it. It currently supports
  11968. listboxes (html 'select' controls) only.
  11969. (WebCore::AXObjectCache::postPlatformNotification): Replaced some
  11970. old code with a simple call to notifyChildrenSelectionChange().
  11971. 2010-11-09 David Hyatt <hyatt@apple.com>
  11972. Reviewed by Dan Bernstein.
  11973. https://bugs.webkit.org/show_bug.cgi?id=49202
  11974. Make lists work with vertical text.
  11975. (1) Patch all the CSS rules in html.css so that the margins are directionally abstract.
  11976. (2) Add a transposedRect and transposedSize method to IntRect and IntSize for swapping x/y and width/height.
  11977. (3) Add adjustLineDirectionPosition as a helper for moving a line box only in the line direction.
  11978. (4) Fix a bug in addIntrudingFLoats uncovered by list test cases where the top margin of an element was being
  11979. incorrectly added to a float's physical left side instead of its top side.
  11980. (5) Make positioning and painting and selection of list markers account for all writing modes.
  11981. (6) Add helpers for setting the start and end margins directly in a RenderStyle, since lists do this to hack
  11982. marker margins before they have been calculated and set on the box.
  11983. Cloned a bunch of fast/lists tests into fast/lists/*-vertical.html versions.
  11984. * css/html.css:
  11985. * platform/graphics/IntRect.h:
  11986. (WebCore::IntRect::transposedRect):
  11987. * platform/graphics/IntSize.h:
  11988. (WebCore::IntSize::transposedSize):
  11989. * rendering/InlineBox.h:
  11990. (WebCore::InlineBox::adjustLineDirectionPosition):
  11991. * rendering/RenderBlock.cpp:
  11992. (WebCore::RenderBlock::addIntrudingFloats):
  11993. * rendering/RenderListItem.cpp:
  11994. (WebCore::getParentOfFirstLineBox):
  11995. (WebCore::RenderListItem::positionListMarker):
  11996. (WebCore::RenderListItem::paint):
  11997. * rendering/RenderListMarker.cpp:
  11998. (WebCore::RenderListMarker::localSelectionRect):
  11999. (WebCore::RenderListMarker::paint):
  12000. (WebCore::RenderListMarker::layout):
  12001. (WebCore::RenderListMarker::computePreferredLogicalWidths):
  12002. (WebCore::RenderListMarker::updateMargins):
  12003. (WebCore::RenderListMarker::getRelativeMarkerRect):
  12004. * rendering/style/RenderStyle.cpp:
  12005. (WebCore::RenderStyle::setMarginStart):
  12006. (WebCore::RenderStyle::setMarginEnd):
  12007. * rendering/style/RenderStyle.h:
  12008. 2010-11-09 Abhishek Arya <inferno@chromium.org>
  12009. Reviewed by Antti Koivisto.
  12010. Call to SVGSMILElement::applyResultsToTarget can blow away the SVGSMILElement.
  12011. Refptr the SVGSMILElement in the ResultElementMap to protect it.
  12012. https://bugs.webkit.org/show_bug.cgi?id=49274
  12013. Test: svg/animations/animate-update-crash.xhtml
  12014. * svg/animation/SMILTimeContainer.cpp:
  12015. (WebCore::SMILTimeContainer::updateAnimations):
  12016. 2010-11-09 Alexey Proskuryakov <ap@apple.com>
  12017. Reviewed by Darin Adler.
  12018. https://bugs.webkit.org/show_bug.cgi?id=49281
  12019. Remove broken code for embedded CSS xml-stylesheet
  12020. * dom/Document.cpp: (WebCore::Document::recalcStyleSelector): This made no sense, was untested,
  12021. and didn't match Firefox.
  12022. 2010-11-09 Brady Eidson <beidson@apple.com>
  12023. Reviewed by Darin Adler.
  12024. <rdar://problem/8613727> and https://bugs.webkit.org/show_bug.cgi?id=48720
  12025. Customizable context menu support in WebKit2.
  12026. Various WebCore support to allow WebKit2 to create new ContextMenuItems with
  12027. the information it has.
  12028. * WebCore.exp.in:
  12029. * platform/ContextMenu.h:
  12030. * platform/ContextMenuItem.h:
  12031. * platform/mac/ContextMenuItemMac.mm:
  12032. (WebCore::ContextMenuItem::ContextMenuItem):
  12033. (WebCore::ContextMenuItem::setSubMenu):
  12034. * platform/mac/ContextMenuMac.mm:
  12035. (WebCore::platformMenuDescription):
  12036. * platform/qt/ContextMenuItemQt.cpp:
  12037. (WebCore::ContextMenuItem::ContextMenuItem):
  12038. (WebCore::ContextMenuItem::setSubMenu):
  12039. * platform/qt/ContextMenuQt.cpp:
  12040. (WebCore::platformMenuDescription):
  12041. * platform/win/ContextMenuItemWin.cpp:
  12042. (WebCore::ContextMenuItem::ContextMenuItem):
  12043. (WebCore::ContextMenuItem::setSubMenu):
  12044. * platform/win/ContextMenuWin.cpp:
  12045. (WebCore::platformMenuDescription):
  12046. 2010-11-09 Sam Weinig <sam@webkit.org>
  12047. Reviewed by Anders Carlsson.
  12048. Need WebKit2 mechanism for getting the visible page text
  12049. <rdar://problem/8646928>
  12050. https://bugs.webkit.org/show_bug.cgi?id=49275
  12051. * WebCore.exp.in: Add necessary exports.
  12052. 2010-11-09 Simon Fraser <simon.fraser@apple.com>
  12053. Reviewed by James Robinson.
  12054. Make showLayerTree() more useful for debugging
  12055. https://bugs.webkit.org/show_bug.cgi?id=49273
  12056. Three things to make showLayerTree() more useful when called from gdb:
  12057. 1. Add showLayerTree(RenderObject*)
  12058. 2. Make it not update layout, so you can call it when debugging layout code.
  12059. 3. Add output of the 'needs layout' flags for each renderer.
  12060. * rendering/RenderLayer.cpp:
  12061. (showLayerTree):
  12062. * rendering/RenderLayer.h:
  12063. * rendering/RenderTreeAsText.cpp:
  12064. (WebCore::RenderTreeAsText::writeRenderObject):
  12065. (WebCore::externalRepresentation):
  12066. * rendering/RenderTreeAsText.h:
  12067. 2010-11-09 Chris Rogers <crogers@google.com>
  12068. Reviewed by James Robinson.
  12069. AudioChannel.h is including AudioFloatArray.h instead of AudioArray.h
  12070. https://bugs.webkit.org/show_bug.cgi?id=49269
  12071. * platform/audio/AudioChannel.h:
  12072. 2010-11-09 Dan Bernstein <mitz@apple.com>
  12073. Reviewed by Dave Hyatt.
  12074. Made tables hit-test correctly in all writing modes.
  12075. Part of: Make tables work with vertical text
  12076. https://bugs.webkit.org/show_bug.cgi?id=46417
  12077. Test: fast/blockflow/table-hit-test.html
  12078. * rendering/RenderTable.cpp:
  12079. (WebCore::RenderTable::nodeAtPoint):
  12080. * rendering/RenderTableRow.cpp:
  12081. (WebCore::RenderTableRow::nodeAtPoint):
  12082. * rendering/RenderTableSection.cpp:
  12083. (WebCore::RenderTableSection::nodeAtPoint):
  12084. 2010-11-09 Simon Fraser <simon.fraser@apple.com>
  12085. Reviewed by Darin Adler.
  12086. Caret fails to render with some combination of iframes and compositing
  12087. https://bugs.webkit.org/show_bug.cgi?id=49079
  12088. Because it's possible for the caret to jump between different
  12089. compositing layers and the view, caret repainting currently dirties
  12090. both the view and all compositing layers that intersect the caret rect,
  12091. via repaintRectangleInViewAndCompositedLayers().
  12092. When an iframe contained compositing layers, we erroneously skipped
  12093. invalidating the compositing layer inside the iframe, which caused
  12094. the caret to fail to blink.
  12095. * manual-tests/compositing/caret-in-compositing-frame.html: Added.
  12096. * manual-tests/compositing/resources/editable-compositing-subframe.html: Added.
  12097. * rendering/RenderView.cpp:
  12098. (WebCore::RenderView::repaintRectangleInViewAndCompositedLayers):
  12099. 2010-11-09 Peter Rybin <peter.rybin@gmail.com>
  12100. Reviewed by Adam Barth.
  12101. XMLDocumentParser gets deleted and then used in LayoutTest/fast/frames/set-parent-src-synchronously.xhtml on QT/Linux
  12102. https://bugs.webkit.org/show_bug.cgi?id=48643
  12103. * dom/XMLDocumentParserQt.cpp:
  12104. (WebCore::XMLDocumentParser::doWrite):
  12105. 2010-11-09 Simon Fraser <simon.fraser@apple.com>
  12106. Reviewed by Dave Hyatt.
  12107. https://bugs.webkit.org/show_bug.cgi?id=49197
  12108. <rdar://problem/8642746>
  12109. When starting an accelerated transform animation on a renderer, check
  12110. that it's a RenderBox before allow transform animations (and before
  12111. calling borderBoxRect()), because transforms are currently disallowed
  12112. on inline elements.
  12113. Test: animations/animation-on-inline-crash.html
  12114. * rendering/RenderLayerBacking.cpp:
  12115. (WebCore::RenderLayerBacking::startAnimation):
  12116. 2010-11-09 Simon Fraser <simon.fraser@apple.com>
  12117. Reviewed by Dave Hyatt.
  12118. https://bugs.webkit.org/show_bug.cgi?id=49204
  12119. <rdar://problem/8643412>
  12120. Add checks to the CSSStyleSelector code to ensure that the
  12121. casts to the various CSSValue types are safe, and do more
  12122. rigorous checking of the lengths of CSSValueLists, and
  12123. non-null members of Pair in some cases.
  12124. * css/CSSBorderImageValue.h:
  12125. (WebCore::CSSBorderImageValue::isBorderImageValue):
  12126. * css/CSSCursorImageValue.h:
  12127. (WebCore::CSSCursorImageValue::isCursorImageValue):
  12128. * css/CSSImageValue.h:
  12129. (WebCore::CSSImageValue::isImageValue):
  12130. * css/CSSReflectValue.h:
  12131. (WebCore::CSSReflectValue::isReflectValue):
  12132. * css/CSSStyleSelector.cpp:
  12133. (WebCore::CSSStyleSelector::resolveVariablesForDeclaration):
  12134. (WebCore::CSSRuleSet::addRulesFromSheet):
  12135. (WebCore::CSSRuleSet::addStyleRule):
  12136. (WebCore::applyCounterList):
  12137. (WebCore::CSSStyleSelector::applyProperty):
  12138. (WebCore::CSSStyleSelector::mapFillSize):
  12139. (WebCore::CSSStyleSelector::mapAnimationDelay):
  12140. (WebCore::CSSStyleSelector::mapAnimationDirection):
  12141. (WebCore::CSSStyleSelector::mapAnimationFillMode):
  12142. (WebCore::CSSStyleSelector::mapAnimationName):
  12143. (WebCore::CSSStyleSelector::mapAnimationPlayState):
  12144. (WebCore::CSSStyleSelector::mapNinePieceImage):
  12145. (WebCore::CSSStyleSelector::createTransformOperations):
  12146. * css/CSSValue.h:
  12147. (WebCore::CSSValue::isBorderImageValue):
  12148. (WebCore::CSSValue::isCursorImageValue):
  12149. (WebCore::CSSValue::isFontFamilyValue):
  12150. (WebCore::CSSValue::isReflectValue):
  12151. (WebCore::CSSValue::isShadowValue):
  12152. * css/FontFamilyValue.h:
  12153. (WebCore::FontFamilyValue::isFontFamilyValue):
  12154. * css/SVGCSSStyleSelector.cpp:
  12155. (WebCore::CSSStyleSelector::applySVGProperty):
  12156. * css/ShadowValue.h:
  12157. (WebCore::ShadowValue::isShadowValue):
  12158. * platform/graphics/transforms/TransformOperations.h:
  12159. (WebCore::TransformOperations::clear):
  12160. 2010-11-09 Ben Murdoch <benm@google.com>
  12161. Reviewed by Steve Block.
  12162. Android is missing implementation of V8GCController::checkMemoryUsage
  12163. https://bugs.webkit.org/show_bug.cgi?id=49255
  12164. This patch adds the necessary code to WebCore to implement the
  12165. functionality. The implementation of the PlatformBridge on Android
  12166. does not live upstream yet, so not patching that here.
  12167. No new test as this is a platform specific change on Android.
  12168. * bindings/v8/V8GCController.cpp:
  12169. (WebCore::V8GCController::checkMemoryUsage): Implement on Android.
  12170. * platform/android/PlatformBridge.h: Add necessary methods to read
  12171. device specific memory usage and constraints.
  12172. 2010-11-09 Andreas Kling <kling@webkit.org>
  12173. Reviewed by Kenneth Rohde Christiansen.
  12174. ScrollView::updateScrollbars() shouldn't do anything when scrolling is delegated.
  12175. * platform/ScrollView.cpp:
  12176. (WebCore::ScrollView::updateScrollbars):
  12177. 2010-11-09 Steve Block <steveblock@google.com>
  12178. Reviewed by Andreas Kling.
  12179. Unused parameter warning causes JSC build failure with deviceorientation
  12180. https://bugs.webkit.org/show_bug.cgi?id=49251
  12181. No new tests, build fix only.
  12182. * bindings/js/JSDeviceMotionEventCustom.cpp:
  12183. (WebCore::JSDeviceMotionEvent::interval):
  12184. * bindings/js/JSDeviceOrientationEventCustom.cpp:
  12185. (WebCore::JSDeviceOrientationEvent::alpha):
  12186. (WebCore::JSDeviceOrientationEvent::beta):
  12187. (WebCore::JSDeviceOrientationEvent::gamma):
  12188. 2010-11-09 Renata Hodovan <reni@webkit.org>
  12189. Reviewed by Nikolas Zimmermann.
  12190. SVGFETileElement doesn't support dynamic invalidation, when attributes change.
  12191. https://bugs.webkit.org/show_bug.cgi?id=49247
  12192. The dynamic changes are captured by the svgAttributeChanged function. Invalidate the filter primitive if necessary.
  12193. Tests: svg/dynamic-updates/SVGFETileElement-dom-in-attr.html
  12194. svg/dynamic-updates/SVGFETileElement-svgdom-in-prop.html
  12195. * svg/SVGFETileElement.cpp:
  12196. (WebCore::SVGFETileElement::svgAttributeChanged):
  12197. * svg/SVGFETileElement.h:
  12198. 2010-11-09 Jenn Braithwaite <jennb@chromium.org>
  12199. Reviewed by Dmitry Titov.
  12200. Update ProgressTracker when moving a frame between documents
  12201. https://bugs.webkit.org/show_bug.cgi?id=48368
  12202. No new tests. andersca informs me it's not possible to test
  12203. ProgressTracker changes via layouttests. Review extra carefully...
  12204. * loader/DocumentLoader.cpp:
  12205. (WebCore::DocumentLoader::transferLoadingResourcesFromPage):
  12206. Changed to use FrameLoader to deliver the notification to the
  12207. client via the notifier.
  12208. * loader/FrameLoader.cpp:
  12209. (WebCore::FrameLoader:;transferLoadingResourcesFromPage):
  12210. Update old and new progress tracker about frame progress.
  12211. (WebCore::FrameLoader::dispatchTransferLoadingResourceFromPage):
  12212. Added to route notification via the notifier.
  12213. * loader/FrameLoader.h:
  12214. * loader/ProgressTracker.cpp:
  12215. (WebCore::ProgressTracker::completeProgress):
  12216. Comment change only.
  12217. * loader/ResourceLoadNotifier.cpp:
  12218. (WebCore::ResourceLoadNotifier::dispatchTransferLoadingResourceFromPage):
  12219. Added to provide one place to notify client and progress tracker -
  12220. and probably inspector controller (separate patch).
  12221. * loader/ResourceLoadNotifier.h:
  12222. 2010-11-09 Dai Mikurube <dmikurube@google.com>
  12223. Reviewed by Kent Tamura.
  12224. Too precise serialization from floating point number to string for "number" input elements
  12225. https://bugs.webkit.org/show_bug.cgi?id=48308
  12226. Modified to consider decimal places when handling step and base in applyStep().
  12227. * html/HTMLInputElement.cpp: Considering decimal places of the given "step" attribtue.
  12228. (WebCore::HTMLInputElement::getAllowedValueStep):
  12229. (WebCore::HTMLInputElement::getAllowedValueStepWithDecimalPlaces):
  12230. (WebCore::HTMLInputElement::applyStep):
  12231. * html/HTMLInputElement.h:
  12232. * html/InputType.cpp: Added virtual functions for decimal places and an acceptable error.
  12233. (WebCore::InputType::stepBaseWithDecimalPlaces):
  12234. (WebCore::InputType::acceptableError):
  12235. (WebCore::InputType::parseToDoubleWithDecimalPlaces):
  12236. * html/InputType.h:
  12237. * html/NumberInputType.cpp:
  12238. (WebCore::NumberInputType::stepMismatch): Using the virtual function acceptableError().
  12239. (WebCore::NumberInputType::stepBaseWithDecimalPlaces): Considering decimal places of the given "base" attribute.
  12240. (WebCore::NumberInputType::parseToDoubleWithDecimalPlaces):
  12241. (WebCore::NumberInputType::acceptableError): Concrete acceptableError() for the number type.
  12242. * html/NumberInputType.h:
  12243. * html/parser/HTMLParserIdioms.cpp:
  12244. (WebCore::parseToDoubleForNumberTypeWithDecimalPlaces): Parsing numbers with decimal places.
  12245. * html/parser/HTMLParserIdioms.h:
  12246. 2010-11-09 Yuzo Fujishima <yuzo@google.com>
  12247. Reviewed by Shinichiro Hamaji.
  12248. Fix for Bug 48984 - [Chromium] @media print crash due to paged media support
  12249. Page context has been inheriting from document element style that becomes null if display property is none.
  12250. It should inherit from document style instead to properly handle direction property (and to avoid the null reference).
  12251. https://bugs.webkit.org/show_bug.cgi?id=48984
  12252. Test: printing/page-format-data-display-none.html
  12253. * css/CSSStyleSelector.cpp:
  12254. (WebCore::CSSStyleSelector::styleForPage): Page context inherits from
  12255. document style.
  12256. 2010-11-09 Chris Rogers <crogers@google.com>
  12257. Reviewed by Kenneth Russell.
  12258. Add custom bindings for AudioContext
  12259. https://bugs.webkit.org/show_bug.cgi?id=49115
  12260. No new tests since audio API is not yet implemented.
  12261. * bindings/js/JSAudioContextCustom.cpp: Added.
  12262. (WebCore::JSAudioContextConstructor::constructJSAudioContext):
  12263. * bindings/v8/custom/V8AudioContextCustom.cpp: Added.
  12264. (WebCore::V8AudioContext::constructorCallback):
  12265. 2010-11-09 Shinichiro Hamaji <hamaji@chromium.org>
  12266. Reviewed by Dimitri Glazkov.
  12267. [Chromium] display:none has no effect on <option> element
  12268. https://bugs.webkit.org/show_bug.cgi?id=49169
  12269. Added a manual test because it's hard to test the content of
  12270. <option> element.
  12271. * manual-tests/display-none-option.html: Added.
  12272. * platform/PopupMenuStyle.h:
  12273. (WebCore::PopupMenuStyle::PopupMenuStyle):
  12274. (WebCore::PopupMenuStyle::isDisplayNone):
  12275. * platform/chromium/PopupMenuChromium.cpp:
  12276. (WebCore::PopupListBox::getRowHeight):
  12277. (WebCore::PopupListBox::layout):
  12278. * rendering/RenderMenuList.cpp:
  12279. (WebCore::RenderMenuList::itemStyle):
  12280. (WebCore::RenderMenuList::menuStyle):
  12281. * rendering/RenderTextControlSingleLine.cpp:
  12282. (WebCore::RenderTextControlSingleLine::menuStyle):
  12283. 2010-11-09 Chris Rogers <crogers@google.com>
  12284. Reviewed by Kenneth Russell.
  12285. audio engine: add audio resources abstraction
  12286. https://bugs.webkit.org/show_bug.cgi?id=34660
  12287. No new tests since audio API is not yet implemented.
  12288. * platform/audio/AudioBus.h:
  12289. * platform/audio/HRTFElevation.cpp:
  12290. (WebCore::HRTFElevation::calculateKernelsForAzimuthElevation):
  12291. (WebCore::HRTFElevation::createByInterpolatingSlices):
  12292. * platform/audio/mac/AudioBusMac.mm: Added.
  12293. (WebCore::AudioBus::loadPlatformResource):
  12294. 2010-11-09 James Simonsen <simonjam@chromium.org>
  12295. Reviewed by Dimitri Glazkov.
  12296. [Web Timing] Remove requestEnd
  12297. https://bugs.webkit.org/show_bug.cgi?id=48924
  12298. * page/Timing.cpp:
  12299. * page/Timing.h:
  12300. * page/Timing.idl:
  12301. 2010-11-09 Sam Magnuson <smagnuson@netflix.com>
  12302. Reviewed by Andreas Kling.
  12303. [Qt] image borders do not render correctly
  12304. https://bugs.webkit.org/show_bug.cgi?id=49191
  12305. Test: fast/borders/border-image-01.html
  12306. * platform/graphics/qt/ImageQt.cpp:
  12307. (WebCore::Image::drawPattern):
  12308. 2010-11-08 James Simonsen <simonjam@chromium.org>
  12309. Reviewed by Dimitri Glazkov.
  12310. [Web Timing] Split domContentLoaded into start/end
  12311. https://bugs.webkit.org/show_bug.cgi?id=48920
  12312. * dom/Document.cpp:
  12313. (WebCore::Document::finishedParsing):
  12314. * dom/DocumentTiming.h:
  12315. (WebCore::DocumentTiming::DocumentTiming):
  12316. * page/Timing.cpp:
  12317. (WebCore::Timing::domContentLoadedStart):
  12318. (WebCore::Timing::domContentLoadedEnd):
  12319. * page/Timing.h:
  12320. * page/Timing.idl:
  12321. 2010-11-08 Nate Chapin <japhet@chromium.org>
  12322. Reviewed by Adam Barth.
  12323. Call ApplicationCacheHost::maybeLoadResource() in
  12324. ResourceLoader::start() instead of ResourceLoader::load().
  12325. maybeLoadResource() might mutate the ResourceRequest, and
  12326. in its current location any modifications are lost.
  12327. https://bugs.webkit.org/show_bug.cgi?id=49221
  12328. Fixes a couple of http/tests/appcache tests
  12329. failing on chromium.
  12330. * loader/ResourceLoader.cpp:
  12331. (WebCore::ResourceLoader::load):
  12332. (WebCore::ResourceLoader::start):
  12333. 2010-11-08 Chang Shu <chang.shu@nokia.com>
  12334. Reviewed by Antonio Gomes.
  12335. [GTK] Use Space to toggle arrow key handling for selection change or
  12336. spatial navigation. Put the logic in common code to pass both Qt and
  12337. GTK. Mac won't work because arrow keys trigger the popup.
  12338. https://bugs.webkit.org/show_bug.cgi?id=49150
  12339. Existing test: fast/events/spatial-navigation/snav-single-select.html
  12340. * dom/SelectElement.cpp:
  12341. (WebCore::SelectElement::menuListDefaultEventHandler):
  12342. 2010-11-08 Jenn Braithwaite <jennb@chromium.org>
  12343. Reviewed by Pavel Feldman.
  12344. _bindResourceURL in ResourceManager.js may not add resource to map
  12345. https://bugs.webkit.org/show_bug.cgi?id=49088
  12346. No new tests. pfeldman working on better test harness and tests.
  12347. * inspector/front-end/ResourceManager.js:
  12348. (WebInspector.ResourceManager.prototype._bindResourceURL):
  12349. 2010-11-08 John Knottenbelt <jknotten@chromium.org>
  12350. Reviewed by Steve Block.
  12351. Convert to and from DOMTimeStamp with converter functions.
  12352. This is a refactoring only, covered by existing layout tests.
  12353. https://bugs.webkit.org/show_bug.cgi?id=49066
  12354. * GNUmakefile.am:
  12355. * WebCore.gypi:
  12356. * WebCore.pro:
  12357. * WebCore.vcproj/WebCore.vcproj:
  12358. * WebCore.xcodeproj/project.pbxproj:
  12359. * dom/DOMTimeStamp.h: Added.
  12360. (WebCore::convertSecondsToDOMTimeStamp):
  12361. (WebCore::convertDOMTimeStampToSeconds):
  12362. * dom/Event.cpp:
  12363. (WebCore::Event::Event):
  12364. * dom/Event.h:
  12365. * page/Geolocation.cpp:
  12366. (WebCore::Geolocation::haveSuitableCachedPosition):
  12367. * platform/android/GeolocationServiceAndroid.cpp:
  12368. (WebCore::GeolocationServiceAndroid::isPositionMoreTimely):
  12369. 2010-11-08 Ryosuke Niwa <rniwa@webkit.org>
  12370. Unreviewed build fix for Chromium Mac for r71590.
  12371. * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
  12372. (WebCore::provideStringAndAttributes):
  12373. 2010-11-08 Anton Muhin <antonm@chromium.org>
  12374. Reviewed by Nate Chapin.
  12375. [v8] Get rid of automatically generated named property getter for classes with namedItem method
  12376. https://bugs.webkit.org/show_bug.cgi?id=48770
  12377. * bindings/scripts/CodeGeneratorV8.pm:
  12378. * bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
  12379. 2010-11-08 Ned Holbrook <nholbrook@apple.com>
  12380. Reviewed by Adam Barth.
  12381. Avoid CFAttributedString creation in ComplexTextController by adopting UniChar provider SPI.
  12382. https://bugs.webkit.org/show_bug.cgi?id=48886
  12383. * WebCore.exp.in:
  12384. * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
  12385. (WebCore::provideStringAndAttributes):
  12386. (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
  12387. * platform/mac/WebCoreSystemInterface.h:
  12388. * platform/mac/WebCoreSystemInterface.mm:
  12389. 2010-11-08 David Hyatt <hyatt@apple.com>
  12390. Reviewed by Simon Fraser.
  12391. https://bugs.webkit.org/show_bug.cgi?id=49228
  12392. REGRESSION: caret too short when a positive line height is specified. Now that lineTop no longer
  12393. accidentally incorporates the top leading, we need to use selectionTop/Bottom for the caret rect.
  12394. * rendering/RenderText.cpp:
  12395. (WebCore::RenderText::localCaretRect):
  12396. 2010-11-08 Pierre-Antoine LaFayette <pierre.lafayette@gmail.com>
  12397. Reviewed by Darin Fisher.
  12398. [chromium] Adding hasUserGesture flag to the ResourceRequest
  12399. https://bugs.webkit.org/show_bug.cgi?id=37057
  12400. This flag is to be used on the browser side to indicate when a
  12401. download has been user initiated.
  12402. No new tests. This change will be tested through a browser UI test.
  12403. * platform/network/chromium/ResourceRequest.h:
  12404. (WebCore::ResourceRequest::ResourceRequest):
  12405. (WebCore::ResourceRequest::hasUserGesture):
  12406. (WebCore::ResourceRequest::setHasUserGesture):
  12407. 2010-11-08 Chris Rogers <crogers@google.com>
  12408. Reviewed by Kenneth Russell.
  12409. Remove obsolete PASSTHROUGH and MATRIXMIX panner mode
  12410. https://bugs.webkit.org/show_bug.cgi?id=49087
  12411. No new tests since audio API is not yet implemented.
  12412. * platform/audio/Panner.cpp:
  12413. (WebCore::Panner::create):
  12414. * platform/audio/Panner.h:
  12415. * webaudio/AudioPannerNode.h:
  12416. * webaudio/AudioPannerNode.idl:
  12417. 2010-11-08 Patrick Gansterer <paroga@webkit.org>
  12418. Reviewed by Adam Roben.
  12419. Merge EditorWinCE.cpp into EditorWin.cpp
  12420. https://bugs.webkit.org/show_bug.cgi?id=49095
  12421. * platform/win/EditorWin.cpp:
  12422. (WebCore::Editor::newGeneralClipboard):
  12423. * platform/wince/EditorWinCE.cpp: Removed.
  12424. 2010-11-08 David Hyatt <hyatt@apple.com>
  12425. Reviewed by Simon Fraser.
  12426. https://bugs.webkit.org/show_bug.cgi?id=49217
  12427. Fix coordinate space mismatch in RenderReplaced and make sure RenderText retains its old behavior of
  12428. preferring later lines when there is overlap.
  12429. * rendering/RenderReplaced.cpp:
  12430. (WebCore::RenderReplaced::positionForPoint):
  12431. * rendering/RenderText.cpp:
  12432. (WebCore::RenderText::positionForPoint):
  12433. 2010-11-08 Steve Block <steveblock@google.com>
  12434. Reviewed by David Levin.
  12435. Building for Android generates several compiler warnings
  12436. https://bugs.webkit.org/show_bug.cgi?id=49175
  12437. Fixes these warnings, most of which are trivial.
  12438. - PREFIX_FOR_WEBCORE was previously required for STL's algorithm, but is no
  12439. longer. See
  12440. http://android.git.kernel.org/?p=platform/external/webkit.git;a=commit;h=a47ab5294213cca2741f453b450b02666e08cac8
  12441. - The definition of EXPORT is required only for the JNI entry point in
  12442. WebKit/android, so does not need to be in WebCorePrefix.h
  12443. No new tests, fixes compile warnings only.
  12444. * WebCorePrefix.h:
  12445. * bridge/jni/jsc/JNIUtilityPrivate.cpp:
  12446. (JSC::Bindings::convertValueToJValue):
  12447. * platform/android/FileSystemAndroid.cpp:
  12448. (WebCore::listDirectory):
  12449. 2010-11-08 Dan Bernstein <mitz@apple.com>
  12450. Reviewed by Darin Adler.
  12451. <rdar://problem/8119781> Crash zooming into Word document at office.live.com
  12452. https://bugs.webkit.org/show_bug.cgi?id=49203
  12453. Test: fast/css/zoom-change-triggering-layout.html
  12454. RenderBox::styleDidChange() was calling scrollLeft() and scrollTop(), whose RenderTextControlSingleLine
  12455. overrides can trigger layout.
  12456. * rendering/RenderBox.cpp:
  12457. (WebCore::RenderBox::styleDidChange): Use the layer directly for updating the scroll offsets when
  12458. the zoom factor changes.
  12459. 2010-11-08 David Hyatt <hyatt@apple.com>
  12460. Reviewed by Simon Fraser.
  12461. https://bugs.webkit.org/show_bug.cgi?id=48587
  12462. Make Ruby work with vertical text. Ruby already nearly does work. The only big issue I found was with
  12463. flipped lines writing modes. Make sure to mutate the writing-mode of the RenderRubyRun to ensure that
  12464. the ruby text is on the correct side of the ruby base.
  12465. Added fast/blockflow tests of the various writing modes.
  12466. * rendering/RenderBlock.cpp:
  12467. (WebCore::RenderBlock::baselinePosition):
  12468. (WebCore::RenderBlock::firstLineBoxBaseline):
  12469. (WebCore::RenderBlock::lastLineBoxBaseline):
  12470. * rendering/RenderRubyRun.cpp:
  12471. (WebCore::RenderRubyRun::staticCreateRubyRun):
  12472. 2010-11-08 Brent Fulgham <bfulgham@webkit.org>
  12473. Unreviewed build correction after @70369/@70846.
  12474. Please use PLATFORM(CG) to define CG-specific code, not
  12475. PLATFORM(CF).
  12476. * platform/image-decoders/ImageDecoder.cpp:
  12477. * platform/image-decoders/ImageDecoder.h:
  12478. 2010-11-08 James Robinson <jamesr@chromium.org>
  12479. Reviewed by Dimitri Glazkov.
  12480. Input element with inner spin button set to display:none causes crash
  12481. https://bugs.webkit.org/show_bug.cgi?id=49121
  12482. Null check the inner spin button's renderer before dereferencing it.
  12483. Test: fast/forms/input-number-spinbutton-crash.html
  12484. * rendering/RenderTextControlSingleLine.cpp:
  12485. (WebCore::RenderTextControlSingleLine::forwardEvent):
  12486. 2010-11-08 Xiaomei Ji <xji@chromium.org>
  12487. Reviewed by Dan Bernstein.
  12488. Fix Unicode explicit bidi control characters are removed in editing operations,
  12489. such as insert/copy/cut/paste.
  12490. https://bugs.webkit.org/show_bug.cgi?id=25321
  12491. Unicode explicit bidi control characters were excluded in BidiRun and
  12492. consequently from InlineTextBoxes due to their effect on rendering complex
  12493. text with ATSUI.
  12494. The fix is including those characters in BidiRun and remove them from
  12495. ComplexTextRun with ATSUI.
  12496. Test: editing/inserting/insert-paste-bidi-control.html
  12497. fast/text/atsui-bidi-control.html
  12498. * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
  12499. (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun):
  12500. * platform/text/BidiResolver.h:
  12501. (WebCore::::checkDirectionInLowerRaiseEmbeddingLevel):
  12502. (WebCore::::lowerExplicitEmbeddingLevel):
  12503. (WebCore::::raiseExplicitEmbeddingLevel):
  12504. (WebCore::::createBidiRunsForLine):
  12505. 2010-11-08 David Hyatt <hyatt@apple.com>
  12506. Reviewed by Dan Bernstein.
  12507. https://bugs.webkit.org/show_bug.cgi?id=49126
  12508. RenderBlock::positionForPoint is not writing-mode aware. Patch the function to examine lines in the correct
  12509. writing-mode direction. Patched and renamed a number of helpers used by positionForPoint.
  12510. Fixed a bug with RenderReplaced's positionForPoint. There was a coordinate space mismatch between what the
  12511. function expected (local coordinates) and what was passed in (containing block coords), which meant the function didn't even work.
  12512. Fixed a bug with the propagation of selection state on RenderReplaced to its containing block. The bit double propagated
  12513. because both the base class function and the derived class function did the propagation, and the setter function did not
  12514. do the right thing if this happened.
  12515. Patched the localSelectionRect method on RenderReplaced so that selection draws in the right place in all writing modes.
  12516. Added new tests of positionForPoint and replaced elements in fast/blockflow.
  12517. * editing/visible_units.cpp:
  12518. (WebCore::previousLinePosition):
  12519. (WebCore::nextLinePosition):
  12520. * platform/graphics/IntPoint.h:
  12521. (WebCore::IntPoint::transpose):
  12522. * rendering/InlineBox.cpp:
  12523. (WebCore::InlineBox::paint):
  12524. * rendering/RenderBlock.cpp:
  12525. (WebCore::RenderBlock::nodeAtPoint):
  12526. (WebCore::RenderBlock::hitTestFloats):
  12527. (WebCore::positionForPointRespectingEditingBoundaries):
  12528. (WebCore::RenderBlock::positionForPointWithInlineChildren):
  12529. (WebCore::RenderBlock::positionForPoint):
  12530. * rendering/RenderReplaced.cpp:
  12531. (WebCore::RenderReplaced::positionForPoint):
  12532. (WebCore::RenderReplaced::localSelectionRect):
  12533. (WebCore::RenderReplaced::setSelectionState):
  12534. * rendering/RenderReplaced.h:
  12535. * rendering/RenderText.cpp:
  12536. (WebCore::RenderText::positionForPoint):
  12537. * rendering/RootInlineBox.cpp:
  12538. (WebCore::RootInlineBox::closestLeafChildForLogicalLeftPosition):
  12539. * rendering/RootInlineBox.h:
  12540. 2010-11-08 Nate Chapin <japhet@chromium.org>
  12541. Reviewed by Alexey Proskuryakov.
  12542. Move connection-per-host counting and request prioritization out
  12543. of Loader and down to the ResourceLoader level.
  12544. https://bugs.webkit.org/show_bug.cgi?id=27165
  12545. Refactor only, so no new tests.
  12546. * CMakeLists.txt:
  12547. * GNUmakefile.am:
  12548. * WebCore.exp.in:
  12549. * WebCore.gypi:
  12550. * WebCore.pro:
  12551. * WebCore.vcproj/WebCore.vcproj:
  12552. * WebCore.xcodeproj/project.pbxproj:
  12553. * dom/ContainerNode.cpp:
  12554. (WebCore::ContainerNode::suspendPostAttachCallbacks):
  12555. (WebCore::ContainerNode::resumePostAttachCallbacks):
  12556. * loader/DocumentThreadableLoader.cpp:
  12557. (WebCore::DocumentThreadableLoader::loadRequest):
  12558. * loader/MainResourceLoader.cpp:
  12559. (WebCore::MainResourceLoader::loadNow):
  12560. * loader/NetscapePlugInStreamLoader.cpp:
  12561. (WebCore::NetscapePlugInStreamLoader::create):
  12562. * loader/NetscapePlugInStreamLoader.h:
  12563. * loader/ResourceLoadScheduler.cpp: Added.
  12564. (WebCore::ResourceLoadScheduler::hostForURL):
  12565. (WebCore::resourceLoadScheduler): Returns the single ResourceLoadScheduler instance
  12566. (WebCore::ResourceLoadScheduler::ResourceLoadScheduler):
  12567. (WebCore::ResourceLoadScheduler::scheduleSubresourceLoad):
  12568. (WebCore::ResourceLoadScheduler::schedulePluginStreamLoad):
  12569. (WebCore::ResourceLoadScheduler::addMainResourceLoad):
  12570. (WebCore::ResourceLoadScheduler::scheduleLoad):
  12571. (WebCore::ResourceLoadScheduler::remove):
  12572. (WebCore::ResourceLoadScheduler::crossOriginRedirectReceived):
  12573. (WebCore::ResourceLoadScheduler::servePendingRequests):
  12574. (WebCore::ResourceLoadScheduler::suspendPendingRequests):
  12575. (WebCore::ResourceLoadScheduler::resumePendingRequests):
  12576. (WebCore::ResourceLoadScheduler::scheduleServePendingRequests):
  12577. (WebCore::ResourceLoadScheduler::requestTimerFired):
  12578. (WebCore::ResourceLoadScheduler::assertLoaderBeingCounted):
  12579. (WebCore::ResourceLoadScheduler::HostInformation::assertLoaderBeingCounted):
  12580. (WebCore::ResourceLoadScheduler::HostInformation::HostInformation):
  12581. (WebCore::ResourceLoadScheduler::HostInformation::~HostInformation):
  12582. (WebCore::ResourceLoadScheduler::HostInformation::schedule):
  12583. (WebCore::ResourceLoadScheduler::HostInformation::addLoadInProgress):
  12584. (WebCore::ResourceLoadScheduler::HostInformation::remove):
  12585. (WebCore::ResourceLoadScheduler::HostInformation::hasRequests):
  12586. * loader/ResourceLoadScheduler.h: Added.
  12587. (WebCore::ResourceLoadScheduler::HostInformation::name):
  12588. (WebCore::ResourceLoadScheduler::HostInformation::limitRequests):
  12589. (WebCore::ResourceLoadScheduler::HostInformation::requestsPending):
  12590. * loader/ResourceLoader.cpp:
  12591. (WebCore::ResourceLoader::releaseResources): Remove this from ResourceLoadScheduler's counting.
  12592. (WebCore::ResourceLoader::load):
  12593. (WebCore::ResourceLoader::start): Create the ResourceHandle, called by ResourceLoadScheduler.
  12594. (WebCore::ResourceLoader::willSendRequest): Ensure ResourceLoadScheduler counts redirects
  12595. correctly.
  12596. * loader/ResourceLoader.h:
  12597. (WebCore::ResourceLoader::url):
  12598. * loader/icon/IconLoader.cpp:
  12599. (WebCore::IconLoader::startLoading):
  12600. * loader/loader.cpp: Move scheduling to ResourceLoadScheduler, remove Host subclass
  12601. and make Loader the SubresourceLoaderClient instead.
  12602. (WebCore::determinePriority):
  12603. (WebCore::Loader::load): Schedule the creation of the ResourceHandle, rather than
  12604. doing it immediately.
  12605. (WebCore::Loader::cancelRequests):
  12606. (WebCore::Loader::didFinishLoading):
  12607. (WebCore::Loader::didFail):
  12608. (WebCore::Loader::didReceiveResponse):
  12609. (WebCore::Loader::didReceiveData):
  12610. (WebCore::Loader::didReceiveCachedMetadata):
  12611. * loader/loader.h:
  12612. * page/EventSource.cpp:
  12613. (WebCore::EventSource::connect):
  12614. (WebCore::EventSource::endRequest):
  12615. * plugins/PluginStream.cpp:
  12616. (WebCore::PluginStream::start):
  12617. * xml/XMLHttpRequest.cpp:
  12618. (WebCore::XMLHttpRequest::XMLHttpRequest):
  12619. (WebCore::XMLHttpRequest::~XMLHttpRequest):
  12620. (WebCore::XMLHttpRequest::createRequest):
  12621. (WebCore::XMLHttpRequest::didFail):
  12622. (WebCore::XMLHttpRequest::didFinishLoading):
  12623. * xml/XMLHttpRequest.h:
  12624. 2010-11-08 Ryosuke Niwa <rniwa@webkit.org>
  12625. Reviewed by Darin Adler.
  12626. Remove the remaining editing-style functions from ApplyStyleCommand
  12627. https://bugs.webkit.org/show_bug.cgi?id=49155
  12628. Replaced removeNonEditingProperties, editingStyleAtPosition, prepareEditingStyleToApplyAt,
  12629. and removeStylesAddedByNode in ApplyStyleCommand.cpp by removeNonEditingProperties, EditingStyle::create,
  12630. prepareToApplyAt, and removeStyleAddedByNode in EditingStyle.cpp.
  12631. Also removed unnecessary header includes from various cpp files.
  12632. No tests are added since this is a cleanup.
  12633. * editing/ApplyStyleCommand.cpp: Removed removeNonEditingProperties, editingStyleAtPosition,
  12634. prepareEditingStyleToApplyAt, and removeStylesAddedByNode.
  12635. * editing/ApplyStyleCommand.h: Ditto.
  12636. * editing/DeleteSelectionCommand.cpp: Removed removeEnclosingAnchorStyle.
  12637. (WebCore::DeleteSelectionCommand::saveTypingStyleState): Calls removeStylesAddedByNode instead.
  12638. * editing/EditingStyle.cpp:
  12639. (WebCore::copyEditingProperties): Moved and renamed ApplyStyleCommand::removeNonEditingProperties.
  12640. (WebCore::editingStyleFromComputedStyle): Calls copyEditingProperties. Changed the argument to PassRefPtr
  12641. as supposed to a raw pointer for convenience.
  12642. (WebCore::EditingStyle::init): Calls editingStyleFromComputedStyle.
  12643. (WebCore::EditingStyle::removeStyleAddedByNode): Added.
  12644. (WebCore::EditingStyle::removeStyleConflictingWithStyleOfNode): Added.
  12645. (WebCore::EditingStyle::removeNonEditingProperties): Added.
  12646. (WebCore::editingStyleIncludingTypingStyle): Calls copyEditingProperties.
  12647. * editing/EditingStyle.h: Added prototypes.
  12648. * editing/Editor.cpp:
  12649. (WebCore::Editor::selectionComputedStyle): Uses EditingStyle.
  12650. * editing/InsertParagraphSeparatorCommand.cpp:
  12651. (WebCore::InsertParagraphSeparatorCommand::calculateStyleBeforeInsertion): Ditto.
  12652. (WebCore::InsertParagraphSeparatorCommand::applyStyleAfterInsertion): Ditto.
  12653. * editing/InsertParagraphSeparatorCommand.h:
  12654. * editing/RemoveFormatCommand.cpp:
  12655. (WebCore::RemoveFormatCommand::doApply): Ditto.
  12656. * editing/ReplaceSelectionCommand.cpp:
  12657. (WebCore::handleStyleSpansBeforeInsertion): Ditto.
  12658. (WebCore::ReplaceSelectionCommand::handleStyleSpans): Ditto.
  12659. (WebCore::ReplaceSelectionCommand::doApply): Ditto.
  12660. (WebCore::ReplaceSelectionCommand::completeHTMLReplacement): Ditto.
  12661. * editing/ReplaceSelectionCommand.h:
  12662. * editing/markup.cpp: Removed removeEnclosingMailBlockquoteStyle and removeDefaultStyles.
  12663. (WebCore::createMarkup): Uses EditingStyle.
  12664. 2010-11-08 Simon Fraser <simon.fraser@apple.com>
  12665. Reviewed by Dan Bernstein.
  12666. Media objects in nested iframes showing above everything else in TinyMCE
  12667. https://bugs.webkit.org/show_bug.cgi?id=44877
  12668. Tests: compositing/iframes/become-composited-nested-iframes.html
  12669. compositing/iframes/overlapped-nested-iframes.html
  12670. The overlap testing logic that connects compositing across iframe boundaries
  12671. needed to be educated about nestd iframes, for platforms (i.e. Mac) where iframes
  12672. are allowed to be independently composited.
  12673. Also fix a bug that could cause iframes (and possibly other elements) that share
  12674. style to fail to become composited.
  12675. * css/CSSStyleSelector.cpp:
  12676. (WebCore::CSSStyleSelector::canShareStyleWithElement): Disable style sharing for elements
  12677. that force synethetic style updates in order to gain RenderLayers, so they can become
  12678. composited. This is tested by become-composited-nested-iframes.html, though it is very
  12679. timing-dependent.
  12680. * page/FrameView.h:
  12681. * page/FrameView.cpp:
  12682. (WebCore::FrameView::hasCompositedContentIncludingDescendants): New method that
  12683. is a "deep" version of hasCompositedContent() on platforms where that is necessary to ask.
  12684. (WebCore::FrameView::hasCompositingAncestor): New method.
  12685. (WebCore::FrameView::setIsOverlapped): If we can have independently composited iframes,
  12686. we need to force all descendant iframes to update so that compositing gets hooked up across
  12687. nested iframes.
  12688. (WebCore::FrameView::isOverlappedIncludingAncestors): New method, only called on platforms
  12689. where allowsIndependentlyCompositedIFrames() is true.
  12690. * rendering/RenderLayerCompositor.h:
  12691. * rendering/RenderLayerCompositor.cpp:
  12692. (WebCore::RenderLayerCompositor::allowsIndependentlyCompositedIFrames): Utility method that
  12693. returns true if an iframe can be a compositing root.
  12694. (WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingIFrame): Make use of
  12695. allowsIndependentlyCompositedIFrames().
  12696. (WebCore::RenderLayerCompositor::notifyIFramesOfCompositingChange): We need to notify all
  12697. descendant frames, not just children.
  12698. * rendering/RenderObject.cpp:
  12699. (WebCore::RenderObject::setStyle): Add assert to ensure that we don't do style sharing
  12700. for elements that play tricks with synthetic style changes.
  12701. * rendering/RenderWidget.cpp:
  12702. (WebCore::RenderWidget::paint): Run overlap testing if a frame has any composited
  12703. descendants.
  12704. 2010-11-08 Darin Adler <darin@apple.com>
  12705. Reviewed by Alexey Proskuryakov.
  12706. Incorrect image map used when multiple maps have the same name
  12707. https://bugs.webkit.org/show_bug.cgi?id=49086
  12708. Tests: fast/images/image-map-multiple.html
  12709. fast/images/image-map-multiple-xhtml.xhtml
  12710. Factored out the code used to look up elements by id and reused it
  12711. to look up maps by name. It handles multiple elements efficiently.
  12712. * dom/Document.cpp:
  12713. (WebCore::Document::DocumentOrderedMap::clear): Added.
  12714. (WebCore::Document::DocumentOrderedMap::add): Added. Has code that
  12715. was formerly in addElementById.
  12716. (WebCore::Document::DocumentOrderedMap::remove): Added. Has code that
  12717. was formerly in removeElementById.
  12718. (WebCore::Document::DocumentOrderedMap::get): Added. Has code that
  12719. was formerly in getElementById.
  12720. (WebCore::keyMatchesId): Added.
  12721. (WebCore::Document::getElementById): Use DocumentOrderedMap::get.
  12722. (WebCore::Document::addElementById): Use DocumentOrderedMap::add.
  12723. (WebCore::Document::removeElementById): Use DocumentOrderedMap::remove.
  12724. (WebCore::Document::addImageMap): Use DocumentOrderedMap::add.
  12725. (WebCore::Document::removeImageMap): Use DocumentOrderedMap::remove.
  12726. (WebCore::keyMatchesMapName): Added.
  12727. (WebCore::keyMatchesLowercasedMapName): Added.
  12728. (WebCore::Document::getImageMap): Use DocumentOrderedMap::get.
  12729. * dom/Document.h: Added DocumentOrderedMap class, used inside the
  12730. Document class. Changed m_imageMapsByName to be a DocumentOrderedMap.
  12731. Changed m_elementsById to be a DocumentOrderedMap. Eliminated
  12732. m_duplicateIds, since DocumentOrderedMap now has that internally.
  12733. 2010-11-08 Alexey Proskuryakov <ap@apple.com>
  12734. Reviewed by Darin Adler.
  12735. https://bugs.webkit.org/show_bug.cgi?id=48685
  12736. Notify UI process about focused frame
  12737. * WebCore.xcodeproj/project.pbxproj: Adding developmentRegion back.
  12738. * loader/EmptyClients.h: (WebCore::EmptyChromeClient::focusedFrameChanged):
  12739. * page/Chrome.cpp: (WebCore::Chrome::focusedFrameChanged):
  12740. * page/Chrome.h:
  12741. * page/ChromeClient.h:
  12742. Added a new Chrome client notification.
  12743. * page/FocusController.cpp: (WebCore::FocusController::setFocusedFrame): Notify chrome.
  12744. 2010-11-08 Anders Carlsson <andersca@apple.com>
  12745. Reviewed by Adam Roben.
  12746. Remove use of HIGetScaleFactor
  12747. https://bugs.webkit.org/show_bug.cgi?id=49186
  12748. <rdar://problem/8618410>
  12749. Scale factors can vary on a display-by-display basis and it doesn't make sense
  12750. to compute scale factor event coordinates like this.
  12751. * plugins/mac/PluginViewMac.mm:
  12752. (WebCore::PluginView::globalMousePosForPlugin):
  12753. 2010-11-08 Noam Rosenthal <noam.rosenthal@nokia.com>
  12754. Reviewed by Kenneth Rohde Christiansen.
  12755. [Texmap] [Qt] Texture mapper initial implementation
  12756. https://bugs.webkit.org/show_bug.cgi?id=47070
  12757. Make the necessary changes in TextureMapperNode in preparation of making it possible to paint it
  12758. from a different thread.
  12759. The main problematic part was the cache, which made it so that textures can become invalid and have to
  12760. be rerendered from content during paint. This is solved here by creating a pack/unpack function for
  12761. textures, which lets a texture archive its data away from video memory, or do whatever the platform
  12762. thinks is right for freeing memory without needing to re-render again from content (which cannot be
  12763. made thread safe).
  12764. After this change, TextureMapperNode moved to its own file, and has 2 entry points: paint and syncCompositingState.
  12765. The idea is that syncCompositingState has to be called in the UI thread, paint can be called from a different
  12766. thread, and they should block each other.
  12767. The new test tests the cache code-path, to show that the pack/unpack technique works for cases where it
  12768. kicks in.
  12769. Test: compositing/layer-creation/many-layers.html
  12770. * WebCore.pro:
  12771. * platform/graphics/opengl/TextureMapperGL.cpp:
  12772. (WebCore::BitmapTextureGL::~BitmapTextureGL):
  12773. (WebCore::BitmapTextureGL::BitmapTextureGL):
  12774. (WebCore::TextureMapperGL::TextureMapperGL):
  12775. (WebCore::TextureMapperGL::drawTexture):
  12776. * platform/graphics/opengl/TextureMapperGL.h:
  12777. (WebCore::TextureMapperGL::create):
  12778. * platform/graphics/qt/TextureMapperQt.cpp:
  12779. (WebCore::BitmapTextureQt::pack):
  12780. (WebCore::BitmapTextureQt::unpack):
  12781. (WebCore::TextureMapper::create):
  12782. (WebCore::BitmapTextureQt::BitmapTextureQt):
  12783. * platform/graphics/qt/TextureMapperQt.h: Added.
  12784. 2010-11-08 Simon Fraser <simon.fraser@apple.com>
  12785. Reviewed by Sam Weinig.
  12786. Allow applets to participate in accelerated compositing
  12787. https://bugs.webkit.org/show_bug.cgi?id=49117
  12788. <rdar://problem/8625819>
  12789. Add RenderApplet to the list of renderers that can optionally get RenderLayers,
  12790. and be composited for some reason.
  12791. Not currently testable.
  12792. * rendering/RenderApplet.h: Outdented the class declaration.
  12793. * rendering/RenderApplet.cpp:
  12794. (WebCore::RenderApplet::requiresLayer): Return true if the underlying widget
  12795. has a platform layer.
  12796. (WebCore::RenderApplet::allowsAcceleratedCompositing): Check the widget to see
  12797. if it has a platform layer.
  12798. * rendering/RenderLayer.cpp:
  12799. (WebCore::RenderLayer::shouldBeNormalFlowOnly): Reformat, and add isApplet().
  12800. (WebCore::RenderLayer::isSelfPaintingLayer): Reformat, and add isApplet().
  12801. * rendering/RenderLayerBacking.cpp:
  12802. (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration): Use 'renderer' local variable
  12803. for efficiency. Now check for embedded objects and applets.
  12804. * rendering/RenderLayerCompositor.cpp:
  12805. (WebCore::RenderLayerCompositor::requiresCompositingForPlugin): Check for embedded objects and applets.
  12806. 2010-11-08 Xan Lopez <xlopez@igalia.com>
  12807. Reviewed by Martin Robinson.
  12808. * GNUmakefile.am: add missing files to fix distcheck.
  12809. 2010-11-08 Alexander Pavlov <apavlov@chromium.org>
  12810. Reviewed by David Hyatt.
  12811. getPropertyValue("background") causes crash
  12812. https://bugs.webkit.org/show_bug.cgi?id=49055
  12813. Test: fast/css/background-norepeat-crash.html
  12814. * css/CSSMutableStyleDeclaration.cpp:
  12815. (WebCore::CSSMutableStyleDeclaration::getLayeredShorthandValue):
  12816. 2010-11-08 Martin Robinson <mrobinson@igalia.com>
  12817. Reviewed by Xan Lopez.
  12818. [GTK] Wrapped DOM bindings GObjects do not disconnect event listeners when they die
  12819. https://bugs.webkit.org/show_bug.cgi?id=49136
  12820. When GObjects are finalized and freed, disconnect their event listeners, so that
  12821. WebCore does not try to fire signals on dead GObjects. We do this by holding a weak
  12822. reference to the GObject in the signal listener. When the weak reference notification
  12823. callback is executed, we disconnect the event listener.
  12824. No new tests; this fix is proved by prevention of crashes in soon to be
  12825. landed editing delegate signals, which are covered by the layout tests.
  12826. * bindings/gobject/GObjectEventListener.cpp:
  12827. (WebCore::GObjectEventListener::GObjectEventListener): Updated the constructor.
  12828. (WebCore::GObjectEventListener::~GObjectEventListener): Disconnect the weak reference
  12829. if the GObject is still alive.
  12830. (WebCore::GObjectEventListener::gobjectDestroyed): When the GObject is destroyed,
  12831. disconnect the appropriate event listener.
  12832. (WebCore::GObjectEventListener::handleEvent): Changes to reflect use of CString
  12833. instead of WebCore string.
  12834. * bindings/gobject/GObjectEventListener.h:
  12835. (WebCore::GObjectEventListener::addEventListener): Changed create to addEventListener,
  12836. so that the connection and disconnection is an internal contract to the class.
  12837. (WebCore::GObjectEventListener::gobjectDestroyedCallback): Added.
  12838. * bindings/scripts/CodeGeneratorGObject.pm: Modified the code generate to use
  12839. GObjectEventListener::addEventListener and no longer call addEventListener on
  12840. its own.
  12841. 2010-11-08 Adam Roben <aroben@apple.com>
  12842. Windows Release build fix after r71514
  12843. The build was failing due to an alignment error. Strangely, depending
  12844. on the order of SVGStaticPropertyTearOff's members, the build will
  12845. either fail in Release (as it does before this change), or Debug (as it
  12846. did before r71514), but not both.
  12847. * svg/properties/SVGStaticPropertyTearOff.h:
  12848. (WebCore::SVGStaticPropertyTearOff::SVGStaticPropertyTearOff): Copied
  12849. the #pragma pack trick from JSSVGPODTypeWrapper.h, which has similar
  12850. issues.
  12851. 2010-11-08 Yury Semikhatsky <yurys@chromium.org>
  12852. Reviewed by Pavel Feldman.
  12853. Web Inspector: decouple ScriptArguments from ScriptCallStack
  12854. https://bugs.webkit.org/show_bug.cgi?id=48058
  12855. ScriptCallFrame and ScriptCallStack are now the same for both JSC and V8.
  12856. The factory functions that allow to create ScriptCallStack from VM-specific
  12857. objects are defined in ScriptCallStackFactory.cpp.
  12858. ScriptArguments class is used for passing arguments from JS code to the native
  12859. part.
  12860. No new tests. This refactoring is covered with existing Console tests.
  12861. * Android.jscbindings.mk:
  12862. * Android.v8bindings.mk:
  12863. * CMakeLists.txt:
  12864. * GNUmakefile.am:
  12865. * WebCore.gypi:
  12866. * WebCore.pro:
  12867. * WebCore.vcproj/WebCore.vcproj:
  12868. * WebCore.xcodeproj/project.pbxproj:
  12869. * bindings/js/JSBindingsAllInOne.cpp:
  12870. * bindings/js/JSConsoleCustom.cpp:
  12871. (WebCore::JSConsole::profile):
  12872. (WebCore::JSConsole::profileEnd):
  12873. * bindings/js/ScriptCallStackFactory.cpp: Renamed from WebCore/bindings/js/ScriptCallStack.cpp.
  12874. (WebCore::createScriptCallStack):
  12875. (WebCore::createScriptArguments):
  12876. (WebCore::ScriptCallStack::stackTrace):
  12877. * bindings/js/ScriptCallStackFactory.h: Copied from WebCore/bindings/js/ScriptCallFrame.cpp.
  12878. * bindings/js/ScriptState.cpp:
  12879. (WebCore::ScriptStateProtectedPtr::~ScriptStateProtectedPtr):
  12880. (WebCore::ScriptStateProtectedPtr::ScriptStateProtectedPtr):
  12881. (WebCore::ScriptStateProtectedPtr::get):
  12882. * bindings/js/ScriptState.h:
  12883. * bindings/scripts/CodeGeneratorJS.pm:
  12884. * bindings/scripts/CodeGeneratorV8.pm:
  12885. * bindings/scripts/test/JS/JSTestObj.cpp:
  12886. (WebCore::jsTestObjPrototypeFunctionCustomArgsAndException):
  12887. * bindings/scripts/test/V8/V8TestObj.cpp:
  12888. (WebCore::TestObjInternal::customArgsAndExceptionCallback):
  12889. * bindings/v8/ScriptCallFrame.h: Removed.
  12890. * bindings/v8/ScriptCallStack.h: Removed.
  12891. * bindings/v8/ScriptCallStackFactory.cpp: Renamed from WebCore/bindings/v8/ScriptCallStack.cpp.
  12892. (WebCore::toScriptCallFrame):
  12893. (WebCore::toScriptCallFramesVector):
  12894. (WebCore::createScriptCallStack):
  12895. (WebCore::createScriptArguments):
  12896. (WebCore::ScriptCallStack::stackTrace):
  12897. * bindings/v8/ScriptCallStackFactory.h: Copied from WebCore/bindings/js/ScriptCallFrame.cpp.
  12898. * bindings/v8/ScriptController.cpp:
  12899. (WebCore::ScriptController::setCaptureCallStackForUncaughtExceptions):
  12900. * bindings/v8/ScriptState.h:
  12901. (WebCore::ScriptStateProtectedPtr::get):
  12902. * bindings/v8/V8ConsoleMessage.cpp:
  12903. (WebCore::V8ConsoleMessage::handler):
  12904. (WebCore::V8ConsoleMessage::dispatchNow):
  12905. * bindings/v8/V8ConsoleMessage.h:
  12906. * bindings/v8/custom/V8ConsoleCustom.cpp:
  12907. (WebCore::V8Console::traceCallback):
  12908. (WebCore::V8Console::assertCallback):
  12909. (WebCore::V8Console::profileCallback):
  12910. (WebCore::V8Console::profileEndCallback):
  12911. * dom/NodeFilter.h:
  12912. * inspector/ConsoleMessage.cpp:
  12913. (WebCore::ConsoleMessage::ConsoleMessage):
  12914. (WebCore::ConsoleMessage::addToFrontend):
  12915. (WebCore::ConsoleMessage::updateRepeatCountInConsole):
  12916. (WebCore::ConsoleMessage::isEqual):
  12917. * inspector/ConsoleMessage.h:
  12918. * inspector/InspectorController.cpp:
  12919. (WebCore::InspectorController::addMessageToConsole):
  12920. (WebCore::InspectorController::startGroup):
  12921. * inspector/InspectorController.h:
  12922. * inspector/ScriptArguments.cpp: Copied from WebCore/bindings/v8/ScriptCallFrame.cpp.
  12923. (WebCore::ScriptArguments::ScriptArguments):
  12924. (WebCore::ScriptArguments::~ScriptArguments):
  12925. (WebCore::ScriptArguments::argumentAt):
  12926. (WebCore::ScriptArguments::globalState):
  12927. (WebCore::ScriptArguments::getFirstArgumentAsString):
  12928. (WebCore::ScriptArguments::isEqual):
  12929. * inspector/ScriptArguments.h: Copied from WebCore/bindings/js/ScriptCallFrame.h.
  12930. (WebCore::ScriptArguments::argumentCount):
  12931. * inspector/ScriptCallFrame.cpp: Renamed from WebCore/bindings/v8/ScriptCallFrame.cpp.
  12932. (WebCore::ScriptCallFrame::ScriptCallFrame):
  12933. (WebCore::ScriptCallFrame::~ScriptCallFrame):
  12934. (WebCore::ScriptCallFrame::isEqual):
  12935. (WebCore::ScriptCallFrame::buildInspectorObject):
  12936. * inspector/ScriptCallFrame.h: Renamed from WebCore/bindings/js/ScriptCallFrame.h.
  12937. (WebCore::ScriptCallFrame::functionName):
  12938. (WebCore::ScriptCallFrame::sourceURL):
  12939. (WebCore::ScriptCallFrame::lineNumber):
  12940. * inspector/ScriptCallStack.cpp: Renamed from WebCore/bindings/js/ScriptCallFrame.cpp.
  12941. (WebCore::ScriptCallStack::ScriptCallStack):
  12942. (WebCore::ScriptCallStack::~ScriptCallStack):
  12943. (WebCore::ScriptCallStack::at):
  12944. (WebCore::ScriptCallStack::size):
  12945. (WebCore::ScriptCallStack::isEqual):
  12946. (WebCore::ScriptCallStack::buildInspectorObject):
  12947. * inspector/ScriptCallStack.h: Renamed from WebCore/bindings/js/ScriptCallStack.h.
  12948. * page/Console.cpp:
  12949. (WebCore::Console::addMessage):
  12950. (WebCore::Console::debug):
  12951. (WebCore::Console::error):
  12952. (WebCore::Console::info):
  12953. (WebCore::Console::log):
  12954. (WebCore::Console::dir):
  12955. (WebCore::Console::dirxml):
  12956. (WebCore::Console::trace):
  12957. (WebCore::Console::assertCondition):
  12958. (WebCore::Console::count):
  12959. (WebCore::Console::markTimeline):
  12960. (WebCore::Console::profile):
  12961. (WebCore::Console::profileEnd):
  12962. (WebCore::Console::timeEnd):
  12963. (WebCore::Console::group):
  12964. (WebCore::Console::groupCollapsed):
  12965. (WebCore::Console::shouldCaptureFullStackTrace):
  12966. (WebCore::Console::warn):
  12967. * page/Console.h:
  12968. (WebCore::Console::profiles):
  12969. * page/Console.idl:
  12970. 2010-11-08 Nikolas Zimmermann <nzimmermann@rim.com>
  12971. Not reviewed. Build fix.
  12972. Attempt to fix windows builds after r71512. Swap order of members to avoid warning C4121.
  12973. * svg/properties/SVGStaticPropertyTearOff.h:
  12974. (WebCore::SVGStaticPropertyTearOff::SVGStaticPropertyTearOff):
  12975. 2010-11-08 Mikhail Naganov <mnaganov@chromium.org>
  12976. Unreviewed. Fix Qt build after r71511.
  12977. * inspector/InspectorController.cpp:
  12978. (WebCore::InspectorController::restoreInspectorStateFromCookie):
  12979. 2010-11-08 Nikolas Zimmermann <nzimmermann@rim.com>
  12980. Reviewed by Dirk Schulze.
  12981. Convert SVGPoint/SVGPointList to the new SVGPropertyTearOff concept
  12982. https://bugs.webkit.org/show_bug.cgi?id=49067
  12983. Remove SVGAnimatedPoints interface, not reachable through bindings anyway, it was just another MI interface, that
  12984. now has been integrated into SVGPolylineElement/SVGPolygonElement, simplfying the generation and avoiding virtual
  12985. calls in SVGPolylineElement/SVGPolygonElement.
  12986. Remove the need to use manual XML <-> SVG DOM synchronization. The points/animatedPoints methods now create
  12987. SVGListPropertyTearOffs, thus using the same synchronization/expose-to-bindings concept like all other
  12988. animated properties.
  12989. Convert SVGPoint/SVGPointList to use the new SVGPropertyTearOff concept, adapted all code, as SVGPointList
  12990. is now a plain Vector<FloatPoint>. Enable StrictTypeChecking for SVGPoint.
  12991. Test: svg/dom/SVGPoint.html
  12992. * Android.derived.v8bindings.mk: Remove SVGAnimatedPoints (and IDL generation).
  12993. * Android.mk: Ditto.
  12994. * CMakeLists.txt: Ditto.
  12995. * DerivedSources.make: Ditto.
  12996. * GNUmakefile.am: Ditto. Add SVGStaticPropertyTearOff.h to build.
  12997. * WebCore.gypi: Ditto.
  12998. * WebCore.order: Remove SVGAnimatedPoints symbols.
  12999. * WebCore.pro: Remove SVGAnimatedPoints (and IDL generation). Add SVGStaticPropertyTearOff.h to build.
  13000. * WebCore.vcproj/WebCore.vcproj: Ditto.
  13001. * WebCore.xcodeproj/project.pbxproj: Ditto.
  13002. * bindings/objc/DOMSVG.h: Remove DOMSVGAnimatedPoints include.
  13003. * bindings/scripts/CodeGenerator.pm: Adapt code converting SVGPoint/SVGPointList to use the new SVGPropertyTearOff concepts.
  13004. * bindings/scripts/CodeGeneratorJS.pm: Ditto.
  13005. * bindings/scripts/CodeGeneratorObjC.pm: Ditto.
  13006. * bindings/scripts/CodeGeneratorV8.pm: Ditto.
  13007. * rendering/SVGRenderTreeAsText.cpp: Adapt for SVGPolyElement API change, use pointList() instead of points() (which is only used for bindings now).
  13008. (WebCore::operator<<):
  13009. * svg/SVGAllInOne.cpp: Remove SVGAnimatedPoints.cpp.
  13010. * svg/SVGAnimateElement.cpp: Adapt for SVGPointList API change, it's not refcounted anymore.
  13011. (WebCore::SVGAnimateElement::calculateAnimatedValue):
  13012. (WebCore::SVGAnimateElement::calculateFromAndToValues):
  13013. (WebCore::SVGAnimateElement::applyResultsToTarget):
  13014. * svg/SVGAnimateElement.h: Ditto.
  13015. * svg/SVGAnimatedPoints.cpp: Removed.
  13016. * svg/SVGAnimatedPoints.h: Removed.
  13017. * svg/SVGAnimatedPoints.idl: Removed.
  13018. * svg/SVGParserUtilities.cpp: Adapt for SVGPointList API change, it's not refcounted anymore.
  13019. (WebCore::pointsListFromSVGData):
  13020. * svg/SVGParserUtilities.h: Ditto.
  13021. * svg/SVGPoint.idl: Remove PODType marker, and add StrictTypeChecking for x/y attributes.
  13022. * svg/SVGPointList.cpp: SVGPointList is now a plain Vector<FloatPoint>, rewrite.
  13023. (WebCore::SVGPointList::valueAsString):
  13024. (WebCore::SVGPointList::createAnimated):
  13025. * svg/SVGPointList.h: Ditto.
  13026. (WebCore::SVGPointList::SVGPointList):
  13027. * svg/SVGPolyElement.cpp: Remove manual SVG <-> XML DOM synchronization. Now handles through the SVGAnimatedPropertyTearOff concept.
  13028. (WebCore::SVGPolyElement::parseMappedAttribute):
  13029. (WebCore::SVGPolyElement::svgAttributeChanged):
  13030. (WebCore::SVGPolyElement::synchronizeProperty):
  13031. (WebCore::SVGPolyElement::synchronizePoints):
  13032. (WebCore::SVGPolyElement::points):
  13033. (WebCore::SVGPolyElement::animatedPoints):
  13034. * svg/SVGPolyElement.h: Reindented.
  13035. (WebCore::SVGPolyElement::pointList):
  13036. (WebCore::SVGPolyElement::isValid):
  13037. (WebCore::SVGPolyElement::supportsMarkers):
  13038. * svg/SVGPolygonElement.cpp: Adapt for SVGPointList API change.
  13039. (WebCore::SVGPolygonElement::toPathData):
  13040. * svg/SVGPolygonElement.idl: Remove SVGAnimatedPoints inheritance.
  13041. * svg/SVGPolylineElement.cpp: Adapt for SVGPointList API change.
  13042. (WebCore::SVGPolylineElement::toPathData):
  13043. * svg/SVGPolylineElement.idl: Remove SVGAnimatedPoints inheritance.
  13044. * svg/SVGSVGElement.cpp:
  13045. (WebCore::SVGSVGElement::setCurrentTranslate): Use updateCurrentTranslate().
  13046. (WebCore::SVGSVGElement::updateCurrentTranslate): Added, only used by the bindings, after changing a value of SVGStaticPropertyTearOff object.
  13047. * svg/SVGSVGElement.h:
  13048. (WebCore::SVGSVGElement::currentTranslate): Return reference to m_translation.
  13049. * svg/properties/SVGPropertyTearOff.h: Made constructors protected, as SVGStaticPropertyTearOff inherits from it.
  13050. (WebCore::SVGPropertyTearOff::commitChange):
  13051. * svg/properties/SVGPropertyTraits.h: Add SVGPointList handing.
  13052. * svg/properties/SVGStaticPropertyTearOff.h: Added. Used for SVGProperty types returned by attributes, that are not associated with a SVGAnimatedProperty. (SVGSVGElement::currentTranslate).
  13053. (WebCore::SVGStaticPropertyTearOff::create):
  13054. (WebCore::SVGStaticPropertyTearOff::commitChange):
  13055. (WebCore::SVGStaticPropertyTearOff::SVGStaticPropertyTearOff):
  13056. 2010-11-08 Mikhail Naganov <mnaganov@chromium.org>
  13057. Reviewed by Adam Barth.
  13058. Web Inspector [Chromium]: Make CPU profiling to survive navigation.
  13059. https://bugs.webkit.org/show_bug.cgi?id=48843
  13060. * inspector/Inspector.idl:
  13061. * inspector/InspectorController.cpp:
  13062. (WebCore::InspectorController::restoreInspectorStateFromCookie):
  13063. (WebCore::InspectorController::reuseFrontend):
  13064. (WebCore::InspectorController::disconnectFrontend):
  13065. (WebCore::InspectorController::populateScriptObjects):
  13066. (WebCore::InspectorController::restoreProfiler):
  13067. (WebCore::InspectorController::didCommitLoad):
  13068. (WebCore::InspectorController::startUserInitiatedProfiling):
  13069. (WebCore::InspectorController::stopUserInitiatedProfiling):
  13070. * inspector/InspectorController.h:
  13071. (WebCore::InspectorController::startProfiling):
  13072. (WebCore::InspectorController::stopProfiling):
  13073. * inspector/InspectorProfilerAgent.cpp:
  13074. (WebCore::InspectorProfilerAgent::startUserInitiatedProfiling):
  13075. (WebCore::InspectorProfilerAgent::stopUserInitiatedProfiling):
  13076. * inspector/InspectorProfilerAgent.h:
  13077. * inspector/InspectorState.cpp:
  13078. (WebCore::InspectorState::InspectorState):
  13079. * inspector/InspectorState.h:
  13080. * inspector/front-end/ProfilesPanel.js:
  13081. (WebInspector.ProfilesPanel.prototype.hasTemporaryProfile):
  13082. (WebInspector.ProfilesPanel.prototype.hasProfile):
  13083. * inspector/front-end/inspector.js:
  13084. (WebInspector.setRecordingProfile):
  13085. 2010-11-08 Renata Hodovan <reni@webkit.org>
  13086. Reviewed by Nikolas Zimmermann.
  13087. SVGFEConvolveMatrixElement doesn't support dynamic invalidation
  13088. https://bugs.webkit.org/show_bug.cgi?id=47660
  13089. Wrap orderX and orderY into the common order property according to the w3 standard and remove them from svnattrs.in.
  13090. The patch implements the orderXIdentifier and orderYIdentifier getter functions to reach
  13091. properly the orderX and orderY components of order property from SVG DOM.
  13092. Tests: svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-bias-prop.html
  13093. svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-divisor-prop.html
  13094. svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-edgeMode-prop.html
  13095. svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-in-prop.html
  13096. svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelMatrix-prop.html
  13097. svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelUnitLength-prop.html
  13098. svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-order-prop.html
  13099. svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-preserveAlpha-prop.html
  13100. svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-targetX-prop.html
  13101. svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-targetY-prop.html
  13102. * svg/SVGFEConvolveMatrixElement.cpp:
  13103. (WebCore::SVGFEConvolveMatrixElement::orderXIdentifier):
  13104. (WebCore::SVGFEConvolveMatrixElement::orderYIdentifier):
  13105. * svg/SVGFEConvolveMatrixElement.h:
  13106. * svg/svgattrs.in:
  13107. 2010-11-08 Adam Barth <abarth@webkit.org>
  13108. Reviewed by Antti Koivisto.
  13109. Rename CachedResourceLoader::m_doc to CachedResourceLoader::m_document
  13110. https://bugs.webkit.org/show_bug.cgi?id=49163
  13111. The usual convention is to use "document", not "doc" to refer to the
  13112. document.
  13113. * css/CSSCursorImageValue.cpp:
  13114. (WebCore::CSSCursorImageValue::cachedImage):
  13115. * dom/XMLDocumentParserLibxml2.cpp:
  13116. (WebCore::shouldAllowExternalLoad):
  13117. * loader/cache/CachedResourceLoader.cpp:
  13118. (WebCore::CachedResourceLoader::CachedResourceLoader):
  13119. (WebCore::CachedResourceLoader::frame):
  13120. (WebCore::CachedResourceLoader::requestImage):
  13121. (WebCore::CachedResourceLoader::canRequest):
  13122. (WebCore::CachedResourceLoader::requestResource):
  13123. (WebCore::CachedResourceLoader::printAccessDeniedMessage):
  13124. (WebCore::CachedResourceLoader::preload):
  13125. (WebCore::CachedResourceLoader::checkForPendingPreloads):
  13126. (WebCore::CachedResourceLoader::requestPreload):
  13127. * loader/cache/CachedResourceLoader.h:
  13128. (WebCore::CachedResourceLoader::document):
  13129. * loader/cache/MemoryCache.cpp:
  13130. (WebCore::MemoryCache::requestResource):
  13131. * loader/loader.cpp:
  13132. (WebCore::Loader::load):
  13133. (WebCore::Loader::Host::servePendingRequests):
  13134. (WebCore::Loader::Host::didFinishLoading):
  13135. (WebCore::Loader::Host::didFail):
  13136. * xml/XSLTProcessorLibxslt.cpp:
  13137. (WebCore::docLoaderFunc):
  13138. 2010-11-07 Adam Barth <abarth@webkit.org>
  13139. Unreviewed. Remove some unneeded includes.
  13140. * loader/FrameLoader.cpp:
  13141. * loader/PlaceholderDocument.cpp:
  13142. 2010-11-07 Adam Barth <abarth@webkit.org>
  13143. Reviewed by Eric Seidel.
  13144. Rename Cache to MemoryCache
  13145. https://bugs.webkit.org/show_bug.cgi?id=49159
  13146. So sayeth the diagram.
  13147. * Android.mk:
  13148. * CMakeLists.txt:
  13149. * GNUmakefile.am:
  13150. * WebCore.gypi:
  13151. * WebCore.pro:
  13152. * WebCore.vcproj/WebCore.vcproj:
  13153. * WebCore.xcodeproj/project.pbxproj:
  13154. * css/CSSImageValue.cpp:
  13155. * dom/ContainerNode.cpp:
  13156. * history/PageCache.cpp:
  13157. * inspector/InspectorCSSStore.h:
  13158. * inspector/InspectorResourceAgent.cpp:
  13159. * loader/FrameLoader.cpp:
  13160. * loader/archive/cf/LegacyWebArchive.cpp:
  13161. * loader/cache/Cache.cpp: Removed.
  13162. * loader/cache/Cache.h: Removed.
  13163. * loader/cache/CachedCSSStyleSheet.cpp:
  13164. (WebCore::CachedCSSStyleSheet::allClientsRemoved):
  13165. * loader/cache/CachedFont.cpp:
  13166. * loader/cache/CachedFont.h:
  13167. * loader/cache/CachedImage.cpp:
  13168. (WebCore::CachedImage::destroyDecodedData):
  13169. * loader/cache/CachedImage.h:
  13170. * loader/cache/CachedResource.cpp:
  13171. * loader/cache/CachedResource.h:
  13172. * loader/cache/CachedResourceLoader.cpp:
  13173. * loader/cache/CachedResourceLoader.h:
  13174. * loader/cache/CachedScript.cpp:
  13175. (WebCore::CachedScript::destroyDecodedData):
  13176. * loader/cache/MemoryCache.cpp: Copied from WebCore/loader/cache/Cache.cpp.
  13177. (WebCore::cache):
  13178. (WebCore::MemoryCache::MemoryCache):
  13179. (WebCore::MemoryCache::requestResource):
  13180. (WebCore::MemoryCache::requestUserCSSStyleSheet):
  13181. (WebCore::MemoryCache::revalidateResource):
  13182. (WebCore::MemoryCache::revalidationSucceeded):
  13183. (WebCore::MemoryCache::revalidationFailed):
  13184. (WebCore::MemoryCache::resourceForURL):
  13185. (WebCore::MemoryCache::deadCapacity):
  13186. (WebCore::MemoryCache::liveCapacity):
  13187. (WebCore::MemoryCache::pruneLiveResources):
  13188. (WebCore::MemoryCache::pruneDeadResources):
  13189. (WebCore::MemoryCache::setCapacities):
  13190. (WebCore::MemoryCache::makeResourcePurgeable):
  13191. (WebCore::MemoryCache::evict):
  13192. (WebCore::MemoryCache::addCachedResourceLoader):
  13193. (WebCore::MemoryCache::removeCachedResourceLoader):
  13194. (WebCore::MemoryCache::lruListFor):
  13195. (WebCore::MemoryCache::removeFromLRUList):
  13196. (WebCore::MemoryCache::insertInLRUList):
  13197. (WebCore::MemoryCache::resourceAccessed):
  13198. (WebCore::MemoryCache::removeFromLiveDecodedResourcesList):
  13199. (WebCore::MemoryCache::insertInLiveDecodedResourcesList):
  13200. (WebCore::MemoryCache::addToLiveResourcesSize):
  13201. (WebCore::MemoryCache::removeFromLiveResourcesSize):
  13202. (WebCore::MemoryCache::adjustSize):
  13203. (WebCore::MemoryCache::TypeStatistic::addResource):
  13204. (WebCore::MemoryCache::getStatistics):
  13205. (WebCore::MemoryCache::setDisabled):
  13206. (WebCore::MemoryCache::dumpStats):
  13207. (WebCore::MemoryCache::dumpLRULists):
  13208. * loader/cache/MemoryCache.h: Copied from WebCore/loader/cache/Cache.h.
  13209. (WebCore::MemoryCache::shouldMakeResourcePurgeableOnEviction):
  13210. * loader/loader.cpp:
  13211. * page/EventSource.cpp:
  13212. * page/Settings.h:
  13213. * xml/XMLHttpRequest.cpp:
  13214. (WebCore::XMLHttpRequest::createRequest):
  13215. 2010-11-07 Eric Seidel <eric@webkit.org>
  13216. Unreviewed. Attempt to fix the windows build.
  13217. Move the rest of the cache-related files into loader/cache
  13218. https://bugs.webkit.org/show_bug.cgi?id=49156
  13219. * WebCore.vcproj/WebCoreCommon.vsprops:
  13220. * WebCore.vcproj/copyForwardingHeaders.cmd:
  13221. 2010-11-07 Eric Seidel <eric@webkit.org>
  13222. Reviewed by Adam Barth.
  13223. Move the rest of the cache-related files into loader/cache
  13224. https://bugs.webkit.org/show_bug.cgi?id=49156
  13225. * GNUmakefile.am:
  13226. * WebCore.gypi:
  13227. * WebCore.vcproj/WebCore.vcproj:
  13228. * WebCore.xcodeproj/project.pbxproj:
  13229. * loader/CachePolicy.h: Removed.
  13230. * loader/CachedCSSStyleSheet.cpp: Removed.
  13231. * loader/CachedCSSStyleSheet.h: Removed.
  13232. * loader/CachedFont.cpp: Removed.
  13233. * loader/CachedFont.h: Removed.
  13234. * loader/CachedImage.cpp: Removed.
  13235. * loader/CachedImage.h: Removed.
  13236. * loader/CachedResource.cpp: Removed.
  13237. * loader/CachedResource.h: Removed.
  13238. * loader/CachedResourceClient.h: Removed.
  13239. * loader/CachedResourceClientWalker.cpp: Removed.
  13240. * loader/CachedResourceClientWalker.h: Removed.
  13241. * loader/CachedResourceHandle.cpp: Removed.
  13242. * loader/CachedResourceHandle.h: Removed.
  13243. * loader/CachedResourceLoader.cpp: Removed.
  13244. * loader/CachedResourceLoader.h: Removed.
  13245. * loader/CachedScript.cpp: Removed.
  13246. * loader/CachedScript.h: Removed.
  13247. * loader/CachedXSLStyleSheet.cpp: Removed.
  13248. * loader/CachedXSLStyleSheet.h: Removed.
  13249. * loader/cache/CachePolicy.h: Copied from WebCore/loader/CachePolicy.h.
  13250. * loader/cache/CachedCSSStyleSheet.cpp: Copied from WebCore/loader/CachedCSSStyleSheet.cpp.
  13251. * loader/cache/CachedCSSStyleSheet.h: Copied from WebCore/loader/CachedCSSStyleSheet.h.
  13252. * loader/cache/CachedFont.cpp: Copied from WebCore/loader/CachedFont.cpp.
  13253. * loader/cache/CachedFont.h: Copied from WebCore/loader/CachedFont.h.
  13254. * loader/cache/CachedImage.cpp: Copied from WebCore/loader/CachedImage.cpp.
  13255. * loader/cache/CachedImage.h: Copied from WebCore/loader/CachedImage.h.
  13256. * loader/cache/CachedResource.cpp: Copied from WebCore/loader/CachedResource.cpp.
  13257. * loader/cache/CachedResource.h: Copied from WebCore/loader/CachedResource.h.
  13258. * loader/cache/CachedResourceClient.h: Copied from WebCore/loader/CachedResourceClient.h.
  13259. * loader/cache/CachedResourceClientWalker.cpp: Copied from WebCore/loader/CachedResourceClientWalker.cpp.
  13260. * loader/cache/CachedResourceClientWalker.h: Copied from WebCore/loader/CachedResourceClientWalker.h.
  13261. * loader/cache/CachedResourceHandle.cpp: Copied from WebCore/loader/CachedResourceHandle.cpp.
  13262. * loader/cache/CachedResourceHandle.h: Copied from WebCore/loader/CachedResourceHandle.h.
  13263. * loader/cache/CachedResourceLoader.cpp: Copied from WebCore/loader/CachedResourceLoader.cpp.
  13264. * loader/cache/CachedResourceLoader.h: Copied from WebCore/loader/CachedResourceLoader.h.
  13265. * loader/cache/CachedScript.cpp: Copied from WebCore/loader/CachedScript.cpp.
  13266. * loader/cache/CachedScript.h: Copied from WebCore/loader/CachedScript.h.
  13267. * loader/cache/CachedXSLStyleSheet.cpp: Copied from WebCore/loader/CachedXSLStyleSheet.cpp.
  13268. * loader/cache/CachedXSLStyleSheet.h: Copied from WebCore/loader/CachedXSLStyleSheet.h.
  13269. 2010-11-07 Adam Barth <abarth@webkit.org>
  13270. Reviewed by Eric Seidel.
  13271. Rename X-Purpose to Purpose
  13272. https://bugs.webkit.org/show_bug.cgi?id=47802
  13273. As requested by IETF HTTP WG. This patch is part of a larger movement
  13274. in the HTTP community to move away from X- headers. Various senior
  13275. folks at the IETF believe they're a failed experiment:
  13276. http://tools.ietf.org/html/draft-saintandre-xdash-considered-harmful
  13277. * loader/loader.cpp:
  13278. (WebCore::Loader::Host::servePendingRequests):
  13279. 2010-11-07 Daniel Bates <dbates@rim.com>
  13280. Reviewed by Adam Barth.
  13281. Assert that a non-null PassRefPtr<Document> has a non-null frame in Frame::setDocument()
  13282. https://bugs.webkit.org/show_bug.cgi?id=49152
  13283. Add an ASSERT to ensure that a non-null Document has a non-null Frame
  13284. in Frame::setDocument().
  13285. Currently, whenever Frame::setDocument() is called with a non-null
  13286. Document the Document has a non-null Frame. We should assert this
  13287. invariant.
  13288. * page/Frame.cpp:
  13289. (WebCore::Frame::setDocument):
  13290. 2010-11-07 Eric Seidel <eric@webkit.org>
  13291. Reviewed by Adam Barth.
  13292. Move Cache.* into loader/cache in as a start to cleaning up loader/
  13293. https://bugs.webkit.org/show_bug.cgi?id=49153
  13294. * Android.mk:
  13295. * CMakeLists.txt:
  13296. * GNUmakefile.am:
  13297. * WebCore.gypi:
  13298. * WebCore.pro:
  13299. * WebCore.vcproj/WebCore.vcproj:
  13300. * WebCore.xcodeproj/project.pbxproj:
  13301. * loader/cache/Cache.cpp: Renamed from WebCore/loader/Cache.cpp.
  13302. (WebCore::cache):
  13303. (WebCore::Cache::Cache):
  13304. (WebCore::createResource):
  13305. (WebCore::Cache::requestResource):
  13306. (WebCore::Cache::requestUserCSSStyleSheet):
  13307. (WebCore::Cache::revalidateResource):
  13308. (WebCore::Cache::revalidationSucceeded):
  13309. (WebCore::Cache::revalidationFailed):
  13310. (WebCore::Cache::resourceForURL):
  13311. (WebCore::Cache::deadCapacity):
  13312. (WebCore::Cache::liveCapacity):
  13313. (WebCore::Cache::pruneLiveResources):
  13314. (WebCore::Cache::pruneDeadResources):
  13315. (WebCore::Cache::setCapacities):
  13316. (WebCore::Cache::makeResourcePurgeable):
  13317. (WebCore::Cache::evict):
  13318. (WebCore::Cache::addCachedResourceLoader):
  13319. (WebCore::Cache::removeCachedResourceLoader):
  13320. (WebCore::fastLog2):
  13321. (WebCore::Cache::lruListFor):
  13322. (WebCore::Cache::removeFromLRUList):
  13323. (WebCore::Cache::insertInLRUList):
  13324. (WebCore::Cache::resourceAccessed):
  13325. (WebCore::Cache::removeFromLiveDecodedResourcesList):
  13326. (WebCore::Cache::insertInLiveDecodedResourcesList):
  13327. (WebCore::Cache::addToLiveResourcesSize):
  13328. (WebCore::Cache::removeFromLiveResourcesSize):
  13329. (WebCore::Cache::adjustSize):
  13330. (WebCore::Cache::TypeStatistic::addResource):
  13331. (WebCore::Cache::getStatistics):
  13332. (WebCore::Cache::setDisabled):
  13333. (WebCore::Cache::dumpStats):
  13334. (WebCore::Cache::dumpLRULists):
  13335. * loader/cache/Cache.h: Renamed from WebCore/loader/Cache.h.
  13336. (WebCore::Cache::LRUList::LRUList):
  13337. (WebCore::Cache::TypeStatistic::TypeStatistic):
  13338. (WebCore::Cache::loader):
  13339. (WebCore::Cache::disabled):
  13340. (WebCore::Cache::setPruneEnabled):
  13341. (WebCore::Cache::prune):
  13342. (WebCore::Cache::setDeadDecodedDataDeletionInterval):
  13343. (WebCore::Cache::deadDecodedDataDeletionInterval):
  13344. (WebCore::Cache::remove):
  13345. (WebCore::Cache::shouldMakeResourcePurgeableOnEviction):
  13346. 2010-11-05 Helder Correia <helder@sencha.com>
  13347. Reviewed by Andreas Kling.
  13348. [Qt] box-shadow does not blur (is solid) when using border-radius
  13349. https://bugs.webkit.org/show_bug.cgi?id=46327
  13350. Implement blurred box-shadow when styling with border-radius.
  13351. This change is related to https://bugs.webkit.org/show_bug.cgi?id=44488
  13352. * platform/graphics/qt/GraphicsContextQt.cpp:
  13353. (WebCore::GraphicsContext::fillRoundedRect):
  13354. 2010-11-07 John Reck <jreck@google.com>
  13355. Reviewed by Steve Block.
  13356. Implements navigator.language for Android
  13357. https://bugs.webkit.org/show_bug.cgi?id=49099
  13358. Android was previously hardcoding the value for WebCore::platformDefaultLanguage().
  13359. This patch removes the hardcoding and calls into the PlatformBridge to get the
  13360. correct language based off of the user's settings.
  13361. No new tests needed, this is already covered
  13362. * Android.mk:
  13363. * platform/android/LanguageAndroid.cpp: Added.
  13364. (WebCore::platformDefaultLanguage):
  13365. * platform/android/PlatformBridge.h:
  13366. * platform/android/TemporaryLinkStubs.cpp:
  13367. 2010-11-07 Robert Hogan <robert@webkit.org>
  13368. Reviewed by Andreas Kling.
  13369. [qt] screenDepthPerComponent returns the wrong value
  13370. Return best estimate of the number of bits per color
  13371. rather than screen depth.
  13372. Add a layout test to sanity check screenDepthPerComponent.
  13373. https://bugs.webkit.org/show_bug.cgi?id=20289
  13374. Test: fast/css/media-rule-screenDepthPerComponent.html
  13375. * platform/qt/PlatformScreenQt.cpp:
  13376. (WebCore::screenDepthPerComponent):
  13377. 2010-11-07 Chang Shu <chang.shu@nokia.com>
  13378. Reviewed by Antonio Gomes.
  13379. Add a helper function to avoid duplicated code.
  13380. https://bugs.webkit.org/show_bug.cgi?id=49085
  13381. * dom/SelectElement.cpp:
  13382. * editing/SelectionController.cpp:
  13383. (WebCore::SelectionController::modify):
  13384. * html/HTMLInputElement.cpp:
  13385. (WebCore::HTMLInputElement::isKeyboardFocusable):
  13386. * page/EventHandler.cpp:
  13387. (WebCore::EventHandler::defaultArrowEventHandler):
  13388. * page/SpatialNavigation.cpp:
  13389. (WebCore::isSpatialNavigationEnabled):
  13390. * page/SpatialNavigation.h:
  13391. 2010-11-06 Pavel Feldman <pfeldman@chromium.org>
  13392. Reviewed by Simon Fraser.
  13393. Web Inspector: Some image resources don't display the image when selected in the Resources panel.
  13394. https://bugs.webkit.org/show_bug.cgi?id=48935
  13395. Marked resources loaded from memory cache as finished.
  13396. * inspector/front-end/ResourceManager.js:
  13397. (WebInspector.ResourceManager.prototype.didLoadResourceFromMemoryCache):
  13398. 2010-11-06 Pavel Feldman <pfeldman@chromium.org>
  13399. Reviewed by Timothy Hatcher.
  13400. Web Inspector: XHR logging is not checked in context menu after browser restart.
  13401. https://bugs.webkit.org/show_bug.cgi?id=49133
  13402. * inspector/InspectorState.cpp:
  13403. (WebCore::InspectorState::InspectorState):
  13404. 2010-11-06 Ryosuke Niwa <rniwa@webkit.org>
  13405. Unreviewed Windows build fix.
  13406. * editing/EditingAllInOne.cpp: Added EditingStyle.cpp
  13407. 2010-11-04 Ryosuke Niwa <rniwa@webkit.org>
  13408. Reviewed by Darin Adler.
  13409. Bug 46335 - Add EditingStyle
  13410. https://bugs.webkit.org/show_bug.cgi?id=46335
  13411. Added EditingStyle to WebCore/editing. This class is intended to encapsulate getPropertiesNotIn, removeNonEditingProperties,
  13412. editingStyleAtPosition, and prepareEditingStyleToApplyAt in ApplyStyleCommand.cpp once deployed everywhere.
  13413. Deployed it in typing styles.
  13414. No new tests are added since this is a refactoring in progress.
  13415. * CMakeLists.txt: Added EditingStyle.cpp
  13416. * GNUmakefile.am: Added EditingStyle.cpp and EditingStyle.h
  13417. * WebCore.gypi: Ditto.
  13418. * WebCore.pro: Ditto.
  13419. * WebCore.xcodeproj/project.pbxproj: Ditto.
  13420. * editing/CompositeEditCommand.cpp:
  13421. (WebCore::CompositeEditCommand::moveParagraphs): Calls editingStyleIncludingTypingStyle.
  13422. (WebCore::CompositeEditCommand::breakOutOfEmptyListItem): Uses EditingStyle.
  13423. * editing/DeleteSelectionCommand.cpp:
  13424. (WebCore::DeleteSelectionCommand::saveTypingStyleState): Ditto.
  13425. (WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete): Ditto.
  13426. * editing/DeleteSelectionCommand.h:
  13427. * editing/EditingStyle.cpp: Added.
  13428. (WebCore::editingStyleFromComputedStyle): Added.
  13429. (WebCore::EditingStyle::EditingStyle): Added.
  13430. (WebCore::EditingStyle::init): Added; a clone of ApplyStyleCommand::editingStyleAtPosition.
  13431. (WebCore::EditingStyle::removeTextFillAndStrokeColorsIfNeeded): Extracted from init.
  13432. (WebCore::EditingStyle::replaceFontSizeByKeywordIfPossible): Extracted from init.
  13433. (WebCore::EditingStyle::isEmpty): Added.
  13434. (WebCore::EditingStyle::setStyle): Added.
  13435. (WebCore::EditingStyle::clear): Added.
  13436. (WebCore::EditingStyle::removeBlockProperties): Added.
  13437. (WebCore::EditingStyle::prepareToApplyAt): Added.
  13438. (WebCore::editingStyleIncludingTypingStyle): Added.
  13439. * editing/EditingStyle.h: Added.
  13440. (WebCore::EditingStyle::create): Added.
  13441. (WebCore::EditingStyle::style): Added.
  13442. * editing/RemoveFormatCommand.cpp:
  13443. (WebCore::RemoveFormatCommand::doApply): Uses EditingStyle.
  13444. * editing/SelectionController.h:
  13445. (WebCore::SelectionController::typingStyle): Uses EditingStyle.
  13446. (WebCore::SelectionController::clearTypingStyle): Uses EditingStyle.
  13447. (WebCore::SelectionController::setTypingStyle): Uses EditingStyle.
  13448. * rendering/style/RenderStyle.h: Added EditingStyle as a friend.
  13449. 2010-11-05 David Hyatt <hyatt@apple.com>
  13450. Reviewed by Dan Bernstein and Simon Fraser.
  13451. https://bugs.webkit.org/show_bug.cgi?id=47237
  13452. Make selection work with vertical text. This patch fixes a bug in the computation of lineTop. For lines
  13453. with positive leading, lineTop was incorrectly including the top leading. Since the flipping of lines
  13454. for "lr" and "bt" writing modes involved flipping using lineTop and lineBottom, an incorrect lineTop meant
  13455. that those modes were mis-rendering. This is why the Japanese "lr" text examples have the first line smushed
  13456. too far against the border.
  13457. Fixing lineTop to no longer incorrectly include top leading has implications for editing. I ended up
  13458. rewriting positionForPoint to exactly match selection, since that seemed to be the most intuitive
  13459. behavior. I got rid of the verticalClickFudgeFactor and now just use selectionTop and selectionBottom
  13460. instead of lineTop and lineBottom. I am pretty sure the code used selectionTop in a previous incarnation
  13461. anyway and that I moved away from it when I implemented lineTop and lineBottom. The code then grew
  13462. more complicated from people trying to work with lineTop and lineBottom, but going back to selectionTop
  13463. and selectionBottom is the right behavior I think. One editing test has been updated after this change
  13464. (editing/selection/after-line-break.html), and one DOM test has been changed to not hit test past the
  13465. bottom of a line (fast/dom/Document/CaretRangeFromPoint/basic.html).
  13466. I patched selection painting of InlineTextBoxes so that the leading going up to the next line box is used
  13467. for "lr" and "bt" modes instead of the previous box. This makes sense for English text, but we may want
  13468. a different policy for Japanese text eventually (possibly just splitting the difference instead). Leaving it
  13469. this way for now, and we can collect feedback on the design.
  13470. I rewrote all of the selection gap painting code to be writing-mode aware. During the course of rewriting this
  13471. code I noticed a bug in the logicalLeftSelectionOffset and logicalRightSelectionOffset functions where there
  13472. was a coordinate space mismatch on a comparison. Fixing this improves the repaint/selection-clear.html test.
  13473. Added new tests in fast/blockflow/.
  13474. * rendering/InlineFlowBox.cpp:
  13475. (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
  13476. * rendering/InlineFlowBox.h:
  13477. * rendering/InlineTextBox.cpp:
  13478. (WebCore::InlineTextBox::selectionBottom):
  13479. (WebCore::InlineTextBox::paintSelection):
  13480. (WebCore::InlineTextBox::paintCompositionBackground):
  13481. (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
  13482. (WebCore::InlineTextBox::paintTextMatchMarker):
  13483. * rendering/InlineTextBox.h:
  13484. * rendering/RenderBlock.cpp:
  13485. (WebCore::RenderBlock::selectionGapRectsForRepaint):
  13486. (WebCore::RenderBlock::paintSelection):
  13487. (WebCore::clipOutPositionedObjects):
  13488. (WebCore::blockDirectionOffset):
  13489. (WebCore::inlineDirectionOffset):
  13490. (WebCore::RenderBlock::logicalRectToPhysicalRect):
  13491. (WebCore::RenderBlock::selectionGaps):
  13492. (WebCore::RenderBlock::inlineSelectionGaps):
  13493. (WebCore::RenderBlock::blockSelectionGaps):
  13494. (WebCore::RenderBlock::blockSelectionGap):
  13495. (WebCore::RenderBlock::logicalLeftSelectionGap):
  13496. (WebCore::RenderBlock::logicalRightSelectionGap):
  13497. (WebCore::RenderBlock::logicalLeftSelectionOffset):
  13498. (WebCore::RenderBlock::logicalRightSelectionOffset):
  13499. * rendering/RenderBlock.h:
  13500. * rendering/RenderBox.cpp:
  13501. (WebCore::RenderBox::flipForWritingMode):
  13502. * rendering/RenderBox.h:
  13503. (WebCore::RenderBox::logicalBottom):
  13504. * rendering/RootInlineBox.cpp:
  13505. (WebCore::RootInlineBox::alignBoxesInBlockDirection):
  13506. (WebCore::RootInlineBox::lineSelectionGap):
  13507. (WebCore::RootInlineBox::selectionTop):
  13508. (WebCore::RootInlineBox::selectionBottom):
  13509. * rendering/RootInlineBox.h:
  13510. 2010-11-05 Simon Fraser <simon.fraser@apple.com>
  13511. Just put things back the way they were. Too many mysterious linker errors.
  13512. 2010-11-05 Simon Fraser <simon.fraser@apple.com>
  13513. Undo most of the previous commit since the compiler seems to have trouble
  13514. with an inlined operator++ in debug builds.
  13515. * platform/DeprecatedPtrListImpl.cpp:
  13516. (WebCore::DeprecatedPtrListImplIterator::operator++):
  13517. * platform/DeprecatedPtrListImpl.h:
  13518. 2010-11-05 Simon Fraser <simon.fraser@apple.com>
  13519. Reviewed by Dave Hyatt.
  13520. Inline some DeprecatedPtrListImplIterator methods for performance
  13521. https://bugs.webkit.org/show_bug.cgi?id=49124
  13522. This is a ~4% performance improvement on some Peacekeepr "Community" tests.
  13523. * platform/DeprecatedPtrListImpl.cpp:
  13524. * platform/DeprecatedPtrListImpl.h:
  13525. (WebCore::DeprecatedListNode::DeprecatedListNode):
  13526. (WebCore::DeprecatedPtrListImplIterator::current):
  13527. (WebCore::DeprecatedPtrListImplIterator::operator++):
  13528. 2010-11-05 Adam Barth <abarth@webkit.org>
  13529. Reviewed by Eric Seidel.
  13530. Gray-scale PNGs with color profiles don't decode properly on Chromium Mac
  13531. https://bugs.webkit.org/show_bug.cgi?id=49110
  13532. Applying the color profile from this PNG was causing the image to
  13533. triple in width. This seems to be because both the PNG decoder and
  13534. CoreGraphics were trying to expand the gray-scale image to RGB. To fix
  13535. this issue, I've disabled color profile support for gray-scale PNGs.
  13536. Test: fast/images/gray-scale-png-with-color-profile.html
  13537. * platform/image-decoders/png/PNGImageDecoder.cpp:
  13538. (WebCore::PNGImageDecoder::headerAvailable):
  13539. 2010-11-05 Jian Li <jianli@chromium.org>
  13540. Reviewed by Dmitry Titov.
  13541. Need to check if page is detached in Frame::transferChildFrameToNewDocument to avoid occasional crash
  13542. https://bugs.webkit.org/show_bug.cgi?id=49116
  13543. The fix is to add the check.
  13544. * page/Frame.cpp:
  13545. (WebCore::Frame::transferChildFrameToNewDocument):
  13546. 2010-11-04 Enrica Casucci <enrica@apple.com>
  13547. Reviewed by Adele Peterson.
  13548. Pasting large amounts of plain text in a text area is very slow
  13549. https://bugs.webkit.org/show_bug.cgi?id=49040
  13550. <rdar://problem/7640912>
  13551. The optimization consists in skipping the ApplyStyle command when
  13552. pasting into a text area or into an element that has -webkit-user-modify: read-write-plaintext-only.
  13553. The biggest performance hit comes from iterating through
  13554. a large number of paragraph when no style change is needed.
  13555. A further step will be to improve the paragraph iteration when it
  13556. can't be avoided.
  13557. * editing/ReplaceSelectionCommand.cpp:
  13558. (WebCore::ReplaceSelectionCommand::doApply): Check if the selection
  13559. is in a text form control or in an element that has -webkit-user-modify: read-write-plaintext-only
  13560. and force no style matching.
  13561. 2010-11-05 Ryosuke Niwa <rniwa@webkit.org>
  13562. Reviewed by David Levin.
  13563. JSCallbackData::invokeCallback triggers layout from a worker thread
  13564. https://bugs.webkit.org/show_bug.cgi?id=49096
  13565. Fixed the bug by only calling updateStyleForAllDocuments when the context is document in
  13566. JSCallbackData::invokeCallback.
  13567. No new tests are added since many of existing workers tests hit the added assertion in debug builds.
  13568. * bindings/js/JSCallbackData.cpp:
  13569. (WebCore::JSCallbackData::invokeCallback): No longer calls updateStyleForAllDocuments unconditionally.
  13570. * dom/Document.cpp:
  13571. (WebCore::Document::updateStyleIfNeeded): Added ASSERT(isMainThread()).
  13572. (WebCore::Document::updateStyleForAllDocuments): Ditto.
  13573. (WebCore::Document::updateLayout): Ditto.
  13574. 2010-11-05 Ilya Sherman <isherman@chromium.org>
  13575. Reviewed by Simon Fraser.
  13576. Querying selection start and end should be const
  13577. https://bugs.webkit.org/show_bug.cgi?id=48786
  13578. * rendering/RenderTextControl.cpp:
  13579. (WebCore::RenderTextControl::selectionStart):
  13580. (WebCore::RenderTextControl::selectionEnd):
  13581. (WebCore::RenderTextControl::visiblePositionForIndex):
  13582. (WebCore::RenderTextControl::indexForVisiblePosition):
  13583. * rendering/RenderTextControl.h:
  13584. 2010-11-05 Chris Marrin <cmarrin@apple.com>
  13585. Reviewed by Simon Fraser.
  13586. Move resumeAnimations/suspendAnimations from Frame to AnimationController.
  13587. https://bugs.webkit.org/show_bug.cgi?id=49073
  13588. Changed the name of suspendAnimations/resumeAnimations to
  13589. suspendAnimationsInDocument/resumeAnimationsInDocument. These are no
  13590. longer exported, but have the same functionality as before. I then
  13591. added new suspendAnimations/resumeAnimations function which take
  13592. no params and suspend/resume on the frame owning the animation
  13593. controller and all its child frames. These are the functions that
  13594. are now exported. I then changed all the platform specific WebKit
  13595. code to use these functions.
  13596. * WebCore.exp.in:
  13597. * page/Frame.cpp:
  13598. * page/Frame.h:
  13599. * page/animation/AnimationController.cpp:
  13600. (WebCore::AnimationControllerPrivate::suspendAnimations):
  13601. (WebCore::AnimationControllerPrivate::resumeAnimations):
  13602. 2010-11-04 Zhenyao Mo <zmo@google.com>
  13603. Reviewed by Kenneth Russell.
  13604. Need to simulate DEPTH_STENCIL in framebufferRenderbuffer / getFramebufferAttachmentParameter
  13605. https://bugs.webkit.org/show_bug.cgi?id=49020
  13606. * html/canvas/WebGLFramebuffer.cpp:
  13607. (WebCore::WebGLFramebuffer::getAttachment): Return the attached renderbuffer/texture.
  13608. (WebCore::WebGLFramebuffer::isIncomplete): Add an extra parameter deciding whether we should check internal format matching the attachment point or not.
  13609. (WebCore::WebGLFramebuffer::onAccess): Pass extra parameter in isIncomplete.
  13610. * html/canvas/WebGLFramebuffer.h:
  13611. * html/canvas/WebGLRenderingContext.cpp:
  13612. (WebCore::WebGLRenderingContext::checkFramebufferStatus): Pass extra parameter in isIncomplete.
  13613. (WebCore::WebGLRenderingContext::framebufferRenderbuffer): Emulate DEPTH_STENCIL_ATTACHMENT; re-attach previously conflicted buffers upon detachment.
  13614. (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter): Throw an error when conflicted attachments exist.
  13615. (WebCore::WebGLRenderingContext::renderbufferStorage): Map DEPTH_STENCIL to DEPTH24_STENCIL8.
  13616. * platform/graphics/Extensions3D.h: Add DEPTH24_STENCIL8 enum and update the documentation.
  13617. * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
  13618. (WebCore::GraphicsContext3D::framebufferRenderbuffer): Remove emulation code at this level.
  13619. 2010-11-05 Chris Guillory <chris.guillory@google.com>
  13620. Reviewed by Chris Fleizach.
  13621. Keep a reference to the scrollbar in accessibility scrollbar.
  13622. https://bugs.webkit.org/show_bug.cgi?id=48896
  13623. * accessibility/AccessibilityScrollbar.h:
  13624. (WebCore::AccessibilityScrollbar::scrollbar):
  13625. 2010-11-05 Chang Shu <chang.shu@nokia.com>
  13626. Reviewed by Antonio Gomes.
  13627. Add support for <select> element in single selection mode. We use space to
  13628. trigger arrow key handling for selection change or spatial navigation.
  13629. https://bugs.webkit.org/show_bug.cgi?id=48937
  13630. * dom/SelectElement.cpp:
  13631. (WebCore::isSpatialNavigationEnabled):
  13632. (WebCore::SelectElement::menuListDefaultEventHandler):
  13633. (WebCore::SelectElement::listBoxDefaultEventHandler):
  13634. 2010-11-05 Charlie Reis <creis@chromium.org>
  13635. Reviewed by Darin Fisher.
  13636. Need to expose HistoryController::previousItem() for Chromium WebKit API.
  13637. https://bugs.webkit.org/show_bug.cgi?id=48809
  13638. * loader/HistoryController.h:
  13639. 2010-11-05 Ryosuke Niwa <rniwa@webkit.org>
  13640. Reviewed by Darin Adler.
  13641. Crash in ApplyStyleCommand::surroundNodeRangeWithElement
  13642. https://bugs.webkit.org/show_bug.cgi?id=48581
  13643. The crash was caused by a false assertion that we can always recover selection in
  13644. ApplyStyleCommand::removeInlineStyle. Fixed the crash by removing the assertion
  13645. and adding an early exit to the call site. Also converted raw pointers to RefPtr
  13646. in surroundNodeRangeWithElement and addInlineStyleIfNeeded.
  13647. Test (non-Mac platforms): editing/style/iframe-onload-crash.html
  13648. * editing/ApplyStyleCommand.cpp:
  13649. (WebCore::ApplyStyleCommand::applyInlineStyle):
  13650. (WebCore::ApplyStyleCommand::removeInlineStyle):
  13651. (WebCore::ApplyStyleCommand::surroundNodeRangeWithElement):
  13652. (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
  13653. * editing/ApplyStyleCommand.h:
  13654. 2010-11-04 Alexey Proskuryakov <ap@apple.com>
  13655. Reviewed by Darin Adler.
  13656. https://bugs.webkit.org/show_bug.cgi?id=49008
  13657. <rdar://problem/7906226> Frequent crashes on mail.yahoo.co.jp
  13658. Instance::m_runtimeObject used to be zeroed out by RuntimeObject destructor. But the
  13659. destructor may not be called immediately - GC first marks an object as dead, and only
  13660. destroys it when its cell is overwritten. So, m_runtimeObject would keep pointing to a dead
  13661. object.
  13662. Functions in JSPluginElementFunctions.cpp put the RuntimeObject on stack for later use,
  13663. but if it's already dead, it can be overwritten before use.
  13664. The solution is of course to use WeakGCPtr, which returns 0 for dead objects.
  13665. * bridge/jsc/BridgeJSC.cpp:
  13666. (JSC::Bindings::Instance::Instance):
  13667. (JSC::Bindings::Instance::~Instance):
  13668. (JSC::Bindings::Instance::createRuntimeObject):
  13669. (JSC::Bindings::Instance::willDestroyRuntimeObject):
  13670. (JSC::Bindings::Instance::willInvalidateRuntimeObject):
  13671. * bridge/jsc/BridgeJSC.h:
  13672. * bridge/runtime_object.cpp:
  13673. (JSC::Bindings::RuntimeObject::~RuntimeObject):
  13674. (JSC::Bindings::RuntimeObject::invalidate):
  13675. 2010-11-05 Chris Marrin <cmarrin@apple.com>
  13676. Reviewed by Simon Fraser.
  13677. Make suspendAnimations/resumeAnimations and setCSSAnimations traverse through subframes and remember state
  13678. https://bugs.webkit.org/show_bug.cgi?id=46945
  13679. Add new funtions to suspend and resume animations. The go through all subframes and suspend or resume them
  13680. recursively.
  13681. Test: animations/stop-animation-on-suspend.html
  13682. * WebCore.exp.in:
  13683. * page/Frame.cpp:
  13684. (WebCore::Frame::suspendAnimations):
  13685. (WebCore::Frame::resumeAnimations):
  13686. * page/Frame.h:
  13687. 2010-11-05 Pavel Feldman <pfeldman@chromium.org>
  13688. Reviewed by Timothy Hatcher.
  13689. Web Inspector: Crash in InspectorDOMAgent::innerParentNode.
  13690. https://bugs.webkit.org/show_bug.cgi?id=49054
  13691. * inspector/InspectorDOMAgent.cpp:
  13692. (WebCore::InspectorDOMAgent::setOuterHTML):
  13693. 2010-11-05 Pavel Feldman <pfeldman@chromium.org>
  13694. Reviewed by Timothy Hatcher.
  13695. Web Inspector: XHR logging in console should give complete view of resource.
  13696. https://bugs.webkit.org/show_bug.cgi?id=48998
  13697. Drive-by fixes: linkify line number to scripts panel, fall back to resources;
  13698. enable multiline console entry on shift modifier as well.
  13699. * inspector/front-end/NetworkPanel.js:
  13700. (WebInspector.NetworkPanel):
  13701. (WebInspector.NetworkPanel.prototype._reset):
  13702. (WebInspector.NetworkPanel.prototype.refreshResource):
  13703. (WebInspector.NetworkPanel.prototype.canShowSourceLine):
  13704. (WebInspector.NetworkPanel.prototype.showSourceLine):
  13705. * inspector/front-end/StoragePanel.js:
  13706. (WebInspector.StoragePanel.prototype.show):
  13707. (WebInspector.StoragePanel.prototype.showSourceLine):
  13708. * inspector/front-end/inspector.js:
  13709. (WebInspector.showPanel):
  13710. (WebInspector.linkifyStringAsFragment):
  13711. 2010-10-27 Jeremy Orlow <jorlow@chromium.org>
  13712. Reviewed by Steve Block.
  13713. Clean up IDBTransactionBackend/Coordinator
  13714. https://bugs.webkit.org/show_bug.cgi?id=48425
  13715. Get rid of obsolete id and thus we don't need the factory method
  13716. on IDBTransactionCoordinator that creates IDBTransactionBackends.
  13717. Add an assert to IDBTransactionBackend to make sure we're not in
  13718. the coordinator and then remove the coordinators ref counting link
  13719. to the transaction.
  13720. Have the transaction backend zero out refs to the database when its
  13721. done using it.
  13722. Existing tests provide coverage for this refactoring.
  13723. * storage/IDBDatabaseBackendImpl.cpp:
  13724. (WebCore::IDBDatabaseBackendImpl::setVersion):
  13725. (WebCore::IDBDatabaseBackendImpl::transaction):
  13726. * storage/IDBTransactionBackendImpl.cpp:
  13727. (WebCore::IDBTransactionBackendImpl::create):
  13728. (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
  13729. (WebCore::IDBTransactionBackendImpl::~IDBTransactionBackendImpl):
  13730. (WebCore::IDBTransactionBackendImpl::abort):
  13731. (WebCore::IDBTransactionBackendImpl::commit):
  13732. * storage/IDBTransactionBackendImpl.h:
  13733. * storage/IDBTransactionBackendInterface.h:
  13734. * storage/IDBTransactionCoordinator.cpp:
  13735. (WebCore::IDBTransactionCoordinator::didStartTransaction):
  13736. (WebCore::IDBTransactionCoordinator::didFinishTransaction):
  13737. (WebCore::IDBTransactionCoordinator::isActive):
  13738. (WebCore::IDBTransactionCoordinator::processStartedTransactions):
  13739. * storage/IDBTransactionCoordinator.h:
  13740. 2010-10-27 Jeremy Orlow <jorlow@chromium.org>
  13741. Reviewed by Steve Block.
  13742. IDBFactoryBackend's reference to IDBDatabaseBackend should be weak
  13743. https://bugs.webkit.org/show_bug.cgi?id=48416
  13744. The factory's lifetime is that of the application, so without making
  13745. this weak, IDBDatabaseBackend's will never be closed until the app
  13746. terminates.
  13747. * storage/IDBDatabaseBackendImpl.cpp:
  13748. (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl):
  13749. (WebCore::IDBDatabaseBackendImpl::~IDBDatabaseBackendImpl):
  13750. * storage/IDBDatabaseBackendImpl.h:
  13751. (WebCore::IDBDatabaseBackendImpl::create):
  13752. * storage/IDBFactoryBackendImpl.cpp:
  13753. (WebCore::IDBFactoryBackendImpl::removeIDBDatabaseBackend):
  13754. (WebCore::IDBFactoryBackendImpl::removeSQLiteDatabase):
  13755. (WebCore::IDBFactoryBackendImpl::open):
  13756. * storage/IDBFactoryBackendImpl.h:
  13757. 2010-10-27 Jeremy Orlow <jorlow@chromium.org>
  13758. Reviewed by Steve Block.
  13759. IDBObjectStoreBackend and IDBIndexBackend should not depend on IDBDatabaseBackend
  13760. https://bugs.webkit.org/show_bug.cgi?id=48410
  13761. Break dependency cyles between IDBDatabaseBackend and the other classes listed.
  13762. This was causing memory leaks.
  13763. * storage/IDBCursorBackendImpl.cpp:
  13764. (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):
  13765. (WebCore::IDBCursorBackendImpl::updateInternal):
  13766. (WebCore::IDBCursorBackendImpl::removeInternal):
  13767. (WebCore::IDBCursorBackendImpl::database):
  13768. * storage/IDBCursorBackendImpl.h:
  13769. (WebCore::IDBCursorBackendImpl::create):
  13770. * storage/IDBDatabaseBackendImpl.cpp:
  13771. (WebCore::IDBDatabaseBackendImpl::createObjectStore):
  13772. (WebCore::IDBDatabaseBackendImpl::loadObjectStores):
  13773. * storage/IDBIndexBackendImpl.cpp:
  13774. (WebCore::IDBIndexBackendImpl::IDBIndexBackendImpl):
  13775. (WebCore::IDBIndexBackendImpl::openCursorInternal):
  13776. (WebCore::IDBIndexBackendImpl::sqliteDatabase):
  13777. * storage/IDBIndexBackendImpl.h:
  13778. (WebCore::IDBIndexBackendImpl::create):
  13779. (WebCore::IDBIndexBackendImpl::storeName):
  13780. * storage/IDBObjectStoreBackendImpl.cpp:
  13781. (WebCore::IDBObjectStoreBackendImpl::IDBObjectStoreBackendImpl):
  13782. (WebCore::IDBObjectStoreBackendImpl::createIndex):
  13783. (WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
  13784. (WebCore::IDBObjectStoreBackendImpl::loadIndexes):
  13785. (WebCore::IDBObjectStoreBackendImpl::sqliteDatabase):
  13786. * storage/IDBObjectStoreBackendImpl.h:
  13787. (WebCore::IDBObjectStoreBackendImpl::create):
  13788. 2010-11-05 Pavel Feldman <pfeldman@chromium.org>
  13789. Reviewed by Timothy Hatcher.
  13790. Web Inspector: inspector lags on large resources with numerous <script> tags.
  13791. https://bugs.webkit.org/show_bug.cgi?id=49060
  13792. * inspector/front-end/ScriptsPanel.js:
  13793. (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu):
  13794. 2010-11-05 Patrick Gansterer <paroga@webkit.org>
  13795. Reviewed by David Kilzer.
  13796. Replace ARRAYSIZE with WTF_ARRAY_LENGTH
  13797. https://bugs.webkit.org/show_bug.cgi?id=48903
  13798. * platform/UUID.cpp:
  13799. (WebCore::createCanonicalUUIDString):
  13800. * platform/graphics/chromium/FontCacheChromiumWin.cpp:
  13801. (WebCore::FontCache::getFontDataForCharacters):
  13802. * platform/graphics/win/FontCacheWin.cpp:
  13803. (WebCore::FontCache::getLastResortFallbackFont):
  13804. * platform/graphics/win/IconWin.cpp:
  13805. (WebCore::Icon::createIconForFiles):
  13806. * platform/win/ClipboardUtilitiesWin.cpp:
  13807. (WebCore::getWebLocData):
  13808. * platform/win/ClipboardWin.cpp:
  13809. (WebCore::createGlobalHDropContent):
  13810. (WebCore::createGlobalImageFileDescriptor):
  13811. (WebCore::ClipboardWin::files):
  13812. (WebCore::ClipboardWin::writeURL):
  13813. * platform/win/DragDataWin.cpp:
  13814. (WebCore::DragData::asFilenames):
  13815. * platform/win/FileSystemWin.cpp:
  13816. (WebCore::safeCreateFile):
  13817. 2010-11-05 Roland Steiner <rolandsteiner@chromium.org>
  13818. Reviewed by Dirk Schulze.
  13819. Bug 48979 - [Chromium] SVGListPropertyTearOff.h: function commitChange ASSERTs on Win & Mac
  13820. https://bugs.webkit.org/show_bug.cgi?id=48979
  13821. Function removeItemValuesAndWrappers(): Move code out of 'if' statement so that
  13822. 'wrappers' and 'values' stay synced.
  13823. test: svg/dom/baseVal-animVal-crash.html doesn't ASSERT
  13824. * svg/properties/SVGListProperty.h:
  13825. (WebCore::SVGListProperty::removeItemValuesAndWrappers):
  13826. 2010-11-05 John Reck <jreck@google.com>
  13827. Reviewed by Nikolas Zimmermann.
  13828. The change to SVGPropertyTearOff by CodeGeneratorV8.pm caused two build failures
  13829. for Android. One was a missing SVGPropertyTearOff.h include, the other was a
  13830. missing forward declaration of FloatRect. Seems to be the result of:
  13831. https://bugs.webkit.org/show_bug.cgi?id=48204
  13832. Bug: https://bugs.webkit.org/show_bug.cgi?id=49025
  13833. No tests needed, fixes build issue.
  13834. * bindings/scripts/CodeGeneratorV8.pm:
  13835. 2010-11-05 Rob Buis <rwlbuis@gmail.com>
  13836. Reviewed by David Hyatt.
  13837. CSSRule#parentRule always null
  13838. https://bugs.webkit.org/show_bug.cgi?id=46228
  13839. Ensure MediaList child rules have the MediaList set as parent
  13840. in order to correct their parentRule correctness.
  13841. Test: fast/dom/css-mediarule-parentRule.html
  13842. * css/CSSMediaRule.cpp:
  13843. (WebCore::CSSMediaRule::CSSMediaRule):
  13844. 2010-11-04 Xan Lopez <xlopez@igalia.com>
  13845. Fix the GTK+ build.
  13846. * GNUmakefile.am:
  13847. 2010-10-20 Chang Shu <chang.shu@nokia.com>, Antonio Gomes <tonikitoo@webkit.org>
  13848. Reviewed by Simon Fraser.
  13849. [Qt] Makes <input type=text> and <textarea> functional with
  13850. Spatial Navigation enabled. Before this patch, the focus cannot
  13851. move away from input box once it is in. This patch allows focus
  13852. move to neighbor nodes when the caret reaches the edge of the texts.
  13853. This patch does not support yet cases where the focused <input>
  13854. has a JS handler for the arrow keys.
  13855. https://bugs.webkit.org/show_bug.cgi?id=37153
  13856. Tests: fast/events/spatial-navigation/snav-input.html
  13857. fast/events/spatial-navigation/snav-textarea.html
  13858. * editing/EditorCommand.cpp:
  13859. (WebCore::executeMoveDown):
  13860. (WebCore::executeMoveLeft):
  13861. (WebCore::executeMoveRight):
  13862. (WebCore::executeMoveUp):
  13863. * editing/SelectionController.cpp:
  13864. (WebCore::SelectionController::modify):
  13865. 2010-11-04 Dan Bernstein <mitz@apple.com>
  13866. Build fix.
  13867. * editing/Editor.cpp:
  13868. (WebCore::Editor::dismissCorrectionPanel):
  13869. 2010-11-04 Jia Pu <jpu@apple.com>
  13870. Reviewed by Dan Bernstein.
  13871. reversion bubble in WebViews
  13872. https://bugs.webkit.org/show_bug.cgi?id=47630
  13873. <rdar://problem/8530960>
  13874. Added manual test:
  13875. manual-tests/autocorrection/continue-typing-to-dismiss-reversion.html
  13876. manual-tests/autocorrection/delete-to-dismiss-reversion.html
  13877. manual-tests/autocorrection/delete-to-end-of-word-to-show-reversion.html
  13878. manual-tests/autocorrection/move-to-end-of-word-to-show-reversion.html
  13879. manual-tests/autocorrection/type-whitespace-to-dismiss-reversion.html
  13880. We can only manully test this feature for two reasons:
  13881. 1. On Mac OS X, the result of spell checking is partly determined by past user usage. We can't
  13882. realiably generating test cases until we can disable user custom data during spell checking.
  13883. 2. To exerciese this feature, we need a minimum of 0.3 second delay using WebCore timer.
  13884. This patch is to add reversion to correction panel. It consists of following major code changes:
  13885. 1. Collected all autocorrection related member variables in Editor into a CorrectionPanelInfo
  13886. class to improve readability.
  13887. 2. Changed signature of Editor::startCorrectionPanelTimer() to allow caller to specify the
  13888. type of correction panel--regular correction or reversion.
  13889. 3. Made necessary changes to adopt reversion API in AppKit.
  13890. 4. Use SUPPORT_CORRECTION_PANEL macro to improve readability.
  13891. * GNUmakefile.am: Added CorrectionPanelInfo.h.
  13892. * WebCore.gypi: Ditto.
  13893. * WebCore.pro: Ditto.
  13894. * WebCore.vcproj/WebCore.vcproj: Ditto.
  13895. * WebCore.xcodeproj/project.pbxproj:
  13896. * editing/CorrectionPanelInfo.h: Added.
  13897. * editing/Editor.cpp:
  13898. (WebCore::Editor::respondToChangedSelection): Start correction panel timer for reversion when
  13899. the new selection is a caret selection at end of a previously corrected word.
  13900. (WebCore::Editor::appliedEditing): Stop timer at the beginning of the method instead of at the end.
  13901. (WebCore::Editor::~Editor): Adopted new method dismissCorrectionPanel().
  13902. (WebCore::Editor::markMisspellingsAfterTypingToPosition): Adopted new method applyCorrectionPanelInfo().
  13903. (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Code change for new m_correctionPanelInfo
  13904. member variable.
  13905. (WebCore::Editor::correctionPanelTimerFired): Change to handle reversion panel type.
  13906. (WebCore::Editor::handleRejectedCorrection): Ditto.
  13907. (WebCore::Editor::startCorrectionPanelTimer): Changed signature to allow passing in panel type.
  13908. (WebCore::Editor::stopCorrectionPanelTimer): Adopted macro SUPPORT_CORRECTION_PANEL.
  13909. (WebCore::Editor::handleCancelOperation): Ditto.
  13910. (WebCore::Editor::isShowingCorrectionPanel): Ditto.
  13911. (WebCore::Editor::dismissCorrectionPanel): Update m_correctionPanelInfo when correction panel
  13912. is dismissed.
  13913. (WebCore::Editor::applyCorrectionPanelInfo): Factored out code that applies autocorrection.
  13914. (WebCore::Editor::changeSelectionAfterCommand): Adopt macro SUPPORT_CORRECTION_PANEL.
  13915. * editing/Editor.h: Adopted CorrectionPanelInfo and add new member methods.
  13916. * editing/EditorCommand.cpp: Adopted macro SUPPORT_CORRECTION_PANEL
  13917. (WebCore::createCommandMap):
  13918. * editing/TypingCommand.cpp: Adopted macro SUPPORT_CORRECTION_PANEL and new signature of
  13919. startCorrectionPanelTimer().
  13920. (WebCore::TypingCommand::markMisspellingsAfterTyping):
  13921. * loader/EmptyClients.h:
  13922. (WebCore::EmptyEditorClient::showCorrectionPanel): Adopted new signature of base class method.
  13923. (WebCore::EmptyEditorClient::dismissCorrectionPanel): Ditto.
  13924. * manual-tests/autocorrection/continue-typing-to-dismiss-reversion.html: Added.
  13925. * manual-tests/autocorrection/delete-to-dismiss-reversion.html: Added.
  13926. * manual-tests/autocorrection/delete-to-end-of-word-to-show-reversion.html: Added.
  13927. * manual-tests/autocorrection/move-to-end-of-word-to-show-reversion.html: Added.
  13928. * manual-tests/autocorrection/type-whitespace-to-dismiss-reversion.html: Added.
  13929. * page/EditorClient.h: Changed signature of showCorrectionPanel() and dismissCorrectionPanel().
  13930. * platform/graphics/mac/GraphicsContextMac.mm: Added comment to improve readability.
  13931. (WebCore::GraphicsContext::drawLineForTextChecking):
  13932. 2010-11-04 Dan Bernstein <mitz@apple.com>
  13933. Reviewed by Dave Hyatt.
  13934. Made table layout and painting work with all writing modes. Hit-testing, repainting, tables
  13935. where some elements have their own layers, and cells whose writing mode differs from the
  13936. table’s are not supported yet.
  13937. Part of: Make tables work with vertical text
  13938. https://bugs.webkit.org/show_bug.cgi?id=46417
  13939. Tests: fast/table/027-vertical.html
  13940. fast/table/028-vertical.html
  13941. fast/table/035-vertical.html
  13942. fast/table/038-vertical.html
  13943. fast/table/040-vertical.html
  13944. fast/table/auto-with-percent-height-vertical.html
  13945. fast/table/border-collapsing/001-vertical.html
  13946. fast/table/border-collapsing/002-vertical.html
  13947. fast/table/border-collapsing/003-vertical.html
  13948. fast/table/border-collapsing/004-vertical.html
  13949. fast/table/border-collapsing/border-collapsing-head-foot-vertical.html
  13950. fast/table/border-collapsing/equal-precedence-resolution-vertical.html
  13951. fast/table/border-collapsing/rtl-border-collapsing-vertical.html
  13952. fast/table/colspanMinWidth-vertical.html
  13953. fast/table/fixed-with-auto-with-colspan-vertical.html
  13954. fast/table/growCellForImageQuirk-vertical.html
  13955. fast/table/height-percent-test-vertical.html
  13956. fast/table/percent-widths-stretch-vertical.html
  13957. fast/table/rowspan-paint-order-vertical.html
  13958. fast/table/table-display-types-vertical.html
  13959. * css/CSSStyleSelector.cpp:
  13960. (WebCore::CSSStyleSelector::adjustRenderStyle): Changed to allow all writing modes for tables,
  13961. make row groups, rows, column groups and columns inherit the table’s writing mode. For now,
  13962. make cells do this too.
  13963. * html/HTMLTableElement.cpp:
  13964. (WebCore::HTMLTableElement::parseMappedAttribute): Map align=center using logical properties.
  13965. * rendering/RenderTable.cpp:
  13966. (WebCore::RenderTable::RenderTable): Initialize m_borderStart and m_borderEnd.
  13967. (WebCore::RenderTable::styleDidChange): Changed the rule for when to use auto layout to look
  13968. at the logical width instead of the width.
  13969. (WebCore::RenderTable::computeLogicalWidth): Uses logical widths and works with perpendicular
  13970. containing blocks.
  13971. (WebCore::RenderTable::layout): Use logical lengths.
  13972. (WebCore::RenderTable::setCellLogicalWidths): Renamed setCellWidths() to this and updated for
  13973. the renaming of RenderTableSection::setCellWidths().
  13974. (WebCore::RenderTable::paintObject): Account for flipped modes.
  13975. (WebCore::RenderTable::subtractCaptionRect): Added this helper method the considers writing modes.
  13976. (WebCore::RenderTable::paintBoxDecorations): Adopted subtractCaptionRect().
  13977. (WebCore::RenderTable::paintMask): Ditto.
  13978. (WebCore::RenderTable::computePreferredLogicalWidths): Updated for the renaming of
  13979. recalcHorizontalBorders().
  13980. (WebCore::RenderTable::calcBorderStart): Renamed calcBorderLeft() to this and changed it to use
  13981. borderStart(). Splits odd number of pixels based on the physical side.
  13982. (WebCore::RenderTable::calcBorderEnd): Similar.
  13983. (WebCore::RenderTable::recalcBordersInRowDirection): Renamed recalcHorizontalBorders() to this
  13984. and updated for other renames.
  13985. (WebCore::RenderTable::borderBefore): Replaced borderTop() with this.
  13986. (WebCore::RenderTable::borderAfter): Similar.
  13987. (WebCore::RenderTable::outerBorderBefore): Similar.
  13988. (WebCore::RenderTable::outerBorderAfter): Similar.
  13989. (WebCore::RenderTable::outerBorderStart): Similar.
  13990. (WebCore::RenderTable::outerBorderEnd): Similar.
  13991. (WebCore::RenderTable::firstLineBoxBaseline): Changed to use logical heights.
  13992. (WebCore::RenderTable::overflowClipRect): Account for writing modes.
  13993. * rendering/RenderTable.h:
  13994. (WebCore::RenderTable::borderStart):
  13995. (WebCore::RenderTable::borderEnd):
  13996. (WebCore::RenderTable::borderLeft):
  13997. (WebCore::RenderTable::borderRight):
  13998. (WebCore::RenderTable::borderTop):
  13999. (WebCore::RenderTable::borderBottom):
  14000. (WebCore::RenderTable::outerBorderLeft):
  14001. (WebCore::RenderTable::outerBorderRight):
  14002. (WebCore::RenderTable::outerBorderTop):
  14003. (WebCore::RenderTable::outerBorderBottom):
  14004. (WebCore::RenderTable::bordersPaddingAndSpacingInRowDirection): Changed to match its name.
  14005. * rendering/RenderTableRow.cpp:
  14006. (WebCore::RenderTableRow::styleWillChange): Changed to detect changes to logical height.
  14007. * rendering/RenderTableSection.cpp:
  14008. (WebCore::setRowLogicalHeightToRowStyleLogicalHeightIfNotRelative): Renamed and changed to use
  14009. logical heights.
  14010. (WebCore::RenderTableSection::RenderTableSection): Updated initializers for new member variables.
  14011. (WebCore::RenderTableSection::addChild): Updated for rename.
  14012. (WebCore::RenderTableSection::ensureRows): Ditto.
  14013. (WebCore::RenderTableSection::addCell): Ditto. Also use logical heights.
  14014. (WebCore::RenderTableSection::setCellLogicalWidths): Renamed setCellWidths() to this, changed
  14015. to use logical widths.
  14016. (WebCore::RenderTableSection::calcRowLogicalHeight): Added “logical” to the name. Updated with
  14017. logical heights.
  14018. (WebCore::RenderTableSection::layoutRows):
  14019. (WebCore::RenderTableSection::calcOuterBorderBefore):
  14020. (WebCore::RenderTableSection::calcOuterBorderAfter):
  14021. (WebCore::RenderTableSection::calcOuterBorderStart):
  14022. (WebCore::RenderTableSection::calcOuterBorderEnd):
  14023. (WebCore::RenderTableSection::recalcOuterBorder):
  14024. (WebCore::RenderTableSection::firstLineBoxBaseline):
  14025. (WebCore::RenderTableSection::paintCell):
  14026. (WebCore::RenderTableSection::recalcCells):
  14027. * rendering/RenderTableSection.h:
  14028. (WebCore::RenderTableSection::outerBorderBefore):
  14029. (WebCore::RenderTableSection::outerBorderAfter):
  14030. (WebCore::RenderTableSection::outerBorderStart):
  14031. (WebCore::RenderTableSection::outerBorderEnd):
  14032. 2010-11-04 Kent Tamura <tkent@chromium.org>
  14033. Unreviewed, trivial test fix.
  14034. Fix GTK build for http://trac.webkit.org/changeset/71373 .
  14035. * GNUmakefile.am: Add HTMLOutputElement.{cpp,h}
  14036. 2010-11-04 MORITA Hajime <morrita@google.com>
  14037. Reviewed by Kent Tamura.
  14038. Stale reference to RenderObject held as FrameView layoutRoot
  14039. https://bugs.webkit.org/show_bug.cgi?id=48019
  14040. <progress> and <meter> shouldn't have children of its RenderObject,
  14041. which caused unexpected result.
  14042. This change suppresses child creation to prevent it.
  14043. Tests: fast/dom/HTMLMeterElement/meter-element-with-child-crash.html
  14044. fast/dom/HTMLProgressElement/progress-element-with-child-crash.html
  14045. * rendering/RenderIndicator.h:
  14046. (WebCore::RenderIndicator::canHaveChildren):
  14047. 2010-11-04 Kenichi Ishibashi <bashi@google.com>
  14048. Reviewed by Kent Tamura.
  14049. [HTML5][Forms] Support for <output> element
  14050. https://bugs.webkit.org/show_bug.cgi?id=29363
  14051. Support for <output> element.
  14052. Tests: fast/dom/HTMLOutputElement/dom-settable-token-list.html
  14053. fast/dom/HTMLOutputElement/htmloutputelement-reset-event.html
  14054. fast/dom/HTMLOutputElement/htmloutputelement-validity.html
  14055. fast/dom/HTMLOutputElement/htmloutputelement-value.html
  14056. fast/dom/HTMLOutputElement/htmloutputelement.html
  14057. * Android.derived.jscbindings.mk: Added JSHTMLOutputElement.h.
  14058. * Android.derived.v8bindings.mk: Added V8HTMLOutputElement.h.
  14059. * Android.jscbindings.mk: Added JSHTMLOutputElementCustom.cpp.
  14060. * Android.mk: Added HTMLOutputElement.cpp.
  14061. * Android.v8bindings.mk: Added V8HTMLOutputElementCustom.cpp.
  14062. * CMakeLists.txt: Added HTMLOutputElement.{idl,cpp} and JSHTMLOutputElementCustom.cpp.
  14063. * DerivedSources.cpp: Added JSHTMLOutputElement.cpp.
  14064. * DerivedSources.make: Added HTMLOutputElement entry.
  14065. * GNUmakefile.am: Added JSHTMLOutputElement.{cpp,h}
  14066. * WebCore.gypi: Added HTMLOutputElement.{idl,cpp,h}, JSHTMLOutputElementCustom.cpp and V8HTMLOutputElementCustom.cpp
  14067. * WebCore.pri: Added HTMLOutputElement.idl.
  14068. * WebCore.pro: Added V8HTMLOutputElementCustom.cpp, JSHTMLOutputElementCustom.cpp and HTMLOutputElement.cpp.
  14069. * WebCore.vcproj/WebCore.vcproj: Added entries for JSHTMLOutputElement.{cpp,h} and JSHTMLOutputElementCustom.cpp.
  14070. * WebCore.xcodeproj/project.pbxproj: Added entries for JSHTMLOutputElementCustom.cpp, HTMLOutputElement.{cpp,h,idl}, JSHTMLOutputElement.{cpp,h}
  14071. * bindings/js/JSBindingsAllInOne.cpp: Added JSHTMLOutputElementCustom.cpp.
  14072. * bindings/js/JSHTMLOutputElementCustom.cpp: Added.
  14073. (WebCore::JSHTMLOutputElement::htmlFor):
  14074. (WebCore::JSHTMLOutputElement::setHtmlFor):
  14075. * bindings/v8/custom/V8DOMSettableTokenListCustom.cpp: Modified.
  14076. (WebCore::V8DOMSettableTokenList::indexedPropertyGetter): Returns null if the index is out of range.
  14077. * bindings/v8/custom/V8HTMLOutputElementCustom.cpp: Added.
  14078. (WebCore::V8HTMLOutputElement::htmlForAccessorGetter):
  14079. (WebCore::V8HTMLOutputElement::htmlForAccessorSetter):
  14080. * css/html.css: Added a default style of output element.
  14081. (output):
  14082. * html/DOMSettableTokenList.cpp: Fix bugs.
  14083. (WebCore::DOMSettableTokenList::item): Returns null string if the index is out of range.
  14084. (WebCore::DOMSettableTokenList::addInternal): Added check m_tokens.isNull().
  14085. (WebCore::DOMSettableTokenList::setValue): Set the value case sensitive.
  14086. * html/HTMLOutputElement.cpp: Added.
  14087. (WebCore::HTMLOutputElement::HTMLOutputElement):
  14088. (WebCore::HTMLOutputElement::create):
  14089. (WebCore::HTMLOutputElement::formControlType):
  14090. (WebCore::HTMLOutputElement::parseMappedAttribute):
  14091. (WebCore::HTMLOutputElement::htmlFor):
  14092. (WebCore::HTMLOutputElement::setFor):
  14093. (WebCore::HTMLOutputElement::setForm):
  14094. (WebCore::HTMLOutputElement::childrenChanged):
  14095. (WebCore::HTMLOutputElement::reset):
  14096. (WebCore::HTMLOutputElement::value):
  14097. (WebCore::HTMLOutputElement::setValue):
  14098. (WebCore::HTMLOutputElement::defaultValue):
  14099. (WebCore::HTMLOutputElement::setDefaultValue):
  14100. (WebCore::HTMLOutputElement::setTextContentInternal):
  14101. * html/HTMLOutputElement.h: Added.
  14102. (WebCore::HTMLOutputElement::isEnumeratable):
  14103. (WebCore::HTMLOutputElement::willValidate):
  14104. * html/HTMLOutputElement.idl: Added.
  14105. * html/HTMLTagNames.in: Added "output".
  14106. * page/DOMWindow.idl: Added an attribute for HTMLOutputElement.
  14107. 2010-11-04 Zhenyao Mo <zmo@google.com>
  14108. Reviewed by Kenneth Russell.
  14109. Remove IMPLEMENTATION_COLOR_READ_FORMAT and TYPE
  14110. https://bugs.webkit.org/show_bug.cgi?id=48938
  14111. * html/canvas/WebGLRenderingContext.cpp:
  14112. (WebCore::WebGLRenderingContext::initializeNewContext):
  14113. (WebCore::WebGLRenderingContext::getParameter):
  14114. (WebCore::WebGLRenderingContext::readPixels):
  14115. * html/canvas/WebGLRenderingContext.h:
  14116. * html/canvas/WebGLRenderingContext.idl:
  14117. * platform/graphics/GraphicsContext3D.h:
  14118. * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
  14119. (WebCore::GraphicsContext3D::getIntegerv):
  14120. 2010-11-04 Zhenyao Mo <zmo@google.com>
  14121. Reviewed by Kenneth Russell.
  14122. TypedArray should throw exception if length not a multiple of element size
  14123. https://bugs.webkit.org/show_bug.cgi?id=45487
  14124. * bindings/js/JSArrayBufferViewHelper.h:
  14125. (WebCore::constructArrayBufferView):
  14126. * bindings/v8/custom/V8ArrayBufferViewCustom.h:
  14127. (WebCore::constructWebGLArray):
  14128. 2010-11-04 Kenneth Russell <kbr@google.com>
  14129. Reviewed by Adam Barth.
  14130. [chromium] Mac: WebGL: all textured content is blue
  14131. https://bugs.webkit.org/show_bug.cgi?id=49021
  14132. Added support for 8-bit, little-endian CGImages. The previous
  14133. image decode path used the default byte order, which is apparently
  14134. big-endian.
  14135. Tested with various WebGL content and layout tests in Chromium.
  14136. Ran layout tests in WebKit and tested various WebGL content in
  14137. Safari. Was not able to run layout tests with Chromium port of
  14138. DumpRenderTree due to build failures currently in the tree.
  14139. * platform/graphics/GraphicsContext3D.cpp:
  14140. (WebCore::doPacking):
  14141. * platform/graphics/GraphicsContext3D.h:
  14142. * platform/graphics/cg/GraphicsContext3DCG.cpp:
  14143. (WebCore::getSourceDataFormat):
  14144. (WebCore::GraphicsContext3D::getImageData):
  14145. 2010-11-03 Zhenyao Mo <zmo@google.com>
  14146. Reviewed by Kenneth Russell.
  14147. renderbufferStorage(DEPTH_STENCIL) shouldn't generate an error
  14148. https://bugs.webkit.org/show_bug.cgi?id=48891
  14149. * html/canvas/WebGLFramebuffer.cpp:
  14150. (WebCore::WebGLFramebuffer::isIncomplete): Considering the case where DEPTH_STENCIL is not supported.
  14151. * html/canvas/WebGLRenderbuffer.cpp:
  14152. (WebCore::WebGLRenderbuffer::WebGLRenderbuffer): Init added members.
  14153. * html/canvas/WebGLRenderbuffer.h: Add members and accessor functions.
  14154. (WebCore::WebGLRenderbuffer::setInternalFormat):
  14155. (WebCore::WebGLRenderbuffer::setSize):
  14156. (WebCore::WebGLRenderbuffer::getWidth):
  14157. (WebCore::WebGLRenderbuffer::getHeight):
  14158. (WebCore::WebGLRenderbuffer::setIsValid):
  14159. (WebCore::WebGLRenderbuffer::isValid):
  14160. * html/canvas/WebGLRenderingContext.cpp:
  14161. (WebCore::WebGLRenderingContext::initializeNewContext): Check if packed_depth_stencil extension exists.
  14162. (WebCore::WebGLRenderingContext::getRenderbufferParameter): Simulate the case for DEPTH_STENCIL where packed_depth_stencil is not supported.
  14163. (WebCore::WebGLRenderingContext::renderbufferStorage): Bypass the call if packed_depth_stencil is not supported.
  14164. * html/canvas/WebGLRenderingContext.h:
  14165. 2010-11-04 Kavita Kanetkar <kkanetkar@chromium.org>
  14166. Reviewed by Adam Barth.
  14167. Web Inspector: Enable files ystem UI for chromium
  14168. https://bugs.webkit.org/show_bug.cgi?id=48963
  14169. * inspector/Inspector.idl:
  14170. * inspector/InspectorFileSystemAgent.cpp:
  14171. (WebCore::InspectorFileSystemAgent::getFileSystemPathAsync):
  14172. * inspector/InspectorFileSystemAgent.h:
  14173. * inspector/front-end/FileSystemView.js:
  14174. (WebInspector.FileSystemView):
  14175. (WebInspector.FileSystemView.prototype.setFileSystemDisabled):
  14176. (WebInspector.FileSystemView.prototype._createTextAndButton):
  14177. (WebInspector.FileSystemView.prototype.refreshFileSystem):
  14178. * inspector/front-end/StoragePanel.js:
  14179. (WebInspector.StoragePanel.prototype.setFileSystemDisabled):
  14180. * inspector/front-end/inspector.js:
  14181. (WebInspector.didGetFileSystemDisabled):
  14182. (WebInspector.reset):
  14183. 2010-11-04 Robert Hogan <robert@webkit.org>
  14184. Reviewed by Darin Adler.
  14185. Stale reference to JSDOMWindow in ScriptController::m_cacheableBindingObject
  14186. After bug 37725 we need to update the globalObject() (i.e. JSDOMWindow)
  14187. associated with the m_cacheablebindingRootObject every time we clear the
  14188. frame and load a new page. This allows the runtime objects
  14189. (e.g. LayoutTestController etc.) to persist between navigations as
  14190. before but also ensures that when qt_runtime, or any other bridge,
  14191. looks at the root->globalObject() of a cacheable binding object
  14192. it gets the DOMWindow of the current page rather than the DOMWindow
  14193. that was in place when m_cacheableBindingRootObject was created.
  14194. Fixes fast/dom/nodesFromRect-basic.html on Qt.
  14195. https://bugs.webkit.org/show_bug.cgi?id=48758
  14196. * bindings/js/ScriptController.cpp:
  14197. (WebCore::ScriptController::clearWindowShell):
  14198. * bridge/runtime_root.cpp:
  14199. (JSC::Bindings::RootObject::updateGlobalObject):
  14200. * bridge/runtime_root.h:
  14201. 2010-11-04 Kenneth Rohde Christiansen <kenneth@webkit.org>
  14202. Reviewed by David Hyatt.
  14203. Delegate scrolling via a separate method
  14204. https://bugs.webkit.org/show_bug.cgi?id=48988
  14205. Add a delegatedScrollRequested method to HostWindow for delegating
  14206. scrolling to the view. This is only used in conjunction with tiling,
  14207. and is ifdef'ed.
  14208. * page/Chrome.cpp:
  14209. (WebCore::Chrome::delegatedScrollRequested):
  14210. * page/Chrome.h:
  14211. * page/ChromeClient.h:
  14212. * platform/HostWindow.h:
  14213. * platform/ScrollView.cpp:
  14214. (WebCore::ScrollView::setScrollPosition):
  14215. 2010-11-04 Pavel Feldman <pfeldman@chromium.org>
  14216. Reviewed by Timothy Hatcher.
  14217. Web Inspector: Need better way of switching back to the Timeline view of the Network tab.
  14218. https://bugs.webkit.org/show_bug.cgi?id=48995
  14219. - Moved close button to the left, preceding tab headers;
  14220. - Auto-adjusting summary bar width when switching to the preview mode
  14221. - Auto-scrolling network log if it was scrolled to bottom.
  14222. * inspector/front-end/DataGrid.js:
  14223. (WebInspector.DataGrid):
  14224. (WebInspector.DataGrid.prototype.isScrolledToLastRow):
  14225. (WebInspector.DataGrid.prototype.scrollToLastRow):
  14226. * inspector/front-end/NetworkPanel.js:
  14227. (WebInspector.NetworkPanel):
  14228. (WebInspector.NetworkPanel.prototype.updateSidebarWidth):
  14229. (WebInspector.NetworkPanel.prototype._positionSummaryBar):
  14230. (WebInspector.NetworkPanel.prototype.refresh):
  14231. (WebInspector.NetworkPanel.prototype._reset):
  14232. (WebInspector.NetworkPanel.prototype._toggleGridMode):
  14233. * inspector/front-end/inspector.css:
  14234. (.tabbed-pane-header li):
  14235. * inspector/front-end/networkPanel.css:
  14236. (.network-summary-bar):
  14237. (#network-close-button):
  14238. (#network-views.small #network-close-button):
  14239. (#network-views .resource-view .tabbed-pane-header):
  14240. (#network-views.small .resource-view .tabbed-pane-header):
  14241. 2010-11-04 Erik Arvidsson <arv@chromium.org>
  14242. Reviewed by Dimitri Glazkov.
  14243. Support box-sizing without the vendor prefix
  14244. https://bugs.webkit.org/show_bug.cgi?id=36713
  14245. Based on patch by Peter Beverloo <peter@lvp-media.com>
  14246. Test: fast/css/box-sizing-backwards-compat-prefix.html
  14247. * css/CSSComputedStyleDeclaration.cpp:
  14248. (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  14249. * css/CSSParser.cpp:
  14250. (WebCore::CSSParser::parseValue):
  14251. (WebCore::cssPropertyID): This handles -webkit-box-sizing and maps it to box-sizing.
  14252. * css/CSSPropertyNames.in:
  14253. * css/CSSStyleSelector.cpp:
  14254. (WebCore::CSSStyleSelector::applyProperty):
  14255. * css/quirks.css: Change -webkit-box-sizing to box-sizing.
  14256. (input:not([type=image]), textarea):
  14257. * css/view-source.css: Ditto.
  14258. (.webkit-line-gutter-backdrop, .webkit-line-number):
  14259. * css/wml.css: Ditto.
  14260. (do):
  14261. (select):
  14262. 2010-11-04 John Reck <jreck@google.com>
  14263. Reviewed by Steve Block.
  14264. Fix a linker failure when building for Android
  14265. https://bugs.webkit.org/show_bug.cgi?id=48964
  14266. The Android stub for setCookieStoragePrivateBrowsingEnabled(bool) wasn't in the WebCore namespace, which caused
  14267. a linker failure when building for Android. Moved the stub to the WebCore namespace. This was caused by
  14268. http://trac.webkit.org/changeset/70400
  14269. No new tests, build fix only
  14270. * platform/android/TemporaryLinkStubs.cpp:
  14271. 2010-11-04 Joseph Pecoraro <joepeck@webkit.org>
  14272. Reviewed by Andreas Kling.
  14273. Request.h getters can be made const
  14274. https://bugs.webkit.org/show_bug.cgi?id=49003
  14275. Added the const qualifier to some getters that don't mutate the object.
  14276. * loader/Request.h:
  14277. (WebCore::Request::cachedResource):
  14278. (WebCore::Request::cachedResourceLoader):
  14279. (WebCore::Request::isIncremental):
  14280. (WebCore::Request::isMultipart):
  14281. 2010-11-03 Brian Weinstein <bweinstein@apple.com>
  14282. Reviewed by Brady Eidson.
  14283. User scripts shouldn't be injected in a frame's empty initial document.
  14284. https://bugs.webkit.org/show_bug.cgi?id=48970
  14285. <rdar://problem/8618164>
  14286. <rdar://problem/8082122>
  14287. When a frame loads, it first creates an empty initial document, then navigates to the correct URL. Our
  14288. current policy with user scripts is to inject them into both the initial empty document, and then inject
  14289. them again.
  14290. This causes developers to think their scripts have been injected twice into all iframes, and there is a timing
  14291. issue between WebKit1 and WebKit2 that causes start scripts to be injected into the initial empty document
  14292. of the main frame when a new tab or window is created.
  14293. The fix for this is to not inject user scripts when the frame is creating its initial empty document before loading
  14294. the correct source.
  14295. * page/Frame.cpp:
  14296. (WebCore::Frame::injectUserScripts):
  14297. 2010-11-04 Andreas Kling <kling@webkit.org>
  14298. Reviewed by Nikolas Zimmermann.
  14299. GraphicsContext: Don't do full save/restore when painting with low quality scaling
  14300. https://bugs.webkit.org/show_bug.cgi?id=48738
  14301. Stash the imageInterpolationQuality() in a local and reset it after painting.
  14302. * platform/graphics/GraphicsContext.cpp:
  14303. (WebCore::GraphicsContext::drawImage):
  14304. (WebCore::GraphicsContext::drawTiledImage):
  14305. (WebCore::GraphicsContext::drawImageBuffer):
  14306. * platform/graphics/haiku/GraphicsContextHaiku.cpp:
  14307. (WebCore::GraphicsContext::imageInterpolationQuality):
  14308. * platform/graphics/skia/GraphicsContextSkia.cpp:
  14309. (WebCore::GraphicsContext::imageInterpolationQuality):
  14310. * platform/graphics/wince/GraphicsContextWinCE.cpp:
  14311. (WebCore::GraphicsContext::imageInterpolationQuality):
  14312. 2010-11-04 Nikolas Zimmermann <nzimmermann@rim.com>
  14313. Reviewed by Andreas Kling.
  14314. Refactor SVGStringListPropertyTearOff/SVGListPropertyTearOff to use a common base class
  14315. https://bugs.webkit.org/show_bug.cgi?id=48990
  14316. Introduce SVGListProperty as common base class between static lists (SVGStringListPropertyTearOff) and dynamic lists (SVGListPropertyTearOff).
  14317. This is a preparation for the addition of the next static list type: SVGPointList.
  14318. * GNUmakefile.am: Add new files to build.
  14319. * WebCore.gypi: Ditto.
  14320. * WebCore.pro: Ditto.
  14321. * WebCore.vcproj/WebCore.vcproj: Ditto.
  14322. * WebCore.xcodeproj/project.pbxproj: Ditto.
  14323. * bindings/scripts/CodeGenerator.pm: s/SVGStringListPropertyTearOff/SVGStaticListPropertyTearOff/.
  14324. * bindings/scripts/CodeGeneratorJS.pm: Ditto.
  14325. * bindings/scripts/CodeGeneratorObjC.pm: Ditto.
  14326. * bindings/scripts/CodeGeneratorV8.pm: Ditto.
  14327. * svg/properties/SVGAnimatedListPropertyTearOff.h: Include SVGStaticListPropertyTearOff.h here, to avoid special dependencies in CodeGenerator*.pm
  14328. * svg/properties/SVGListProperty.h: Added.
  14329. * svg/properties/SVGListPropertyTearOff.h: Use SVGList API implementation from SVGListProperty base class.
  14330. * svg/properties/SVGStaticListPropertyTearOff.h: Added. Use SVGList API implementation from SVGListProperty base class.
  14331. * svg/properties/SVGStringListPropertyTearOff.h: Removed.
  14332. 2010-11-04 Ryosuke Niwa <rniwa@webkit.org>
  14333. Unreviewed. Fixed WebCore.xcodeproject
  14334. * WebCore.xcodeproj/project.pbxproj:
  14335. 2010-11-04 Pratik Solanki <psolanki@apple.com>
  14336. Reviewed by Darin Adler.
  14337. Should make use of purge priorities for different resource types
  14338. https://bugs.webkit.org/show_bug.cgi?id=48684
  14339. Assign purge priorities to CachedResource objects. JavaScript and CSS stylesheets are more
  14340. important than images so hint to the kernel to purge them last. We do this by repurposing
  14341. the previously unused function, PurgeableBuffer::setPurgePriority(). It now just sets the
  14342. priority field and does not have side-effects like calling makePurgeable(true).
  14343. Also, remove unusued PurgeableBuffer::create(const Vector<char>&) function and move the
  14344. purgeable memory size threshold from CachedResource to PurgeableBuffer.
  14345. * WebCore.xcodeproj/project.pbxproj: Add new PurgePriority.h header and mark it as private
  14346. header.
  14347. * loader/CachedCSSStyleSheet.h:
  14348. (WebCore::CachedCSSStyleSheet::purgePriority):
  14349. * loader/CachedImage.h:
  14350. (WebCore::CachedImage::purgePriority):
  14351. * loader/CachedResource.cpp:
  14352. (WebCore::CachedResource::makePurgeable): Set the purge priority on the PurgeableBffer.
  14353. Also, move the check for purgeable size threshold to PurgeableBuffer.
  14354. * loader/CachedResource.h:
  14355. (WebCore::CachedResource::purgePriority): Added. New virtual method that lets the class
  14356. specify its purge priority.
  14357. * loader/CachedScript.h:
  14358. (WebCore::CachedScript::purgePriority):
  14359. * platform/PurgePriority.h: Added. Move the PurgePriority enum from PurgeableBuffer class to
  14360. its own header file.
  14361. (WebCore::):
  14362. * platform/PurgeableBuffer.h:
  14363. (WebCore::PurgeableBuffer::setPurgePriority): Update this previously unused function to just
  14364. set the priority and not call makePurgeable(true).
  14365. * platform/mac/PurgeableBufferMac.cpp: Update size threshold to 16KB which is what
  14366. CachedResource was using.
  14367. 2010-11-04 Chris Guillory <chris.guillory@google.com>
  14368. Reviewed by Chris Fleizach.
  14369. Ignore static text children of text field controls in the accessibility tree.
  14370. https://bugs.webkit.org/show_bug.cgi?id=48944
  14371. * accessibility/AccessibilityRenderObject.cpp:
  14372. (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
  14373. 2010-11-04 Erik Arvidsson <arv@chromium.org>
  14374. Reviewed by Tony Chang.
  14375. Computed style is not correct for negative values in the presence of zooming
  14376. https://bugs.webkit.org/show_bug.cgi?id=48855
  14377. * rendering/style/RenderStyle.h:
  14378. (WebCore::adjustForAbsoluteZoom): When the value is less than zero we need to decrement instead of increment.
  14379. 2010-11-04 Shane Stephens <shanestephens@google.com>
  14380. Reviewed by Tony Chang.
  14381. SVGStyledTransformableElement supplemental transforms pre-multiplied
  14382. but should be post-multiplied.
  14383. https://bugs.webkit.org/show_bug.cgi?id=48026
  14384. Test: svg/animations/animate-path-nested-transforms.svg
  14385. * svg/SVGStyledTransformableElement.cpp:
  14386. (WebCore::SVGStyledTransformableElement::animatedLocalTransform):
  14387. Switched order of multiplication. Note that due to a bug in
  14388. AffineTransform's operator* implementation the order of arguments is
  14389. reversed (see http://bugs.webkit.org/show_bug.cgi?id=48031).
  14390. 2010-11-04 James Simonsen <simonjam@chromium.org>
  14391. Reviewed by Darin Fisher.
  14392. [Web Timing] Implement dom* timing marks
  14393. https://bugs.webkit.org/show_bug.cgi?id=46301
  14394. Test: fast/dom/webtiming-document-open.html
  14395. * GNUmakefile.am: Added DocumentTiming.h
  14396. * WebCore.gypi: Ditto.
  14397. * WebCore.vcproj/WebCore.vcproj: Ditto.
  14398. * WebCore.xcodeproj/project.pbxproj: Ditto.
  14399. * dom/Document.cpp:
  14400. (WebCore::Document::setReadyState): Set DOM WebTiming marks.
  14401. (WebCore::Document::finishedParsing): Set DOM WebTiming marks.
  14402. * dom/Document.h:
  14403. (WebCore::Document::timing): Added.
  14404. * dom/DocumentTiming.h: Added.
  14405. (WebCore::DocumentTiming::DocumentTiming):
  14406. * page/Timing.cpp: Added DOM timing.
  14407. (WebCore::Timing::domLoading): Ditto.
  14408. (WebCore::Timing::domInteractive): Ditto.
  14409. (WebCore::Timing::domContentLoaded): Ditto.
  14410. (WebCore::Timing::domComplete): Ditto.
  14411. (WebCore::Timing::documentTiming): Ditto.
  14412. * page/Timing.h: Ditto.
  14413. * page/Timing.idl: Ditto.
  14414. 2010-11-04 Carlos Garcia Campos <cgarcia@igalia.com>
  14415. Reviewed by Martin Robinson.
  14416. [GTK] Implement unencodable characters handling in TextCodecGtk::encode()
  14417. https://bugs.webkit.org/show_bug.cgi?id=48902
  14418. Fixes a crash in test fast/encoding/char-encoding.html.
  14419. * platform/text/gtk/TextCodecGtk.cpp:
  14420. (WebCore::TextCodecGtk::encode):
  14421. 2010-11-04 Adam Barth <abarth@webkit.org>
  14422. Enabled ICCJPEG on Chromium Mac
  14423. https://bugs.webkit.org/show_bug.cgi?id=48977
  14424. Add iccjpeg as a dependency.
  14425. * WebCore.gyp/WebCore.gyp:
  14426. 2010-11-03 Kent Tamura <tkent@chromium.org>
  14427. Reviewed by Dimitri Glazkov.
  14428. Framework to show form validation message for invalid controls
  14429. https://bugs.webkit.org/show_bug.cgi?id=31718
  14430. HTMLFormElement::validateInteractively() shows a validation message for
  14431. an invalid control by HTMLFormControlElement::updateVisibleValidationMessage(),
  14432. and the message is hidden when the invalid control looses focus, becomes
  14433. valid, detached, or the form is submitted again.
  14434. Introduce ValidationMessage class to manage visible form validation
  14435. message. It has no implementation to show/hide a message yet.
  14436. No new tests. New behavior is disabled by default, and is timing-dependent.
  14437. * Android.mk: Add ValidationMessage.
  14438. * CMakeLists.txt: ditto.
  14439. * GNUmakefile.am: ditto.
  14440. * WebCore.gypi: ditto.
  14441. * WebCore.pro: ditto.
  14442. * WebCore.vcproj/WebCore.vcproj: ditto.
  14443. * WebCore.xcodeproj/project.pbxproj: ditto.
  14444. * html/HTMLFormControlElement.cpp:
  14445. (WebCore::HTMLFormControlElement::detach): Hides a validation message.
  14446. (WebCore::HTMLFormControlElement::setNeedsWillValidateCheck):
  14447. Hides a validation message if validation is not needed.
  14448. (WebCore::HTMLFormControlElement::updateVisibleValidationMessage):
  14449. (WebCore::HTMLFormControlElement::hideVisibleValidationMessage):
  14450. (WebCore::HTMLFormControlElement::setNeedsValidityCheck):
  14451. Hides a validation message or updates the validation message.
  14452. (WebCore::HTMLFormControlElement::dispatchBlurEvent):
  14453. Hides a validation message.
  14454. (WebCore::HTMLFormControlElement::visibleValidationMessage):
  14455. * html/HTMLFormControlElement.h:
  14456. * html/HTMLFormElement.cpp:
  14457. (WebCore::HTMLFormElement::validateInteractively):
  14458. - Hide existing validation messages before showing new message.
  14459. - Show new validation message.
  14460. * html/ValidationMessage.cpp: Added.
  14461. (WebCore::ValidationMessage::ValidationMessage):
  14462. (WebCore::ValidationMessage::~ValidationMessage):
  14463. (WebCore::ValidationMessage::create):
  14464. (WebCore::ValidationMessage::setMessage):
  14465. (WebCore::ValidationMessage::hideMessage):
  14466. * html/ValidationMessage.h: Added.
  14467. (WebCore::ValidationMessage::message):
  14468. 2010-11-03 Patrick Gansterer <paroga@webkit.org>
  14469. Reviewed by Adam Roben.
  14470. Port WCDataObject.cpp to WinCE
  14471. https://bugs.webkit.org/show_bug.cgi?id=48921
  14472. OleDuplicateData is not supported on WinCE.
  14473. * platform/win/WCDataObject.cpp:
  14474. (WebCore::WCDataObject::CopyMedium):
  14475. 2010-11-03 Patrick Gansterer <paroga@webkit.org>
  14476. Reviewed by Adam Roben.
  14477. Port ClipboardWin.cpp to WinCE
  14478. https://bugs.webkit.org/show_bug.cgi?id=48412
  14479. * platform/win/ClipboardWin.cpp:
  14480. (WebCore::writeFileToDataObject):
  14481. 2010-11-03 Patrick Gansterer <paroga@webkit.org>
  14482. Reviewed by Adam Roben.
  14483. Port ClipboardWin.cpp to WinCE
  14484. https://bugs.webkit.org/show_bug.cgi?id=48412
  14485. * platform/win/ClipboardWin.cpp:
  14486. (WebCore::filesystemPathFromUrlOrTitle):
  14487. (WebCore::createGlobalHDropContent):
  14488. (WebCore::ClipboardWin::files):
  14489. 2010-11-03 Vincent Scheib <scheib@chromium.org>
  14490. Reviewed by James Robinson.
  14491. [chromium] GraphicsContext3D creation attributes include canRecoverFromContextLoss option
  14492. https://bugs.webkit.org/show_bug.cgi?id=48850
  14493. Implementations of GraphicsContext3D may respect the creation attribute
  14494. canRecoverFromContextLoss being false, and then only succeeding initialization if
  14495. the context can satisfy that request of never being lost. DX9 on XP can not satisfy
  14496. such a request.
  14497. Test by use of accelerated canvas 2d in Chromium with ANGLE on XP machines.
  14498. * platform/graphics/GraphicsContext3D.h:
  14499. (WebCore::GraphicsContext3D::Attributes::Attributes):
  14500. * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
  14501. (WebCore::SharedGraphicsContext3D::create):
  14502. 2010-11-03 Carlos Garcia Campos <cgarcia@igalia.com>
  14503. Reviewed by Martin Robinson.
  14504. [GTK] Use sentence boundaries instead of start/end sentence
  14505. https://bugs.webkit.org/show_bug.cgi?id=48422
  14506. Using sentence boundaries all intersentence
  14507. whitespace/control/format characters are assigned to a
  14508. sentence. This is what ICU does, so we have to do the same in
  14509. order to get the same results with glib unicode backend. It fixes
  14510. the sentence tests cases in test fast/dom/Range/range-expand.html.
  14511. * platform/text/gtk/TextBreakIteratorGtk.cpp:
  14512. (WebCore::textBreakNext):
  14513. (WebCore::textBreakPrevious):
  14514. 2010-11-03 Zhenyao Mo <zmo@google.com>
  14515. Reviewed by Kenneth Russell.
  14516. depthRange should generate INVALID_OPERATION if zNear is greater than zFar
  14517. https://bugs.webkit.org/show_bug.cgi?id=48676
  14518. * html/canvas/WebGLRenderingContext.cpp:
  14519. (WebCore::WebGLRenderingContext::depthRange):
  14520. 2010-11-03 Adrienne Walker <enne@google.com>
  14521. Reviewed by Kenneth Russell.
  14522. Properly return empty strings instead of null when using invalid
  14523. objects for some WebGL calls. This fixes issues caused by r71274.
  14524. https://bugs.webkit.org/show_bug.cgi?id=48962
  14525. * html/canvas/WebGLRenderingContext.cpp:
  14526. (WebCore::WebGLRenderingContext::getProgramInfoLog):
  14527. (WebCore::WebGLRenderingContext::getShaderInfoLog):
  14528. (WebCore::WebGLRenderingContext::getShaderSource):
  14529. 2010-11-01 Ryosuke Niwa <rniwa@webkit.org>
  14530. Reviewed by Darin Adler.
  14531. Crash in ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle
  14532. https://bugs.webkit.org/show_bug.cgi?id=48581
  14533. The crash was caused by RemoveNodePreservingChildrenCommand's calling removeNode
  14534. on m_node without checking that m_node has a parent and it's still in the document.
  14535. Fixed the crash by adding an early exit in CompositeEditCommand::removeNode and
  14536. deploying RefPtr in several places of ApplyStyleCommand.cpp.
  14537. Test: editing/style/iframe-onload-crash.html
  14538. * editing/ApplyStyleCommand.cpp:
  14539. (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
  14540. (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle):
  14541. (WebCore::ApplyStyleCommand::removeInlineStyleFromElement):
  14542. * editing/ApplyStyleCommand.h:
  14543. * editing/CompositeEditCommand.cpp:
  14544. (WebCore::CompositeEditCommand::removeNode):
  14545. 2010-11-03 Jia Pu <jpu@apple.com>
  14546. Reviewed by Darin Adler.
  14547. Crashes in WebCore::DocumentMarkerController::removeMarkersFromMarkerMapVectorPair() when deleting multiple lines of text.
  14548. https://bugs.webkit.org/show_bug.cgi?id=48918
  14549. <rdar://problem/8620602>
  14550. I haven't been able to found a reliable way to reproduce the bug. However, whenever it happens,
  14551. the crash is caused by a null node pointer returned by TextIterator. So it seems to be a
  14552. safe fix to guard against that.
  14553. * editing/Editor.cpp: (WebCore::Editor::removeSpellAndCorrectionMarkersFromWordsToBeEdited):
  14554. 2010-11-02 Zhenyao Mo <zmo@google.com>
  14555. Reviewed by Kenneth Russell.
  14556. A different mask or reference value in stencil operations should generate INVALID_OPERATION
  14557. https://bugs.webkit.org/show_bug.cgi?id=48669
  14558. * html/canvas/WebGLRenderingContext.cpp:
  14559. (WebCore::WebGLRenderingContext::WebGLRenderingContext): Init stencil func ref/mask and stencil mask to default.
  14560. (WebCore::WebGLRenderingContext::stencilFunc): Cache ref/mask value.
  14561. (WebCore::WebGLRenderingContext::stencilFuncSeparate): Generate error if front/back values differ.
  14562. (WebCore::WebGLRenderingContext::stencilMask): Cache mask value.
  14563. (WebCore::WebGLRenderingContext::stencilMaskSeparate): Generate error if front/back values differ.
  14564. (WebCore::WebGLRenderingContext::validateFace): Validate face parameter.
  14565. (WebCore::WebGLRenderingContext::validateStencilFunc): Validate stencil func parameter.
  14566. * html/canvas/WebGLRenderingContext.h: Add members to track stencil func ref/mask and stencil mask.
  14567. 2010-11-03 Dimitri Glazkov <dglazkov@chromium.org>
  14568. Reverting r71244, r71248 and r71250. Broke default event handling inside text fields.
  14569. https://bugs.webkit.org/show_bug.cgi?id=46015
  14570. * Android.mk:
  14571. * CMakeLists.txt:
  14572. * GNUmakefile.am:
  14573. * WebCore.gypi:
  14574. * WebCore.pro:
  14575. * WebCore.vcproj/WebCore.vcproj:
  14576. * WebCore.xcodeproj/project.pbxproj:
  14577. * dom/ContainerNode.cpp:
  14578. (WebCore::notifyChildInserted):
  14579. * dom/DOMAllInOne.cpp:
  14580. * dom/EventContext.cpp: Removed.
  14581. * dom/EventContext.h: Removed.
  14582. * dom/Node.cpp:
  14583. (WebCore::Node::markAncestorsWithChildNeedsStyleRecalc):
  14584. (WebCore::Node::createRendererIfNeeded):
  14585. (WebCore::Node::eventParentNode):
  14586. (WebCore::Node::enclosingLinkEventParentOrSelf):
  14587. (WebCore::eventTargetAsSVGElementInstance):
  14588. (WebCore::eventTargetRespectingSVGTargetRules):
  14589. (WebCore::Node::eventAncestors):
  14590. (WebCore::Node::dispatchGenericEvent):
  14591. * dom/Node.h:
  14592. * dom/Text.cpp:
  14593. (WebCore::Text::createRenderer):
  14594. * dom/WindowEventContext.cpp: Removed.
  14595. * dom/WindowEventContext.h: Removed.
  14596. * inspector/InspectorDOMAgent.cpp:
  14597. (WebCore::InspectorDOMAgent::getEventListenersForNode):
  14598. * inspector/InspectorInstrumentation.cpp:
  14599. (WebCore::eventHasListeners):
  14600. (WebCore::InspectorInstrumentation::willDispatchEventImpl):
  14601. * inspector/InspectorInstrumentation.h:
  14602. (WebCore::InspectorInstrumentation::willDispatchEvent):
  14603. * page/EventHandler.cpp:
  14604. (WebCore::EventHandler::updateMouseEventTargetNode):
  14605. * rendering/ShadowElement.h:
  14606. (WebCore::ShadowElement::shadowParent):
  14607. (WebCore::ShadowElement::shadowParentNode):
  14608. * svg/SVGElement.cpp:
  14609. (WebCore::SVGElement::eventParentNode):
  14610. * svg/SVGElement.h:
  14611. 2010-11-03 Adam Barth <abarth@webkit.org>
  14612. Reviewed by Eric Seidel.
  14613. CG use of WebKit image decoders crashes on some animated GIFs
  14614. https://bugs.webkit.org/show_bug.cgi?id=48955
  14615. It turns out CFDataGetMutableBytePtr isn't safe call on a null pointer.
  14616. Test: fast/images/dont-crash-with-null-gif-frames.html
  14617. * platform/image-decoders/cg/ImageDecoderCG.cpp:
  14618. (WebCore::RGBA32Buffer::copyReferenceToBitmapData):
  14619. (WebCore::RGBA32Buffer::copyBitmapData):
  14620. 2010-11-03 Adrienne Walker <enne@google.com>
  14621. Reviewed by Kenneth Russell.
  14622. Implement lost, restored, and creation failure context events for
  14623. WebGLRenderingContext. The lost and restored functions are not hooked
  14624. up yet, but the context now acts according to the spec as it should
  14625. during a lost context. Tested manually, as there's no programmatic
  14626. way to lose a context yet.
  14627. https://bugs.webkit.org/show_bug.cgi?id=35626
  14628. * WebCore.gypi:
  14629. * WebCore.xcodeproj/project.pbxproj:
  14630. * bindings/js/JSWebGLRenderingContextCustom.cpp:
  14631. (WebCore::JSWebGLRenderingContext::getAttachedShaders):
  14632. * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
  14633. (WebCore::V8WebGLRenderingContext::getAttachedShadersCallback):
  14634. * dom/EventNames.h:
  14635. * html/canvas/WebGLContextEvent.cpp: Added.
  14636. (WebCore::WebGLContextEvent::WebGLContextEvent):
  14637. (WebCore::WebGLContextEvent::~WebGLContextEvent):
  14638. (WebCore::WebGLContextEvent::initEvent):
  14639. * html/canvas/WebGLContextEvent.h: Added.
  14640. (WebCore::WebGLContextEvent::create):
  14641. (WebCore::WebGLContextEvent::statusMessage):
  14642. * html/canvas/WebGLContextEvent.idl: Added.
  14643. * html/canvas/WebGLRenderingContext.cpp:
  14644. (WebCore::WebGLRenderingContext::create):
  14645. (WebCore::WebGLRenderingContext::WebGLRenderingContext):
  14646. (WebCore::WebGLRenderingContext::initializeNewContext):
  14647. (WebCore::WebGLRenderingContext::activeTexture):
  14648. (WebCore::WebGLRenderingContext::attachShader):
  14649. (WebCore::WebGLRenderingContext::bindAttribLocation):
  14650. (WebCore::WebGLRenderingContext::bindBuffer):
  14651. (WebCore::WebGLRenderingContext::bindFramebuffer):
  14652. (WebCore::WebGLRenderingContext::bindRenderbuffer):
  14653. (WebCore::WebGLRenderingContext::bindTexture):
  14654. (WebCore::WebGLRenderingContext::blendColor):
  14655. (WebCore::WebGLRenderingContext::blendEquation):
  14656. (WebCore::WebGLRenderingContext::blendEquationSeparate):
  14657. (WebCore::WebGLRenderingContext::blendFunc):
  14658. (WebCore::WebGLRenderingContext::blendFuncSeparate):
  14659. (WebCore::WebGLRenderingContext::bufferData):
  14660. (WebCore::WebGLRenderingContext::bufferSubData):
  14661. (WebCore::WebGLRenderingContext::checkFramebufferStatus):
  14662. (WebCore::WebGLRenderingContext::clear):
  14663. (WebCore::WebGLRenderingContext::clearColor):
  14664. (WebCore::WebGLRenderingContext::clearDepth):
  14665. (WebCore::WebGLRenderingContext::clearStencil):
  14666. (WebCore::WebGLRenderingContext::colorMask):
  14667. (WebCore::WebGLRenderingContext::compileShader):
  14668. (WebCore::WebGLRenderingContext::copyTexImage2D):
  14669. (WebCore::WebGLRenderingContext::copyTexSubImage2D):
  14670. (WebCore::WebGLRenderingContext::createBuffer):
  14671. (WebCore::WebGLRenderingContext::createFramebuffer):
  14672. (WebCore::WebGLRenderingContext::createTexture):
  14673. (WebCore::WebGLRenderingContext::createProgram):
  14674. (WebCore::WebGLRenderingContext::createRenderbuffer):
  14675. (WebCore::WebGLRenderingContext::createShader):
  14676. (WebCore::WebGLRenderingContext::cullFace):
  14677. (WebCore::WebGLRenderingContext::deleteBuffer):
  14678. (WebCore::WebGLRenderingContext::deleteFramebuffer):
  14679. (WebCore::WebGLRenderingContext::deleteProgram):
  14680. (WebCore::WebGLRenderingContext::deleteRenderbuffer):
  14681. (WebCore::WebGLRenderingContext::deleteShader):
  14682. (WebCore::WebGLRenderingContext::deleteTexture):
  14683. (WebCore::WebGLRenderingContext::depthFunc):
  14684. (WebCore::WebGLRenderingContext::depthMask):
  14685. (WebCore::WebGLRenderingContext::depthRange):
  14686. (WebCore::WebGLRenderingContext::detachShader):
  14687. (WebCore::WebGLRenderingContext::disable):
  14688. (WebCore::WebGLRenderingContext::disableVertexAttribArray):
  14689. (WebCore::WebGLRenderingContext::drawArrays):
  14690. (WebCore::WebGLRenderingContext::drawElements):
  14691. (WebCore::WebGLRenderingContext::enable):
  14692. (WebCore::WebGLRenderingContext::enableVertexAttribArray):
  14693. (WebCore::WebGLRenderingContext::finish):
  14694. (WebCore::WebGLRenderingContext::flush):
  14695. (WebCore::WebGLRenderingContext::framebufferRenderbuffer):
  14696. (WebCore::WebGLRenderingContext::framebufferTexture2D):
  14697. (WebCore::WebGLRenderingContext::frontFace):
  14698. (WebCore::WebGLRenderingContext::generateMipmap):
  14699. (WebCore::WebGLRenderingContext::getActiveAttrib):
  14700. (WebCore::WebGLRenderingContext::getActiveUniform):
  14701. (WebCore::WebGLRenderingContext::getAttachedShaders):
  14702. (WebCore::WebGLRenderingContext::getAttribLocation):
  14703. (WebCore::WebGLRenderingContext::getBufferParameter):
  14704. (WebCore::WebGLRenderingContext::getContextAttributes):
  14705. (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter):
  14706. (WebCore::WebGLRenderingContext::getParameter):
  14707. (WebCore::WebGLRenderingContext::getProgramParameter):
  14708. (WebCore::WebGLRenderingContext::getProgramInfoLog):
  14709. (WebCore::WebGLRenderingContext::getRenderbufferParameter):
  14710. (WebCore::WebGLRenderingContext::getShaderParameter):
  14711. (WebCore::WebGLRenderingContext::getShaderInfoLog):
  14712. (WebCore::WebGLRenderingContext::getShaderSource):
  14713. (WebCore::WebGLRenderingContext::getTexParameter):
  14714. (WebCore::WebGLRenderingContext::getUniform):
  14715. (WebCore::WebGLRenderingContext::getUniformLocation):
  14716. (WebCore::WebGLRenderingContext::getVertexAttrib):
  14717. (WebCore::WebGLRenderingContext::getVertexAttribOffset):
  14718. (WebCore::WebGLRenderingContext::hint):
  14719. (WebCore::WebGLRenderingContext::isBuffer):
  14720. (WebCore::WebGLRenderingContext::isContextLost):
  14721. (WebCore::WebGLRenderingContext::isEnabled):
  14722. (WebCore::WebGLRenderingContext::isFramebuffer):
  14723. (WebCore::WebGLRenderingContext::isProgram):
  14724. (WebCore::WebGLRenderingContext::isRenderbuffer):
  14725. (WebCore::WebGLRenderingContext::isShader):
  14726. (WebCore::WebGLRenderingContext::isTexture):
  14727. (WebCore::WebGLRenderingContext::lineWidth):
  14728. (WebCore::WebGLRenderingContext::linkProgram):
  14729. (WebCore::WebGLRenderingContext::pixelStorei):
  14730. (WebCore::WebGLRenderingContext::polygonOffset):
  14731. (WebCore::WebGLRenderingContext::readPixels):
  14732. (WebCore::WebGLRenderingContext::releaseShaderCompiler):
  14733. (WebCore::WebGLRenderingContext::renderbufferStorage):
  14734. (WebCore::WebGLRenderingContext::sampleCoverage):
  14735. (WebCore::WebGLRenderingContext::scissor):
  14736. (WebCore::WebGLRenderingContext::shaderSource):
  14737. (WebCore::WebGLRenderingContext::stencilFunc):
  14738. (WebCore::WebGLRenderingContext::stencilFuncSeparate):
  14739. (WebCore::WebGLRenderingContext::stencilMask):
  14740. (WebCore::WebGLRenderingContext::stencilMaskSeparate):
  14741. (WebCore::WebGLRenderingContext::stencilOp):
  14742. (WebCore::WebGLRenderingContext::stencilOpSeparate):
  14743. (WebCore::WebGLRenderingContext::texImage2D):
  14744. (WebCore::WebGLRenderingContext::texParameter):
  14745. (WebCore::WebGLRenderingContext::texSubImage2DBase):
  14746. (WebCore::WebGLRenderingContext::texSubImage2DImpl):
  14747. (WebCore::WebGLRenderingContext::texSubImage2D):
  14748. (WebCore::WebGLRenderingContext::uniform1f):
  14749. (WebCore::WebGLRenderingContext::uniform1fv):
  14750. (WebCore::WebGLRenderingContext::uniform1i):
  14751. (WebCore::WebGLRenderingContext::uniform1iv):
  14752. (WebCore::WebGLRenderingContext::uniform2f):
  14753. (WebCore::WebGLRenderingContext::uniform2fv):
  14754. (WebCore::WebGLRenderingContext::uniform2i):
  14755. (WebCore::WebGLRenderingContext::uniform2iv):
  14756. (WebCore::WebGLRenderingContext::uniform3f):
  14757. (WebCore::WebGLRenderingContext::uniform3fv):
  14758. (WebCore::WebGLRenderingContext::uniform3i):
  14759. (WebCore::WebGLRenderingContext::uniform3iv):
  14760. (WebCore::WebGLRenderingContext::uniform4f):
  14761. (WebCore::WebGLRenderingContext::uniform4fv):
  14762. (WebCore::WebGLRenderingContext::uniform4i):
  14763. (WebCore::WebGLRenderingContext::uniform4iv):
  14764. (WebCore::WebGLRenderingContext::uniformMatrix2fv):
  14765. (WebCore::WebGLRenderingContext::uniformMatrix3fv):
  14766. (WebCore::WebGLRenderingContext::uniformMatrix4fv):
  14767. (WebCore::WebGLRenderingContext::useProgram):
  14768. (WebCore::WebGLRenderingContext::validateProgram):
  14769. (WebCore::WebGLRenderingContext::vertexAttribPointer):
  14770. (WebCore::WebGLRenderingContext::viewport):
  14771. (WebCore::WebGLRenderingContext::loseContext):
  14772. (WebCore::WebGLRenderingContext::restoreContext):
  14773. (WebCore::WebGLRenderingContext::addObject):
  14774. (WebCore::WebGLRenderingContext::vertexAttribfImpl):
  14775. (WebCore::WebGLRenderingContext::vertexAttribfvImpl):
  14776. * html/canvas/WebGLRenderingContext.h:
  14777. * html/canvas/WebGLRenderingContext.idl:
  14778. * platform/graphics/GraphicsContext3D.h:
  14779. 2010-11-03 Kenneth Russell <kbr@google.com>
  14780. Reviewed by Chris Marrin.
  14781. Redesign extension mechanism in GraphicsContext3D
  14782. https://bugs.webkit.org/show_bug.cgi?id=46894
  14783. Upon request, factored out extension support from GraphicsContext3D
  14784. into a new Extensions3D class. (The plural was chosen because the
  14785. class and subclasses hold multiple extensions.)
  14786. Unlike GraphicsContext3D, Extensions3D contains only pure virtual
  14787. methods. This was done because Extensions3D's inheritance diagram
  14788. and usage pattern is very different from that of GraphicsContext3D,
  14789. and the concrete subclasses need to decide how to implement the
  14790. various entry points. Requiring them to be placed at the
  14791. Extensions3D level will cause implementation details to leak into
  14792. the base class, which is highly undesirable. Any virtual call
  14793. overhead to these entry points will be negligible.
  14794. Changed call sites utilizing these extensions to call through the
  14795. Extensions3D object or its subclasses.
  14796. Tested:
  14797. - Chromium on Linux with accelerated 2D canvas and HTML5 video
  14798. - Chromium on Mac OS X with WebGL and CSS 3D content
  14799. - Safari on Mac OS X with WebGL and CSS 3D content
  14800. No new tests. Covered by existing tests.
  14801. * WebCore.gypi:
  14802. * WebCore.pro:
  14803. * WebCore.xcodeproj/project.pbxproj:
  14804. * platform/graphics/Extensions3D.h: Added.
  14805. (WebCore::Extensions3D::~Extensions3D):
  14806. * platform/graphics/GraphicsContext3D.cpp:
  14807. * platform/graphics/GraphicsContext3D.h:
  14808. * platform/graphics/chromium/DrawingBufferChromium.cpp:
  14809. (WebCore::DrawingBuffer::DrawingBuffer):
  14810. (WebCore::DrawingBuffer::publishToPlatformLayer):
  14811. * platform/graphics/chromium/Extensions3DChromium.h: Added.
  14812. * platform/graphics/chromium/VideoLayerChromium.cpp:
  14813. (WebCore::VideoLayerChromium::updateTexture):
  14814. * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
  14815. (WebCore::SharedGraphicsContext3D::supportsBGRA):
  14816. * platform/graphics/gpu/SharedGraphicsContext3D.h:
  14817. * platform/graphics/gpu/Texture.cpp:
  14818. (WebCore::convertFormat):
  14819. * platform/graphics/mac/GraphicsContext3DMac.mm:
  14820. * platform/graphics/opengl/Extensions3DOpenGL.cpp: Added.
  14821. (WebCore::Extensions3DOpenGL::Extensions3DOpenGL):
  14822. (WebCore::Extensions3DOpenGL::~Extensions3DOpenGL):
  14823. (WebCore::Extensions3DOpenGL::supports):
  14824. (WebCore::Extensions3DOpenGL::getGraphicsResetStatusARB):
  14825. * platform/graphics/opengl/Extensions3DOpenGL.h: Added.
  14826. * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
  14827. (WebCore::GraphicsContext3D::getExtensions):
  14828. * platform/graphics/qt/Extensions3DQt.cpp: Added.
  14829. (WebCore::Extensions3DQt::Extensions3DQt):
  14830. (WebCore::Extensions3DQt::~Extensions3DQt):
  14831. (WebCore::Extensions3DQt::supports):
  14832. (WebCore::Extensions3DQt::getGraphicsResetStatusARB):
  14833. * platform/graphics/qt/Extensions3DQt.h: Added.
  14834. * platform/graphics/qt/GraphicsContext3DQt.cpp:
  14835. (WebCore::GraphicsContext3D::getExtensions):
  14836. * platform/graphics/skia/PlatformContextSkia.cpp:
  14837. (WebCore::PlatformContextSkia::readbackHardwareToSoftware):
  14838. 2010-11-03 Mike Thole <mthole@apple.com>
  14839. Reviewed by Darin Adler.
  14840. Tweak coding style (follow-up to r71264).
  14841. * platform/mac/Language.mm:
  14842. (WebCore::createHTTPStyleLanguageCode): Style tweaks.
  14843. 2010-11-03 Darin Adler <darin@apple.com>
  14844. Updated Xcode projects by opening them with Xcode 3.2.4.
  14845. Updated svn:ignore for Xcode projects.
  14846. * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj: Added property svn:ignore.
  14847. * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj: Updated with Xcode 3.2.4.
  14848. 2010-11-03 Matthew Delaney <mdelaney@apple.com>
  14849. Reviewed by Darin Adler.
  14850. Fix canvas/philip/tests/2d.pattern.image.undefined.html
  14851. https://bugs.webkit.org/show_bug.cgi?id=48894
  14852. * bindings/js/JSCanvasRenderingContext2DCustom.cpp: Changed error thrown to match the spec.
  14853. 2010-11-03 Simon Fraser <simon.fraser@apple.com>
  14854. Reviewed by John Sullivan.
  14855. Crash when setting context font to bad value
  14856. https://bugs.webkit.org/show_bug.cgi?id=48948
  14857. Null-check the CSSValue passed to CSSStyleSelector::applyPropertyToStyle(),
  14858. since it may be null if the style declaration does not contain a value
  14859. for the 'font' property.
  14860. Test: fast/canvas/invalid-set-font-crash.html
  14861. * css/CSSStyleSelector.cpp:
  14862. (WebCore::CSSStyleSelector::applyPropertyToStyle):
  14863. 2010-11-03 Mike Thole <mthole@apple.com>
  14864. Reviewed by Alexey Proskuryakov.
  14865. Crash under WebCore::platformDefaultLanguage() when using Arabic language
  14866. https://bugs.webkit.org/show_bug.cgi?id=48946
  14867. * platform/mac/Language.mm:
  14868. (WebCore::createHTTPStyleLanguageCode):
  14869. Retain the lowercaseLanguageCode string before returning it. This was the code path that
  14870. would lead to a crash. Also removed early return to prevent a leak of preferredLanguageCode.
  14871. 2010-11-03 Dan Bernstein <mitz@apple.com>
  14872. Reviewed by Dave Hyatt.
  14873. Made table column width allocation algorithms use logical widths.
  14874. Part of: Make tables work with vertical text
  14875. https://bugs.webkit.org/show_bug.cgi?id=46417
  14876. No new tests since tables don’t support different block flows yet.
  14877. * rendering/AutoTableLayout.cpp:
  14878. (WebCore::AutoTableLayout::AutoTableLayout):
  14879. (WebCore::AutoTableLayout::recalcColumn):
  14880. (WebCore::AutoTableLayout::fullRecalc):
  14881. (WebCore::AutoTableLayout::computePreferredLogicalWidths):
  14882. (WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
  14883. (WebCore::AutoTableLayout::insertSpanCell):
  14884. (WebCore::AutoTableLayout::layout):
  14885. * rendering/AutoTableLayout.h:
  14886. (WebCore::AutoTableLayout::Layout::Layout):
  14887. * rendering/FixedTableLayout.cpp:
  14888. (WebCore::FixedTableLayout::calcWidthArray):
  14889. (WebCore::FixedTableLayout::computePreferredLogicalWidths):
  14890. (WebCore::FixedTableLayout::layout):
  14891. * rendering/FixedTableLayout.h:
  14892. * rendering/RenderTable.h:
  14893. (WebCore::RenderTable::bordersPaddingAndSpacingInRowDirection): Renamed, but not changed yet.
  14894. 2010-11-03 No'am Rosenthal <noam.rosenthal@nokia.com>
  14895. Unreviewed build fix for r71253
  14896. #endif for TILED_BACKING_STORE was at the wrong place.
  14897. * platform/graphics/qt/GraphicsLayerQt.cpp:
  14898. (WebCore::GraphicsLayerQtImpl::tiledBackingStoreBackgroundColor):
  14899. 2010-11-03 David Hyatt <hyatt@apple.com>
  14900. Reviewed by Dan Bernstein.
  14901. https://bugs.webkit.org/show_bug.cgi?id=48945
  14902. Patch logicalLeftSelectionOffset and logicalRightSelectionOffset to be directionally abstract.
  14903. Also make sure writing mode roots are also selection painting roots.
  14904. * rendering/RenderBlock.cpp:
  14905. (WebCore::RenderBlock::isSelectionRoot):
  14906. (WebCore::RenderBlock::logicalLeftSelectionOffset):
  14907. (WebCore::RenderBlock::logicalRightSelectionOffset):
  14908. * rendering/RenderBlock.h:
  14909. 2010-11-03 Pavel Feldman <pfeldman@chromium.org>
  14910. Reviewed by Timothy Hatcher.
  14911. Web Inspector: main resource is being re-assigned upon iframe's commit load.
  14912. https://bugs.webkit.org/show_bug.cgi?id=48940
  14913. * inspector/front-end/ResourceManager.js:
  14914. (WebInspector.ResourceManager.prototype.identifierForInitialRequest):
  14915. (WebInspector.ResourceManager.prototype.didCommitLoadForFrame):
  14916. 2010-11-03 Nate Chapin <japhet@chromium.org>
  14917. Reviewed by Alexey Proskuryakov.
  14918. Wait to stop all loads for a frame being detached until after its
  14919. chidlren have been detached. This ensures that any loads started
  14920. by a child's unload event handler will be properly cancelled.
  14921. https://bugs.webkit.org/show_bug.cgi?id=46579
  14922. Tests: fast/loader/ping-error.html
  14923. http/tests/navigation/image-load-in-subframe-unload-handler.html
  14924. * loader/FrameLoader.cpp:
  14925. (WebCore::FrameLoader::detachFromParent):
  14926. 2010-11-03 Pavel Feldman <pfeldman@chromium.org>
  14927. Reviewed by Simon Fraser.
  14928. Web Inspector: show proper image size for cached resources.
  14929. https://bugs.webkit.org/show_bug.cgi?id=48915
  14930. * inspector/front-end/ExtensionServer.js:
  14931. (WebInspector.ExtensionServer.prototype._onGetResourceContent):
  14932. * inspector/front-end/ImageView.js:
  14933. (WebInspector.ImageView.prototype.contentTabSelected.onImageLoad):
  14934. (WebInspector.ImageView.prototype.contentTabSelected):
  14935. (WebInspector.ImageView.prototype._base64ToSize):
  14936. * inspector/front-end/NetworkPanel.js:
  14937. (WebInspector.NetworkDataGridNode.prototype._refreshNameCell):
  14938. * inspector/front-end/Resource.js:
  14939. (WebInspector.Resource.prototype.set finished):
  14940. (WebInspector.Resource.prototype.get content):
  14941. (WebInspector.Resource.prototype.requestContent):
  14942. (WebInspector.Resource.prototype._innerRequestContent):
  14943. * inspector/front-end/ResourceManager.js:
  14944. (WebInspector.ResourceManager.requestContent):
  14945. * inspector/front-end/SourceView.js:
  14946. (WebInspector.SourceView.prototype.setupSourceFrameIfNeeded):
  14947. 2010-11-03 Noam Rosenthal <noam.rosenthal@nokia.com>
  14948. Reviewed by Kenneth Rohde Christiansen.
  14949. [Qt] GraphicsLayer: support tiling
  14950. https://bugs.webkit.org/show_bug.cgi?id=39691
  14951. Add support for TiledBackingStore in GraphicsLayerQt, when a layer is too large.
  14952. No new tests. Tests in LayoutTests/compositing/tiling now work with OpenGL enabled.
  14953. * platform/graphics/qt/GraphicsLayerQt.cpp:
  14954. (WebCore::GraphicsLayerQtImpl::GraphicsLayerQtImpl):
  14955. (WebCore::GraphicsLayerQtImpl::~GraphicsLayerQtImpl):
  14956. (WebCore::GraphicsLayerQtImpl::recache):
  14957. (WebCore::GraphicsLayerQtImpl::paint):
  14958. (WebCore::GraphicsLayerQtImpl::tiledBackingStorePaintBegin):
  14959. (WebCore::GraphicsLayerQtImpl::tiledBackingStorePaint):
  14960. (WebCore::GraphicsLayerQtImpl::tiledBackingStorePaintEnd):
  14961. (WebCore::GraphicsLayerQtImpl::tiledBackingStoreContentsRect):
  14962. (WebCore::GraphicsLayerQtImpl::tiledBackingStoreBackgroundColor):
  14963. (WebCore::GraphicsLayerQtImpl::tiledBackingStoreVisibleRect):
  14964. 2010-11-03 Tony Chang <tony@chromium.org>
  14965. Reviewed by Ojan Vafai.
  14966. Undo r54932 which inappropriately adjusts font sizes on zoomed pages
  14967. https://bugs.webkit.org/show_bug.cgi?id=48890
  14968. Test: editing/inserting/page-zoom-font-size.html
  14969. * editing/ReplaceSelectionCommand.cpp:
  14970. (WebCore::ReplaceSelectionCommand::negateStyleRulesThatAffectAppearance):
  14971. 2010-11-03 Dan Bernstein <mitz@apple.com>
  14972. Reviewed by Dave Hyatt.
  14973. Make collapsed borders in tables work with different block flows
  14974. https://bugs.webkit.org/show_bug.cgi?id=46191
  14975. No new tests since tables don’t support different block flows yet.
  14976. This change still doesn’t support cells whose block flow differs from the table’s.
  14977. * rendering/AutoTableLayout.cpp:
  14978. (WebCore::AutoTableLayout::recalcColumn): Updated for the renaming of styleOrColWidth().
  14979. (WebCore::AutoTableLayout::calcEffectiveWidth): Ditto.
  14980. * rendering/FixedTableLayout.cpp:
  14981. (WebCore::FixedTableLayout::calcWidthArray): Ditto.
  14982. * rendering/RenderBlock.cpp:
  14983. (WebCore::RenderBlock::computePreferredLogicalWidths): Ditto.
  14984. * rendering/RenderTableCell.cpp:
  14985. (WebCore::RenderTableCell::styleOrColLogicalWidth): Renamed styleOrColWidth() to this and
  14986. changed to use logical widths.
  14987. (WebCore::RenderTableCell::computePreferredLogicalWidths): Updated for the above rename.
  14988. (WebCore::RenderTableCell::updateLogicalWidth): Renamed updateWidth() to this and changed
  14989. to set the logical width.
  14990. (WebCore::RenderTableCell::collapsedStartBorder): Changed collapsedLeftBorder() into this.
  14991. Note that “start” here will refer to the table’s block flow, not the cell’s, once we allow
  14992. the two to differ.
  14993. (WebCore::RenderTableCell::collapsedEndBorder): Similar.
  14994. (WebCore::RenderTableCell::collapsedBeforeBorder): Similar.
  14995. (WebCore::RenderTableCell::collapsedAfterBorder): Similar.
  14996. (WebCore::RenderTableCell::collapsedLeftBorder): Resolves “left” to a logical side using
  14997. the table’s block flow.
  14998. (WebCore::RenderTableCell::collapsedRightBorder): Similar.
  14999. (WebCore::RenderTableCell::collapsedTopBorder): Similar.
  15000. (WebCore::RenderTableCell::collapsedBottomBorder): Similar.
  15001. (WebCore::RenderTableCell::borderStart): Use borderHalfStart().
  15002. (WebCore::RenderTableCell::borderEnd): Similar.
  15003. (WebCore::RenderTableCell::borderBefore): Similar.
  15004. (WebCore::RenderTableCell::borderAfter): Similar.
  15005. (WebCore::RenderTableCell::borderHalfLeft): Resolves “left” to a logical side using the
  15006. table’s block flow.
  15007. (WebCore::RenderTableCell::borderHalfRight): Similar.
  15008. (WebCore::RenderTableCell::borderHalfTop): Similar.
  15009. (WebCore::RenderTableCell::borderHalfBottom): Similar.
  15010. (WebCore::RenderTableCell::borderHalfStart): Added. Uses collapsedStartBorder(). Splits odd
  15011. widths based on physical side.
  15012. (WebCore::RenderTableCell::borderHalfEnd): Similar.
  15013. (WebCore::RenderTableCell::borderHalfBefore): Similar.
  15014. (WebCore::RenderTableCell::borderHalfAfter): Similar.
  15015. (WebCore::RenderTableCell::collectBorderStyles): Use logical methods.
  15016. (WebCore::RenderTableCell::paintCollapsedBorder): Updated.
  15017. * rendering/RenderTableCell.h:
  15018. * rendering/RenderTableSection.cpp:
  15019. (WebCore::RenderTableSection::setCellWidths): Updated for the renaming of updateWidth().
  15020. * rendering/style/RenderStyle.cpp:
  15021. (WebCore::RenderStyle::borderBefore): Added.
  15022. (WebCore::RenderStyle::borderAfter): Added.
  15023. (WebCore::RenderStyle::borderStart): Added.
  15024. (WebCore::RenderStyle::borderEnd): Adeed.
  15025. * rendering/style/RenderStyle.h:
  15026. 2010-11-03 Dimitri Glazkov <dglazkov@chromium.org>
  15027. Fix Win build correctly after r71244 and r71248
  15028. * WebCore.vcproj/WebCore.vcproj: Added XML gobbledygook back.
  15029. * dom/DOMAllInOne.cpp: Added files to build into a combined file.
  15030. 2010-11-03 Dimitri Glazkov <dglazkov@chromium.org>
  15031. Fix Qt, Win builds after r71244.
  15032. * WebCore.vcproj/WebCore.vcproj: Removed XML gobbledygook that prevents files from building.
  15033. * dom/Text.cpp:
  15034. (WebCore::Text::createRenderer): Moved parentOrHost inside ENABLE(SVG) guard.
  15035. 2010-11-03 David Hyatt <hyatt@apple.com>
  15036. Reviewed by Dan Bernstein.
  15037. https://bugs.webkit.org/show_bug.cgi?id=48928
  15038. Rename all the selection gap functions to not be directionally specific. Left and Right turn into LogicalLeft and
  15039. LogicalRight. Horizontal becomes Line. Vertical becomes Block.
  15040. * rendering/RenderBlock.cpp:
  15041. (WebCore::RenderBlock::selectionGapRectsForRepaint):
  15042. (WebCore::RenderBlock::paintSelection):
  15043. (WebCore::RenderBlock::fillSelectionGaps):
  15044. (WebCore::RenderBlock::fillInlineSelectionGaps):
  15045. (WebCore::RenderBlock::fillBlockSelectionGaps):
  15046. (WebCore::RenderBlock::fillLineSelectionGap):
  15047. (WebCore::RenderBlock::fillBlockSelectionGap):
  15048. (WebCore::RenderBlock::fillLogicalLeftSelectionGap):
  15049. (WebCore::RenderBlock::fillLogicalRightSelectionGap):
  15050. (WebCore::RenderBlock::getSelectionGapInfo):
  15051. (WebCore::RenderBlock::logicalLeftSelectionOffset):
  15052. (WebCore::RenderBlock::logicalRightSelectionOffset):
  15053. * rendering/RenderBlock.h:
  15054. * rendering/RootInlineBox.cpp:
  15055. (WebCore::RootInlineBox::fillLineSelectionGap):
  15056. 2010-11-03 Dimitri Glazkov <dglazkov@chromium.org>
  15057. Reviewed by Darin Adler.
  15058. Implement shadow DOM-aware event targeting and introduce EventContext to track the context of each event dispatch.
  15059. https://bugs.webkit.org/show_bug.cgi?id=46015
  15060. This patch adds the notion of EventContext (and a very similar-acting WindowEventContext, specifically
  15061. for DOMWindow), an abstraction that carries information around dispatching an event for any given Node.
  15062. This abstraction is necessary to ensure that events, fired from shadow DOM nodes are properly retargeted to
  15063. appear as if they are coming from their host, thus never exposing the shadow DOM nodes to the world outside.
  15064. * Android.mk: Added EventContext, WindowEventContext files.
  15065. * CMakeLists.txt: Ditto.
  15066. * GNUmakefile.am: Ditto.
  15067. * WebCore.gypi: Ditto.
  15068. * WebCore.pro: Ditto.
  15069. * WebCore.xcodeproj/project.pbxproj: Ditto.
  15070. * WebCore.vcproj/WebCore.vcproj: Ditto.
  15071. * dom/ContainerNode.cpp:
  15072. (WebCore::notifyChildInserted): Changed to be shadow DOM-aware.
  15073. * dom/EventContext.cpp: Added.
  15074. * dom/EventContext.h: Added.
  15075. * dom/Node.cpp:
  15076. (WebCore::Node::markAncestorsWithChildNeedsStyleRecalc): Changed to be shadow DOM-aware.
  15077. (WebCore::Node::createRendererIfNeeded): Ditto.
  15078. (WebCore::Node::parentOrHostNode): Added new helper method.
  15079. (WebCore::Node::enclosingLinkEventParentOrSelf): Changed to be shadow DOM-aware.
  15080. (WebCore::eventTargetRespectingSVGTargetRules): Collapsed two helper methods into one.
  15081. (WebCore::Node::eventAncestors): Refactored to collect a vector of EventContexts.
  15082. (WebCore::Node::topEventContext): Added.
  15083. (WebCore::eventHasListeners): Changed to use EventContexts.
  15084. (WebCore::Node::dispatchGenericEvent): Ditto.
  15085. * dom/Node.h: Removed eventParentNode that's no longer needed, added parentOrHostNode decl,
  15086. and changed signature of eventAncestors to use EventContexts.
  15087. * dom/Text.cpp:
  15088. (WebCore::Text::createRenderer): Changed to be shadow DOM-aware.
  15089. * inspector/InspectorDOMAgent.cpp:
  15090. (WebCore::InspectorDOMAgent::getEventListenersForNode): Changed to use EventContexts.
  15091. * page/EventHandler.cpp:
  15092. (WebCore::EventHandler::updateMouseEventTargetNode): Removed code that's no longer necessary.
  15093. * rendering/ShadowElement.h: Made m_shadowParent a RefPtr to avoid stale references when parent
  15094. is deleted.
  15095. * svg/SVGElement.cpp: Removed eventParentNode that's no longer needed.
  15096. * svg/SVGElement.h: Ditto.
  15097. * dom/WindowEventContext.cpp: Added.
  15098. * dom/WindowEventContext.h: Added.
  15099. 2010-11-02 Mikhail Naganov <mnaganov@chromium.org>
  15100. Reviewed by Pavel Feldman.
  15101. Web Inspector: Fix console messages about starting and finishing profiling.
  15102. https://bugs.webkit.org/show_bug.cgi?id=48825
  15103. * inspector/InspectorProfilerAgent.cpp:
  15104. (WebCore::InspectorProfilerAgent::addStartProfilingMessageToConsole):
  15105. * inspector/front-end/ProfilesPanel.js:
  15106. (WebInspector.ProfilesPanel.prototype.displayTitleForProfileLink):
  15107. 2010-11-03 Nikolas Zimmermann <nzimmermann@rim.com>
  15108. Reviewed by Andreas Kling.
  15109. chrome.dll!WebCore::SVGLength::SVGLength ...
  15110. https://bugs.webkit.org/show_bug.cgi?id=48831
  15111. Test: svg/dom/baseVal-animVal-crash.html
  15112. * svg/properties/SVGListPropertyTearOff.h:
  15113. (WebCore::SVGListPropertyTearOff::initialize): Renamed removeItemFromListIfNeeded to processIncomingListItem, to reflect its new job.
  15114. (WebCore::SVGListPropertyTearOff::insertItemBefore): Ditto.
  15115. (WebCore::SVGListPropertyTearOff::replaceItem): Ditto.
  15116. (WebCore::SVGListPropertyTearOff::appendItem): Ditto.
  15117. (WebCore::SVGListPropertyTearOff::processIncomingListItem): Copy incoming item, if necessary, see inline comments.
  15118. * svg/properties/SVGPropertyTearOff.h:
  15119. (WebCore::SVGPropertyTearOff::detachWrapper): Remove association with SVGAnimatedProperty, when wrapper is detached.
  15120. 2010-11-03 Kenneth Rohde Christiansen <kenneth@webkit.org>
  15121. Reviewed by Andreas Kling.
  15122. Make it possible to delegate scrolling to the UI
  15123. https://bugs.webkit.org/show_bug.cgi?id=48907
  15124. Add a WebCore setting for delegating scrolling to the actual
  15125. WebKit view, which means that setScrollPosition will call
  15126. scrollContents directly without going though the scrollbar
  15127. code.
  15128. * page/FrameView.cpp:
  15129. (WebCore::FrameView::delegatesScrolling):
  15130. * page/FrameView.h:
  15131. * page/Settings.cpp:
  15132. (WebCore::Settings::Settings):
  15133. (WebCore::Settings::setShouldDelegateScrolling):
  15134. * page/Settings.h:
  15135. (WebCore::Settings::shouldDelegateScrolling):
  15136. * platform/ScrollView.cpp:
  15137. (WebCore::ScrollView::setScrollPosition):
  15138. * platform/ScrollView.h:
  15139. (WebCore::ScrollView::delegatesScrolling):
  15140. 2010-11-03 Patrick Gansterer <paroga@webkit.org>
  15141. Reviewed by Adam Roben.
  15142. [WINCE] Add SharedBitmap
  15143. https://bugs.webkit.org/show_bug.cgi?id=28272
  15144. SharedBitmap is a helper class used as NativeImagePtr for WinCE.
  15145. It's wide used by WinCE graphics files as a replacement of HBITMAP.
  15146. Originally written by Yong Li <yong.li@torchmobile.com>.
  15147. * platform/graphics/wince/GraphicsContextWinCE.cpp:
  15148. (WebCore::TransparentLayerDC::TransparentLayerDC):
  15149. (WebCore::TransparentLayerDC::~TransparentLayerDC):
  15150. (WebCore::ScopeDCProvider::ScopeDCProvider):
  15151. (WebCore::ScopeDCProvider::~ScopeDCProvider):
  15152. (WebCore::GraphicsContext::drawText):
  15153. * platform/graphics/wince/SharedBitmap.cpp: Added.
  15154. (WebCore::SharedBitmap::create):
  15155. (WebCore::SharedBitmap::SharedBitmap):
  15156. (WebCore::SharedBitmap::~SharedBitmap):
  15157. (WebCore::SharedBitmap::resetPixels):
  15158. (WebCore::convert32To16):
  15159. (WebCore::SharedBitmap::to16bit):
  15160. (WebCore::SharedBitmap::freeMemory):
  15161. (WebCore::SharedBitmap::createHandle):
  15162. (WebCore::SharedBitmap::ensureHandle):
  15163. (WebCore::SharedBitmap::draw):
  15164. (WebCore::SharedBitmap::clipBitmap):
  15165. (WebCore::drawPatternSimple):
  15166. (WebCore::normalizePhase):
  15167. (WebCore::SharedBitmap::drawPattern):
  15168. (WebCore::SharedBitmap::DCProvider::getDC):
  15169. (WebCore::SharedBitmap::DCProvider::releaseDC):
  15170. (WebCore::SharedBitmap::clearPixels):
  15171. * platform/graphics/wince/SharedBitmap.h: Added.
  15172. (WebCore::DCProvider::getDC):
  15173. (WebCore::DCProvider::releaseDC):
  15174. (WebCore::DCProvider::DCHolder::DCHolder):
  15175. (WebCore::DCProvider::DCHolder::~DCHolder):
  15176. (WebCore::DCProvider::DCHolder::set):
  15177. (WebCore::DCProvider::DCHolder::get):
  15178. (WebCore::DCProvider::DCHolder::clearInternal):
  15179. (WebCore::DCProvider::DCHolder::setInternal):
  15180. 2010-11-03 Nikolas Zimmermann <nzimmermann@rim.com>
  15181. Reviewed by Dirk Schulze.
  15182. chrome.dll!WebCore::SVGListPropertyTearOff<...>::getItem ReadAV@NULL (578c0f7f21ca517ba29a4eafb7099c1b)
  15183. https://bugs.webkit.org/show_bug.cgi?id=48829
  15184. Share SVGPropertyTearOff wrapper cache between SVGAnimatedListPropertyTearOff::baseVal/animVal.
  15185. When modifying the list through baseVal, and then grabbing the animVal list an assertion was fired,
  15186. as the wrapper cache was out of sync with the underlying SVG*List vector.
  15187. Test: svg/dom/baseVal-animVal-list-crash.html
  15188. * svg/properties/SVGAnimatedListPropertyTearOff.h:
  15189. (WebCore::SVGAnimatedListPropertyTearOff::baseVal):
  15190. (WebCore::SVGAnimatedListPropertyTearOff::animVal):
  15191. (WebCore::SVGAnimatedListPropertyTearOff::removeItemFromList):
  15192. (WebCore::SVGAnimatedListPropertyTearOff::detachListWrappers):
  15193. (WebCore::SVGAnimatedListPropertyTearOff::values):
  15194. (WebCore::SVGAnimatedListPropertyTearOff::wrappers):
  15195. (WebCore::SVGAnimatedListPropertyTearOff::create):
  15196. (WebCore::SVGAnimatedListPropertyTearOff::SVGAnimatedListPropertyTearOff):
  15197. * svg/properties/SVGListPropertyTearOff.h:
  15198. (WebCore::SVGListPropertyTearOff::create):
  15199. (WebCore::SVGListPropertyTearOff::removeItemFromList):
  15200. (WebCore::SVGListPropertyTearOff::clear):
  15201. (WebCore::SVGListPropertyTearOff::numberOfItems):
  15202. (WebCore::SVGListPropertyTearOff::initialize):
  15203. (WebCore::SVGListPropertyTearOff::getItem):
  15204. (WebCore::SVGListPropertyTearOff::insertItemBefore):
  15205. (WebCore::SVGListPropertyTearOff::replaceItem):
  15206. (WebCore::SVGListPropertyTearOff::removeItem):
  15207. (WebCore::SVGListPropertyTearOff::appendItem):
  15208. (WebCore::SVGListPropertyTearOff::SVGListPropertyTearOff):
  15209. (WebCore::SVGListPropertyTearOff::commitChange):
  15210. 2010-11-02 Ilya Tikhonovsky <loislo@chromium.org>
  15211. Reviewed by Pavel Feldman.
  15212. Web Inspector: Remove obsolete code.
  15213. It is not required to push onload and DOMContentLoaded events times to the fresh instance of Inspector.
  15214. Network Panel is showing the markers only after reloading the inspected page.
  15215. https://bugs.webkit.org/show_bug.cgi?id=48854
  15216. * inspector/InspectorController.cpp:
  15217. (WebCore::InspectorController::InspectorController):
  15218. (WebCore::InspectorController::populateScriptObjects):
  15219. (WebCore::InspectorController::mainResourceFiredDOMContentEvent):
  15220. (WebCore::InspectorController::mainResourceFiredLoadEvent):
  15221. * inspector/InspectorController.h:
  15222. 2010-11-03 Pavel Feldman <pfeldman@chromium.org>
  15223. Reviewed by Jeremy Orlow.
  15224. Web Inspector: brush up breakpoints UI and UX.
  15225. https://bugs.webkit.org/show_bug.cgi?id=48901
  15226. * inspector/front-end/BreakpointManager.js:
  15227. (WebInspector.DOMBreakpoint.prototype.populateLabelElement):
  15228. (WebInspector.XHRBreakpoint.prototype.populateLabelElement):
  15229. * inspector/front-end/BreakpointsSidebarPane.js:
  15230. (WebInspector.BreakpointsSidebarPane.prototype.addBreakpointItem):
  15231. (WebInspector.XHRBreakpointsSidebarPane.prototype.addBreakpointItem):
  15232. (WebInspector.XHRBreakpointsSidebarPane.prototype._hideEditBreakpointDialog):
  15233. (WebInspector.BreakpointItem):
  15234. * inspector/front-end/ElementsTreeOutline.js:
  15235. (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu.handlerFunction):
  15236. (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
  15237. * inspector/front-end/PropertiesSection.js:
  15238. (WebInspector.PropertiesSection):
  15239. * inspector/front-end/inspector.css:
  15240. (.monospace):
  15241. (body.platform-mac.platform-mac-snowleopard .source-code):
  15242. (body.platform-windows .monospace, body.platform-windows .source-code):
  15243. (body.platform-linux .monospace, body.platform-linux .source-code):
  15244. (.source-code):
  15245. (.section .header):
  15246. (.section .header::before):
  15247. (.section .header .title, .event-bar .header .title):
  15248. (.section .header .subtitle, .event-bar .header .subtitle):
  15249. (.section.expanded .properties, .event-bar.expanded .event-properties):
  15250. (.event-listener-breakpoints .event-category):
  15251. (.event-listener-breakpoints.properties-tree .children li):
  15252. (.event-listener-breakpoints .checkbox-elem):
  15253. (.event-bar):
  15254. (.event-bars .event-bar .header .title):
  15255. (.event-bars .event-bar .header::before):
  15256. (.pane > .body .info):
  15257. (.pane > .body .placard + .info):
  15258. (ol.breakpoint-list):
  15259. (.breakpoint-list li):
  15260. (.pane .breakpoint-hit):
  15261. (.cursor-pointer):
  15262. (.cursor-auto):
  15263. 2010-11-03 Nikolas Zimmermann <nzimmermann@rim.com>
  15264. Not reviewed.
  15265. Convert SVGAnimatedString/SVGStringList to the new SVG*PropertyTearOff concept
  15266. https://bugs.webkit.org/show_bug.cgi?id=48898
  15267. Fix Chromium/V8 build for real, verified using a local ToT Chromium build.
  15268. * bindings/scripts/CodeGeneratorV8.pm:
  15269. 2010-11-03 Nikolas Zimmermann <nzimmermann@rim.com>
  15270. Not reviewed.
  15271. Convert SVGAnimatedString/SVGStringList to the new SVG*PropertyTearOff concept
  15272. https://bugs.webkit.org/show_bug.cgi?id=48898
  15273. Next attempt to fix the Chromium/V8 builds - a class forward in the headers was still missing.
  15274. * bindings/scripts/CodeGeneratorV8.pm: Add SVGStringListPropertyTearOff in the V8SVGStringList header.
  15275. 2010-11-03 Nikolas Zimmermann <nzimmermann@rim.com>
  15276. Not reviewed.
  15277. Convert SVGAnimatedString/SVGStringList to the new SVG*PropertyTearOff concept
  15278. https://bugs.webkit.org/show_bug.cgi?id=48898
  15279. Attempt to fix the Chromium/V8 builds.
  15280. * bindings/scripts/CodeGeneratorV8.pm: Add missing "SVGStringListPropertyTearOff.h" include, also replaces some commas by semicolons (no idea why it worked before, Perl is not strict...)
  15281. 2010-11-03 Nikolas Zimmermann <nzimmermann@rim.com>
  15282. Reviewed by Dirk Schulze.
  15283. Convert SVGAnimatedString/SVGStringList to the new SVG*PropertyTearOff concept
  15284. https://bugs.webkit.org/show_bug.cgi?id=48898
  15285. Convert SVGAnimatedString/SVGStringList to the new svg animated type concept.
  15286. SVGStringList is special compared to all other SVG*Lists, as it returns non-live elements.
  15287. That means myStringList.getItem(0) = 'foobar' doesn't take effect.
  15288. When appending an item to a SVGStringList, that has been taken from another list, it's not removed from the list origin.
  15289. That demanded a new SVGStringListPropertyTearOff which does just that.
  15290. Tests: svg/W3C-SVG-1.1-SE/types-dom-06-f.svg
  15291. svg/dom/SVGStringList.html
  15292. * GNUmakefile.am: Add SVGAnimatedString.h / SVGStringListPropertyTearOff.h to build.
  15293. * WebCore.gypi: Ditto.
  15294. * WebCore.pro: Ditto.
  15295. * WebCore.vcproj/WebCore.vcproj: Ditto.
  15296. * WebCore.xcodeproj/project.pbxproj: Ditto.
  15297. * bindings/scripts/CodeGenerator.pm: Recognize SVGAnimatedString as new style svg animated type. Map SVGStringList to SVGStringListPropertyTearOff.
  15298. * bindings/scripts/CodeGeneratorJS.pm: Handle SVGStringListPropertyTearOff in GetSVGPropertyTypes.
  15299. * bindings/scripts/CodeGeneratorObjC.pm: Ditto.
  15300. * bindings/scripts/CodeGeneratorV8.pm: Ditto.
  15301. * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove SVGAnimatedString handling.
  15302. * svg/DeprecatedSVGAnimatedTemplate.h: Ditto.
  15303. * svg/SVGAElement.cpp: Renamed target to svgTarget() to avoid clashes with Element::target(), adjust the bindings to call svgTarget() instead of target(), when processing SVGAElement.
  15304. (WebCore::SVGAElement::parseMappedAttribute):
  15305. (WebCore::SVGAElement::synchronizeProperty):
  15306. * svg/SVGAElement.h:
  15307. * svg/SVGAltGlyphElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARED_ANIMATED_STATIC_PROPERTY_NEW/
  15308. * svg/SVGAnimatedString.h: Added.
  15309. * svg/SVGCursorElement.h: Ditto.
  15310. * svg/SVGFEBlendElement.h: Ditto.
  15311. * svg/SVGFEColorMatrixElement.h: Ditto.
  15312. * svg/SVGFEComponentTransferElement.h: Ditto.
  15313. * svg/SVGFECompositeElement.h: Ditto.
  15314. * svg/SVGFEConvolveMatrixElement.h: Ditto.
  15315. * svg/SVGFEDiffuseLightingElement.h: Ditto.
  15316. * svg/SVGFEDisplacementMapElement.h: Ditto.
  15317. * svg/SVGFEGaussianBlurElement.h: Ditto.
  15318. * svg/SVGFEImageElement.h: Ditto.
  15319. * svg/SVGFEMergeNodeElement.h: Ditto.
  15320. * svg/SVGFEMorphologyElement.h: Ditto.
  15321. * svg/SVGFEOffsetElement.h: Ditto.
  15322. * svg/SVGFESpecularLightingElement.h: Ditto.
  15323. * svg/SVGFETileElement.h: Ditto.
  15324. * svg/SVGFilterElement.h: Ditto.
  15325. * svg/SVGFilterPrimitiveStandardAttributes.h: Ditto.
  15326. * svg/SVGForeignObjectElement.h: Ditto.
  15327. * svg/SVGGradientElement.h: Ditto.
  15328. * svg/SVGImageElement.h: Ditto.
  15329. * svg/SVGLengthList.idl: Remove leftover SVGListProperty marker.
  15330. * svg/SVGMPathElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARED_ANIMATED_STATIC_PROPERTY_NEW/
  15331. * svg/SVGPatternElement.h: Ditto.
  15332. * svg/SVGScriptElement.h: Ditto.
  15333. * svg/SVGStringList.cpp: Make SVGStringList a plain Vector<String>.
  15334. (WebCore::SVGStringList::commitChange): React to SVGStringList changes.
  15335. (WebCore::SVGStringList::reset):
  15336. (WebCore::SVGStringList::parse):
  15337. * svg/SVGStringList.h:
  15338. (WebCore::SVGStringList::SVGStringList):
  15339. * svg/SVGStyledElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARED_ANIMATED_STATIC_PROPERTY_NEW/
  15340. * svg/SVGTRefElement.h: Ditto.
  15341. * svg/SVGTests.cpp: Adapt to SVGStringList API changes.
  15342. (WebCore::SVGTests::SVGTests):
  15343. (WebCore::SVGTests::hasExtension):
  15344. (WebCore::SVGTests::isValid):
  15345. (WebCore::SVGTests::parseMappedAttribute):
  15346. (WebCore::SVGTests::isKnownAttribute):
  15347. * svg/SVGTests.h: Ditto.
  15348. (WebCore::SVGTests::requiredFeatures):
  15349. (WebCore::SVGTests::requiredExtensions):
  15350. (WebCore::SVGTests::systemLanguage):
  15351. * svg/SVGTextPathElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARED_ANIMATED_STATIC_PROPERTY_NEW/
  15352. * svg/SVGURIReference.h: Adapt to SVGStringList API changes.
  15353. (WebCore::SVGURIReference::~SVGURIReference):
  15354. * svg/SVGUseElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARED_ANIMATED_STATIC_PROPERTY_NEW/
  15355. * svg/SVGViewElement.cpp: Adapt to SVGStringList API changes.
  15356. (WebCore::SVGViewElement::SVGViewElement):
  15357. (WebCore::SVGViewElement::parseMappedAttribute):
  15358. * svg/SVGViewElement.h: Ditto.
  15359. (WebCore::SVGViewElement::viewTarget):
  15360. * svg/properties/SVGAnimatedPropertyMacros.h: Moved GetOwnerElementForType heleprs from SVGAnimatedPropertySynchronizer into this file.
  15361. * svg/properties/SVGAnimatedPropertySynchronizer.h:
  15362. * svg/properties/SVGPropertyTraits.h: Handle SVGStringList.
  15363. * svg/properties/SVGStringListPropertyTearOff.h: Added. This is a simplified version of SVGListPropertyTearOff, tied to SVGStringList and its special demands.
  15364. (WebCore::SVGStringListPropertyTearOff::create):
  15365. (WebCore::SVGStringListPropertyTearOff::clear):
  15366. (WebCore::SVGStringListPropertyTearOff::numberOfItems):
  15367. (WebCore::SVGStringListPropertyTearOff::initialize):
  15368. (WebCore::SVGStringListPropertyTearOff::getItem):
  15369. (WebCore::SVGStringListPropertyTearOff::insertItemBefore):
  15370. (WebCore::SVGStringListPropertyTearOff::replaceItem):
  15371. (WebCore::SVGStringListPropertyTearOff::removeItem):
  15372. (WebCore::SVGStringListPropertyTearOff::appendItem):
  15373. (WebCore::SVGStringListPropertyTearOff::SVGStringListPropertyTearOff):
  15374. 2010-11-03 Zoltan Herczeg <zherczeg@webkit.org>
  15375. Reviewed by Dirk Schulze.
  15376. SVG FELighting performance issues
  15377. https://bugs.webkit.org/show_bug.cgi?id=48212
  15378. This patch speeds-up FELighting filter painting by 40%
  15379. It reduces the number of floating point operations and
  15380. empolys faster pixel manipulation (both for read and
  15381. write). Furthermore the length() member of FloatPoint3D
  15382. is made inline to speed up vector length calculations.
  15383. The lighting filter pixels tests are cover this patch.
  15384. * platform/graphics/FloatPoint3D.cpp:
  15385. * platform/graphics/FloatPoint3D.h:
  15386. (WebCore::FloatPoint3D::length):
  15387. * platform/graphics/filters/FELighting.cpp:
  15388. (WebCore::FELighting::LightingData::topLeft):
  15389. (WebCore::FELighting::LightingData::topRow):
  15390. (WebCore::FELighting::LightingData::topRight):
  15391. (WebCore::FELighting::LightingData::leftColumn):
  15392. (WebCore::FELighting::LightingData::interior):
  15393. (WebCore::FELighting::LightingData::rightColumn):
  15394. (WebCore::FELighting::LightingData::bottomLeft):
  15395. (WebCore::FELighting::LightingData::bottomRow):
  15396. (WebCore::FELighting::LightingData::bottomRight):
  15397. (WebCore::FELighting::inlineSetPixel):
  15398. (WebCore::FELighting::setPixel):
  15399. (WebCore::FELighting::drawLighting):
  15400. (WebCore::FELighting::apply):
  15401. * platform/graphics/filters/FELighting.h:
  15402. * platform/graphics/filters/LightSource.cpp:
  15403. (WebCore::PointLightSource::updatePaintingData):
  15404. (WebCore::SpotLightSource::updatePaintingData):
  15405. (WebCore::DistantLightSource::initPaintingData):
  15406. * platform/graphics/filters/LightSource.h:
  15407. 2010-11-03 Daniel Bates <dbates@rim.com>
  15408. Reviewed by Adam Barth.
  15409. For unnamed frames, window.name returns a generated name
  15410. https://bugs.webkit.org/show_bug.cgi?id=6751
  15411. Part 2 of 2.
  15412. Fixes an issue where the window.name of an unnamed frame returns
  15413. a unique generated name that is used internally to identify the
  15414. frame. Instead, we should return an empty string as implied by
  15415. section 5.1.6 of the HTML5 spec. (http://www.w3.org/TR/html5/browsers.html#browsing-context-names).
  15416. This section describes that a browsing context can have no name or be
  15417. the empty string.
  15418. * html/HTMLFrameElementBase.cpp:
  15419. (WebCore::HTMLFrameElementBase::openURL): Removed ASSERT for empty
  15420. frame name since this is valid as per the HTML5 spec.
  15421. (WebCore::HTMLFrameElementBase::setName): Removed the call to FrameTree::uniqueChildName()
  15422. since the loader code no longer depends on the frame name being unique.
  15423. * page/DOMWindow.cpp:
  15424. (WebCore::DOMWindow::name): Modified to call FrameTree::name().
  15425. * page/FrameTree.cpp:
  15426. (WebCore::FrameTree::setName):
  15427. (WebCore::FrameTree::clearName):
  15428. * page/FrameTree.h:
  15429. (WebCore::FrameTree::name): Re-added; returns the DOM-specified name of the
  15430. frame. Previously, this method returned the internal frame name.
  15431. 2010-11-03 takano takumi <takano1@asia.apple.com>
  15432. Reviewed by Dan Bernstein.
  15433. Add text-combine property to our property list. Reflect the setting to a RenderStyle object.
  15434. https://bugs.webkit.org/show_bug.cgi?id=48608
  15435. Test: fast/text/international/text-combine-parser-test.html
  15436. * css/CSSComputedStyleDeclaration.cpp: Added text-combine property support.
  15437. (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  15438. * css/CSSParser.cpp: Added text-combine property support.
  15439. (WebCore::CSSParser::parseValue):
  15440. * css/CSSPrimitiveValueMappings.h: Added a primitive value mapper for text-combine
  15441. (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
  15442. (WebCore::CSSPrimitiveValue::operator TextCombine):
  15443. * css/CSSPropertyNames.in: Added "text-combine".
  15444. * css/CSSStyleSelector.cpp: Added text-combine property support.
  15445. (WebCore::CSSStyleSelector::applyProperty):
  15446. * css/CSSValueKeywords.in: Added values for text-combine.
  15447. * rendering/style/RenderStyle.cpp:
  15448. (WebCore::RenderStyle::diff): Added check of text-combine value.
  15449. * rendering/style/RenderStyle.h: Added accessors for text-combine.
  15450. (WebCore::InheritedFlags::textCombine):
  15451. (WebCore::InheritedFlags::setTextCombine):
  15452. (WebCore::InheritedFlags::initialTextCombine):
  15453. * rendering/style/RenderStyleConstants.h:
  15454. * rendering/style/StyleRareNonInheritedData.cpp: Added text-combine property support.
  15455. (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
  15456. (WebCore::StyleRareNonInheritedData::operator==):
  15457. * rendering/style/StyleRareNonInheritedData.h: Added text-combine entry for RenderStyle object here.
  15458. 2010-11-02 Daniel Bates <dbates@rim.com>
  15459. Reviewed by Adam Barth.
  15460. For unnamed frames, window.name returns a generated name
  15461. https://bugs.webkit.org/show_bug.cgi?id=6751
  15462. Part 1 of 2.
  15463. Towards fixing bug #6751, rename FrameTree::name() to FrameTree::uniqueName(),
  15464. which is more descriptive of its purpose. A follow up patch will re-add
  15465. FrameTree::name() which will return the DOM-specified name of the frame.
  15466. We will also take this opportunity to verify that we have found all the
  15467. call sites of FrameTree::name().
  15468. * loader/DocumentLoader.cpp:
  15469. (WebCore::DocumentLoader::mainResource): Use FrameTree::uniqueName().
  15470. * loader/FrameLoader.cpp:
  15471. (WebCore::FrameLoader::loadURLIntoChildFrame): Ditto.
  15472. (WebCore::FrameLoader::commitProvisionalLoad): Ditto.
  15473. * loader/HistoryController.cpp:
  15474. (WebCore::HistoryController::saveDocumentState): Ditto.
  15475. (WebCore::HistoryController::restoreDocumentState): Ditto.
  15476. (WebCore::HistoryController::createItem): Ditto.
  15477. (WebCore::HistoryController::currentFramesMatchItem): Ditto.
  15478. * loader/ProgressTracker.cpp:
  15479. (WebCore::ProgressTracker::progressStarted): Ditto.
  15480. (WebCore::ProgressTracker::progressCompleted): Ditto.
  15481. * loader/archive/cf/LegacyWebArchive.cpp:
  15482. (WebCore::LegacyWebArchive::create): Ditto.
  15483. * page/DOMWindow.cpp:
  15484. (WebCore::DOMWindow::name): Ditto.
  15485. * page/FrameTree.cpp:
  15486. (WebCore::FrameTree::setName): Ditto.
  15487. (WebCore::FrameTree::clearName): Ditto.
  15488. (WebCore::FrameTree::uniqueChildName): Ditto.
  15489. (WebCore::FrameTree::child): Ditto.
  15490. (WebCore::FrameTree::find): Ditto.
  15491. * page/FrameTree.h:
  15492. (WebCore::FrameTree::uniqueName): Renamed (formerly FrameTree::name()).
  15493. 2010-11-02 Chris Rogers <crogers@google.com>
  15494. Reviewed by James Robinson.
  15495. Add AudioProcessingEvent files
  15496. https://bugs.webkit.org/show_bug.cgi?id=48884
  15497. No new tests since audio API is not yet implemented.
  15498. * webaudio/AudioProcessingEvent.cpp: Added.
  15499. (WebCore::AudioProcessingEvent::create):
  15500. (WebCore::AudioProcessingEvent::AudioProcessingEvent):
  15501. (WebCore::AudioProcessingEvent::~AudioProcessingEvent):
  15502. (WebCore::AudioProcessingEvent::isAudioProcessingEvent):
  15503. * webaudio/AudioProcessingEvent.h: Added.
  15504. (WebCore::AudioProcessingEvent::inputBuffer):
  15505. (WebCore::AudioProcessingEvent::outputBuffer):
  15506. * webaudio/AudioProcessingEvent.idl: Added.
  15507. 2010-11-02 Al Patrick <apatrick@chromium.org>
  15508. Reviewed by Kenneth Russell.
  15509. Added PluginLayerChromium, which composites plugin instances that have an associated OpenGL backing texture.
  15510. https://bugs.webkit.org/show_bug.cgi?id=48032
  15511. * WebCore.gypi:
  15512. * loader/SubframeLoader.cpp
  15513. (WebCore::SubframeLoader::loadPlugin):
  15514. * platform/graphics/chromium/LayerChromium.cpp:
  15515. (WebCore::LayerChromium::setNeedsDisplay):
  15516. * platform/graphics/chromium/LayerRendererChromium.cpp:
  15517. (WebCore::LayerRendererChromium::initializeSharedObjects):
  15518. (WebCore::LayerRendererChromium::cleanupSharedObjects):
  15519. * platform/graphics/chromium/LayerRendererChromium.h:
  15520. (WebCore::LayerRendererChromium::pluginLayerSharedValues):
  15521. * platform/graphics/chromium/PluginLayerChromium.cpp: Added.
  15522. (WebCore::PluginLayerChromium::SharedValues::SharedValues):
  15523. (WebCore::PluginLayerChromium::SharedValues::~SharedValues):
  15524. (WebCore::PluginLayerChromium::create):
  15525. (WebCore::PluginLayerChromium::PluginLayerChromium):
  15526. (WebCore::PluginLayerChromium::updateContents):
  15527. (WebCore::PluginLayerChromium::draw):
  15528. * platform/graphics/chromium/PluginLayerChromium.h: Added.
  15529. (WebCore::PluginLayerChromium::drawsContent):
  15530. (WebCore::PluginLayerChromium::setTextureId):
  15531. (WebCore::PluginLayerChromium::SharedValues::shaderProgram):
  15532. (WebCore::PluginLayerChromium::SharedValues::shaderSamplerLocation):
  15533. (WebCore::PluginLayerChromium::SharedValues::shaderMatrixLocation):
  15534. (WebCore::PluginLayerChromium::SharedValues::shaderAlphaLocation):
  15535. (WebCore::PluginLayerChromium::SharedValues::initialized):
  15536. 2010-11-02 James Simonsen <simonjam@chromium.org>
  15537. Reviewed by Adam Barth.
  15538. mathml in html sometimes incorrectly parsed
  15539. https://bugs.webkit.org/show_bug.cgi?id=48105
  15540. * html/parser/HTMLTreeBuilder.cpp:
  15541. (WebCore::HTMLTreeBuilder::processEndTag): Fixed to match HTML5 spec.
  15542. 2010-11-02 Chris Guillory <chris.guillory@google.com>
  15543. Reviewed by Dmitry Titov.
  15544. Null check obj in AXObjectCache::postPlatformNotification.
  15545. https://bugs.webkit.org/show_bug.cgi?id=48896
  15546. * accessibility/chromium/AXObjectCacheChromium.cpp:
  15547. (WebCore::AXObjectCache::postPlatformNotification):
  15548. 2010-11-02 Kavita Kanetkar <kkanetkar@chromium.org>
  15549. Reviewed by Dumitru Daniliuc.
  15550. [FileSystem] Support not creating directories when queried by inspector.
  15551. https://bugs.webkit.org/show_bug.cgi?id=48169
  15552. * fileapi/LocalFileSystem.cpp:
  15553. (WebCore::openFileSystem):
  15554. (WebCore::LocalFileSystem::readFileSystem):
  15555. (WebCore::LocalFileSystem::requestFileSystem):
  15556. * fileapi/LocalFileSystem.h:
  15557. * platform/AsyncFileSystem.cpp:
  15558. (WebCore::AsyncFileSystem::openFileSystem):
  15559. * platform/AsyncFileSystem.h:
  15560. 2010-11-02 Chris Rogers <crogers@google.com>
  15561. Reviewed by Kenneth Russell.
  15562. Add AudioBufferSourceNode files
  15563. https://bugs.webkit.org/show_bug.cgi?id=48012
  15564. No new tests since audio API is not yet implemented.
  15565. * webaudio/AudioBufferSourceNode.cpp: Added.
  15566. (WebCore::AudioBufferSourceNode::create):
  15567. (WebCore::AudioBufferSourceNode::AudioBufferSourceNode):
  15568. (WebCore::AudioBufferSourceNode::~AudioBufferSourceNode):
  15569. (WebCore::AudioBufferSourceNode::process):
  15570. (WebCore::AudioBufferSourceNode::provideInput):
  15571. (WebCore::AudioBufferSourceNode::readFromBuffer):
  15572. (WebCore::AudioBufferSourceNode::readFromBufferWithGrainEnvelope):
  15573. (WebCore::AudioBufferSourceNode::reset):
  15574. (WebCore::AudioBufferSourceNode::setBuffer):
  15575. (WebCore::AudioBufferSourceNode::numberOfChannels):
  15576. (WebCore::AudioBufferSourceNode::noteOn):
  15577. (WebCore::AudioBufferSourceNode::noteGrainOn):
  15578. (WebCore::AudioBufferSourceNode::noteOff):
  15579. (WebCore::AudioBufferSourceNode::totalPitchRate):
  15580. * webaudio/AudioBufferSourceNode.h: Added.
  15581. (WebCore::AudioBufferSourceNode::buffer):
  15582. (WebCore::AudioBufferSourceNode::looping):
  15583. (WebCore::AudioBufferSourceNode::setLooping):
  15584. (WebCore::AudioBufferSourceNode::gain):
  15585. (WebCore::AudioBufferSourceNode::playbackRate):
  15586. (WebCore::AudioBufferSourceNode::setPannerNode):
  15587. * webaudio/AudioBufferSourceNode.idl: Added.
  15588. 2010-11-02 Martin Robinson <mrobinson@igalia.com>
  15589. Reviewed by Adam Barth.
  15590. [Cairo] Remove PlatformRefPtrCairo
  15591. https://bugs.webkit.org/show_bug.cgi?id=48192
  15592. Replace PlatformRefPtrCairo with a RefPtr specialization for Cairo and
  15593. Fontconfig types. This is the first step toward removing PlatformRefPtr,
  15594. whose job is better handled by RefPtr.
  15595. * CMakeListsEfl.txt: Update the sources list to include RefPtrCairo
  15596. instead of PlatformRefPtrCairo.
  15597. * GNUmakefile.am: Ditto.
  15598. * WebCore.vcproj/WebCore.vcproj: Ditto.
  15599. * platform/graphics/GraphicsContext.h: Replace PlatformRefPtrCairo with
  15600. RefPtrCairo.
  15601. * platform/graphics/cairo/CairoUtilities.cpp: Ditto.
  15602. (WebCore::drawPatternToCairoContext): Ditto.
  15603. * platform/graphics/cairo/FontCacheFreeType.cpp: Ditto.
  15604. (WebCore::FontCache::getFontDataForCharacters): Ditto.
  15605. (WebCore::FontCache::createFontPlatformData): Ditto.
  15606. * platform/graphics/cairo/FontPlatformDataFreeType.cpp: Ditto.
  15607. (WebCore::FontPlatformData::FontPlatformData): Ditto.
  15608. (WebCore::FontPlatformData::initializeWithFontFace): Ditto.
  15609. * platform/graphics/cairo/FontPlatformDataFreeType.h: Ditto.
  15610. * platform/graphics/cairo/GraphicsContextCairo.cpp: Ditto.
  15611. * platform/graphics/cairo/ImageCairo.cpp: Ditto.
  15612. * platform/graphics/cairo/RefPtrCairo.cpp: Renamed from WebCore/platform/graphics/cairo/PlatformRefPtrCairo.cpp.
  15613. (WTF::refIfNotNull): Added.
  15614. (WTF::derefIfNotNull): Added.
  15615. * platform/graphics/cairo/RefPtrCairo.h: Renamed from WebCore/platform/graphics/cairo/PlatformRefPtrCairo.h.
  15616. * platform/gtk/CursorGtk.cpp: Replace PlatformRefPtrCairo with
  15617. RefPtrCairo.
  15618. (WebCore::createNamedCursor): Ditto.
  15619. * platform/gtk/DragImageGtk.cpp: Ditto.
  15620. (WebCore::scaleDragImage): Ditto.
  15621. (WebCore::dissolveDragImageToFraction): Ditto.
  15622. * plugins/gtk/PluginViewGtk.cpp: Ditto.
  15623. (WebCore::PluginView::paint): Ditto.
  15624. 2010-11-02 Chris Rogers <crogers@google.com>
  15625. Reviewed by Kenneth Russell.
  15626. Simple followup changes to files affected by AudioNodeInput thread safety
  15627. https://bugs.webkit.org/show_bug.cgi?id=48661
  15628. No new tests since audio API is not yet implemented.
  15629. * webaudio/AudioBasicProcessorNode.cpp:
  15630. (WebCore::AudioBasicProcessorNode::checkNumberOfChannelsForInput):
  15631. * webaudio/AudioChannelSplitter.cpp:
  15632. (WebCore::AudioChannelSplitter::process):
  15633. * webaudio/AudioDestinationNode.cpp:
  15634. (WebCore::AudioDestinationNode::initialize):
  15635. (WebCore::AudioDestinationNode::uninitialize):
  15636. (WebCore::AudioDestinationNode::provideInput):
  15637. * webaudio/AudioGainNode.cpp:
  15638. (WebCore::AudioGainNode::checkNumberOfChannelsForInput):
  15639. * webaudio/AudioPannerNode.cpp:
  15640. (WebCore::AudioPannerNode::notifyAudioSourcesConnectedToNode):
  15641. 2010-11-02 Chris Guillory <chris.guillory@google.com>
  15642. Reviewed by Chris Fleizach.
  15643. Chromium: Propagate a document value changed notification on scroll.
  15644. https://bugs.webkit.org/show_bug.cgi?id=48817
  15645. * accessibility/AccessibilityObject.h:
  15646. (WebCore::AccessibilityObject::isAccessibilityScrollbar):
  15647. * accessibility/AccessibilityScrollbar.h:
  15648. (WebCore::AccessibilityScrollbar::scrollbar):
  15649. (WebCore::AccessibilityScrollbar::isAccessibilityScrollbar):
  15650. * accessibility/chromium/AXObjectCacheChromium.cpp:
  15651. (WebCore::AXObjectCache::postPlatformNotification):
  15652. 2010-11-02 Chris Rogers <crogers@google.com>
  15653. Reviewed by Kenneth Russell.
  15654. Add ConvolverNode files
  15655. https://bugs.webkit.org/show_bug.cgi?id=47941
  15656. No new tests since audio API is not yet implemented.
  15657. * webaudio/ConvolverNode.cpp: Added.
  15658. (WebCore::ConvolverNode::ConvolverNode):
  15659. (WebCore::ConvolverNode::~ConvolverNode):
  15660. (WebCore::ConvolverNode::process):
  15661. (WebCore::ConvolverNode::reset):
  15662. (WebCore::ConvolverNode::initialize):
  15663. (WebCore::ConvolverNode::uninitialize):
  15664. (WebCore::ConvolverNode::setBuffer):
  15665. (WebCore::ConvolverNode::buffer):
  15666. * webaudio/ConvolverNode.h: Added.
  15667. (WebCore::ConvolverNode::create):
  15668. * webaudio/ConvolverNode.idl: Added.
  15669. 2010-11-02 Chris Rogers <crogers@google.com>
  15670. Reviewed by Kenneth Russell.
  15671. Add RealtimeAnalyser files
  15672. https://bugs.webkit.org/show_bug.cgi?id=48810
  15673. No new tests since audio API is not yet implemented.
  15674. * webaudio/RealtimeAnalyser.cpp: Added.
  15675. (WebCore::RealtimeAnalyser::RealtimeAnalyser):
  15676. (WebCore::RealtimeAnalyser::~RealtimeAnalyser):
  15677. (WebCore::RealtimeAnalyser::reset):
  15678. (WebCore::RealtimeAnalyser::setFftSize):
  15679. (WebCore::RealtimeAnalyser::writeInput):
  15680. (WebCore::RealtimeAnalyser::doFFTAnalysis):
  15681. (WebCore::RealtimeAnalyser::getFloatFrequencyData):
  15682. (WebCore::RealtimeAnalyser::getByteFrequencyData):
  15683. (WebCore::RealtimeAnalyser::getByteTimeDomainData):
  15684. * webaudio/RealtimeAnalyser.h: Added.
  15685. (WebCore::RealtimeAnalyser::fftSize):
  15686. (WebCore::RealtimeAnalyser::frequencyBinCount):
  15687. (WebCore::RealtimeAnalyser::setMinDecibels):
  15688. (WebCore::RealtimeAnalyser::minDecibels):
  15689. (WebCore::RealtimeAnalyser::setMaxDecibels):
  15690. (WebCore::RealtimeAnalyser::maxDecibels):
  15691. (WebCore::RealtimeAnalyser::setSmoothingTimeConstant):
  15692. (WebCore::RealtimeAnalyser::smoothingTimeConstant):
  15693. (WebCore::RealtimeAnalyser::magnitudeBuffer):
  15694. 2010-11-02 Ilya Sherman <isherman@chromium.org>
  15695. Reviewed by Kent Tamura.
  15696. Avoid overlapping label text in autofill popup with icon.
  15697. Updates the menu width computation to take the icon width into account.
  15698. https://bugs.webkit.org/show_bug.cgi?id=48497
  15699. * platform/chromium/PopupMenuChromium.cpp:
  15700. (WebCore::PopupListBox::paintRow):
  15701. (WebCore::PopupListBox::layout):
  15702. 2010-10-28 Zhenyao Mo <zmo@google.com>
  15703. Reviewed by Kenneth Russell.
  15704. Perform framebuffer attachment checking upon draw call rather than attachment
  15705. https://bugs.webkit.org/show_bug.cgi?id=46318
  15706. * html/canvas/WebGLFramebuffer.cpp:
  15707. (WebCore::getInternalFormat): Helper function to get an attachment's internal format.
  15708. (WebCore::isUninitialized): Helper function to decide if an attachment is initialized or not.
  15709. (WebCore::setInitialized): Helper funtion to set an attachment as being initialized.
  15710. (WebCore::WebGLFramebuffer::setAttachment): No longer perform buffer initialization at this point.
  15711. (WebCore::WebGLFramebuffer::removeAttachment): Ditto.
  15712. (WebCore::WebGLFramebuffer::getColorBufferFormat): Make it const.
  15713. (WebCore::WebGLFramebuffer::isIncomplete): Attachments conflict check.
  15714. (WebCore::WebGLFramebuffer::onAccess): Check atatchment conflicts and buffer initialization if necessary.
  15715. (WebCore::WebGLFramebuffer::initializeRenderbuffers): Return a boolean whether the framebuffer is complete or not.
  15716. * html/canvas/WebGLFramebuffer.h: Add new function declaration and remove some outdated functions.
  15717. (WebCore::WebGLFramebuffer::isColorAttached):
  15718. (WebCore::WebGLFramebuffer::isDepthAttached): Make this private.
  15719. (WebCore::WebGLFramebuffer::isStencilAttached): Ditto.
  15720. (WebCore::WebGLFramebuffer::isDepthStencilAttached): Ditto.
  15721. * html/canvas/WebGLRenderbuffer.h:
  15722. (WebCore::WebGLRenderbuffer::setInternalFormat): Also set the renderbuffer as uninitialized.
  15723. * html/canvas/WebGLRenderingContext.cpp:
  15724. (WebCore::WebGLRenderingContext::bindFramebuffer): No longer perform framebuffer initialization at this point.
  15725. (WebCore::WebGLRenderingContext::checkFramebufferStatus): Check WebGL specific attachment conflicts.
  15726. (WebCore::WebGLRenderingContext::clear): Call WebGLFramebuffer::onAccess.
  15727. (WebCore::WebGLRenderingContext::copyTexImage2D): Ditto.
  15728. (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto.
  15729. (WebCore::WebGLRenderingContext::drawArrays): Ditto.
  15730. (WebCore::WebGLRenderingContext::drawElements): Ditto.
  15731. (WebCore::WebGLRenderingContext::framebufferRenderbuffer): No longer perform framebuffer initialization at this point.
  15732. (WebCore::WebGLRenderingContext::readPixels): Call WebGLFramebuffer::onAccess.
  15733. (WebCore::WebGLRenderingContext::renderbufferStorage): No longer perform framebuffer initialization at this point.
  15734. (WebCore::WebGLRenderingContext::texImage2DBase): Ditto.
  15735. 2010-11-01 Zhenyao Mo <zmo@google.com>
  15736. Reviewed by Kenneth Russell.
  15737. blendFunc should generate INVALID_OPERATION if constant color and constant alpha are together as source and destination factors
  15738. https://bugs.webkit.org/show_bug.cgi?id=48674
  15739. Test: fast/canvas/webgl/webgl-specific.html
  15740. * html/canvas/WebGLRenderingContext.cpp:
  15741. (WebCore::WebGLRenderingContext::blendFunc):
  15742. (WebCore::WebGLRenderingContext::blendFuncSeparate):
  15743. * html/canvas/WebGLRenderingContext.h:
  15744. (WebCore::WebGLRenderingContext::validateBlendFuncFactors): Helper function to do the checking.
  15745. 2010-11-02 Simon Fraser <simon.fraser@apple.com>
  15746. Reviewed by Dan Bernstein.
  15747. Overlapped nested iframes show smearing when scrolled
  15748. https://bugs.webkit.org/show_bug.cgi?id=48873
  15749. A FrameView goes into slow scrolling mode (not blitting) when told that it is
  15750. overlapped. However, a nested iframe could still try to use fast scrolling
  15751. when its parent is overlapped, which could result in bad rendering.
  15752. Fixed by making useSlowRepaints() and useSlowRepaintsIfNotOverlapped()
  15753. walk up their parent chain, asking if their parents also use slow
  15754. repaints.
  15755. All the places that call setCanBlitOnScroll() now call
  15756. updateCanBlitOnScrollRecursively() to ensure that the canBlitOnScroll
  15757. flag is updated correctly on subframes.
  15758. Repaint tests do not work on nested iframes, so added manual test.
  15759. * manual-tests/frames/nested-iframe-blit-on-scroll.html: Added.
  15760. * manual-tests/frames/resources/blit-on-scroll-subframe.html: Added.
  15761. * manual-tests/frames/resources/blit-on-scroll-subsubframe.html: Added.
  15762. * page/FrameView.cpp:
  15763. (WebCore::FrameView::layout):
  15764. (WebCore::FrameView::useSlowRepaints):
  15765. (WebCore::FrameView::useSlowRepaintsIfNotOverlapped):
  15766. (WebCore::FrameView::updateCanBlitOnScrollRecursively):
  15767. (WebCore::FrameView::setUseSlowRepaints):
  15768. (WebCore::FrameView::addSlowRepaintObject):
  15769. (WebCore::FrameView::removeSlowRepaintObject):
  15770. (WebCore::FrameView::addFixedObject):
  15771. (WebCore::FrameView::removeFixedObject):
  15772. (WebCore::FrameView::setIsOverlapped):
  15773. (WebCore::FrameView::setContentIsOpaque):
  15774. * page/FrameView.h:
  15775. 2010-11-02 Simon Fraser <simon.fraser@apple.com>
  15776. Reviewed by Dan Bernstein.
  15777. Iframes nested inside a compositing layer don't repaint correctly
  15778. https://bugs.webkit.org/show_bug.cgi?id=48880
  15779. <rdar://problem/8194698>
  15780. The isEnclosedInCompositingLayer() is used to modify the behavior of
  15781. -[WebClipView visibleRect:] in WebKit, so that scrolling-related repaints
  15782. are correct in composited iframes. Previously it only asked whether the
  15783. frame's renderer was in a compositing layer, but we actually need to
  15784. consult all ancestors.
  15785. Test: compositing/iframes/nested-iframe-scrolling.html
  15786. * page/FrameView.cpp:
  15787. (WebCore::FrameView::isEnclosedInCompositingLayer):
  15788. 2010-11-02 David Hyatt <hyatt@apple.com>
  15789. Reviewed by Dan Bernstein.
  15790. https://bugs.webkit.org/show_bug.cgi?id=48672
  15791. Make vertical glyph offset hit testing work with inline boxes. This allows selection to paint
  15792. properly for vertical text (although gap-filling is still broken).
  15793. Refactored and cleaned up the writing mode flipping functions, and also did some cleanup to
  15794. better share code between hit testing and painting.
  15795. * rendering/InlineBox.cpp:
  15796. (WebCore::InlineBox::locationIncludingFlipping):
  15797. (WebCore::InlineBox::flipForWritingMode):
  15798. * rendering/InlineBox.h:
  15799. * rendering/InlineFlowBox.cpp:
  15800. (WebCore::InlineFlowBox::nodeAtPoint):
  15801. (WebCore::InlineFlowBox::paint):
  15802. (WebCore::InlineFlowBox::paintBoxDecorations):
  15803. (WebCore::InlineFlowBox::paintMask):
  15804. * rendering/InlineTextBox.cpp:
  15805. (WebCore::InlineTextBox::selectionRect):
  15806. (WebCore::InlineTextBox::nodeAtPoint):
  15807. (WebCore::InlineTextBox::paint):
  15808. (WebCore::InlineTextBox::textPos):
  15809. (WebCore::InlineTextBox::offsetForPosition):
  15810. (WebCore::InlineTextBox::positionForOffset):
  15811. * rendering/RenderBlock.cpp:
  15812. (WebCore::RenderBlock::paintChildren):
  15813. (WebCore::RenderBlock::paintFloats):
  15814. (WebCore::RenderBlock::hitTestFloats):
  15815. (WebCore::RenderBlock::hitTestContents):
  15816. * rendering/RenderBox.cpp:
  15817. (WebCore::RenderBox::computeRectForRepaint):
  15818. (WebCore::RenderBox::flipForWritingMode):
  15819. (WebCore::RenderBox::locationOffsetIncludingFlipping):
  15820. * rendering/RenderBox.h:
  15821. * rendering/RenderInline.cpp:
  15822. (WebCore::RenderInline::clippedOverflowRectForRepaint):
  15823. * rendering/RenderLineBoxList.cpp:
  15824. (WebCore::RenderLineBoxList::rangeIntersectsRect):
  15825. (WebCore::RenderLineBoxList::anyLineIntersectsRect):
  15826. (WebCore::RenderLineBoxList::lineIntersectsDirtyRect):
  15827. (WebCore::RenderLineBoxList::paint):
  15828. (WebCore::RenderLineBoxList::hitTest):
  15829. * rendering/RenderLineBoxList.h:
  15830. * rendering/RenderText.cpp:
  15831. (WebCore::RenderText::positionForPoint):
  15832. 2010-11-02 Adam Barth <abarth@webkit.org>
  15833. Reviewed by Eric Seidel.
  15834. JPEG decoders should understand color profiles
  15835. https://bugs.webkit.org/show_bug.cgi?id=48819
  15836. This patch is currently a no-op because no one defines USE(ICCJPEG).
  15837. We'll enable this for Chromium Mac once we have ICCJPEG landed in
  15838. Chromium's third_party directory.
  15839. * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
  15840. (WebCore::readColorProfile):
  15841. (WebCore::JPEGImageReader::JPEGImageReader):
  15842. (WebCore::JPEGImageReader::decode):
  15843. (WebCore::JPEGImageDecoder::outputScanlines):
  15844. * platform/image-decoders/jpeg/JPEGImageDecoder.h:
  15845. (WebCore::JPEGImageDecoder::setColorProfile):
  15846. 2010-11-02 Mihai Parparita <mihaip@chromium.org>
  15847. Reviewed by Adam Barth.
  15848. [Chromium] Crash when encountering history.back() call during Page::goToItem execution
  15849. https://bugs.webkit.org/show_bug.cgi?id=48477
  15850. For the Chromium port, BackForwardList::itemAtIndex synthesizes a
  15851. HistoryItem and saves a pointer to it in m_pendingItem. During
  15852. Page::goToItem we call FrameLoader::stopAllLoaders, which can trigger
  15853. onload handlers (if a subframe was not considered committed by the frame
  15854. loader). If one of those handlers calls calls history.back() or another
  15855. operation that ends up in NavigationScheduler::scheduleHistoryNavigation,
  15856. we would call BackForwardList::itemAtIndex, which means that we would
  15857. lose the m_pendingItem RefPtr that pointed to the item being navigated
  15858. to, causing its ref count to go to 0*, and thus for the HistoryItem to
  15859. be deleted before we were done navigating to it.
  15860. This is fixed in two ways:
  15861. - Add a protector RefPtr in Page::goToItem to make sure that the item is
  15862. still around for when we pass it to HistoryController:goToItem.
  15863. - Change NavigationScheduler::scheduleHistoryNavigation to not use
  15864. BackForwardList::itemAtIndex and instead look at the
  15865. forward/backListCount() (since it doesn't actually care about the
  15866. returned HistoryItem).
  15867. * Full annotated stack trace of this is at http://crbug.com/59554#c9.
  15868. Test: http/tests/history/back-during-onload-triggered-by-back.html
  15869. * loader/NavigationScheduler.cpp:
  15870. (WebCore::NavigationScheduler::scheduleHistoryNavigation):
  15871. * page/Page.cpp:
  15872. (WebCore::Page::goToItem):
  15873. 2010-10-28 Zhenyao Mo <zmo@google.com>
  15874. Reviewed by Kenneth Russell.
  15875. Update getUniform for bvec[234] to return boolean[] rather than Uint8Array
  15876. https://bugs.webkit.org/show_bug.cgi?id=47568
  15877. * html/canvas/WebGLRenderingContext.cpp:
  15878. (WebCore::WebGLRenderingContext::getUniform):
  15879. 2010-11-02 Chris Rogers <crogers@google.com>
  15880. Reviewed by Kenneth Russell.
  15881. Add RealtimeAnalyserNode files
  15882. https://bugs.webkit.org/show_bug.cgi?id=48798
  15883. No new tests since audio API is not yet implemented.
  15884. * webaudio/RealtimeAnalyserNode.cpp: Added.
  15885. (WebCore::RealtimeAnalyserNode::RealtimeAnalyserNode):
  15886. (WebCore::RealtimeAnalyserNode::~RealtimeAnalyserNode):
  15887. (WebCore::RealtimeAnalyserNode::process):
  15888. (WebCore::RealtimeAnalyserNode::pullInputs):
  15889. (WebCore::RealtimeAnalyserNode::reset):
  15890. * webaudio/RealtimeAnalyserNode.h: Added.
  15891. (WebCore::RealtimeAnalyserNode::create):
  15892. (WebCore::RealtimeAnalyserNode::fftSize):
  15893. (WebCore::RealtimeAnalyserNode::setFftSize):
  15894. (WebCore::RealtimeAnalyserNode::frequencyBinCount):
  15895. (WebCore::RealtimeAnalyserNode::setMinDecibels):
  15896. (WebCore::RealtimeAnalyserNode::minDecibels):
  15897. (WebCore::RealtimeAnalyserNode::setMaxDecibels):
  15898. (WebCore::RealtimeAnalyserNode::maxDecibels):
  15899. (WebCore::RealtimeAnalyserNode::setSmoothingTimeConstant):
  15900. (WebCore::RealtimeAnalyserNode::smoothingTimeConstant):
  15901. (WebCore::RealtimeAnalyserNode::getFloatFrequencyData):
  15902. (WebCore::RealtimeAnalyserNode::getByteFrequencyData):
  15903. (WebCore::RealtimeAnalyserNode::getByteTimeDomainData):
  15904. * webaudio/RealtimeAnalyserNode.idl: Added.
  15905. 2010-11-02 Sheriff Bot <webkit.review.bot@gmail.com>
  15906. Unreviewed, rolling out r71152.
  15907. http://trac.webkit.org/changeset/71152
  15908. https://bugs.webkit.org/show_bug.cgi?id=48866
  15909. Causes lots and lots of crashes (Requested by jamesr_ on
  15910. #webkit).
  15911. * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
  15912. (WebCore::JPEGImageReader::JPEGImageReader):
  15913. (WebCore::JPEGImageReader::decode):
  15914. (WebCore::JPEGImageDecoder::outputScanlines):
  15915. * platform/image-decoders/jpeg/JPEGImageDecoder.h:
  15916. 2010-11-02 Alexey Proskuryakov <ap@apple.com>
  15917. Reviewed by Timothy Hatcher.
  15918. https://bugs.webkit.org/show_bug.cgi?id=48813
  15919. <rdar://problem/8602552> REGRESSION (r63622): DNS prefetching for <link> tags doesn't work
  15920. in non-HTTP documents
  15921. Cannot test DNS prefetching.
  15922. * html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::process): We should be looking at
  15923. preferences, not at whether this document has prefetching enabled.
  15924. 2010-11-02 Pavel Feldman <pfeldman@chromium.org>
  15925. Not reviewed: Web Inspector: follow up to r71139. Fixed Mac monospace
  15926. height style.
  15927. * inspector/front-end/PropertiesSection.js:
  15928. (WebInspector.PropertiesSection):
  15929. * inspector/front-end/inspector.css:
  15930. 2010-11-02 Adam Barth <abarth@webkit.org>
  15931. Reviewed by Eric Seidel.
  15932. JPEG decoders should understand color profiles
  15933. https://bugs.webkit.org/show_bug.cgi?id=48819
  15934. This patch is currently a no-op because no one defines USE(ICCJPEG).
  15935. We'll enable this for Chromium Mac once we have ICCJPEG landed in
  15936. Chromium's third_party directory.
  15937. * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
  15938. (WebCore::readColorProfile):
  15939. (WebCore::JPEGImageReader::JPEGImageReader):
  15940. (WebCore::JPEGImageReader::decode):
  15941. (WebCore::JPEGImageDecoder::outputScanlines):
  15942. * platform/image-decoders/jpeg/JPEGImageDecoder.h:
  15943. (WebCore::JPEGImageDecoder::setColorProfile):
  15944. 2010-11-02 Ilya Sherman <isherman@chromium.org>
  15945. Reviewed by Simon Fraser.
  15946. Marks selectionStart() and selectionEnd() as const.
  15947. https://bugs.webkit.org/show_bug.cgi?id=48786
  15948. * html/HTMLFormControlElement.cpp:
  15949. (WebCore::HTMLTextFormControlElement::selectionStart):
  15950. (WebCore::HTMLTextFormControlElement::selectionEnd):
  15951. * html/HTMLFormControlElement.h:
  15952. 2010-11-02 Chris Rogers <crogers@google.com>
  15953. Reviewed by Kenneth Russell.
  15954. Fix license for audio files
  15955. https://bugs.webkit.org/show_bug.cgi?id=48859
  15956. * webaudio/AudioChannelSplitter.cpp:
  15957. * webaudio/AudioChannelSplitter.h:
  15958. * webaudio/AudioDestinationNode.cpp:
  15959. * webaudio/AudioDestinationNode.h:
  15960. * webaudio/AudioGainNode.cpp:
  15961. * webaudio/AudioGainNode.h:
  15962. * webaudio/AudioPannerNode.cpp:
  15963. * webaudio/AudioPannerNode.h:
  15964. * webaudio/AudioPannerNode.idl:
  15965. 2010-11-02 Martin Robinson <mrobinson@igalia.com>
  15966. Reviewed by Xan Lopez.
  15967. Remove special handling of HashTableDeletedValue in PlatformRefPtr and manually manage memory that cannot be controlled by HashTraits
  15968. https://bugs.webkit.org/show_bug.cgi?id=48841
  15969. Switch to manually managing the memory in FontPlatformDataFreeType. This
  15970. is necessary because smart pointers do not know how to deal with a pointer
  15971. value of -1 (HashTableDeletedValue) and HashTraits can only manage the type
  15972. contained in the HashMap.
  15973. No new tests as this should not change functionality.
  15974. * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
  15975. (WebCore::FontPlatformData::FontPlatformData):
  15976. (WebCore::FontPlatformData::operator=):
  15977. (WebCore::FontPlatformData::~FontPlatformData):
  15978. (WebCore::FontPlatformData::operator==):
  15979. (WebCore::FontPlatformData::initializeWithFontFace):
  15980. * platform/graphics/cairo/FontPlatformDataFreeType.h:
  15981. (WebCore::FontPlatformData::FontPlatformData):
  15982. (WebCore::FontPlatformData::scaledFont):
  15983. (WebCore::FontPlatformData::hash):
  15984. (WebCore::FontPlatformData::isHashTableDeletedValue):
  15985. (WebCore::FontPlatformData::hashTableDeletedFontValue):
  15986. * platform/graphics/cairo/GlyphPageTreeNodeCairo.cpp:
  15987. (WebCore::GlyphPage::fill):
  15988. * platform/graphics/cairo/SimpleFontDataCairo.cpp:
  15989. (WebCore::SimpleFontData::platformInit):
  15990. (WebCore::SimpleFontData::containsCharacters):
  15991. (WebCore::SimpleFontData::platformWidthForGlyph):
  15992. 2010-11-02 Adam Barth <abarth@webkit.org>
  15993. Reviewed by Eric Seidel.
  15994. querySelectorAll('body>:last-child') does not work unless HTML file ends with 'new-line'.
  15995. https://bugs.webkit.org/show_bug.cgi?id=47166
  15996. We need to pop all the open elements when we end the document in the
  15997. AfterAfterBody state.
  15998. Test: fast/parser/pop-all-after-after-body.html
  15999. * html/parser/HTMLTreeBuilder.cpp:
  16000. (WebCore::HTMLTreeBuilder::processEndOfFile):
  16001. 2010-11-02 Patrick Gansterer <paroga@webkit.org>
  16002. Reviewed by Adam Roben.
  16003. Cleanup createGlobalImageFileDescriptor in ClipboardWin
  16004. https://bugs.webkit.org/show_bug.cgi?id=48189
  16005. * platform/win/ClipboardWin.cpp:
  16006. (WebCore::ClipboardWin::writeURL):
  16007. 2010-11-02 Pavel Feldman <pfeldman@chromium.org>
  16008. Reviewed by Timothy Hatcher.
  16009. Web Inspector: display frame names in the resources panel.
  16010. https://bugs.webkit.org/show_bug.cgi?id=48839
  16011. * inspector/Inspector.idl:
  16012. * inspector/InspectorResourceAgent.cpp:
  16013. (WebCore::frameId):
  16014. (WebCore::buildObjectForDocumentLoader):
  16015. (WebCore::buildObjectForFrame):
  16016. (WebCore::buildObjectForFrameTree):
  16017. (WebCore::InspectorResourceAgent::didCommitLoad):
  16018. (WebCore::InspectorResourceAgent::frameDetachedFromParent):
  16019. (WebCore::InspectorResourceAgent::frameForId):
  16020. (WebCore::InspectorResourceAgent::resourceContent):
  16021. * inspector/InspectorResourceAgent.h:
  16022. * inspector/front-end/ResourceManager.js:
  16023. (WebInspector.ResourceManager.prototype.didCommitLoadForFrame):
  16024. (WebInspector.ResourceManager.prototype._processCachedResources):
  16025. (WebInspector.ResourceManager.prototype._addFramesRecursively):
  16026. (WebInspector.ResourceTreeModel.prototype.addOrUpdateFrame):
  16027. (WebInspector.ResourceTreeModel.prototype.didCommitLoadForFrame):
  16028. * inspector/front-end/StoragePanel.js:
  16029. (WebInspector.StoragePanel.prototype.addOrUpdateFrame):
  16030. (WebInspector.BaseStorageTreeElement.prototype.get titleText):
  16031. (WebInspector.FrameTreeElement):
  16032. (WebInspector.FrameTreeElement.prototype.onattach):
  16033. (WebInspector.FrameTreeElement.prototype.get nameForSorting):
  16034. (WebInspector.FrameTreeElement.prototype.setTitles):
  16035. (WebInspector.FrameTreeElement.prototype.set hovered):
  16036. * inspector/front-end/inspector.css:
  16037. (li.selected .base-storage-tree-element-subtitle):
  16038. (.base-storage-tree-element-subtitle):
  16039. 2010-11-02 Pavel Feldman <pfeldman@chromium.org>
  16040. Not reviewed. Follow up to r71139: removing unused images.
  16041. https://bugs.webkit.org/show_bug.cgi?id=48827
  16042. * WebCore.gypi:
  16043. * inspector/front-end/Images/grayConnectorPoint.png: Removed.
  16044. * inspector/front-end/Images/whiteConnectorPoint.png: Removed.
  16045. * inspector/front-end/WebKit.qrc:
  16046. 2010-11-02 Pavel Feldman <pfeldman@chromium.org>
  16047. Reviewed by Timothy Hatcher.
  16048. Web Inspector: make properties and event listeners look consistent with the styles section.
  16049. https://bugs.webkit.org/show_bug.cgi?id=48827
  16050. * inspector/front-end/EventListenersSidebarPane.js:
  16051. * inspector/front-end/PropertiesSection.js:
  16052. (WebInspector.PropertiesSection):
  16053. * inspector/front-end/PropertiesSidebarPane.js:
  16054. (WebInspector.PropertiesSidebarPane.prototype.update.callback):
  16055. (WebInspector.PropertiesSidebarPane.prototype.update):
  16056. * inspector/front-end/inspector.css:
  16057. (.events-pane .section:not(:nth-of-type(1))):
  16058. (.event-bar:first-child):
  16059. (.section .header):
  16060. (.section .header::before):
  16061. (.section.expanded .header::before):
  16062. (.section .header .title, .event-bar .header .title):
  16063. (.section .header .subtitle, .event-bar .header .subtitle):
  16064. (.section.expanded .properties, .event-bar.expanded .event-properties):
  16065. (.properties-tree):
  16066. (.event-bar):
  16067. (.event-bars .event-bar .header):
  16068. (.event-bars .event-bar .header .title):
  16069. (.event-bars .event-bar .header::before):
  16070. 2010-11-02 Dan Bernstein <mitz@apple.com>
  16071. Reviewed by Anders Carlsson.
  16072. Remove unused methods and member variables from AutoTableLayout.
  16073. * rendering/AutoTableLayout.cpp:
  16074. (WebCore::AutoTableLayout::AutoTableLayout): Removed initialization of m_percentagesDirty
  16075. and m_totalPercent.
  16076. (WebCore::AutoTableLayout::fullRecalc): Removed setting of m_percentagesDirty.
  16077. (WebCore::AutoTableLayout::calcPercentages): Removed.
  16078. * rendering/AutoTableLayout.h: Removed totalPercent(), m_percentagesDirty, and m_totalPercent.
  16079. 2010-11-02 Pavel Feldman <pfeldman@chromium.org>
  16080. Reviewed by Timothy Hatcher.
  16081. Web Inspector: clear / hide timing information for cached resources.
  16082. https://bugs.webkit.org/show_bug.cgi?id=48848
  16083. * inspector/front-end/Resource.js:
  16084. (WebInspector.Resource.prototype.set cached):
  16085. (WebInspector.Resource.prototype.get timing):
  16086. (WebInspector.Resource.prototype.set timing):
  16087. * inspector/front-end/ResourceManager.js:
  16088. (WebInspector.ResourceManager.prototype.markResourceAsCached):
  16089. 2010-11-02 Pavel Feldman <pfeldman@chromium.org>
  16090. Reviewed by Timothy Hatcher.
  16091. Web Inspector: improve network's 'preview close' usability.
  16092. https://bugs.webkit.org/show_bug.cgi?id=48846
  16093. * inspector/front-end/networkPanel.css:
  16094. (#network-close-button:hover):
  16095. (#network-close-button:active):
  16096. 2010-11-02 Pavel Feldman <pfeldman@chromium.org>
  16097. Reviewed by Timothy Hatcher.
  16098. Web Inspector: Image heights are displayed as 0.
  16099. https://bugs.webkit.org/show_bug.cgi?id=40817
  16100. * inspector/front-end/ImageView.js:
  16101. (WebInspector.ImageView.prototype.contentTabSelected):
  16102. (WebInspector.ImageView.prototype.contentTabSelected.onImageLoad):
  16103. 2010-10-31 Noam Rosenthal <noam.rosenthal@nokia.com>
  16104. Reviewed by Kenneth Rohde Christiansen.
  16105. [Texmap] [Qt] Texture mapper initial implementation
  16106. https://bugs.webkit.org/show_bug.cgi?id=47070
  16107. Some refactor for texmap to enable WebKit2: remove globals, and allow TextureMapper to exist without a GraphicsContext.
  16108. This will allow rendering the TextureMapperNode tree without an active QPainter, into the current GL context.
  16109. Most of the changes simply move the globas in TextureMapperGL into members of that class.
  16110. No new tests. Old tests in LayoutTests/compositing cover this.
  16111. * platform/graphics/opengl/TextureMapperGL.cpp:
  16112. (WebCore::TextureMapperGLData::ShaderInfo::getUniformLocation):
  16113. (WebCore::TextureMapperGLData::ShaderInfo::createShaderProgram):
  16114. (WebCore::TextureMapperGLData::DirectlyCompositedImageRepository::findOrCreate):
  16115. (WebCore::TextureMapperGLData::DirectlyCompositedImageRepository::deref):
  16116. (WebCore::TextureMapperGLData::DirectlyCompositedImageRepository::DirectlyCompositedImageRepository):
  16117. (WebCore::TextureMapperGLData::DirectlyCompositedImageRepository::~DirectlyCompositedImageRepository):
  16118. (WebCore::TextureMapperGLData::TextureMapperGLData):
  16119. (WebCore::TextureMapperGL::TextureMapperGL):
  16120. (WebCore::TextureMapperGL::drawTexture):
  16121. (WebCore::BitmapTextureGL::setContentsToImage):
  16122. (WebCore::BitmapTextureGL::destroy):
  16123. (WebCore::TextureMapperGL::~TextureMapperGL):
  16124. (WebCore::TextureMapperGL::makeContextCurrent):
  16125. (WebCore::TextureMapperGL::obtainCurrentContext):
  16126. (WebCore::TextureMapperGL::bindSurface):
  16127. (WebCore::TextureMapperGL::paintToTarget):
  16128. (WebCore::TextureMapperGL::createTexture):
  16129. * platform/graphics/opengl/TextureMapperGL.h:
  16130. (WebCore::TextureMapperGL::data):
  16131. * platform/graphics/qt/TextureMapperQt.cpp:
  16132. (WebCore::TextureMapperQt::TextureMapperQt):
  16133. (WebCore::TextureMapperQt::setGraphicsContext):
  16134. (WebCore::TextureMapper::create):
  16135. * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
  16136. (WebCore::TextureMapperNode::paint):
  16137. (WebCore::TextureMapperNode::uploadTextureFromContent):
  16138. * platform/graphics/texmap/TextureMapper.h:
  16139. (WebCore::TextureMapper::setGraphicsContext):
  16140. (WebCore::TextureMapper::setImageInterpolationQuality):
  16141. (WebCore::TextureMapper::setTextDrawingMode):
  16142. (WebCore::TextureMapper::imageInterpolationQuality):
  16143. (WebCore::TextureMapper::textDrawingMode):
  16144. (WebCore::TextureMapper::TextureMapper):
  16145. * platform/graphics/texmap/TextureMapperPlatformLayer.h:
  16146. (WebCore::TextureMapperContentLayer::paint):
  16147. 2010-11-02 Adele Peterson <adele@apple.com>
  16148. Reviewed by Kent Tamura.
  16149. Fix for https://bugs.webkit.org/show_bug.cgi?id=48814
  16150. <rdar://problem/8546143> Attempting to redo typing in apple.com/startpage search field causes infinite recursion in TextControlInnerTextElement::defaultEventHandler
  16151. Test: editing/undo/redo-after-detach.html
  16152. * rendering/TextControlInnerElements.cpp: (WebCore::TextControlInnerTextElement::defaultEventHandler):
  16153. A TextControlInnerTextElement will almost always have a shadowAncestorNode, the HTMLInputElement. In this case,
  16154. after the renderer was destroyed, this shadow node was kept alive by the EditCommand, even though its not hooked up
  16155. anymore to the shadow DOM. EditCommands can sometimes operate on stale selections and are expected to fail silently.
  16156. So here we prevent the infinite loop during event dispatch, and the rest of the redo operation will fail silently.
  16157. 2010-11-02 Chris Marrin <cmarrin@apple.com>
  16158. Reviewed by Simon Fraser.
  16159. When animations are paused, play-state can cause them to be unpaused.
  16160. https://bugs.webkit.org/show_bug.cgi?id=46525
  16161. I Changed updatePlayState() to only unpause when both play-state is
  16162. "running" and not suspended. Likewise I pause animation when either
  16163. play-state is "paused" or suspended.
  16164. Test: animations/play-state-suspend.html
  16165. * page/animation/AnimationBase.cpp:
  16166. (WebCore::AnimationBase::updatePlayState):
  16167. 2010-11-02 Chris Marrin <cmarrin@apple.com>
  16168. Reviewed by Adam Roben.
  16169. Make RenderStyle::playState() return typed value and cleanup naming in Animation code
  16170. https://bugs.webkit.org/show_bug.cgi?id=48844
  16171. playState() function was returning unsigned value, but there is a EAnimPlayState
  16172. enum type which has the legal playState values. This type is now used everywhere.
  16173. I also changed the naming of the m_isSuspended to m_suspended to match the style
  16174. elsewhere in the code.
  16175. * page/animation/AnimationBase.cpp:
  16176. (WebCore::AnimationBase::updatePlayState):
  16177. * page/animation/AnimationBase.h:
  16178. * page/animation/AnimationController.cpp:
  16179. (WebCore::AnimationControllerPrivate::clear):
  16180. (WebCore::AnimationControllerPrivate::updateAnimationTimer):
  16181. * page/animation/CompositeAnimation.cpp:
  16182. (WebCore::CompositeAnimation::updateKeyframeAnimations):
  16183. (WebCore::CompositeAnimation::suspendAnimations):
  16184. (WebCore::CompositeAnimation::resumeAnimations):
  16185. * page/animation/CompositeAnimation.h:
  16186. (WebCore::CompositeAnimation::suspended):
  16187. (WebCore::CompositeAnimation::CompositeAnimation):
  16188. * platform/animation/Animation.h:
  16189. (WebCore::Animation::playState):
  16190. (WebCore::Animation::setPlayState):
  16191. (WebCore::Animation::initialAnimationPlayState):
  16192. 2010-11-01 Zhenyao Mo <zmo@google.com>
  16193. Reviewed by Andreas Kling.
  16194. vertexAttribPointer should generate INVALID_VALUE if the stride exceeds 255
  16195. https://bugs.webkit.org/show_bug.cgi?id=48677
  16196. Test: fast/canvas/webgl/gl-vertexattribpointer.html
  16197. * html/canvas/WebGLRenderingContext.cpp:
  16198. (WebCore::WebGLRenderingContext::vertexAttribPointer): Generate INVALID_VALUE if stride > 255.
  16199. 2010-11-01 Martin Robinson <mrobinson@igalia.com>
  16200. Reviewed by Xan Lopez.
  16201. [Soup] Random crashes in http/tests/websocket/tests/workers/worker-handshake-challenge-randomness.html
  16202. https://bugs.webkit.org/show_bug.cgi?id=48805
  16203. Track active WebSocket handles via a sequential id. This ensures
  16204. that when a handle is reallocated into a recently used segment of
  16205. memory, it doesn't trigger a false positive in the code which ensures
  16206. the original handle is active.
  16207. No new tests. This test should stop crashing on the bots, proving the fix.
  16208. * platform/network/soup/SocketStreamHandle.h:
  16209. (WebCore::SocketStreamHandle::id): Added an m_id member and accessor
  16210. to SocketStreamHandle.
  16211. * platform/network/soup/SocketStreamHandleSoup.cpp:
  16212. (WebCore::getHandleFromId): Updated to work with HashMap of handle ids to
  16213. SocketStreamHandle*.
  16214. (WebCore::deactivateHandle): Ditto.
  16215. (WebCore::activateHandle): Ditto.
  16216. (WebCore::SocketStreamHandle::SocketStreamHandle): Ditto.
  16217. (WebCore::SocketStreamHandle::connected): Ditto.
  16218. (WebCore::SocketStreamHandle::readBytes): Ditto.
  16219. (WebCore::SocketStreamHandle::beginWaitingForSocketWritability): Ditto.
  16220. (WebCore::connectedCallback): Ditto.
  16221. (WebCore::readReadyCallback): Ditto.
  16222. (WebCore::writeReadyCallback): Ditto.
  16223. 2010-11-02 Csaba Osztrogonác <ossy@webkit.org>
  16224. Unreviewed trivial fix.
  16225. * WebCore.pro: Remove inspector/InspectorResource.h after r71035.
  16226. 2010-11-02 Pavel Podivilov <podivilov@chromium.org>
  16227. Reviewed by Pavel Feldman.
  16228. Web Inspector: make xhr breakpoints editable
  16229. https://bugs.webkit.org/show_bug.cgi?id=48830
  16230. * inspector/front-end/BreakpointManager.js:
  16231. (WebInspector.Breakpoint.prototype.set sourceText):
  16232. (WebInspector.Breakpoint.prototype.click):
  16233. (WebInspector.Breakpoint.prototype.populateLabelElement):
  16234. (WebInspector.XHRBreakpoint.prototype.populateEditElement):
  16235. * inspector/front-end/BreakpointsSidebarPane.js:
  16236. (WebInspector.BreakpointsSidebarPane.prototype.addBreakpointItem):
  16237. (WebInspector.BreakpointsSidebarPane.prototype._breakpointItemClicked):
  16238. (WebInspector.BreakpointsSidebarPane.prototype._contextMenuEventFired):
  16239. (WebInspector.BreakpointsSidebarPane.prototype._addListElement):
  16240. (WebInspector.BreakpointsSidebarPane.prototype._removeListElement):
  16241. (WebInspector.XHRBreakpointsSidebarPane.addButtonClicked):
  16242. (WebInspector.XHRBreakpointsSidebarPane):
  16243. (WebInspector.XHRBreakpointsSidebarPane.prototype._startEditingBreakpoint):
  16244. (WebInspector.XHRBreakpointsSidebarPane.prototype._hideEditBreakpointDialog):
  16245. (WebInspector.XHRBreakpointsSidebarPane.prototype._breakpointItemClicked):
  16246. (WebInspector.BreakpointItem):
  16247. (WebInspector.BreakpointItem.prototype.get element):
  16248. (WebInspector.BreakpointItem.prototype.click):
  16249. (WebInspector.BreakpointItem.prototype.populateEditElement):
  16250. (WebInspector.BreakpointItem.prototype.remove):
  16251. (WebInspector.BreakpointItem.prototype._hitStateChanged):
  16252. (WebInspector.BreakpointItem.prototype._labelChanged):
  16253. (WebInspector.BreakpointItem.prototype._createLabelElement):
  16254. * inspector/front-end/inspector.js:
  16255. (WebInspector.createJSBreakpointsSidebarPane.breakpointAdded):
  16256. (WebInspector.createJSBreakpointsSidebarPane):
  16257. (WebInspector.createDOMBreakpointsSidebarPane.breakpointAdded):
  16258. (WebInspector.createDOMBreakpointsSidebarPane):
  16259. (WebInspector.createXHRBreakpointsSidebarPane.breakpointAdded):
  16260. (WebInspector.createXHRBreakpointsSidebarPane):
  16261. 2010-11-02 Pavel Podivilov <podivilov@chromium.org>
  16262. Reviewed by Pavel Feldman.
  16263. Web Inspector: fix for breakpoints not restored on live edit bug
  16264. https://bugs.webkit.org/show_bug.cgi?id=48833
  16265. * inspector/front-end/ScriptsPanel.js:
  16266. (WebInspector.ScriptsPanel.prototype.debuggerPaused):
  16267. * inspector/front-end/inspector.js:
  16268. (WebInspector.pausedScript):
  16269. 2010-11-02 Alexander Pavlov <apavlov@chromium.org>
  16270. Reviewed by Pavel Feldman.
  16271. Web Inspector: [REGRESSION] Rule addition/selector editing result in unusable rules
  16272. https://bugs.webkit.org/show_bug.cgi?id=48826
  16273. * inspector/front-end/CSSStyleModel.js:
  16274. (WebInspector.CSSStyleModel.prototype.setRuleSelector):
  16275. (WebInspector.CSSStyleModel.prototype.addRule):
  16276. * inspector/front-end/StylesSidebarPane.js:
  16277. (WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCommitted.successCallback):
  16278. (WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCommitted):
  16279. 2010-11-02 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
  16280. Reviewed by Andreas Kling.
  16281. [Qt] Don't include Objective-C sources in SOURCES
  16282. * WebCore.pro:
  16283. 2010-11-02 Pavel Podivilov <podivilov@chromium.org>
  16284. Reviewed by Pavel Feldman.
  16285. Web Inspector: persist native breakpoints in localStorage
  16286. https://bugs.webkit.org/show_bug.cgi?id=48711
  16287. * inspector/InspectorController.cpp:
  16288. (WebCore::InspectorController::disconnectFrontend):
  16289. (WebCore::InspectorController::didCommitLoad):
  16290. (WebCore::InspectorController::clearNativeBreakpoints):
  16291. * inspector/InspectorController.h:
  16292. * inspector/front-end/BreakpointManager.js:
  16293. (WebInspector.BreakpointManager):
  16294. (WebInspector.DOMBreakpoint):
  16295. (WebInspector.EventListenerBreakpoint):
  16296. (WebInspector.EventListenerBreakpoint.eventNameForUI):
  16297. (WebInspector.EventListenerBreakpoint.prototype._uiEventName):
  16298. (WebInspector.XHRBreakpoint):
  16299. (WebInspector.XHRBreakpoint.prototype.populateStatusMessageElement):
  16300. * inspector/front-end/BreakpointsSidebarPane.js:
  16301. (WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint):
  16302. (WebInspector.BreakpointsSidebarPane.prototype._breakpointHit):
  16303. (WebInspector.BreakpointItem.prototype._hitStateChanged):
  16304. (WebInspector.EventListenerBreakpointsSidebarPane):
  16305. * inspector/front-end/ConsoleView.js:
  16306. * inspector/front-end/EventListenersSidebarPane.js:
  16307. * inspector/front-end/NetworkPanel.js:
  16308. * inspector/front-end/Panel.js:
  16309. * inspector/front-end/ResourceView.js:
  16310. * inspector/front-end/ScriptsPanel.js:
  16311. * inspector/front-end/Settings.js:
  16312. (WebInspector.Settings):
  16313. (WebInspector.Settings.prototype.inspectedURLChanged):
  16314. (WebInspector.Settings.prototype._formatProjectKey):
  16315. * inspector/front-end/StoragePanel.js:
  16316. * inspector/front-end/StylesSidebarPane.js:
  16317. * inspector/front-end/WatchExpressionsSidebarPane.js:
  16318. * inspector/front-end/inspector.css:
  16319. (.pane .breakpoint-hit):
  16320. * inspector/front-end/inspector.js:
  16321. (WebInspector.set currentPanel):
  16322. (WebInspector.doLoadedDone.onPopulateScriptObjects):
  16323. (WebInspector.doLoadedDone):
  16324. (WebInspector.reset):
  16325. (WebInspector.inspectedURLChanged):
  16326. 2010-11-01 Pavel Feldman <pfeldman@chromium.org>
  16327. Reviewed by Joseph Pecoraro.
  16328. Web Inspector: use mimeType from cached resource
  16329. in case response data contains none.
  16330. https://bugs.webkit.org/show_bug.cgi?id=48773
  16331. * inspector/InspectorResourceAgent.cpp:
  16332. (WebCore::InspectorResourceAgent::didReceiveResponse):
  16333. * inspector/front-end/NetworkPanel.js:
  16334. (WebInspector.NetworkPanel.prototype._createTable):
  16335. 2010-11-01 Andrey Kosyakov <caseq@chromium.org>
  16336. Reviewed by Pavel Feldman.
  16337. Web Inspector: [Extensions API] expose API to create properties watch sidebar panes
  16338. https://bugs.webkit.org/show_bug.cgi?id=48761
  16339. * inspector/front-end/ExtensionAPI.js:
  16340. (WebInspector.injectedExtensionAPI.PanelImpl.prototype.createSidebarPane):
  16341. (WebInspector.injectedExtensionAPI.PanelImpl.prototype.createWatchExpressionSidebarPane.callbackWrapper):
  16342. (WebInspector.injectedExtensionAPI.PanelImpl.prototype.createWatchExpressionSidebarPane):
  16343. (WebInspector.injectedExtensionAPI):
  16344. (WebInspector.injectedExtensionAPI.WatchExpressionSidebarPaneImpl):
  16345. (WebInspector.injectedExtensionAPI.WatchExpressionSidebarPaneImpl.prototype.setExpression):
  16346. (WebInspector.injectedExtensionAPI.WatchExpressionSidebarPaneImpl.prototype.setObject):
  16347. * inspector/front-end/ExtensionPanel.js: Added ExtensionWatchSidebarPane
  16348. (WebInspector.ExtensionWatchSidebarPane):
  16349. (WebInspector.ExtensionWatchSidebarPane.prototype.setObject):
  16350. (WebInspector.ExtensionWatchSidebarPane.prototype.setExpression):
  16351. (WebInspector.ExtensionWatchSidebarPane.prototype._onEvaluate):
  16352. (WebInspector.ExtensionWatchSidebarPane.prototype._setObject):
  16353. * inspector/front-end/ExtensionServer.js:
  16354. (WebInspector.ExtensionServer):
  16355. (WebInspector.ExtensionServer.prototype.notifyExtensionWatchSidebarUpdated):
  16356. (WebInspector.ExtensionServer.prototype._onCreateSidebar):
  16357. (WebInspector.ExtensionServer.prototype._onCreateWatchExpressionSidebarPane):
  16358. (WebInspector.ExtensionServer.prototype._createSidebar):
  16359. (WebInspector.ExtensionServer.prototype._onSetWatchSidebarContent):
  16360. * inspector/front-end/InjectedScript.js:
  16361. (injectedScriptConstructor.):
  16362. * inspector/front-end/RemoteObject.js: Added a wrapper for local JSON object to simulate RemoteObject interface.
  16363. (WebInspector.RemoteObject.fromLocalObject):
  16364. (WebInspector.LocalJSONObject):
  16365. (WebInspector.LocalJSONObject.prototype.get description):
  16366. (WebInspector.LocalJSONObject.prototype.get type):
  16367. (WebInspector.LocalJSONObject.prototype.get hasChildren):
  16368. (WebInspector.LocalJSONObject.prototype.getOwnProperties):
  16369. (WebInspector.LocalJSONObject.prototype.getProperties):
  16370. (WebInspector.LocalJSONObject.prototype.isError):
  16371. 2010-11-02 Ryuan Choi <ryuan.choi@samsung.com>
  16372. Unreviewed build fix for EFL build with libcurl
  16373. [EFL] remove multiple definition with libcurl
  16374. https://bugs.webkit.org/show_bug.cgi?id=48499
  16375. Add macro to isolate setCookieStoragePrivateBrowsingEnabled from EFL
  16376. build because it was duplicated.
  16377. * platform/network/curl/CookieJarCurl.cpp:
  16378. 2010-11-02 Pavel Feldman <pfeldman@chromium.org>
  16379. Reviewed by Joseph Pecoraro.
  16380. Web Inspector: highlight frame on hover in resources panel.
  16381. https://bugs.webkit.org/show_bug.cgi?id=48760
  16382. * inspector/Inspector.idl:
  16383. * inspector/InspectorController.cpp:
  16384. (WebCore::InspectorController::highlightFrame):
  16385. * inspector/InspectorController.h:
  16386. (WebCore::InspectorController::hideFrameHighlight):
  16387. * inspector/front-end/StoragePanel.js:
  16388. (WebInspector.StoragePanel):
  16389. (WebInspector.StoragePanel.prototype.showView):
  16390. (WebInspector.StoragePanel.prototype._onmousemove):
  16391. (WebInspector.StoragePanel.prototype._onmouseout):
  16392. (WebInspector.FrameTreeElement.prototype.onselect):
  16393. (WebInspector.FrameTreeElement.prototype.ondeselect):
  16394. (WebInspector.FrameTreeElement.prototype.set displayName):
  16395. (WebInspector.FrameTreeElement.prototype.set hovered):
  16396. * inspector/front-end/inspector.css:
  16397. (.storage.panel .sidebar li.selected .selection):
  16398. (.storage.panel .sidebar :focus li.selected .selection):
  16399. (body.inactive .storage.panel .sidebar li.selected .selection):
  16400. 2010-11-02 Nikolas Zimmermann <nzimmermann@rim.com>
  16401. Reviewed by Rob Buis.
  16402. Convert SVGPreserveAspectRatio to the new SVGPropertyTearOff concept
  16403. https://bugs.webkit.org/show_bug.cgi?id=48822
  16404. Convert the next type to use the SVGPropertyTearOffConcept. Just SVGAnimatedTransformList/SVGTransform/SVGStringList are missing.
  16405. Tests: svg/dom/SVGAnimatedPreserveAspectRatio.html
  16406. svg/dom/SVGPreserveAspectRatio.html
  16407. * GNUmakefile.am: Add SVGAnimatedPreserveAspectRatio.h to build.
  16408. * WebCore.gypi: Ditto.
  16409. * WebCore.pro: Ditto.
  16410. * WebCore.vcproj/WebCore.vcproj: Ditto.
  16411. * WebCore.xcodeproj/project.pbxproj: Ditto.
  16412. * bindings/scripts/CodeGenerator.pm: Recognize SVGAnimatedPreserveAspectRatio as new style animated type.
  16413. * bindings/scripts/CodeGeneratorJS.pm: Remove special SVGPreserveAspectRatio handling.
  16414. * bindings/scripts/CodeGeneratorObjC.pm: Always include the type wrapped by SVGPropertyTearOff<> - this was missing before, and now become visible as missing include.
  16415. * bindings/scripts/CodeGeneratorV8.pm: Remove special SVGPreserveAspectRatio handling.
  16416. * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove SVGPreserveAspectRatio handling.
  16417. * svg/DeprecatedSVGAnimatedTemplate.h: Ditto.
  16418. * svg/SVGAnimatedPreserveAspectRatio.h: Added.
  16419. * svg/SVGFEImageElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_PROPERTY_NEW/ where SVGPreserveAspectRatio is used.
  16420. * svg/SVGFitToViewBox.cpp:
  16421. (WebCore::SVGFitToViewBox::viewBoxToViewTransform): SVGPreserveAspectRatio::getCTM doesn't need x/y parameters, they were not used anywhere, remove them.
  16422. * svg/SVGFitToViewBox.h: Replace includes by class forwards.
  16423. * svg/SVGImageElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_PROPERTY_NEW/ where SVGPreserveAspectRatio is used.
  16424. * svg/SVGLocatable.cpp: Add SVGNames.h include, to allow Qt to build (thanks ews!).
  16425. * svg/SVGMarkerElement.h: Ditto.
  16426. * svg/SVGPatternElement.h: Ditto.
  16427. * svg/SVGPreserveAspectRatio.cpp: Modernize code, add error handling for align/meetOrSlice covered by the new tests.
  16428. (WebCore::SVGPreserveAspectRatio::SVGPreserveAspectRatio):
  16429. (WebCore::SVGPreserveAspectRatio::setAlign):
  16430. (WebCore::SVGPreserveAspectRatio::setMeetOrSlice):
  16431. (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
  16432. (WebCore::SVGPreserveAspectRatio::transformRect):
  16433. (WebCore::SVGPreserveAspectRatio::getCTM):
  16434. (WebCore::SVGPreserveAspectRatio::valueAsString):
  16435. * svg/SVGPreserveAspectRatio.h: Reindented header.
  16436. (WebCore::SVGPreserveAspectRatio::align): Inlined.
  16437. (WebCore::SVGPreserveAspectRatio::meetOrSlice): Inlined.
  16438. * svg/SVGPreserveAspectRatio.idl: Enable StrictTypeChecking for the align/meetOrSlice properties.
  16439. * svg/SVGSVGElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_PROPERTY_NEW/ where SVGPreserveAspectRatio is used.
  16440. * svg/SVGStyledTransformableElement.h: Add SVGAnimatedPropertyMacros.h include, needed by efl to build (thanks ews!).
  16441. * svg/SVGSymbolElement.h: Ditto.
  16442. * svg/SVGViewElement.h: Ditto.
  16443. * svg/SVGViewSpec.h: Ditto.
  16444. 2010-11-01 MORITA Hajime <morrita@google.com>
  16445. Reviewed by Kent Tamura.
  16446. @spellcheck attribute at the child of contentEditable node is ignored.
  16447. https://bugs.webkit.org/show_bug.cgi?id=48418
  16448. Changed to check spellcheck availability against a node under the
  16449. selection (caret) instead of the focus. For shadow elements, the
  16450. check now refers its host node. Note that the original code didn't
  16451. care shadows because focus is never set on them.
  16452. Test: editing/spelling/spelling-attribute-at-child.html
  16453. * dom/Element.h:
  16454. * editing/Editor.cpp:
  16455. (WebCore::Editor::markMisspellingsOrBadGrammar):
  16456. (WebCore::Editor::isSpellCheckingEnabledFor):
  16457. (WebCore::Editor::isSpellCheckingEnabledInFocusedNode): Now just calling isSpellCheckingEnabledFor()
  16458. (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
  16459. * editing/Editor.h:
  16460. * platform/ContextMenu.cpp:
  16461. (WebCore::ContextMenu::populate):
  16462. * rendering/TextControlInnerElements.cpp:
  16463. (WebCore::TextControlInnerElement::isSpellCheckingEnabled): Added.
  16464. * rendering/TextControlInnerElements.h:
  16465. 2010-11-01 Martin Robinson <mrobinson@igalia.com>
  16466. Reviewed by Daniel Bates.
  16467. [GTK] PopupMenuGtk has a very confusing if-else block
  16468. https://bugs.webkit.org/show_bug.cgi?id=48816
  16469. Small code cleanup for PopupMenuGtk.
  16470. * platform/gtk/PopupMenuGtk.cpp:
  16471. (WebCore::PopupMenuGtk::show):
  16472. 2010-11-01 Adam Barth <abarth@webkit.org>
  16473. Reviewed by Eric Seidel.
  16474. [Chromium] Add ICC support for PNG on Mac
  16475. https://bugs.webkit.org/show_bug.cgi?id=48170
  16476. This just pipes the ICC profile from libpng to CoreGraphics. This
  16477. patch would have been a lot prettier on Snow Leopard, but we have to
  16478. use a somewhat ugly API to get this to work on Leopard.
  16479. This is covered by about infinite tests.
  16480. * platform/image-decoders/ImageDecoder.cpp:
  16481. (WebCore::RGBA32Buffer::setColorProfile):
  16482. * platform/image-decoders/ImageDecoder.h:
  16483. * platform/image-decoders/cg/ImageDecoderCG.cpp:
  16484. (WebCore::RGBA32Buffer::asNewNativeImage):
  16485. * platform/image-decoders/png/PNGImageDecoder.cpp:
  16486. (WebCore::PNGImageDecoder::headerAvailable):
  16487. (WebCore::PNGImageDecoder::rowAvailable):
  16488. * platform/image-decoders/qt/RGBA32BufferQt.cpp:
  16489. (WebCore::RGBA32Buffer::setColorProfile):
  16490. * platform/image-decoders/skia/ImageDecoderSkia.cpp:
  16491. (WebCore::RGBA32Buffer::setColorProfile):
  16492. 2010-11-01 Chang Shu <chang.shu@nokia.com>
  16493. Reviewed by Antonio Gomes.
  16494. Leave SelectElement key handling without setting event default
  16495. handled when the selection reaches the boundary so focus can
  16496. move to neighbor nodes in spatial navigation.
  16497. https://bugs.webkit.org/show_bug.cgi?id=48145
  16498. * dom/SelectElement.cpp:
  16499. (WebCore::SelectElement::listBoxDefaultEventHandler):
  16500. 2010-11-01 Sheriff Bot <webkit.review.bot@gmail.com>
  16501. Unreviewed, rolling out r71080.
  16502. http://trac.webkit.org/changeset/71080
  16503. https://bugs.webkit.org/show_bug.cgi?id=48815
  16504. This change caused many crashes on the debug bot. (Requested
  16505. by mrobinson on #webkit).
  16506. * platform/network/soup/SocketStreamHandle.h:
  16507. * platform/network/soup/SocketStreamHandleSoup.cpp:
  16508. (WebCore::isActiveHandle):
  16509. (WebCore::deactivateHandle):
  16510. (WebCore::SocketStreamHandle::SocketStreamHandle):
  16511. (WebCore::SocketStreamHandle::connected):
  16512. (WebCore::SocketStreamHandle::readBytes):
  16513. (WebCore::SocketStreamHandle::beginWaitingForSocketWritability):
  16514. (WebCore::connectedCallback):
  16515. (WebCore::readReadyCallback):
  16516. (WebCore::writeReadyCallback):
  16517. 2010-11-01 Martin Robinson <mrobinson@igalia.com>
  16518. Reviewed by Xan Lopez.
  16519. [Soup] Random crashes in http/tests/websocket/tests/workers/worker-handshake-challenge-randomness.html
  16520. https://bugs.webkit.org/show_bug.cgi?id=48805
  16521. Track active WebSocket handles via a sequential id. This ensures
  16522. that when a handle is reallocated into a recently used segment of
  16523. memory, it doesn't trigger a false positive in the code which ensures
  16524. the original handle is active.
  16525. No new tests. This test should stop crashing on the bots, proving the fix.
  16526. * platform/network/soup/SocketStreamHandle.h:
  16527. (WebCore::SocketStreamHandle::id): Added an m_id member and accessor
  16528. to SocketStreamHandle.
  16529. * platform/network/soup/SocketStreamHandleSoup.cpp:
  16530. (WebCore::getHandleFromId): Updated to work with HashMap of handle ids to
  16531. SocketStreamHandle*.
  16532. (WebCore::deactivateHandle): Ditto.
  16533. (WebCore::activateHandle): Ditto.
  16534. (WebCore::SocketStreamHandle::SocketStreamHandle): Ditto.
  16535. (WebCore::SocketStreamHandle::connected): Ditto.
  16536. (WebCore::SocketStreamHandle::readBytes): Ditto.
  16537. (WebCore::SocketStreamHandle::beginWaitingForSocketWritability): Ditto.
  16538. (WebCore::connectedCallback): Ditto.
  16539. (WebCore::readReadyCallback): Ditto.
  16540. (WebCore::writeReadyCallback): Ditto.
  16541. 2010-11-01 Kent Tamura <tkent@chromium.org>
  16542. Unreviewed. Run sort-Xcode-project-file.
  16543. * WebCore.xcodeproj/project.pbxproj:
  16544. 2010-11-01 Simon Fraser <simon.fraser@apple.com>
  16545. Reviewed by Dan Bernstein.
  16546. Assertion failure in FrameView::layout when clicking on a YouTube video on youtube.com front page
  16547. https://bugs.webkit.org/show_bug.cgi?id=44287
  16548. When removing subframes, it's possible for layout() to get called on a FrameView
  16549. for a Frame that has been removed from the frame tree. This can happen if the parent
  16550. document happens to do a layout() while RenderView still has a reference to the widget
  16551. for the removed frame; updateWidgetPosition() will try to force a layout() on the
  16552. subframe.
  16553. Fix by checking that the FrameView's Frame still has a reference to the page before
  16554. calling layout() on the subframe.
  16555. Test: fast/frames/layout-after-destruction.html
  16556. * rendering/RenderWidget.cpp:
  16557. (WebCore::RenderWidget::updateWidgetPosition):
  16558. 2010-11-01 Sheriff Bot <webkit.review.bot@gmail.com>
  16559. Unreviewed, rolling out r71065.
  16560. http://trac.webkit.org/changeset/71065
  16561. https://bugs.webkit.org/show_bug.cgi?id=48801
  16562. Seem to breake a lot of tests on Chromium bots (Requested by
  16563. dimich on #webkit).
  16564. * platform/image-decoders/ImageDecoder.cpp:
  16565. * platform/image-decoders/ImageDecoder.h:
  16566. * platform/image-decoders/cg/ImageDecoderCG.cpp:
  16567. (WebCore::RGBA32Buffer::asNewNativeImage):
  16568. * platform/image-decoders/png/PNGImageDecoder.cpp:
  16569. (WebCore::PNGImageDecoder::headerAvailable):
  16570. (WebCore::PNGImageDecoder::rowAvailable):
  16571. * platform/image-decoders/qt/RGBA32BufferQt.cpp:
  16572. * platform/image-decoders/skia/ImageDecoderSkia.cpp:
  16573. 2010-11-01 Matthew Delaney <mdelaney@apple.com>
  16574. Reviewed by Simon Fraser.
  16575. Setting attr repeatDur=0 on SVG element causes hang
  16576. https://bugs.webkit.org/show_bug.cgi?id=48785
  16577. Test: svg/animations/repeatDur-zero.xhtml
  16578. * svg/animation/SVGSMILElement.cpp: Fixing bound checking for legal repeatDur values.
  16579. 2010-10-31 Adam Barth <abarth@webkit.org>
  16580. Reviewed by Eric Seidel.
  16581. [Chromium] Add ICC support for PNG on Mac
  16582. https://bugs.webkit.org/show_bug.cgi?id=48170
  16583. This just pipes the ICC profile from libpng to CoreGraphics. This
  16584. patch would have been a lot prettier on Snow Leopard, but we have to
  16585. use a somewhat ugly API to get this to work on Leopard.
  16586. This is covered by about infinite tests.
  16587. * platform/image-decoders/ImageDecoder.cpp:
  16588. (WebCore::RGBA32Buffer::setColorProfile):
  16589. * platform/image-decoders/ImageDecoder.h:
  16590. * platform/image-decoders/cg/ImageDecoderCG.cpp:
  16591. (WebCore::RGBA32Buffer::asNewNativeImage):
  16592. * platform/image-decoders/png/PNGImageDecoder.cpp:
  16593. (WebCore::PNGImageDecoder::headerAvailable):
  16594. (WebCore::PNGImageDecoder::rowAvailable):
  16595. * platform/image-decoders/qt/RGBA32BufferQt.cpp:
  16596. (WebCore::RGBA32Buffer::setColorProfile):
  16597. * platform/image-decoders/skia/ImageDecoderSkia.cpp:
  16598. (WebCore::RGBA32Buffer::setColorProfile):
  16599. 2010-11-01 David Hyatt <hyatt@apple.com>
  16600. Reviewed by Dan Bernstein.
  16601. https://bugs.webkit.org/show_bug.cgi?id=48776
  16602. Change isVertical() on InlineBox to isHorizontal() instead. This makes the horizontal code path come
  16603. first if you branch on isHorizontal() and makes the code read better (since that's the more common code
  16604. path).
  16605. * rendering/InlineBox.cpp:
  16606. (WebCore::InlineBox::logicalHeight):
  16607. * rendering/InlineBox.h:
  16608. (WebCore::InlineBox::InlineBox):
  16609. (WebCore::InlineBox::isHorizontal):
  16610. (WebCore::InlineBox::setIsHorizontal):
  16611. (WebCore::InlineBox::width):
  16612. (WebCore::InlineBox::height):
  16613. (WebCore::InlineBox::logicalLeft):
  16614. (WebCore::InlineBox::setLogicalLeft):
  16615. (WebCore::InlineBox::logicalTop):
  16616. (WebCore::InlineBox::setLogicalTop):
  16617. (WebCore::InlineBox::baselinePosition):
  16618. (WebCore::InlineBox::lineHeight):
  16619. * rendering/InlineFlowBox.cpp:
  16620. (WebCore::InlineFlowBox::addToLine):
  16621. (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
  16622. (WebCore::InlineFlowBox::computeBlockDirectionOverflow):
  16623. (WebCore::InlineFlowBox::paintFillLayer):
  16624. (WebCore::InlineFlowBox::paintBoxDecorations):
  16625. (WebCore::InlineFlowBox::paintMask):
  16626. * rendering/InlineFlowBox.h:
  16627. (WebCore::InlineFlowBox::marginLogicalLeft):
  16628. (WebCore::InlineFlowBox::marginLogicalRight):
  16629. (WebCore::InlineFlowBox::borderLogicalLeft):
  16630. (WebCore::InlineFlowBox::borderLogicalRight):
  16631. (WebCore::InlineFlowBox::paddingLogicalLeft):
  16632. (WebCore::InlineFlowBox::paddingLogicalRight):
  16633. (WebCore::InlineFlowBox::setInlineDirectionOverflowPositions):
  16634. (WebCore::InlineFlowBox::setBlockDirectionOverflowPositions):
  16635. * rendering/InlineTextBox.cpp:
  16636. (WebCore::InlineTextBox::selectionRect):
  16637. (WebCore::InlineTextBox::applyShadowToGraphicsContext):
  16638. (WebCore::paintTextWithShadows):
  16639. (WebCore::InlineTextBox::paint):
  16640. (WebCore::InlineTextBox::paintDecoration):
  16641. * rendering/InlineTextBox.h:
  16642. * rendering/RenderBlockLineLayout.cpp:
  16643. (WebCore::RenderBlock::createLineBoxes):
  16644. * rendering/RenderBox.cpp:
  16645. (WebCore::RenderBox::blockDirectionOverflow):
  16646. * rendering/RenderBox.h:
  16647. * rendering/RenderBoxModelObject.cpp:
  16648. (WebCore::RenderBoxModelObject::paintFillLayerExtended):
  16649. * rendering/RenderLineBoxList.cpp:
  16650. (WebCore::RenderLineBoxList::hitTest):
  16651. * rendering/RootInlineBox.cpp:
  16652. (WebCore::RootInlineBox::RootInlineBox):
  16653. (WebCore::RootInlineBox::placeEllipsis):
  16654. * rendering/RootInlineBox.h:
  16655. (WebCore::RootInlineBox::baselinePosition):
  16656. (WebCore::RootInlineBox::lineHeight):
  16657. 2010-11-01 Simon Fraser <simon.fraser@apple.com>
  16658. Reviewed by Dave Hyatt.
  16659. Multiple background properties are not retrievable via DOM method getComputedStyle
  16660. https://bugs.webkit.org/show_bug.cgi?id=23203
  16661. Return lists of values from getComputedStyle() for multiple backgrounds,
  16662. and multiple masks.
  16663. Test: fast/backgrounds/multiple-backgrounds-computed-style.html
  16664. * css/CSSComputedStyleDeclaration.cpp:
  16665. (WebCore::fillSizeToCSSValue):
  16666. (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  16667. 2010-11-01 David Hyatt <hyatt@apple.com>
  16668. Reviewed by Dan Bernstein.
  16669. https://bugs.webkit.org/show_bug.cgi?id=48663
  16670. Make repaint invalidation work with vertical lines. Rewrite linesBoundingBox for RenderText and
  16671. RenderInline to give the correct rectangle back for vertical lines. Also patch linesVisibleOverflowBoundingBox
  16672. to give back the correct rectangle for vertical lines.
  16673. Fix bugs in the overflow accessors of InlineFlowBox when m_overflow was 0.
  16674. Patch hit testing to also account for "rt" and "bt" blocks.
  16675. * rendering/InlineBox.cpp:
  16676. (WebCore::InlineBox::adjustForFlippedBlocksWritingMode):
  16677. * rendering/InlineFlowBox.cpp:
  16678. (WebCore::InlineFlowBox::nodeAtPoint):
  16679. * rendering/InlineFlowBox.h:
  16680. (WebCore::InlineFlowBox::logicalLeftVisibleOverflow):
  16681. (WebCore::InlineFlowBox::logicalRightVisibleOverflow):
  16682. (WebCore::InlineFlowBox::bottomLayoutOverflow):
  16683. (WebCore::InlineFlowBox::rightLayoutOverflow):
  16684. (WebCore::InlineFlowBox::bottomVisualOverflow):
  16685. (WebCore::InlineFlowBox::rightVisualOverflow):
  16686. * rendering/InlineTextBox.cpp:
  16687. (WebCore::InlineTextBox::nodeAtPoint):
  16688. * rendering/RenderBlock.cpp:
  16689. (WebCore::RenderBlock::hitTestFloats):
  16690. (WebCore::RenderBlock::hitTestContents):
  16691. * rendering/RenderBox.cpp:
  16692. (WebCore::RenderBox::computeRectForRepaint):
  16693. (WebCore::RenderBox::adjustForFlippedBlocksWritingMode):
  16694. * rendering/RenderBox.h:
  16695. * rendering/RenderInline.cpp:
  16696. (WebCore::RenderInline::linesBoundingBox):
  16697. (WebCore::RenderInline::linesVisibleOverflowBoundingBox):
  16698. (WebCore::RenderInline::clippedOverflowRectForRepaint):
  16699. * rendering/RenderText.cpp:
  16700. (WebCore::RenderText::linesBoundingBox):
  16701. 2010-11-01 Brady Eidson <beidson@apple.com>
  16702. Reviewed by Anders Carlsson.
  16703. <rdar://problem/7660547> and https://bugs.webkit.org/show_bug.cgi?id=48699
  16704. Context menu support for WebKit 2.
  16705. Add a "showContextMenu" call to Chrome/ChromeClient:
  16706. * loader/EmptyClients.h:
  16707. (WebCore::EmptyChromeClient::showContextMenu):
  16708. * page/Chrome.cpp:
  16709. (WebCore::Chrome::showContextMenu):
  16710. * page/Chrome.h:
  16711. * page/ChromeClient.h:
  16712. Add a "platform description to ContextMenuItem" creator, will be needed by WebKit2
  16713. * platform/ContextMenu.h:
  16714. * platform/mac/ContextMenuMac.mm:
  16715. (WebCore::contextMenuItemVector):
  16716. * platform/mac/ContextMenuItemMac.mm:
  16717. (WebCore::ContextMenuItem::checked): WebKit2 ports now need this implemented.
  16718. Stub these out to keep their WK2 ports building:
  16719. * platform/qt/ContextMenuItemQt.cpp:
  16720. (WebCore::ContextMenuItem::checked):
  16721. * platform/qt/ContextMenuQt.cpp:
  16722. (WebCore::contextMenuItemVector):
  16723. * platform/win/ContextMenuItemWin.cpp:
  16724. (WebCore::ContextMenuItem::checked):
  16725. * platform/win/ContextMenuWin.cpp:
  16726. (WebCore::contextMenuItemVector):
  16727. 2010-11-01 Eric Carlson <eric.carlson@apple.com>
  16728. Reviewed by Adam Roben.
  16729. Seeking by very small increment doesn't generate 'seeked' event
  16730. https://bugs.webkit.org/show_bug.cgi?id=48530
  16731. Test: media/video-seek-by-small-increment.html
  16732. * html/HTMLMediaElement.cpp:
  16733. (WebCore::HTMLMediaElement::seek): Ask the media engine for its closest time value so we can
  16734. avoid asking it to seek to the current time.
  16735. * platform/graphics/MediaPlayer.cpp:
  16736. (WebCore::MediaPlayer::mediaTimeForTimeValue): New.
  16737. * platform/graphics/MediaPlayer.h:
  16738. * platform/graphics/MediaPlayerPrivate.h:
  16739. (WebCore::MediaPlayerPrivateInterface::mediaTimeForTimeValue): Ditto.
  16740. * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
  16741. * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
  16742. (WebCore::MediaPlayerPrivate::mediaTimeForTimeValue): Return the closest value in the movie's time scale.
  16743. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
  16744. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::mediaTimeForTimeValue): Ditto
  16745. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
  16746. * platform/graphics/win/QTMovie.cpp:
  16747. (QTMovie::timeScale): Return the movie's time scale.
  16748. * platform/graphics/win/QTMovie.h:
  16749. 2010-11-01 Pavel Feldman <pfeldman@chromium.org>
  16750. Not reviewed: Chromium build fix. Adding missing transitive dependency.
  16751. * inspector/InspectorResourceAgent.cpp:
  16752. 2010-11-01 Pavel Feldman <pfeldman@chromium.org>
  16753. Not reviewed. Removing references to removed file from project files.
  16754. * WebCore.gypi:
  16755. * inspector/front-end/WebKit.qrc:
  16756. * inspector/front-end/inspector.css:
  16757. 2010-11-01 Pavel Feldman <pfeldman@chromium.org>
  16758. Reviewed by Timothy Hatcher.
  16759. Web Inspector: remove old resources panel.
  16760. https://bugs.webkit.org/show_bug.cgi?id=45657
  16761. * CMakeLists.txt:
  16762. * English.lproj/localizedStrings.js:
  16763. * GNUmakefile.am:
  16764. * WebCore.gypi:
  16765. * WebCore.pro:
  16766. * WebCore.vcproj/WebCore.vcproj:
  16767. * WebCore.xcodeproj/project.pbxproj:
  16768. * bindings/js/JSInjectedScriptHostCustom.cpp:
  16769. * inspector/InjectedScriptHost.cpp:
  16770. * inspector/Inspector.idl:
  16771. * inspector/InspectorCSSStore.cpp:
  16772. * inspector/InspectorController.cpp:
  16773. (WebCore::InspectorController::~InspectorController):
  16774. (WebCore::InspectorController::connectFrontend):
  16775. (WebCore::InspectorController::releaseFrontendLifetimeAgents):
  16776. (WebCore::InspectorController::populateScriptObjects):
  16777. (WebCore::InspectorController::unbindAllResources):
  16778. (WebCore::InspectorController::didCommitLoad):
  16779. (WebCore::InspectorController::frameDetachedFromParent):
  16780. (WebCore::InspectorController::didLoadResourceFromMemoryCache):
  16781. (WebCore::InspectorController::identifierForInitialRequest):
  16782. (WebCore::InspectorController::willSendRequest):
  16783. (WebCore::InspectorController::markResourceAsCached):
  16784. (WebCore::InspectorController::didReceiveResponse):
  16785. (WebCore::InspectorController::didReceiveContentLength):
  16786. (WebCore::InspectorController::didFinishLoading):
  16787. (WebCore::InspectorController::didFailLoading):
  16788. (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
  16789. (WebCore::InspectorController::scriptImported):
  16790. (WebCore::InspectorController::didCreateWebSocket):
  16791. (WebCore::InspectorController::willSendWebSocketHandshakeRequest):
  16792. (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse):
  16793. (WebCore::InspectorController::didCloseWebSocket):
  16794. * inspector/InspectorController.h:
  16795. * inspector/InspectorFrontendHost.cpp:
  16796. * inspector/InspectorResource.cpp: Removed.
  16797. * inspector/InspectorResource.h: Removed.
  16798. * inspector/InspectorResourceAgent.cpp:
  16799. (WebCore::InspectorResourceAgent::setOverrideContent):
  16800. * inspector/InspectorResourceAgent.h:
  16801. * inspector/front-end/ConsoleView.js:
  16802. (WebInspector.ConsoleView.prototype.addMessage):
  16803. (WebInspector.ConsoleView.prototype.clearMessages):
  16804. * inspector/front-end/ExtensionServer.js:
  16805. (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource):
  16806. * inspector/front-end/Images/resourcesSilhouette.png: Removed.
  16807. * inspector/front-end/Resource.js:
  16808. * inspector/front-end/ResourceManager.js:
  16809. (WebInspector.ResourceManager.getContent):
  16810. * inspector/front-end/ResourcesPanel.js: Removed.
  16811. * inspector/front-end/Settings.js:
  16812. * inspector/front-end/StoragePanel.js:
  16813. (WebInspector.StoragePanel):
  16814. (WebInspector.StoragePanel.prototype.get toolbarItemLabel):
  16815. * inspector/front-end/WebKit.qrc:
  16816. * inspector/front-end/inspector.html:
  16817. * inspector/front-end/inspector.js:
  16818. (WebInspector._createPanels):
  16819. (WebInspector.get networkResources):
  16820. (WebInspector.forAllResources):
  16821. (WebInspector.resourceForURL):
  16822. (WebInspector.doLoadedDone.populateInspectorState):
  16823. (WebInspector.openResource):
  16824. (WebInspector.domContentEventFired):
  16825. (WebInspector.loadEventFired):
  16826. (WebInspector.reset):
  16827. (WebInspector._choosePanelToShowSourceLine):
  16828. 2010-10-28 Zhenyao Mo <zmo@google.com>
  16829. Reviewed by Kenneth Russell.
  16830. Fix enum naming style violation in GraphicsContext3D
  16831. https://bugs.webkit.org/show_bug.cgi?id=48441
  16832. * platform/graphics/GraphicsContext3D.cpp:
  16833. (WebCore::GraphicsContext3D::extractImageData):
  16834. (WebCore::GraphicsContext3D::extractTextureData):
  16835. (WebCore::doPacking):
  16836. (WebCore::GraphicsContext3D::packPixels):
  16837. * platform/graphics/GraphicsContext3D.h:
  16838. * platform/graphics/cg/GraphicsContext3DCG.cpp:
  16839. (WebCore::getSourceDataFormat):
  16840. (WebCore::GraphicsContext3D::getImageData):
  16841. * platform/graphics/skia/GraphicsContext3DSkia.cpp:
  16842. (WebCore::GraphicsContext3D::getImageData):
  16843. 2010-11-01 Martin Robinson <mrobinson@igalia.com>
  16844. Reviewed by Xan Lopez.
  16845. [GTK] Pasting markup into Thunderbird compose window produces no text
  16846. https://bugs.webkit.org/show_bug.cgi?id=43737
  16847. Include a content-type meta tag prefix on all clipboard markup. Programs like
  16848. Thunderbird expect this meta tag and will not paste anything unless it is there.
  16849. This is covered by changes to WebKit/gtk/tests/testcopyandpaste.c. This patch was
  16850. written in such a way as to not affect layout test results, otherwise there
  16851. would be many new GTK+-specific results that say "FAIL").
  16852. * platform/gtk/PasteboardHelper.cpp:
  16853. (WebCore::removeMarkupPrefix): Added this helper which removes the prefix
  16854. when found on incoming clipboard and drag-and-drop text.
  16855. (WebCore::PasteboardHelper::getClipboardContents): Remove the meta tag prefix.
  16856. (WebCore::PasteboardHelper::fillSelectionData): Add the meta tag prefix.
  16857. (WebCore::PasteboardHelper::fillDataObjectFromDropData): Remove the meta tag prefix
  16858. 2010-11-01 Justin Schuh <jschuh@chromium.org>
  16859. Reviewed by Dirk Schulze.
  16860. Check for NULL node in SVGUseElement::associateInstancesWithShadowTreeElements loop
  16861. https://bugs.webkit.org/show_bug.cgi?id=48741
  16862. Test: svg/custom/use-on-use-with-child-and-empty-target.svg
  16863. * svg/SVGUseElement.cpp:
  16864. (WebCore::SVGUseElement::associateInstancesWithShadowTreeElements):
  16865. 2010-11-01 Mario Sanchez Prada <msanchez@igalia.com>
  16866. Reviewed by Martin Robinson.
  16867. [Gtk] AtkHyperlink needs to be implemented
  16868. https://bugs.webkit.org/show_bug.cgi?id=33785
  16869. Implemented the AtkHyperlink/AtkHypertext stuff in the GTK port.
  16870. Even thought these kind of tasks are usually about implementing an
  16871. interface, in this case it was needed to implement some more
  16872. things due to the fact that AtkHyperlink is neither an interface
  16873. nor an AtkObject, but just an abstract class child of GObject that
  16874. needs to be redefined in a specific subclass of that one. On top
  16875. of that, it was needed to implement the AtkAction interface as
  16876. well for that new class, so exposed hyperlinks can work as
  16877. expected with Assistive Technologies based on ATK.
  16878. Furthermore, as there's no mechanism to get an instance of that
  16879. AtkHyperlink other than doing it through an AtkObject implementing
  16880. the AtkHypertext interface, it was needed to also add the code to
  16881. implement that one, so it makes possible to ask for the
  16882. 'hyperlinks' under an 'hypertext' accessible object.
  16883. Finally, to complete the implementation of all this stuff and make
  16884. it all consistent, it was needed as well to implement the
  16885. AtkHyperlinkImpl interface (providing just one method only) so
  16886. that allows retrieving the AtkHyperlink object associated to an
  16887. AtkObject implementing such an interface.
  16888. * GNUmakefile.am: Add the new WebKitAccessibleHyperlink.[h|cpp]
  16889. files to the sources list for the GTK port.
  16890. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  16891. (core): New function to return the core accessibility object
  16892. related to an AtkObject implementing the AtkHypertext interface.
  16893. (webkitAccessibleHypertextGetLink): New, part of the
  16894. implementation of the AtkHypertext interface.
  16895. (webkitAccessibleHypertextGetNLinks): New, likewise.
  16896. (webkitAccessibleHypertextGetLinkIndex): New, likewise.
  16897. (atkHypertextInterfaceInit): New, initialize the AtkHypertext
  16898. interface.
  16899. (webkitAccessibleHyperlinkImplGetHyperlink): New, part of the
  16900. implementation of the AtkHyperlinkImpl interface.
  16901. (atkHyperlinkImplInterfaceInit): New, initialize the
  16902. AtkHyperlinkImpl interface.
  16903. (GetAtkInterfaceTypeFromWAIType): Add ATK_TYPE_HYPERTEXT and
  16904. ATK_TYPE_HYPERLINK_IMPL to the list of recognized types.
  16905. (getInterfaceMaskFromObject): Decide when it's needed to add
  16906. WAI_HYPERTEXT and WAI_HYPERLINK to the interface mask.
  16907. * accessibility/gtk/WebKitAccessibleHyperlink.h: Added.
  16908. * accessibility/gtk/WebKitAccessibleHyperlink.cpp: Added.
  16909. (returnString): Return (const char*) from String variables.
  16910. (core): Return the associated AccessibilityObject.
  16911. (webkitAccessibleHyperlinkActionDoAction): Part of the
  16912. implementation of the AtkAction interface.
  16913. (webkitAccessibleHyperlinkActionGetNActions): Likewise.
  16914. (webkitAccessibleHyperlinkActionGetDescription): Likewise.
  16915. (webkitAccessibleHyperlinkActionGetKeybinding): Likewise.
  16916. (webkitAccessibleHyperlinkActionGetName): Likewise.
  16917. (atkActionInterfaceInit): Initialize the AtkAction interface.
  16918. (getRangeLengthForObject): Returns the length for a given Range,
  16919. considering special cases (e.g. List item markers).
  16920. (webkitAccessibleHyperlinkGetURI): Implementation of one of the
  16921. methods in the AtkHyperlink abstract class.
  16922. (webkitAccessibleHyperlinkGetObject): Likewise.
  16923. (webkitAccessibleHyperlinkGetStartIndex): Likewise.
  16924. (webkitAccessibleHyperlinkGetEndIndex): Likewise.
  16925. (webkitAccessibleHyperlinkIsValid): Likewise.
  16926. (webkitAccessibleHyperlinkGetNAnchors): Likewise.
  16927. (webkitAccessibleHyperlinkIsSelectedLink): Likewise.
  16928. (webkitAccessibleHyperlinkGetProperty): Getter method.
  16929. (webkitAccessibleHyperlinkSetProperty): Setter method.
  16930. (webkitAccessibleHyperlinkFinalize): Finalize method.
  16931. (webkitAccessibleHyperlinkClassInit): Initialize the
  16932. WebKitAccessibleHyperlink class.
  16933. (webkitAccessibleHyperlinkInit): Initialize the
  16934. WebKitAccessibleHyperlink instance.
  16935. (webkitAccessibleHyperlinkGetType): Implementation of the
  16936. get_type() function for the WebKitAccessibleHyperlink class.
  16937. (webkitAccessibleHyperlinkNew): Returns an instance of the class
  16938. associated to a given AtkHyperlinkImpl object.
  16939. (webkitAccessibleHyperlinkGetAccessibilityObject): Public function
  16940. returning the AccessibilityObject associated to the instance of
  16941. the WebKitAccessibleHyperlink class.
  16942. 2010-11-01 Pavel Feldman <pfeldman@chromium.org>
  16943. Not reviewed: simplify inspector styles test to make all bots happy.
  16944. (drive-by fix for overriden inspector styles in network panel).
  16945. * inspector/InspectorController.h:
  16946. * inspector/front-end/networkPanel.css:
  16947. 2010-11-01 Nikolas Zimmermann <nzimmermann@rim.com>
  16948. Reviewed by Rob Buis.
  16949. Enable StrictTypeChecking for all types using SVG(Animated)PropertyTearOff
  16950. https://bugs.webkit.org/show_bug.cgi?id=48715
  16951. Enable StrictTypeChecking for all readwrite attributes and function calls of all types using the new SVG(Animated)PropertyTearOff concept.
  16952. Also enable RequiresAllArguments=Raise for all function calls of these new types. Cover this functionality by tests for each of them.
  16953. When testing SVGLength it became obvious that quite a lot of functionality was missing.
  16954. Conversion from relative arguments (percentage, ems, exs) to user specified units was missing, added that functionality and tested it.
  16955. User units to pt conversion was wrong, fixed that.
  16956. Tests: svg/dom/SVGAnimatedAngle.html
  16957. svg/dom/SVGAnimatedBoolean.html
  16958. svg/dom/SVGAnimatedEnumeration.html
  16959. svg/dom/SVGAnimatedInteger.html
  16960. svg/dom/SVGAnimatedLength.html
  16961. svg/dom/SVGAnimatedLengthList.html
  16962. svg/dom/SVGAnimatedRect.html
  16963. svg/dom/SVGLength-px-with-context.html
  16964. svg/dom/SVGLength-px.html
  16965. svg/dom/SVGLength.html
  16966. * bindings/js/JSSVGLengthCustom.cpp: These SVGLength methods now take an ExceptionCode parameter, adapt to that.
  16967. (WebCore::JSSVGLength::value):
  16968. (WebCore::JSSVGLength::setValue):
  16969. (WebCore::JSSVGLength::convertToSpecifiedUnits):
  16970. * bindings/scripts/CodeGeneratorObjC.pm: Remove FIXMEs, pass real context instead off null pointer. DOMSVGLength::value is functional now.
  16971. * bindings/v8/custom/V8SVGLengthCustom.cpp: These SVGLength methods now take an ExceptionCode parameter, adapt to that.
  16972. (WebCore::V8SVGLength::valueAccessorGetter):
  16973. (WebCore::V8SVGLength::valueAccessorSetter):
  16974. (WebCore::V8SVGLength::convertToSpecifiedUnitsCallback):
  16975. * rendering/style/SVGRenderStyle.h: Adapt to SVGLength API changes.
  16976. (WebCore::SVGRenderStyle::initialBaselineShiftValue):
  16977. (WebCore::SVGRenderStyle::initialKerning):
  16978. (WebCore::SVGRenderStyle::initialStrokeDashOffset):
  16979. (WebCore::SVGRenderStyle::initialStrokeWidth):
  16980. * svg/SVGAngle.idl: Add StrictTypeChecking, RequiresAllArguments=Raise to all methods.
  16981. * svg/SVGAnimatedBoolean.idl: Remove StrictTypeChecking from animVal, it's readonly so this is useless.
  16982. * svg/SVGAnimatedEnumeration.idl: Add StrictTypeChecking to all attributes.
  16983. * svg/SVGAnimatedInteger.idl: Ditto.
  16984. * svg/SVGLength.cpp: Implement all missing features of SVGLength. Conform to our style guide (s/.0f// etc)
  16985. (WebCore::lengthTypeToString):
  16986. (WebCore::SVGLength::SVGLength):
  16987. (WebCore::SVGLength::value): Throw NOT_SUPPORTED_ERR when trying to obtain to relative units, when no context is given (SVGLength created by createSVGLength()).
  16988. (WebCore::SVGLength::setValue): Ditto, for the setter.
  16989. (WebCore::SVGLength::valueAsPercentage): Use m_valueInSpecifiedUnits instead of valueInSpecifiedUnits().
  16990. (WebCore::SVGLength::setValueAsString): Throw SYNTAX_ERR if parsing failed.
  16991. (WebCore::SVGLength::valueAsString): Use makeString() instead of String and operator+.
  16992. (WebCore::SVGLength::newValueSpecifiedUnits): Add ExceptionCode parameter, throw NOT_SUPPORTED_ERR, if the given unit type is invalid.
  16993. (WebCore::SVGLength::convertToSpecifiedUnits): Ditto.
  16994. (WebCore::SVGLength::determineViewport): Added helper function used by convertValue*Percentage*.
  16995. (WebCore::SVGLength::convertValueFromUserUnitsToPercentage): Add new helper functions, used by value/setValue.
  16996. (WebCore::SVGLength::convertValueFromPercentageToUserUnits): Ditto.
  16997. (WebCore::SVGLength::convertValueFromUserUnitsToEMS): Ditto.
  16998. (WebCore::SVGLength::convertValueFromEMSToUserUnits): Ditto.
  16999. (WebCore::SVGLength::convertValueFromUserUnitsToEXS): Ditto.
  17000. (WebCore::SVGLength::convertValueFromEXSToUserUnits): Ditto.
  17001. (WebCore::SVGLength::fromCSSPrimitiveValue): Adapt to newValueSpecifiedUnits API change.
  17002. (WebCore::SVGLength::toCSSPrimitiveValue): Remove default switch case.
  17003. * svg/SVGLength.h:
  17004. (WebCore::SVGLength::valueInSpecifiedUnits): Inlined.
  17005. (WebCore::SVGLength::setValueInSpecifiedUnits): Ditto.
  17006. (WebCore::SVGLength::isRelative):
  17007. * svg/SVGLength.idl: Add StrictTypeChecking for all attributes/functions and RequiresAllArguments=Raise for all functions.
  17008. * svg/SVGLengthList.cpp: Adapt to SVGLength API changes.
  17009. (WebCore::SVGLengthList::parse):
  17010. 2010-10-31 Pavel Feldman <pfeldman@chromium.org>
  17011. Reviewed by Timothy Hatcher.
  17012. Web Inspector: unhide new network and resources panels.
  17013. https://bugs.webkit.org/show_bug.cgi?id=48725
  17014. * English.lproj/localizedStrings.js:
  17015. * inspector/InspectorController.h:
  17016. * inspector/front-end/NetworkPanel.js:
  17017. (WebInspector.NetworkPanel):
  17018. * inspector/front-end/Settings.js:
  17019. * inspector/front-end/StoragePanel.js:
  17020. (WebInspector.StoragePanel):
  17021. (WebInspector.StoragePanel.prototype.reset):
  17022. (WebInspector.StoragePanel.prototype.addResourceToFrame):
  17023. (WebInspector.StoragePanel.prototype.addDocumentURL):
  17024. (WebInspector.StoragePanel.prototype.showFileSystem):
  17025. (WebInspector.FileSystemTreeElement):
  17026. (WebInspector.FileSystemTreeElement.prototype.get itemURL):
  17027. (WebInspector.FileSystemTreeElement.prototype.onselect):
  17028. * inspector/front-end/inspector.js:
  17029. (WebInspector.updateResource):
  17030. * inspector/front-end/networkPanel.css:
  17031. (#network-close-button):
  17032. (.network.panel.viewing-resource #network-close-button):
  17033. 2010-10-26 MORITA Hajime <morrita@google.com>
  17034. Reviewed by Kent Tamura.
  17035. Refactoring: Spellchecking related static functions could form a class
  17036. https://bugs.webkit.org/show_bug.cgi?id=48287
  17037. Extracted spellcheck related static functions to TextCheckingHelper class,
  17038. which has EditorClient and Range as its member.
  17039. No new tests. Just a refactoring.
  17040. * CMakeLists.txt:
  17041. * GNUmakefile.am:
  17042. * WebCore.gypi:
  17043. * WebCore.pro:
  17044. * WebCore.vcproj/WebCore.vcproj:
  17045. * WebCore.xcodeproj/project.pbxproj:
  17046. * editing/EditingAllInOne.cpp
  17047. * editing/Editor.cpp:
  17048. (WebCore::Editor::advanceToNextMisspelling):
  17049. (WebCore::Editor::isSelectionUngrammatical):
  17050. (WebCore::Editor::guessesForUngrammaticalSelection):
  17051. (WebCore::Editor::guessesForMisspelledOrUngrammaticalSelection):
  17052. (WebCore::Editor::markMisspellingsAfterTypingToPosition):
  17053. (WebCore::Editor::markMisspellingsOrBadGrammar):
  17054. (WebCore::Editor::markMisspellings):
  17055. (WebCore::Editor::markBadGrammar):
  17056. (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
  17057. (WebCore::Editor::changeBackToReplacedString):
  17058. * editing/Editor.h:
  17059. * editing/TextCheckingHelper.cpp: Added.
  17060. (WebCore::TextCheckingHelper::TextCheckingHelper):
  17061. (WebCore::TextCheckingHelper::~TextCheckingHelper):
  17062. (WebCore::TextCheckingHelper::paragraphAlignedRange):
  17063. (WebCore::TextCheckingHelper::findFirstMisspelling):
  17064. (WebCore::TextCheckingHelper::findFirstMisspellingOrBadGrammar):
  17065. (WebCore::TextCheckingHelper::findFirstGrammarDetail):
  17066. (WebCore::TextCheckingHelper::findFirstBadGrammar):
  17067. (WebCore::TextCheckingHelper::isUngrammatical):
  17068. (WebCore::TextCheckingHelper::guessesForMisspelledOrUngrammaticalRange):
  17069. (WebCore::TextCheckingHelper::markAllMisspellings):
  17070. (WebCore::TextCheckingHelper::markAllBadGrammar):
  17071. * editing/TextCheckingHelper.h: Added.
  17072. 2010-10-31 Xan Lopez <xlopez@igalia.com>
  17073. Try to fix the GTK+ build.
  17074. Do not use broken/deprecated functions that won't be available
  17075. with G_DISABLE_DEPRECATED (used in debug builds).
  17076. * plugins/gtk/PluginPackageGtk.cpp:
  17077. (WebCore::PluginPackage::fetchInfo):
  17078. 2010-10-31 Kenichi Ishibashi <bashi@google.com>
  17079. Reviewed by Adam Barth.
  17080. V8 binding for DOMSettableTokenList
  17081. https://bugs.webkit.org/show_bug.cgi?id=47812
  17082. Tests for this change will be included in the change for supporting
  17083. the <output> element.
  17084. See https://bugs.webkit.org/show_bug.cgi?id=29363.
  17085. * bindings/v8/custom/V8DOMSettableTokenListCustom.cpp: Implemented.
  17086. (WebCore::V8DOMSettableTokenList::indexedPropertyGetter): Just calls DOMSettableTokenList::item(index).
  17087. 2010-10-31 Robert Hogan <robert@webkit.org>
  17088. Reviewed by Antonio Gomes.
  17089. [Qt] [Gtk] Plug-ins having upper case in mime type are failing to load
  17090. Qt and Gtk are case-sensitive when storing the declared mime-type
  17091. of plugins. Since plugin mime-types are lowercased prior to searching
  17092. for them in the plugin database, ensure they are loaded with the
  17093. mime-type in lower case too.
  17094. https://bugs.webkit.org/show_bug.cgi?id=36815
  17095. * plugins/gtk/PluginPackageGtk.cpp:
  17096. (WebCore::PluginPackage::fetchInfo):
  17097. * plugins/qt/PluginPackageQt.cpp:
  17098. (WebCore::PluginPackage::setMIMEDescription):
  17099. 2010-10-31 Robert Hogan <robert@webkit.org>
  17100. Reviewed by Antonio Gomes.
  17101. [Qt] Support nodesFromRect in DRT
  17102. Pass a Document object as a QWebElement.
  17103. https://bugs.webkit.org/show_bug.cgi?id=48716
  17104. * bridge/qt/qt_runtime.cpp:
  17105. (JSC::Bindings::convertValueToQVariant):
  17106. 2010-10-31 Peter Kasting <pkasting@google.com>
  17107. Reviewed by Adam Barth.
  17108. Treat GIFs with no loop count as "loop once".
  17109. https://bugs.webkit.org/show_bug.cgi?id=47302
  17110. Test: fast/images/gif-loop-count.html
  17111. * platform/image-decoders/gif/GIFImageDecoder.cpp:
  17112. (WebCore::GIFImageDecoder::repetitionCount):
  17113. (WebCore::GIFImageDecoder::gifComplete):
  17114. 2010-10-31 No'am Rosenthal <noam.rosenthal@nokia.com>
  17115. Reviewed by Andreas Kling.
  17116. [Texmap] [Qt] Texture mapper initial implementation
  17117. https://bugs.webkit.org/show_bug.cgi?id=47070
  17118. Build fix for X11.
  17119. No new tests; build fix.
  17120. * plugins/qt/PluginViewQt.cpp:
  17121. (WebCore::PluginView::invalidateRect):
  17122. (WebCore::PluginView::platformStart):
  17123. 2010-10-31 Andreas Kling <kling@webkit.org>
  17124. Reviewed by Dirk Schulze.
  17125. Remove the unused GraphicsContext::clipOutEllipseInRect(IntRect)
  17126. https://bugs.webkit.org/show_bug.cgi?id=48727
  17127. This function was added in <http://trac.webkit.org/changeset/18654> for CSS3 box-shadows.
  17128. All use of the function was removed in <http://trac.webkit.org/changeset/21601>
  17129. * platform/graphics/GraphicsContext.h:
  17130. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  17131. * platform/graphics/cg/GraphicsContextCG.cpp:
  17132. * platform/graphics/haiku/GraphicsContextHaiku.cpp:
  17133. (WebCore::GraphicsContext::clipOut):
  17134. * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
  17135. * platform/graphics/qt/GraphicsContextQt.cpp:
  17136. * platform/graphics/skia/GraphicsContextSkia.cpp:
  17137. (WebCore::GraphicsContext::clipOut):
  17138. * platform/graphics/wince/GraphicsContextWinCE.cpp:
  17139. * platform/graphics/wx/GraphicsContextWx.cpp:
  17140. 2010-10-31 Andreas Kling <kling@webkit.org>
  17141. Reviewed by Dirk Schulze.
  17142. [Qt] Respect the "antialiased" argument in clipConvexPolygon()
  17143. https://bugs.webkit.org/show_bug.cgi?id=48734
  17144. Set (or unset) the QPainter::Antialiased render hint for antialiased
  17145. clipping based on the "antialiased" argument.
  17146. No test since Qt doesn't have pixel tests yet.
  17147. * platform/graphics/qt/GraphicsContextQt.cpp:
  17148. (WebCore::GraphicsContext::clipConvexPolygon):
  17149. 2010-10-31 Andreas Kling <kling@webkit.org>
  17150. Reviewed by Dirk Schulze.
  17151. Remove the unused GraphicsContext::strokeRect(FloatRect)
  17152. https://bugs.webkit.org/show_bug.cgi?id=48726
  17153. This function was only implemented by GraphicsContextOpenVG and not
  17154. called from anywhere.
  17155. * platform/graphics/GraphicsContext.h:
  17156. * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
  17157. 2010-10-31 Andreas Kling <kling@webkit.org>
  17158. Reviewed by Dirk Schulze.
  17159. Remove the unused GraphicsContext::origin()
  17160. https://bugs.webkit.org/show_bug.cgi?id=48732
  17161. This method was not called from anywhere.
  17162. * platform/graphics/GraphicsContext.h:
  17163. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  17164. * platform/graphics/haiku/GraphicsContextHaiku.cpp:
  17165. * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
  17166. * platform/graphics/qt/GraphicsContextQt.cpp:
  17167. * platform/graphics/wince/GraphicsContextWinCE.cpp:
  17168. 2010-10-31 Andreas Kling <kling@webkit.org>
  17169. Reviewed by Dirk Schulze.
  17170. [Qt] Remove GraphicsContext::pen()
  17171. https://bugs.webkit.org/show_bug.cgi?id=48733
  17172. Have PathQt obtain the pen() through the platformContext() instead.
  17173. * platform/graphics/GraphicsContext.h:
  17174. * platform/graphics/qt/GraphicsContextQt.cpp:
  17175. * platform/graphics/qt/PathQt.cpp:
  17176. (WebCore::Path::strokeContains):
  17177. (WebCore::Path::strokeBoundingRect):
  17178. 2010-10-31 Sheriff Bot <webkit.review.bot@gmail.com>
  17179. Unreviewed, rolling out r70959.
  17180. http://trac.webkit.org/changeset/70959
  17181. https://bugs.webkit.org/show_bug.cgi?id=48731
  17182. It broke fast/events/spatial-navigation tests (Requested by
  17183. Ossy on #webkit).
  17184. * WebCore.xcodeproj/project.pbxproj:
  17185. * rendering/InlineBox.cpp:
  17186. (WebCore::InlineBox::adjustForFlippedBlocksWritingMode):
  17187. * rendering/InlineFlowBox.h:
  17188. (WebCore::InlineFlowBox::bottomLayoutOverflow):
  17189. (WebCore::InlineFlowBox::rightLayoutOverflow):
  17190. (WebCore::InlineFlowBox::bottomVisualOverflow):
  17191. (WebCore::InlineFlowBox::rightVisualOverflow):
  17192. * rendering/RenderBox.cpp:
  17193. * rendering/RenderBox.h:
  17194. * rendering/RenderInline.cpp:
  17195. (WebCore::RenderInline::linesBoundingBox):
  17196. (WebCore::RenderInline::linesVisibleOverflowBoundingBox):
  17197. (WebCore::RenderInline::clippedOverflowRectForRepaint):
  17198. * rendering/RenderText.cpp:
  17199. (WebCore::RenderText::linesBoundingBox):
  17200. 2010-10-30 Pavel Feldman <pfeldman@chromium.org>
  17201. Reviewed by Timothy Hatcher.
  17202. Web Inspector: new resources and network panel usability improvements.
  17203. https://bugs.webkit.org/show_bug.cgi?id=48680
  17204. By default, navigation clears network log, added 'preserve log' button,
  17205. that prevents log from being cleared.
  17206. Storing expanded state of all group items, restoring last selected item,
  17207. fall back to main frame's main resource by default.
  17208. Do not list XHRs and redirects in resources.
  17209. * English.lproj/localizedStrings.js:
  17210. * inspector/InspectorController.cpp:
  17211. (WebCore::InspectorController::didLoadResourceFromMemoryCache):
  17212. (WebCore::InspectorController::identifierForInitialRequest):
  17213. * inspector/front-end/NetworkPanel.js:
  17214. (WebInspector.NetworkPanel.prototype.get statusBarItems):
  17215. (WebInspector.NetworkPanel.prototype._positionSummaryBar):
  17216. (WebInspector.NetworkPanel.prototype._updateFilter):
  17217. (WebInspector.NetworkPanel.prototype._createStatusbarButtons):
  17218. (WebInspector.NetworkPanel.prototype._onPreserveLogClicked):
  17219. (WebInspector.NetworkPanel.prototype.reset):
  17220. (WebInspector.NetworkPanel.prototype.refreshResource):
  17221. * inspector/front-end/ResourceManager.js:
  17222. (WebInspector.ResourceManager.prototype.identifierForInitialRequest):
  17223. (WebInspector.ResourceManager.prototype.willSendRequest):
  17224. (WebInspector.ResourceManager.prototype.didLoadResourceFromMemoryCache):
  17225. (WebInspector.ResourceManager.prototype.setOverrideContent):
  17226. (WebInspector.ResourceManager.prototype.didCreateWebSocket):
  17227. * inspector/front-end/StoragePanel.js:
  17228. (WebInspector.StoragePanel):
  17229. (WebInspector.StoragePanel.prototype.show):
  17230. (WebInspector.StoragePanel.prototype._initDefaultSelection):
  17231. (WebInspector.StoragePanel.prototype.reset):
  17232. (WebInspector.StoragePanel.prototype.addResourceToFrame):
  17233. (WebInspector.StoragePanel.prototype.refreshResource):
  17234. (WebInspector.StoragePanel.prototype.showDatabase):
  17235. (WebInspector.BaseStorageTreeElement.prototype.onselect):
  17236. (WebInspector.StorageCategoryTreeElement):
  17237. (WebInspector.StorageCategoryTreeElement.prototype.get itemURL):
  17238. (WebInspector.StorageCategoryTreeElement.prototype.onselect):
  17239. (WebInspector.StorageCategoryTreeElement.prototype.onattach):
  17240. (WebInspector.StorageCategoryTreeElement.prototype.onexpand):
  17241. (WebInspector.StorageCategoryTreeElement.prototype.oncollapse):
  17242. (WebInspector.FrameTreeElement.prototype.get itemURL):
  17243. (WebInspector.FrameTreeElement.prototype.onselect):
  17244. (WebInspector.FrameResourceTreeElement.prototype.get itemURL):
  17245. (WebInspector.FrameResourceTreeElement.prototype.onselect):
  17246. (WebInspector.DatabaseTreeElement.prototype.get itemURL):
  17247. (WebInspector.DatabaseTreeElement.prototype.onselect):
  17248. (WebInspector.DatabaseTableTreeElement.prototype.get itemURL):
  17249. (WebInspector.DatabaseTableTreeElement.prototype.onselect):
  17250. (WebInspector.DOMStorageTreeElement.prototype.get itemURL):
  17251. (WebInspector.DOMStorageTreeElement.prototype.onselect):
  17252. (WebInspector.CookieTreeElement.prototype.get itemURL):
  17253. (WebInspector.CookieTreeElement.prototype.onselect):
  17254. (WebInspector.ApplicationCacheTreeElement.prototype.get itemURL):
  17255. (WebInspector.ApplicationCacheTreeElement.prototype.onselect):
  17256. 2010-10-30 Patrick Gansterer <paroga@webkit.org>
  17257. Unreviewed, build fix after r70846.
  17258. * platform/graphics/wince/ImageWinCE.cpp:
  17259. (WebCore::RGBA32Buffer::asNewNativeImage):
  17260. 2010-10-30 Dimitri Glazkov <dglazkov@chromium.org>
  17261. Unreviewed, rolling out r70984.
  17262. http://trac.webkit.org/changeset/70984
  17263. https://bugs.webkit.org/show_bug.cgi?id=46015
  17264. Made media/audio-delete-while-slider-thumb-clicked.html crash.
  17265. * Android.mk:
  17266. * CMakeLists.txt:
  17267. * GNUmakefile.am:
  17268. * WebCore.gypi:
  17269. * WebCore.pro:
  17270. * WebCore.xcodeproj/project.pbxproj:
  17271. * dom/ContainerNode.cpp:
  17272. (WebCore::notifyChildInserted):
  17273. * dom/EventContext.cpp: Removed.
  17274. * dom/EventContext.h: Removed.
  17275. * dom/Node.cpp:
  17276. (WebCore::Node::markAncestorsWithChildNeedsStyleRecalc):
  17277. (WebCore::Node::createRendererIfNeeded):
  17278. (WebCore::Node::eventParentNode):
  17279. (WebCore::Node::enclosingLinkEventParentOrSelf):
  17280. (WebCore::eventTargetAsSVGElementInstance):
  17281. (WebCore::eventTargetRespectingSVGTargetRules):
  17282. (WebCore::Node::eventAncestors):
  17283. (WebCore::Node::dispatchGenericEvent):
  17284. * dom/Node.h:
  17285. * dom/Text.cpp:
  17286. (WebCore::Text::createRenderer):
  17287. * dom/WindowEventContext.cpp: Removed.
  17288. * dom/WindowEventContext.h: Removed.
  17289. * inspector/InspectorDOMAgent.cpp:
  17290. (WebCore::InspectorDOMAgent::getEventListenersForNode):
  17291. * inspector/InspectorInstrumentation.cpp:
  17292. (WebCore::eventHasListeners):
  17293. (WebCore::InspectorInstrumentation::willDispatchEventImpl):
  17294. * inspector/InspectorInstrumentation.h:
  17295. (WebCore::InspectorInstrumentation::willDispatchEvent):
  17296. * page/EventHandler.cpp:
  17297. (WebCore::EventHandler::updateMouseEventTargetNode):
  17298. * svg/SVGElement.cpp:
  17299. (WebCore::SVGElement::eventParentNode):
  17300. * svg/SVGElement.h:
  17301. 2010-10-30 Dimitri Glazkov <dglazkov@chromium.org>
  17302. Reviewed by Darin Adler.
  17303. Implement shadow DOM-aware event targeting and introduce EventContext to track the context of each event dispatch.
  17304. https://bugs.webkit.org/show_bug.cgi?id=46015
  17305. This patch adds the notion of EventContext (and a very similar-acting WindowEventContext, specifically
  17306. for DOMWindow), an abstraction that carries information around dispatching an event for any given Node.
  17307. This abstraction is necessary to ensure that events, fired from shadow DOM nodes are properly retargeted to
  17308. appear as if they are coming from their host, thus never exposing the shadow DOM nodes to the world outside.
  17309. * Android.mk: Added EventContext, WindowEventContext files.
  17310. * CMakeLists.txt: Ditto.
  17311. * GNUmakefile.am: Ditto.
  17312. * WebCore.gypi: Ditto.
  17313. * WebCore.pro: Ditto.
  17314. * WebCore.xcodeproj/project.pbxproj: Ditto.
  17315. * dom/ContainerNode.cpp:
  17316. (WebCore::notifyChildInserted): Changed to be shadow DOM-aware.
  17317. * dom/EventContext.cpp: Added.
  17318. * dom/EventContext.h: Added.
  17319. * dom/Node.cpp:
  17320. (WebCore::Node::markAncestorsWithChildNeedsStyleRecalc): Changed to be shadow DOM-aware.
  17321. (WebCore::Node::createRendererIfNeeded): Ditto.
  17322. (WebCore::Node::parentOrHostNode): Added new helper method.
  17323. (WebCore::Node::enclosingLinkEventParentOrSelf): Changed to be shadow DOM-aware.
  17324. (WebCore::eventTargetRespectingSVGTargetRules): Collapsed two helper methods into one.
  17325. (WebCore::Node::eventAncestors): Refactored to collect a vector of EventContexts.
  17326. (WebCore::Node::topEventContext): Added.
  17327. (WebCore::eventHasListeners): Changed to use EventContexts.
  17328. (WebCore::Node::dispatchGenericEvent): Ditto.
  17329. * dom/Node.h: Removed eventParentNode that's no longer needed, added parentOrHostNode decl,
  17330. and changed signature of eventAncestors to use EventContexts.
  17331. * dom/Text.cpp:
  17332. (WebCore::Text::createRenderer): Changed to be shadow DOM-aware.
  17333. * inspector/InspectorDOMAgent.cpp:
  17334. (WebCore::InspectorDOMAgent::getEventListenersForNode): Changed to use EventContexts.
  17335. * page/EventHandler.cpp:
  17336. (WebCore::EventHandler::updateMouseEventTargetNode): Removed code that's no longer necessary.
  17337. * svg/SVGElement.cpp: Removed eventParentNode that's no longer needed.
  17338. * svg/SVGElement.h: Ditto.
  17339. * dom/WindowEventContext.cpp: Added.
  17340. * dom/WindowEventContext.h: Added.
  17341. 2010-10-30 Nikolas Zimmermann <nzimmermann@rim.com>
  17342. Reviewed by Rob Buis.
  17343. Convert SVGAnimatedNumber/SVGAnimatedNumberList to the new SVGAnimatedPropertyTearOff concept
  17344. https://bugs.webkit.org/show_bug.cgi?id=48686
  17345. Convert the next set of primitives to use the new SVG(Animated)PropertyTearOff concept.
  17346. Tests: svg/dom/SVGAnimatedNumber.html
  17347. svg/dom/SVGAnimatedNumberList.html
  17348. svg/dom/SVGNumber.html
  17349. * GNUmakefile.am: Add SVGAnimatedNumber.h / SVGAnimatedNumberList.h to build.
  17350. * WebCore.gypi: Ditto.
  17351. * WebCore.pro: Ditto.
  17352. * WebCore.vcproj/WebCore.vcproj: Ditto.
  17353. * WebCore.xcodeproj/project.pbxproj: Ditto.
  17354. * bindings/scripts/CodeGenerator.pm: Recognize SVGAnimatedNumber/SVGAnimatedNumberList as new style SVG animated properties. Remove SVGNumber from PODType hash.
  17355. * bindings/scripts/CodeGeneratorJS.pm: Remove special SVGNumber handing, it's obsolete now.
  17356. * bindings/scripts/CodeGeneratorObjC.pm: Add special SVGNumber handling, as it's the first of the converted dynamic SVGAnimatedProperty types that's not in WebCore namespace.
  17357. * bindings/scripts/CodeGeneratorV8.pm: Use AvoidInclusionOfType method from CodeGenerator.pm, remove special SVGNumber handling, that's obsolete now.
  17358. * rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
  17359. (WebCore::extractFloatValuesFromSVGNumberList): Adapt to SVGNumberList change, which is a plain Vector<float> now.
  17360. * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove SVGAnimatedNumber/SVGAnimatedNumberList handling.
  17361. * svg/DeprecatedSVGAnimatedTemplate.h: Ditto.
  17362. * svg/SVGAnimatedNumber.h: Added.
  17363. * svg/SVGAnimatedNumber.idl: Enable StrictTypeChecking.
  17364. * svg/SVGAnimatedNumberList.h: Added.
  17365. * svg/SVGAnimatedNumberList.idl: Ditto.
  17366. * svg/SVGComponentTransferFunctionElement.cpp: Switch animated float properties to the new SVGAnimatedNumber(List).
  17367. (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
  17368. (WebCore::SVGComponentTransferFunctionElement::parseMappedAttribute):
  17369. (WebCore::SVGComponentTransferFunctionElement::transferFunction):
  17370. * svg/SVGComponentTransferFunctionElement.h:
  17371. * svg/SVGFEColorMatrixElement.cpp: Ditto.
  17372. (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
  17373. (WebCore::SVGFEColorMatrixElement::parseMappedAttribute):
  17374. (WebCore::SVGFEColorMatrixElement::build):
  17375. * svg/SVGFEColorMatrixElement.h:
  17376. * svg/SVGFECompositeElement.h: Ditto.
  17377. * svg/SVGFEConvolveMatrixElement.cpp: Ditto.
  17378. (WebCore::SVGFEConvolveMatrixElement::SVGFEConvolveMatrixElement):
  17379. (WebCore::SVGFEConvolveMatrixElement::kernelUnitLengthXIdentifier): Added, replacing char[] hack by a static atomic string.
  17380. (WebCore::SVGFEConvolveMatrixElement::kernelUnitLengthYIdentifier): Ditto.
  17381. (WebCore::SVGFEConvolveMatrixElement::parseMappedAttribute):
  17382. (WebCore::SVGFEConvolveMatrixElement::build):
  17383. * svg/SVGFEConvolveMatrixElement.h: Switch animated float properties to the new SVGAnimatedNumber(List).
  17384. * svg/SVGFEDiffuseLightingElement.cpp: Ditto.
  17385. (WebCore::SVGFEDiffuseLightingElement::kernelUnitLengthXIdentifier): Remove trailing whitespace.
  17386. (WebCore::SVGFEDiffuseLightingElement::kernelUnitLengthYIdentifier): Ditto.
  17387. * svg/SVGFEDiffuseLightingElement.h: Switch animated float properties to the new SVGAnimatedNumber(List).
  17388. * svg/SVGFEDisplacementMapElement.h: Ditto.
  17389. * svg/SVGFEGaussianBlurElement.cpp: Ditto.
  17390. (WebCore::SVGFEGaussianBlurElement::stdDeviationXIdentifier): Remove trailing whitespace.
  17391. (WebCore::SVGFEGaussianBlurElement::stdDeviationYIdentifier): Ditto.
  17392. * svg/SVGFEGaussianBlurElement.h: Switch animated float properties to the new SVGAnimatedNumber(List).
  17393. * svg/SVGFELightElement.h: Ditto.
  17394. * svg/SVGFEMorphologyElement.cpp:
  17395. (WebCore::SVGFEMorphologyElement::radiusXIdentifier): Added, replacing char[] hack by a static atomic string.
  17396. (WebCore::SVGFEMorphologyElement::radiusYIdentifier): Ditto.
  17397. * svg/SVGFEMorphologyElement.h: Switch animated float properties to the new SVGAnimatedNumber(List).
  17398. * svg/SVGFEOffsetElement.h: Ditto.
  17399. * svg/SVGFESpecularLightingElement.cpp:
  17400. (WebCore::SVGFESpecularLightingElement::kernelUnitLengthXIdentifier): Remove trailing whitespace.
  17401. (WebCore::SVGFESpecularLightingElement::kernelUnitLengthYIdentifier): Ditto.
  17402. * svg/SVGFESpecularLightingElement.h: Switch animated float properties to the new SVGAnimatedNumber(List).
  17403. * svg/SVGFETurbulenceElement.cpp:
  17404. (WebCore::SVGFETurbulenceElement::baseFrequencyXIdentifier): Remove trailing whitespace.
  17405. (WebCore::SVGFETurbulenceElement::baseFrequencyYIdentifier): Ditto.
  17406. * svg/SVGFETurbulenceElement.h: Switch animated float properties to the new SVGAnimatedNumber(List).
  17407. * svg/SVGFilterElement.cpp:
  17408. (WebCore::SVGFilterElement::filterResXIdentifier): Remove trailing whitespace.
  17409. (WebCore::SVGFilterElement::filterResYIdentifier): Ditto.
  17410. * svg/SVGLengthList.idl: Remove leftover [SVGListProperty] marker.
  17411. * svg/SVGMarkerElement.cpp:
  17412. (WebCore::SVGMarkerElement::orientTypeIdentifier): Remove trailing whitespace.
  17413. (WebCore::SVGMarkerElement::orientAngleIdentifier): Ditto.
  17414. * svg/SVGNumber.idl: Remove [PODType] marker, add StrictTypeChecking.
  17415. * svg/SVGNumberList.cpp: Convert from SVGPODList<RefPtr<SVGPODListItem<float> > > to plain Vector<float>, just like it has been done for SVGLengthList before.
  17416. (WebCore::SVGNumberList::parse):
  17417. (WebCore::SVGNumberList::valueAsString):
  17418. * svg/SVGNumberList.h:
  17419. (WebCore::SVGNumberList::SVGNumberList):
  17420. * svg/SVGPathElement.h: Switch animated float properties to the new SVGAnimatedNumber(List).
  17421. * svg/SVGStopElement.h: Ditto.
  17422. * svg/SVGTextPositioningElement.cpp: Switch animated float properties to the new SVGAnimatedNumber(List).
  17423. (WebCore::SVGTextPositioningElement::SVGTextPositioningElement):
  17424. (WebCore::SVGTextPositioningElement::parseMappedAttribute):
  17425. * svg/SVGTextPositioningElement.h: Ditto.
  17426. * svg/properties/SVGPropertyTraits.h: Add SVGNumberList handling.
  17427. 2010-10-29 Daniel Bates <dbates@rim.com>
  17428. No review, rolling out 70971.
  17429. http://trac.webkit.org/changeset/70971
  17430. https://bugs.webkit.org/show_bug.cgi?id=6751
  17431. Rolling out changeset 70971 <http://trac.webkit.org/changeset/70971> since
  17432. it caused layout test failures on all bots. In particular, the
  17433. child count in a generated frame name differs after this patch. We need
  17434. to look into this further.
  17435. Test: fast/frames/iframe-set-inner-html.html
  17436. * html/HTMLFrameElementBase.cpp:
  17437. (WebCore::HTMLFrameElementBase::openURL):
  17438. (WebCore::HTMLFrameElementBase::setName):
  17439. * html/HTMLFrameElementBase.h:
  17440. * loader/DocumentLoader.cpp:
  17441. (WebCore::DocumentLoader::mainResource):
  17442. * loader/FrameLoader.cpp:
  17443. (WebCore::FrameLoader::loadURLIntoChildFrame):
  17444. (WebCore::FrameLoader::commitProvisionalLoad):
  17445. * loader/HistoryController.cpp:
  17446. (WebCore::HistoryController::saveDocumentState):
  17447. (WebCore::HistoryController::restoreDocumentState):
  17448. (WebCore::HistoryController::createItem):
  17449. (WebCore::HistoryController::currentFramesMatchItem):
  17450. * loader/ProgressTracker.cpp:
  17451. (WebCore::ProgressTracker::progressStarted):
  17452. (WebCore::ProgressTracker::progressCompleted):
  17453. * loader/archive/cf/LegacyWebArchive.cpp:
  17454. (WebCore::LegacyWebArchive::create):
  17455. * page/FrameTree.cpp:
  17456. (WebCore::FrameTree::setName):
  17457. (WebCore::FrameTree::clearName):
  17458. (WebCore::FrameTree::uniqueChildName):
  17459. (WebCore::FrameTree::child):
  17460. (WebCore::FrameTree::find):
  17461. * page/FrameTree.h:
  17462. (WebCore::FrameTree::name):
  17463. 2010-10-28 Antonio Gomes <agomes@rim.com>
  17464. Reviewed by Ojan Vafai.
  17465. Needs a "LinuxEditingBehavior", perhaps with a better name
  17466. https://bugs.webkit.org/show_bug.cgi?id=36627
  17467. Added EditingUnixBehavior editing type aim to cover the cases when
  17468. neither Mac or Windows behaviors are appropriated.
  17469. It was decided to name it Unix not Linux.
  17470. No new tests. The current editing tests that involve platform specific
  17471. bahaviors are coded so that they go through all editing behavior
  17472. types possible. There will be a follow up bug where all of them will
  17473. be updated to include the new editing behavior ("unix").
  17474. * editing/EditingBehaviorTypes.h:
  17475. * page/Settings.cpp:
  17476. (WebCore::editingBehaviorTypeForPlatform):
  17477. (WebCore::Settings::Settings):
  17478. 2010-10-29 Daniel Bates <dbates@rim.com>
  17479. Reviewed by Adam Barth.
  17480. For unnamed frames, window.name returns a generated name
  17481. https://bugs.webkit.org/show_bug.cgi?id=6751
  17482. Fixes an issue where the window.name of an unnamed frame returns
  17483. a unique generated name that is used internally to identify the
  17484. frame. Instead, we should return an empty string as implied by
  17485. section 5.1.6 of the HTML5 spec. (http://www.w3.org/TR/html5/browsers.html#browsing-context-names).
  17486. This section describes that a browsing context can have no name or be
  17487. the empty string.
  17488. * html/HTMLFrameElementBase.cpp:
  17489. (WebCore::HTMLFrameElementBase::openURL): Removed ASSERT for empty
  17490. frame name since this is valid as per the HTML5 spec.
  17491. (WebCore::HTMLFrameElementBase::setName): Removed the call to FrameTree::uniqueChildName()
  17492. since the loader code no longer depends on the frame name being unique.
  17493. * html/HTMLFrameElementBase.h:
  17494. * loader/DocumentLoader.cpp:
  17495. (WebCore::DocumentLoader::mainResource): Use FrameTree::uniqueName().
  17496. * loader/FrameLoader.cpp:
  17497. (WebCore::FrameLoader::loadURLIntoChildFrame): Ditto.
  17498. (WebCore::FrameLoader::commitProvisionalLoad): Ditto.
  17499. * loader/HistoryController.cpp:
  17500. (WebCore::HistoryController::saveDocumentState): Ditto.
  17501. (WebCore::HistoryController::restoreDocumentState): Ditto.
  17502. (WebCore::HistoryController::createItem):
  17503. (WebCore::HistoryController::currentFramesMatchItem): Ditto.
  17504. * loader/ProgressTracker.cpp:
  17505. (WebCore::ProgressTracker::progressStarted): Ditto.
  17506. (WebCore::ProgressTracker::progressCompleted): Ditto.
  17507. * loader/archive/cf/LegacyWebArchive.cpp:
  17508. (WebCore::LegacyWebArchive::create): Ditto.
  17509. * page/FrameTree.cpp:
  17510. (WebCore::FrameTree::setName): Modified to store the DOM-specified
  17511. name of the frame.
  17512. (WebCore::FrameTree::clearName):
  17513. (WebCore::FrameTree::uniqueChildName): Use FrameTree::uniqueName().
  17514. (WebCore::FrameTree::child): Ditto.
  17515. (WebCore::FrameTree::find): Ditto.
  17516. * page/FrameTree.h:
  17517. (WebCore::FrameTree::uniqueName): Added.
  17518. 2010-10-29 Darin Adler <darin@apple.com>
  17519. Try to fix build.
  17520. * page/ContextMenuController.cpp: Added include of BackForwardController.h.
  17521. * page/DOMWindow.cpp: Ditto.
  17522. * page/History.cpp: Ditto.
  17523. * platform/ContextMenu.cpp: Ditto.
  17524. 2010-10-29 Darin Adler <darin@apple.com>
  17525. Reviewed by Sam Weinig.
  17526. More back/forward refactoring
  17527. * WebCore.exp.in: Updated.
  17528. * GNUmakefile.am: Removed BackForwardControllerClient.h.
  17529. * WebCore.gypi: Ditto.
  17530. * WebCore.pro: Ditto.
  17531. * WebCore.vcproj/WebCore.vcproj: Ditto.
  17532. * WebCore.xcodeproj/project.pbxproj: Ditto.
  17533. * history/BackForwardControllerClient.h: Removed.
  17534. * history/BackForwardController.cpp:
  17535. (WebCore::BackForwardController::BackForwardController):
  17536. Set up just m_client.
  17537. (WebCore::BackForwardController::~BackForwardController):
  17538. Removed call to backForwardControllerDestroyed.
  17539. (WebCore::BackForwardController::canGoBackOrForward): Added.
  17540. (WebCore::BackForwardController::goBackOrForward): Added.
  17541. (WebCore::BackForwardController::goBack): Added.
  17542. (WebCore::BackForwardController::goForward): Added.
  17543. (WebCore::BackForwardController::addItem): Added.
  17544. (WebCore::BackForwardController::setCurrentItem): Added.
  17545. (WebCore::BackForwardController::count): Added.
  17546. (WebCore::BackForwardController::backCount): Added.
  17547. (WebCore::BackForwardController::forwardCount): Added.
  17548. (WebCore::BackForwardController::itemAtIndex): Added.
  17549. (WebCore::BackForwardController::isActive): Added.
  17550. (WebCore::BackForwardController::close): Added.
  17551. * history/BackForwardController.h: Added functions from Page
  17552. and BackForwardList that should be called here instead.
  17553. Note that BackForwardList is to be renamed BackForwardClient soon.
  17554. * history/BackForwardList.h: Removed many now-unneeded
  17555. virtual functions.
  17556. * history/BackForwardListImpl.h: Moved BackForwardListClient
  17557. in here.
  17558. * history/PageCache.cpp:
  17559. (WebCore::logCanCachePageDecision): Use backForward().
  17560. (WebCore::PageCache::canCache): Ditto.
  17561. * loader/FrameLoader.cpp:
  17562. (WebCore::FrameLoader::transitionToCommitted): Removed unneeded
  17563. null check of backFowardList, which is never null.
  17564. (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Use backForward.
  17565. (WebCore::FrameLoader::didFirstLayout): Ditto.
  17566. (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): Ditto.
  17567. (WebCore::FrameLoader::checkDidPerformFirstNavigation): Ditto.
  17568. * loader/HistoryController.cpp:
  17569. (WebCore::HistoryController::goToItem): Ditto.
  17570. (WebCore::HistoryController::updateForStandardLoad): Ditto.
  17571. (WebCore::HistoryController::updateForRedirectWithLockedBackForwardList): Ditto.
  17572. (WebCore::HistoryController::updateBackForwardListClippedAtTarget): Ditto.
  17573. (WebCore::HistoryController::pushState): Ditto.
  17574. * loader/NavigationScheduler.cpp:
  17575. (WebCore::ScheduledHistoryNavigation::fire): Ditto.
  17576. (WebCore::NavigationScheduler::scheduleHistoryNavigation): Ditto.
  17577. * page/ContextMenuController.cpp:
  17578. (WebCore::ContextMenuController::contextMenuItemSelected): Ditto.
  17579. * page/DOMWindow.cpp:
  17580. (WebCore::DOMWindow::close): Ditto.
  17581. * page/History.cpp:
  17582. (WebCore::History::length): Ditto.
  17583. * page/Page.cpp:
  17584. (WebCore::Page::Page): Use more adoptPtr. Use backForwardClient instead of
  17585. backForwardControllerClient.
  17586. (WebCore::Page::~Page): Use backForward.
  17587. (WebCore::Page::backForwardList): Ditto.
  17588. (WebCore::Page::goBack): Ditto.
  17589. (WebCore::Page::goForward): Ditto.
  17590. (WebCore::Page::canGoBackOrForward): Ditto.
  17591. (WebCore::Page::goBackOrForward): Ditto.
  17592. (WebCore::Page::getHistoryLength): Ditto.
  17593. (WebCore::Page::PageClients::PageClients): Made non-inline.
  17594. (WebCore::Page::PageClients::~PageClients): Ditto.
  17595. * page/Page.h: Made PageClients constructor and destructor non-inline.
  17596. Added backForward function. Marked old functions as deprecated.
  17597. * page/Settings.cpp:
  17598. (WebCore::Settings::setUsesPageCache): Use backForward.
  17599. * platform/ContextMenu.cpp:
  17600. (WebCore::ContextMenu::populate): Ditto.
  17601. (WebCore::ContextMenu::checkOrEnableIfNeeded): Ditto.
  17602. * wml/WMLDoElement.cpp:
  17603. (WebCore::WMLDoElement::defaultEventHandler): Ditto.
  17604. * wml/WMLDocument.cpp:
  17605. (WebCore::WMLDocument::finishedParsing): Ditto.
  17606. * wml/WMLPageState.cpp:
  17607. (WebCore::WMLPageState::reset): Ditto.
  17608. (WebCore::tryAccessHistoryURLs): Ditto.
  17609. * wml/WMLPrevElement.cpp:
  17610. (WebCore::WMLPrevElement::executeTask): Ditto.
  17611. 2010-10-29 David Hyatt <hyatt@apple.com>
  17612. Reviewed by Sam Weinig.
  17613. https://bugs.webkit.org/show_bug.cgi?id=48663
  17614. Make repaint invalidation work with vertical lines. Rewrite linesBoundingBox for RenderText and
  17615. RenderInline to give the correct rectangle back for vertical lines. Also patch linesVisibleOverflowBoundingBox
  17616. to give back the correct rectangle for vertical lines.
  17617. Fix bugs in the overflow accessors of InlineFlowBox when m_overflow was 0.
  17618. Added fast/repaint/inline-vertical-lr-overflow.html
  17619. * rendering/InlineBox.cpp:
  17620. (WebCore::InlineBox::adjustForFlippedBlocksWritingMode):
  17621. * rendering/InlineFlowBox.h:
  17622. (WebCore::InlineFlowBox::logicalLeftVisibleOverflow):
  17623. (WebCore::InlineFlowBox::logicalRightVisibleOverflow):
  17624. (WebCore::InlineFlowBox::bottomLayoutOverflow):
  17625. (WebCore::InlineFlowBox::rightLayoutOverflow):
  17626. (WebCore::InlineFlowBox::bottomVisualOverflow):
  17627. (WebCore::InlineFlowBox::rightVisualOverflow):
  17628. * rendering/RenderBox.cpp:
  17629. (WebCore::RenderBox::adjustForFlippedBlocksWritingMode):
  17630. * rendering/RenderBox.h:
  17631. * rendering/RenderInline.cpp:
  17632. (WebCore::RenderInline::linesBoundingBox):
  17633. (WebCore::RenderInline::linesVisibleOverflowBoundingBox):
  17634. (WebCore::RenderInline::clippedOverflowRectForRepaint):
  17635. * rendering/RenderText.cpp:
  17636. (WebCore::RenderText::linesBoundingBox):
  17637. 2010-10-29 Mike Lawther <mikelawther@chromium.org>
  17638. Reviewed by James Robinson.
  17639. Fix canvas/philip/tests/2d.imageData.get.source.negative
  17640. https://bugs.webkit.org/show_bug.cgi?id=48277
  17641. Handle negative width/height.
  17642. See http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#pixel-manipulation
  17643. * html/canvas/CanvasRenderingContext2D.cpp:
  17644. (WebCore::CanvasRenderingContext2D::getImageData):
  17645. 2010-10-29 Kavita Kanetkar <kkanetkar@chromium.org>
  17646. Reviewed by Pavel Feldman.
  17647. Web Inspector: FileSystem integration
  17648. https://bugs.webkit.org/show_bug.cgi?id=45982
  17649. Adding filesystem support for Inspector under storage tab. This fetches root paths for
  17650. temporary and persistent filesystems and allows "reveal folder in OS" option that
  17651. launches native file browser. Currently this feature is disabled for non-chromium platforms.
  17652. * CMakeLists.txt:
  17653. * English.lproj/localizedStrings.js:
  17654. * GNUmakefile.am:
  17655. * WebCore.gypi:
  17656. * WebCore.pro:
  17657. * WebCore.vcproj/WebCore.vcproj:
  17658. * inspector/CodeGeneratorInspector.pm:
  17659. * inspector/Inspector.idl:
  17660. * inspector/InspectorController.cpp:
  17661. (WebCore::InspectorController::connectFrontend):
  17662. (WebCore::InspectorController::releaseFrontendLifetimeAgents):
  17663. * inspector/InspectorController.h:
  17664. (WebCore::InspectorController::fileSystemAgent):
  17665. * inspector/InspectorFileSystemAgent.cpp: Added.
  17666. * inspector/InspectorFileSystemAgent.h: Added.
  17667. * inspector/front-end/FileSystemView.js: Added.
  17668. * inspector/front-end/Settings.js:
  17669. * inspector/front-end/StoragePanel.js:
  17670. (WebInspector.StoragePanel):
  17671. (WebInspector.StoragePanel.prototype.reset):
  17672. (WebInspector.StoragePanel.prototype.addFileSystem):
  17673. (WebInspector.StoragePanel.prototype.showFileSystem):
  17674. (WebInspector.StoragePanel.prototype.updateFileSystemPath):
  17675. (WebInspector.StoragePanel.prototype.updateFileSystemError):
  17676. (WebInspector.FileSystemTreeElement):
  17677. (WebInspector.FileSystemTreeElement.prototype.onselect):
  17678. * inspector/front-end/WebKit.qrc:
  17679. * inspector/front-end/inspector.css:
  17680. (.file-system-storage-tree-item .icon):
  17681. * inspector/front-end/inspector.html:
  17682. * inspector/front-end/inspector.js:
  17683. (WebInspector.updateResource):
  17684. (WebInspector._addFileSystemOrigin):
  17685. (WebInspector.didGetFileSystemPath):
  17686. (WebInspector.didGetFileSystemError):
  17687. (WebInspector.reset):
  17688. * platform/AsyncFileSystem.h:
  17689. (WebCore::AsyncFileSystem::root):
  17690. * platform/FileSystem.h:
  17691. * platform/chromium/ChromiumBridge.h:
  17692. * platform/chromium/FileSystemChromium.cpp:
  17693. (WebCore::revealFolderInOS):
  17694. 2010-10-29 Ryosuke Niwa <rniwa@webkit.org>
  17695. Reviewed by Darin Adler.
  17696. Remove RenderTextControl::setSelectionRange
  17697. https://bugs.webkit.org/show_bug.cgi?id=47870
  17698. Made RenderTextControl::setSelectionRange a global function.
  17699. Removed setSelectionStart, setSelectionEnd, and select from RenderTextControl.
  17700. No new tests are added since there is no behavioral change.
  17701. * accessibility/AccessibilityRenderObject.cpp:
  17702. (WebCore::AccessibilityRenderObject::setSelectedTextRange): Calls setSelectedTextRange.
  17703. * dom/InputElement.cpp:
  17704. (WebCore::InputElement::updateSelectionRange): Ditto.
  17705. * html/HTMLFormControlElement.cpp:
  17706. (WebCore::HTMLTextFormControlElement::setSelectionStart): Ditto.
  17707. (WebCore::HTMLTextFormControlElement::setSelectionEnd): Ditto.
  17708. (WebCore::HTMLTextFormControlElement::select): Ditto.
  17709. (WebCore::HTMLTextFormControlElement::setSelectionRange): Ditto.
  17710. * rendering/RenderTextControl.cpp:
  17711. (WebCore::RenderTextControl::hasVisibleTextArea): Added.
  17712. (WebCore::setSelectionRange): See above.
  17713. * rendering/RenderTextControl.h:
  17714. 2010-10-29 Carlos Garcia Campos <cgarcia@igalia.com>
  17715. Reviewed by Andreas Kling.
  17716. [GTK] Crash in TextEncoding.cpp when using glib unicode
  17717. https://bugs.webkit.org/show_bug.cgi?id=48521
  17718. When the conversion to UTF-8 fails, try to encode the original string
  17719. without normalizing. Fixes tests cases:
  17720. fast/url/anchor.html
  17721. fast/url/query.html
  17722. fast/url/standard-url.html
  17723. * platform/text/TextEncoding.cpp:
  17724. (WebCore::TextEncoding::encode):
  17725. 2010-10-29 Benjamin Poulain <benjamin.poulain@nokia.com>
  17726. Reviewed by Antonio Gomes.
  17727. TextureMapperGL get the driver info log but do not use it
  17728. https://bugs.webkit.org/show_bug.cgi?id=48247
  17729. Remove the call to glGetProgramInfoLog().
  17730. * platform/graphics/opengl/TextureMapperGL.cpp:
  17731. (WebCore::TexmapShaderInfo::createShaderProgram):
  17732. 2010-10-29 Benjamin Kalman <kalman@google.com>
  17733. Reviewed by Tony Chang.
  17734. Deleting contenteditable text to the left of a non-contenteditable span inserts unnecessary placeholder <br/>
  17735. https://bugs.webkit.org/show_bug.cgi?id=48658
  17736. * WebCore.exp.in: Update is{Start,End}OfParagraph symbols.
  17737. * editing/DeleteSelectionCommand.cpp:
  17738. (WebCore::DeleteSelectionCommand::doApply): Cross editability boundaries when determining whether to insert placeholder.
  17739. * editing/visible_units.cpp: Allow editability boundary to be crossed in {start,end,isStart,isEnd}OfParagraph.
  17740. (WebCore::startOfParagraph): Also, avoid returning a position where renderer can't accept caret, like in endOfParagraph.
  17741. (WebCore::endOfParagraph):
  17742. (WebCore::isStartOfParagraph):
  17743. (WebCore::isEndOfParagraph):
  17744. * editing/visible_units.h: Ditto.
  17745. 2010-10-29 Pavel Feldman <pfeldman@chromium.org>
  17746. Reviewed by Timothy Hatcher.
  17747. Web Inspector: last active panel is not restored upon opening inspector.
  17748. https://bugs.webkit.org/show_bug.cgi?id=48668
  17749. * inspector/Inspector.idl:
  17750. * inspector/InspectorController.cpp:
  17751. (WebCore::InspectorController::InspectorController):
  17752. (WebCore::InspectorController::inspect):
  17753. (WebCore::InspectorController::showPanel):
  17754. (WebCore::InspectorController::disconnectFrontend):
  17755. (WebCore::InspectorController::populateScriptObjects):
  17756. * inspector/InspectorController.h:
  17757. * inspector/InspectorState.cpp:
  17758. (WebCore::InspectorState::InspectorState):
  17759. * inspector/front-end/Settings.js:
  17760. (WebInspector.Settings):
  17761. * inspector/front-end/inspector.js:
  17762. (WebInspector.set currentPanel):
  17763. (WebInspector.doLoadedDone.onPopulateScriptObjects):
  17764. (WebInspector.doLoadedDone):
  17765. (WebInspector.documentClick.followLink):
  17766. (WebInspector.documentClick):
  17767. 2010-10-28 Michael Nordman <michaeln@google.com>
  17768. Reviewed by ap.
  17769. [Chrome] Fix an appcache regression introduced in r69226
  17770. https://bugs.webkit.org/show_bug.cgi?id=48592
  17771. Define a new ApplicationCacheHost method for the specific case of main resource redirect handling.
  17772. Tests: the existing layout test applies
  17773. * loader/MainResourceLoader.cpp: use the newly introduced method
  17774. (WebCore::MainResourceLoader::willSendRequest):
  17775. * loader/appcache/ApplicationCacheHost.cpp:
  17776. (WebCore::ApplicationCacheHost::maybeLoadMainResourceForRedirect):
  17777. * loader/appcache/ApplicationCacheHost.h:
  17778. 2010-10-29 Eric Carlson <eric.carlson@apple.com>
  17779. Reviewed by Adam Roben.
  17780. Navigating to a .wav file creates a plugin document but should create a media document
  17781. https://bugs.webkit.org/show_bug.cgi?id=48546
  17782. <rdar://problem/8606105>
  17783. Test: media/media-can-play-wav-audio.html
  17784. * platform/MIMETypeRegistry.cpp: Add mapping from ".wav" to "audio/x-wav".
  17785. 2010-10-29 Aaron Colwell <acolwell@chromium.org>
  17786. Reviewed by James Robinson.
  17787. Created helper method WebCore::PlatformContextSkia::getNormalizedAlpha()
  17788. to centralize alpha rounding & clipping logic.
  17789. https://bugs.webkit.org/show_bug.cgi?id=48094
  17790. Test: media/video-canvas-alpha.html
  17791. * platform/graphics/skia/ImageSkia.cpp:
  17792. (WebCore::paintSkBitmap):
  17793. * platform/graphics/skia/PlatformContextSkia.cpp:
  17794. (WebCore::PlatformContextSkia::getNormalizedAlpha):
  17795. * platform/graphics/skia/PlatformContextSkia.h:
  17796. 2010-10-29 Nikolas Zimmermann <nzimmermann@rim.com>
  17797. Reviewed by Dirk Schulze.
  17798. ASSERT when SVGAnimatedProperty instance is assigned to multiple elements.
  17799. https://bugs.webkit.org/show_bug.cgi?id=48555
  17800. Test: svg/custom/insertItemBefore-from-non-list-origin.svg
  17801. * bindings/scripts/CodeGeneratorJS.pm: Include SVGAnimatedPropertyTearOff.h instead of SVGPropertyTearOff.h
  17802. * bindings/scripts/CodeGeneratorObjC.pm: Ditto.
  17803. * bindings/scripts/CodeGeneratorV8.pm: Ditto.
  17804. * svg/properties/SVGAnimatedListPropertyTearOff.h:
  17805. (WebCore::SVGAnimatedListPropertyTearOff::isAnimatedListTearOff): Return true.
  17806. (WebCore::SVGAnimatedListPropertyTearOff::removeItemFromList): Devirtualize function.
  17807. * svg/properties/SVGAnimatedProperty.h:
  17808. (WebCore::SVGAnimatedProperty::isAnimatedListTearOff): Return false.
  17809. * svg/properties/SVGListPropertyTearOff.h:
  17810. (WebCore::SVGListPropertyTearOff::removeItemFromListIfNeeded): Only try to remove the passed item from its list, if its actually a list and not just a SVGAnimatedProperty.
  17811. 2010-10-29 David Hyatt <hyatt@apple.com>
  17812. Reviewed by Adam Roben.
  17813. https://bugs.webkit.org/show_bug.cgi?id=48444
  17814. Fix the dirty rect checks in RenderBoxLineList, InlineFlowBox, InlineTextBox. They were still assuming horizontal-tb writing-mode.
  17815. This patch makes the checks directionally abstract and also refactors the checks in RenderLineBoxList to share code.
  17816. No tests yet, since the invalidation code for inlines still assumes horizontal-tb. That will be fixed in a follow-up bug,
  17817. and then repaint tests will be easy to write.
  17818. * rendering/InlineBox.cpp:
  17819. (WebCore::InlineBox::adjustForFlippedBlocksWritingMode):
  17820. * rendering/InlineBox.h:
  17821. * rendering/InlineFlowBox.cpp:
  17822. (WebCore::InlineFlowBox::paint):
  17823. * rendering/InlineTextBox.cpp:
  17824. (WebCore::InlineTextBox::paint):
  17825. * rendering/RenderBox.cpp:
  17826. (WebCore::RenderBox::convertFromFlippedWritingMode):
  17827. * rendering/RenderBox.h:
  17828. * rendering/RenderLineBoxList.cpp:
  17829. (WebCore::RenderLineBoxList::rangeIntersectsDirtyRect):
  17830. (WebCore::RenderLineBoxList::anyLineIntersectsDirtyRect):
  17831. (WebCore::RenderLineBoxList::lineIntersectsDirtyRect):
  17832. (WebCore::RenderLineBoxList::paint):
  17833. (WebCore::RenderLineBoxList::hitTest):
  17834. * rendering/RenderLineBoxList.h:
  17835. 2010-10-29 Patrick Gansterer <paroga@webkit.org>
  17836. Reviewed by Adam Roben.
  17837. Cleanup createGlobalImageFileDescriptor in ClipboardWin
  17838. https://bugs.webkit.org/show_bug.cgi?id=48189
  17839. * platform/win/ClipboardWin.cpp:
  17840. (WebCore::createGlobalURLContent):
  17841. (WebCore::createGlobalUrlFileDescriptor):
  17842. (WebCore::ClipboardWin::writeURL):
  17843. 2010-10-29 Dmitry Titov <dimich@chromium.org>
  17844. [Chromium clang] Unreviewed fix removing compiler warning.
  17845. If GIFImageReader is a struct, don't call it a class.
  17846. * platform/image-decoders/gif/GIFImageDecoder.h:
  17847. 2010-10-29 Alexey Proskuryakov <ap@apple.com>
  17848. Fix the world (d'oh!)
  17849. https://bugs.webkit.org/show_bug.cgi?id=48576
  17850. Let WebKit2 client know when a frame is a frameset
  17851. * html/HTMLFrameSetElement.cpp:
  17852. (WebCore::HTMLFrameSetElement::insertedIntoDocument):
  17853. (WebCore::HTMLFrameSetElement::removedFromDocument):
  17854. Call base class version.
  17855. 2010-10-29 Jian Li <jianli@chromium.org>
  17856. Unreviewed. Fix chromium build break.
  17857. * bindings/v8/custom/V8FileReaderCustom.cpp:
  17858. (WebCore::V8FileReader::resultAccessorGetter):
  17859. 2010-10-29 Jian Li <jianli@chromium.org>
  17860. Reviewed by David Levin.
  17861. Support readAsArrayBuffer in FileReader and FileReaderSync
  17862. https://bugs.webkit.org/show_bug.cgi?id=47691
  17863. Merge the similar code in FileReader and FileReaderSync into
  17864. FileReaderLoader.
  17865. Test cases have been added to read-file-test-cases.js.
  17866. * Android.jscbindings.mk:
  17867. * CMakeLists.txt:
  17868. * GNUmakefile.am:
  17869. * WebCore.gypi:
  17870. * WebCore.pro:
  17871. * WebCore.vcproj/WebCore.vcproj:
  17872. * WebCore.xcodeproj/project.pbxproj:
  17873. * bindings/v8/custom/V8FileReaderCustom.cpp: Added.
  17874. * fileapi/FileReader.cpp:
  17875. (WebCore::FileReader::FileReader):
  17876. (WebCore::FileReader::readAsArrayBuffer):
  17877. (WebCore::FileReader::readAsBinaryString):
  17878. (WebCore::FileReader::readAsText):
  17879. (WebCore::FileReader::readAsDataURL):
  17880. (WebCore::FileReader::readInternal):
  17881. (WebCore::FileReader::doAbort):
  17882. (WebCore::FileReader::terminate):
  17883. (WebCore::FileReader::start):
  17884. (WebCore::FileReader::didStartLoading):
  17885. (WebCore::FileReader::didReceiveData):
  17886. (WebCore::FileReader::didFinishLoading):
  17887. (WebCore::FileReader::didFail):
  17888. (WebCore::FileReader::fireEvent):
  17889. (WebCore::FileReader::arrayBufferResult):
  17890. (WebCore::FileReader::stringResult):
  17891. * fileapi/FileReader.h:
  17892. (WebCore::FileReader::readType):
  17893. * fileapi/FileReader.idl:
  17894. * fileapi/FileReaderLoader.cpp: Added.
  17895. * fileapi/FileReaderLoader.h: Added.
  17896. * fileapi/FileReaderLoaderClient.h: Added.
  17897. * fileapi/FileReaderSync.cpp:
  17898. (WebCore::FileReaderSync::FileReaderSync):
  17899. (WebCore::FileReaderSync::readAsArrayBuffer):
  17900. (WebCore::FileReaderSync::readAsBinaryString):
  17901. (WebCore::FileReaderSync::readAsText):
  17902. (WebCore::FileReaderSync::readAsDataURL):
  17903. (WebCore::FileReaderSync::startLoading):
  17904. * fileapi/FileReaderSync.h:
  17905. * fileapi/FileReaderSync.idl:
  17906. * html/canvas/ArrayBuffer.cpp:
  17907. (WebCore::ArrayBuffer::create):
  17908. * html/canvas/ArrayBuffer.h:
  17909. * loader/ThreadableLoaderClient.h:
  17910. 2010-10-29 Tony Chang <tony@chromium.org>
  17911. Unreviewed, rolling out r70850.
  17912. http://trac.webkit.org/changeset/70850
  17913. https://bugs.webkit.org/show_bug.cgi?id=45640
  17914. chromium and qt pixel test regressions
  17915. * dom/Document.cpp:
  17916. * dom/Document.h:
  17917. * page/FrameView.cpp:
  17918. (WebCore::FrameView::invalidateRect):
  17919. (WebCore::FrameView::repaintContentRectangle):
  17920. (WebCore::FrameView::doDeferredRepaints):
  17921. * page/FrameView.h:
  17922. * rendering/RenderBlock.cpp:
  17923. (WebCore::RenderBlock::paintContents):
  17924. * rendering/RenderLayer.cpp:
  17925. (WebCore::RenderLayer::paintLayer):
  17926. 2010-10-29 Alexey Proskuryakov <ap@apple.com>
  17927. Reviewed by Darin Adler.
  17928. https://bugs.webkit.org/show_bug.cgi?id=48576
  17929. Let WebKit2 client know when a frame is a frameset
  17930. This can change in two cases, when document changes, and when frame is navigated to another
  17931. document.
  17932. * dom/Document.cpp: (WebCore::Document::documentDidBecomeActive): Update the client when
  17933. a document is restored from page cache.
  17934. * loader/FrameLoaderClient.h: Added a new client call to notify client.
  17935. * html/HTMLFrameSetElement.h:
  17936. * html/HTMLFrameSetElement.cpp:
  17937. (WebCore::HTMLFrameSetElement::insertedIntoDocument):
  17938. (WebCore::HTMLFrameSetElement::removedFromDocument):
  17939. Update the client when document changes, potentially becoming a frameset. Per WebCore
  17940. definition, a document is a frameset when it has a FRAMESET element as direct child of
  17941. document element (it may also have body elements).
  17942. * loader/EmptyClients.h: (WebCore::EmptyFrameLoaderClient::dispatchDidBecomeFrameset):
  17943. Added an empty implementation.
  17944. 2010-10-29 Csaba Osztrogonác <ossy@webkit.org>
  17945. Unreviewed fix. Touch WebCorePrefix.h to fix incremental build failure after r70878.
  17946. * WebCorePrefix.h:
  17947. 2010-10-29 Carlos Garcia Campos <cgarcia@igalia.com>
  17948. Reviewed by Martin Robinson.
  17949. [GTK] Handle surrogate pairs in TextBreakIteratorGtk
  17950. https://bugs.webkit.org/show_bug.cgi?id=48227
  17951. TextBreakIteratorGtk uses UTF-8 because it's what pango expects, but we
  17952. need to return indices for the given input string that are in UTF-16.
  17953. The number of characters is the same for both UTF-16 and UTF-8 except when
  17954. the input string contains surrogate pairs. We need to keep both, the
  17955. index for the UTF-8 string to be used internally, and the index for the
  17956. UTF-16 string to be used as return value of the iterator interface. It
  17957. fixes test fast/forms/textarea-maxlength.html
  17958. * platform/text/gtk/TextBreakIteratorGtk.cpp:
  17959. (WebCore::CharacterIterator::getText):
  17960. (WebCore::CharacterIterator::getLength):
  17961. (WebCore::CharacterIterator::getSize):
  17962. (WebCore::CharacterIterator::getIndex):
  17963. (WebCore::CharacterIterator::getUTF16Index):
  17964. (WebCore::CharacterIterator::getUTF16Length):
  17965. (WebCore::CharacterIterator::characterSize):
  17966. (WebCore::CharacterIterator::setText):
  17967. (WebCore::CharacterIterator::setIndex):
  17968. (WebCore::CharacterIterator::setUTF16Index):
  17969. (WebCore::CharacterIterator::first):
  17970. (WebCore::CharacterIterator::last):
  17971. (WebCore::CharacterIterator::next):
  17972. (WebCore::CharacterIterator::previous):
  17973. (WebCore::setUpIterator):
  17974. (WebCore::textBreakFirst):
  17975. (WebCore::textBreakLast):
  17976. (WebCore::textBreakNext):
  17977. (WebCore::textBreakPrevious):
  17978. (WebCore::textBreakPreceding):
  17979. (WebCore::textBreakFollowing):
  17980. (WebCore::textBreakCurrent):
  17981. (WebCore::isTextBreak):
  17982. 2010-10-29 Alexander Pavlov <apavlov@chromium.org>
  17983. Reviewed by Pavel Feldman.
  17984. Web Inspector: [REGRESSION] Addition of a new (blank) style property does not work
  17985. https://bugs.webkit.org/show_bug.cgi?id=48631
  17986. Test: inspector/styles-add-blank-property.html
  17987. * inspector/front-end/StylesSidebarPane.js:
  17988. (WebInspector.StylePropertiesSection.prototype.addNewBlankProperty):
  17989. (WebInspector.ComputedStylePropertiesSection.prototype.onpopulate):
  17990. 2010-10-29 Pavel Feldman <pfeldman@chromium.org>
  17991. Reviewed by Timothy Hatcher.
  17992. Web Inspector: add close button to network view, make tests pass for
  17993. resource manager on all ports.
  17994. https://bugs.webkit.org/show_bug.cgi?id=48628
  17995. * inspector/InspectorController.cpp:
  17996. (WebCore::InspectorController::didCommitLoad):
  17997. (WebCore::InspectorController::frameDetachedFromParent):
  17998. (WebCore::InspectorController::didLoadResourceFromMemoryCache):
  17999. (WebCore::InspectorController::identifierForInitialRequest):
  18000. (WebCore::InspectorController::willSendRequest):
  18001. (WebCore::InspectorController::markResourceAsCached):
  18002. (WebCore::InspectorController::didReceiveResponse):
  18003. (WebCore::InspectorController::didReceiveContentLength):
  18004. (WebCore::InspectorController::didFinishLoading):
  18005. (WebCore::InspectorController::didFailLoading):
  18006. (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
  18007. (WebCore::InspectorController::scriptImported):
  18008. (WebCore::InspectorController::didCreateWebSocket):
  18009. (WebCore::InspectorController::willSendWebSocketHandshakeRequest):
  18010. (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse):
  18011. (WebCore::InspectorController::didCloseWebSocket):
  18012. * inspector/front-end/NetworkPanel.js:
  18013. (WebInspector.NetworkPanel):
  18014. * inspector/front-end/ResourceManager.js:
  18015. (WebInspector.ResourceTreeModel.prototype.didCommitLoadForFrame):
  18016. * inspector/front-end/StoragePanel.js:
  18017. (WebInspector.StoragePanel.prototype.addResourceToFrame):
  18018. * inspector/front-end/inspector.js:
  18019. (WebInspector._createPanels):
  18020. * inspector/front-end/networkPanel.css:
  18021. (.network-close-button):
  18022. 2010-10-29 Nikolas Zimmermann <nzimmermann@rim.com>
  18023. Reviewed by Dirk Schulze.
  18024. Convert SVGAnimatedEnumeration/Integer to the new SVGAnimatedPropertyTearOff concept
  18025. https://bugs.webkit.org/show_bug.cgi?id=48623
  18026. Besides converting SVGAnimatedEnumeration/Integer to the new animated property tear off concept, fix support
  18027. for multiple wrappers within the new concept, which was broken - covered by existing svg/dynamic-updates/ tests.
  18028. Replace all 'extern char[]' usage when using the multiple wrappers macro, by static AtomicStrings.
  18029. * GNUmakefile.am: Add SVGAnimatedEnumeration.h / SVGAnimatedInteger.h to build.
  18030. * WebCore.gypi: Ditto.
  18031. * WebCore.pro: Ditto.
  18032. * WebCore.vcproj/WebCore.vcproj: Ditto.
  18033. * WebCore.xcodeproj/project.pbxproj: Ditto.
  18034. * bindings/scripts/CodeGenerator.pm: Recognize SVGAnimatedEnumeration / SVGAnimatedInteger as animated types using the new concept.
  18035. * bindings/scripts/CodeGeneratorObjC.pm: Touched, to force regenerating ObjC bindings, dependency tracking is obviously broken.
  18036. * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove SVGAnimatedBoolean/Enumeration/Integer handling.
  18037. * svg/DeprecatedSVGAnimatedTemplate.h: Ditto.
  18038. * svg/SVGAnimatedEnumeration.h: Added.
  18039. * svg/SVGAnimatedEnumeration.idl:
  18040. * svg/SVGAnimatedInteger.h: Added.
  18041. * svg/SVGClipPathElement.h: Adapted all code to create new style animated property tear offs for long & int types.
  18042. * svg/SVGComponentTransferFunctionElement.h:
  18043. * svg/SVGFEBlendElement.h:
  18044. * svg/SVGFEColorMatrixElement.h:
  18045. * svg/SVGFECompositeElement.h:
  18046. * svg/SVGFEConvolveMatrixElement.h:
  18047. * svg/SVGFEDiffuseLightingElement.cpp:
  18048. (WebCore::SVGFEDiffuseLightingElement::kernelUnitLengthXIdentifier): Replaced extern[] char hack using a static AtomicString.
  18049. (WebCore::SVGFEDiffuseLightingElement::kernelUnitLengthYIdentifier): Ditto.
  18050. * svg/SVGFEDiffuseLightingElement.h:
  18051. * svg/SVGFEDisplacementMapElement.h:
  18052. * svg/SVGFEGaussianBlurElement.cpp:
  18053. (WebCore::SVGFEGaussianBlurElement::stdDeviationXIdentifier): Ditto.
  18054. (WebCore::SVGFEGaussianBlurElement::stdDeviationYIdentifier): Ditto.
  18055. * svg/SVGFEGaussianBlurElement.h:
  18056. * svg/SVGFEMorphologyElement.h:
  18057. * svg/SVGFESpecularLightingElement.cpp:
  18058. (WebCore::SVGFESpecularLightingElement::kernelUnitLengthXIdentifier): Ditto.
  18059. (WebCore::SVGFESpecularLightingElement::kernelUnitLengthYIdentifier): Ditto.
  18060. * svg/SVGFESpecularLightingElement.h:
  18061. * svg/SVGFETurbulenceElement.cpp:
  18062. (WebCore::SVGFETurbulenceElement::baseFrequencyXIdentifier): Ditto.
  18063. (WebCore::SVGFETurbulenceElement::baseFrequencyYIdentifier): Ditto.
  18064. * svg/SVGFETurbulenceElement.h:
  18065. * svg/SVGFilterElement.cpp:
  18066. (WebCore::SVGFilterElement::filterResXIdentifier): Ditto.
  18067. (WebCore::SVGFilterElement::filterResYIdentifier): Ditto.
  18068. * svg/SVGFilterElement.h:
  18069. * svg/SVGGradientElement.h:
  18070. * svg/SVGMarkerElement.cpp:
  18071. (WebCore::SVGMarkerElement::orientTypeIdentifier): Ditto.
  18072. (WebCore::SVGMarkerElement::orientAngleIdentifier): Ditto.
  18073. * svg/SVGMarkerElement.h:
  18074. * svg/SVGMaskElement.h:
  18075. * svg/SVGPatternElement.h:
  18076. * svg/SVGTextContentElement.h:
  18077. * svg/SVGTextPathElement.h:
  18078. * svg/properties/SVGAnimatedPropertyMacros.h: Add new macro for multiple wrappers using static properties.
  18079. 2010-10-29 Andreas Kling <kling@webkit.org>
  18080. Reviewed by Kenneth Rohde Christiansen.
  18081. [Qt] Make GraphicsContext cheaper to construct
  18082. https://bugs.webkit.org/show_bug.cgi?id=48626
  18083. Do less unnecessary things when creating the Qt GraphicsContext:
  18084. - Don't create a black QBrush that's immediately discarded.
  18085. - Don't call setPlatform*(), set the painter brush and pen directly.
  18086. - Call setRenderHints() once instead of multiple setRenderHint().
  18087. * platform/graphics/qt/GraphicsContextQt.cpp:
  18088. (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
  18089. (WebCore::GraphicsContext::GraphicsContext):
  18090. 2010-10-29 Andreas Kling <kling@webkit.org>
  18091. Reviewed by Simon Hausmann.
  18092. [Qt] GraphicsLayer: Don't notifySyncRequired() more than necessary
  18093. https://bugs.webkit.org/show_bug.cgi?id=48624
  18094. Don't queue multiple meta method invocations for notifySyncRequired()
  18095. 4% speedup on <http://ariya.github.com/clock.htm>
  18096. * platform/graphics/qt/GraphicsLayerQt.cpp:
  18097. (WebCore::GraphicsLayerQtImpl::GraphicsLayerQtImpl):
  18098. (WebCore::GraphicsLayerQtImpl::notifySyncRequired):
  18099. (WebCore::GraphicsLayerQtImpl::notifyChange):
  18100. 2010-10-29 Zhenyao Mo <zmo@google.com>
  18101. Reviewed by Chris Marrin.
  18102. drawArrays/drawElements with first/offset out of range but size==0 should generate no error
  18103. https://bugs.webkit.org/show_bug.cgi?id=48601
  18104. * html/canvas/WebGLRenderingContext.cpp:
  18105. (WebCore::WebGLRenderingContext::drawArrays):
  18106. (WebCore::WebGLRenderingContext::drawElements):
  18107. 2010-10-29 Leandro Gracia Gil <leandrogracia@google.com>
  18108. Reviewed by Jeremy Orlow.
  18109. Patch the current speech input implementation to use the nearest
  18110. language tag. The language is now passed to the startRecognition
  18111. methods so that language-specific recognition could be used. Also added
  18112. a second parameter to setMockSpeechInputResult for the language used in
  18113. speech recognition.
  18114. https://bugs.webkit.org/show_bug.cgi?id=47089
  18115. This is the 2nd of a 4-sided patch in Chromium and WebKit. For more
  18116. details see http://codereview.chromium.org/3615005/show,
  18117. http://codereview.chromium.org/3595018/show and
  18118. https://bugs.webkit.org/show_bug.cgi?id=47420.
  18119. Test: fast/speech/input-text-language-tag.html
  18120. * page/SpeechInput.cpp:
  18121. (WebCore::SpeechInput::startRecognition):
  18122. * page/SpeechInput.h:
  18123. * page/SpeechInputClient.h:
  18124. * platform/mock/SpeechInputClientMock.cpp:
  18125. (WebCore::SpeechInputClientMock::startRecognition):
  18126. (WebCore::SpeechInputClientMock::setRecognitionResult):
  18127. (WebCore::SpeechInputClientMock::timerFired):
  18128. * platform/mock/SpeechInputClientMock.h:
  18129. * rendering/TextControlInnerElements.cpp:
  18130. (WebCore::TextControlInnerElement::attachInnerElement):
  18131. (WebCore::SearchFieldCancelButtonElement::detach):
  18132. (WebCore::SpinButtonElement::defaultEventHandler):
  18133. (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
  18134. (WebCore::InputFieldSpeechButtonElement::detach):
  18135. 2010-10-29 Mads Ager <ager@chromium.org>
  18136. Reviewed by Pavel Feldman.
  18137. [V8] The DateExtension cannot handle overwritten Date
  18138. https://bugs.webkit.org/show_bug.cgi?id=48621
  18139. Check that the Date property is an object before attempting to get
  18140. hidden properties from it.
  18141. Test: fast/dom/Window/slow-unload-handler-overwritten-date.html
  18142. * bindings/v8/DateExtension.cpp:
  18143. (WebCore::DateExtension::setAllowSleep):
  18144. 2010-10-27 Nikolas Zimmermann <nzimmermann@rim.com>
  18145. Reviewed by Dirk Schulze.
  18146. Convert SVGAnimatedBoolean to the new SVGAnimatedPropertyTearOff concept
  18147. https://bugs.webkit.org/show_bug.cgi?id=48469
  18148. Convert the next SVG animated primitive type to use the SVGAnimatedPropertyTearOff concept: SVGAnimatedBoolean.
  18149. Added new test verifying that StrictTypeChecking is enabled for SVGAnimatedBooleans. It also tests that this type is "static", see LayoutTests/ChangeLog for details.
  18150. Add support for StrictTypeChecking for boolean types.
  18151. Test: svg/dom/SVGExternalResourcesRequired.html
  18152. * GNUmakefile.am: Add SVGAnimatedBoolean.h and SVGAnimatedStaticPropertyTearOff.h to build.
  18153. * WebCore.gypi: Ditto.
  18154. * WebCore.pro: Ditto.
  18155. * WebCore.vcproj/WebCore.vcproj: Ditto.
  18156. * WebCore.xcodeproj/project.pbxproj: Ditto.
  18157. * bindings/scripts/CodeGenerator.pm: Add SVGAnimatedBoolean to the new style svg animated bindings list.
  18158. * bindings/scripts/CodeGeneratorJS.pm: Add StrictTypeChecking support for boolean types.
  18159. * bindings/scripts/CodeGeneratorObjC.pm: Ditto. Only generate kit() usage for new style animated types, if the wrapped type needs a tear off.
  18160. * bindings/scripts/CodeGeneratorV8.pm: Ditto.
  18161. * svg/DeprecatedSVGAnimatedTemplate.h: Remove SVGAnimatedBoolean handling.
  18162. * svg/SVGAElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_STATIC_PROPERTY_NEW/ for boolean types everywhere. Include SVGAnimatedPropertyMacros.h where needed.
  18163. * svg/SVGAnimatedBoolean.h: Added.
  18164. * svg/SVGAnimatedBoolean.idl:
  18165. * svg/SVGAnimationElement.h:
  18166. * svg/SVGCircleElement.h:
  18167. * svg/SVGClipPathElement.h:
  18168. * svg/SVGCursorElement.h:
  18169. * svg/SVGDefsElement.h:
  18170. * svg/SVGEllipseElement.h:
  18171. * svg/SVGExternalResourcesRequired.cpp:
  18172. * svg/SVGExternalResourcesRequired.h:
  18173. (WebCore::SVGExternalResourcesRequired::~SVGExternalResourcesRequired):
  18174. * svg/SVGFEConvolveMatrixElement.h:
  18175. * svg/SVGFEImageElement.h:
  18176. * svg/SVGFilterElement.h:
  18177. * svg/SVGFontElement.h:
  18178. * svg/SVGForeignObjectElement.h:
  18179. * svg/SVGGElement.h:
  18180. * svg/SVGGradientElement.h:
  18181. * svg/SVGImageElement.h:
  18182. * svg/SVGLineElement.h:
  18183. * svg/SVGMPathElement.h:
  18184. * svg/SVGMarkerElement.h:
  18185. * svg/SVGMaskElement.h:
  18186. * svg/SVGPathElement.h:
  18187. * svg/SVGPatternElement.h:
  18188. * svg/SVGPolyElement.h:
  18189. * svg/SVGRectElement.h:
  18190. * svg/SVGSVGElement.h:
  18191. * svg/SVGScriptElement.h:
  18192. * svg/SVGSwitchElement.h:
  18193. * svg/SVGSymbolElement.h:
  18194. * svg/SVGTextContentElement.h:
  18195. * svg/SVGUseElement.h:
  18196. * svg/SVGViewElement.h:
  18197. * svg/properties/SVGAnimatedListPropertyTearOff.h: Moved RefPtr<SVGProperty> m_baseVal/m_animVal from SVGAnimatedProperty, as SVGAnimatedStaticPropertyTearOff doesn't need them.
  18198. * svg/properties/SVGAnimatedProperty.h: Remove m_baseVal/m_animVal.
  18199. (WebCore::SVGAnimatedProperty::commitChange): New method to share code between the SVGAnimated*PropertyTearOff classes.
  18200. * svg/properties/SVGAnimatedPropertyMacros.h: Add new DECLARE_ANIMATED_STATIC_PROPERTY_NEW macro which creates SVGAnimatedStaticPropertyTearOff types.
  18201. * svg/properties/SVGAnimatedPropertyTearOff.h: Moved RefPtr<SVGProperty> m_baseVal/m_animVal from SVGAnimatedProperty, as SVGAnimatedStaticPropertyTearOff doesn't need them.
  18202. * svg/properties/SVGAnimatedStaticPropertyTearOff.h: Added.
  18203. (WebCore::SVGAnimatedStaticPropertyTearOff::baseVal): Directly returns the stored m_property as reference, no tear off is created.
  18204. (WebCore::SVGAnimatedStaticPropertyTearOff::animVal): Ditto.
  18205. (WebCore::SVGAnimatedStaticPropertyTearOff::setBaseVal): Directly updates the stored m_property reference, and invalidates the SVG attributes.
  18206. (WebCore::SVGAnimatedStaticPropertyTearOff::setAnimVal): Not implemented.
  18207. (WebCore::SVGAnimatedStaticPropertyTearOff::create):
  18208. (WebCore::SVGAnimatedStaticPropertyTearOff::SVGAnimatedStaticPropertyTearOff):
  18209. * svg/properties/SVGListPropertyTearOff.h:
  18210. (WebCore::SVGListPropertyTearOff::commitChange): Share code, use SVGAnimatedProperty::commitChange.
  18211. * svg/properties/SVGPropertyTearOff.h:
  18212. (WebCore::SVGPropertyTearOff::commitChange): Ditto.
  18213. 2010-10-28 MORITA Hajime <morrita@google.com>
  18214. Reviewed by Kent Tamura.
  18215. <meter min=0 max=100 value=100> should be optimum.
  18216. https://bugs.webkit.org/show_bug.cgi?id=48613
  18217. Changed to make the condition inclusive for better case consistently.
  18218. - Values on the border between optimum and subsequntial go optimum.
  18219. - Values on the border between suboptimal and even-less-than-good go suboptimal.
  18220. Test: fast/dom/HTMLMeterElement/meter-boundary-values.html
  18221. * html/HTMLMeterElement.cpp:
  18222. (WebCore::HTMLMeterElement::gaugeRegion):
  18223. 2010-10-29 Kenichi Ishibashi <bashi@google.com>
  18224. Reviewed by Kent Tamura.
  18225. [HTML5] Add DOMSettableTokenList
  18226. https://bugs.webkit.org/show_bug.cgi?id=47810
  18227. Adds DOMSettableTokenList interface to support <output> element.
  18228. The DOMTokenList interface was refactored since its was tightly coupled
  18229. with HTMLElement.classList property.
  18230. * Android.derived.jscbindings.mk: Added JSDOMSettableTokenList.h file.
  18231. * Android.derived.v8bindings.mk: Added V8DOMSettableTokenList.h file.
  18232. * Android.jscbindings.mk: Added JSDOMSettableTokenList.cpp file.
  18233. * Android.mk: Added ClassList.cpp file.
  18234. * CMakeLists.txt: Added DOMSettableTokenList.{cpp,idl} and ClassList.cpp files.
  18235. * DerivedSources.cpp: Added JSDOMSettableTokenList.cpp file.
  18236. * DerivedSources.make: Added DOMSettableTokenList entry.
  18237. * GNUmakefile.am: Added JSDOMSettableTokenList.{h,cpp} and ClassList.{h,cpp} files.
  18238. * WebCore.gypi: Added DOMSettableTokenList.{h,cpp,idl}, V8DOMSettableTokenListCustom.cpp and ClassList.{h,cpp} files.
  18239. * WebCore.pri: Added DOMSettableTokenList.idl file.
  18240. * WebCore.pro: Added V8DOMSettableTokenListCustom.cpp, ClassList.{h,cpp} and DOMSettableTokenList.{h,cpp} files.
  18241. * WebCore.vcproj/WebCore.vcproj: Added JSDOMSettableTokenList.{h,cpp}, ClassList.{h,cpp} and DOMSettableTokenList.{h,cpp} files.
  18242. * WebCore.xcodeproj/project.pbxproj: Added ClassList.{h,cpp}, DOMSettabletokenList.{h,cpp} and JSDOMSettableTokenList.{h,cpp}
  18243. * bindings/gobject/GNUmakefile.am: Added WebKitDOMDOMSettableTokenList.{h,cpp} and WebKitDOMDOMSettableTokenListPrivate.cpp files.
  18244. * bindings/scripts/CodeGeneratorJS.pm: Modified IndexGetterReturnsStrings() returns 1 for DOMSettableTokenList.
  18245. * bindings/v8/custom/V8DOMSettableTokenListCustom.cpp: Added.
  18246. (WebCore::V8DOMSettableTokenList::indexedPropertyGetter):
  18247. * dom/Element.cpp: Replaced DOMTokenList to ClassList.
  18248. (WebCore::Element::classList):
  18249. * dom/ElementRareData.h: ditto.
  18250. * dom/SpaceSplitString.cpp: Added add() and remove() functions.
  18251. (WebCore::SpaceSplitStringData::add):
  18252. (WebCore::SpaceSplitStringData::remove):
  18253. (WebCore::SpaceSplitString::add):
  18254. (WebCore::SpaceSplitString::remove):
  18255. * dom/SpaceSplitString.h: Added add() and remove() functions.
  18256. * dom/StyledElement.cpp: Replaced DOMTokenList to ClassList.
  18257. (WebCore::StyledElement::classAttributeChanged):
  18258. * dom/StyledElement.h: ditto.
  18259. * html/ClassList.cpp: Added, mostly from original DOMTokenList.cpp.
  18260. (WebCore::ClassList::ClassList):
  18261. (WebCore::ClassList::ref):
  18262. (WebCore::ClassList::deref):
  18263. (WebCore::ClassList::length):
  18264. (WebCore::ClassList::item):
  18265. (WebCore::ClassList::contains):
  18266. (WebCore::ClassList::containsInternal):
  18267. (WebCore::ClassList::add):
  18268. (WebCore::ClassList::addInternal):
  18269. (WebCore::ClassList::remove):
  18270. (WebCore::ClassList::removeInternal):
  18271. (WebCore::ClassList::toggle):
  18272. (WebCore::ClassList::toString):
  18273. (WebCore::ClassList::reset):
  18274. (WebCore::ClassList::classNames):
  18275. * html/ClassList.h: Added, mostly from original DOMTokenList.h.
  18276. (WebCore::ClassList::create):
  18277. (WebCore::ClassList::element):
  18278. * html/DOMSettableTokenList.cpp: Added.
  18279. (WebCore::DOMSettableTokenList::DOMSettableTokenList):
  18280. (WebCore::DOMSettableTokenList::~DOMSettableTokenList):
  18281. (WebCore::DOMSettableTokenList::item):
  18282. (WebCore::DOMSettableTokenList::contains):
  18283. (WebCore::DOMSettableTokenList::add):
  18284. (WebCore::DOMSettableTokenList::addInternal):
  18285. (WebCore::DOMSettableTokenList::remove):
  18286. (WebCore::DOMSettableTokenList::removeInternal):
  18287. (WebCore::DOMSettableTokenList::toggle):
  18288. (WebCore::DOMSettableTokenList::setValue):
  18289. * html/DOMSettableTokenList.h: Added.
  18290. (WebCore::DOMSettableTokenList::create):
  18291. (WebCore::DOMSettableTokenList::ref):
  18292. (WebCore::DOMSettableTokenList::deref):
  18293. (WebCore::DOMSettableTokenList::length):
  18294. (WebCore::DOMSettableTokenList::toString):
  18295. (WebCore::DOMSettableTokenList::value):
  18296. * html/DOMSettableTokenList.idl: Added.
  18297. * html/DOMTokenList.cpp: Refactored to be an abstract interface for both of ClassList and DOMSettableTokenList.
  18298. (WebCore::DOMTokenList::validateToken): Changed to be a static member function of DOMTokenList.
  18299. (WebCore::DOMTokenList::addToken): Added, mostly from original DOMTokenList::addInternal().
  18300. (WebCore::DOMTokenList::removeToken): Added, mostly from original DOMTokenList::removeInternal().
  18301. * html/DOMTokenList.h: Refactored to be an abstract interface for both of ClassList and DOMSettableTokenList.
  18302. (WebCore::DOMTokenList::~DOMTokenList):
  18303. (WebCore::DOMTokenList::element):
  18304. * page/DOMWindow.cpp: Added an entry for DOMSettableTokenList.
  18305. * page/DOMWindow.idl: ditto.
  18306. 2010-10-29 Pavel Feldman <pfeldman@chromium.org>
  18307. Reviewed by Timothy Hatcher.
  18308. Web Inspector: make legacy resource tracking optional in the native code,
  18309. make cookeis work against new resource manager.
  18310. https://bugs.webkit.org/show_bug.cgi?id=48532
  18311. * inspector/InspectorCSSStore.cpp:
  18312. (WebCore::InspectorCSSStore::resourceStyleSheetText):
  18313. * inspector/InspectorController.cpp:
  18314. (WebCore::InspectorController::InspectorController):
  18315. (WebCore::InspectorController::~InspectorController):
  18316. (WebCore::InspectorController::connectFrontend):
  18317. (WebCore::InspectorController::releaseFrontendLifetimeAgents):
  18318. (WebCore::InspectorController::populateScriptObjects):
  18319. (WebCore::InspectorController::unbindAllResources):
  18320. (WebCore::InspectorController::didCommitLoad):
  18321. (WebCore::InspectorController::frameDetachedFromParent):
  18322. (WebCore::InspectorController::didLoadResourceFromMemoryCache):
  18323. (WebCore::InspectorController::identifierForInitialRequest):
  18324. (WebCore::InspectorController::willSendRequest):
  18325. (WebCore::InspectorController::markResourceAsCached):
  18326. (WebCore::InspectorController::didReceiveResponse):
  18327. (WebCore::InspectorController::didReceiveContentLength):
  18328. (WebCore::InspectorController::didFinishLoading):
  18329. (WebCore::InspectorController::didFailLoading):
  18330. (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
  18331. (WebCore::InspectorController::scriptImported):
  18332. (WebCore::InspectorController::setResourceTrackingEnabled):
  18333. (WebCore::InspectorController::getCookies):
  18334. (WebCore::InspectorController::deleteCookie):
  18335. (WebCore::InspectorController::didCreateWebSocket):
  18336. (WebCore::InspectorController::willSendWebSocketHandshakeRequest):
  18337. (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse):
  18338. (WebCore::InspectorController::didCloseWebSocket):
  18339. (WebCore::InspectorController::breakpointsSettingKey):
  18340. (WebCore::InspectorController::getResourceContent):
  18341. * inspector/InspectorController.h:
  18342. * inspector/InspectorResource.cpp:
  18343. (WebCore::InspectorResource::updateScriptObject):
  18344. (WebCore::InspectorResource::markFailed):
  18345. * inspector/InspectorResource.h:
  18346. * inspector/InspectorResourceAgent.cpp:
  18347. (WebCore::populateObjectWithFrameResources):
  18348. * inspector/front-end/CookieItemsView.js:
  18349. (WebInspector.CookieItemsView.prototype._updateWithCookies):
  18350. (WebInspector.CookieItemsView.prototype._filterCookiesForDomain):
  18351. * inspector/front-end/Resource.js:
  18352. (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType):
  18353. (WebInspector.Resource.prototype._checkWarning):
  18354. * inspector/front-end/ResourceManager.js:
  18355. (WebInspector.ResourceManager.prototype._updateResourceWithResponse):
  18356. (WebInspector.ResourceManager.prototype.didFailLoading):
  18357. * inspector/front-end/inspector.js:
  18358. (WebInspector.forAllResources):
  18359. (WebInspector.updateResource):
  18360. 2010-10-29 MORITA Hajime <morrita@google.com>
  18361. Unreviewed attempt for fixing build break for http://trac.webkit.org/changeset/70847
  18362. * editing/EditingAllInOne.cpp:
  18363. 2010-10-29 Mihai Parparita <mihaip@chromium.org>
  18364. Reviewed by Adam Barth.
  18365. Support RegExp in V8 implementation of SerializedScriptValue
  18366. https://bugs.webkit.org/show_bug.cgi?id=44809
  18367. Add RegExp serialization/deserialization now that V8 provides API access
  18368. to the RegExp type.
  18369. * bindings/v8/SerializedScriptValue.cpp:
  18370. (WebCore::ZigZag::Writer::writeRegExp):
  18371. (WebCore::ZigZag::Serializer::writeRegExp):
  18372. (WebCore::ZigZag::Serializer::doSerialize):
  18373. (WebCore::ZigZag::Reader::read):
  18374. (WebCore::ZigZag::Reader::readRegExp):
  18375. 2010-10-13 MORITA Hajime <morrita@google.com>
  18376. Reviewed by David Hyatt.
  18377. Navigating dark background websites results in blinding white flashes between pages.
  18378. https://bugs.webkit.org/show_bug.cgi?id=45640
  18379. This FOUC is caused by an early layout request before the <body> is ready,
  18380. and the page's background style given for <body>, instead of <html>.
  18381. So many sites have such stylesheets that we should care them.
  18382. - Some DOM operation such as 'element.offsetLeft' causes page layout.
  18383. - The page layout results page repaint
  18384. - The page page repaint makes a white screen. because there is nothing to paint
  18385. before <body> is available.
  18386. This change:
  18387. - extracted existing FOUC check on RenderBlock and RenderLayer to
  18388. Document::mayCauseFlashOfUnstyledContent(),
  18389. - checked <body> availability on mayCauseFlashOfUnstyledContent(), and
  18390. - added FOUC guards before requesting reapint on FrameView.
  18391. No new tests. The data loading speed matters and it cannot be
  18392. captured by DRT.
  18393. * dom/Document.cpp:
  18394. (WebCore::Document::mayCauseFlashOfUnstyledContent): Added.
  18395. * dom/Document.h:
  18396. * page/FrameView.cpp:
  18397. (WebCore::FrameView::invalidateRect): Added a guard.
  18398. (WebCore::FrameView::repaintContentRectangle): Added a guard.
  18399. (WebCore::FrameView::doDeferredRepaints): Added a guard.
  18400. (WebCore::FrameView::shouldUpdate): Added.
  18401. * page/FrameView.h:
  18402. * rendering/RenderBlock.cpp:
  18403. (WebCore::RenderBlock::paintContents): Replaced FOUC check to use mayCauseFlashOfUnstyledContent
  18404. * rendering/RenderLayer.cpp:
  18405. (WebCore::RenderLayer::paintLayer): Replaced FOUC check to use mayCauseFlashOfUnstyledContent
  18406. 2010-10-29 David Hyatt <hyatt@apple.com>
  18407. Reviewed by Dan Bernstein.
  18408. https://bugs.webkit.org/show_bug.cgi?id=48618
  18409. Backgrounds should clip to the border radius properly for vertical lines. The code that does this still assumes horizontal lines.
  18410. The testcase to cover this used nested spans, which also exposed a bug in the propagation of the vertical bit through the line
  18411. box tree.
  18412. Added fast/blockflow/border-radius-clipping-vertical-lr.html.
  18413. * rendering/RenderBlockLineLayout.cpp:
  18414. (WebCore::RenderBlock::createLineBoxes):
  18415. * rendering/RenderBoxModelObject.cpp:
  18416. (WebCore::RenderBoxModelObject::paintFillLayerExtended):
  18417. 2010-10-26 MORITA Hajime <morrita@google.com>
  18418. Reviewed by Kent Tamura.
  18419. Refactoring: Spellchecking related static functions could form a class
  18420. https://bugs.webkit.org/show_bug.cgi?id=48287
  18421. Extracted spellcheck related static functions to TextCheckingHelper class,
  18422. which has EditorClient and Range as its member.
  18423. No new tests. Just a refactoring.
  18424. * CMakeLists.txt:
  18425. * GNUmakefile.am:
  18426. * WebCore.gypi:
  18427. * WebCore.pro:
  18428. * WebCore.vcproj/WebCore.vcproj:
  18429. * WebCore.xcodeproj/project.pbxproj:
  18430. * editing/Editor.cpp:
  18431. (WebCore::Editor::advanceToNextMisspelling):
  18432. (WebCore::Editor::isSelectionUngrammatical):
  18433. (WebCore::Editor::guessesForUngrammaticalSelection):
  18434. (WebCore::Editor::guessesForMisspelledOrUngrammaticalSelection):
  18435. (WebCore::Editor::markMisspellingsAfterTypingToPosition):
  18436. (WebCore::Editor::markMisspellingsOrBadGrammar):
  18437. (WebCore::Editor::markMisspellings):
  18438. (WebCore::Editor::markBadGrammar):
  18439. (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
  18440. (WebCore::Editor::changeBackToReplacedString):
  18441. * editing/Editor.h:
  18442. * editing/TextCheckingHelper.cpp: Added.
  18443. (WebCore::TextCheckingHelper::TextCheckingHelper):
  18444. (WebCore::TextCheckingHelper::~TextCheckingHelper):
  18445. (WebCore::TextCheckingHelper::paragraphAlignedRange):
  18446. (WebCore::TextCheckingHelper::findFirstMisspelling):
  18447. (WebCore::TextCheckingHelper::findFirstMisspellingOrBadGrammar):
  18448. (WebCore::TextCheckingHelper::findFirstGrammarDetail):
  18449. (WebCore::TextCheckingHelper::findFirstBadGrammar):
  18450. (WebCore::TextCheckingHelper::isUngrammatical):
  18451. (WebCore::TextCheckingHelper::guessesForMisspelledOrUngrammaticalRange):
  18452. (WebCore::TextCheckingHelper::markAllMisspellings):
  18453. (WebCore::TextCheckingHelper::markAllBadGrammar):
  18454. * editing/TextCheckingHelper.h: Added.
  18455. 2010-10-28 Adam Barth <abarth@webkit.org>
  18456. Reviewed by Eric Seidel, Peter Kasting, and Darin Fisher.
  18457. (Eric reviewed the CoreGraphics interactions, Peter reviewed the image
  18458. decoder interaction, and Darin Fisher SGTMed the policy decision.)
  18459. [chromium] Chromium Mac should use WebKit's image decoders
  18460. https://bugs.webkit.org/show_bug.cgi?id=47974
  18461. This patch teaches WebKit's image decoders how to talk to CoreGraphics.
  18462. This patch doesn't handle color profiles, but that will come in a
  18463. subsequent patch.
  18464. * WebCore.gyp/WebCore.gyp:
  18465. * WebCore.gypi:
  18466. * loader/CachedImage.cpp:
  18467. (WebCore::CachedImage::createImage):
  18468. * platform/graphics/ImageSource.h:
  18469. * platform/image-decoders/ImageDecoder.cpp:
  18470. (WebCore::RGBA32Buffer::clear):
  18471. (WebCore::RGBA32Buffer::zeroFill):
  18472. (WebCore::RGBA32Buffer::copyBitmapData):
  18473. (WebCore::RGBA32Buffer::setSize):
  18474. * platform/image-decoders/ImageDecoder.h:
  18475. (WebCore::RGBA32Buffer::getAddr):
  18476. * platform/image-decoders/cg: Added.
  18477. * platform/image-decoders/cg/ImageDecoderCG.cpp: Added.
  18478. (WebCore::RGBA32Buffer::copyBitmapData):
  18479. (WebCore::RGBA32Buffer::setSize):
  18480. (WebCore::RGBA32Buffer::asNewNativeImage):
  18481. 2010-10-28 Sergio Villar Senin <svillar@igalia.com>
  18482. Reviewed by Xan Lopez.
  18483. [GTK] GObject bindings generator issues
  18484. https://bugs.webkit.org/show_bug.cgi?id=48135
  18485. GObject code generator must not generate conditional API's. This
  18486. patch also adds an alternative return value for non-void
  18487. conditional methods. With this change the conditionalMethods hack
  18488. is no longer needed.
  18489. * bindings/scripts/CodeGeneratorGObject.pm:
  18490. 2010-10-28 David Hyatt <hyatt@apple.com>
  18491. Reviewed by Dan Bernstein.
  18492. https://bugs.webkit.org/show_bug.cgi?id=48569
  18493. Box shadows on vertical inlines don't paint properly. Fix the paintBoxShadow method to treat the edges to include as
  18494. logical (so that top/bottom are used instead of left/right for vertical lines). In order to make my box-shadow tests
  18495. work I had to fix a bug in the transform code of InlineTextBox that was causing the baselines of vertical lines to
  18496. be wrong.
  18497. Added fast/blockflow/box-shadow-* tests
  18498. * rendering/InlineTextBox.cpp:
  18499. (WebCore::InlineTextBox::paint):
  18500. * rendering/RenderBoxModelObject.cpp:
  18501. (WebCore::RenderBoxModelObject::paintBoxShadow):
  18502. * rendering/RenderBoxModelObject.h:
  18503. 2010-10-28 James Robinson <jamesr@chromium.org>
  18504. Reviewed by Simon Fraser.
  18505. iframes forced into slow scrolling mode by containing RenderLayer sometimes
  18506. https://bugs.webkit.org/show_bug.cgi?id=48570
  18507. Only performs the overlap test for RenderLayers that paint themselves. This
  18508. prevents marking RenderWidgets as being overlapped unnecessarily.
  18509. Test: fast/repaint/iframe-scroll-repaint.html
  18510. * rendering/RenderLayer.cpp:
  18511. (WebCore::RenderLayer::paintLayer):
  18512. 2010-10-28 Sheriff Bot <webkit.review.bot@gmail.com>
  18513. Unreviewed, rolling out r70814.
  18514. http://trac.webkit.org/changeset/70814
  18515. https://bugs.webkit.org/show_bug.cgi?id=48612
  18516. Caused media/controls-drag-timebar.html to fail on multiple
  18517. platforms (Requested by aroben on #webkit).
  18518. * html/HTMLMediaElement.cpp:
  18519. (WebCore::HTMLMediaElement::seek):
  18520. * platform/graphics/MediaPlayer.cpp:
  18521. * platform/graphics/MediaPlayer.h:
  18522. * platform/graphics/MediaPlayerPrivate.h:
  18523. * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
  18524. * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
  18525. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
  18526. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
  18527. * platform/graphics/win/QTMovie.cpp:
  18528. * platform/graphics/win/QTMovie.h:
  18529. 2010-10-28 Dan Bernstein <mitz@apple.com>
  18530. Reviewed by Simon Fraser.
  18531. <rdar://problem/8597430> Crash triggered by incremental layout of block truncated by line-clamp
  18532. https://bugs.webkit.org/show_bug.cgi?id=48602
  18533. Test: fast/flexbox/line-clamp-crash.html
  18534. * rendering/RenderFlexibleBox.cpp:
  18535. (WebCore::RenderFlexibleBox::applyLineClamp): Even if the child needs layout, call clearTruncation(),
  18536. since layout itself may be partial and not touch the truncated line (but touch its markup box).
  18537. 2010-10-28 Jian Li <jianli@chromium.org>
  18538. Reviewed by Dmitry Titov.
  18539. [chromium] UUID generation does not work in Linux that has sandbox
  18540. turned on
  18541. https://bugs.webkit.org/show_bug.cgi?id=48571
  18542. This is because we cannot access /proc when sandbox is on. The fix is to
  18543. use random numbers to construct UUID.
  18544. * platform/UUID.cpp:
  18545. (WebCore::createCanonicalUUIDString):
  18546. 2010-10-28 Jia Pu <jpu@apple.com>
  18547. Reviewed by Dan Bernstein.
  18548. Editing a word with misspell or autocorrection underline should remove the underline when the editing changes the word.
  18549. https://bugs.webkit.org/show_bug.cgi?id=48078
  18550. <rdar://problem/8579155>
  18551. Tests: platform/mac/editing/spelling/editing-multiple-words-with-markers.html
  18552. platform/mac/editing/spelling/editing-word-with-marker-1.html
  18553. platform/mac/editing/spelling/editing-word-with-marker-2.html
  18554. This patch is part of on-going improvement of autocorrection feature on Mac OS X. When an editing
  18555. occurs, if it affects words (by deleting/inserting characters, spliting word, merging words) that
  18556. have Spelling and/or CorrectionIndicator markers, we want to remove the markers. If subsequntial
  18557. spelling checking finds spelling error in newlly formed words, it will add the markers back in.
  18558. * dom/DocumentMarker.h: Changed MarkerType to bit masks to make search multiple types easier.
  18559. * dom/DocumentMarkerController.cpp: Refactored two removeMarkers() methods to support remove
  18560. markers with specific type from a node.
  18561. (WebCore::DocumentMarkerController::removeMarkers): Changed signature to remove marker with specific type.
  18562. (WebCore::DocumentMarkerController::removeMarkersFromMarkerMapVectorPair): Refactoring.
  18563. (WebCore::DocumentMarkerController::hasMarkers): Convenience method to search markers in range.
  18564. * dom/DocumentMarkerController.h: Added new methods and matched new signature of removeMarkers().
  18565. * editing/Editor.cpp:
  18566. (WebCore::Editor::respondToChangedContents): Remove existing markers if the change formed new word.
  18567. (WebCore::Editor::cut): Remove markers on words that will be modified by this editing.
  18568. (WebCore::Editor::paste): Ditto.
  18569. (WebCore::Editor::pasteAsPlainText): Ditto.
  18570. (WebCore::Editor::removeSpellAndCorrectionMarkersFromWordsToBeEdited): Main logic for removing
  18571. markers on words affected by editing.
  18572. * editing/Editor.h: Added removeSpellAndCorrectionMarkersFromWordsToBeEdited(). Added
  18573. REMOVE_MARKERS_UPON_EDITING and SUPPORT_AUTOCORRECTION_PANEL macro to improve readability.
  18574. * editing/TypingCommand.cpp:
  18575. (WebCore::TypingCommand::insertText): Remove markers on words that will be modified by this editing.
  18576. (WebCore::TypingCommand::deleteKeyPressed): Ditto.
  18577. (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
  18578. 2010-10-28 Brian Weinstein <bweinstein@apple.com>
  18579. Reviewed by Brady Eidson.
  18580. Part of <https://bugs.webkit.org/show_bug.cgi?id=45980>
  18581. userscripts/user-script-*-document.html tests are flaky on Windows
  18582. In WebFrameLoaderClient::committedLoad on Windows, we call through to PluginStream::didRecieveData
  18583. if our manual loader is a plugin stream, and we can call didRecieveData with a 0 length.
  18584. We shouldn't ASSERT that length is 0, because code paths exists where we call it with a 0 length.
  18585. This is tested by re-enabling user-script-plugin-document.html on Windows.
  18586. * plugins/PluginStream.cpp:
  18587. (WebCore::PluginStream::didReceiveData):
  18588. 2010-10-28 Mihai Parparita <mihaip@chromium.org>
  18589. Reviewed by Darin Adler.
  18590. [Chromium] History related tests REGRESSED after r70723
  18591. https://bugs.webkit.org/show_bug.cgi?id=48513
  18592. Remove backItem(), forwardItem() and currentItem() from the Chromium
  18593. BackForwardList implementation, since they can use the base class
  18594. behavior now (which call itemAtIndex with -1, 1, and 0 respectively).
  18595. * history/BackForwardList.h:
  18596. * history/BackForwardListChromium.cpp:
  18597. 2010-10-28 Ryosuke Niwa <rniwa@webkit.org>
  18598. Reviewed by Tony Chang.
  18599. chrome.dll!WebCore::Node::shadowAncestorNode ReadAV@NULL (98643190851b5662363449cc7303d8a5)
  18600. https://bugs.webkit.org/show_bug.cgi?id=47888
  18601. The crash was caused by the while loop in ApplyStyleCommand::fixRangeAndApplyInlineStyle
  18602. not considering the case where startNode is the root editable element.
  18603. Fixed the bug by not entering the loop when startNode is the editable root.
  18604. Test: editing/style/fix-range-from-root-editable-crash.html
  18605. * editing/ApplyStyleCommand.cpp:
  18606. (WebCore::ApplyStyleCommand::fixRangeAndApplyInlineStyle):
  18607. 2010-10-28 Noam Rosenthal <noam.rosenthal@nokia.com>
  18608. Reviewed by Ariya Hidayat.
  18609. [Texmap] [Qt] Texture mapper initial implementation
  18610. https://bugs.webkit.org/show_bug.cgi?id=47070
  18611. Build fix, some wrong changes slipped into the previous patch.
  18612. No new tests: build fix.
  18613. * platform/graphics/GraphicsLayer.h:
  18614. * platform/graphics/opengl/TextureMapperGL.cpp:
  18615. (WebCore::BitmapTextureGL::setContentsToImage):
  18616. * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
  18617. (WebCore::TextureMapperNode::uploadTextureFromContent):
  18618. (WebCore::TextureMapperNode::paintRecursive):
  18619. * platform/qt/QWebPageClient.h:
  18620. (QWebPageClient::setRootGraphicsLayer):
  18621. 2010-10-28 David Hyatt <hyatt@apple.com>
  18622. Reviewed by James Robinson.
  18623. https://bugs.webkit.org/show_bug.cgi?id=48568
  18624. Backgrounds don't work right with vertical RenderInlines. Make background painting
  18625. do the right thing for vertical strips.
  18626. Added fast/blockflow/background-* tests
  18627. * rendering/InlineFlowBox.cpp:
  18628. (WebCore::InlineFlowBox::paintFillLayer):
  18629. 2010-10-28 Eric Carlson <eric.carlson@apple.com>
  18630. Reviewed by Adam Roben.
  18631. Seeking by very small increment doesn't generate 'seeked' event
  18632. https://bugs.webkit.org/show_bug.cgi?id=48530
  18633. Test: media/video-seek-by-small-increment.html
  18634. * html/HTMLMediaElement.cpp:
  18635. (WebCore::HTMLMediaElement::seek): Ask the media engine for its closest time value so we can
  18636. avoid asking it to seek to the current time.
  18637. * platform/graphics/MediaPlayer.cpp:
  18638. (WebCore::MediaPlayer::mediaTimeForTimeValue): New.
  18639. * platform/graphics/MediaPlayer.h:
  18640. * platform/graphics/MediaPlayerPrivate.h:
  18641. (WebCore::MediaPlayerPrivateInterface::mediaTimeForTimeValue): Ditto.
  18642. * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
  18643. * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
  18644. (WebCore::MediaPlayerPrivate::mediaTimeForTimeValue): Return the closest value in the movie's time scale.
  18645. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
  18646. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::mediaTimeForTimeValue): Ditto
  18647. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
  18648. * platform/graphics/win/QTMovie.cpp:
  18649. (QTMovie::timeScale): Return the movie's time scale.
  18650. * platform/graphics/win/QTMovie.h:
  18651. 2010-10-28 David Hyatt <hyatt@apple.com>
  18652. Reviewed by Beth Dakin.
  18653. https://bugs.webkit.org/show_bug.cgi?id=48443
  18654. Border images don't work right with vertical RenderInlines. Make border/mask/background painting
  18655. do the right thing for vertical strips.
  18656. Added fast/blockflow/border-image-* tests.
  18657. * rendering/InlineFlowBox.cpp:
  18658. (WebCore::InlineFlowBox::paintBoxDecorations):
  18659. (WebCore::InlineFlowBox::paintMask):
  18660. 2010-10-28 Patrick Gansterer <paroga@webkit.org>
  18661. Reviewed by Adam Roben.
  18662. Port ContextMenuItemWin.cpp to WinCE
  18663. https://bugs.webkit.org/show_bug.cgi?id=48407
  18664. * platform/win/ContextMenuItemWin.cpp:
  18665. 2010-10-28 Ryosuke Niwa <rniwa@webkit.org>
  18666. Reviewed by Darin Adler.
  18667. queryCommandValue should fall back to queryCommandState
  18668. https://bugs.webkit.org/show_bug.cgi?id=48479
  18669. Added a fallback to Command::value so that commands with a state function without a value function
  18670. returns the value returned by the state function as a string.
  18671. * editing/EditorCommand.cpp:
  18672. (WebCore::Editor::Command::value):
  18673. 2010-10-28 Pavel Feldman <pfeldman@chromium.org>
  18674. Not reviewed. Rolling out r70800.
  18675. 2010-10-28 Alexey Proskuryakov <ap@apple.com>
  18676. Reviewed by Dan Bernstein.
  18677. https://bugs.webkit.org/show_bug.cgi?id=48551
  18678. HTMLDocument::isFrameSet() should not depend on renderer
  18679. No change in functionality, so no new tests.
  18680. * html/HTMLDocument.cpp: (WebCore::HTMLDocument::isFrameSet): Omit the check for renderer.
  18681. * rendering/RenderLayer.h: Removed unneeded includes and forward declarations.
  18682. 2010-10-28 Pavel Feldman <pfeldman@chromium.org>
  18683. Reviewed by Timothy Hatcher.
  18684. Web Inspector: make legacy resource tracking optional in the native code,
  18685. make cookeis work against new resource manager.
  18686. https://bugs.webkit.org/show_bug.cgi?id=48532
  18687. * inspector/InspectorCSSStore.cpp:
  18688. (WebCore::InspectorCSSStore::resourceStyleSheetText):
  18689. * inspector/InspectorController.cpp:
  18690. (WebCore::InspectorController::InspectorController):
  18691. (WebCore::InspectorController::~InspectorController):
  18692. (WebCore::InspectorController::connectFrontend):
  18693. (WebCore::InspectorController::releaseFrontendLifetimeAgents):
  18694. (WebCore::InspectorController::populateScriptObjects):
  18695. (WebCore::InspectorController::unbindAllResources):
  18696. (WebCore::InspectorController::didCommitLoad):
  18697. (WebCore::InspectorController::frameDetachedFromParent):
  18698. (WebCore::InspectorController::didLoadResourceFromMemoryCache):
  18699. (WebCore::InspectorController::identifierForInitialRequest):
  18700. (WebCore::InspectorController::willSendRequest):
  18701. (WebCore::InspectorController::markResourceAsCached):
  18702. (WebCore::InspectorController::didReceiveResponse):
  18703. (WebCore::InspectorController::didReceiveContentLength):
  18704. (WebCore::InspectorController::didFinishLoading):
  18705. (WebCore::InspectorController::didFailLoading):
  18706. (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
  18707. (WebCore::InspectorController::scriptImported):
  18708. (WebCore::InspectorController::setResourceTrackingEnabled):
  18709. (WebCore::InspectorController::getCookies):
  18710. (WebCore::InspectorController::deleteCookie):
  18711. (WebCore::InspectorController::didCreateWebSocket):
  18712. (WebCore::InspectorController::willSendWebSocketHandshakeRequest):
  18713. (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse):
  18714. (WebCore::InspectorController::didCloseWebSocket):
  18715. (WebCore::InspectorController::breakpointsSettingKey):
  18716. (WebCore::InspectorController::getResourceContent):
  18717. * inspector/InspectorController.h:
  18718. * inspector/InspectorResource.cpp:
  18719. (WebCore::InspectorResource::updateScriptObject):
  18720. (WebCore::InspectorResource::markFailed):
  18721. * inspector/InspectorResource.h:
  18722. * inspector/InspectorResourceAgent.cpp:
  18723. (WebCore::populateObjectWithFrameResources):
  18724. * inspector/front-end/Resource.js:
  18725. (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType):
  18726. * inspector/front-end/ResourceManager.js:
  18727. (WebInspector.ResourceManager.prototype._updateResourceWithResponse):
  18728. (WebInspector.ResourceManager.prototype.didFailLoading):
  18729. * inspector/front-end/inspector.js:
  18730. (WebInspector.updateResource):
  18731. 2010-10-28 Pavel Podivilov <podivilov@chromium.org>
  18732. Reviewed by Pavel Feldman.
  18733. Web Inspector: fix pausing on next JavaScript statement
  18734. https://bugs.webkit.org/show_bug.cgi?id=48534
  18735. * inspector/InspectorDebuggerAgent.cpp:
  18736. (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
  18737. (WebCore::InspectorDebuggerAgent::schedulePauseOnNextStatement):
  18738. (WebCore::InspectorDebuggerAgent::cancelPauseOnNextStatement):
  18739. (WebCore::InspectorDebuggerAgent::pause):
  18740. (WebCore::InspectorDebuggerAgent::didPause):
  18741. * inspector/InspectorDebuggerAgent.h:
  18742. 2010-10-28 Yuzo Fujishima <yuzo@google.com>
  18743. Reviewed by David Hyatt.
  18744. Fix for Bug 14550 - Non-layout style change does not update nested first-letter
  18745. https://bugs.webkit.org/show_bug.cgi?id=14550
  18746. If a render text fragment is accompanied by a first letter, update the
  18747. first letter's style when the fragment's style is changed.
  18748. Test: fast/css/first-letter-nested.html
  18749. * rendering/RenderBlock.cpp:
  18750. (WebCore::RenderBlock::styleDidChange): Stop calling updateFirstLetter
  18751. from here.
  18752. * rendering/RenderBlock.h: Make updateFirstLetter accessbile from
  18753. RenderTextFragment.
  18754. * rendering/RenderTextFragment.cpp:
  18755. (WebCore::RenderTextFragment::styleDidChange): If appropriate, update
  18756. first letter after removing stale cached pseudo style.
  18757. (WebCore::RenderTextFragment::blockForAccompanyingFirstLetter): Helper
  18758. to get the block for the first letter.
  18759. * rendering/RenderTextFragment.h:
  18760. * rendering/style/RenderStyle.cpp:
  18761. (WebCore::RenderStyle::removeCachedPseudoStyle): Remove the specified
  18762. pseudo style from cache.
  18763. * rendering/style/RenderStyle.h:
  18764. 2010-10-28 Benoit Jacob <bjacob@mozilla.com>
  18765. Reviewed by Kenneth Russell.
  18766. Ensure that WebGL stencil buffers are correctly initialized
  18767. https://bugs.webkit.org/show_bug.cgi?id=48351
  18768. * html/canvas/WebGLFramebuffer.cpp:
  18769. (WebCore::WebGLFramebuffer::initializeRenderbuffers):
  18770. 2010-10-28 Chris Fleizach <cfleizach@apple.com>
  18771. Reviewed by Adele Peterson.
  18772. AX: multi select group option does not handle setting of AXSelectedChildren correctly
  18773. https://bugs.webkit.org/show_bug.cgi?id=48464
  18774. Ensure that when selecting an item from a <select> element, it accounts for <optgroups>.
  18775. Test: platform/mac/accessibility/select-element-selection-with-optgroups.html
  18776. * accessibility/AccessibilityListBoxOption.cpp:
  18777. (WebCore::AccessibilityListBoxOption::setSelected):
  18778. 2010-10-28 Dan Bernstein <mitz@apple.com>
  18779. Reviewed by Adam Roben.
  18780. No longer soft-link zlib
  18781. https://bugs.webkit.org/show_bug.cgi?id=48004
  18782. * platform/graphics/WOFFFileFormat.cpp:
  18783. (WebCore::convertWOFFToSfnt): Removed Windows-speciific code to soft-link
  18784. zlib.
  18785. 2010-10-27 Zhenyao Mo <zmo@google.com>
  18786. Reviewed by Kenneth Russell.
  18787. Work around a Mac driver bug in generateMipmap
  18788. https://bugs.webkit.org/show_bug.cgi?id=48489
  18789. * html/canvas/WebGLRenderingContext.cpp:
  18790. (WebCore::WebGLRenderingContext::generateMipmap): Make sure minFilter is set to NEAREST_MIPMAP_LINEAR before generateMipmap, and after the call, set it back to the original value.
  18791. * html/canvas/WebGLTexture.h:
  18792. (WebCore::WebGLTexture::getMinFilter): Return the cached minFilter value.
  18793. 2010-10-28 Mikhail Naganov <mnaganov@chromium.org>
  18794. [Chromium clang] Unreviewed. Fix forward declaration of 'struct FileMetadata'.
  18795. See http://build.chromium.org/p/chromium.fyi/builders/Chromium%20Linux%20Debug%20Clang/builds/753/steps/compile/logs/stdio
  18796. * fileapi/FileSystemCallbacks.h:
  18797. * platform/AsyncFileSystemCallbacks.h:
  18798. 2010-10-28 Alexander Pavlov <apavlov@chromium.org>
  18799. Reviewed by Pavel Feldman.
  18800. Web Inspector: Bring backend-frontend message format to follow the protocol specification
  18801. https://bugs.webkit.org/show_bug.cgi?id=48406
  18802. * inspector/InspectorDOMAgent.cpp:
  18803. (WebCore::InspectorDOMAgent::getStyles):
  18804. (WebCore::InspectorDOMAgent::applyStyleText):
  18805. (WebCore::InspectorDOMAgent::buildObjectForStyle):
  18806. (WebCore::InspectorDOMAgent::populateObjectWithStyleProperties):
  18807. (WebCore::InspectorDOMAgent::buildObjectForStyleSheet):
  18808. (WebCore::InspectorDOMAgent::buildObjectForRule):
  18809. * inspector/InspectorDOMAgent.h:
  18810. * inspector/front-end/AuditRules.js:
  18811. (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.selectorsCallback):
  18812. (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
  18813. * inspector/front-end/CSSStyleModel.js:
  18814. (WebInspector.CSSStyleModel.parseRuleArrayPayload):
  18815. (WebInspector.CSSStyleModel.prototype.getStylesAsync):
  18816. (WebInspector.CSSStyleModel.prototype.getComputedStyleAsync):
  18817. (WebInspector.CSSStyleModel.prototype.getInlineStyleAsync):
  18818. (WebInspector.CSSStyleModel.prototype.setCSSText):
  18819. * inspector/front-end/DOMAgent.js:
  18820. (WebInspector.CSSStyleDeclaration):
  18821. (WebInspector.CSSStyleDeclaration.parsePayload):
  18822. (WebInspector.CSSStyleDeclaration.prototype.get allProperties):
  18823. (WebInspector.CSSStyleDeclaration.prototype.getLiveProperty):
  18824. (WebInspector.CSSStyleDeclaration.prototype.getPropertyValue):
  18825. (WebInspector.CSSStyleDeclaration.prototype.getPropertyPriority):
  18826. (WebInspector.CSSStyleDeclaration.prototype.getPropertyShorthand):
  18827. (WebInspector.CSSStyleDeclaration.prototype.isPropertyImplicit):
  18828. (WebInspector.CSSStyleDeclaration.prototype.getShorthandValue):
  18829. (WebInspector.CSSStyleDeclaration.prototype.getShorthandPriority):
  18830. (WebInspector.CSSStyleDeclaration.prototype.appendProperty):
  18831. (WebInspector.CSSStyleDeclaration.prototype.propertyAt):
  18832. (WebInspector.CSSRule):
  18833. (WebInspector.CSSRule.parsePayload):
  18834. (WebInspector.CSSRule.prototype.get isUserAgent):
  18835. (WebInspector.CSSRule.prototype.get isUser):
  18836. (WebInspector.CSSRule.prototype.get isViaInspector):
  18837. (WebInspector.CSSRule.prototype.get isRegular):
  18838. (WebInspector.CSSProperty):
  18839. (WebInspector.CSSProperty.parsePayload):
  18840. (WebInspector.CSSProperty.prototype.get propertyText):
  18841. (WebInspector.CSSProperty.prototype.get isLive):
  18842. (WebInspector.CSSProperty.prototype.get active):
  18843. (WebInspector.CSSProperty.prototype.get styleBased):
  18844. (WebInspector.CSSProperty.prototype.get inactive):
  18845. (WebInspector.CSSProperty.prototype.get disabled):
  18846. (WebInspector.CSSProperty.prototype.setText):
  18847. (WebInspector.CSSProperty.prototype.setValue):
  18848. (WebInspector.CSSProperty.prototype.setDisabled.callback):
  18849. (WebInspector.CSSProperty.prototype.setDisabled):
  18850. * inspector/front-end/MetricsSidebarPane.js:
  18851. (WebInspector.MetricsSidebarPane.prototype.update.callback):
  18852. (WebInspector.MetricsSidebarPane.prototype.update.inlineStyleCallback):
  18853. (WebInspector.MetricsSidebarPane.prototype.update):
  18854. (WebInspector.MetricsSidebarPane.prototype._update):
  18855. (WebInspector.MetricsSidebarPane.prototype.editingCommitted.callback):
  18856. (WebInspector.MetricsSidebarPane.prototype.editingCommitted.setEnabledValueCallback):
  18857. (WebInspector.MetricsSidebarPane.prototype.editingCommitted):
  18858. * inspector/front-end/StylesSidebarPane.js:
  18859. (WebInspector.StylesSidebarPane.prototype.update):
  18860. (WebInspector.StylesSidebarPane.prototype._rebuildUpdate):
  18861. (WebInspector.StylesSidebarPane.prototype._refreshStyleRules):
  18862. (WebInspector.StylesSidebarPane.prototype._rebuildStyleRules):
  18863. (WebInspector.StylesSidebarPane.prototype._markUsedProperties):
  18864. (WebInspector.StylesSidebarPane.prototype._containsInherited):
  18865. (WebInspector.StylePropertiesSection):
  18866. (WebInspector.StylePropertiesSection.prototype.isPropertyInherited):
  18867. (WebInspector.StylePropertiesSection.prototype.isPropertyOverloaded):
  18868. (WebInspector.StylePropertiesSection.prototype.onpopulate):
  18869. (WebInspector.StylePropertiesSection.prototype.addNewBlankProperty):
  18870. (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted.successCallback):
  18871. (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted):
  18872. (WebInspector.ComputedStylePropertiesSection.prototype._isPropertyInherited):
  18873. (WebInspector.ComputedStylePropertiesSection.prototype.onpopulate):
  18874. (WebInspector.ComputedStylePropertiesSection.prototype.rebuildComputedTrace):
  18875. (WebInspector.StylePropertyTreeElement):
  18876. (WebInspector.StylePropertyTreeElement.prototype.get disabled):
  18877. (WebInspector.StylePropertyTreeElement.prototype.get name):
  18878. (WebInspector.StylePropertyTreeElement.prototype.get priority):
  18879. (WebInspector.StylePropertyTreeElement.prototype.get value):
  18880. (WebInspector.StylePropertyTreeElement.prototype.get parsedOk):
  18881. (WebInspector.StylePropertyTreeElement.prototype):
  18882. (WebInspector.StylePropertyTreeElement.prototype.):
  18883. 2010-10-27 MORITA Hajime <morrita@google.com>
  18884. Reviewed by Kent Tamura.
  18885. WebKit needs to expose an Element::spellcheck attribute to javascript.
  18886. https://bugs.webkit.org/show_bug.cgi?id=25536
  18887. Published Element.spellcheck property on IDL, implemented it.
  18888. Tests: editing/spelling/spelling-attribute-change.html
  18889. fast/dom/HTMLElement/spellcheck.html
  18890. * html/HTMLElement.cpp:
  18891. (WebCore::HTMLElement::spellcheck):
  18892. (WebCore::HTMLElement::setSpellcheck):
  18893. * html/HTMLElement.h:
  18894. * html/HTMLElement.idl:
  18895. 2010-10-27 Pavel Feldman <pfeldman@chromium.org>
  18896. Reviewed by Timothy Hatcher.
  18897. Web Inspector: make debugger work against new resource manager.
  18898. https://bugs.webkit.org/show_bug.cgi?id=48376
  18899. * inspector/Inspector.idl:
  18900. * inspector/InspectorController.cpp:
  18901. (WebCore::InspectorController::identifierForInitialRequest):
  18902. * inspector/InspectorResourceAgent.cpp:
  18903. (WebCore::InspectorResourceAgent::identifierForInitialRequest):
  18904. * inspector/InspectorResourceAgent.h:
  18905. * inspector/front-end/ExtensionServer.js:
  18906. (WebInspector.ExtensionServer.prototype._onGetResourceContent):
  18907. * inspector/front-end/Resource.js:
  18908. (WebInspector.Resource.prototype.set content):
  18909. * inspector/front-end/ResourceManager.js:
  18910. (WebInspector.ResourceManager):
  18911. (WebInspector.ResourceManager.prototype.identifierForInitialRequest):
  18912. (WebInspector.ResourceManager.prototype._createResource):
  18913. (WebInspector.ResourceManager.prototype.willSendRequest):
  18914. (WebInspector.ResourceManager.prototype._updateResourceWithRequest):
  18915. (WebInspector.ResourceManager.prototype.didFinishLoading):
  18916. (WebInspector.ResourceManager.prototype.didFailLoading):
  18917. (WebInspector.ResourceManager.prototype.setOverrideContent):
  18918. (WebInspector.ResourceManager.prototype._processCachedResources):
  18919. (WebInspector.ResourceManager.prototype._addFramesRecursively):
  18920. (WebInspector.ResourceManager.prototype.resourceForURL):
  18921. (WebInspector.ResourceManager.prototype.addConsoleMessage):
  18922. (WebInspector.ResourceManager.prototype.clearConsoleMessages):
  18923. (WebInspector.ResourceManager.prototype.forAllResources):
  18924. (WebInspector.ResourceManager.prototype._bindResourceURL):
  18925. (WebInspector.ResourceManager.prototype._unbindResourceURL):
  18926. (WebInspector.ResourceManager.getContent):
  18927. (WebInspector.ResourceTreeModel):
  18928. (WebInspector.ResourceTreeModel.prototype.didCommitLoadForFrame):
  18929. (WebInspector.ResourceTreeModel.prototype.addResourceToFrame):
  18930. (WebInspector.ResourceTreeModel.prototype._clearResources):
  18931. * inspector/front-end/StoragePanel.js:
  18932. (WebInspector.StoragePanel.prototype.addOrUpdateFrame):
  18933. * inspector/front-end/networkPanel.css:
  18934. (.network.panel .resources-dividers):
  18935. 2010-10-28 Andy Estes <aestes@apple.com>
  18936. One more Qt fix due to r70754.
  18937. * html/HTMLObjectElement.cpp:
  18938. (WebCore::HTMLObjectElement::hasValidClassId):
  18939. 2010-10-28 Pascal Massimino <pascal.massimino@gmail.com>
  18940. Reviewed by Adam Barth.
  18941. fix setSize() call flow: it was only called the first
  18942. time (when onlySize is true)
  18943. Bug URL: https://bugs.webkit.org/show_bug.cgi?id=48494
  18944. Testing: difficult to exercise the bug, as it requires
  18945. some manual flow (change tab, scroll,...)
  18946. * platform/image-decoders/webp/WEBPImageDecoder.cpp:
  18947. (WebCore::WEBPImageDecoder::decode):
  18948. fix: call setSize() even when onlySize is false
  18949. 2010-10-28 Andy Estes <aestes@apple.com>
  18950. Fix the Qt build after r70754.
  18951. * html/HTMLObjectElement.cpp:
  18952. (WebCore::HTMLObjectElement::hasValidClassId):
  18953. (WebCore::HTMLObjectElement::updateWidget):
  18954. * html/HTMLObjectElement.h:
  18955. 2010-10-28 Andy Estes <aestes@apple.com>
  18956. Reviewed by Adam Barth.
  18957. Fix a test failure introduced in r70748 by supporting Qt's non-standard
  18958. use of classid.
  18959. https://bugs.webkit.org/show_bug.cgi?id=45679
  18960. * html/HTMLObjectElement.cpp:
  18961. (WebCore::objectHasSupportedClassId): Return true if the object's
  18962. serviceType is 'application/x-qt-plugin'.
  18963. (WebCore::HTMLObjectElement::updateWidget): Do not render fallback
  18964. content if a non-empty classid is specified for a Qt plugin object.
  18965. 2010-10-28 Ivan Krstić <ike@apple.com>
  18966. Reviewed by Mark Rowe.
  18967. Remove unused experimental proxied panel interface.
  18968. <rdar://problem/7237059>
  18969. * WebCore.exp.in:
  18970. * platform/mac/WebCoreSystemInterface.h:
  18971. * platform/mac/WebCoreSystemInterface.mm:
  18972. 2010-10-27 Andy Estes <aestes@apple.com>
  18973. Reviewed by Adam Barth.
  18974. r66156 broke AtlasCT library, formerly affected http://map.d.co.il/
  18975. https://bugs.webkit.org/show_bug.cgi?id=45679
  18976. This patch removes WebKit's map of classid values to MIME types. It also
  18977. changes the behavior of object elements to render fallback content when
  18978. a non-empty classid attribute is specified, which is the behavior HTML5
  18979. specifies when a UA encounters a classid it doesn't understand.
  18980. Test: fast/replaced/object-with-non-empty-classid-triggers-fallback.html
  18981. * html/HTMLObjectElement.cpp: Remove serviceTypeForClassId(),
  18982. createClassIdToTypeMap(), and the ClassIdToTypeMap typedef.
  18983. (WebCore::HTMLObjectElement::updateWidget): Do not call
  18984. serviceTypeForClassId() when there is no type attribute, and render
  18985. fallback content if the classid attribute is non-empty.
  18986. 2010-10-27 Eric Uhrhane <ericu@chromium.org>
  18987. Reviewed by David Levin.
  18988. [Chromium] Metadata queries should return full file info, not just modification time
  18989. https://bugs.webkit.org/show_bug.cgi?id=48098
  18990. LayoutTests that use this functionality via WorkerAsyncFileWriter are in review.
  18991. Build file changes to add FileMetadata.
  18992. * GNUmakefile.am:
  18993. * WebCore.gypi:
  18994. * WebCore.pro:
  18995. * WebCore.vcproj/WebCore.vcproj:
  18996. * WebCore.xcodeproj/project.pbxproj:
  18997. The rest of the changes here just pass the new FileMetadata object through calls that used to take a modification time.
  18998. * platform/FileMetadata.h: Added.
  18999. (WebCore::FileMetadata::FileMetadata):
  19000. * fileapi/FileSystemCallbacks.cpp:
  19001. (WebCore::FileSystemCallbacksBase::didReadMetadata):
  19002. (WebCore::MetadataCallbacks::didReadMetadata):
  19003. * fileapi/FileSystemCallbacks.h:
  19004. * platform/AsyncFileSystemCallbacks.h:
  19005. 2010-10-27 Chris Rogers <crogers@google.com>
  19006. Reviewed by Kenneth Russell.
  19007. Add VectorMath files
  19008. https://bugs.webkit.org/show_bug.cgi?id=48467
  19009. No new tests since audio API is not yet implemented.
  19010. * platform/audio/VectorMath.cpp: Added.
  19011. (WebCore::VectorMath::vsmul):
  19012. (WebCore::VectorMath::vadd):
  19013. * platform/audio/VectorMath.h: Added.
  19014. 2010-10-27 Chris Rogers <crogers@google.com>
  19015. Reviewed by Kenneth Russell.
  19016. Fixup files affected by VectorMath and related API changes
  19017. https://bugs.webkit.org/show_bug.cgi?id=48481
  19018. No new tests since audio API is not yet implemented.
  19019. * platform/audio/AudioBus.cpp:
  19020. * platform/audio/AudioChannel.cpp:
  19021. * platform/audio/Biquad.cpp:
  19022. * platform/audio/FFTConvolver.cpp:
  19023. * platform/audio/FFTConvolver.h:
  19024. * platform/audio/Panner.cpp:
  19025. (WebCore::Panner::create):
  19026. * platform/audio/Reverb.cpp:
  19027. (WebCore::calculateNormalizationScale):
  19028. (WebCore::Reverb::initialize):
  19029. (WebCore::Reverb::process):
  19030. * platform/audio/ReverbAccumulationBuffer.cpp:
  19031. * platform/audio/ReverbAccumulationBuffer.h:
  19032. * platform/audio/ReverbConvolver.cpp:
  19033. (WebCore::ReverbConvolver::ReverbConvolver):
  19034. (WebCore::ReverbConvolver::process):
  19035. * platform/audio/ReverbConvolver.h:
  19036. * platform/audio/ReverbConvolverStage.cpp:
  19037. (WebCore::ReverbConvolverStage::ReverbConvolverStage):
  19038. * platform/audio/ReverbConvolverStage.h:
  19039. * platform/audio/ReverbInputBuffer.h:
  19040. 2010-10-27 Kinuko Yasuda <kinuko@chromium.org>
  19041. Reviewed by Dumitru Daniliuc.
  19042. DOMFileSystem's reference should be kept while there're any active Entries/callbacks
  19043. https://bugs.webkit.org/show_bug.cgi?id=47535
  19044. Changed to keep DOMFileSystem's reference in each EntryBase, DirectoryReaderBase, EntryCallbacks and EntriesCallbacks.
  19045. Test: fast/filesystem/filesystem-reference.html
  19046. * fileapi/DOMFileSystemBase.cpp:
  19047. (WebCore::DOMFileSystemBase::readDirectory): Changed to pass/take
  19048. PassRefPtr but not a raw pointer.
  19049. * fileapi/DOMFileSystemBase.h:
  19050. * fileapi/DirectoryEntry.cpp:
  19051. (WebCore::DirectoryEntry::DirectoryEntry): Ditto.
  19052. (WebCore::DirectoryEntry::createReader):
  19053. * fileapi/DirectoryEntry.h:
  19054. (WebCore::DirectoryEntry::create): Ditto.
  19055. * fileapi/DirectoryEntrySync.cpp:
  19056. (WebCore::DirectoryEntrySync::DirectoryEntrySync): Ditto.
  19057. * fileapi/DirectoryEntrySync.h:
  19058. (WebCore::DirectoryEntrySync::create): Ditto.
  19059. * fileapi/DirectoryReader.h:
  19060. (WebCore::DirectoryReader::filesystem):
  19061. * fileapi/DirectoryReaderBase.h:
  19062. (WebCore::DirectoryReaderBase::filesystem):
  19063. * fileapi/Entry.cpp:
  19064. (WebCore::Entry::Entry): Ditto.
  19065. * fileapi/Entry.h:
  19066. (WebCore::Entry::filesystem):
  19067. * fileapi/EntryBase.h:
  19068. (WebCore::EntryBase::filesystem):
  19069. (WebCore::EntryBase::EntryBase): Ditto.
  19070. * fileapi/EntrySync.cpp:
  19071. (WebCore::EntrySync::create): Ditto.
  19072. (WebCore::EntrySync::getParent):
  19073. (WebCore::EntrySync::EntrySync): Ditto.
  19074. * fileapi/EntrySync.h:
  19075. (WebCore::EntrySync::filesystem):
  19076. * fileapi/FileEntry.cpp:
  19077. (WebCore::FileEntry::FileEntry): Ditto.
  19078. * fileapi/FileEntry.h:
  19079. (WebCore::FileEntry::create): Ditto.
  19080. * fileapi/FileEntrySync.cpp:
  19081. (WebCore::FileEntrySync::FileEntrySync): Ditto.
  19082. * fileapi/FileEntrySync.h:
  19083. (WebCore::FileEntrySync::create): Ditto.
  19084. * fileapi/FileSystemCallbacks.cpp:
  19085. (WebCore::EntriesCallbacks::create): Ditto.
  19086. (WebCore::EntriesCallbacks::EntriesCallbacks): Ditto.
  19087. * fileapi/FileSystemCallbacks.h:
  19088. 2010-10-27 Yuzo Fujishima <yuzo@google.com>
  19089. Reviewed by Eric Seidel.
  19090. Fix for Bug 48310 - SVG font-face-name without name attribute causes a crash
  19091. https://bugs.webkit.org/show_bug.cgi?id=48310
  19092. Test: svg/custom/font-face-name-without-name-attr.svg
  19093. * svg/SVGFontFaceElement.cpp:
  19094. (WebCore::SVGFontFaceElement::rebuildFontFace): Don't create src
  19095. property if the src value list is empty.
  19096. * svg/SVGFontFaceSrcElement.cpp:
  19097. (WebCore::SVGFontFaceSrcElement::srcValue): Don't add empty src
  19098. values to the src value list.
  19099. 2010-10-27 Chris Rogers <crogers@google.com>
  19100. Reviewed by Kenneth Russell.
  19101. Allow AudioDSPKernel to function without an AudioDSPKernelProcessor
  19102. https://bugs.webkit.org/show_bug.cgi?id=48472
  19103. No new tests since audio API is not yet implemented.
  19104. * platform/audio/AudioDSPKernel.h:
  19105. (WebCore::AudioDSPKernel::AudioDSPKernel):
  19106. (WebCore::AudioDSPKernel::sampleRate):
  19107. 2010-10-27 Enrica Casucci <enrica@apple.com>
  19108. Reviewed by Alexey Proskuryakov.
  19109. Support Appkit key bindings and custom key bindings in WebKit2
  19110. https://bugs.webkit.org/show_bug.cgi?id=48271
  19111. <rdar://problem/7660723>
  19112. * dom/KeyboardEvent.h:
  19113. (WebCore::KeypressCommand::KeypressCommand): Added default constructor and modified assert for text
  19114. insertion command constructor to support WebKit2 scenarios.
  19115. The default constructor is needed to support the generated WebKit2 message processing code.
  19116. 2010-10-26 Darin Adler <darin@apple.com>
  19117. Reviewed by Sam Weinig.
  19118. WebKitTestRunner needs to support layoutTestController.dumpBackForwardList
  19119. https://bugs.webkit.org/show_bug.cgi?id=42322
  19120. rdar://problem/8193631
  19121. WebKitTestRunner needs to support layoutTestController.clearBackForwardList
  19122. https://bugs.webkit.org/show_bug.cgi?id=42333
  19123. rdar://problem/8193643
  19124. * WebCore.exp.in: Updated exports.
  19125. * history/BackForwardList.h: Added comments about future refactoring.
  19126. Moved functions that are not called inside WebCore into a separate
  19127. section, to be removed later. Added an isActive function to replace the
  19128. use of enabled() and entries().
  19129. * history/BackForwardListImpl.h: Removed isBackForwardListImpl.
  19130. Marked virtual function overrides virtual explicitly, except for the
  19131. ones that will be non-virtual once we make the changes above.
  19132. Added the isActive function.
  19133. * history/PageCache.cpp:
  19134. (WebCore::logCanCachePageDecision): Use isActive.
  19135. (WebCore::PageCache::canCache): Ditto.
  19136. * loader/FrameLoader.cpp:
  19137. (WebCore::FrameLoader::checkDidPerformFirstNavigation): Check
  19138. using currentItem, backItem, and forwardItem instead of
  19139. using entries.
  19140. * page/Settings.cpp:
  19141. (WebCore::Settings::setUsesPageCache): Loop through the back/forward
  19142. list entries using backListCount and forwardListCount instead of
  19143. using entries.
  19144. 2010-10-27 Chris Rogers <crogers@google.com>
  19145. Reviewed by Chris Marrin.
  19146. Add ENABLE_WEB_AUDIO feature enable flag (initially disabled) to build-webkit
  19147. https://bugs.webkit.org/show_bug.cgi?id=48279
  19148. No new tests since flag is disabled.
  19149. * Configurations/FeatureDefines.xcconfig:
  19150. 2010-10-27 Chris Rogers <crogers@google.com>
  19151. Reviewed by Kenneth Russell.
  19152. Add AudioResamplerKernel files
  19153. https://bugs.webkit.org/show_bug.cgi?id=47624
  19154. No new tests since audio API is not yet implemented.
  19155. * platform/audio/AudioResamplerKernel.cpp: Added.
  19156. (WebCore::AudioResamplerKernel::AudioResamplerKernel):
  19157. (WebCore::AudioResamplerKernel::getSourcePointer):
  19158. (WebCore::AudioResamplerKernel::process):
  19159. (WebCore::AudioResamplerKernel::reset):
  19160. (WebCore::AudioResamplerKernel::rate):
  19161. * platform/audio/AudioResamplerKernel.h: Added.
  19162. 2010-10-27 Adam Barth <abarth@webkit.org>
  19163. Reviewed by Ojan Vafai.
  19164. REGRESSION(66511): CORDYS Process Factory doesn't work
  19165. https://bugs.webkit.org/show_bug.cgi?id=48453
  19166. When Ojan refactored this function in 66511, he missed an "else",
  19167. which causes us to generated HIERARCHY_REQUEST_ERR in some cases where
  19168. we're not supposed to. This patch restores the "else" behavior (using
  19169. an early return) and adds a test for the cases that caused problems in
  19170. the field.
  19171. Test: fast/dom/allowed-children.html
  19172. * dom/Node.cpp:
  19173. (WebCore::isChildTypeAllowed):
  19174. 2010-10-27 Beth Dakin <bdakin@apple.com>
  19175. Reviewed by Darin Adler.
  19176. Fix for https://bugs.webkit.org/show_bug.cgi?id=48385 Add WebKit
  19177. SPI to scale a WebView
  19178. -and corresponding-
  19179. <rdar://problem/8107667>
  19180. This patch adds SPI to Mac WebKit that scales the page by the given
  19181. scale factor. The scale factor is factored into the RenderStyle's
  19182. transform.
  19183. Set the current pageScale for the document.
  19184. * css/CSSStyleSelector.cpp:
  19185. (WebCore::CSSStyleSelector::styleForDocument):
  19186. Frame keeps track of the page scale factor. When
  19187. scalePage() is called, it modifies the RenderView's style to
  19188. include a transform of the appropriate scale and forces a style
  19189. recalc.
  19190. * page/Frame.cpp:
  19191. (WebCore::Frame::Frame):
  19192. (WebCore::Frame::scalePage):
  19193. * page/Frame.h:
  19194. (WebCore::Frame::pageScaleFactor):
  19195. * WebCore.exp.in:
  19196. Add a scale to the transformation matrix.
  19197. * rendering/style/RenderStyle.cpp:
  19198. (WebCore::RenderStyle::setPageScaleTransform):
  19199. * rendering/style/RenderStyle.h:
  19200. 2010-10-27 Dan Bernstein <mitz@apple.com>
  19201. Reviewed by Darin Adler.
  19202. REGRESSION (r70335): Incorrect article layout in Safari Reader
  19203. https://bugs.webkit.org/show_bug.cgi?id=48436
  19204. * page/DOMWindow.cpp:
  19205. (WebCore::DOMWindow::getMatchedCSSRules): Return rules from all origins if the cross-origin
  19206. check is disabled.
  19207. * page/Settings.cpp:
  19208. (WebCore::Settings::Settings): Initialize m_crossOriginCheckInGetMatchedCSSRulesDisabled.
  19209. * page/Settings.h:
  19210. (WebCore::Settings::setCrossOriginCheckInGetMatchedCSSRulesDisabled): Added this accessor.
  19211. (WebCore::Settings::crossOriginCheckInGetMatchedCSSRulesDisabled): Ditto.
  19212. 2010-10-27 Zhenyao Mo <zmo@google.com>
  19213. Reviewed by Kenneth Russell.
  19214. refactor the nested large switch statements in GraphicsContext3DCG.cpp:getImageData()
  19215. https://bugs.webkit.org/show_bug.cgi?id=47027
  19216. * platform/graphics/GraphicsContext3D.cpp:
  19217. (WebCore::doPacking): ASSERT false if undefined format is passed in.
  19218. * platform/graphics/GraphicsContext3D.h: Add kSourceFormatUndefined enum.
  19219. * platform/graphics/cg/GraphicsContext3DCG.cpp:
  19220. (WebCore::getSourceDataFormat): Decide source data format from componentsPerPixel, alpha format, bitsPerComponet, etc.
  19221. (WebCore::GraphicsContext3D::getImageData): Refactor the code to use getSourceDataFormat and remove nested switches.
  19222. 2010-10-27 Patrick Gansterer <paroga@webkit.org>
  19223. Reviewed by Adam Barth.
  19224. Use WTF::StringHasher::createBlobHash where possible
  19225. https://bugs.webkit.org/show_bug.cgi?id=48228
  19226. Replace StringImpl::computeHash with StringHasher::createBlobHash.
  19227. This removes many duplicated code.
  19228. * bindings/js/JSSVGPODTypeWrapper.h:
  19229. (WebCore::PODTypeWrapperCacheInfoHash::hash):
  19230. * page/SecurityOriginHash.h:
  19231. (WebCore::SecurityOriginHash::hash):
  19232. * platform/cf/SchedulePair.h:
  19233. (WebCore::SchedulePairHash::hash):
  19234. * platform/graphics/FontCache.cpp:
  19235. (WebCore::computeHash):
  19236. * platform/graphics/chromium/FontPlatformDataChromiumWin.h:
  19237. (WebCore::FontPlatformData::RefCountedHFONT::hash):
  19238. * platform/graphics/cocoa/FontPlatformData.h:
  19239. (WebCore::FontPlatformData::hash):
  19240. * platform/graphics/gtk/FontPlatformDataPango.h:
  19241. (WebCore::FontPlatformData::hash):
  19242. * platform/graphics/wince/FontPlatformData.cpp:
  19243. (WebCore::FixedSizeFontDataKeyHash::hash):
  19244. * platform/graphics/wx/FontPlatformDataWx.cpp:
  19245. (WebCore::FontPlatformData::FontPlatformData):
  19246. (WebCore::FontPlatformData::computeHash):
  19247. * plugins/PluginPackage.cpp:
  19248. (WebCore::PluginPackage::hash):
  19249. * plugins/win/PluginPackageWin.cpp:
  19250. (WebCore::PluginPackage::hash):
  19251. * svg/DeprecatedSVGAnimatedTemplate.h:
  19252. (WebCore::DeprecatedSVGAnimatedTypeWrapperKeyHash::hash):
  19253. * svg/properties/SVGAnimatedPropertyDescription.h:
  19254. (WebCore::SVGAnimatedPropertyDescriptionHash::hash):
  19255. 2010-10-27 Tony Chang <tony@chromium.org>
  19256. Unreviewed, build fix after r70692.
  19257. * rendering/RenderBoxModelObject.cpp:
  19258. (WebCore::RenderBoxModelObject::paintBorder):
  19259. 2010-10-27 Leandro Pereira <leandro@profusion.mobi>
  19260. Unreviewed. Build fix after r70651.
  19261. * CMakeListsEfl.txt: Add SoupURIUtils.cpp.
  19262. 2010-10-27 Crystal Zhang <haizhang@rim.com>
  19263. Reviewed by Eric Carlson.
  19264. https://bugs.webkit.org/show_bug.cgi?id=48446
  19265. Fix an issue where we were passing the wrong parameter
  19266. to MIMETypeRegistry::getMIMETypeForExtension().
  19267. * platform/MIMETypeRegistry.cpp:
  19268. 2010-10-27 David Hyatt <hyatt@apple.com>
  19269. Reviewed by Beth Dakin.
  19270. https://bugs.webkit.org/show_bug.cgi?id=48449
  19271. Make border drawing work correctly with vertical inline flows. The top and bottom edge have to be omitted
  19272. rather than the left and right edges.
  19273. Also discovered that border-radius is broken with the new path-based-drawing code for all inline flows. This
  19274. is a regression from the old drawing code. I patched the code to be correct rather than clipping out stuff
  19275. that it shouldn't and applying border-radii on lines that don't even have them.
  19276. Added fast/blockflow/border-vertical-lr.html and fast/borders/border-radius-inline-flow.html
  19277. * rendering/RenderBoxModelObject.cpp:
  19278. (WebCore::RenderBoxModelObject::paintBorder):
  19279. (WebCore::RenderBoxModelObject::clipBorderSidePolygon):
  19280. * rendering/RenderBoxModelObject.h:
  19281. 2010-10-27 Martin Robinson <mrobinson@igalia.com>
  19282. Reviewed by Gustavo Noronha Silva.
  19283. [Cairo] Font fallback determination is very ineffecient
  19284. https://bugs.webkit.org/show_bug.cgi?id=42052
  19285. When choosing a fallback font in FontCache::getFontDataForCharacters, use FontConfig's
  19286. mechanism for searching the fallback list directly, instead of scanning the list manually.
  19287. If the font is a custom font or any other font with no FontConfig pattern associated with
  19288. it, as FontConfig for a font that can supply the missing glyphs.
  19289. Test: platform/gtk/fonts/custom-font-missing-glyphs.html
  19290. * platform/graphics/cairo/FontCacheFreeType.cpp:
  19291. (WebCore::createFontConfigPatternForCharacters): Added this helper which turns
  19292. a collection of unicode characters into a FontConfig pattern.
  19293. (WebCore::findBestFontGivenFallbacks): Using a FontConfig pattern created with th
  19294. above helper and a FcFontSet of fallback fonts, this helper will find a font in
  19295. the set which fulfills the requirments.
  19296. (WebCore::FontCache::getFontDataForCharacters): Given an existing font with missing
  19297. glyphs, either find an appropriate fallback font from the list of FontConfig fallbacks
  19298. or ask FontConfig directly for an appropriate font.
  19299. * platform/graphics/cairo/FontPlatformDataFreeType.h: Made a member mutable, as it is
  19300. initialized lazily.
  19301. 2010-10-27 Alexander Pavlov <apavlov@chromium.org>
  19302. Reviewed by Pavel Feldman.
  19303. Web Inspector: "Reload Page and Audit on Load" fails to run audits when resource tracking is disabled
  19304. https://bugs.webkit.org/show_bug.cgi?id=48431
  19305. * inspector/front-end/AuditsPanel.js:
  19306. (WebInspector.AuditsPanel.prototype._reloadResources):
  19307. * inspector/front-end/ResourcesPanel.js:
  19308. (WebInspector.ResourcesPanel.prototype._createPanelEnabler):
  19309. (WebInspector.ResourcesPanel.prototype._enableResourceTracking):
  19310. 2010-10-27 Abhishek Arya <inferno@chromium.org>
  19311. Reviewed by Dave Hyatt.
  19312. Add a function to make sure child is allowed before adding to a
  19313. render view.
  19314. https://bugs.webkit.org/show_bug.cgi?id=48328
  19315. Test: fast/inline/inline-child-height-width-calc-crash.html
  19316. * rendering/RenderView.cpp:
  19317. (WebCore::RenderView::isChildAllowed):
  19318. * rendering/RenderView.h:
  19319. 2010-10-27 Martin Robinson <mrobinson@igalia.com>
  19320. Reviewed by Gustavo Noronha Silva.
  19321. [GTK] r69296 includes a cast from GdkWindow* to GtkWindow*
  19322. https://bugs.webkit.org/show_bug.cgi?id=48445
  19323. Pass the pageClient GtkWidget* to gtk_xtbin_new instead of the
  19324. GdkWindow*. The pageClient is used to get the proper visual for the
  19325. plugin container widget.
  19326. No new tests. This patch should prevent plugins/null-npp-getvalue-pointer.html
  19327. from crashing.
  19328. * plugins/gtk/PluginViewGtk.cpp:
  19329. (WebCore::PluginView::platformStart): Pass the widget instead of the window.
  19330. * plugins/gtk/gtk2xtbin.c: Accept the widget instead of the window.
  19331. (gtk_xtbin_new):
  19332. * plugins/gtk/gtk2xtbin.h: Update the declaration.
  19333. 2010-10-27 Kwang Yul Seo <skyul@company100.net>
  19334. Reviewed by James Robinson.
  19335. [BREWMP] Port graphics backend
  19336. https://bugs.webkit.org/show_bug.cgi?id=40275
  19337. Add PLATFORM(BREWMP) guard to skia's FontCustomPlatformData
  19338. to share OS(LINUX) implementation.
  19339. * loader/CachedFont.cpp:
  19340. * platform/graphics/skia/FontCustomPlatformData.cpp:
  19341. (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
  19342. (WebCore::FontCustomPlatformData::fontPlatformData):
  19343. (WebCore::createFontCustomPlatformData):
  19344. * platform/graphics/skia/FontCustomPlatformData.h:
  19345. 2010-10-27 Satish Sampath <satish@chromium.org>
  19346. Unreviewed, rolling out r70665.
  19347. http://trac.webkit.org/changeset/70665
  19348. https://bugs.webkit.org/show_bug.cgi?id=47089
  19349. Need to address Alexey's review comments.
  19350. * page/SpeechInput.cpp:
  19351. (WebCore::SpeechInput::startRecognition):
  19352. * page/SpeechInput.h:
  19353. * page/SpeechInputClient.h:
  19354. * platform/mock/SpeechInputClientMock.cpp:
  19355. (WebCore::SpeechInputClientMock::startRecognition):
  19356. (WebCore::SpeechInputClientMock::setRecognitionResult):
  19357. (WebCore::SpeechInputClientMock::timerFired):
  19358. * platform/mock/SpeechInputClientMock.h:
  19359. * rendering/TextControlInnerElements.cpp:
  19360. (WebCore::TextControlInnerElement::attachInnerElement):
  19361. (WebCore::SearchFieldCancelButtonElement::detach):
  19362. (WebCore::SpinButtonElement::defaultEventHandler):
  19363. (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
  19364. (WebCore::InputFieldSpeechButtonElement::detach):
  19365. 2010-10-27 ZHenyao Mo <zmo@google.com>
  19366. Reviewed by Kenneth Russell.
  19367. Must enable GL_POINT_SPRITE in GraphicsContext3D implementations
  19368. https://bugs.webkit.org/show_bug.cgi?id=45908
  19369. * platform/graphics/mac/GraphicsContext3DMac.mm: Enable for Mac port.
  19370. (WebCore::GraphicsContext3D::GraphicsContext3D):
  19371. 2010-10-27 Leandro Gracia Gil <leandrogracia@google.com>
  19372. Reviewed by Jeremy Orlow.
  19373. Patch the current speech input implementation to use the nearest
  19374. language tag. The language is now passed to the startRecognition
  19375. methods so that language-specific recognition could be used. Also added
  19376. a second parameter to setMockSpeechInputResult for the language used in
  19377. speech recognition.
  19378. https://bugs.webkit.org/show_bug.cgi?id=47089
  19379. This is the 2nd of a 4-sided patch in Chromium and WebKit. For more
  19380. details see http://codereview.chromium.org/3615005/show and
  19381. http://codereview.chromium.org/3595018/show. The last of the 4 patches
  19382. depends also on the language tag validation provided by this patch:
  19383. https://bugs.webkit.org/show_bug.cgi?id=48225.
  19384. Test: fast/speech/input-text-language-tag.html
  19385. * page/SpeechInput.cpp:
  19386. (WebCore::SpeechInput::startRecognition):
  19387. * page/SpeechInput.h:
  19388. * page/SpeechInputClient.h:
  19389. * platform/mock/SpeechInputClientMock.cpp:
  19390. (WebCore::SpeechInputClientMock::startRecognition):
  19391. (WebCore::SpeechInputClientMock::setRecognitionResult):
  19392. (WebCore::SpeechInputClientMock::timerFired):
  19393. * platform/mock/SpeechInputClientMock.h:
  19394. * rendering/TextControlInnerElements.cpp:
  19395. (WebCore::TextControlInnerElement::attachInnerElement):
  19396. (WebCore::SearchFieldCancelButtonElement::detach):
  19397. (WebCore::SpinButtonElement::defaultEventHandler):
  19398. (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
  19399. (WebCore::InputFieldSpeechButtonElement::detach):
  19400. 2010-10-27 David Hyatt <hyatt@apple.com>
  19401. Reviewed by Dan Bernstein.
  19402. https://bugs.webkit.org/show_bug.cgi?id=48381
  19403. Make basic layer positioning work with vertical-lr writing-mode.
  19404. * rendering/RenderBlock.cpp:
  19405. (WebCore::RenderBlock::paintChildren):
  19406. (WebCore::RenderBlock::paintFloats):
  19407. * rendering/RenderBox.cpp:
  19408. (WebCore::RenderBox::adjustForFlippedBlocksWritingMode):
  19409. (WebCore::RenderBox::locationOffsetIncludingFlipping):
  19410. * rendering/RenderBox.h:
  19411. * rendering/RenderLayer.cpp:
  19412. (WebCore::RenderLayer::updateLayerPosition):
  19413. 2010-10-27 Zhenyao Mo <zmo@google.com>
  19414. Reviewed by Kenneth Russell.
  19415. object-deletion-behaviour.html fails with mesa backend
  19416. https://bugs.webkit.org/show_bug.cgi?id=46667
  19417. * html/canvas/WebGLRenderingContext.cpp:
  19418. (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter): If object_type is 0, we return early because object_name should be always be 0.
  19419. 2010-10-27 Zhenyao Mo <zmo@google.com>
  19420. Reviewed by Kenneth Russell.
  19421. If WebGL is running on top of a strict version of OpenGL ES it should make sure attribs have buffers assigned at all times
  19422. https://bugs.webkit.org/show_bug.cgi?id=47964
  19423. * html/canvas/WebGLRenderingContext.cpp:
  19424. (WebCore::WebGLRenderingContext::validateRenderingState): Minimum checking: if input <= 0, only check if each enabled vertex attribute is bound to a buffer.
  19425. (WebCore::WebGLRenderingContext::drawArrays): If underlying GL performs bounds checking, we still need to do the minimum checking using validateRenderingState.
  19426. (WebCore::WebGLRenderingContext::drawElements): Ditto.
  19427. * html/canvas/WebGLRenderingContext.h: Add a comment for input <= 0 in validateRenderingState.
  19428. 2010-10-27 Simon Fraser <simon.fraser@apple.com>
  19429. Reviewed by Dan Bernstein.
  19430. Accelerated animation with missing values in keyframes is broken
  19431. https://bugs.webkit.org/show_bug.cgi?id=48395
  19432. r66339 changed the behavior of keyframe animations such that if a property
  19433. is missing from a keyframe, the property will be interpolated between those
  19434. keyframes that do have a value for the property. If a value is missing
  19435. from the first or last keyframes, the element's unanimated style supplies
  19436. that value.
  19437. However, accelerated animations had a bug where if a value was missing
  19438. from the first (and maybe subsequent) or last (and maybe preceding) keyframes,
  19439. the animation data given to the GraphicsLayer would be missing the style from the
  19440. first or final keyframe.
  19441. Tests: animations/missing-values-first-keyframe.html
  19442. animations/missing-values-last-keyframe.html
  19443. * rendering/RenderLayerBacking.cpp:
  19444. (WebCore::RenderLayerBacking::startAnimation):
  19445. 2010-10-27 Renata Hodovan <reni@inf.u-szeged.hu>
  19446. Reviewed by Dirk Schulze.
  19447. Calling the super class of RenderSVGImage::updateFromElement is missing
  19448. https://bugs.webkit.org/show_bug.cgi?id=48347
  19449. RenderSVGImage::updateFromElement is an inherited function of RenderSVGModelObject what needs calling its ancestor.
  19450. Lack of this call caused filters were not invalidated at SVGImage objects.
  19451. No new tests, because this modification is covered by SVGFEConvolveMatrixElement's dynamic update tests.
  19452. * rendering/RenderSVGImage.cpp:
  19453. (WebCore::RenderSVGImage::updateFromElement):
  19454. 2010-10-27 Justin Schuh <jschuh@chromium.org>
  19455. Reviewed by Dirk Schulze.
  19456. Ignore invalid blend modes
  19457. https://bugs.webkit.org/show_bug.cgi?id=48371
  19458. Test: svg/filters/feBlend-invalid-mode.xhtml
  19459. * platform/graphics/filters/FEBlend.cpp:
  19460. (WebCore::FEBlend::apply):
  19461. 2010-10-27 Sergio Villar Senin <svillar@igalia.com>
  19462. Reviewed by Martin Robinson.
  19463. [Gtk] http/tests/xmlhttprequest/basic-auth-default.html fails
  19464. https://bugs.webkit.org/show_bug.cgi?id=38956
  19465. Added a new utility function that turns SoupURIs into
  19466. KURLs. That addresses some issues with SoupURIs like for example
  19467. soup_uri_to_string ignoring the URI password. Basic authentication
  19468. using URL credentials should work now.
  19469. * GNUmakefile.am:
  19470. * platform/network/soup/ResourceHandleSoup.cpp:
  19471. (WebCore::ResourceHandle::start):
  19472. (WebCore::ResourceHandle::loadResourceSynchronously):
  19473. * platform/network/soup/ResourceRequestSoup.cpp:
  19474. (WebCore::ResourceRequest::updateFromSoupMessage):
  19475. * platform/network/soup/ResourceResponseSoup.cpp:
  19476. (WebCore::ResourceResponse::updateFromSoupMessage):
  19477. * platform/network/soup/SoupURIUtils.cpp: Added.
  19478. (WebCore::soupURIToKURL):
  19479. * platform/network/soup/SoupURIUtils.h: Added.
  19480. 2010-10-27 Ademar de Souza Reis Jr <ademar.reis@openbossa.org>
  19481. Reviewed by Andreas Kling.
  19482. Remove references to ancient QGVLauncher and QtLauncher
  19483. https://bugs.webkit.org/show_bug.cgi?id=48430
  19484. * manual-tests/plugins/windowed.html: change to QtTestBrowser
  19485. * manual-tests/plugins/windowless.html: ditto
  19486. 2010-10-27 Patrick Gansterer <paroga@webkit.org>
  19487. Reviewed by Csaba Osztrogonác.
  19488. [WINCE] Buildfix after r70400.
  19489. https://bugs.webkit.org/show_bug.cgi?id=48419
  19490. * platform/wince/TemporaryLinkStubs.cpp: Added.
  19491. (WebCore::setCookieStoragePrivateBrowsingEnabled):
  19492. 2010-10-27 Satish Sampath <satish@chromium.org>
  19493. Reviewed by Steve Block.
  19494. Add runtime flag check before enabling speech input in code.
  19495. https://bugs.webkit.org/show_bug.cgi?id=48426
  19496. * html/HTMLInputElement.cpp:
  19497. (WebCore::HTMLInputElement::isSpeechEnabled): Added runtime flag check.
  19498. 2010-10-27 Adam Roben <aroben@apple.com>
  19499. Only decompress pixel buffers when needed (and fix a crash in the
  19500. process)
  19501. Fixes <http://webkit.org/b/48417> Crash when running
  19502. compositing/video/video-background-color.html on Windows
  19503. Reviewed by Anders Carlsson.
  19504. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
  19505. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::paint): Only
  19506. decompress the pixel buffer when it has an incompatible format. This
  19507. also has the benefit of only decompressing the buffer when a
  19508. QTDecompressionSession has been created! (I assume this was just a typo
  19509. from when this code was added in r70252.)
  19510. 2010-10-27 Mario Sanchez Prada <msanchez@igalia.com>
  19511. Reviewed by Martin Robinson.
  19512. getTextAtOffset returns incorrect results if a link includes text and an image
  19513. https://bugs.webkit.org/show_bug.cgi?id=47365
  19514. Properly consider text under a non-text renderer in textForObject.
  19515. We need to check all the children under a non-text renderer, if
  19516. any, to consider when current object is not a text object but some
  19517. of its children are, in order not to miss those portions of text
  19518. by not properly handling those situations.
  19519. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  19520. (textForRenderer): New. Get the text for a RenderObject's children.
  19521. (textForObject): Use the new textForRenderer function.
  19522. 2010-10-26 Nikolas Zimmermann <nzimmermann@rim.com>
  19523. Reviewed by Rob Buis.
  19524. Convert SVGRect to the new SVGPropertyTearOff concept
  19525. https://bugs.webkit.org/show_bug.cgi?id=48204
  19526. Convert the next SVG primitive type to use the SVGPropertyTearOff concept: SVGRect.
  19527. Added new test verifying that StrictTypeChecking is enabled for SVGRect. Refactor and share code between JSC/V8/ObjC generators.
  19528. Test: svg/dom/SVGRect.html
  19529. * GNUmakefile.am: Add SVGAnimatedRect.h to build.
  19530. * WebCore.gypi: Ditto.
  19531. * WebCore.pro: Ditto.
  19532. * WebCore.vcproj/WebCore.vcproj: Ditto.
  19533. * WebCore.xcodeproj/project.pbxproj: Ditto.
  19534. * bindings/scripts/CodeGenerator.pm: Refactor SVGPropertyTearOff handling, and share code between JSC/V8/ObjC generators.
  19535. * bindings/scripts/CodeGeneratorJS.pm: Ditto.
  19536. * bindings/scripts/CodeGeneratorObjC.pm: Ditto.
  19537. * bindings/scripts/CodeGeneratorV8.pm: Ditto.
  19538. * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove SVGAnimatedRect handling.
  19539. * svg/DeprecatedSVGAnimatedTemplate.h: Ditto.
  19540. * svg/SVGAngle.idl: Remove [SVGProperty] flag.
  19541. * svg/SVGAnimatedAngle.idl: Remove [SVGAnimatedProperty] flag.
  19542. * svg/SVGAnimatedLength.idl: Ditto.
  19543. * svg/SVGAnimatedLengthList.idl: Ditto.
  19544. * svg/SVGAnimatedRect.h: Added.
  19545. * svg/SVGFitToViewBox.h: SVGRect now uses the new tear off concept, adapt code.
  19546. * svg/SVGLength.idl: Remove [SVGProperty] flag.
  19547. * svg/SVGMarkerElement.h:
  19548. * svg/SVGPatternElement.h:
  19549. * svg/SVGRect.idl: Remove [PODType] flag, add StrictTypeChecking to all attributes.
  19550. * svg/SVGSVGElement.cpp: s/setViewBox/setViewBoxBaseValue/.
  19551. (WebCore::SVGSVGElement::currentView):
  19552. (WebCore::SVGSVGElement::inheritViewAttributes):
  19553. * svg/SVGSVGElement.h:
  19554. * svg/SVGSVGElement.idl: Remove [Immutable] flags for SVGRect types, no longer needed.
  19555. * svg/SVGSymbolElement.h:
  19556. * svg/SVGViewElement.h:
  19557. * svg/SVGViewSpec.cpp: Take a SVGElement as context element.
  19558. (WebCore::SVGViewSpec::SVGViewSpec):
  19559. * svg/SVGViewSpec.h: Ditto.
  19560. (WebCore::SVGViewSpec::contextElement):
  19561. * svg/SVGZoomEvent.idl: Remove [Immutable] flags for SVGRect types, no longer needed.
  19562. * svg/properties/SVGAnimatedPropertyMacros.h: Support declaring animated properties on non-SVGElement types (here: SVGViewSpec), just like the old macros handled it.
  19563. 2010-10-27 Pavel Podivilov <podivilov@chromium.org>
  19564. Unreviewed, fix line endings in InspectorState.h
  19565. * inspector/InspectorState.h:
  19566. 2010-10-27 Pavel Podivilov <podivilov@chromium.org>
  19567. Reviewed by Pavel Feldman.
  19568. Web Inspector: move frontend settings to local storage
  19569. https://bugs.webkit.org/show_bug.cgi?id=47715
  19570. * inspector/Inspector.idl:
  19571. * inspector/InspectorController.cpp:
  19572. (WebCore::InspectorController::InspectorController):
  19573. (WebCore::InspectorController::didCommitLoad):
  19574. * inspector/InspectorController.h:
  19575. * inspector/InspectorState.cpp:
  19576. (WebCore::InspectorState::InspectorState):
  19577. * inspector/InspectorState.h:
  19578. * inspector/front-end/ConsoleView.js:
  19579. * inspector/front-end/EventListenersSidebarPane.js:
  19580. * inspector/front-end/NetworkPanel.js:
  19581. (WebInspector.NetworkPanel.prototype._createStatusbarButtons):
  19582. * inspector/front-end/Panel.js:
  19583. (WebInspector.Panel):
  19584. * inspector/front-end/ResourcesPanel.js:
  19585. (WebInspector.ResourcesPanel.prototype._createStatusbarButtons):
  19586. * inspector/front-end/Settings.js:
  19587. (WebInspector.Settings):
  19588. (WebInspector.Settings.prototype.installApplicationSetting):
  19589. (WebInspector.Settings.prototype.installProjectSetting):
  19590. (WebInspector.Settings.prototype._get):
  19591. (WebInspector.Settings.prototype._set):
  19592. (WebInspector.Settings.prototype._getProjectSetting):
  19593. (WebInspector.Settings.prototype._setProjectSetting):
  19594. (WebInspector.Settings.prototype._formatProjectKey):
  19595. * inspector/front-end/StylesSidebarPane.js:
  19596. * inspector/front-end/WatchExpressionsSidebarPane.js:
  19597. (WebInspector.WatchExpressionsSidebarPane):
  19598. (WebInspector.WatchExpressionsSidebarPane.prototype.reset):
  19599. * inspector/front-end/inspector.js:
  19600. (WebInspector.reset):
  19601. 2010-10-27 Andy Estes <aestes@apple.com>
  19602. Reviewed by David Hyatt.
  19603. Siblings of floated elements should be cleared below the float if they
  19604. are too wide to fit in the containing block.
  19605. https://bugs.webkit.org/show_bug.cgi?id=48396
  19606. Test: fast/block/float/clear-element-too-wide-for-containing-block.html
  19607. WebKit did not clear elements adjacent to floats if they were wider than
  19608. the containing block, instead keeping them on the same line and allowing
  19609. them to spill out the right side of the containing block. We should
  19610. match the spec in this regard and clear the element below the float even
  19611. if it is too wide for the containing block. Doing this seems to also
  19612. match IE's and Firefox's behavior.
  19613. * rendering/RenderBlock.cpp:
  19614. (WebCore::RenderBlock::getClearDelta): Continue to compute the clear
  19615. delta even if the child's minimum preferred width is greater than the
  19616. containing block's available width.
  19617. 2010-10-26 Rob Buis <rwlbuis@gmail.com>
  19618. Reviewed by Nikolas Zimmermann.
  19619. Title-Element has no popup on <svg>-Elements, but on <g>
  19620. https://bugs.webkit.org/show_bug.cgi?id=47669
  19621. Allow tooltips on non-root svg elements.
  19622. No new tests.
  19623. * svg/SVGStyledElement.cpp:
  19624. 2010-10-26 Dai Mikurube <dmikurube@google.com>
  19625. Reviewed by Kent Tamura.
  19626. constraint validation: stepMismatch (rounding error)
  19627. https://bugs.webkit.org/show_bug.cgi?id=48220
  19628. 1. Changed the computation to achieve difference from a integral
  19629. multiple of the allowed value step.
  19630. The previous fmod(doubleValue, step) sometimes returned unacceptable
  19631. remainder. For example,
  19632. double doubleValue = 1.005; // Actually, near to 1.005
  19633. double step = 0.005; // Actually, near to 0.005
  19634. fmod(doubleValue, step) ==> (near to) 0.005
  19635. It's a case that doubleValue is a little smaller than 1.005 and step is
  19636. a little larger than 0.005.
  19637. 2. Changed the error threshold.
  19638. Number values in HTML5 are expressed in IEEE 754 single-precision.
  19639. Too precise comparison sometimes leads unintended errors.
  19640. For example, I found a case :
  19641. remainder = 0.00000000000000022204460
  19642. acceptableError = 0.00000000000000007105427
  19643. * html/NumberInputType.cpp:
  19644. (WebCore::NumberInputType::stepMismatch):
  19645. 2010-10-26 Chris Rogers <crogers@google.com>
  19646. Reviewed by Kenneth Russell.
  19647. Add DelayNode files
  19648. https://bugs.webkit.org/show_bug.cgi?id=47516
  19649. No new tests since audio API is not yet implemented.
  19650. * webaudio/DelayNode.cpp: Added.
  19651. (WebCore::DelayNode::DelayNode):
  19652. (WebCore::DelayNode::delayTime):
  19653. * webaudio/DelayNode.h: Added.
  19654. (WebCore::DelayNode::create):
  19655. (WebCore::DelayNode::delayProcessor):
  19656. * webaudio/DelayNode.idl: Added.
  19657. 2010-10-26 Chris Rogers <crogers@google.com>
  19658. Reviewed by Kenneth Russell.
  19659. AudioContext and AudioNode followup changes for AudioNodeInput/AudioNodeOutput thread safety
  19660. https://bugs.webkit.org/show_bug.cgi?id=47504
  19661. No new tests since audio API is not yet implemented.
  19662. * webaudio/AudioContext.cpp:
  19663. (WebCore::AudioContext::isAudioThread):
  19664. (WebCore::AudioContext::isGraphOwner):
  19665. (WebCore::AudioContext::handlePreRenderTasks):
  19666. (WebCore::AudioContext::handlePostRenderTasks):
  19667. (WebCore::AudioContext::deleteMarkedNodes):
  19668. (WebCore::AudioContext::markAudioNodeInputDirty):
  19669. (WebCore::AudioContext::markAudioNodeOutputDirty):
  19670. (WebCore::AudioContext::handleDirtyAudioNodeInputs):
  19671. (WebCore::AudioContext::handleDirtyAudioNodeOutputs):
  19672. * webaudio/AudioContext.h:
  19673. * webaudio/AudioNode.cpp:
  19674. * webaudio/AudioNode.h:
  19675. (WebCore::AudioNode::isMarkedForDeletion):
  19676. * webaudio/AudioNode.idl:
  19677. 2010-10-26 Chris Rogers <crogers@google.com>
  19678. Reviewed by Kenneth Russell.
  19679. Add DelayProcessor files
  19680. https://bugs.webkit.org/show_bug.cgi?id=47517
  19681. No new tests since audio API is not yet implemented.
  19682. * webaudio/DelayProcessor.cpp: Added.
  19683. (WebCore::DelayProcessor::DelayProcessor):
  19684. (WebCore::DelayProcessor::~DelayProcessor):
  19685. (WebCore::DelayProcessor::createKernel):
  19686. * webaudio/DelayProcessor.h: Added.
  19687. (WebCore::DelayProcessor::delayTime):
  19688. 2010-10-26 Chris Rogers <crogers@google.com>
  19689. Reviewed by Kenneth Russell.
  19690. Add AudioNodeOutput files
  19691. https://bugs.webkit.org/show_bug.cgi?id=45581
  19692. No new tests since audio API is not yet implemented.
  19693. * webaudio/AudioNodeOutput.cpp: Added.
  19694. (WebCore::AudioNodeOutput::AudioNodeOutput):
  19695. (WebCore::AudioNodeOutput::setNumberOfChannels):
  19696. (WebCore::AudioNodeOutput::setInternalBus):
  19697. (WebCore::AudioNodeOutput::updateRenderingState):
  19698. (WebCore::AudioNodeOutput::updateNumberOfChannels):
  19699. (WebCore::AudioNodeOutput::propagateChannelCount):
  19700. (WebCore::AudioNodeOutput::pull):
  19701. (WebCore::AudioNodeOutput::bus):
  19702. (WebCore::AudioNodeOutput::renderingFanOutCount):
  19703. (WebCore::AudioNodeOutput::fanOutCount):
  19704. (WebCore::AudioNodeOutput::addInput):
  19705. (WebCore::AudioNodeOutput::removeInput):
  19706. (WebCore::AudioNodeOutput::disconnectAllInputs):
  19707. (WebCore::AudioNodeOutput::disable):
  19708. (WebCore::AudioNodeOutput::enable):
  19709. * webaudio/AudioNodeOutput.h: Added.
  19710. (WebCore::AudioNodeOutput::node):
  19711. (WebCore::AudioNodeOutput::context):
  19712. (WebCore::AudioNodeOutput::numberOfChannels):
  19713. (WebCore::AudioNodeOutput::isChannelCountKnown):
  19714. 2010-10-26 Chris Rogers <crogers@google.com>
  19715. Reviewed by Kenneth Russell.
  19716. Add AudioNodeInput files
  19717. https://bugs.webkit.org/show_bug.cgi?id=45577
  19718. No new tests since audio API is not yet implemented.
  19719. * webaudio/AudioNodeInput.cpp: Added.
  19720. (WebCore::AudioNodeInput::AudioNodeInput):
  19721. (WebCore::AudioNodeInput::connect):
  19722. (WebCore::AudioNodeInput::disconnect):
  19723. (WebCore::AudioNodeInput::disable):
  19724. (WebCore::AudioNodeInput::enable):
  19725. (WebCore::AudioNodeInput::changedOutputs):
  19726. (WebCore::AudioNodeInput::updateRenderingState):
  19727. (WebCore::AudioNodeInput::numberOfChannels):
  19728. (WebCore::AudioNodeInput::numberOfRenderingChannels):
  19729. (WebCore::AudioNodeInput::bus):
  19730. (WebCore::AudioNodeInput::internalSummingBus):
  19731. (WebCore::AudioNodeInput::sumAllConnections):
  19732. (WebCore::AudioNodeInput::pull):
  19733. * webaudio/AudioNodeInput.h: Added.
  19734. (WebCore::AudioNodeInput::node):
  19735. (WebCore::AudioNodeInput::context):
  19736. (WebCore::AudioNodeInput::numberOfRenderingConnections):
  19737. (WebCore::AudioNodeInput::renderingOutput):
  19738. (WebCore::AudioNodeInput::isConnected):
  19739. (WebCore::AudioNodeInput::numberOfConnections):
  19740. 2010-10-26 MORITA Hajime <morrita@google.com>
  19741. Reviewed by Tony Chang.
  19742. Rolling in r70512 again, added missing null-check to
  19743. Editor::isSpellCheckingEnabled().
  19744. http://trac.webkit.org/changeset/70512
  19745. spellcheck='' should be the same as spellcheck="true"
  19746. https://bugs.webkit.org/show_bug.cgi?id=25539
  19747. * dom/Element.cpp:
  19748. (WebCore::Element::spellcheckAttributeState):
  19749. (WebCore::Element::isSpellCheckingEnabled):
  19750. * dom/Element.h:
  19751. * editing/Editor.cpp:
  19752. (WebCore::markMisspellingsOrBadGrammar):
  19753. (WebCore::Editor::isSpellCheckingEnabledInFocusedNode):
  19754. (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
  19755. * editing/Editor.h:
  19756. * platform/ContextMenu.cpp:
  19757. (WebCore::ContextMenu::populate):
  19758. 2010-10-26 Brent Fulgham <bfulgham@webkit.org>
  19759. Unreviewed build fixes.
  19760. * WebCore.vcproj/WebCore.vcproj: Turn off several non-WinCairo
  19761. files. We don't support CoreAnimation!
  19762. * WebCore.vcproj/WebCoreCairo.vsprops: Add missing include path
  19763. for 'image-decoders/webp'
  19764. * platform/network/curl/CookieJarCurl.cpp:
  19765. (WebCore::setCookieStoragePrivateBrowsingEnabled): Add build stub.
  19766. 2010-10-26 Ryosuke Niwa <rniwa@webkit.org>
  19767. Reviewed by Kent Tamura.
  19768. Crash in CompositeEditCommand::splitTreeToNode
  19769. https://bugs.webkit.org/show_bug.cgi?id=48349
  19770. The bug was caused by indentIntoBlockquote's passing null pointer to splitTreeToNode.
  19771. Fixed the crash by adding early exits.
  19772. Test: editing/execCommand/indent-node-to-split-to-crash.html
  19773. * editing/CompositeEditCommand.cpp:
  19774. (WebCore::CompositeEditCommand::splitTreeToNode):
  19775. * editing/IndentOutdentCommand.cpp:
  19776. (WebCore::IndentOutdentCommand::indentIntoBlockquote):
  19777. 2010-10-26 Ryosuke Niwa <rniwa@webkit.org>
  19778. Reviewed by Kent Tamura.
  19779. REGRESSION(r67170): crash in removeImplicitlyStyledElement
  19780. https://bugs.webkit.org/show_bug.cgi?id=48389
  19781. Fixed the crash by adding a null pointer check.
  19782. Test: editing/style/invalid-font-size.html
  19783. * editing/ApplyStyleCommand.cpp:
  19784. (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement):
  19785. 2010-10-26 Dimitri Glazkov <dglazkov@chromium.org>
  19786. Unreviewed, rolling out r70573.
  19787. http://trac.webkit.org/changeset/70573
  19788. https://bugs.webkit.org/show_bug.cgi?id=48204
  19789. Broke 39 tests on Chromium
  19790. * GNUmakefile.am:
  19791. * WebCore.gypi:
  19792. * WebCore.pro:
  19793. * WebCore.vcproj/WebCore.vcproj:
  19794. * WebCore.xcodeproj/project.pbxproj:
  19795. * bindings/scripts/CodeGenerator.pm:
  19796. * bindings/scripts/CodeGeneratorJS.pm:
  19797. * bindings/scripts/CodeGeneratorObjC.pm:
  19798. * bindings/scripts/CodeGeneratorV8.pm:
  19799. * svg/DeprecatedSVGAnimatedPropertyTraits.h:
  19800. * svg/DeprecatedSVGAnimatedTemplate.h:
  19801. * svg/SVGAngle.idl:
  19802. * svg/SVGAnimatedAngle.idl:
  19803. * svg/SVGAnimatedLength.idl:
  19804. * svg/SVGAnimatedLengthList.idl:
  19805. * svg/SVGAnimatedRect.h: Removed.
  19806. * svg/SVGFitToViewBox.h:
  19807. * svg/SVGLength.idl:
  19808. * svg/SVGMarkerElement.h:
  19809. * svg/SVGPatternElement.h:
  19810. * svg/SVGRect.idl:
  19811. * svg/SVGSVGElement.cpp:
  19812. (WebCore::SVGSVGElement::currentView):
  19813. (WebCore::SVGSVGElement::inheritViewAttributes):
  19814. * svg/SVGSVGElement.h:
  19815. * svg/SVGSVGElement.idl:
  19816. * svg/SVGSymbolElement.h:
  19817. * svg/SVGViewElement.h:
  19818. * svg/SVGViewSpec.cpp:
  19819. (WebCore::SVGViewSpec::SVGViewSpec):
  19820. * svg/SVGViewSpec.h:
  19821. (WebCore::SVGViewSpec::contextElement):
  19822. * svg/SVGZoomEvent.idl:
  19823. * svg/properties/SVGAnimatedPropertyMacros.h:
  19824. 2010-10-26 Anders Carlsson <andersca@apple.com>
  19825. Fix 32-bit build.
  19826. * platform/graphics/mac/FontMac.mm:
  19827. (WebCore::showGlyphsWithAdvances):
  19828. 2010-10-26 Jenn Braithwaite <jennb@chromium.org>
  19829. Reviewed by Dmitry Titov.
  19830. Resource tracking failure when trying to move a frame between documents
  19831. https://bugs.webkit.org/show_bug.cgi?id=44713
  19832. Test: fast/frames/iframe-reparenting-fail-load.html
  19833. * loader/DocumentLoader.cpp:
  19834. (WebCore::DocumentLoader::transferLoadingResourcesFromPage):
  19835. Added method that notifies the client to update resource tracking for
  19836. loading resources that have been transferred to a different page.
  19837. * loader/DocumentLoader.h:
  19838. * loader/EmptyClients.h:
  19839. (WebCore::EmptyFrameLoaderClient::transferLoadingResourceFromPage):
  19840. Empty method.
  19841. * loader/FrameLoader.h:
  19842. * loader/FrameLoader.cpp:
  19843. Added method that triggers resource tracking updates. This wraps
  19844. the DocumentLoader method as it appears DocumentLoader is opaque
  19845. to Frame.
  19846. * loader/FrameLoaderClient.h:
  19847. Added API to notify the client to update resource tracking for
  19848. a loading resource that has been transferred to a different page.
  19849. * page/Frame.cpp:
  19850. (WebCore::Frame::transferChildFrameToNewDocument):
  19851. Update resource tracking if page has changed.
  19852. 2010-10-26 Nikolas Zimmermann <nzimmermann@rim.com>
  19853. Reviewed by Rob Buis.
  19854. Convert SVGRect to the new SVGPropertyTearOff concept
  19855. https://bugs.webkit.org/show_bug.cgi?id=48204
  19856. Convert the next SVG primitive type to use the SVGPropertyTearOff concept: SVGRect.
  19857. Added new test verifying that StrictTypeChecking is enabled for SVGRect. Refactor and share code between JSC/V8/ObjC generators.
  19858. Test: svg/dom/SVGRect.html
  19859. * GNUmakefile.am: Add SVGAnimatedRect.h to build.
  19860. * WebCore.gypi: Ditto.
  19861. * WebCore.pro: Ditto.
  19862. * WebCore.vcproj/WebCore.vcproj: Ditto.
  19863. * WebCore.xcodeproj/project.pbxproj: Ditto.
  19864. * bindings/scripts/CodeGenerator.pm: Refactor SVGPropertyTearOff handling, and share code between JSC/V8/ObjC generators.
  19865. * bindings/scripts/CodeGeneratorJS.pm: Ditto.
  19866. * bindings/scripts/CodeGeneratorObjC.pm: Ditto.
  19867. * bindings/scripts/CodeGeneratorV8.pm: Ditto.
  19868. * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove SVGAnimatedRect handling.
  19869. * svg/DeprecatedSVGAnimatedTemplate.h: Ditto.
  19870. * svg/SVGAngle.idl: Remove [SVGProperty] flag.
  19871. * svg/SVGAnimatedAngle.idl: Remove [SVGAnimatedProperty] flag.
  19872. * svg/SVGAnimatedLength.idl: Ditto.
  19873. * svg/SVGAnimatedLengthList.idl: Ditto.
  19874. * svg/SVGAnimatedRect.h: Added.
  19875. * svg/SVGFitToViewBox.h: SVGRect now uses the new tear off concept, adapt code.
  19876. * svg/SVGLength.idl: Remove [SVGProperty] flag.
  19877. * svg/SVGMarkerElement.h:
  19878. * svg/SVGPatternElement.h:
  19879. * svg/SVGRect.idl: Remove [PODType] flag, add StrictTypeChecking to all attributes.
  19880. * svg/SVGSVGElement.cpp: s/setViewBox/setViewBoxBaseValue/.
  19881. (WebCore::SVGSVGElement::currentView):
  19882. (WebCore::SVGSVGElement::inheritViewAttributes):
  19883. * svg/SVGSVGElement.h:
  19884. * svg/SVGSVGElement.idl: Remove [Immutable] flags for SVGRect types, no longer needed.
  19885. * svg/SVGSymbolElement.h:
  19886. * svg/SVGViewElement.h:
  19887. * svg/SVGViewSpec.cpp: Take a SVGElement as context element.
  19888. (WebCore::SVGViewSpec::SVGViewSpec):
  19889. * svg/SVGViewSpec.h: Ditto.
  19890. (WebCore::SVGViewSpec::contextElement):
  19891. * svg/SVGZoomEvent.idl: Remove [Immutable] flags for SVGRect types, no longer needed.
  19892. * svg/properties/SVGAnimatedPropertyMacros.h: Support declaring animated properties on non-SVGElement types (here: SVGViewSpec), just like the old macros handled it.
  19893. 2010-10-26 takano takumi <takano1@asia.apple.com>
  19894. Reviewed by Dave Hyatt.
  19895. Advances are wrong and glyphs are rotated improperly in vertical writing
  19896. https://bugs.webkit.org/show_bug.cgi?id=48315
  19897. We shouldn't use vertical metrics for Roman fonts. Also, we should rotate vertical variant
  19898. glyphs back on drawing as the whole run has already been rotated beforehand.
  19899. * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
  19900. (WebCore::FontPlatformData::FontPlatformData): Changed to ignore vertical orientation when the font doesn't support vertical metrics.
  19901. * platform/graphics/mac/FontMac.mm:
  19902. (WebCore::showGlyphsWithAdvances): Changed to rotate glyphs -90 degree for vertical variants.
  19903. (WebCore::Font::drawGlyphs):
  19904. 2010-10-26 Satish Sampath <satish@chromium.org>
  19905. Reviewed by Jeremy Orlow.
  19906. Add a 'grammar' attribute for speech input.
  19907. https://bugs.webkit.org/show_bug.cgi?id=48339
  19908. To differentiate between various types of speech input, we add a 'x-webkit-grammar' attribute to a
  19909. speech enabled input element. This is passed without validation to the speech recognizer. Typical values
  19910. could be "builtin:search", "builtin:dictation" and even an externally hosted SRGS grammar XML file URI.
  19911. It is up to the recognizer to interpret the value and use it as an aid in recognition.
  19912. * bindings/generic/RuntimeEnabledFeatures.h:
  19913. (WebCore::RuntimeEnabledFeatures::webkitGrammarEnabled):
  19914. * html/HTMLAttributeNames.in:
  19915. * html/HTMLInputElement.idl:
  19916. * page/SpeechInput.cpp:
  19917. (WebCore::SpeechInput::startRecognition):
  19918. * page/SpeechInput.h:
  19919. * page/SpeechInputClient.h:
  19920. * platform/mock/SpeechInputClientMock.cpp:
  19921. (WebCore::SpeechInputClientMock::startRecognition):
  19922. * platform/mock/SpeechInputClientMock.h:
  19923. * rendering/TextControlInnerElements.cpp:
  19924. (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
  19925. 2010-10-26 Pavel Feldman <pfeldman@chromium.org>
  19926. Reviewed by Timothy Hatcher.
  19927. Web Inspector: console does not work after two reloads.
  19928. https://bugs.webkit.org/show_bug.cgi?id=48318
  19929. * inspector/InspectorController.cpp:
  19930. (WebCore::InspectorController::disconnectFrontend):
  19931. 2010-10-26 Pavel Podivilov <podivilov@chromium.org>
  19932. Reviewed by Pavel Feldman.
  19933. Web Inspector: console doesn't work in closures when window is overrode
  19934. https://bugs.webkit.org/show_bug.cgi?id=48320
  19935. * inspector/front-end/InjectedScript.js:
  19936. (injectedScriptConstructor.):
  19937. 2010-10-26 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
  19938. Reviewed by Kenneth Rohde Christiansen.
  19939. [Qt] Fix an assert with QtPixmapInstance creation.
  19940. https://bugs.webkit.org/show_bug.cgi?id=48323
  19941. This places the newly refcounted QtPixmapInstance in a RefPtr
  19942. to prevent an assert on the first ref() call.
  19943. * bridge/qt/qt_pixmapruntime.cpp:
  19944. (JSC::Bindings::QtPixmapInstance::createPixmapRuntimeObject):
  19945. 2010-10-26 Kenichi Ishibashi <bashi@google.com>
  19946. Reviewed by Kent Tamura.
  19947. Input Method inserts conversion candidates unexpectedly
  19948. https://bugs.webkit.org/show_bug.cgi?id=46868
  19949. Calls updateStyleIfNeeded() before setting selection for the composition to
  19950. avoid inserting the previous composition text into a content editable element
  19951. which has an event handler that changes the style of the element.
  19952. Test: platform/chromium/fast/text/chromium-mac-duplicate-ime-composition.html
  19953. * editing/Editor.cpp:
  19954. (WebCore::Editor::setComposition): calls updateStyleIfNeeded() before setting selection.
  19955. 2010-10-26 Mario Sanchez Prada <msanchez@igalia.com>
  19956. Reviewed by Chris Fleizach.
  19957. [Gtk] Layout tables should indicate that they are not data tables via an object attribute
  19958. https://bugs.webkit.org/show_bug.cgi?id=35422
  19959. Set the 'layout-guess' attribute to 'true' for data tables.
  19960. Reorganized some code in AccessibilityTable so now the function
  19961. isDataTable() is more coherent by just answering that very
  19962. specific question, regardless of whether the table is being
  19963. exposed or not to Assistive Technologies.
  19964. Hence, now it's possible to make two questions separately instead
  19965. of just one, meaning that the new function isAccessibleTable() is
  19966. now what we formerly defined as the isDataTable() function.
  19967. * accessibility/AccessibilityObject.h:
  19968. (WebCore::AccessibilityObject::isAccessibilityTable):
  19969. New function to allow asking tables both whether they are
  19970. exposed and whether they are data tables, which are different
  19971. questions whose answers might be the same in many situations,
  19972. but different sometimes (as it can happen in the GTK port).
  19973. * accessibility/AccessibilityTable.h:
  19974. * accessibility/AccessibilityTable.cpp:
  19975. (WebCore::AccessibilityTable::hasARIARole):
  19976. New, checks whether the table has a valid ARIA role.
  19977. (WebCore::AccessibilityTable::isAccessibilityTable):
  19978. New, returns the value of m_isAccessibilityTable. It's
  19979. basically the former isDataTable() function renamed.
  19980. (WebCore::AccessibilityTable::isDataTable):
  19981. Changed behaviour. Instead of just returning the value of
  19982. m_isAccessibilityTable as it did so far (which was confusing
  19983. because of that's not what the name suggests), focus on
  19984. checking whether it's a data table or not and return a bool
  19985. value accordingly. It's basically a rename of the former
  19986. isTableExposableThroughAccessibility() function, but withouth
  19987. the GTK-specific if-endif region (which didn't make sense
  19988. here now, because that was answering the question "is the table
  19989. exposed in the GTK port?", instead of "is it a data table?").
  19990. (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
  19991. Uses the hasAriaRole(), and isDataTable() to determine whether
  19992. a table should be exposed or not. Also includes the GTK-specific
  19993. if-region coming from the former implementation of the function
  19994. isTableExposableThroughAccessibility() not to check whether it's
  19995. a data table in case the rest of the checks succeeded (all
  19996. tables are exposed in the GTK port).
  19997. (WebCore::AccessibilityTable::addChildren):
  19998. Replace usage of isDataTable() with isAccessibilityTable(), to
  19999. keep exactly the same behaviour happening before this patch.
  20000. (WebCore::AccessibilityTable::roleValue): Ditto.
  20001. (WebCore::AccessibilityTable::accessibilityIsIgnored): Ditto.
  20002. (WebCore::AccessibilityTable::title): Ditto.
  20003. Updated usage of the former function isDataTable() everywhere
  20004. else, replacing it with the new isAccessibilityTable(), so keeping
  20005. exactly the same behaviour happening before this patch.
  20006. * accessibility/AccessibilityARIAGrid.cpp:
  20007. (WebCore::AccessibilityARIAGrid::addChildren):
  20008. Use isAccessibilityTable() instead of isDataTable().
  20009. * accessibility/AccessibilityARIAGridCell.cpp:
  20010. (WebCore::AccessibilityARIAGridCell::parentTable): Ditto.
  20011. * accessibility/AccessibilityARIAGridRow.cpp:
  20012. (WebCore::AccessibilityARIAGridRow::disclosedRows): Ditto.
  20013. (WebCore::AccessibilityARIAGridRow::disclosedByRow): Ditto.
  20014. (WebCore::AccessibilityARIAGridRow::parentTable): Ditto.
  20015. * accessibility/AccessibilityTableCell.cpp:
  20016. (WebCore::AccessibilityTableCell::isTableCell):
  20017. Use isAccessibilityTable() instead of isDataTable().
  20018. * accessibility/AccessibilityTableHeaderContainer.cpp:
  20019. (WebCore::AccessibilityTableHeaderContainer::addChildren): Ditto.
  20020. * accessibility/AccessibilityTableRow.cpp:
  20021. (WebCore::AccessibilityTableRow::isTableRow): Ditto
  20022. * accessibility/mac/AccessibilityObjectWrapper.mm:
  20023. (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
  20024. Use isAccessibilityTable() instead of isDataTable().
  20025. (-[AccessibilityObjectWrapper accessibilityAttributeNames]): Ditto.
  20026. (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): Ditto.
  20027. (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]): Ditto.
  20028. (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]): Ditto.
  20029. (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]): Ditto.
  20030. Use the new function isAccessibilityTable() together with the
  20031. modified implementation of isDataTable() to set the 'layout-guess'
  20032. attribute when needed.
  20033. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  20034. (webkit_accessible_get_attributes):
  20035. Set the 'layout-guess' attribute to 'true' to help Assistive
  20036. Technologies guessing which tables are not data tables.
  20037. 2010-10-26 Chris Marrin <cmarrin@apple.com>
  20038. Reviewed by Simon Fraser.
  20039. Resuming animations causes webkitAnimationStart events to be fired
  20040. https://bugs.webkit.org/show_bug.cgi?id=46540
  20041. Added a flag that makes sure start animation event is only ever
  20042. fired once.
  20043. Test: animations/suspend-resume-animation-events.html
  20044. * page/animation/KeyframeAnimation.cpp:
  20045. (WebCore::KeyframeAnimation::KeyframeAnimation):
  20046. (WebCore::KeyframeAnimation::sendAnimationEvent):
  20047. * page/animation/KeyframeAnimation.h:
  20048. 2010-10-26 Abhishek Arya <inferno@chromium.org>
  20049. Reviewed by Dimitri Glazkov.
  20050. Added checks to ensure that events types are right before casting.
  20051. https://bugs.webkit.org/show_bug.cgi?id=48345
  20052. * html/ImageDocument.cpp:
  20053. (WebCore::ImageEventListener::handleEvent):
  20054. * inspector/InspectorDOMStorageResource.cpp:
  20055. (WebCore::InspectorDOMStorageResource::handleEvent):
  20056. 2010-10-26 Dai Mikurube <dmikurube@google.com>
  20057. Reviewed by Kent Tamura.
  20058. Number values for form controls should be in the range of IEEE 754
  20059. single-precision floating point number
  20060. https://bugs.webkit.org/show_bug.cgi?id=48221
  20061. Changed the range of number values to fit in IEEE 754 single-precision
  20062. * html/parser/HTMLParserIdioms.cpp:
  20063. (WebCore::parseToDoubleForNumberType):
  20064. * html/NumberInputType.cpp:
  20065. 2010-10-26 David Hyatt <hyatt@apple.com>
  20066. Reviewed by Sam Weinig.
  20067. https://bugs.webkit.org/show_bug.cgi?id=48157
  20068. Direction and writing-mode should propagate from the <body> to the <html> to the initial containing block.
  20069. Modify the existing code that propagates from the document element to also propagate from the body.
  20070. Fix the buggy code that was trying to dirty the body when the view changed size if it stretched to fill the
  20071. viewport. The code didn't consider the root element, and it only worked with one axis. I pulled it
  20072. out of calculateScrollbarModesForLayout, since it should never have been put there in the first place.
  20073. Added four new tests in fast/blockflow.
  20074. * css/CSSStyleSelector.cpp:
  20075. (WebCore::CSSStyleSelector::initElement):
  20076. (WebCore::CSSStyleSelector::styleForDocument):
  20077. (WebCore::CSSStyleSelector::applyProperty):
  20078. * dom/Document.cpp:
  20079. (WebCore::Document::Document):
  20080. * dom/Document.h:
  20081. (WebCore::Document::directionSetOnDocumentElement):
  20082. (WebCore::Document::writingModeSetOnDocumentElement):
  20083. (WebCore::Document::setDirectionSetOnDocumentElement):
  20084. (WebCore::Document::setWritingModeSetOnDocumentElement):
  20085. * page/FrameView.cpp:
  20086. (WebCore::FrameView::calculateScrollbarModesForLayout):
  20087. (WebCore::FrameView::layout):
  20088. * rendering/RenderBox.cpp:
  20089. (WebCore::RenderBox::styleDidChange):
  20090. * rendering/RenderBox.h:
  20091. (WebCore::RenderBox::stretchesToViewport):
  20092. 2010-10-26 Joseph Pecoraro <joepeck@webkit.org>
  20093. Reviewed by David Kilzer.
  20094. Fix Cache::dumpStats formatting
  20095. https://bugs.webkit.org/show_bug.cgi?id=48286
  20096. This updates the column width in the dumpStats output to be wide enough
  20097. for all the titles. Previously one of the titles was too wide and crept
  20098. into later column space.
  20099. * loader/Cache.cpp:
  20100. (WebCore::Cache::dumpStats): make columns 13 characters wide.
  20101. 2010-10-26 Alexey Marinichev <amarinichev@chromium.org>
  20102. Reviewed by Kenneth Russell.
  20103. [chromium] Check getGraphicsResetStatusARB and reinitialize the
  20104. renderer in an error is returned.
  20105. https://bugs.webkit.org/show_bug.cgi?id=47848
  20106. Tested by failure injection (stopping in the debugger and issuing a
  20107. jump as if an error has occurred).
  20108. * platform/graphics/chromium/LayerChromium.cpp:
  20109. (WebCore::LayerChromium::setLayerRenderer):
  20110. * platform/graphics/chromium/LayerRendererChromium.h:
  20111. (WebCore::LayerRendererChromium::transferRootLayer): added
  20112. 2010-10-26 Pavel Feldman <pfeldman@chromium.org>
  20113. Not reviewed. Touching inspector controller to kick gtk build, removing comments.
  20114. * inspector/InspectorController.cpp:
  20115. * inspector/front-end/ResourceManager.js:
  20116. * inspector/front-end/ScriptsPanel.js:
  20117. 2010-10-26 Pavel Feldman <pfeldman@chromium.org>
  20118. Web Inspector: continue making resources panel optional.
  20119. https://bugs.webkit.org/show_bug.cgi?id=48261
  20120. This refactoring makes console, audits and extensions tests pass while taking data from
  20121. resources panel. Network panel as a source is to follow.
  20122. * inspector/front-end/AuditLauncherView.js:
  20123. (WebInspector.AuditLauncherView.prototype._createLauncherUI):
  20124. * inspector/front-end/AuditsPanel.js:
  20125. * inspector/front-end/ConsoleView.js:
  20126. (WebInspector.ConsoleView.prototype.addMessage):
  20127. * inspector/front-end/CookieItemsView.js:
  20128. (WebInspector.CookieItemsView.prototype._filterCookiesForDomain.populateResourcesForDocuments):
  20129. (WebInspector.CookieItemsView.prototype._filterCookiesForDomain):
  20130. * inspector/front-end/ExtensionServer.js:
  20131. (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource):
  20132. (WebInspector.ExtensionServer.prototype._onGetResources):
  20133. (WebInspector.ExtensionServer.prototype._onGetResourceContent):
  20134. * inspector/front-end/HAREntry.js:
  20135. (WebInspector.HARLog.prototype.build):
  20136. (WebInspector.HARLog.prototype.buildMainResourceTimings):
  20137. (WebInspector.HARLog.prototype._convertResource):
  20138. * inspector/front-end/NetworkPanel.js:
  20139. (WebInspector.NetworkPanel):
  20140. (WebInspector.NetworkPanel.prototype._reset):
  20141. (WebInspector.NetworkPanel.prototype.get resources):
  20142. (WebInspector.NetworkPanel.prototype.addResource):
  20143. * inspector/front-end/Resource.js:
  20144. (WebInspector.Resource.prototype.set category):
  20145. * inspector/front-end/ResourceCategory.js:
  20146. (WebInspector.ResourceCategory):
  20147. (WebInspector.ResourceCategory.prototype.toString):
  20148. * inspector/front-end/ResourceManager.js:
  20149. (WebInspector.ResourceManager.prototype.identifierForInitialRequest):
  20150. (WebInspector.ResourceManager.prototype.willSendRequest):
  20151. (WebInspector.ResourceManager.prototype.didFinishLoading):
  20152. (WebInspector.ResourceManager.prototype.didFailLoading):
  20153. (WebInspector.ResourceManager.prototype.didLoadResourceFromMemoryCache):
  20154. (WebInspector.ResourceManager.prototype.setOverrideContent):
  20155. (WebInspector.ResourceTreeModel.prototype._callForFrameResources):
  20156. * inspector/front-end/ResourcesPanel.js:
  20157. (WebInspector.ResourcesPanel):
  20158. (WebInspector.ResourcesPanel.prototype.reset):
  20159. (WebInspector.ResourcesPanel.prototype.addResource):
  20160. (WebInspector.ResourcesPanel.prototype.removeResource):
  20161. (WebInspector.ResourcesPanel.prototype._toggleResourceTracking):
  20162. * inspector/front-end/ScriptsPanel.js:
  20163. (WebInspector.ScriptsPanel.prototype.addScript):
  20164. (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished):
  20165. (WebInspector.ScriptsPanel.prototype._breakpointAdded):
  20166. * inspector/front-end/StylesSidebarPane.js:
  20167. (WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL):
  20168. * inspector/front-end/inspector.js:
  20169. (WebInspector._updateFocusedNode):
  20170. (WebInspector.get networkResources):
  20171. (WebInspector.forAllResources):
  20172. (WebInspector.resourceForURL):
  20173. (WebInspector.updateResource):
  20174. (WebInspector.domContentEventFired):
  20175. (WebInspector.loadEventFired):
  20176. (WebInspector.removeResource):
  20177. (WebInspector.reset):
  20178. (WebInspector.displayNameForURL):
  20179. (WebInspector.linkifyStringAsFragment):
  20180. (WebInspector.resourceURLForRelatedNode.callback):
  20181. (WebInspector.resourceURLForRelatedNode):
  20182. 2010-10-26 Jeremy Orlow <jorlow@chromium.org>
  20183. Reviewed by Steve Block.
  20184. Fix IndexedDB crashes
  20185. https://bugs.webkit.org/show_bug.cgi?id=48266
  20186. If IDBKey returns null, type conversion failed. Handle this case
  20187. in the bindings.
  20188. Change UNKNOWN_ERR to be 1 since 0 is hard coded to mean no error.
  20189. This is just a stop-gap move until we get it figured out in standards
  20190. land.
  20191. IDBObjectStore needs to handle null ranges.
  20192. It's actually OK for m_transaction to be non-null when hitting the
  20193. destructor. We just need to then remove it from the set of pending
  20194. transactions.
  20195. The transaction can become aborted in the middle of processing a
  20196. list of tasks. Fix this.
  20197. All changes (except the last 2 races) are tested in LayoutTests.
  20198. I couldn't find a way to reliably reproduce the races.
  20199. * bindings/scripts/CodeGeneratorV8.pm:
  20200. * bindings/scripts/test/V8/V8TestObj.cpp:
  20201. (WebCore::TestObjInternal::idbKeyCallback):
  20202. * bindings/v8/IDBBindingUtilities.cpp:
  20203. (WebCore::createIDBKeyFromValue):
  20204. * storage/IDBDatabaseException.h:
  20205. * storage/IDBDatabaseException.idl:
  20206. * storage/IDBObjectStoreBackendImpl.cpp:
  20207. (WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
  20208. * storage/IDBRequest.cpp:
  20209. (WebCore::IDBRequest::~IDBRequest):
  20210. (WebCore::IDBRequest::timerFired):
  20211. * storage/IDBTransactionBackendImpl.cpp:
  20212. (WebCore::IDBTransactionBackendImpl::taskTimerFired):
  20213. 2010-10-25 Andrey Kosyakov <caseq@chromium.org>
  20214. Reviewed by Pavel Feldman.
  20215. Web Inspector: Show cookie data in the request headers in network pane
  20216. https://bugs.webkit.org/show_bug.cgi?id=16531
  20217. * inspector/front-end/CookieItemsView.js:
  20218. (WebInspector.CookieItemsView): Factor out common cookies grid logic to CookiesTable
  20219. (WebInspector.CookieItemsView.prototype._populateDataGrid):
  20220. * inspector/front-end/CookieParser.js: Store cookie type (request/response) within a cookie.
  20221. (WebInspector.CookieParser.prototype.parseCookie):
  20222. (WebInspector.CookieParser.prototype.parseSetCookie):
  20223. (WebInspector.CookieParser.prototype._addCookie):
  20224. (WebInspector.Cookie):
  20225. * inspector/front-end/DataGrid.js:
  20226. (WebInspector.DataGrid.prototype.autoSizeColumns): Optionally, traverse nested nodes when looking for max field widths.
  20227. (WebInspector.DataGrid.prototype._enumerateChildren):
  20228. (WebInspector.DataGrid.prototype.updateWidths): Skip attempt to calculate column widths if grid is not attached to DOM tree yet.
  20229. * inspector/front-end/FontView.js:
  20230. (WebInspector.FontView.prototype.resize):
  20231. * inspector/front-end/ResourceView.js:
  20232. (WebInspector.ResourceView.prototype.resize):
  20233. (WebInspector.ResourceView.prototype._selectTab):
  20234. (WebInspector.ResourceView.prototype._selectCookiesTab):
  20235. (WebInspector.ResourceView.prototype._innerSelectContentTab):
  20236. (WebInspector.ResourceView.prototype._refreshRequestHeaders):
  20237. (WebInspector.ResourceView.prototype._refreshResponseHeaders):
  20238. (WebInspector.ResourceView.prototype._refreshHeaders):
  20239. (WebInspector.ResourceView.prototype._refreshCookies):
  20240. (WebInspector.ResourceCookiesTab):
  20241. (WebInspector.ResourceCookiesTab.prototype.set requestCookies):
  20242. (WebInspector.ResourceCookiesTab.prototype.set responseCookies):
  20243. (WebInspector.ResourceCookiesTab.prototype._populateDataGrid):
  20244. (WebInspector.ResourceCookiesTab.prototype._populateCookies):
  20245. (WebInspector.ResourceCookiesTab.prototype._createFolder):
  20246. * inspector/front-end/SourceView.js:
  20247. (WebInspector.SourceView.prototype.resize):
  20248. * inspector/front-end/inspector.css:
  20249. (.resource-view .resource-view-cookies):
  20250. (.resource-view.headers-visible .resource-view-cookies):
  20251. (.resource-view-cookies.table .data-grid):
  20252. (.resource-view-cookies .data-grid .row-group):
  20253. 2010-10-26 Sheriff Bot <webkit.review.bot@gmail.com>
  20254. Unreviewed, rolling out r70518.
  20255. http://trac.webkit.org/changeset/70518
  20256. https://bugs.webkit.org/show_bug.cgi?id=48332
  20257. Breaks inspector tests. (Requested by pfeldman on #webkit).
  20258. * inspector/front-end/AuditLauncherView.js:
  20259. (WebInspector.AuditLauncherView.prototype._createLauncherUI):
  20260. * inspector/front-end/AuditsPanel.js:
  20261. * inspector/front-end/ConsoleView.js:
  20262. (WebInspector.ConsoleView.prototype.addMessage):
  20263. * inspector/front-end/CookieItemsView.js:
  20264. (WebInspector.CookieItemsView.prototype._filterCookiesForDomain):
  20265. * inspector/front-end/ExtensionServer.js:
  20266. (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource):
  20267. (WebInspector.ExtensionServer.prototype._onGetResources):
  20268. (WebInspector.ExtensionServer.prototype._onGetResourceContent):
  20269. * inspector/front-end/HAREntry.js:
  20270. (WebInspector.HARLog.prototype.build):
  20271. (WebInspector.HARLog.prototype.buildMainResourceTimings):
  20272. (WebInspector.HARLog.prototype._convertResource):
  20273. * inspector/front-end/NetworkPanel.js:
  20274. (WebInspector.NetworkPanel):
  20275. (WebInspector.NetworkPanel.prototype._reset):
  20276. (WebInspector.NetworkPanel.prototype.addResource):
  20277. * inspector/front-end/Resource.js:
  20278. (WebInspector.Resource.prototype.set category):
  20279. * inspector/front-end/ResourceCategory.js:
  20280. (WebInspector.ResourceCategory):
  20281. (WebInspector.ResourceCategory.prototype.toString):
  20282. (WebInspector.ResourceCategory.prototype.addResource):
  20283. (WebInspector.ResourceCategory.prototype.removeResource):
  20284. (WebInspector.ResourceCategory.prototype.removeAllResources):
  20285. * inspector/front-end/ResourceManager.js:
  20286. (WebInspector.ResourceManager.prototype.identifierForInitialRequest):
  20287. (WebInspector.ResourceManager.prototype.willSendRequest):
  20288. (WebInspector.ResourceManager.prototype.didFinishLoading):
  20289. (WebInspector.ResourceManager.prototype.didFailLoading):
  20290. (WebInspector.ResourceManager.prototype.didLoadResourceFromMemoryCache):
  20291. (WebInspector.ResourceManager.prototype.setOverrideContent):
  20292. (WebInspector.ResourceTreeModel.prototype._callForFrameResources):
  20293. * inspector/front-end/ResourcesPanel.js:
  20294. (WebInspector.ResourcesPanel):
  20295. (WebInspector.ResourcesPanel.prototype.reset):
  20296. (WebInspector.ResourcesPanel.prototype.addResource):
  20297. (WebInspector.ResourcesPanel.prototype.removeResource):
  20298. (WebInspector.ResourcesPanel.prototype._toggleResourceTracking):
  20299. * inspector/front-end/ScriptsPanel.js:
  20300. (WebInspector.ScriptsPanel.prototype.addScript):
  20301. (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished):
  20302. (WebInspector.ScriptsPanel.prototype._breakpointAdded):
  20303. * inspector/front-end/StylesSidebarPane.js:
  20304. (WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL):
  20305. * inspector/front-end/inspector.js:
  20306. (WebInspector._updateFocusedNode):
  20307. (WebInspector.updateResource):
  20308. (WebInspector.domContentEventFired):
  20309. (WebInspector.loadEventFired):
  20310. (WebInspector.removeResource):
  20311. (WebInspector.reset):
  20312. (WebInspector.displayNameForURL):
  20313. (WebInspector.resourceForURL):
  20314. (WebInspector.linkifyStringAsFragment):
  20315. (WebInspector.resourceURLForRelatedNode):
  20316. 2010-10-26 Jeremy Orlow <jorlow@chromium.org>
  20317. Reviewed by Steve Block.
  20318. Quota for IndexedDB should be per origin not per database
  20319. https://bugs.webkit.org/show_bug.cgi?id=48064
  20320. Merge all databases for each origin into a single SQLiteDatabase.
  20321. Replace the awkward metaData table with a Database table.
  20322. Create a new IDBSQLiteDatabase class that wraps SQLiteDatabase
  20323. and implements weak pointer semantics for IDBFactory. It's ref
  20324. counted so multiple IDBDatabaseBackendImpls can share one.
  20325. Fix uniqueness constraints that were overly conservitive.
  20326. Get rid of the code that blows away existing data every time
  20327. the database is opened.
  20328. Get rid of the fairly useless indexedDB manual test and replace
  20329. it with one that verifies data persists.
  20330. Use name+origin (not just name) in our cache of IDBDatabaseBackend
  20331. objects (so one origin can't access anothers' data).
  20332. Test: storage/indexeddb/duplicates.html
  20333. * WebCore.gypi:
  20334. * manual-tests/indexed-database.html: Removed.
  20335. * manual-tests/indexeddb-persists.html: Added.
  20336. * storage/IDBDatabaseBackendImpl.cpp:
  20337. (WebCore::extractMetaData):
  20338. (WebCore::setMetaData):
  20339. (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl):
  20340. (WebCore::IDBDatabaseBackendImpl::setDescription):
  20341. (WebCore::IDBDatabaseBackendImpl::sqliteDatabase):
  20342. (WebCore::IDBDatabaseBackendImpl::createObjectStoreInternal):
  20343. (WebCore::IDBDatabaseBackendImpl::setVersionInternal):
  20344. (WebCore::IDBDatabaseBackendImpl::loadObjectStores):
  20345. * storage/IDBDatabaseBackendImpl.h:
  20346. (WebCore::IDBDatabaseBackendImpl::create):
  20347. (WebCore::IDBDatabaseBackendImpl::id):
  20348. * storage/IDBFactoryBackendImpl.cpp:
  20349. (WebCore::IDBFactoryBackendImpl::removeSQLiteDatabase):
  20350. (WebCore::openSQLiteDatabase):
  20351. (WebCore::createTables):
  20352. (WebCore::IDBFactoryBackendImpl::open):
  20353. (WebCore::IDBFactoryBackendImpl::databaseFileName):
  20354. * storage/IDBFactoryBackendImpl.h:
  20355. * storage/IDBObjectStoreBackendImpl.cpp:
  20356. (WebCore::putObjectStoreData):
  20357. (WebCore::IDBObjectStoreBackendImpl::putInternal):
  20358. * storage/IDBSQLiteDatabase.cpp: Added.
  20359. (WebCore::IDBSQLiteDatabase::IDBSQLiteDatabase):
  20360. (WebCore::IDBSQLiteDatabase::~IDBSQLiteDatabase):
  20361. * storage/IDBSQLiteDatabase.h: Added.
  20362. (WebCore::IDBSQLiteDatabase::create):
  20363. (WebCore::IDBSQLiteDatabase::db):
  20364. 2010-10-20 Andrey Kosyakov <caseq@chromium.org>
  20365. Reviewed by Yury Semikhatsky.
  20366. Inspector needs to use cached resources to display image resources.
  20367. https://bugs.webkit.org/show_bug.cgi?id=16395
  20368. * inspector/Inspector.idl: Add base64Encode parameter to getContent
  20369. * inspector/InspectorResourceAgent.cpp:
  20370. (WebCore::InspectorResourceAgent::resourceContent):
  20371. * inspector/InspectorResourceAgent.h:
  20372. * inspector/front-end/ExtensionServer.js:
  20373. (WebInspector.ExtensionServer.prototype._onGetResourceContent):
  20374. * inspector/front-end/ImageView.js:
  20375. (WebInspector.ImageView.prototype.contentTabSelected.onResourceContent):
  20376. (WebInspector.ImageView.prototype.contentTabSelected):
  20377. * inspector/front-end/NetworkPanel.js:
  20378. (WebInspector.NetworkDataGridNode.prototype._refreshNameCell.):
  20379. (WebInspector.NetworkDataGridNode.prototype._refreshNameCell):
  20380. * inspector/front-end/Resource.js:
  20381. (WebInspector.Resource):
  20382. (WebInspector.Resource.prototype.set finished):
  20383. (WebInspector.Resource.prototype.getContent):
  20384. (WebInspector.Resource.prototype.get contentURL):
  20385. (WebInspector.Resource.prototype._requestContent.onResourceContent):
  20386. (WebInspector.Resource.prototype._requestContent):
  20387. * inspector/front-end/ResourcesPanel.js:
  20388. (WebInspector.ResourceSidebarTreeElement.prototype.createIconElement.):
  20389. (WebInspector.ResourceSidebarTreeElement.prototype.createIconElement):
  20390. * inspector/front-end/Settings.js: Added useDataURLForResourceImageIcons
  20391. * inspector/front-end/SourceView.js:
  20392. (WebInspector.SourceView.prototype.setupSourceFrameIfNeeded):
  20393. 2010-10-26 Pavel Feldman <pfeldman@chromium.org>
  20394. Reviewed by Timothy Hatcher.
  20395. Web Inspector: continue making resources panel optional.
  20396. https://bugs.webkit.org/show_bug.cgi?id=48261
  20397. This refactoring makes console, audits and extensions tests pass while taking data from
  20398. resources panel. Network panel as a source is to follow.
  20399. * inspector/InspectorController.cpp:
  20400. (WebCore::InspectorController::connectFrontend):
  20401. * inspector/front-end/AuditLauncherView.js:
  20402. (WebInspector.AuditLauncherView.prototype._createLauncherUI):
  20403. * inspector/front-end/AuditsPanel.js:
  20404. * inspector/front-end/ConsoleView.js:
  20405. (WebInspector.ConsoleView.prototype.addMessage):
  20406. * inspector/front-end/CookieItemsView.js:
  20407. (WebInspector.CookieItemsView.prototype._filterCookiesForDomain.populateResourcesForDocuments):
  20408. (WebInspector.CookieItemsView.prototype._filterCookiesForDomain):
  20409. * inspector/front-end/ExtensionServer.js:
  20410. (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource):
  20411. (WebInspector.ExtensionServer.prototype._onGetResources):
  20412. (WebInspector.ExtensionServer.prototype._onGetResourceContent):
  20413. * inspector/front-end/HAREntry.js:
  20414. (WebInspector.HARLog.prototype.build):
  20415. (WebInspector.HARLog.prototype.buildMainResourceTimings):
  20416. (WebInspector.HARLog.prototype._convertResource):
  20417. * inspector/front-end/NetworkPanel.js:
  20418. (WebInspector.NetworkPanel):
  20419. (WebInspector.NetworkPanel.prototype._reset):
  20420. (WebInspector.NetworkPanel.prototype.get resources):
  20421. (WebInspector.NetworkPanel.prototype.addResource):
  20422. * inspector/front-end/Resource.js:
  20423. (WebInspector.Resource.prototype.set category):
  20424. * inspector/front-end/ResourceCategory.js:
  20425. (WebInspector.ResourceCategory):
  20426. (WebInspector.ResourceCategory.prototype.toString):
  20427. * inspector/front-end/ResourceManager.js:
  20428. (WebInspector.ResourceManager.prototype.identifierForInitialRequest):
  20429. (WebInspector.ResourceManager.prototype.willSendRequest):
  20430. (WebInspector.ResourceManager.prototype.didFinishLoading):
  20431. (WebInspector.ResourceManager.prototype.didFailLoading):
  20432. (WebInspector.ResourceManager.prototype.didLoadResourceFromMemoryCache):
  20433. (WebInspector.ResourceManager.prototype.setOverrideContent):
  20434. (WebInspector.ResourceTreeModel.prototype._callForFrameResources):
  20435. * inspector/front-end/ResourcesPanel.js:
  20436. (WebInspector.ResourcesPanel):
  20437. (WebInspector.ResourcesPanel.prototype.reset):
  20438. (WebInspector.ResourcesPanel.prototype.addResource):
  20439. (WebInspector.ResourcesPanel.prototype.removeResource):
  20440. (WebInspector.ResourcesPanel.prototype._toggleResourceTracking):
  20441. * inspector/front-end/ScriptsPanel.js:
  20442. (WebInspector.ScriptsPanel.prototype.addScript):
  20443. (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished):
  20444. (WebInspector.ScriptsPanel.prototype._breakpointAdded):
  20445. * inspector/front-end/Settings.js:
  20446. * inspector/front-end/StylesSidebarPane.js:
  20447. (WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL):
  20448. * inspector/front-end/inspector.js:
  20449. (WebInspector._updateFocusedNode):
  20450. (WebInspector.get networkResources):
  20451. (WebInspector.forAllResources):
  20452. (WebInspector.resourceForURL):
  20453. (WebInspector.updateResource):
  20454. (WebInspector.domContentEventFired):
  20455. (WebInspector.loadEventFired):
  20456. (WebInspector.removeResource):
  20457. (WebInspector.reset):
  20458. (WebInspector.displayNameForURL):
  20459. (WebInspector.linkifyStringAsFragment):
  20460. (WebInspector.resourceURLForRelatedNode.callback):
  20461. (WebInspector.resourceURLForRelatedNode):
  20462. 2010-10-26 Abhishek Arya <inferno@chromium.org>
  20463. Reviewed by Adam Barth.
  20464. Protect the frame from being blown away in loadWithDocumentLoader function call.
  20465. dispatchBeforeLoadEvent can cause the frame to be freed, which gets later used in
  20466. continueLoadAfterNavigationPolicy call.
  20467. https://bugs.webkit.org/show_bug.cgi?id=48281
  20468. Test: fast/events/form-iframe-target-before-load-crash.html
  20469. * loader/FrameLoader.cpp:
  20470. (WebCore::FrameLoader::loadWithDocumentLoader):
  20471. 2010-10-26 Xan Lopez <xlopez@igalia.com>
  20472. Restore another mix-up in copy&paste error. Use height for the
  20473. vertical adjustments instead of width.
  20474. * platform/gtk/ScrollViewGtk.cpp:
  20475. (WebCore::ScrollView::setVerticalAdjustment):
  20476. 2010-10-26 Xan Lopez <xlopez@igalia.com>
  20477. Restore early return accidentally removed in previous
  20478. patch. Should make API tests pass again.
  20479. * platform/gtk/ScrollViewGtk.cpp:
  20480. (WebCore::ScrollView::setHorizontalAdjustment):
  20481. (WebCore::ScrollView::setVerticalAdjustment):
  20482. 2010-10-26 Xan Lopez <xlopez@igalia.com>
  20483. Reviewed by Martin Robinson.
  20484. [GTK] Port to new GtkScrollable interface in GTK+ 3.x
  20485. https://bugs.webkit.org/show_bug.cgi?id=48202
  20486. The new GtkScrollable API sets the adjustments individually, so
  20487. adjust the code for this fact.
  20488. * platform/ScrollView.h:
  20489. * platform/gtk/ScrollViewGtk.cpp:
  20490. (WebCore::ScrollView::setHorizontalAdjustment): new method to set the horizontal adjustment.
  20491. (WebCore::ScrollView::setVerticalAdjustment): new method to set the vertical adjustment.
  20492. (WebCore::ScrollView::setGtkAdjustments): make this just call the other two methods.
  20493. 2010-10-26 Sheriff Bot <webkit.review.bot@gmail.com>
  20494. Unreviewed, rolling out r70512.
  20495. http://trac.webkit.org/changeset/70512
  20496. https://bugs.webkit.org/show_bug.cgi?id=48314
  20497. crashes many tests (Requested by inferno-sec on #webkit).
  20498. * dom/Element.cpp:
  20499. * dom/Element.h:
  20500. * editing/Editor.cpp:
  20501. (WebCore::markMisspellingsOrBadGrammar):
  20502. (WebCore::Editor::spellCheckingEnabledInFocusedNode):
  20503. (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
  20504. * editing/Editor.h:
  20505. * platform/ContextMenu.cpp:
  20506. (WebCore::ContextMenu::populate):
  20507. 2010-10-24 MORITA Hajime <morrita@google.com>
  20508. Reviewed by Tony Chang.
  20509. spellcheck='' should be the same as spellcheck="true"
  20510. https://bugs.webkit.org/show_bug.cgi?id=25539
  20511. - Added a check for empty string and missing attribute.
  20512. - Extracted the check to Element::spellCheckingEnabled()
  20513. - Introduced SpellcheckAttributeState enum to represent the
  20514. states for spellcheck attributes.
  20515. * dom/Element.cpp:
  20516. (WebCore::Element::spellcheckAttributeState): Added.
  20517. (WebCore::Element::isSpellCheckingEnabled): Added.
  20518. * dom/Element.h:
  20519. * editing/Editor.cpp:
  20520. (WebCore::markMisspellingsOrBadGrammar):
  20521. (WebCore::Editor::isSpellCheckingEnabledInFocusedNode): Renamed, partly extracted to Element::isSpellCheckingEnabled()
  20522. (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
  20523. * editing/Editor.h:
  20524. * platform/ContextMenu.cpp:
  20525. (WebCore::ContextMenu::populate):
  20526. 2010-10-25 Kent Tamura <tkent@chromium.org>
  20527. Reviewed by Darin Adler.
  20528. Refactor HTMLInputElement: Move createRender(), appendFormData(),
  20529. saveFormControlState() and restoreFormControlState() to InputTypes.
  20530. https://bugs.webkit.org/show_bug.cgi?id=47834
  20531. This change adds BaseButtonInputType and BaseCheckableInputType. They
  20532. are super classes of some concrete InputType classes.
  20533. No new tests. Just a code refactoring.
  20534. * CMakeLists.txt: Add BaseButtonInputType and BaseCheckableInputType files.
  20535. * GNUmakefile.am: ditto.
  20536. * WebCore.gypi: ditto.
  20537. * WebCore.pro: ditto.
  20538. * WebCore.vcproj/WebCore.vcproj: ditto.
  20539. * WebCore.xcodeproj/project.pbxproj: ditto.
  20540. * html/BaseButtonInputType.cpp: Added.
  20541. (WebCore::BaseButtonInputType::appendFormData):
  20542. (WebCore::BaseButtonInputType::createRenderer):
  20543. * html/BaseButtonInputType.h: Added.
  20544. (WebCore::BaseButtonInputType::BaseButtonInputType):
  20545. * html/BaseCheckableInputType.cpp: Added.
  20546. (WebCore::BaseCheckableInputType::saveFormControlState):
  20547. (WebCore::BaseCheckableInputType::restoreFormControlState):
  20548. (WebCore::BaseCheckableInputType::appendFormData):
  20549. * html/BaseCheckableInputType.h: Added.
  20550. (WebCore::BaseCheckableInputType::BaseCheckableInputType):
  20551. * html/ButtonInputType.h: Change the super class.
  20552. (WebCore::ButtonInputType::ButtonInputType):
  20553. * html/CheckboxInputType.h: Change the super class.
  20554. (WebCore::CheckboxInputType::CheckboxInputType):
  20555. * html/FileInputType.cpp:
  20556. (WebCore::FileInputType::appendFormData):
  20557. (WebCore::FileInputType::createRenderer):
  20558. * html/FileInputType.h: Change the super class.
  20559. (WebCore::FileInputType::FileInputType):
  20560. * html/HTMLFormControlElement.h:
  20561. Make placeholderShouldBeVisible() public for access from TextFieldInputType.
  20562. * html/HTMLInputElement.cpp:
  20563. (WebCore::HTMLInputElement::saveFormControlState):
  20564. (WebCore::HTMLInputElement::restoreFormControlState):
  20565. (WebCore::HTMLInputElement::createRenderer):
  20566. (WebCore::HTMLInputElement::appendFormData):
  20567. * html/HTMLInputElement.h:
  20568. Add the following functions for ImageInputType and SubmitInputType.
  20569. (WebCore::HTMLInputElement::xPosition):
  20570. (WebCore::HTMLInputElement::yPosition):
  20571. * html/HiddenInputType.cpp:
  20572. (WebCore::HiddenInputType::createRenderer):
  20573. * html/HiddenInputType.h:
  20574. * html/ImageInputType.cpp:
  20575. (WebCore::ImageInputType::isFormDataAppendable):
  20576. (WebCore::ImageInputType::appendFormData):
  20577. (WebCore::ImageInputType::createRenderer):
  20578. * html/ImageInputType.h: Change the super class.
  20579. (WebCore::ImageInputType::ImageInputType):
  20580. * html/InputType.cpp:
  20581. (WebCore::InputType::saveFormControlState):
  20582. (WebCore::InputType::restoreFormControlState):
  20583. (WebCore::InputType::isFormDataAppendable):
  20584. (WebCore::InputType::appendFormData):
  20585. (WebCore::InputType::createRenderer):
  20586. * html/InputType.h:
  20587. * html/PasswordInputType.cpp:
  20588. (WebCore::PasswordInputType::saveFormControlState):
  20589. (WebCore::PasswordInputType::restoreFormControlState):
  20590. * html/PasswordInputType.h:
  20591. * html/RadioInputType.h: Change the super class.
  20592. (WebCore::RadioInputType::RadioInputType):
  20593. * html/RangeInputType.cpp:
  20594. (WebCore::RangeInputType::createRenderer):
  20595. * html/RangeInputType.h:
  20596. * html/ResetInputType.h:
  20597. (WebCore::ResetInputType::ResetInputType):
  20598. * html/SubmitInputType.cpp:
  20599. (WebCore::SubmitInputType::appendFormData):
  20600. * html/SubmitInputType.h: Change the super class.
  20601. (WebCore::SubmitInputType::SubmitInputType):
  20602. * html/TextFieldInputType.cpp:
  20603. (WebCore::TextFieldInputType::createRenderer):
  20604. * html/TextFieldInputType.h:
  20605. 2010-10-25 Simon Fraser <simon.fraser@apple.com>
  20606. Reviewed by Dan Bernstein.
  20607. Fix scrolling of noncomposited iframes within composited document
  20608. https://bugs.webkit.org/show_bug.cgi?id=47391
  20609. When an iframe that is painting into a compositing layer is scrolled,
  20610. we need to repaint via the RenderObject (which dirties the compositing layer contents),
  20611. rather than going out to hostWindow.
  20612. Test: compositing/iframes/composited-iframe-scroll.html
  20613. * page/FrameView.cpp:
  20614. (WebCore::FrameView::scrollContentsSlowPath):
  20615. * page/FrameView.h:
  20616. * platform/ScrollView.cpp:
  20617. (WebCore::ScrollView::scrollContents):
  20618. (WebCore::ScrollView::scrollContentsSlowPath):
  20619. * platform/ScrollView.h:
  20620. 2010-10-25 Ryosuke Niwa <rniwa@webkit.org>
  20621. Unreviewed Qt build fix for r70496.
  20622. * bridge/qt/qt_instance.cpp:
  20623. (JSC::Bindings::QtInstance::numberValue):
  20624. * bridge/qt/qt_pixmapruntime.cpp:
  20625. (JSC::Bindings::QtPixmapWidthField::valueFromInstance):
  20626. (JSC::Bindings::QtPixmapHeightField::valueFromInstance):
  20627. * bridge/qt/qt_runtime.cpp:
  20628. (JSC::Bindings::convertValueToQVariant):
  20629. (JSC::Bindings::convertQVariantToValue):
  20630. (JSC::Bindings::QtRuntimeMetaMethod::lengthGetter):
  20631. (JSC::Bindings::QtRuntimeConnectionMethod::lengthGetter):
  20632. 2010-10-25 Andy Estes <aestes@apple.com>
  20633. Reviewed by Simon Fraser.
  20634. Source change by Simon Fraser.
  20635. Setting an element's visibility property to visible has no effect when
  20636. it has a hidden parent.
  20637. https://bugs.webkit.org/show_bug.cgi?id=48267
  20638. Test: fast/layers/visible-layer-with-hidden-parent.html
  20639. When a layer is hidden, there is an optimization that removes it from
  20640. the layer tree. If the layer is made visible again, it would only mark
  20641. its own stacking context's z-order list as dirty. If there are hidden
  20642. parent layers, they need to be marked dirty as well so layers with
  20643. visible descendents are re-added to the layer tree.
  20644. * rendering/RenderLayer.cpp:
  20645. (WebCore::RenderLayer::setHasVisibleContent): Dirty the z-order lists of
  20646. all parent stacking context render layers up to and including the first
  20647. visible stacking context.
  20648. 2010-10-25 Oliver Hunt <oliver@apple.com>
  20649. Reviewed by Gavin Barraclough.
  20650. Remove exec and globalData arguments from jsNumber
  20651. https://bugs.webkit.org/show_bug.cgi?id=48270
  20652. Mechanical removal of exec parameter to jsNumber.
  20653. * bindings/js/JSAudioConstructor.cpp:
  20654. (WebCore::JSAudioConstructor::JSAudioConstructor):
  20655. * bindings/js/JSCSSStyleDeclarationCustom.cpp:
  20656. (WebCore::JSCSSStyleDeclaration::nameGetter):
  20657. * bindings/js/JSCoordinatesCustom.cpp:
  20658. (WebCore::JSCoordinates::altitude):
  20659. (WebCore::JSCoordinates::altitudeAccuracy):
  20660. (WebCore::JSCoordinates::heading):
  20661. (WebCore::JSCoordinates::speed):
  20662. * bindings/js/JSDOMWindowCustom.cpp:
  20663. (WebCore::JSDOMWindow::setTimeout):
  20664. (WebCore::JSDOMWindow::setInterval):
  20665. * bindings/js/JSDeviceMotionEventCustom.cpp:
  20666. (WebCore::createAccelerationObject):
  20667. (WebCore::createRotationRateObject):
  20668. (WebCore::JSDeviceMotionEvent::interval):
  20669. * bindings/js/JSDeviceOrientationEventCustom.cpp:
  20670. (WebCore::JSDeviceOrientationEvent::alpha):
  20671. (WebCore::JSDeviceOrientationEvent::beta):
  20672. (WebCore::JSDeviceOrientationEvent::gamma):
  20673. * bindings/js/JSGeolocationCustom.cpp:
  20674. (WebCore::JSGeolocation::watchPosition):
  20675. * bindings/js/JSHTMLInputElementCustom.cpp:
  20676. (WebCore::JSHTMLInputElement::selectionStart):
  20677. (WebCore::JSHTMLInputElement::selectionEnd):
  20678. * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
  20679. (WebCore::JSHTMLOptionsCollection::length):
  20680. * bindings/js/JSIDBKeyCustom.cpp:
  20681. (WebCore::toJS):
  20682. * bindings/js/JSInjectedScriptHostCustom.cpp:
  20683. (WebCore::InjectedScriptHost::createInjectedScript):
  20684. (WebCore::JSInjectedScriptHost::pushNodePathToFrontend):
  20685. * bindings/js/JSOptionConstructor.cpp:
  20686. (WebCore::JSOptionConstructor::JSOptionConstructor):
  20687. * bindings/js/JSSQLResultSetRowListCustom.cpp:
  20688. (WebCore::JSSQLResultSetRowList::item):
  20689. * bindings/js/JSSVGLengthCustom.cpp:
  20690. (WebCore::JSSVGLength::value):
  20691. * bindings/js/JSScriptProfileNodeCustom.cpp:
  20692. (WebCore::JSScriptProfileNode::callUID):
  20693. * bindings/js/JSWebGLRenderingContextCustom.cpp:
  20694. (WebCore::toJS):
  20695. * bindings/js/JSWorkerContextCustom.cpp:
  20696. (WebCore::JSWorkerContext::setTimeout):
  20697. (WebCore::JSWorkerContext::setInterval):
  20698. * bindings/js/JSWorkerContextErrorHandler.cpp:
  20699. (WebCore::JSWorkerContextErrorHandler::handleEvent):
  20700. * bindings/js/ScriptFunctionCall.cpp:
  20701. (WebCore::ScriptCallArgumentHandler::appendArgument):
  20702. * bindings/js/SerializedScriptValue.cpp:
  20703. (WebCore::CloneDeserializer::readTerminal):
  20704. * bindings/scripts/CodeGeneratorJS.pm:
  20705. * bridge/c/c_instance.cpp:
  20706. (JSC::Bindings::CInstance::numberValue):
  20707. * bridge/c/c_utility.cpp:
  20708. (JSC::Bindings::convertNPVariantToValue):
  20709. * bridge/jni/jsc/JNIBridgeJSC.cpp:
  20710. (JavaField::valueFromInstance):
  20711. (JavaArray::valueAt):
  20712. * bridge/jni/jsc/JavaInstanceJSC.cpp:
  20713. (JavaInstance::numberValue):
  20714. (JavaInstance::invokeMethod):
  20715. * bridge/objc/objc_instance.mm:
  20716. (ObjcInstance::numberValue):
  20717. * bridge/objc/objc_utility.mm:
  20718. (JSC::Bindings::convertObjcValueToValue):
  20719. * bridge/runtime_array.cpp:
  20720. (JSC::RuntimeArray::lengthGetter):
  20721. * bridge/runtime_method.cpp:
  20722. (JSC::RuntimeMethod::lengthGetter):
  20723. 2010-10-21 Satish Sampath <satish@chromium.org>
  20724. Reviewed by Jeremy Orlow.
  20725. Allow embedder to pass on all the speech recognition results to the input element.
  20726. https://bugs.webkit.org/show_bug.cgi?id=48068
  20727. No new tests added as functionality has not changed, tests will be added in the next
  20728. patch where these results are exposed as an attribute to scripts.
  20729. * Android.mk: Added new source files.
  20730. * GNUmakefile.am:
  20731. * WebCore.gypi:
  20732. * WebCore.pro:
  20733. * WebCore.xcodeproj/project.pbxproj:
  20734. * page/SpeechInput.cpp:
  20735. (WebCore::SpeechInput::setRecognitionResult): Accept an array instead of a single string.
  20736. * page/SpeechInput.h:
  20737. * page/SpeechInputListener.h:
  20738. * page/SpeechInputResult.cpp: Added, defines a class for managing a speech input result.
  20739. (WebCore::SpeechInputResult::create):
  20740. (WebCore::SpeechInputResult::SpeechInputResult):
  20741. (WebCore::SpeechInputResult::confidence):
  20742. (WebCore::SpeechInputResult::utterance):
  20743. * page/SpeechInputResult.h: Added.
  20744. * platform/mock/SpeechInputClientMock.cpp:
  20745. (WebCore::SpeechInputClientMock::timerFired):
  20746. * rendering/TextControlInnerElements.cpp:
  20747. (WebCore::InputFieldSpeechButtonElement::setRecognitionResult):
  20748. * rendering/TextControlInnerElements.h:
  20749. 2010-10-25 Jian Li <jianli@chromium.org>
  20750. Reviewed by David Levin.
  20751. Support appending an ArrayBuffer object in BlobBuilder
  20752. https://bugs.webkit.org/show_bug.cgi?id=47701
  20753. Test cases have been added to read-blob-test-cases.js.
  20754. * fileapi/BlobBuilder.cpp:
  20755. (WebCore::BlobBuilder::getBuffer):
  20756. (WebCore::BlobBuilder::append): Removed bool return values since they
  20757. weren't used.
  20758. * fileapi/BlobBuilder.h:
  20759. * fileapi/BlobBuilder.idl:
  20760. 2010-10-25 No'am Rosenthal <noam.rosenthal@nokia.com>
  20761. Reviewed by Kenneth Rohde Christiansen.
  20762. [Texmap] [Qt] Texture mapper initial implementation
  20763. https://bugs.webkit.org/show_bug.cgi?id=47070
  20764. Glue layer (WebCoreSupport) changes to allow connecting TextureMapper to a Qt PageClient, i.e.
  20765. a QWebView or a QGraphicsWebView. This enables the new type, TextureMapperPlatformLayer, to be recognized both by
  20766. the compositor and by the page client.
  20767. Note that this is temporarily an opt-in, under USE(TEXTURE_MAPPER)
  20768. No new tests: the existing tests under LayoutTests/compositing already cover this.
  20769. * platform/graphics/GraphicsLayer.h:
  20770. * platform/qt/QWebPageClient.h:
  20771. (QWebPageClient::setRootGraphicsLayer):
  20772. 2010-10-25 No'am Rosenthal <noam.rosenthal@nokia.com>
  20773. Reviewed by Kenneth Rohde Christiansen.
  20774. [Texmap] [Qt] Texture mapper initial implementation
  20775. https://bugs.webkit.org/show_bug.cgi?id=47070
  20776. Add a config flag and a define (WTF_USE_TEXTURE_MAPPER) to WebCore, to enable opt-in compilation of texture-mapper with Qt.
  20777. No new tests: WIP for a new implementation.
  20778. * WebCore.pro:
  20779. 2010-10-25 Jian Li <jianli@chromium.org>
  20780. Reviewed by David Levin.
  20781. Calling FileReader.abort during reading could cause crash
  20782. https://bugs.webkit.org/show_bug.cgi?id=48163
  20783. Test: fast/files/file-reader-abort.html
  20784. * fileapi/FileReader.cpp:
  20785. (WebCore::delayedAbort):
  20786. (WebCore::FileReader::abort): Schedule to do the abort later to work
  20787. around the case that abort() could be called from event handler.
  20788. (WebCore::FileReader::doAbort):
  20789. (WebCore::FileReader::didFail): Do not go with normal error handling
  20790. when we are in the process of aborting.
  20791. (WebCore::FileReader::failed):
  20792. (WebCore::FileReader::readyState):
  20793. * fileapi/FileReader.h:
  20794. 2010-10-25 Patrick Gansterer <paroga@webkit.org>
  20795. Reviewed by Adam Roben.
  20796. [WINCE] Buildfix for NetworkStateNotifier
  20797. https://bugs.webkit.org/show_bug.cgi?id=48240
  20798. WinCE does not support RegisterWaitForSingleObject, so disable it for now.
  20799. * platform/network/win/NetworkStateNotifierWin.cpp:
  20800. (WebCore::NetworkStateNotifier::NetworkStateNotifier):
  20801. 2010-10-25 David Hyatt <hyatt@apple.com>
  20802. Reviewed by Dan Bernstein.
  20803. https://bugs.webkit.org/show_bug.cgi?id=48257
  20804. Make "rl" and "bt" writing-modes work for blocks and lines. InlineTextBox is refactored to compute the correct
  20805. top left corner and left baseline edge once so that can be passed down to all the painting functions instead of
  20806. tx and ty.
  20807. adjustment helpers have been added that can be called before painting children or lines and that fix up
  20808. the coordinates from flipped to physical.
  20809. Added fast/blockflow/english-rl-text.html and fast/blockflow/english-bt-text.html
  20810. * rendering/InlineBox.cpp:
  20811. (WebCore::InlineBox::adjustForFlippedBlocksWritingMode):
  20812. * rendering/InlineBox.h:
  20813. * rendering/InlineFlowBox.cpp:
  20814. (WebCore::InlineFlowBox::paintBoxDecorations):
  20815. (WebCore::InlineFlowBox::paintMask):
  20816. * rendering/InlineTextBox.cpp:
  20817. (WebCore::paintTextWithShadows):
  20818. (WebCore::InlineTextBox::paint):
  20819. (WebCore::InlineTextBox::paintSelection):
  20820. (WebCore::InlineTextBox::paintCompositionBackground):
  20821. (WebCore::InlineTextBox::paintDecoration):
  20822. (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
  20823. (WebCore::InlineTextBox::paintTextMatchMarker):
  20824. (WebCore::InlineTextBox::computeRectForReplacementMarker):
  20825. (WebCore::InlineTextBox::paintDocumentMarkers):
  20826. (WebCore::InlineTextBox::paintCompositionUnderline):
  20827. * rendering/InlineTextBox.h:
  20828. * rendering/RenderBlock.cpp:
  20829. (WebCore::RenderBlock::paintChildren):
  20830. (WebCore::RenderBlock::paintFloats):
  20831. * rendering/RenderBox.cpp:
  20832. (WebCore::RenderBox::adjustForFlippedBlocksWritingMode):
  20833. * rendering/RenderBox.h:
  20834. * rendering/style/RenderStyle.h:
  20835. (WebCore::InheritedFlags::isFlippedBlocksWritingMode):
  20836. 2010-10-25 Ben Murdoch <benm@google.com>
  20837. Reviewed by Steve Block.
  20838. Build break with ENABLE(BLOB) and not ENABLE(3D_CANVAS)
  20839. https://bugs.webkit.org/show_bug.cgi?id=48243
  20840. Build fix only so no new tests.
  20841. * bindings/generic/RuntimeEnabledFeatures.h: Guard appropriately.
  20842. * bindings/v8/custom/V8ArrayBufferViewCustom.h: ditto.
  20843. 2010-10-25 Cris Neckar <cdn@chromium.org>
  20844. Reviewed by Dimitri Glazkov.
  20845. Added check to ensure that events with the type "mousedown" are mouse events before dispatching.
  20846. https://bugs.webkit.org/show_bug.cgi?id=48159
  20847. Test: fast/events/keyboardevent-mousedown-crash.html
  20848. * dom/Node.cpp:
  20849. (WebCore::Node::defaultEventHandler):
  20850. 2010-10-25 Kwang Yul Seo <skyul@company100.net>
  20851. Unreviewed build fix for r70400.
  20852. Add dummy setCookieStoragePrivateBrowsingEnabled.
  20853. * platform/brew/TemporaryLinkStubs.cpp: Added.
  20854. (WebCore::setCookieStoragePrivateBrowsingEnabled):
  20855. 2010-10-25 Patrick Gansterer <paroga@webkit.org>
  20856. Reviewed by Adam Roben.
  20857. [WINCE] Use default implementation of AXObjectCache::platformGenerateAXID
  20858. https://bugs.webkit.org/show_bug.cgi?id=48239
  20859. WinCE does not support NotifyWinEvent, so use the default implementation.
  20860. * accessibility/AXObjectCache.cpp:
  20861. 2010-10-25 Sam Weinig <sam@webkit.org>
  20862. Reviewed by Anders Carlsson.
  20863. Need WebKit2 API to figure out if a frame can provide source
  20864. <rdar://problem/8424632>
  20865. https://bugs.webkit.org/show_bug.cgi?id=48252
  20866. * WebCore.exp.in:
  20867. 2010-10-25 Sheriff Bot <webkit.review.bot@gmail.com>
  20868. Unreviewed, rolling out r70451.
  20869. http://trac.webkit.org/changeset/70451
  20870. https://bugs.webkit.org/show_bug.cgi?id=48249
  20871. Broke set-unloaded-frame-location.html under Qt (Requested by
  20872. caseq on #webkit).
  20873. * ForwardingHeaders/wtf/text/TextPosition.h: Removed.
  20874. * bindings/js/ScriptSourceCode.h:
  20875. (WebCore::ScriptSourceCode::ScriptSourceCode):
  20876. * bindings/v8/ScheduledAction.cpp:
  20877. (WebCore::ScheduledAction::ScheduledAction):
  20878. * bindings/v8/ScriptController.cpp:
  20879. (WebCore::ScriptController::eventHandlerLineNumber):
  20880. (WebCore::ScriptController::eventHandlerColumnNumber):
  20881. * bindings/v8/ScriptController.h:
  20882. * bindings/v8/ScriptEventListener.cpp:
  20883. (WebCore::createAttributeEventListener):
  20884. * bindings/v8/ScriptSourceCode.h:
  20885. (WebCore::ScriptSourceCode::ScriptSourceCode):
  20886. (WebCore::ScriptSourceCode::startLine):
  20887. * bindings/v8/V8LazyEventListener.cpp:
  20888. (WebCore::V8LazyEventListener::V8LazyEventListener):
  20889. (WebCore::V8LazyEventListener::prepareListenerObject):
  20890. * bindings/v8/V8LazyEventListener.h:
  20891. (WebCore::V8LazyEventListener::create):
  20892. * bindings/v8/V8Proxy.cpp:
  20893. (WebCore::V8Proxy::compileScript):
  20894. (WebCore::V8Proxy::evaluate):
  20895. (WebCore::V8Proxy::runScript):
  20896. * bindings/v8/V8Proxy.h:
  20897. * bindings/v8/WorkerContextExecutionProxy.cpp:
  20898. (WebCore::WorkerContextExecutionProxy::evaluate):
  20899. (WebCore::WorkerContextExecutionProxy::runScript):
  20900. * bindings/v8/WorkerContextExecutionProxy.h:
  20901. * bindings/v8/WorkerScriptController.cpp:
  20902. (WebCore::WorkerScriptController::evaluate):
  20903. * dom/PendingScript.cpp:
  20904. (WebCore::PendingScript::releaseElementAndClear):
  20905. * dom/PendingScript.h:
  20906. (WebCore::PendingScript::PendingScript):
  20907. (WebCore::PendingScript::operator=):
  20908. (WebCore::PendingScript::startingLineNumber):
  20909. * dom/ScriptableDocumentParser.h:
  20910. * dom/XMLDocumentParser.h:
  20911. * dom/XMLDocumentParserLibxml2.cpp:
  20912. (WebCore::XMLDocumentParser::XMLDocumentParser):
  20913. (WebCore::XMLDocumentParser::startElementNs):
  20914. (WebCore::XMLDocumentParser::endElementNs):
  20915. (WebCore::XMLDocumentParser::lineNumber):
  20916. (WebCore::XMLDocumentParser::columnNumber):
  20917. * dom/XMLDocumentParserQt.cpp:
  20918. (WebCore::XMLDocumentParser::XMLDocumentParser):
  20919. (WebCore::XMLDocumentParser::parseStartElement):
  20920. (WebCore::XMLDocumentParser::parseEndElement):
  20921. * html/parser/HTMLDocumentParser.cpp:
  20922. (WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder):
  20923. (WebCore::HTMLDocumentParser::columnNumber):
  20924. * html/parser/HTMLDocumentParser.h:
  20925. * html/parser/HTMLScriptRunner.cpp:
  20926. (WebCore::HTMLScriptRunner::sourceFromPendingScript):
  20927. (WebCore::HTMLScriptRunner::execute):
  20928. (WebCore::HTMLScriptRunner::runScript):
  20929. * html/parser/HTMLScriptRunner.h:
  20930. * html/parser/HTMLTreeBuilder.cpp:
  20931. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  20932. (WebCore::HTMLTreeBuilder::takeScriptToProcess):
  20933. (WebCore::HTMLTreeBuilder::processEndTag):
  20934. (WebCore::HTMLTreeBuilder::processScriptStartTag):
  20935. * html/parser/HTMLTreeBuilder.h:
  20936. 2010-10-25 Kwang Yul Seo <skyul@company100.net>
  20937. Unreviewed build fix for r70095.
  20938. Provide platformDefaultLanguage().
  20939. * platform/brew/LanguageBrew.cpp: Added.
  20940. (WebCore::platformDefaultLanguage):
  20941. * platform/brew/LocalizedStringsBrew.cpp:
  20942. 2010-10-25 Patrick Gansterer <paroga@webkit.org>
  20943. Reviewed by David Kilzer.
  20944. Replace _countof with WTF_ARRAY_LENGTH
  20945. https://bugs.webkit.org/show_bug.cgi?id=48229
  20946. * platform/win/FileSystemWin.cpp:
  20947. (WebCore::openTemporaryFile):
  20948. * platform/wince/FileSystemWinCE.cpp:
  20949. (WebCore::openTemporaryFile):
  20950. * plugins/win/PluginDatabaseWin.cpp:
  20951. (WebCore::addPluginPathsFromRegistry):
  20952. (WebCore::addWindowsMediaPlayerPluginDirectory):
  20953. (WebCore::addMacromediaPluginDirectories):
  20954. 2010-10-25 David Hyatt <hyatt@apple.com>
  20955. Reviewed by Sam Weinig.
  20956. https://bugs.webkit.org/show_bug.cgi?id=48246
  20957. Make selectionRect() on InlineTextBox give the right value for a vertical line. Selection is still too broken
  20958. to test anything though.
  20959. * rendering/InlineTextBox.cpp:
  20960. (WebCore::InlineTextBox::selectionRect):
  20961. 2010-10-25 Benjamin Poulain <benjamin.poulain@nokia.com>
  20962. Reviewed by Antonio Gomes.
  20963. Typo in the TextureMapperGL
  20964. https://bugs.webkit.org/show_bug.cgi?id=48241
  20965. Fix the typo.
  20966. * platform/graphics/opengl/TextureMapperGL.cpp:
  20967. (WebCore::TextureMapperGL::TextureMapperGL):
  20968. 2010-10-25 Pavel Feldman <pfeldman@chromium.org>
  20969. Reviewed by Timothy Hatcher.
  20970. Web Inspector: slowly make old resources panel optional (continued).
  20971. https://bugs.webkit.org/show_bug.cgi?id=48207
  20972. * inspector/front-end/Resource.js:
  20973. (WebInspector.Resource.prototype.set url):
  20974. * inspector/front-end/StoragePanel.js:
  20975. (WebInspector.StoragePanel.prototype.get toolbarItemLabel):
  20976. (WebInspector.StoragePanel.prototype.showResource):
  20977. (WebInspector.StoragePanel.prototype.searchMatchFound):
  20978. (WebInspector.StoragePanel.prototype._findTreeElementForResource):
  20979. (WebInspector.StoragePanel.prototype._findTreeElementForResource.getParent):
  20980. (WebInspector.BaseStorageTreeElement.prototype.onattach):
  20981. * inspector/front-end/inspector.css:
  20982. (.storage.panel .sidebar):
  20983. (.storage.panel .sidebar li):
  20984. (.storage.panel .sidebar li.parent):
  20985. (.storage.panel .sidebar li.selected):
  20986. (.storage.panel .sidebar li .selection):
  20987. (.storage.panel .sidebar :focus li .selection):
  20988. (body.inactive .storage.panel .sidebar li .selection):
  20989. (.storage.panel .sidebar .icon):
  20990. 2010-10-25 No'am Rosenthal <noam.rosenthal@nokia.com>
  20991. Reviewed by Kenneth Rohde Christiansen.
  20992. [Texmap] [Qt] Texture mapper initial implementation
  20993. This patch adds the OpenGL implementation of TextureMapper. See the other entries from bug 47070 for details.
  20994. https://bugs.webkit.org/show_bug.cgi?id=47070
  20995. No new tests. Part of a new implementation.
  20996. * platform/graphics/opengl/TextureMapperGL.cpp: Added.
  20997. * platform/graphics/opengl/TextureMapperGL.h: Added.
  20998. 2010-10-25 Peter Rybin <peter.rybin@gmail.com>
  20999. Reviewed by Adam Barth.
  21000. HTML parser should provide script column position within HTML document to JavaScript engine
  21001. https://bugs.webkit.org/show_bug.cgi?id=45271
  21002. Replaces line number with TextPosition struct so that script engine
  21003. gets script starting line/column.
  21004. * ForwardingHeaders/wtf/text/TextPosition.h: Added.
  21005. * bindings/js/ScriptSourceCode.h:
  21006. (WebCore::ScriptSourceCode::ScriptSourceCode):
  21007. * bindings/v8/ScheduledAction.cpp:
  21008. (WebCore::ScheduledAction::ScheduledAction):
  21009. * bindings/v8/ScriptController.cpp:
  21010. (WebCore::ScriptController::eventHandlerPosition):
  21011. * bindings/v8/ScriptController.h:
  21012. * bindings/v8/ScriptEventListener.cpp:
  21013. (WebCore::createAttributeEventListener):
  21014. * bindings/v8/ScriptSourceCode.h:
  21015. (WebCore::ScriptSourceCode::ScriptSourceCode):
  21016. (WebCore::ScriptSourceCode::startLine):
  21017. (WebCore::ScriptSourceCode::startPosition):
  21018. * bindings/v8/V8LazyEventListener.cpp:
  21019. (WebCore::V8LazyEventListener::V8LazyEventListener):
  21020. (WebCore::V8LazyEventListener::prepareListenerObject):
  21021. * bindings/v8/V8LazyEventListener.h:
  21022. (WebCore::V8LazyEventListener::create):
  21023. * bindings/v8/V8Proxy.cpp:
  21024. (WebCore::V8Proxy::compileScript):
  21025. (WebCore::V8Proxy::evaluate):
  21026. (WebCore::V8Proxy::runScript):
  21027. * bindings/v8/V8Proxy.h:
  21028. * bindings/v8/WorkerContextExecutionProxy.cpp:
  21029. (WebCore::WorkerContextExecutionProxy::evaluate):
  21030. (WebCore::WorkerContextExecutionProxy::runScript):
  21031. * bindings/v8/WorkerContextExecutionProxy.h:
  21032. * bindings/v8/WorkerScriptController.cpp:
  21033. (WebCore::WorkerScriptController::evaluate):
  21034. * dom/PendingScript.cpp:
  21035. (WebCore::PendingScript::releaseElementAndClear):
  21036. * dom/PendingScript.h:
  21037. (WebCore::PendingScript::PendingScript):
  21038. (WebCore::PendingScript::operator=):
  21039. (WebCore::PendingScript::startingPosition):
  21040. * dom/ScriptableDocumentParser.h:
  21041. * dom/XMLDocumentParser.h:
  21042. * dom/XMLDocumentParserLibxml2.cpp:
  21043. (WebCore::XMLDocumentParser::XMLDocumentParser):
  21044. (WebCore::XMLDocumentParser::startElementNs):
  21045. (WebCore::XMLDocumentParser::endElementNs):
  21046. (WebCore::XMLDocumentParser::lineNumber):
  21047. (WebCore::XMLDocumentParser::columnNumber):
  21048. (WebCore::XMLDocumentParser::textPosition):
  21049. (WebCore::XMLDocumentParser::textPositionOneBased):
  21050. * dom/XMLDocumentParserQt.cpp:
  21051. (WebCore::XMLDocumentParser::XMLDocumentParser):
  21052. (WebCore::XMLDocumentParser::textPosition):
  21053. (WebCore::XMLDocumentParser::parseStartElement):
  21054. (WebCore::XMLDocumentParser::parseEndElement):
  21055. * html/parser/HTMLDocumentParser.cpp:
  21056. (WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder):
  21057. (WebCore::HTMLDocumentParser::textPosition):
  21058. * html/parser/HTMLDocumentParser.h:
  21059. * html/parser/HTMLScriptRunner.cpp:
  21060. (WebCore::HTMLScriptRunner::sourceFromPendingScript):
  21061. (WebCore::HTMLScriptRunner::execute):
  21062. (WebCore::HTMLScriptRunner::runScript):
  21063. * html/parser/HTMLScriptRunner.h:
  21064. * html/parser/HTMLTreeBuilder.cpp:
  21065. (WebCore::uninitializedPositionValue1):
  21066. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  21067. (WebCore::HTMLTreeBuilder::takeScriptToProcess):
  21068. (WebCore::HTMLTreeBuilder::processEndTag):
  21069. (WebCore::HTMLTreeBuilder::processScriptStartTag):
  21070. * html/parser/HTMLTreeBuilder.h:
  21071. 2010-10-24 Pavel Feldman <pfeldman@chromium.org>
  21072. Reviewed by Timothy Hatcher.
  21073. Web Inspector: slowly make old resources panel optional.
  21074. https://bugs.webkit.org/show_bug.cgi?id=48207
  21075. * inspector/front-end/AuditsPanel.js:
  21076. (WebInspector.AuditsPanel.prototype._reloadResources):
  21077. (WebInspector.AuditsPanel.prototype.show):
  21078. * inspector/front-end/ExtensionServer.js:
  21079. (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource):
  21080. * inspector/front-end/ResourcesPanel.js:
  21081. * inspector/front-end/ScriptsPanel.js:
  21082. (WebInspector.ScriptsPanel.prototype._sourceFrameForScriptOrResource):
  21083. (WebInspector.ScriptsPanel.prototype._sourceFrameForResource):
  21084. * inspector/front-end/inspector.js:
  21085. (WebInspector._createPanels):
  21086. (WebInspector.doLoadedDone.populateInspectorState):
  21087. (WebInspector.doLoadedDone):
  21088. (WebInspector.openResource):
  21089. (WebInspector.updateResource):
  21090. (WebInspector.domContentEventFired):
  21091. (WebInspector.loadEventFired):
  21092. (WebInspector.removeResource):
  21093. (WebInspector.displayNameForURL):
  21094. (WebInspector._choosePanelToShowSourceLine):
  21095. (WebInspector.doPerformSearch):
  21096. 2010-10-24 Pavel Feldman <pfeldman@chromium.org>
  21097. Reviewed by Timothy Hatcher.
  21098. Web Inspector: add support for errors, warnings and search to the storage panel.
  21099. https://bugs.webkit.org/show_bug.cgi?id=48206
  21100. * inspector/front-end/ConsoleView.js:
  21101. (WebInspector.ConsoleView.prototype.addMessage):
  21102. (WebInspector.ConsoleView.prototype.clearMessages):
  21103. * inspector/front-end/Resource.js:
  21104. (WebInspector.Resource.prototype.set errors):
  21105. (WebInspector.Resource.prototype.set warnings):
  21106. (WebInspector.Resource.prototype.get searchMatches):
  21107. (WebInspector.Resource.prototype.set searchMatches):
  21108. (WebInspector.Resource.prototype.clearErrorsAndWarnings):
  21109. * inspector/front-end/ResourceManager.js:
  21110. (WebInspector.ResourceManager):
  21111. (WebInspector.ResourceManager.prototype.identifierForInitialRequest):
  21112. (WebInspector.ResourceManager.prototype._createResource):
  21113. (WebInspector.ResourceManager.prototype._appendRedirect):
  21114. (WebInspector.ResourceManager.prototype.didReceiveResponse):
  21115. (WebInspector.ResourceManager.prototype.didFinishLoading):
  21116. (WebInspector.ResourceManager.prototype.didFailLoading):
  21117. (WebInspector.ResourceManager.prototype.didLoadResourceFromMemoryCache):
  21118. (WebInspector.ResourceManager.prototype.didCommitLoadForFrame):
  21119. (WebInspector.ResourceManager.prototype.frameDetachedFromParent):
  21120. (WebInspector.ResourceManager.prototype._addFramesRecursively):
  21121. (WebInspector.ResourceManager.prototype.resourceForURL):
  21122. (WebInspector.ResourceManager.prototype.addConsoleMessage):
  21123. (WebInspector.ResourceManager.prototype.clearConsoleMessages):
  21124. (WebInspector.ResourceTreeModel):
  21125. (WebInspector.ResourceTreeModel.prototype.addOrUpdateFrame):
  21126. (WebInspector.ResourceTreeModel.prototype.didCommitLoadForFrame):
  21127. (WebInspector.ResourceTreeModel.prototype.frameDetachedFromParent):
  21128. (WebInspector.ResourceTreeModel.prototype._clearChildFramesAndResources):
  21129. (WebInspector.ResourceTreeModel.prototype.addResourceToFrame):
  21130. (WebInspector.ResourceTreeModel.prototype._clearResources):
  21131. (WebInspector.ResourceTreeModel.prototype._bindResourceURL):
  21132. (WebInspector.ResourceTreeModel.prototype._unbindResourceURL):
  21133. (WebInspector.ResourceTreeModel.prototype.resourceForURL):
  21134. (WebInspector.ResourceTreeModel.prototype.forAllResources):
  21135. (WebInspector.ResourceTreeModel.prototype._callForFrameResources):
  21136. * inspector/front-end/StoragePanel.js:
  21137. (WebInspector.StoragePanel):
  21138. (WebInspector.StoragePanel.prototype.get toolbarItemLabel):
  21139. (WebInspector.StoragePanel.prototype.reset):
  21140. (WebInspector.StoragePanel.prototype.removeFrame):
  21141. (WebInspector.StoragePanel.prototype.canShowSourceLine):
  21142. (WebInspector.StoragePanel.prototype.showSourceLine):
  21143. (WebInspector.StoragePanel.prototype.showResource):
  21144. (WebInspector.StoragePanel.prototype._showResourceView):
  21145. (WebInspector.StoragePanel.prototype.updateMainViewWidth):
  21146. (WebInspector.StoragePanel.prototype.get searchableViews.callback):
  21147. (WebInspector.StoragePanel.prototype.get searchableViews):
  21148. (WebInspector.StoragePanel.prototype._forAllResourceTreeElements):
  21149. (WebInspector.StoragePanel.prototype.searchMatchFound):
  21150. (WebInspector.StoragePanel.prototype.searchCanceled.callback):
  21151. (WebInspector.StoragePanel.prototype.searchCanceled):
  21152. (WebInspector.StoragePanel.prototype.performSearch):
  21153. (WebInspector.StoragePanel.prototype.showView):
  21154. (WebInspector.BaseStorageTreeElement.prototype.onattach):
  21155. (WebInspector.BaseStorageTreeElement.prototype.set titleText):
  21156. (WebInspector.BaseStorageTreeElement.prototype.isEventWithinDisclosureTriangle):
  21157. (WebInspector.FrameResourceTreeElement):
  21158. (WebInspector.FrameResourceTreeElement.prototype.onselect):
  21159. (WebInspector.FrameResourceTreeElement.prototype.ondblclick):
  21160. (WebInspector.FrameResourceTreeElement.prototype.onattach):
  21161. (WebInspector.FrameResourceTreeElement.prototype._ondragstart):
  21162. (WebInspector.FrameResourceTreeElement.prototype._setBubbleText):
  21163. (WebInspector.FrameResourceTreeElement.prototype._resetBubble):
  21164. (WebInspector.FrameResourceTreeElement.prototype._searchMatchesUpdated):
  21165. (WebInspector.FrameResourceTreeElement.prototype._errorsWarningsUpdated):
  21166. * inspector/front-end/inspector.css:
  21167. (.storage.panel .sidebar):
  21168. (.storage.panel .outline-disclosure li):
  21169. (.storage.panel .outline-disclosure li.parent):
  21170. (.storage.panel .outline-disclosure li .selection):
  21171. (.storage.panel .outline-disclosure .icon):
  21172. (.storage.panel .base-storage-tree-element-title):
  21173. (.storage.panel .status):
  21174. (.storage.panel li .status .bubble):
  21175. (li .status):
  21176. (li .status:empty):
  21177. (li .status .bubble):
  21178. (li .status .bubble:empty):
  21179. (li.selected .status .bubble):
  21180. (:focus li.selected .status .bubble):
  21181. (body.inactive li.selected .status .bubble):
  21182. (li.selected .bubble.search-matches):
  21183. (:focus li.selected .bubble.search-matches):
  21184. (body.inactive li.selected .bubble.search-matches):
  21185. 2010-10-24 Csaba Osztrogonác <ossy@webkit.org>
  21186. Reviewed by David Kilzer.
  21187. Fix Qt minimal build break revealed by r70413.
  21188. https://bugs.webkit.org/show_bug.cgi?id=48185
  21189. * rendering/RenderMeter.h: Missing include added, needless include removed.
  21190. 2010-10-20 Kinuko Yasuda <kinuko@chromium.org>
  21191. Reviewed by Jian Li.
  21192. Renumber FileError/FileException error codes per latest File API spec changes
  21193. https://bugs.webkit.org/show_bug.cgi?id=47936
  21194. * bindings/js/JSDOMBinding.cpp:
  21195. (WebCore::setDOMException): Added FileExceptionType case.
  21196. * bindings/v8/V8Proxy.cpp:
  21197. (WebCore::V8Proxy::setDOMException): Added FileExceptionType case.
  21198. * dom/ExceptionCode.cpp:
  21199. (WebCore::getExceptionCodeDescription): Added code for FileException.
  21200. * dom/ExceptionCode.h:
  21201. * fileapi/AsyncFileWriterClient.h:
  21202. * fileapi/DirectoryEntry.cpp:
  21203. (WebCore::DirectoryEntry::getFile):
  21204. (WebCore::DirectoryEntry::getDirectory):
  21205. (WebCore::DirectoryEntry::removeRecursively):
  21206. * fileapi/DirectoryEntrySync.cpp:
  21207. (WebCore::DirectoryEntrySync::getFile):
  21208. (WebCore::DirectoryEntrySync::getDirectory):
  21209. (WebCore::DirectoryEntrySync::removeRecursively):
  21210. * fileapi/DirectoryReaderSync.cpp:
  21211. (WebCore::DirectoryReaderSync::readEntries):
  21212. * fileapi/Entry.cpp:
  21213. (WebCore::Entry::getMetadata):
  21214. (WebCore::Entry::moveTo):
  21215. (WebCore::Entry::copyTo):
  21216. (WebCore::Entry::remove):
  21217. (WebCore::Entry::getParent):
  21218. * fileapi/EntrySync.cpp:
  21219. (WebCore::EntrySync::getMetadata):
  21220. (WebCore::EntrySync::moveTo):
  21221. (WebCore::EntrySync::copyTo):
  21222. (WebCore::EntrySync::remove):
  21223. * fileapi/FileError.h: Added error code enum.
  21224. (WebCore::FileError::create):
  21225. (WebCore::FileError::code):
  21226. (WebCore::FileError::FileError):
  21227. * fileapi/FileError.idl: Rebased error code numbers.
  21228. * fileapi/FileException.h: Added exception code enum.
  21229. (WebCore::FileException::ErrorCodeToExceptionCode): Added.
  21230. * fileapi/FileException.idl: Rebased exception code numbers.
  21231. * fileapi/FileReader.cpp:
  21232. (WebCore::FileReader::abort):
  21233. (WebCore::FileReader::failed):
  21234. (WebCore::FileReader::httpStatusCodeToErrorCode): Changed from
  21235. httpStatuCodeToExceptionCode.
  21236. * fileapi/FileReader.h:
  21237. * fileapi/FileReaderSync.cpp:
  21238. (WebCore::FileReaderSyncLoader::start):
  21239. * fileapi/FileSystemCallbacks.cpp:
  21240. (WebCore::FileSystemCallbacksBase::didFail):
  21241. * fileapi/FileWriter.cpp:
  21242. (WebCore::FileWriter::write):
  21243. (WebCore::FileWriter::seek):
  21244. (WebCore::FileWriter::truncate):
  21245. (WebCore::FileWriter::abort):
  21246. (WebCore::FileWriter::didFail):
  21247. (WebCore::FileWriter::setError):
  21248. * fileapi/FileWriter.h:
  21249. * fileapi/SyncCallbackHelper.h:
  21250. (WebCore::SyncCallbackHelper::SyncCallbackHelper):
  21251. (WebCore::SyncCallbackHelper::getResult):
  21252. (WebCore::SyncCallbackHelper::setError):
  21253. * page/DOMWindow.cpp:
  21254. (WebCore::DOMWindow::requestFileSystem):
  21255. * workers/WorkerContext.cpp:
  21256. (WebCore::WorkerContext::requestFileSystem):
  21257. (WebCore::WorkerContext::requestFileSystemSync):
  21258. 2010-10-24 Dan Bernstein <mitz@apple.com>
  21259. Reviewed by Anders Carlsson.
  21260. Expose HitTestResult::absoluteMediaURL() via WebKit API
  21261. https://bugs.webkit.org/show_bug.cgi?id=48219
  21262. * WebCore.exp.in: Export HitTestResult::absoluteMediaURL().
  21263. 2010-10-24 Sam Weinig <sam@webkit.org>
  21264. Reviewed by Dan Bernstein.
  21265. Need a way to determine the screen rect for a form control in WebKit2
  21266. <rdar://problem/8530670>
  21267. https://bugs.webkit.org/show_bug.cgi?id=48216
  21268. * WebCore.exp.in: Add export.
  21269. * dom/Element.cpp:
  21270. (WebCore::Element::boundsInWindowSpace):
  21271. * dom/Element.h:
  21272. Add function to return the bounding box in window (in ScrollView terminology) space,
  21273. this is the same space as the root viewport.
  21274. 2010-10-24 Andreas Kling <kling@webkit.org>
  21275. Reviewed by Kenneth Rohde Christiansen.
  21276. [Qt] ImageBuffer::platformTransformColorSpace is unnecessarily slow
  21277. https://bugs.webkit.org/show_bug.cgi?id=48211
  21278. Grab the QImage::bits() and do direct access instead of going through
  21279. QImage::pixel() and QImage::setPixel().
  21280. This is a performance optimization, so no new tests.
  21281. * platform/graphics/qt/ImageBufferQt.cpp:
  21282. (WebCore::ImageBuffer::platformTransformColorSpace):
  21283. 2010-10-24 Dirk Schulze <krit@webkit.org>
  21284. Reviewed by Nikolas Zimmermann.
  21285. Filter example Chiseled from SVG Wow! is slow
  21286. https://bugs.webkit.org/show_bug.cgi?id=48174
  21287. Use a pointer to the ByteArray instead of the ref counted CanvasPixelArray or ImageData directly
  21288. to access the data for pixel manipulation on SVG Filters or SVG Masker. This is a
  21289. performance increase since the recurring use of the -> operator can be avoided.
  21290. FEConvolveMatrix and FELighting still need to change in a followup patch.
  21291. No functionality was changed. So, no new tests.
  21292. * platform/graphics/filters/FEBlend.cpp:
  21293. (WebCore::FEBlend::apply):
  21294. * platform/graphics/filters/FEColorMatrix.cpp:
  21295. (WebCore::luminance):
  21296. (WebCore::effectType):
  21297. (WebCore::FEColorMatrix::apply):
  21298. * platform/graphics/filters/FEComponentTransfer.cpp:
  21299. (WebCore::FEComponentTransfer::apply):
  21300. * platform/graphics/filters/FEComposite.cpp:
  21301. (WebCore::arithmetic):
  21302. (WebCore::FEComposite::apply):
  21303. * platform/graphics/filters/FEDisplacementMap.cpp:
  21304. (WebCore::FEDisplacementMap::apply):
  21305. * platform/graphics/filters/FEGaussianBlur.cpp:
  21306. (WebCore::boxBlur):
  21307. (WebCore::FEGaussianBlur::apply):
  21308. * platform/graphics/filters/FEMorphology.cpp:
  21309. (WebCore::FEMorphology::apply):
  21310. * platform/graphics/filters/FETurbulence.cpp:
  21311. (WebCore::FETurbulence::apply):
  21312. * rendering/RenderSVGResourceMasker.cpp:
  21313. (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
  21314. 2010-10-24 Pavel Feldman <pfeldman@chromium.org>
  21315. Reviewed by Timothy Hatcher.
  21316. Web Inspector: polish network panel UI.
  21317. https://bugs.webkit.org/show_bug.cgi?id=48205
  21318. * inspector/front-end/Images/frame.png:
  21319. * inspector/front-end/Images/networkIcon.png:
  21320. * inspector/front-end/NetworkPanel.js:
  21321. (WebInspector.NetworkPanel.prototype._createTable):
  21322. (WebInspector.NetworkPanel.prototype._setLargerResources):
  21323. (WebInspector.NetworkPanel.prototype._toggleGridMode):
  21324. * inspector/front-end/networkPanel.css:
  21325. (.network.panel .data-grid td):
  21326. (.network.panel .data-grid.small td):
  21327. (#network-views .resource-view.headers-visible .resource-view-content):
  21328. (#network-views.small .resource-view.headers-visible .resource-view-content):
  21329. (#network-views .resource-view-headers):
  21330. (#network-views.small .resource-view-headers):
  21331. (#network-views .resource-view .tabbed-pane-header):
  21332. (#network-views.small .resource-view .tabbed-pane-header):
  21333. 2010-10-24 Nikolas Zimmermann <nzimmermann@rim.com>
  21334. Reviewed by Dimitri Glazkov.
  21335. Convert SVGAngle to the new SVGPropertyTearOff concept, reimplement it properly
  21336. https://bugs.webkit.org/show_bug.cgi?id=48179
  21337. Fix WebGL tests. Accept 'boolean' as valid numeric type in StrictTypeChecking mode.
  21338. * bindings/scripts/CodeGeneratorJS.pm:
  21339. * bindings/scripts/CodeGeneratorV8.pm:
  21340. 2010-10-24 Nikolas Zimmermann <nzimmermann@rim.com>
  21341. Reviewed by Dirk Schulze.
  21342. Convert SVGAngle to the new SVGPropertyTearOff concept, reimplement it properly
  21343. https://bugs.webkit.org/show_bug.cgi?id=48179
  21344. Speculative fix for the WebGL tests, I was not aware they're not run on Leopard, so I missed the breakage.
  21345. * bindings/scripts/CodeGeneratorJS.pm: Restore the order of type checking in the 'StrictTypeChecking' code.
  21346. * bindings/scripts/CodeGeneratorV8.pm: Ditto.
  21347. 2010-10-23 Nikolas Zimmermann <nzimmermann@rim.com>
  21348. Reviewed by Dirk Schulze.
  21349. Convert SVGAngle to the new SVGPropertyTearOff concept, reimplement it properly
  21350. https://bugs.webkit.org/show_bug.cgi?id=48179
  21351. Rewrite SVGAngle to use the new SVGPropertyTearOff concept, and consume much less memory.
  21352. Down from two floats, one string and an ushort to one float and one ushort. Synchronize value/valueInSpecifiedUnits/valueAsString on demand.
  21353. Adding an extensive SVGAngle test, that required to implement 'StrictTypeChecking' for attribute setters (was only implemented in V8/JSC for function cals so far).
  21354. Test: svg/dom/SVGAngle.html
  21355. * GNUmakefile.am: Add SVGAnimatedAngle.h to build.
  21356. * WebCore.gypi: Ditto.
  21357. * WebCore.pro: Ditto.
  21358. * WebCore.vcproj/WebCore.vcproj: Ditto.
  21359. * WebCore.xcodeproj/project.pbxproj: Ditto.
  21360. * bindings/scripts/CodeGenerator.pm: Split IsPrimitiveType in IsPrimitiveType and IsNumericType.
  21361. * bindings/scripts/CodeGeneratorJS.pm: Implement 'StrictTypeChecking' for setters and recognize SVGAngle as new SVGPropertyTearOff type.
  21362. * bindings/scripts/CodeGeneratorObjC.pm: Ditto.
  21363. * bindings/scripts/CodeGeneratorV8.pm: Ditto.
  21364. * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove SVGAngle handling.
  21365. * svg/DeprecatedSVGAnimatedTemplate.h: Remove SVGAnimatedAngle handling.
  21366. * svg/SVGAngle.cpp: Rewrite, to consume less memory and to operate more efficient.
  21367. * svg/SVGAngle.h: Ditto.
  21368. * svg/SVGAngle.idl: Add 'StrictTypeChecking' to the value/valueInSpecifiedUnits methods.
  21369. * svg/SVGAnimatedAngle.h: Added.
  21370. * svg/SVGAnimatedAngle.idl: Mark as [SVGAnimatedProperty].
  21371. * svg/SVGMarkerElement.cpp:
  21372. (WebCore::SVGMarkerElement::parseMappedAttribute): SVGAngle::setValueAsString() now takes an ExceptionCode parameter.
  21373. * svg/SVGMarkerElement.h: s/ANIMATED_PROPERTY/ANIMATED_PROPERTY_NEW/ for the SVGAngle type.
  21374. * svg/SVGNumber.idl: Remove exception setter exceptions, which aren't needed. As we're now generating exception handlers in the bindings, it would lead to compile errors.
  21375. * svg/SVGPoint.idl: Ditto.
  21376. * svg/SVGRect.idl: Ditto.
  21377. * svg/SVGSVGElement.idl: Remove obsolete [SVGLiveProperty] flag.
  21378. 2010-10-23 Daniel Bates <dbates@rim.com>
  21379. Reviewed by Adam Barth.
  21380. Remove unused method HTMLFrameElementBase::setNameAndOpenURLCallback()
  21381. https://bugs.webkit.org/show_bug.cgi?id=48197
  21382. With the landing of the patch for bug #45365 in
  21383. changeset 67182 <http://trac.webkit.org/changeset/67182>,
  21384. HTMLFrameElementBase::setNameAndOpenURLCallback() is not needed.
  21385. Therefore, we remove it.
  21386. Before changeset 67182, HTMLFrameElementBase::attach() set up a post-attach
  21387. callback to HTMLFrameElementBase::setNameAndOpenURLCallback(). Changeset 67182
  21388. removed this callback.
  21389. No functionality was changed. So, no new tests.
  21390. * html/HTMLFrameElementBase.cpp: Remove HTMLFrameElementBase::setNameAndOpenURLCallback().
  21391. * html/HTMLFrameElementBase.h: Ditto.
  21392. 2010-10-23 Xan Lopez <xlopez@igalia.com>
  21393. Reviewed by Sam Weinig.
  21394. Unify globalData APIs
  21395. https://bugs.webkit.org/show_bug.cgi?id=47969
  21396. Adapt code to JSGlobalObject::globalData returning a reference
  21397. instead of a pointer.
  21398. * bindings/js/JSCallbackData.cpp:
  21399. (WebCore::JSCallbackData::invokeCallback):
  21400. * bindings/js/JSCustomXPathNSResolver.cpp:
  21401. (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
  21402. * bindings/js/JSEventListener.cpp:
  21403. (WebCore::JSEventListener::handleEvent):
  21404. * bindings/js/JSWorkerContextCustom.cpp:
  21405. (WebCore::JSWorkerContext::markChildren):
  21406. * bindings/js/JSWorkerContextErrorHandler.cpp:
  21407. (WebCore::JSWorkerContextErrorHandler::handleEvent):
  21408. * bindings/js/ScheduledAction.cpp:
  21409. (WebCore::ScheduledAction::executeFunctionInContext):
  21410. * bindings/js/WorkerScriptController.cpp:
  21411. (WebCore::WorkerScriptController::evaluate):
  21412. * bridge/NP_jsobject.cpp:
  21413. (_NPN_InvokeDefault):
  21414. (_NPN_Invoke):
  21415. (_NPN_Evaluate):
  21416. (_NPN_Construct):
  21417. 2010-10-23 Alexey Proskuryakov <ap@apple.com>
  21418. Windows debug build fix.
  21419. * platform/network/cf/CookieStorageCFNet.cpp: Include MainThread.h for isMainThread().
  21420. 2010-10-23 Alexey Proskuryakov <ap@apple.com>
  21421. Windows build fix.
  21422. * platform/network/cf/CookieStorageCFNet.cpp:
  21423. (WebCore::setCookieStoragePrivateBrowsingEnabled): It's adoptCF, not adoptPtr.
  21424. 2010-10-23 Alexey Proskuryakov <ap@apple.com>
  21425. Reviewed by Anders Carlsson.
  21426. https://bugs.webkit.org/show_bug.cgi?id=48083
  21427. <rdar://problem/8489082> Need WebKit2 API for private browsing (48083)
  21428. * GNUmakefile.am:
  21429. * WebCore.gypi:
  21430. * WebCore.pro:
  21431. * WebCore.vcproj/WebCore.vcproj:
  21432. Added CookieStorage.h to build files that contain headers.
  21433. * WebCore.xcodeproj/project.pbxproj: Added CookieStorage.h and CookieStorageMac.mm.
  21434. * WebCore.exp.in: Export _wkSetCookieStoragePrivateBrowsingEnabled (WebKit initializes WKSI
  21435. on WebCore's behalf).
  21436. * platform/mac/WebCoreSystemInterface.h:
  21437. * platform/mac/WebCoreSystemInterface.mm:
  21438. More work for passing the function pointer down to WebCore.
  21439. * page/Settings.cpp: (WebCore::Settings::setPrivateBrowsingEnabled): Tell cookie manager to
  21440. when to use private browsing mode. Note that although this is a per-page setting, it
  21441. actually has global effect.
  21442. * page/Settings.h: Extended a comment about what private browsing does.
  21443. * platform/android/TemporaryLinkStubs.cpp: (setCookieStoragePrivateBrowsingEnabled):
  21444. * platform/chromium/TemporaryLinkStubs.cpp: (WebCore::setCookieStoragePrivateBrowsingEnabled):
  21445. * platform/efl/TemporaryLinkStubs.cpp: (WebCore::setCookieStoragePrivateBrowsingEnabled):
  21446. * platform/gtk/TemporaryLinkStubs.cpp: (WebCore::setCookieStoragePrivateBrowsingEnabled):
  21447. * platform/haiku/TemporaryLinkStubs.cpp: (WebCore::setCookieStoragePrivateBrowsingEnabled):
  21448. * platform/qt/TemporaryLinkStubsQt.cpp: (WebCore::setCookieStoragePrivateBrowsingEnabled):
  21449. Added an empty implementation for ports that don't implement private browsing, or implement
  21450. it in ways I cannot discover.
  21451. * platform/network/CookieStorage.h: Added. I'm not entirely sure how this is different from
  21452. CookieJar.h, just following a precedent already set by Windows port with CookieStorageWin.h.
  21453. * platform/network/mac/CookieStorageMac.mm: Added.
  21454. (WebCore::setCookieStoragePrivateBrowsingEnabled): Call a WKSI function to enable private
  21455. browsing mode for cookies.
  21456. * platform/network/cf/CookieStorageCFNet.cpp:
  21457. (WebCore::currentCookieStorage): Added ASSERT(isMainThread()).
  21458. (WebCore::setCurrentCookieStorage): Ditto.
  21459. (WebCore::setCookieStoragePrivateBrowsingEnabled): Set cookie storage to a private one
  21460. when in private browsing mode. ResourceHandle applies the storage to each individual request.
  21461. * platform/network/cf/CookieStorageCFNet.h: Added a comment explaining that these functions
  21462. are only for WebKit1.
  21463. 2010-10-23 David Kilzer <ddkilzer@apple.com>
  21464. <http://webkit.org/b/48181> Add missing include of MacErrors.h
  21465. Reviewed by Alexey Proskuryakov.
  21466. * platform/network/mac/FormDataStreamMac.mm: Added #import of
  21467. <MacErrors.h> for iOS since the formOpen() method uses "fnfErr",
  21468. which was added in r55670. The same header is included through
  21469. <CoreServices/CoreServices.h> on Mac OS X.
  21470. 2010-10-23 Patrick Gansterer <paroga@webkit.org>
  21471. Reviewed by David Kilzer.
  21472. [WINCE] Port COMPtr.h to WinCE
  21473. https://bugs.webkit.org/show_bug.cgi?id=48190
  21474. Don't include guiddef.h on WinCE. It's not required and only creates build problems.
  21475. * platform/win/COMPtr.h:
  21476. 2010-10-23 Patrick Gansterer <paroga@webkit.org>
  21477. Reviewed by David Kilzer.
  21478. [WINCE] Rename SharedBitmap::createInstance to SharedBitmap::create
  21479. https://bugs.webkit.org/show_bug.cgi?id=48180
  21480. Also use better arguments for the create function.
  21481. * platform/graphics/wince/GraphicsContextWinCE.cpp:
  21482. (WebCore::GraphicsContextPlatformPrivate::getTransparentLayerBitmap):
  21483. (WebCore::TransparentLayerDC::TransparentLayerDC):
  21484. (WebCore::GraphicsContext::drawFrameControl):
  21485. * platform/graphics/wince/ImageBufferWinCE.cpp:
  21486. (WebCore::ImageBufferData::ImageBufferData):
  21487. * platform/graphics/wince/ImageWinCE.cpp:
  21488. (WebCore::RGBA32Buffer::asNewNativeImage):
  21489. 2010-10-23 Dimitri Glazkov <dglazkov@chromium.org>
  21490. Unreviewed, rolling out r70369.
  21491. http://trac.webkit.org/changeset/70369
  21492. https://bugs.webkit.org/show_bug.cgi?id=47974
  21493. Caused weird artifacts in expected results.
  21494. * WebCore.gyp/WebCore.gyp:
  21495. * WebCore.gypi:
  21496. * loader/CachedImage.cpp:
  21497. (WebCore::CachedImage::createImage):
  21498. * platform/graphics/ImageSource.h:
  21499. * platform/image-decoders/ImageDecoder.cpp:
  21500. (WebCore::RGBA32Buffer::operator=):
  21501. (WebCore::RGBA32Buffer::clear):
  21502. (WebCore::RGBA32Buffer::zeroFill):
  21503. (WebCore::RGBA32Buffer::copyBitmapData):
  21504. (WebCore::RGBA32Buffer::setSize):
  21505. * platform/image-decoders/ImageDecoder.h:
  21506. (WebCore::RGBA32Buffer::getAddr):
  21507. * platform/image-decoders/cairo/ImageDecoderCairo.cpp:
  21508. (WebCore::RGBA32Buffer::asNewNativeImage):
  21509. * platform/image-decoders/cg/ImageDecoderCG.cpp: Removed.
  21510. * platform/image-decoders/haiku/ImageDecoderHaiku.cpp:
  21511. (WebCore::RGBA32Buffer::asNewNativeImage):
  21512. * platform/image-decoders/openvg/ImageDecoderOpenVG.cpp:
  21513. (WebCore::RGBA32Buffer::asNewNativeImage):
  21514. * platform/image-decoders/wx/ImageDecoderWx.cpp:
  21515. (WebCore::RGBA32Buffer::asNewNativeImage):
  21516. 2010-10-23 Adam Barth <abarth@webkit.org>
  21517. Reviewed by Andreas Kling.
  21518. WebP decoding hits ASSERT
  21519. https://bugs.webkit.org/show_bug.cgi?id=48168
  21520. Calling reserveCapacity only allocates the memory. It doesn't actually
  21521. set the length. When you try to access the zeroth element, you hit an
  21522. ASSERT.
  21523. Covered by fast/images/webp-image-decoding.html in debug.
  21524. * platform/image-decoders/webp/WEBPImageDecoder.cpp:
  21525. (WebCore::WEBPImageDecoder::decode):
  21526. 2010-10-23 Martin Robinson <mrobinson@igalia.com>
  21527. Reviewed by Xan Lopez.
  21528. [GTK] Menu list buttons do react properly to CSS styling
  21529. https://bugs.webkit.org/show_bug.cgi?id=48099
  21530. Correct the way that menu list buttons get their necessary padding from
  21531. GTK+. Instead of resetting the padding to these values, return them via
  21532. the popupInternalPadding* methods. Add implementations for *MenuListButton*
  21533. methods.
  21534. * platform/gtk/RenderThemeGtk.cpp:
  21535. (WebCore::getComboBoxPadding): Added.
  21536. (WebCore::RenderThemeGtk::popupInternalPaddingLeft): Added.
  21537. (WebCore::RenderThemeGtk::popupInternalPaddingRight): Added.
  21538. (WebCore::RenderThemeGtk::popupInternalPaddingTop): Added.
  21539. (WebCore::RenderThemeGtk::popupInternalPaddingBottom): Added.
  21540. (WebCore::RenderThemeGtk::adjustMenuListStyle): Do not reset CSS
  21541. properties, instead rely on the poupInternalPadding* methods.
  21542. (WebCore::RenderThemeGtk::adjustMenuListButtonStyle): Added.
  21543. (WebCore::RenderThemeGtk::paintMenuListButton): Added.
  21544. * platform/gtk/RenderThemeGtk.h: Added new method declarations.
  21545. 2010-10-23 Patrick Gansterer <paroga@webkit.org>
  21546. Reviewed by David Kilzer.
  21547. Add Gradient::hasAlpha
  21548. https://bugs.webkit.org/show_bug.cgi?id=48183
  21549. WinCE can do some performance improvements if the gradient is opaque.
  21550. * platform/graphics/Gradient.cpp:
  21551. (WebCore::Gradient::hasAlpha):
  21552. * platform/graphics/Gradient.h:
  21553. 2010-10-23 Gyuyoung Kim <gyuyoung.kim@samsung.com>
  21554. Reviewed by David Kilzer.
  21555. [EFL] Implement platformDefaultLanguage()
  21556. https://bugs.webkit.org/show_bug.cgi?id=48113
  21557. Implement the platformDefaultLanguage() function for EFL port.
  21558. * platform/efl/LanguageEfl.cpp:
  21559. (WebCore::platformDefaultLanguage):
  21560. 2010-10-23 Sheriff Bot <webkit.review.bot@gmail.com>
  21561. Unreviewed, rolling out r70367.
  21562. http://trac.webkit.org/changeset/70367
  21563. https://bugs.webkit.org/show_bug.cgi?id=48176
  21564. It made 8-10 tests crash on Qt bot (Requested by Ossy on
  21565. #webkit).
  21566. * loader/MainResourceLoader.cpp:
  21567. (WebCore::MainResourceLoader::MainResourceLoader):
  21568. (WebCore::MainResourceLoader::continueAfterContentPolicy):
  21569. (WebCore::MainResourceLoader::didReceiveResponse):
  21570. (WebCore::MainResourceLoader::setDefersLoading):
  21571. * loader/MainResourceLoader.h:
  21572. 2010-10-22 Andy Estes <aestes@apple.com>
  21573. Reviewed by Adam Roben and Sam Weinig.
  21574. WebKit shouldn't load a plug-in based on file extension if a MIME type
  21575. is specified.
  21576. https://bugs.webkit.org/show_bug.cgi?id=48046
  21577. The fix landed in r70332 only covered the Mac port. Implement this fix
  21578. for other ports as well.
  21579. * plugins/PluginDatabase.cpp:
  21580. (WebCore::PluginDatabase::findPlugin):
  21581. 2010-10-21 Adam Barth <abarth@webkit.org>
  21582. Reviewed by Eric Seidel, Peter Kasting, and Darin Fisher.
  21583. (Eric reviewed the CoreGraphics interactions, Peter reviewed the image
  21584. decoder interaction, and Darin Fisher SGTMed the policy decision.)
  21585. [chromium] Chromium Mac should use WebKit's image decoders
  21586. https://bugs.webkit.org/show_bug.cgi?id=47974
  21587. This patch teaches WebKit's image decoders how to talk to CoreGraphics.
  21588. This patch doesn't handle color profiles, but that will come in a
  21589. subsequent patch.
  21590. * WebCore.gyp/WebCore.gyp:
  21591. * WebCore.gypi:
  21592. * loader/CachedImage.cpp:
  21593. (WebCore::CachedImage::createImage):
  21594. * platform/graphics/ImageSource.h:
  21595. * platform/image-decoders/ImageDecoder.cpp:
  21596. (WebCore::RGBA32Buffer::clear):
  21597. (WebCore::RGBA32Buffer::zeroFill):
  21598. (WebCore::RGBA32Buffer::copyBitmapData):
  21599. (WebCore::RGBA32Buffer::setSize):
  21600. * platform/image-decoders/ImageDecoder.h:
  21601. (WebCore::RGBA32Buffer::getAddr):
  21602. * platform/image-decoders/cg: Added.
  21603. * platform/image-decoders/cg/ImageDecoderCG.cpp: Added.
  21604. (WebCore::RGBA32Buffer::copyBitmapData):
  21605. (WebCore::RGBA32Buffer::setSize):
  21606. (WebCore::RGBA32Buffer::asNewNativeImage):
  21607. 2010-10-20 Anders Carlsson <andersca@apple.com>
  21608. Reviewed by Adam Barth and Darin Adler.
  21609. Using the decidePolicyForMIMEType delegate message in an asynchronous manner does not work
  21610. https://bugs.webkit.org/show_bug.cgi?id=48014
  21611. <rdar://problem/8202716>
  21612. * loader/MainResourceLoader.cpp:
  21613. (WebCore::MainResourceLoader::continueAfterContentPolicy):
  21614. Resume loading.
  21615. (WebCore::MainResourceLoader::didReceiveResponse):
  21616. Defer loading until we hear back from the policy client.
  21617. 2010-10-22 James Robinson <jamesr@chromium.org>
  21618. Reviewed by Dimitri Glazkov.
  21619. REGRESSION(66391): http://ligth-arts.all-up.com/ crashes in EventHandler::selectCursor
  21620. https://bugs.webkit.org/show_bug.cgi?id=47942
  21621. Add checks for a NULL StyleImage in a CursorList.
  21622. * css/CSSComputedStyleDeclaration.cpp:
  21623. (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  21624. * css/CSSStyleSelector.cpp:
  21625. (WebCore::CSSStyleSelector::loadPendingImages):
  21626. * page/EventHandler.cpp:
  21627. (WebCore::EventHandler::selectCursor):
  21628. * rendering/style/CursorList.h:
  21629. (WebCore::CursorList::at):
  21630. * manual-tests/cursor-empty-url.html: Added.
  21631. * manual-tests/resources/cursor-empty-url.css: Added.
  21632. 2010-10-22 David Hyatt <hyatt@apple.com>
  21633. Reviewed by Adele Peterson.
  21634. https://bugs.webkit.org/show_bug.cgi?id=48156
  21635. Make vertical lines hit test properly and show a vertical i-beam cursor. Numerous bugs with overflow were discovered while getting this to work,
  21636. so these are in the patch as well. The broken layout tests are fixed by the overflow bug fixes as well (which just restore the old behavior).
  21637. * page/EventHandler.cpp:
  21638. (WebCore::EventHandler::selectCursor):
  21639. * rendering/InlineBox.h:
  21640. (WebCore::InlineBox::width):
  21641. (WebCore::InlineBox::height):
  21642. * rendering/InlineFlowBox.cpp:
  21643. (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
  21644. (WebCore::InlineFlowBox::computeBlockDirectionOverflow):
  21645. (WebCore::InlineFlowBox::nodeAtPoint):
  21646. * rendering/InlineFlowBox.h:
  21647. (WebCore::InlineFlowBox::logicalTopVisibleOverflow):
  21648. (WebCore::InlineFlowBox::logicalBottomVisibleOverflow):
  21649. (WebCore::InlineFlowBox::visibleOverflowRect):
  21650. (WebCore::InlineFlowBox::layoutOverflowRect):
  21651. (WebCore::InlineFlowBox::logicalTopLayoutOverflow):
  21652. (WebCore::InlineFlowBox::logicalBottomLayoutOverflow):
  21653. (WebCore::InlineFlowBox::visualOverflowRect):
  21654. (WebCore::InlineFlowBox::logicalTopVisualOverflow):
  21655. (WebCore::InlineFlowBox::logicalBottomVisualOverflow):
  21656. (WebCore::InlineFlowBox::setBlockDirectionOverflowPositions):
  21657. * rendering/InlineTextBox.cpp:
  21658. (WebCore::InlineTextBox::nodeAtPoint):
  21659. * rendering/RenderBox.cpp:
  21660. (WebCore::RenderBox::blockDirectionOverflow):
  21661. * rendering/RenderBox.h:
  21662. * rendering/RenderLineBoxList.cpp:
  21663. (WebCore::RenderLineBoxList::hitTest):
  21664. 2010-10-22 Dan Bernstein <mitz@apple.com>
  21665. Reviewed by Anders Carlsson.
  21666. <rdar://problem/8251616> Layout not updating in a subtree when a scrollbar is hidden in a flexbox descendant
  21667. https://bugs.webkit.org/show_bug.cgi?id=48154
  21668. Test: scrollbars/hidden-scrollbar-prevents-layout.html
  21669. updateScrollInfoAfterLayout() calling setHasHorizontalScrollbar() caused updateScrollbarParts()
  21670. to call setChildNeedsLayout() on the overflow, because the RenderScrollbar was created with
  21671. the default thickness instead of the thickness specified in style. This led to the the overflow’s
  21672. parent to be re-marked for layout during its own parent’s finishDelayUpdateScrollInfo(), and
  21673. the result was that at the end of RenderView::layout(), there was a dirty renderer.
  21674. * rendering/RenderScrollbar.cpp:
  21675. (WebCore::RenderScrollbar::RenderScrollbar): Set the frame size in the 'display: none' and
  21676. 'visibility: hidden' cases as well.
  21677. 2010-10-22 Patrick Gansterer <paroga@webkit.org>
  21678. Unreviewed.
  21679. [WINCE] Build fix after r70143.
  21680. * platform/graphics/wince/ImageBufferWinCE.cpp:
  21681. (WebCore::ImageBuffer::ImageBuffer):
  21682. 2010-10-22 Adam Roben <aroben@apple.com>
  21683. Windows build fix
  21684. r70319 added Windows-native versions of the various platform/network
  21685. headers to platform/network/win. WebCoreGenerated was copying these
  21686. headers over the CFNetwork-specific versions in $WebKitOutputDir,
  21687. leading to the wrong headers being used in WebKit.
  21688. This patch changes WebCoreGenerated not to copy any headers from
  21689. platform/network/win into $WebKitOutputDir. Instead, only headers from
  21690. platform/network/cf or platform/network/curl (as specified) are copied.
  21691. There were some CFNetwork-specific files still hanging around in
  21692. platform/network/win; these have been moved to platform/network/cf.
  21693. * WebCore.vcproj/WebCore.vcproj: Updated for file moves and let VS
  21694. * format the file as it saw fit.
  21695. * WebCore.vcproj/WebCoreGenerated.vcproj: Added the various scripts
  21696. * this project uses to make editing them easier.
  21697. * WebCore.vcproj/copyForwardingHeaders.cmd: Changed not to copy any
  21698. * headers from platform/network/win.
  21699. * platform/network/cf/CookieJarCFNet.cpp: Renamed from WebCore/platform/network/win/CookieJarCFNetWin.cpp.
  21700. * platform/network/cf/CookieStorageCFNet.cpp: Renamed from WebCore/platform/network/win/CookieStorageWin.cpp.
  21701. * platform/network/cf/CookieStorageCFNet.h: Renamed from WebCore/platform/network/win/CookieStorageWin.h.
  21702. * platform/network/cf/ResourceHandleCFNet.cpp: Updated for rename.
  21703. * platform/network/cf/AuthenticationChallenge.h:
  21704. * platform/network/cf/ResourceError.h:
  21705. * platform/network/cf/ResourceRequest.h:
  21706. * platform/network/cf/ResourceResponse.h:
  21707. * platform/network/cf/SocketStreamError.h:
  21708. * platform/network/cf/SocketStreamHandle.h:
  21709. Touched to force a re-copy.
  21710. 2010-10-22 Abhishek Arya <inferno@chromium.org>
  21711. Reviewed by Dave Hyatt.
  21712. Add code in getMatchedCSSRules to block cross origin access to stylesheet data. Prevent access
  21713. in Javascript to non author stylesheets.
  21714. https://bugs.webkit.org/show_bug.cgi?id=46853
  21715. Tests: http/tests/security/cross-origin-getMatchedCSSRules.html
  21716. http/tests/security/cross-origin-getMatchedCSSRules2.html
  21717. * css/CSSRule.h:
  21718. * css/CSSStyleSelector.cpp:
  21719. (WebCore::CSSStyleSelector::matchRulesForList):
  21720. (WebCore::CSSStyleSelector::SelectorChecker::SelectorChecker):
  21721. (WebCore::CSSStyleSelector::styleRulesForElement):
  21722. (WebCore::CSSStyleSelector::pseudoStyleRulesForElement):
  21723. * css/CSSStyleSelector.h:
  21724. * page/DOMWindow.cpp:
  21725. (WebCore::DOMWindow::getMatchedCSSRules):
  21726. * page/DOMWindow.idl:
  21727. 2010-10-22 Sam Weinig <sam@webkit.org>
  21728. Reviewed by Anders Carlsson.
  21729. WebKit2 needs to pass the current event modifier flags when requesting a new window
  21730. https://bugs.webkit.org/show_bug.cgi?id=48140
  21731. Store the NavigationAction used for the newWindowPolicyDecision in the PolicyCallback
  21732. so that it can be used after the decision has been made in further callbacks.
  21733. * WebCore.exp.in: Fix export name for new function signature.
  21734. * loader/EmptyClients.h:
  21735. (WebCore::EmptyChromeClient::createWindow):
  21736. (WebCore::EmptyFrameLoaderClient::dispatchCreatePage):
  21737. * loader/FrameLoader.cpp:
  21738. (WebCore::FrameLoader::callContinueLoadAfterNewWindowPolicy):
  21739. (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
  21740. (WebCore::createWindow):
  21741. * loader/FrameLoader.h:
  21742. * loader/FrameLoaderClient.h:
  21743. * loader/PolicyCallback.cpp:
  21744. (WebCore::PolicyCallback::set):
  21745. (WebCore::PolicyCallback::call):
  21746. (WebCore::PolicyCallback::cancel):
  21747. * loader/PolicyCallback.h:
  21748. * loader/PolicyChecker.cpp:
  21749. (WebCore::PolicyChecker::checkNewWindowPolicy):
  21750. * page/Chrome.cpp:
  21751. (WebCore::Chrome::createWindow):
  21752. * page/Chrome.h:
  21753. * page/ChromeClient.h:
  21754. * page/ContextMenuController.cpp:
  21755. (WebCore::openNewWindow):
  21756. 2010-10-22 David Hyatt <hyatt@apple.com>
  21757. Reviewed by Sam Weinig.
  21758. https://bugs.webkit.org/show_bug.cgi?id=48149
  21759. Update block direction line overflow computation to be writing-mode-aware.
  21760. * rendering/InlineBox.h:
  21761. (WebCore::InlineBox::logicalBottom):
  21762. * rendering/InlineFlowBox.cpp:
  21763. (WebCore::InlineFlowBox::computeBlockDirectionOverflow):
  21764. * rendering/InlineFlowBox.h:
  21765. (WebCore::InlineFlowBox::setInlineDirectionOverflowPositions):
  21766. (WebCore::InlineFlowBox::setBlockDirectionOverflowPositions):
  21767. * rendering/RenderBlockLineLayout.cpp:
  21768. (WebCore::RenderBlock::layoutInlineChildren):
  21769. * rendering/RenderBox.cpp:
  21770. (WebCore::RenderBox::blockDirectionOverflow):
  21771. * rendering/RenderBox.h:
  21772. * rendering/RootInlineBox.cpp:
  21773. (WebCore::RootInlineBox::addHighlightOverflow):
  21774. * rendering/style/RenderStyle.h:
  21775. (WebCore::InheritedFlags::getTextShadowBlockDirectionExtent):
  21776. (WebCore::InheritedFlags::getBoxShadowBlockDirectionExtent):
  21777. (WebCore::InheritedFlags::getShadowBlockDirectionExtent):
  21778. 2010-10-22 Adam Barth <abarth@webkit.org>
  21779. Reviewed by Eric Seidel.
  21780. ASSERT while viewing Google C++ style guide
  21781. https://bugs.webkit.org/show_bug.cgi?id=48148
  21782. This code used to stop the parser twice. Instead of reaching in an
  21783. trying to stop the parser manually, we now just let close() do the work
  21784. for us.
  21785. Test: fast/xsl/transform-to-html.xml
  21786. * xml/XSLTProcessor.cpp:
  21787. (WebCore::XSLTProcessor::createDocumentFromSource):
  21788. 2010-10-22 Patrick Gansterer <paroga@webkit.org>
  21789. Reviewed by Adam Roben.
  21790. [WINCE] Implement GraphicsContext::(get|release)WindowsContext
  21791. https://bugs.webkit.org/show_bug.cgi?id=48136
  21792. * platform/graphics/wince/GraphicsContextWinCE.cpp:
  21793. (WebCore::GraphicsContext::getWindowsContext):
  21794. (WebCore::GraphicsContext::releaseWindowsContext):
  21795. 2010-10-22 Adam Roben <aroben@apple.com>
  21796. Attempt to fix the Windows build
  21797. * platform/network/win/CookieJarCFNetWin.cpp: Add a missing #include.
  21798. 2010-10-22 Cosmin Truta <ctruta@chromium.org>
  21799. Reviewed by Dirk Schulze.
  21800. getBoundingClientRect does not work with SVG <text>
  21801. https://bugs.webkit.org/show_bug.cgi?id=46775
  21802. Added back to SVGStyledTransformableElement overloads of the following
  21803. methods: nearestViewportElement, farthestViewportElement, getBBox.
  21804. This was necessary to appease the Visual C++ compiler, which warned on
  21805. inheritance via dominance.
  21806. * svg/SVGStyledTransformableElement.cpp:
  21807. * svg/SVGStyledTransformableElement.h:
  21808. (SVGStyledTransformableElement::nearestViewportElement):
  21809. (SVGStyledTransformableElement::farthestViewportElement):
  21810. (SVGStyledTransformableElement::getBBox):
  21811. 2010-10-21 Chris Marrin <cmarrin@apple.com>
  21812. Reviewed by Adam Roben.
  21813. Content in <iframe> doesn't appear when going back to http://webkit.org/blog/386/3d-transforms/
  21814. https://bugs.webkit.org/show_bug.cgi?id=32447
  21815. Added documentDidBecomeActive() when document comes back from cache to cause compositing
  21816. layers in iframes to be reattached.
  21817. There is no layout test, but I added a manual test. This test is ready to be a layout test
  21818. but currently DRT disables the WebCore page cache, so the back/forward essentially do a
  21819. page load which does not exhibit the bug.
  21820. * history/CachedFrame.cpp:
  21821. (WebCore::CachedFrameBase::restore):
  21822. * manual-tests/compositing/show-composited-iframe-on-back-button.html: Added.
  21823. 2010-10-22 Patrick Gansterer <paroga@webkit.org>
  21824. Reviewed by Adam Roben.
  21825. [WIN] Add Windows specific files for platform/network/win
  21826. https://bugs.webkit.org/show_bug.cgi?id=27376
  21827. * platform/network/win/AuthenticationChallenge.h: Added.
  21828. (WebCore::AuthenticationChallenge::AuthenticationChallenge):
  21829. * platform/network/win/ResourceError.h: Added.
  21830. (WebCore::ResourceError::ResourceError):
  21831. * platform/network/win/ResourceRequest.h: Added.
  21832. (WebCore::ResourceRequest::ResourceRequest):
  21833. (WebCore::ResourceRequest::doUpdatePlatformRequest):
  21834. (WebCore::ResourceRequest::doUpdateResourceRequest):
  21835. (WebCore::ResourceRequest::doPlatformCopyData):
  21836. (WebCore::ResourceRequest::doPlatformAdopt):
  21837. * platform/network/win/ResourceResponse.h: Added.
  21838. (WebCore::ResourceResponse::ResourceResponse):
  21839. (WebCore::ResourceResponse::doPlatformCopyData):
  21840. (WebCore::ResourceResponse::doPlatformAdopt):
  21841. 2010-10-22 Adam Barth <abarth@webkit.org>
  21842. Unreviewed, rolling out r70290.
  21843. http://trac.webkit.org/changeset/70290
  21844. https://bugs.webkit.org/show_bug.cgi?id=48111
  21845. Undelete Android build files.
  21846. * Android.mk: Added.
  21847. 2010-10-22 Cosmin Truta <ctruta@chromium.org>
  21848. Reviewed by Nikolas Zimmermann.
  21849. getBoundingClientRect does not work with SVG <text>
  21850. https://bugs.webkit.org/show_bug.cgi?id=46775
  21851. Dispatched the calls from Element::getBoundingClientRect to getBBox
  21852. through SVGElement::boundingBox.
  21853. Recognized SVGTextElement in addition to SVGStyledLocatableElement
  21854. as a class that provides getBBox.
  21855. Fixed the result of zooming: adjusted the getBoundingClientRect rectangle
  21856. for absolute zoom, even for SVG elements.
  21857. Additional cleanup task:
  21858. Removed redundant overloads of SVGStyledTransformableElement
  21859. methods: nearestViewportElement, farthestViewportElement, getBBox.
  21860. These methods are already inherited from SVGStyledLocatableElement.
  21861. Test: css3/zoom-coords.xhtml
  21862. * WebCore.xcodeproj/project.pbxproj: Set role of SVGLocatable.h to private.
  21863. * dom/Element.cpp:
  21864. (Element::getBoundingClientRect): Used SVGElement::boundingBox.
  21865. Adjusted coordinates for absolute zoom, for all kinds of elements.
  21866. * svg/SVGElement.cpp:
  21867. * svg/SVGElement.h:
  21868. (SVGElement::boundingBox): Added.
  21869. * svg/SVGStyledTransformableElement.cpp:
  21870. * svg/SVGStyledTransformableElement.h:
  21871. (SVGStyledTransformableElement::nearestViewportElement): Removed.
  21872. (SVGStyledTransformableElement::farthestViewportElement): Removed.
  21873. (SVGStyledTransformableElement::getBBox): Removed.
  21874. 2010-10-22 Patrick Gansterer <paroga@webkit.org>
  21875. Reviewed by Adam Roben.
  21876. [WIN] Add stubs for SocketStream classes
  21877. https://bugs.webkit.org/show_bug.cgi?id=47983
  21878. * platform/network/win/SocketStreamError.h: Copied from WebCore/platform/network/curl/SocketStreamError.h.
  21879. (WebCore::SocketStreamError::SocketStreamError):
  21880. * platform/network/win/SocketStreamHandle.h: Copied from WebCore/platform/network/curl/SocketStreamHandle.h.
  21881. (WebCore::SocketStreamHandle::create):
  21882. * platform/network/win/SocketStreamHandleWin.cpp: Copied from WebCore/platform/network/curl/SocketStreamHandleCurl.cpp.
  21883. 2010-10-22 Patrick Gansterer <paroga@webkit.org>
  21884. Reviewed by Adam Roben.
  21885. Disable cache in ResourceHandleWin
  21886. https://bugs.webkit.org/show_bug.cgi?id=48128
  21887. The caching of windows does not work correctly, so disable it for now.
  21888. * platform/network/win/ResourceHandleWin.cpp:
  21889. (WebCore::ResourceHandle::start):
  21890. 2010-10-22 Jia Pu <jpu@apple.com>
  21891. Reviewed by Dan Bernstein.
  21892. Regression (r69548): cancelled autocorrection suggestion is still applied.
  21893. https://bugs.webkit.org/show_bug.cgi?id=48081
  21894. <rdar://problem/8579765>
  21895. The test requires a 0.3 second delay using setTimeout(). So we put it in manual-tests.
  21896. * editing/Editor.cpp:
  21897. (WebCore::Editor::handleRejectedCorrection): Clear autocorrection info when user dismissed the panel.
  21898. * manual-tests/autocorrection/autocorrection-cancelled-by-ESC.html: Added.
  21899. 2010-10-22 Andreas Kling <kling@webkit.org>
  21900. Reviewed by Kenneth Rohde Christiansen.
  21901. [Gtk] Fix canvas/philip/tests/2d.path.isPointInPath.nonfinite.html
  21902. https://bugs.webkit.org/show_bug.cgi?id=48133
  21903. * platform/graphics/cairo/PathCairo.cpp:
  21904. (WebCore::Path::contains): Return false if any x or y are nonfinite.
  21905. 2010-10-22 Alexander Pavlov <apavlov@chromium.org>
  21906. Reviewed by Pavel Feldman.
  21907. Web Inspector: Implement property toggling in InspectorCSSAgent
  21908. This change implements enablement/disablement and setting of style properties.
  21909. Disabled properties are persisted in the (top-level) scope of InspectorStyleSheet.
  21910. https://bugs.webkit.org/show_bug.cgi?id=47339
  21911. Drive-by: fixes for the Web Inspector Protocol format.
  21912. * inspector/InspectorCSSAgent.cpp:
  21913. (WebCore::InspectorCSSAgent::getComputedStyleForNode2):
  21914. (WebCore::InspectorCSSAgent::getInheritedStylesForNode2):
  21915. (WebCore::InspectorCSSAgent::setPropertyText2):
  21916. (WebCore::InspectorCSSAgent::toggleProperty2):
  21917. (WebCore::InspectorCSSAgent::setRuleSelector2):
  21918. (WebCore::InspectorCSSAgent::buildObjectForAttributeStyles):
  21919. * inspector/InspectorCSSAgent.h:
  21920. * inspector/InspectorStyleSheet.cpp:
  21921. (WebCore::InspectorStyle::buildObjectForStyle):
  21922. (WebCore::InspectorStyle::setPropertyText):
  21923. (WebCore::InspectorStyle::toggleProperty):
  21924. (WebCore::InspectorStyle::disabledIndexByOrdinal):
  21925. (WebCore::InspectorStyle::styleText):
  21926. (WebCore::InspectorStyle::disableProperty):
  21927. (WebCore::InspectorStyle::enableProperty):
  21928. (WebCore::InspectorStyle::populateAllProperties):
  21929. (WebCore::InspectorStyle::populateObjectWithStyleProperties):
  21930. (WebCore::InspectorStyle::shiftDisabledProperties):
  21931. (WebCore::InspectorStyle::replacePropertyInStyleText):
  21932. (WebCore::InspectorStyle::shorthandValue):
  21933. (WebCore::InspectorStyle::shorthandPriority):
  21934. (WebCore::InspectorStyle::longhandProperties):
  21935. (WebCore::InspectorStyleSheet::setText):
  21936. (WebCore::InspectorStyleSheet::setRuleSelector):
  21937. (WebCore::InspectorStyleSheet::addRule):
  21938. (WebCore::InspectorStyleSheet::ruleForId):
  21939. (WebCore::InspectorStyleSheet::buildObjectForStyleSheet):
  21940. (WebCore::InspectorStyleSheet::buildObjectForRule):
  21941. (WebCore::InspectorStyleSheet::buildObjectForStyle):
  21942. (WebCore::InspectorStyleSheet::setPropertyText):
  21943. (WebCore::InspectorStyleSheet::toggleProperty):
  21944. (WebCore::InspectorStyleSheet::styleForId):
  21945. (WebCore::InspectorStyleSheet::inspectorStyleForId):
  21946. (WebCore::InspectorStyleSheet::rememberInspectorStyle):
  21947. (WebCore::InspectorStyleSheet::forgetInspectorStyle):
  21948. (WebCore::InspectorStyleSheet::ruleOrStyleId):
  21949. (WebCore::InspectorStyleSheet::ensureText):
  21950. (WebCore::InspectorStyleSheet::setStyleText):
  21951. (WebCore::InspectorStyleSheet::styleSheetTextWithChangedStyle):
  21952. (WebCore::InspectorStyleSheet::ruleId):
  21953. (WebCore::InspectorStyleSheet::revalidateStyle):
  21954. (WebCore::InspectorStyleSheet::originalStyleSheetText):
  21955. (WebCore::InspectorStyleSheet::resourceStyleSheetText):
  21956. (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
  21957. (WebCore::InspectorStyleSheetForInlineStyle::setStyleText):
  21958. (WebCore::InspectorStyleSheetForInlineStyle::inspectorStyleForId):
  21959. * inspector/InspectorStyleSheet.h:
  21960. (WebCore::InspectorCSSId::createFromParts):
  21961. (WebCore::InspectorCSSId::InspectorCSSId):
  21962. (WebCore::InspectorCSSId::styleSheetId):
  21963. (WebCore::InspectorCSSId::ordinal):
  21964. (WebCore::InspectorCSSId::isEmpty):
  21965. (WebCore::InspectorCSSId::asString):
  21966. (WebCore::InspectorStyleProperty::InspectorStyleProperty):
  21967. (WebCore::InspectorStyle::create):
  21968. (WebCore::InspectorStyle::InspectorStyle):
  21969. (WebCore::InspectorStyle::cssStyle):
  21970. (WebCore::InspectorStyle::hasDisabledProperties):
  21971. (WebCore::InspectorStyleSheet::styleId):
  21972. (WebCore::InspectorStyleSheetForInlineStyle::styleForId):
  21973. (WebCore::InspectorStyleSheetForInlineStyle::ruleSourceDataFor):
  21974. (WebCore::InspectorStyleSheetForInlineStyle::rememberInspectorStyle):
  21975. (WebCore::InspectorStyleSheetForInlineStyle::forgetInspectorStyle):
  21976. 2010-10-22 Pavel Feldman <pfeldman@chromium.org>
  21977. Reviewed by Yury Semikhatsky.
  21978. Web Inspector: update resources tree in storage panel upon network events.
  21979. https://bugs.webkit.org/show_bug.cgi?id=48121
  21980. * inspector/Inspector.idl:
  21981. * inspector/InspectorResourceAgent.cpp:
  21982. (WebCore::buildObjectForDocumentLoader):
  21983. (WebCore::buildObjectForFrameTree):
  21984. (WebCore::InspectorResourceAgent::didCommitLoad):
  21985. (WebCore::InspectorResourceAgent::frameDetachedFromParent):
  21986. * inspector/front-end/ResourceManager.js:
  21987. (WebInspector.ResourceManager):
  21988. (WebInspector.ResourceManager.prototype._createResource):
  21989. (WebInspector.ResourceManager.prototype.didReceiveResponse):
  21990. (WebInspector.ResourceManager.prototype.didLoadResourceFromMemoryCache):
  21991. (WebInspector.ResourceManager.prototype.didCommitLoadForFrame):
  21992. (WebInspector.ResourceManager.prototype._addResourceToStorageFrame):
  21993. (WebInspector.ResourceManager.prototype.frameDetachedFromParent):
  21994. (WebInspector.ResourceManager.prototype._clearResources):
  21995. (WebInspector.ResourceManager.prototype._processCachedResources):
  21996. (WebInspector.ResourceManager.prototype._addFramesRecursively):
  21997. (WebInspector.ResourceManager.getContents):
  21998. * inspector/front-end/StoragePanel.js:
  21999. (WebInspector.StoragePanel.prototype.addOrUpdateFrame):
  22000. (WebInspector.StoragePanel.prototype.removeFrame):
  22001. (WebInspector.StoragePanel.prototype.addResourceToFrame):
  22002. (WebInspector.StoragePanel.prototype.removeResourcesFromFrame):
  22003. (WebInspector.BaseStorageTreeElement.prototype.onattach):
  22004. (WebInspector.BaseStorageTreeElement.prototype.onreveal):
  22005. (WebInspector.BaseStorageTreeElement.prototype.set titleText):
  22006. (WebInspector.FrameTreeElement):
  22007. (WebInspector.FrameTreeElement.prototype.onselect):
  22008. (WebInspector.FrameTreeElement.prototype.get displayName):
  22009. (WebInspector.FrameTreeElement.prototype.set displayName):
  22010. 2010-10-22 François Sausset <sausset@gmail.com>
  22011. Reviewed by Kenneth Rohde Christiansen.
  22012. Fix wrong xHeight() value for Apple Symbols font.
  22013. https://bugs.webkit.org/show_bug.cgi?id=41535
  22014. Test: mathml/xHeight.xhtml
  22015. * platform/graphics/mac/SimpleFontDataMac.mm:
  22016. (WebCore::SimpleFontData::platformInit):
  22017. 2010-10-22 Nikolas Zimmermann <nzimmermann@rim.com>
  22018. Reviewed by Dirk Schulze.
  22019. Further preparations to deploy the new SVGAnimatedProperty concept for the rest of the SVG datatypes
  22020. https://bugs.webkit.org/show_bug.cgi?id=48125
  22021. Model SVGListPropertyTearOff similar to SVGPropertyTearOff, allow it to be used for SVGXXXList datatypes, that are not animated. (SVGStringList)
  22022. Recognize all SVG primitive datatypes in SVGPropertyTraits.
  22023. Add a new - temporary - macro to support multiple animated properties that map to a single DOM attribute (kernelUnitLength attribute vs. kernelUnitLengthX/Y properties).
  22024. These macros will all be removed and expanded by their content, as soon as the transition to the new SVGAnimatedProperty concept is done.
  22025. Doesn't affect any tests yet, as the code is still unused.
  22026. * svg/properties/SVGAnimatedProperty.h:
  22027. (WebCore::SVGAnimatedProperty::lookupOrCreateWrapper):
  22028. (WebCore::SVGAnimatedProperty::lookupWrapper):
  22029. * svg/properties/SVGAnimatedPropertyMacros.h:
  22030. * svg/properties/SVGAnimatedPropertySynchronizer.h:
  22031. * svg/properties/SVGListPropertyTearOff.h:
  22032. (WebCore::SVGListPropertyTearOff::create):
  22033. (WebCore::SVGListPropertyTearOff::removeItemFromList):
  22034. (WebCore::SVGListPropertyTearOff::detachListWrappers):
  22035. (WebCore::SVGListPropertyTearOff::clear):
  22036. (WebCore::SVGListPropertyTearOff::numberOfItems):
  22037. (WebCore::SVGListPropertyTearOff::initialize):
  22038. (WebCore::SVGListPropertyTearOff::getItem):
  22039. (WebCore::SVGListPropertyTearOff::insertItemBefore):
  22040. (WebCore::SVGListPropertyTearOff::replaceItem):
  22041. (WebCore::SVGListPropertyTearOff::removeItem):
  22042. (WebCore::SVGListPropertyTearOff::appendItem):
  22043. (WebCore::SVGListPropertyTearOff::SVGListPropertyTearOff):
  22044. (WebCore::SVGListPropertyTearOff::~SVGListPropertyTearOff):
  22045. (WebCore::SVGListPropertyTearOff::commitChange):
  22046. * svg/properties/SVGPropertyTearOff.h:
  22047. * svg/properties/SVGPropertyTraits.h:
  22048. 2010-10-22 Sheriff Bot <webkit.review.bot@gmail.com>
  22049. Unreviewed, rolling out r70301.
  22050. http://trac.webkit.org/changeset/70301
  22051. https://bugs.webkit.org/show_bug.cgi?id=48126
  22052. "Lang attribute layout tests failing" (Requested by satish on
  22053. #webkit).
  22054. * dom/Element.cpp:
  22055. (WebCore::Element::computeInheritedLanguage):
  22056. * page/SpeechInput.cpp:
  22057. (WebCore::SpeechInput::startRecognition):
  22058. * page/SpeechInput.h:
  22059. * page/SpeechInputClient.h:
  22060. * platform/mock/SpeechInputClientMock.cpp:
  22061. (WebCore::SpeechInputClientMock::startRecognition):
  22062. (WebCore::SpeechInputClientMock::setRecognitionResult):
  22063. (WebCore::SpeechInputClientMock::timerFired):
  22064. * platform/mock/SpeechInputClientMock.h:
  22065. * rendering/TextControlInnerElements.cpp:
  22066. (WebCore::TextControlInnerElement::attachInnerElement):
  22067. (WebCore::SearchFieldCancelButtonElement::detach):
  22068. (WebCore::SpinButtonElement::defaultEventHandler):
  22069. (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
  22070. (WebCore::InputFieldSpeechButtonElement::detach):
  22071. 2010-10-22 Leandro Gracia Gil <leandrogracia@google.com>
  22072. Reviewed by Jeremy Orlow.
  22073. Patch the current speech input implementation to use and validate the
  22074. nearest language tag. The language is now passed to the startRecognition
  22075. methods so that language-specific recognition could be used. Also added
  22076. a second parameter to setMockSpeechInputResult for the language used in
  22077. speech recognition.
  22078. https://bugs.webkit.org/show_bug.cgi?id=47089
  22079. This is the 2nd of a 4-sided patch in Chromium and WebKit. For more
  22080. details see http://codereview.chromium.org/3615005/show and
  22081. http://codereview.chromium.org/3595018/show.
  22082. Test: fast/speech/input-text-language-tag.html
  22083. * dom/Element.cpp:
  22084. (WebCore::Element::computeInheritedLanguage): includes a brief character
  22085. validation for the BCP 47 language tag.
  22086. * page/SpeechInput.cpp:
  22087. (WebCore::SpeechInput::startRecognition):
  22088. * page/SpeechInput.h:
  22089. * page/SpeechInputClient.h:
  22090. * platform/mock/SpeechInputClientMock.cpp:
  22091. (WebCore::SpeechInputClientMock::startRecognition):
  22092. (WebCore::SpeechInputClientMock::setRecognitionResult): results are now
  22093. stored by language using a hash map.
  22094. (WebCore::SpeechInputClientMock::timerFired):
  22095. * platform/mock/SpeechInputClientMock.h:
  22096. * rendering/TextControlInnerElements.cpp:
  22097. (WebCore::TextControlInnerElement::attachInnerElement):
  22098. (WebCore::SearchFieldCancelButtonElement::detach):
  22099. (WebCore::SpinButtonElement::defaultEventHandler):
  22100. (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
  22101. (WebCore::InputFieldSpeechButtonElement::detach):
  22102. 2010-10-21 Yury Semikhatsky <yurys@chromium.org>
  22103. Unreviewed, rolling out r70298.WebKit win compilation failure.
  22104. http://trac.webkit.org/changeset/70298
  22105. https://bugs.webkit.org/show_bug.cgi?id=48122
  22106. 2010-10-21 Yury Semikhatsky <yurys@chromium.org>
  22107. Reviewed by Pavel Feldman.
  22108. Web Inspector: decouple ScriptArguments from ScriptCallStack
  22109. https://bugs.webkit.org/show_bug.cgi?id=48058
  22110. ScriptCallFrame and ScriptCallStack are now the same for both JSC and V8.
  22111. The factory functions that allow to create ScriptCallStack from VM-specific
  22112. objects are defined in ScriptCallStackFactory.cpp.
  22113. ScriptArguments class is used for passing arguments from JS code to the native
  22114. part.
  22115. No new tests. This refactoring is covered with existing Console tests.
  22116. * WebCore.gypi:
  22117. * WebCore.xcodeproj/project.pbxproj:
  22118. * bindings/js/ScriptCallFrame.cpp: Removed.
  22119. * bindings/js/ScriptCallFrame.h: Removed.
  22120. * bindings/js/ScriptCallStack.cpp: Removed.
  22121. * bindings/js/ScriptCallStack.h: Removed.
  22122. * bindings/js/ScriptCallStackFactory.cpp: Added.
  22123. (WebCore::createScriptCallStack):
  22124. (WebCore::createScriptArguments):
  22125. (WebCore::ScriptCallStack::stackTrace):
  22126. * bindings/js/ScriptCallStackFactory.h: Added.
  22127. * bindings/js/ScriptState.h:
  22128. (WebCore::ScriptStateProtectedPtr::get):
  22129. * bindings/scripts/CodeGeneratorJS.pm:
  22130. * bindings/scripts/CodeGeneratorV8.pm:
  22131. * bindings/v8/ScriptCallFrame.cpp: Removed.
  22132. * bindings/v8/ScriptCallFrame.h: Removed.
  22133. * bindings/v8/ScriptCallStack.cpp: Removed.
  22134. * bindings/v8/ScriptCallStack.h: Removed.
  22135. * bindings/v8/ScriptCallStackFactory.cpp: Added.
  22136. (WebCore::toScriptCallFrame):
  22137. (WebCore::toScriptCallFramesVector):
  22138. (WebCore::createScriptCallStack):
  22139. (WebCore::createScriptArguments):
  22140. (WebCore::ScriptCallStack::stackTrace):
  22141. * bindings/v8/ScriptCallStackFactory.h: Added.
  22142. * bindings/v8/ScriptController.cpp:
  22143. (WebCore::ScriptController::setCaptureCallStackForUncaughtExceptions):
  22144. * bindings/v8/ScriptState.h:
  22145. (WebCore::ScriptStateProtectedPtr::get):
  22146. * bindings/v8/V8ConsoleMessage.cpp:
  22147. (WebCore::V8ConsoleMessage::handler):
  22148. (WebCore::V8ConsoleMessage::dispatchNow):
  22149. * bindings/v8/V8ConsoleMessage.h:
  22150. * bindings/v8/custom/V8ConsoleCustom.cpp:
  22151. (WebCore::V8Console::traceCallback):
  22152. (WebCore::V8Console::assertCallback):
  22153. * inspector/ConsoleMessage.cpp:
  22154. (WebCore::ConsoleMessage::ConsoleMessage):
  22155. (WebCore::ConsoleMessage::addToFrontend):
  22156. (WebCore::ConsoleMessage::updateRepeatCountInConsole):
  22157. (WebCore::ConsoleMessage::isEqual):
  22158. * inspector/ConsoleMessage.h:
  22159. * inspector/InspectorController.cpp:
  22160. (WebCore::InspectorController::addMessageToConsole):
  22161. (WebCore::InspectorController::startGroup):
  22162. * inspector/InspectorController.h:
  22163. * inspector/ScriptArguments.cpp: Added.
  22164. (WebCore::ScriptArguments::ScriptArguments):
  22165. (WebCore::ScriptArguments::~ScriptArguments):
  22166. (WebCore::ScriptArguments::argumentAt):
  22167. (WebCore::ScriptArguments::globalState):
  22168. (WebCore::ScriptArguments::getFirstArgumentAsString):
  22169. (WebCore::ScriptArguments::isEqual):
  22170. * inspector/ScriptArguments.h: Added.
  22171. (WebCore::ScriptArguments::argumentCount):
  22172. * inspector/ScriptCallFrame.cpp: Added.
  22173. (WebCore::ScriptCallFrame::ScriptCallFrame):
  22174. (WebCore::ScriptCallFrame::~ScriptCallFrame):
  22175. (WebCore::ScriptCallFrame::isEqual):
  22176. (WebCore::ScriptCallFrame::buildInspectorObject):
  22177. * inspector/ScriptCallFrame.h: Added.
  22178. (WebCore::ScriptCallFrame::functionName):
  22179. (WebCore::ScriptCallFrame::sourceURL):
  22180. (WebCore::ScriptCallFrame::lineNumber):
  22181. * inspector/ScriptCallStack.cpp: Added.
  22182. (WebCore::ScriptCallStack::ScriptCallStack):
  22183. (WebCore::ScriptCallStack::~ScriptCallStack):
  22184. (WebCore::ScriptCallStack::at):
  22185. (WebCore::ScriptCallStack::size):
  22186. (WebCore::ScriptCallStack::isEqual):
  22187. (WebCore::ScriptCallStack::buildInspectorObject):
  22188. * inspector/ScriptCallStack.h: Added.
  22189. * page/Console.cpp:
  22190. (WebCore::Console::addMessage):
  22191. (WebCore::Console::debug):
  22192. (WebCore::Console::error):
  22193. (WebCore::Console::info):
  22194. (WebCore::Console::log):
  22195. (WebCore::Console::dir):
  22196. (WebCore::Console::dirxml):
  22197. (WebCore::Console::trace):
  22198. (WebCore::Console::assertCondition):
  22199. (WebCore::Console::count):
  22200. (WebCore::Console::markTimeline):
  22201. (WebCore::Console::profile):
  22202. (WebCore::Console::profileEnd):
  22203. (WebCore::Console::timeEnd):
  22204. (WebCore::Console::group):
  22205. (WebCore::Console::groupCollapsed):
  22206. (WebCore::Console::shouldCaptureFullStackTrace):
  22207. (WebCore::Console::warn):
  22208. * page/Console.h:
  22209. 2010-10-22 Benjamin Poulain <benjamin.poulain@nokia.com>
  22210. Reviewed by Simon Hausmann.
  22211. [Qt] All widgets are rendered incorrectly when rendered through a cache
  22212. https://bugs.webkit.org/show_bug.cgi?id=47767
  22213. When a widget is not available to the RenderTheme, default
  22214. value are used for the state.
  22215. * platform/qt/RenderThemeQt.cpp:
  22216. (WebCore::initStyleOption):
  22217. (WebCore::RenderThemeQt::paintButton):
  22218. (WebCore::RenderThemeQt::paintTextField):
  22219. (WebCore::RenderThemeQt::paintMenuList):
  22220. (WebCore::RenderThemeQt::paintMenuListButton):
  22221. (WebCore::RenderThemeQt::paintProgressBar):
  22222. (WebCore::RenderThemeQt::paintSliderTrack):
  22223. 2010-10-22 Zoltan Herczeg <zherczeg@webkit.org>
  22224. Reviewed by Dirk Schulze.
  22225. Moving all bounding box related calculation to RenderSVGResourceFilterPrimitive
  22226. https://bugs.webkit.org/show_bug.cgi?id=47174
  22227. The primitive sub-region calculation was spread in many
  22228. files across in WebKit source code, and all of them are moved
  22229. to RenderSVGResourceFilterPrimitive, where they should be.
  22230. In this patch the calculation is a static method which will
  22231. be turned to a real member function in the near future.
  22232. * platform/graphics/filters/FETile.cpp:
  22233. * platform/graphics/filters/FETile.h:
  22234. (WebCore::FETile::filterEffectType):
  22235. * platform/graphics/filters/Filter.h:
  22236. * platform/graphics/filters/FilterEffect.cpp:
  22237. * platform/graphics/filters/FilterEffect.h:
  22238. * rendering/RenderSVGResourceFilter.cpp:
  22239. (WebCore::RenderSVGResourceFilter::applyResource):
  22240. * rendering/RenderSVGResourceFilterPrimitive.cpp:
  22241. (WebCore::RenderSVGResourceFilterPrimitive::determineFilterPrimitiveSubregion):
  22242. * rendering/RenderSVGResourceFilterPrimitive.h:
  22243. (WebCore::RenderSVGResourceFilterPrimitive::RenderSVGResourceFilterPrimitive):
  22244. * svg/graphics/filters/SVGFilter.cpp:
  22245. * svg/graphics/filters/SVGFilter.h:
  22246. (WebCore::SVGFilter::mapLocalRectToAbsoluteRect):
  22247. (WebCore::SVGFilter::targetBoundingBox):
  22248. 2010-10-21 Kwang Yul Seo <skyul@company100.net>
  22249. Reviewed by Kent Tamura.
  22250. [BREWMP] Add a String constructor which takes AECHAR*
  22251. https://bugs.webkit.org/show_bug.cgi?id=45043
  22252. Implement String(const AECHAR*) constructor.
  22253. * platform/text/brew/StringBrew.cpp: Added.
  22254. (WTF::String::String):
  22255. 2010-10-21 James Simonsen <simonjam@chromium.org>
  22256. Reviewed by Adam Barth.
  22257. HTMLTreeBuilder's InForeignContent code needs a re-write
  22258. Foreign Content mode was changed significantly by:
  22259. http://www.w3.org/Bugs/Public/show_bug.cgi?id=10314
  22260. The differences can be seen here:
  22261. http://html5.org/tools/web-apps-tracker?from=5520&to=5522
  22262. This bug addresses all spec changes in the diff except the select scope
  22263. changes, which have already been fixed in a separate bug.
  22264. https://bugs.webkit.org/show_bug.cgi?id=46676
  22265. * html/parser/HTMLElementStack.cpp:
  22266. (WebCore::HTMLNames::isScopeMarker): Add foreign elements to list.
  22267. * html/parser/HTMLTreeBuilder.cpp:
  22268. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  22269. (WebCore::HTMLTreeBuilder::processDoctypeToken): Switch mode before reprocessing any tokens.
  22270. (WebCore::HTMLTreeBuilder::processStartTagForInBody): Ditto. Remove secondary insertion mode.
  22271. (WebCore::HTMLTreeBuilder::processStartTagForInTable): Switch mode before reprocessing any tokens.
  22272. (WebCore::HTMLTreeBuilder::processStartTag): Ditto. Remove secondary insertion mode.
  22273. (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately): Remove foreign var. Use hasTagName() instead of == localName() to fix bug with foreign elements.
  22274. (WebCore::HTMLTreeBuilder::processEndTagForInTableBody): Switch mode before reprocessing any tokens.
  22275. (WebCore::HTMLTreeBuilder::processEndTagForInRow): Ditto.
  22276. (WebCore::HTMLTreeBuilder::processEndTagForInCell): Ditto.
  22277. (WebCore::HTMLTreeBuilder::processEndTagForInBody): Ditto.
  22278. (WebCore::HTMLTreeBuilder::processEndTag): Ditto.
  22279. (WebCore::HTMLTreeBuilder::prepareToReprocessToken): Added.
  22280. (WebCore::HTMLTreeBuilder::reprocessStartTag): Added.
  22281. (WebCore::HTMLTreeBuilder::reprocessEndTag): Added.
  22282. (WebCore::HTMLTreeBuilder::processForeignContentUsingInBodyModeAndResetMode): Added.
  22283. (WebCore::HTMLTreeBuilder::resetForeignInsertionMode): Added.
  22284. (WebCore::HTMLTreeBuilder::processComment): Switch mode before reprocessing any tokens.
  22285. (WebCore::HTMLTreeBuilder::processCharacterBuffer): Ditto.
  22286. (WebCore::HTMLTreeBuilder::processEndOfFile): Ditto.
  22287. * html/parser/HTMLTreeBuilder.h: Functions and member for tracking potential switch from InForeignContentMode.
  22288. 2010-10-21 Adam Barth <abarth@webkit.org>
  22289. Reviewed by David Levin.
  22290. Remove Android build system
  22291. https://bugs.webkit.org/show_bug.cgi?id=48111
  22292. As far as I can tell, these files are not maintained. They are a
  22293. mantaince burden on the project. If folks would like to come out of
  22294. the woodwork and maintain these files, that's great. At the moment,
  22295. they seem like dead weight for the project.
  22296. * Android.mk: Removed.
  22297. 2010-10-21 Kwang Yul Seo <skyul@company100.net>
  22298. Reviewed by James Robinson.
  22299. Make sure skia is not Chromium specific
  22300. https://bugs.webkit.org/show_bug.cgi?id=39672
  22301. GlyphPageTreeNodeLinux does not depend on Linux or Chromium.
  22302. Move GlyphPageTreeNodeLinux to platform/graphics/skia and rename it to
  22303. GlyphPageTreeNodeSkia.cpp so that other ports can use it.
  22304. * WebCore.gyp/WebCore.gyp:
  22305. * WebCore.gypi:
  22306. * platform/graphics/chromium/GlyphPageTreeNodeLinux.cpp: Removed.
  22307. * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp: Added.
  22308. 2010-10-21 Ryosuke Niwa <rniwa@webkit.org>
  22309. Reviewed by Tony Chang.
  22310. removeFormat needs to be reimplemented
  22311. https://bugs.webkit.org/show_bug.cgi?id=43017
  22312. Reimplemented execCommand('RemoveFormat', false, null). New implementation removes
  22313. the same elements removed by Internet Explorer. Because WebKit supports StyleWithCSS
  22314. we also reset any editing styles to match that of the root editable element
  22315. while Internet Explorer does not remove any CSS styles.
  22316. New implementation uses ApplyStyleCommand to remove appropriate elements and reset the style.
  22317. Added new constructor and member variable to ApplyStyleCommand to support mass-removal of elements
  22318. since it's inefficient to call ApplyStyleCommand on each element we're removing.
  22319. To avoid an infinite loop in pushDownInlineStyleAroundNode when mass-removing, WebKit no longer
  22320. push down element one level at a time. Instead, we keep a stack of styled elements to be applied,
  22321. and apply wrap siblings of targetNode's ancestors by all of them at once.
  22322. Tests: editing/execCommand/remove-format-elements.html
  22323. editing/execCommand/remove-format-multiple-elements.html
  22324. * editing/ApplyStyleCommand.cpp:
  22325. (WebCore::ApplyStyleCommand::ApplyStyleCommand): Added; this version takes style and a function pointer
  22326. to a boolean function that determines which element needs to removed, and set m_removeOnly to true.
  22327. (WebCore::ApplyStyleCommand::doApply): Added support for m_isInlineElementToRemoveFunction.
  22328. (WebCore::ApplyStyleCommand::applyBlockStyle): Ditto.
  22329. (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange): Exits early if m_removeOnly is true.
  22330. (WebCore::ApplyStyleCommand::isStyledInlineElementToRemove): Added.
  22331. (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle): Calls isStyledInlineElementToRemove.
  22332. (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Ditto.
  22333. (WebCore::ApplyStyleCommand::removeInlineStyle): Ditto.
  22334. (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): See above.
  22335. * editing/ApplyStyleCommand.h:
  22336. (WebCore::ApplyStyleCommand::create): Added.
  22337. * editing/RemoveFormatCommand.cpp:
  22338. (WebCore::isElementForRemoveFormatCommand): Added.
  22339. (WebCore::RemoveFormatCommand::doApply): Rewritten.
  22340. 2010-10-21 Tony Gentilcore <tonyg@chromium.org>
  22341. Reviewed by Adam Barth.
  22342. Ignore document.write() when it comes from a network task
  22343. https://bugs.webkit.org/show_bug.cgi?id=47560
  22344. This implements the update to the spec made by:
  22345. http://www.w3.org/Bugs/Public/show_bug.cgi?id=9767
  22346. It also matches the latest Firefox 4 beta. The notable change is that
  22347. document.write from a deferred script no longer works. This avoids
  22348. blowing the patch away.
  22349. * dom/Document.cpp:
  22350. (WebCore::Document::Document):
  22351. (WebCore::Document::write):
  22352. * dom/Document.h:
  22353. (WebCore::DestructiveWriteCountIncrementer::DestructiveWriteCountIncrementer):
  22354. (WebCore::Document::ignoreDestructiveWriteCountIncrementer):
  22355. * dom/ScriptElement.cpp:
  22356. (WebCore::ScriptElement::insertedIntoDocument):
  22357. (WebCore::ScriptElementData::ScriptElementData):
  22358. (WebCore::ScriptElementData::evaluateScript):
  22359. * dom/ScriptElement.h:
  22360. * html/parser/HTMLScriptRunner.cpp:
  22361. (WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent):
  22362. 2010-10-21 Ryosuke Niwa <rniwa@webkit.org>
  22363. Unreviewed Leopard build fix attempt.
  22364. Explicitly cast the return value of deg2rad to float.
  22365. * rendering/InlineTextBox.cpp:
  22366. (WebCore::InlineTextBox::paint):
  22367. 2010-10-21 Mihai Parparita <mihaip@chromium.org>
  22368. Reviewed by James Robinson.
  22369. [Chromium] Fix Chromium Mac build
  22370. https://bugs.webkit.org/show_bug.cgi?id=48096
  22371. Fix Chromium Mac build after r70225 (Chromium uses Core Text but is not
  22372. PLATFORM(MAC)).
  22373. * platform/graphics/SimpleFontData.h:
  22374. 2010-10-21 Xiaomei Ji <xji@chromium.org>
  22375. Reviewed by David Levin.
  22376. Performance improvement for FontLinux.
  22377. https://bugs.webkit.org/show_bug.cgi?id=47019
  22378. Reduce the number of calls for the normalization function because converting
  22379. to NFC form is very expensive.
  22380. Combine space normalization and character mirroring into one text scan.
  22381. Test: platform/chromium/fast/text/font-linux-normalize.html
  22382. * platform/graphics/chromium/FontLinux.cpp:
  22383. (WebCore::TextRunWalker::TextRunWalker):
  22384. (WebCore::TextRunWalker::~TextRunWalker):
  22385. (WebCore::TextRunWalker::getNormalizedTextRun):
  22386. (WebCore::TextRunWalker::normalizeSpacesAndMirrorChars):
  22387. 2010-10-21 David Hyatt <hyatt@apple.com>
  22388. Reviewed by Darin Adler.
  22389. https://bugs.webkit.org/show_bug.cgi?id=48085
  22390. Make basic vertical text painting work. This includes the text itself, underlines, overlines, line-throughs and shadows.
  22391. Added fast/blockflow/english-lr-text.html
  22392. * rendering/InlineFlowBox.cpp:
  22393. (WebCore::InlineFlowBox::paint):
  22394. * rendering/InlineFlowBox.h:
  22395. * rendering/InlineTextBox.cpp:
  22396. (WebCore::InlineTextBox::applyShadowToGraphicsContext):
  22397. (WebCore::paintTextWithShadows):
  22398. (WebCore::InlineTextBox::paint):
  22399. (WebCore::InlineTextBox::paintDecoration):
  22400. (WebCore::InlineTextBox::paintTextMatchMarker):
  22401. * rendering/InlineTextBox.h:
  22402. * rendering/svg/SVGInlineTextBox.cpp:
  22403. (WebCore::SVGInlineTextBox::paintTextWithShadows):
  22404. 2010-10-21 No'am Rosenthal <noam.rosenthal@nokia.com>
  22405. Reviewed by Simon Hausmann.
  22406. [Qt] When doing rendering through tiling, it seems the tiles are not initialized before rendering
  22407. https://bugs.webkit.org/show_bug.cgi?id=48070
  22408. No new tests. Auto-tests for Tiled Backing Store should be added, see bug 48082
  22409. * page/Frame.cpp:
  22410. (WebCore::Frame::tiledBackingStoreBackgroundColor):
  22411. * page/Frame.h:
  22412. * platform/graphics/TiledBackingStoreClient.h:
  22413. * platform/graphics/qt/TileQt.cpp:
  22414. (WebCore::Tile::updateBackBuffer):
  22415. 2010-10-21 Carlos Garcia Campos <cgarcia@igalia.com>
  22416. Reviewed by Martin Robinson.
  22417. [GTK] Use GCharsetConverter instead of g_iconv in TextCodecGtk
  22418. https://bugs.webkit.org/show_bug.cgi?id=47896
  22419. It makes error handling easier. Fixes tests:
  22420. fast/encoding/invalid-multi-byte-over-consumption.html
  22421. fast/encoding/invalid-xml.html
  22422. fast/encoding/japanese-encoding-mix.html
  22423. when building with glib unicode
  22424. * platform/text/gtk/TextCodecGtk.cpp:
  22425. (WebCore::TextCodecGtk::TextCodecGtk):
  22426. (WebCore::TextCodecGtk::~TextCodecGtk):
  22427. (WebCore::TextCodecGtk::createIConvDecoder):
  22428. (WebCore::TextCodecGtk::createIConvEncoder):
  22429. (WebCore::TextCodecGtk::decode):
  22430. (WebCore::TextCodecGtk::encode):
  22431. * platform/text/gtk/TextCodecGtk.h:
  22432. 2010-10-21 Chris Fleizach <cfleizach@apple.com>
  22433. Reviewed by Beth Dakin.
  22434. AX: contenteditable nodes do not return correct AXSelectedText* attributes
  22435. https://bugs.webkit.org/show_bug.cgi?id=48080
  22436. The ariaSelectedDOMTextRange() method was not returning the correct values.
  22437. The fix is to return a plain text range that represents the current selection.
  22438. Test: platform/mac/accessibility/content-editable-range-properties.html
  22439. * accessibility/AccessibilityObject.h:
  22440. (WebCore::AccessibilityObject::accessibilityDescription):
  22441. * accessibility/AccessibilityRenderObject.cpp:
  22442. (WebCore::AccessibilityRenderObject::ariaSelectedTextRange):
  22443. (WebCore::AccessibilityRenderObject::selectedText):
  22444. (WebCore::AccessibilityRenderObject::selectedTextRange):
  22445. * accessibility/AccessibilityRenderObject.h:
  22446. 2010-10-20 Jer Noble <jer.noble@apple.com>
  22447. Reviewed by Eric Carlson.
  22448. Video -> Canvas doesn't work on Windows
  22449. https://bugs.webkit.org/show_bug.cgi?id=47996
  22450. rdar://problem/7884690
  22451. * WebCore.vcproj/QTMovieWin.vcproj: Added QTDecompressionSession.{cpp,h}
  22452. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
  22453. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::paint): Create a
  22454. QTDecompressionSession if necessary and convert the QTPixelBuffer
  22455. into a CG-compatible one.
  22456. * platform/graphics/win/QTDecompressionSession.cpp: Added.
  22457. * platform/graphics/win/QTDecompressionSession.h: Added.
  22458. * platform/graphics/win/QTPixelBuffer.cpp:
  22459. (SetNumberValue): Moved from QTMovieVisualContext.
  22460. (QTPixelBuffer::createPixelBufferAttributesDictionary): Moved from inside
  22461. QTMovieVisualContext::createPixelBufferOptionsDictionary().
  22462. * platform/graphics/win/QTPixelBuffer.h: Moved the Type enum
  22463. from QTMovieVisualContext.h.
  22464. 2010-10-21 Carlos Garcia Campos <cgarcia@igalia.com>
  22465. Reviewed by Martin Robinson.
  22466. [GTK] TextBreakIteratorGtk should initialize its internal index to 0
  22467. https://bugs.webkit.org/show_bug.cgi?id=48065
  22468. It fixes the following tests when using glib unicode:
  22469. fast/forms/ValidityState-tooLong-input.html
  22470. fast/forms/ValidityState-tooLong-textarea.html
  22471. fast/forms/input-appearance-maxlength.html
  22472. fast/forms/input-implicit-length-limit.html
  22473. fast/forms/input-maxlength.html
  22474. fast/forms/textarea-live-pseudo-selectors.html
  22475. fast/forms/mailto/advanced-get.html
  22476. fast/forms/mailto/advanced-put.html
  22477. * platform/text/gtk/TextBreakIteratorGtk.cpp:
  22478. (WebCore::setUpIterator):
  22479. 2010-10-21 takano takumi <takano1@asia.apple.com>
  22480. Reviewed by Dan Bernstein.
  22481. Need to swap glyphs for vertical writing
  22482. https://bugs.webkit.org/show_bug.cgi?id=46973
  22483. Made changes to pass the writing-mode orientation flag in RenderStyle down to FontPlatformData,
  22484. and ultimately to CoreText APIs in both font complex path and fast path.
  22485. Tests: fast/text/international/vertical-text-glyph-test.html
  22486. fast/text/international/vertical-text-metrics-test.html
  22487. * WebCore.exp.in:
  22488. * WebCore.xcodeproj/project.pbxproj: Added platform/graphics/FontOrientation.h.
  22489. * css/CSSFontFaceSource.cpp:
  22490. (WebCore::CSSFontFaceSource::getFontData): Added font orientation parameter to SimpleFontData.
  22491. * css/CSSStyleSelector.cpp:
  22492. (WebCore::CSSStyleSelector::applyProperty): Set appropriate font orientation to the font description
  22493. when writing-mode is being specified.
  22494. * loader/CachedFont.cpp:
  22495. (WebCore::CachedFont::platformDataFromCustomData): Made to pass font orientation to FontPlatformData.
  22496. * loader/CachedFont.h:
  22497. * platform/graphics/FontCache.cpp: Added font orientation to FontPlatformDataCacheKey
  22498. (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
  22499. (WebCore::FontPlatformDataCacheKey::operator==):
  22500. (WebCore::computeHash):
  22501. (WebCore::FontCache::getCachedFontPlatformData):
  22502. * platform/graphics/FontDescription.h: Added font orientation support to FontDescription class
  22503. (WebCore::FontDescription::FontDescription):
  22504. (WebCore::FontDescription::orientation):
  22505. (WebCore::FontDescription::setOrientation):
  22506. (WebCore::FontDescription::operator==):
  22507. * platform/graphics/FontOrientation.h: Added.
  22508. * platform/graphics/SimpleFontData.h:
  22509. * platform/graphics/cairo/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
  22510. (WebCore::FontCustomPlatformData::fontPlatformData):
  22511. * platform/graphics/cairo/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
  22512. * platform/graphics/cocoa/FontPlatformData.h: Added font orientation support to FontPlatformData class
  22513. (WebCore::FontPlatformData::FontPlatformData):
  22514. (WebCore::FontPlatformData::orientation):
  22515. (WebCore::FontPlatformData::hash):
  22516. (WebCore::FontPlatformData::operator==):
  22517. * platform/graphics/cocoa/FontPlatformDataCocoa.mm: Added font orientation support
  22518. (WebCore::FontPlatformData::FontPlatformData):
  22519. (WebCore::FontPlatformData::operator=):
  22520. (WebCore::FontPlatformData::allowsLigatures): Don't allow ligatures when the font is vertical orientation.
  22521. (WebCore::FontPlatformData::description):
  22522. * platform/graphics/gtk/FontCustomPlatformDataPango.cpp: Changed to pass font orientation to fontPlatformData()
  22523. (WebCore::FontCustomPlatformData::fontPlatformData):
  22524. * platform/graphics/haiku/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
  22525. (WebCore::FontCustomPlatformData::fontPlatformData):
  22526. * platform/graphics/haiku/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
  22527. * platform/graphics/mac/FontCacheMac.mm: Added font orientation parameter when creating FontPlatformData object.
  22528. (WebCore::FontCache::getFontDataForCharacters):
  22529. (WebCore::FontCache::createFontPlatformData):
  22530. * platform/graphics/mac/FontCustomPlatformData.cpp: Added font orientation parameter when creating FontPlatformData object.
  22531. (WebCore::FontCustomPlatformData::fontPlatformData):
  22532. * platform/graphics/mac/FontCustomPlatformData.h: Changed to pass font orientation parameter to fontPlatformData()
  22533. * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
  22534. (WebCore::GlyphPage::fill): Changed to use CoreText to extract glyphs when the current font is vertical orientation.
  22535. CoreText automatically swaps glyphs with vertical variants when the font orientation is vertical.
  22536. * platform/graphics/mac/SimpleFontDataCoreText.cpp: Added vertical form attribute to the attribute dictionary for a CTLine.
  22537. (WebCore::SimpleFontData::getCFStringAttributes):
  22538. * platform/graphics/mac/SimpleFontDataMac.mm:
  22539. (WebCore::SimpleFontData::platformBoundsForGlyph): Changed to use CoreText (from CG) to support vertical metrics.
  22540. (WebCore::SimpleFontData::platformWidthForGlyph): Made to use CoreText, instead of wkGetGlyphTransformedAdvances,
  22541. to get vertical metrics when the font orientation is vertical.
  22542. * platform/graphics/qt/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
  22543. * platform/graphics/qt/FontCustomPlatformDataQt.cpp: Changed to pass font orientation to fontPlatformData()
  22544. (WebCore::FontCustomPlatformData::fontPlatformData):
  22545. * platform/graphics/skia/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
  22546. (WebCore::FontCustomPlatformData::fontPlatformData):
  22547. * platform/graphics/skia/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
  22548. * platform/graphics/win/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
  22549. (WebCore::FontCustomPlatformData::fontPlatformData):
  22550. * platform/graphics/win/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
  22551. * platform/graphics/win/FontCustomPlatformDataCairo.cpp: Changed to pass font orientation to fontPlatformData()
  22552. (WebCore::FontCustomPlatformData::fontPlatformData):
  22553. * platform/graphics/win/FontCustomPlatformDataCairo.h: Changed to pass font orientation to fontPlatformData()
  22554. * platform/graphics/wince/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
  22555. (WebCore::FontCustomPlatformData::fontPlatformData):
  22556. * platform/graphics/wince/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
  22557. * platform/graphics/wx/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
  22558. (WebCore::FontCustomPlatformData::fontPlatformData):
  22559. * platform/graphics/wx/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
  22560. 2010-10-21 Pavel Feldman <pfeldman@chromium.org>
  22561. Reviewed by Yury Semikhatsky.
  22562. Web Inspector: provide resource tree in the Storage panel (behind the flag).
  22563. https://bugs.webkit.org/show_bug.cgi?id=48069
  22564. * WebCore.gypi:
  22565. * inspector/Inspector.idl:
  22566. * inspector/InspectorController.cpp:
  22567. (WebCore::InspectorController::frameDetachedFromParent):
  22568. * inspector/InspectorResourceAgent.cpp:
  22569. (WebCore::buildObjectForDocumentLoader):
  22570. (WebCore::buildObjectForFrameResource):
  22571. (WebCore::buildObjectForCachedResource):
  22572. (WebCore::populateObjectWithFrameResources):
  22573. (WebCore::InspectorResourceAgent::identifierForInitialRequest):
  22574. (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
  22575. (WebCore::buildObjectForFrameTree):
  22576. (WebCore::InspectorResourceAgent::didCommitLoad):
  22577. (WebCore::InspectorResourceAgent::frameDetachedFromParent):
  22578. (WebCore::InspectorResourceAgent::cachedResources):
  22579. (WebCore::InspectorResourceAgent::resourceContent):
  22580. * inspector/InspectorResourceAgent.h:
  22581. * inspector/front-end/Images/frame.png: Added.
  22582. * inspector/front-end/NetworkPanel.js:
  22583. (WebInspector.NetworkPanel.prototype.refreshResource):
  22584. (WebInspector.NetworkPanel.prototype._showResource):
  22585. * inspector/front-end/Resource.js:
  22586. (WebInspector.Resource.Type.toString):
  22587. (WebInspector.Resource.prototype.getContents):
  22588. * inspector/front-end/ResourceManager.js:
  22589. (WebInspector.ResourceManager):
  22590. (WebInspector.ResourceManager.prototype.identifierForInitialRequest):
  22591. (WebInspector.ResourceManager.prototype._createResource):
  22592. (WebInspector.ResourceManager.prototype.willSendRequest):
  22593. (WebInspector.ResourceManager.prototype._appendRedirect):
  22594. (WebInspector.ResourceManager.prototype.markResourceAsCached):
  22595. (WebInspector.ResourceManager.prototype.didReceiveResponse):
  22596. (WebInspector.ResourceManager.prototype._updateResourceWithResponse):
  22597. (WebInspector.ResourceManager.prototype.didReceiveContentLength):
  22598. (WebInspector.ResourceManager.prototype.didFinishLoading):
  22599. (WebInspector.ResourceManager.prototype.didFailLoading):
  22600. (WebInspector.ResourceManager.prototype.didLoadResourceFromMemoryCache):
  22601. (WebInspector.ResourceManager.prototype._updateResourceWithCachedResource):
  22602. (WebInspector.ResourceManager.prototype.setOverrideContent):
  22603. (WebInspector.ResourceManager.prototype.didCommitLoadForFrame):
  22604. (WebInspector.ResourceManager.prototype.frameDetachedFromParent):
  22605. (WebInspector.ResourceManager.prototype._clearResources):
  22606. (WebInspector.ResourceManager.prototype.didCreateWebSocket):
  22607. (WebInspector.ResourceManager.prototype.willSendWebSocketHandshakeRequest):
  22608. (WebInspector.ResourceManager.prototype.didReceiveWebSocketHandshakeResponse):
  22609. (WebInspector.ResourceManager.prototype.didCloseWebSocket):
  22610. (WebInspector.ResourceManager.prototype._processCachedResources):
  22611. (WebInspector.ResourceManager.prototype._appendFramesRecursively.comparator):
  22612. (WebInspector.ResourceManager.prototype._appendFramesRecursively):
  22613. (WebInspector.ResourceManager.createResourceView):
  22614. (WebInspector.ResourceManager.resourceViewTypeMatchesResource):
  22615. (WebInspector.ResourceManager.resourceViewForResource):
  22616. (WebInspector.ResourceManager.getContents):
  22617. * inspector/front-end/ResourcesPanel.js:
  22618. (WebInspector.ResourcesPanel.prototype.get searchableViews):
  22619. (WebInspector.ResourcesPanel.prototype.addMessageToResource):
  22620. (WebInspector.ResourcesPanel.prototype._recreateViewForResourceIfNeeded):
  22621. (WebInspector.ResourcesPanel.prototype.showResource):
  22622. (WebInspector.ResourcesPanel.prototype.sourceFrameForResource):
  22623. * inspector/front-end/ScriptsPanel.js:
  22624. (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
  22625. * inspector/front-end/StoragePanel.js:
  22626. (WebInspector.StoragePanel):
  22627. (WebInspector.StoragePanel.prototype.addFrame):
  22628. (WebInspector.StoragePanel.prototype.removeFrame):
  22629. (WebInspector.StoragePanel.prototype.addFrameResource):
  22630. (WebInspector.StoragePanel.prototype.removeFrameResources):
  22631. (WebInspector.StoragePanel.prototype.showResource):
  22632. (WebInspector.BaseStorageTreeElement.prototype.onattach):
  22633. (WebInspector.BaseStorageTreeElement.prototype.onreveal):
  22634. (WebInspector.FrameTreeElement):
  22635. (WebInspector.FrameTreeElement.prototype.onselect):
  22636. (WebInspector.FrameResourceTreeElement):
  22637. (WebInspector.FrameResourceTreeElement.prototype.onselect):
  22638. (WebInspector.FrameResourceTreeElement.prototype.onattach):
  22639. * inspector/front-end/WebKit.qrc:
  22640. * inspector/front-end/inspector.css:
  22641. (.frame-storage-tree-item .icon):
  22642. (.storage.panel .sidebar.outline-disclosure > ol):
  22643. (.resources-category-images .image-resource-icon-preview):
  22644. (.children.small .resources-category-images .image-resource-icon-preview):
  22645. * inspector/front-end/inspector.js:
  22646. 2010-10-21 David Kilzer <ddkilzer@apple.com>
  22647. <http://webkit.org/b/48047> Fix warnings found by check-Xcode-source-file-types
  22648. Reviewed by Adam Roben.
  22649. Fixes the following warning:
  22650. WARNING: Unknown file type 'sourcecode' for file 'CSSPrimitiveValue.idl'.
  22651. 1 issues found for WebCore/WebCore.xcodeproj/project.pbxproj.
  22652. * WebCore.xcodeproj/project.pbxproj: Removed explicit file type
  22653. for CSSPrimitiveValue.idl to make it match other IDL files.
  22654. 2010-10-21 Yury Semikhatsky <yurys@chromium.org>
  22655. Reviewed by Pavel Feldman.
  22656. Web Inspector: decouple ScriptArguments from ScriptCallStack
  22657. https://bugs.webkit.org/show_bug.cgi?id=48058
  22658. ScriptCallFrame and ScriptCallStack are now the same for both JSC and V8.
  22659. The factory functions that allow to create ScriptCallStack from VM-specific
  22660. objects are defined in ScriptCallStackFactory.cpp.
  22661. ScriptArguments class is used for passing arguments from JS code to the native
  22662. part.
  22663. No new tests. This refactoring is covered with existing Console tests.
  22664. * WebCore.gypi:
  22665. * WebCore.xcodeproj/project.pbxproj:
  22666. * bindings/js/ScriptCallFrame.cpp: Removed.
  22667. * bindings/js/ScriptCallFrame.h: Removed.
  22668. * bindings/js/ScriptCallStack.cpp: Removed.
  22669. * bindings/js/ScriptCallStack.h: Removed.
  22670. * bindings/js/ScriptCallStackFactory.cpp: Added.
  22671. (WebCore::createScriptCallStack):
  22672. (WebCore::createScriptArguments):
  22673. (WebCore::ScriptCallStack::stackTrace):
  22674. * bindings/js/ScriptCallStackFactory.h: Added.
  22675. * bindings/js/ScriptState.h:
  22676. (WebCore::ScriptStateProtectedPtr::get):
  22677. * bindings/scripts/CodeGeneratorJS.pm:
  22678. * bindings/scripts/CodeGeneratorV8.pm:
  22679. * bindings/v8/ScriptCallFrame.cpp: Removed.
  22680. * bindings/v8/ScriptCallFrame.h: Removed.
  22681. * bindings/v8/ScriptCallStack.cpp: Removed.
  22682. * bindings/v8/ScriptCallStack.h: Removed.
  22683. * bindings/v8/ScriptCallStackFactory.cpp: Added.
  22684. (WebCore::toScriptCallFrame):
  22685. (WebCore::toScriptCallFramesVector):
  22686. (WebCore::createScriptCallStack):
  22687. (WebCore::createScriptArguments):
  22688. (WebCore::ScriptCallStack::stackTrace):
  22689. * bindings/v8/ScriptCallStackFactory.h: Added.
  22690. * bindings/v8/ScriptController.cpp:
  22691. (WebCore::ScriptController::setCaptureCallStackForUncaughtExceptions):
  22692. * bindings/v8/ScriptState.h:
  22693. (WebCore::ScriptStateProtectedPtr::get):
  22694. * bindings/v8/V8ConsoleMessage.cpp:
  22695. (WebCore::V8ConsoleMessage::handler):
  22696. (WebCore::V8ConsoleMessage::dispatchNow):
  22697. * bindings/v8/V8ConsoleMessage.h:
  22698. * bindings/v8/custom/V8ConsoleCustom.cpp:
  22699. (WebCore::V8Console::traceCallback):
  22700. (WebCore::V8Console::assertCallback):
  22701. * inspector/ConsoleMessage.cpp:
  22702. (WebCore::ConsoleMessage::ConsoleMessage):
  22703. (WebCore::ConsoleMessage::addToFrontend):
  22704. (WebCore::ConsoleMessage::updateRepeatCountInConsole):
  22705. (WebCore::ConsoleMessage::isEqual):
  22706. * inspector/ConsoleMessage.h:
  22707. * inspector/InspectorController.cpp:
  22708. (WebCore::InspectorController::addMessageToConsole):
  22709. (WebCore::InspectorController::startGroup):
  22710. * inspector/InspectorController.h:
  22711. * inspector/ScriptArguments.cpp: Added.
  22712. (WebCore::ScriptArguments::ScriptArguments):
  22713. (WebCore::ScriptArguments::~ScriptArguments):
  22714. (WebCore::ScriptArguments::argumentAt):
  22715. (WebCore::ScriptArguments::globalState):
  22716. (WebCore::ScriptArguments::getFirstArgumentAsString):
  22717. (WebCore::ScriptArguments::isEqual):
  22718. * inspector/ScriptArguments.h: Added.
  22719. (WebCore::ScriptArguments::argumentCount):
  22720. * inspector/ScriptCallFrame.cpp: Added.
  22721. (WebCore::ScriptCallFrame::ScriptCallFrame):
  22722. (WebCore::ScriptCallFrame::~ScriptCallFrame):
  22723. (WebCore::ScriptCallFrame::isEqual):
  22724. (WebCore::ScriptCallFrame::buildInspectorObject):
  22725. * inspector/ScriptCallFrame.h: Added.
  22726. (WebCore::ScriptCallFrame::functionName):
  22727. (WebCore::ScriptCallFrame::sourceURL):
  22728. (WebCore::ScriptCallFrame::lineNumber):
  22729. * inspector/ScriptCallStack.cpp: Added.
  22730. (WebCore::ScriptCallStack::ScriptCallStack):
  22731. (WebCore::ScriptCallStack::~ScriptCallStack):
  22732. (WebCore::ScriptCallStack::at):
  22733. (WebCore::ScriptCallStack::size):
  22734. (WebCore::ScriptCallStack::isEqual):
  22735. (WebCore::ScriptCallStack::buildInspectorObject):
  22736. * inspector/ScriptCallStack.h: Added.
  22737. * page/Console.cpp:
  22738. (WebCore::Console::addMessage):
  22739. (WebCore::Console::debug):
  22740. (WebCore::Console::error):
  22741. (WebCore::Console::info):
  22742. (WebCore::Console::log):
  22743. (WebCore::Console::dir):
  22744. (WebCore::Console::dirxml):
  22745. (WebCore::Console::trace):
  22746. (WebCore::Console::assertCondition):
  22747. (WebCore::Console::count):
  22748. (WebCore::Console::markTimeline):
  22749. (WebCore::Console::profile):
  22750. (WebCore::Console::profileEnd):
  22751. (WebCore::Console::timeEnd):
  22752. (WebCore::Console::group):
  22753. (WebCore::Console::groupCollapsed):
  22754. (WebCore::Console::shouldCaptureFullStackTrace):
  22755. (WebCore::Console::warn):
  22756. * page/Console.h:
  22757. 2010-10-21 Yury Semikhatsky <yurys@chromium.org>
  22758. Unreviewed. Revert r70232. Chromium compilation failure.
  22759. 2010-10-21 Yury Semikhatsky <yurys@chromium.org>
  22760. Unreviewed. Revert r70233. Too many failures.
  22761. 2010-10-21 Yury Semikhatsky <yurys@chromium.org>
  22762. Unreviewed. Remove references to deleted headers from WebCore.pro
  22763. * WebCore.pro:
  22764. 2010-10-21 Yury Semikhatsky <yurys@chromium.org>
  22765. Reviewed by Pavel Feldman.
  22766. Web Inspector: decouple ScriptArguments from ScriptCallStack
  22767. https://bugs.webkit.org/show_bug.cgi?id=48058
  22768. ScriptCallFrame and ScriptCallStack are now the same for both JSC and V8.
  22769. The factory functions that allow to create ScriptCallStack from VM-specific
  22770. objects are defined in ScriptCallStackFactory.cpp.
  22771. ScriptArguments class is used for passing arguments from JS code to the native
  22772. part.
  22773. No new tests. This refactoring is covered with existing Console tests.
  22774. * WebCore.gypi:
  22775. * WebCore.xcodeproj/project.pbxproj:
  22776. * bindings/js/ScriptCallFrame.cpp: Removed.
  22777. * bindings/js/ScriptCallFrame.h: Removed.
  22778. * bindings/js/ScriptCallStack.cpp: Removed.
  22779. * bindings/js/ScriptCallStack.h: Removed.
  22780. * bindings/js/ScriptCallStackFactory.cpp: Added.
  22781. (WebCore::createScriptCallStack):
  22782. (WebCore::createScriptArguments):
  22783. (WebCore::ScriptCallStack::stackTrace):
  22784. * bindings/js/ScriptCallStackFactory.h: Added.
  22785. * bindings/js/ScriptState.h:
  22786. (WebCore::ScriptStateProtectedPtr::get):
  22787. * bindings/scripts/CodeGeneratorJS.pm:
  22788. * bindings/scripts/CodeGeneratorV8.pm:
  22789. * bindings/v8/ScriptCallFrame.cpp: Removed.
  22790. * bindings/v8/ScriptCallFrame.h: Removed.
  22791. * bindings/v8/ScriptCallStack.cpp: Removed.
  22792. * bindings/v8/ScriptCallStack.h: Removed.
  22793. * bindings/v8/ScriptCallStackFactory.cpp: Added.
  22794. (WebCore::toScriptCallFrame):
  22795. (WebCore::toScriptCallFramesVector):
  22796. (WebCore::createScriptCallStack):
  22797. (WebCore::createScriptArguments):
  22798. (WebCore::ScriptCallStack::stackTrace):
  22799. * bindings/v8/ScriptCallStackFactory.h: Added.
  22800. * bindings/v8/ScriptController.cpp:
  22801. (WebCore::ScriptController::setCaptureCallStackForUncaughtExceptions):
  22802. * bindings/v8/ScriptState.h:
  22803. (WebCore::ScriptStateProtectedPtr::get):
  22804. * bindings/v8/V8ConsoleMessage.cpp:
  22805. (WebCore::V8ConsoleMessage::handler):
  22806. (WebCore::V8ConsoleMessage::dispatchNow):
  22807. * bindings/v8/V8ConsoleMessage.h:
  22808. * bindings/v8/custom/V8ConsoleCustom.cpp:
  22809. (WebCore::V8Console::traceCallback):
  22810. (WebCore::V8Console::assertCallback):
  22811. * inspector/ConsoleMessage.cpp:
  22812. (WebCore::ConsoleMessage::ConsoleMessage):
  22813. (WebCore::ConsoleMessage::addToFrontend):
  22814. (WebCore::ConsoleMessage::updateRepeatCountInConsole):
  22815. (WebCore::ConsoleMessage::isEqual):
  22816. * inspector/ConsoleMessage.h:
  22817. * inspector/InspectorController.cpp:
  22818. (WebCore::InspectorController::addMessageToConsole):
  22819. (WebCore::InspectorController::startGroup):
  22820. * inspector/InspectorController.h:
  22821. * inspector/ScriptArguments.cpp: Added.
  22822. (WebCore::ScriptArguments::ScriptArguments):
  22823. (WebCore::ScriptArguments::~ScriptArguments):
  22824. (WebCore::ScriptArguments::argumentAt):
  22825. (WebCore::ScriptArguments::globalState):
  22826. (WebCore::ScriptArguments::getFirstArgumentAsString):
  22827. (WebCore::ScriptArguments::isEqual):
  22828. * inspector/ScriptArguments.h: Added.
  22829. (WebCore::ScriptArguments::argumentCount):
  22830. * inspector/ScriptCallFrame.cpp: Added.
  22831. (WebCore::ScriptCallFrame::ScriptCallFrame):
  22832. (WebCore::ScriptCallFrame::~ScriptCallFrame):
  22833. (WebCore::ScriptCallFrame::isEqual):
  22834. (WebCore::ScriptCallFrame::buildInspectorObject):
  22835. * inspector/ScriptCallFrame.h: Added.
  22836. (WebCore::ScriptCallFrame::functionName):
  22837. (WebCore::ScriptCallFrame::sourceURL):
  22838. (WebCore::ScriptCallFrame::lineNumber):
  22839. * inspector/ScriptCallStack.cpp: Added.
  22840. (WebCore::ScriptCallStack::ScriptCallStack):
  22841. (WebCore::ScriptCallStack::~ScriptCallStack):
  22842. (WebCore::ScriptCallStack::at):
  22843. (WebCore::ScriptCallStack::size):
  22844. (WebCore::ScriptCallStack::isEqual):
  22845. (WebCore::ScriptCallStack::buildInspectorObject):
  22846. * inspector/ScriptCallStack.h: Added.
  22847. * page/Console.cpp:
  22848. (WebCore::Console::addMessage):
  22849. (WebCore::Console::debug):
  22850. (WebCore::Console::error):
  22851. (WebCore::Console::info):
  22852. (WebCore::Console::log):
  22853. (WebCore::Console::dir):
  22854. (WebCore::Console::dirxml):
  22855. (WebCore::Console::trace):
  22856. (WebCore::Console::assertCondition):
  22857. (WebCore::Console::count):
  22858. (WebCore::Console::markTimeline):
  22859. (WebCore::Console::profile):
  22860. (WebCore::Console::profileEnd):
  22861. (WebCore::Console::timeEnd):
  22862. (WebCore::Console::group):
  22863. (WebCore::Console::groupCollapsed):
  22864. (WebCore::Console::shouldCaptureFullStackTrace):
  22865. (WebCore::Console::warn):
  22866. * page/Console.h:
  22867. 2010-10-21 Pavel Feldman <pfeldman@chromium.org>
  22868. Reviewed by Yury Semikhatsky.
  22869. Chromium: use dedicated event listener type in EventListenerWrapper.
  22870. https://bugs.webkit.org/show_bug.cgi?id=48059
  22871. This change introduces new EventListener::Type NativeEventListenerType.
  22872. This new type is intended to be used by any code that wants to protect
  22873. itself from unsafe casts to particular event listener implementations.
  22874. * dom/EventListener.h:
  22875. 2010-10-21 Sheriff Bot <webkit.review.bot@gmail.com>
  22876. Unreviewed, rolling out r70225.
  22877. http://trac.webkit.org/changeset/70225
  22878. https://bugs.webkit.org/show_bug.cgi?id=48061
  22879. Build breakage on Leopard. (Requested by pfeldman on #webkit).
  22880. * WebCore.exp.in:
  22881. * WebCore.xcodeproj/project.pbxproj:
  22882. * css/CSSFontFaceSource.cpp:
  22883. (WebCore::CSSFontFaceSource::getFontData):
  22884. * css/CSSStyleSelector.cpp:
  22885. (WebCore::CSSStyleSelector::applyProperty):
  22886. * loader/CachedFont.cpp:
  22887. (WebCore::CachedFont::platformDataFromCustomData):
  22888. * loader/CachedFont.h:
  22889. * platform/graphics/FontCache.cpp:
  22890. (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
  22891. (WebCore::FontPlatformDataCacheKey::operator==):
  22892. (WebCore::computeHash):
  22893. (WebCore::FontCache::getCachedFontPlatformData):
  22894. * platform/graphics/FontDescription.h:
  22895. (WebCore::FontDescription::FontDescription):
  22896. (WebCore::FontDescription::operator==):
  22897. * platform/graphics/FontOrientation.h: Removed.
  22898. * platform/graphics/SimpleFontData.h:
  22899. * platform/graphics/cairo/FontCustomPlatformData.cpp:
  22900. (WebCore::FontCustomPlatformData::fontPlatformData):
  22901. * platform/graphics/cairo/FontCustomPlatformData.h:
  22902. * platform/graphics/cocoa/FontPlatformData.h:
  22903. (WebCore::FontPlatformData::FontPlatformData):
  22904. (WebCore::FontPlatformData::hash):
  22905. (WebCore::FontPlatformData::operator==):
  22906. * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
  22907. (WebCore::FontPlatformData::FontPlatformData):
  22908. (WebCore::FontPlatformData::operator=):
  22909. (WebCore::FontPlatformData::allowsLigatures):
  22910. (WebCore::FontPlatformData::description):
  22911. * platform/graphics/gtk/FontCustomPlatformDataPango.cpp:
  22912. (WebCore::FontCustomPlatformData::fontPlatformData):
  22913. * platform/graphics/haiku/FontCustomPlatformData.cpp:
  22914. (WebCore::FontCustomPlatformData::fontPlatformData):
  22915. * platform/graphics/haiku/FontCustomPlatformData.h:
  22916. * platform/graphics/mac/FontCacheMac.mm:
  22917. (WebCore::FontCache::getFontDataForCharacters):
  22918. (WebCore::FontCache::createFontPlatformData):
  22919. * platform/graphics/mac/FontCustomPlatformData.cpp:
  22920. (WebCore::FontCustomPlatformData::fontPlatformData):
  22921. * platform/graphics/mac/FontCustomPlatformData.h:
  22922. * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
  22923. (WebCore::GlyphPage::fill):
  22924. * platform/graphics/mac/SimpleFontDataCoreText.cpp:
  22925. (WebCore::SimpleFontData::getCFStringAttributes):
  22926. * platform/graphics/mac/SimpleFontDataMac.mm:
  22927. (WebCore::SimpleFontData::platformBoundsForGlyph):
  22928. (WebCore::SimpleFontData::platformWidthForGlyph):
  22929. * platform/graphics/qt/FontCustomPlatformData.h:
  22930. * platform/graphics/qt/FontCustomPlatformDataQt.cpp:
  22931. (WebCore::FontCustomPlatformData::fontPlatformData):
  22932. * platform/graphics/skia/FontCustomPlatformData.cpp:
  22933. (WebCore::FontCustomPlatformData::fontPlatformData):
  22934. * platform/graphics/skia/FontCustomPlatformData.h:
  22935. * platform/graphics/win/FontCustomPlatformData.cpp:
  22936. (WebCore::FontCustomPlatformData::fontPlatformData):
  22937. * platform/graphics/win/FontCustomPlatformData.h:
  22938. * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
  22939. (WebCore::FontCustomPlatformData::fontPlatformData):
  22940. * platform/graphics/win/FontCustomPlatformDataCairo.h:
  22941. * platform/graphics/wince/FontCustomPlatformData.cpp:
  22942. (WebCore::FontCustomPlatformData::fontPlatformData):
  22943. * platform/graphics/wince/FontCustomPlatformData.h:
  22944. * platform/graphics/wx/FontCustomPlatformData.cpp:
  22945. (WebCore::FontCustomPlatformData::fontPlatformData):
  22946. * platform/graphics/wx/FontCustomPlatformData.h:
  22947. 2010-10-21 Carlos Garcia Campos <cgarcia@igalia.com>
  22948. Reviewed by Martin Robinson.
  22949. [GTK] Tests LayoutTests/fast/encoding/utf-32* fail when using glib unicode
  22950. https://bugs.webkit.org/show_bug.cgi?id=47805
  22951. Register UTF-32 encodings in TextCodecGtk.
  22952. * platform/text/gtk/TextCodecGtk.cpp:
  22953. (WebCore::TextCodecGtk::registerBaseEncodingNames):
  22954. (WebCore::TextCodecGtk::registerBaseCodecs):
  22955. 2010-10-21 Luiz Agostini <luiz.agostini@openbossa.org>
  22956. Reviewed by Darin Adler.
  22957. Adding MediaQueryListListener binding test cases
  22958. https://bugs.webkit.org/show_bug.cgi?id=48028
  22959. MediaQueryListListener type will need special handling of the code generators. Adding the test cases.
  22960. * bindings/scripts/test/CPP/WebDOMTestMediaQueryListListener.cpp: Added.
  22961. (WebDOMTestMediaQueryListListener::WebDOMTestMediaQueryListListenerPrivate::WebDOMTestMediaQueryListListenerPrivate):
  22962. (WebDOMTestMediaQueryListListener::WebDOMTestMediaQueryListListener):
  22963. (WebDOMTestMediaQueryListListener::operator=):
  22964. (WebDOMTestMediaQueryListListener::impl):
  22965. (WebDOMTestMediaQueryListListener::~WebDOMTestMediaQueryListListener):
  22966. (WebDOMTestMediaQueryListListener::method):
  22967. (toWebCore):
  22968. (toWebKit):
  22969. * bindings/scripts/test/CPP/WebDOMTestMediaQueryListListener.h: Added.
  22970. * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp: Added.
  22971. (WebKit::kit):
  22972. (webkit_dom_test_media_query_list_listener_method):
  22973. (WebKit::core):
  22974. (webkit_dom_test_media_query_list_listener_finalize):
  22975. (webkit_dom_test_media_query_list_listener_set_property):
  22976. (webkit_dom_test_media_query_list_listener_get_property):
  22977. (webkit_dom_test_media_query_list_listener_constructed):
  22978. (webkit_dom_test_media_query_list_listener_class_init):
  22979. (webkit_dom_test_media_query_list_listener_init):
  22980. (WebKit::wrapTestMediaQueryListListener):
  22981. * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h: Added.
  22982. * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h: Added.
  22983. * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp: Added.
  22984. (WebCore::JSTestMediaQueryListListenerConstructor::classInfo):
  22985. (WebCore::JSTestMediaQueryListListenerConstructor::createStructure):
  22986. (WebCore::JSTestMediaQueryListListenerConstructor::JSTestMediaQueryListListenerConstructor):
  22987. (WebCore::JSTestMediaQueryListListenerConstructor::getOwnPropertySlot):
  22988. (WebCore::JSTestMediaQueryListListenerConstructor::getOwnPropertyDescriptor):
  22989. (WebCore::JSTestMediaQueryListListenerPrototype::self):
  22990. (WebCore::JSTestMediaQueryListListenerPrototype::getOwnPropertySlot):
  22991. (WebCore::JSTestMediaQueryListListenerPrototype::getOwnPropertyDescriptor):
  22992. (WebCore::JSTestMediaQueryListListener::JSTestMediaQueryListListener):
  22993. (WebCore::JSTestMediaQueryListListener::~JSTestMediaQueryListListener):
  22994. (WebCore::JSTestMediaQueryListListener::createPrototype):
  22995. (WebCore::JSTestMediaQueryListListener::getOwnPropertySlot):
  22996. (WebCore::JSTestMediaQueryListListener::getOwnPropertyDescriptor):
  22997. (WebCore::jsTestMediaQueryListListenerConstructor):
  22998. (WebCore::JSTestMediaQueryListListener::getConstructor):
  22999. (WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):
  23000. (WebCore::toJS):
  23001. (WebCore::toTestMediaQueryListListener):
  23002. * bindings/scripts/test/JS/JSTestMediaQueryListListener.h: Added.
  23003. (WebCore::JSTestMediaQueryListListener::classInfo):
  23004. (WebCore::JSTestMediaQueryListListener::createStructure):
  23005. (WebCore::JSTestMediaQueryListListener::impl):
  23006. (WebCore::JSTestMediaQueryListListenerPrototype::classInfo):
  23007. (WebCore::JSTestMediaQueryListListenerPrototype::createStructure):
  23008. (WebCore::JSTestMediaQueryListListenerPrototype::JSTestMediaQueryListListenerPrototype):
  23009. * bindings/scripts/test/ObjC/DOMTestMediaQueryListListener.h: Added.
  23010. * bindings/scripts/test/ObjC/DOMTestMediaQueryListListener.mm: Added.
  23011. (-[DOMTestMediaQueryListListener dealloc]):
  23012. (-[DOMTestMediaQueryListListener finalize]):
  23013. (-[DOMTestMediaQueryListListener method:]):
  23014. (core):
  23015. (kit):
  23016. * bindings/scripts/test/ObjC/DOMTestMediaQueryListListenerInternal.h: Added.
  23017. * bindings/scripts/test/TestMediaQueryListListener.idl: Added.
  23018. * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp: Added.
  23019. (WebCore::TestMediaQueryListListenerInternal::V8_USE):
  23020. (WebCore::TestMediaQueryListListenerInternal::methodCallback):
  23021. (WebCore::ConfigureV8TestMediaQueryListListenerTemplate):
  23022. (WebCore::V8TestMediaQueryListListener::GetRawTemplate):
  23023. (WebCore::V8TestMediaQueryListListener::GetTemplate):
  23024. (WebCore::V8TestMediaQueryListListener::HasInstance):
  23025. (WebCore::V8TestMediaQueryListListener::wrapSlow):
  23026. (WebCore::V8TestMediaQueryListListener::derefObject):
  23027. * bindings/scripts/test/V8/V8TestMediaQueryListListener.h: Added.
  23028. (WebCore::V8TestMediaQueryListListener::toNative):
  23029. (WebCore::V8TestMediaQueryListListener::wrap):
  23030. (WebCore::toV8):
  23031. 2010-10-21 takano takumi <takano1@asia.apple.com>
  23032. Reviewed by Dan Bernstein.
  23033. Need to swap glyphs for vertical writing
  23034. https://bugs.webkit.org/show_bug.cgi?id=46973
  23035. Made changes to pass the writing-mode orientation flag in RenderStyle down to FontPlatformData,
  23036. and ultimately to CoreText APIs in both font complex path and fast path.
  23037. Tests: fast/text/international/vertical-text-glyph-test.html
  23038. fast/text/international/vertical-text-metrics-test.html
  23039. * WebCore.exp.in:
  23040. * WebCore.xcodeproj/project.pbxproj: Added platform/graphics/FontOrientation.h.
  23041. * css/CSSFontFaceSource.cpp:
  23042. (WebCore::CSSFontFaceSource::getFontData): Added font orientation parameter to SimpleFontData.
  23043. * css/CSSStyleSelector.cpp:
  23044. (WebCore::CSSStyleSelector::applyProperty): Set appropriate font orientation to the font description
  23045. when writing-mode is being specified.
  23046. * loader/CachedFont.cpp:
  23047. (WebCore::CachedFont::platformDataFromCustomData): Made to pass font orientation to FontPlatformData.
  23048. * loader/CachedFont.h:
  23049. * platform/graphics/FontCache.cpp: Added font orientation to FontPlatformDataCacheKey
  23050. (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
  23051. (WebCore::FontPlatformDataCacheKey::operator==):
  23052. (WebCore::computeHash):
  23053. (WebCore::FontCache::getCachedFontPlatformData):
  23054. * platform/graphics/FontDescription.h: Added font orientation support to FontDescription class
  23055. (WebCore::FontDescription::FontDescription):
  23056. (WebCore::FontDescription::orientation):
  23057. (WebCore::FontDescription::setOrientation):
  23058. (WebCore::FontDescription::operator==):
  23059. * platform/graphics/FontOrientation.h: Added.
  23060. * platform/graphics/SimpleFontData.h:
  23061. * platform/graphics/cairo/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
  23062. (WebCore::FontCustomPlatformData::fontPlatformData):
  23063. * platform/graphics/cairo/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
  23064. * platform/graphics/cocoa/FontPlatformData.h: Added font orientation support to FontPlatformData class
  23065. (WebCore::FontPlatformData::FontPlatformData):
  23066. (WebCore::FontPlatformData::orientation):
  23067. (WebCore::FontPlatformData::hash):
  23068. (WebCore::FontPlatformData::operator==):
  23069. * platform/graphics/cocoa/FontPlatformDataCocoa.mm: Added font orientation support
  23070. (WebCore::FontPlatformData::FontPlatformData):
  23071. (WebCore::FontPlatformData::operator=):
  23072. (WebCore::FontPlatformData::allowsLigatures): Don't allow ligatures when the font is vertical orientation.
  23073. (WebCore::FontPlatformData::description):
  23074. * platform/graphics/gtk/FontCustomPlatformDataPango.cpp: Changed to pass font orientation to fontPlatformData()
  23075. (WebCore::FontCustomPlatformData::fontPlatformData):
  23076. * platform/graphics/haiku/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
  23077. (WebCore::FontCustomPlatformData::fontPlatformData):
  23078. * platform/graphics/haiku/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
  23079. * platform/graphics/mac/FontCacheMac.mm: Added font orientation parameter when creating FontPlatformData object.
  23080. (WebCore::FontCache::getFontDataForCharacters):
  23081. (WebCore::FontCache::createFontPlatformData):
  23082. * platform/graphics/mac/FontCustomPlatformData.cpp: Added font orientation parameter when creating FontPlatformData object.
  23083. (WebCore::FontCustomPlatformData::fontPlatformData):
  23084. * platform/graphics/mac/FontCustomPlatformData.h: Changed to pass font orientation parameter to fontPlatformData()
  23085. * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
  23086. (WebCore::GlyphPage::fill): Changed to use CoreText to extract glyphs when the current font is vertical orientation.
  23087. CoreText automatically swaps glyphs with vertical variants when the font orientation is vertical.
  23088. * platform/graphics/mac/SimpleFontDataCoreText.cpp: Added vertical form attribute to the attribute dictionary for a CTLine.
  23089. (WebCore::SimpleFontData::getCFStringAttributes):
  23090. * platform/graphics/mac/SimpleFontDataMac.mm:
  23091. (WebCore::SimpleFontData::platformBoundsForGlyph): Changed to use CoreText (from CG) to support vertical metrics.
  23092. (WebCore::SimpleFontData::platformWidthForGlyph): Made to use CoreText, instead of wkGetGlyphTransformedAdvances,
  23093. to get vertical metrics when the font orientation is vertical.
  23094. * platform/graphics/qt/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
  23095. * platform/graphics/qt/FontCustomPlatformDataQt.cpp: Changed to pass font orientation to fontPlatformData()
  23096. (WebCore::FontCustomPlatformData::fontPlatformData):
  23097. * platform/graphics/skia/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
  23098. (WebCore::FontCustomPlatformData::fontPlatformData):
  23099. * platform/graphics/skia/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
  23100. * platform/graphics/win/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
  23101. (WebCore::FontCustomPlatformData::fontPlatformData):
  23102. * platform/graphics/win/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
  23103. * platform/graphics/win/FontCustomPlatformDataCairo.cpp: Changed to pass font orientation to fontPlatformData()
  23104. (WebCore::FontCustomPlatformData::fontPlatformData):
  23105. * platform/graphics/win/FontCustomPlatformDataCairo.h: Changed to pass font orientation to fontPlatformData()
  23106. * platform/graphics/wince/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
  23107. (WebCore::FontCustomPlatformData::fontPlatformData):
  23108. * platform/graphics/wince/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
  23109. * platform/graphics/wx/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
  23110. (WebCore::FontCustomPlatformData::fontPlatformData):
  23111. * platform/graphics/wx/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
  23112. 2010-10-20 Nikolas Zimmermann <nzimmermann@rim.com>
  23113. Reviewed by Dirk Schulze.
  23114. Redesign SVGAnimatedProperty concept to share "POD type wrappers" between all bindings (-> add ObjC SVG bindings)
  23115. https://bugs.webkit.org/show_bug.cgi?id=47905
  23116. Tests: svg/dom/SVGLengthList-appendItem.xhtml
  23117. svg/dom/SVGLengthList-basics.xhtml
  23118. svg/dom/SVGLengthList-getItem.xhtml
  23119. svg/dom/SVGLengthList-initialize.xhtml
  23120. svg/dom/SVGLengthList-insertItemBefore.xhtml
  23121. svg/dom/SVGLengthList-removeItem.xhtml
  23122. svg/dom/SVGLengthList-replaceItem.xhtml
  23123. svg/dom/SVGLengthList-xml-dom-modifications.xhtml
  23124. Introduce a more lightweight, less intrusive way to expose SVGAnimated* DOM bindings.
  23125. Concrete example:
  23126. The SVG DOM defines a 'SVGAnimatedLength' object, that's used to represent the x / y / width / height attributes of a 'SVGRectElement'.
  23127. Each 'SVGAnimatedLength' object exposes a baseVal (markup defined attribute value) and an animVal (reflects the current state during animations),
  23128. both of type 'SVGLength'. These objects are all _live_. That means you can do:
  23129. var foobar = rect.x.baseVal; foobar.value += 150;
  23130. If we'd implement the SVG DOM straightforward, we'd have to store a refcounted SVGAnimatedLength object, containing two refcounted SVGLength objects
  23131. in SVGRectElement, for each of the x/y/width/height attributes. Our solution, to reduce memory footprint and increase performance is to store
  23132. SVGLength stack-allocated, non refcounted types in SVGRectElement for x/y/width/height, and don't implement the SVGAnimatedLength object at all.
  23133. In the past the JS bindings had to expose wrappers for SVGAnimatedLength on their own, and wrap each SVGLength object in an object called JSSVGPODTypeWrapper<SVGLength>.
  23134. When JS changed the 'value' of the 'SVGLength', we constructed a copy of the SVGLength object, modified it, and called rectElement->setXBaseValue(newLength).
  23135. This is not efficient at all, as we have to construct several copies of the SVGLength object, utilize callbacks to propagate the value changes in the SVG DOM.
  23136. Furthermore, all bindings had to expose a similar concept, otherwhise SVG DOM wouldn't work. Up until now, only JSC and V8 bindings were available, that worked properly.
  23137. The new SVGAnimatedProperty concept removes the need for JSSVGPODTypeWrapper (and friends like JSSVGContextCache, that associated a SVGLength with its SVGRectElement).
  23138. Instead a solution is offered, that all bindings can use simultaneously, without adding new types or special concepts like JSSVGPODTypeWrapper.
  23139. It works like this:
  23140. A new refcounted SVGAnimatedProperty<PropertyType> template class is available, that stores a QualifiedName to associate the SVG DOM property with a XML DOM attribute.
  23141. It also stores a RefPtr to the SVGElement that created it.
  23142. In SVGRectElement we still store SVGLength m_x/m_y/m_width/m_height members, and offer a new "xAnimated()" method which looks up or creates a SVGAnimatedProperty<SVGLength>
  23143. object. The JS/V8/ObjC bindings call this method whenever someone requests "rect.x/y/width/height", and a new wrapper is created, and stored in a HashMap.
  23144. The SVGAnimatedProperty<PropertyType> is a base class for SVGAnimatedPropertyTearOff and SVGAnimatedListPropertyTearOff, the latter is used for all types of lists (SVGLengthList).
  23145. SVGAnimatedProperty contains two methods used in the bindings: SVGProperty* baseVal and SVGProperty* animVal. SVGProperty is a base class for SVGPropertyTearOff and
  23146. SVGListPropertyTearOff. Upon invocation of the baseVal/animVal methods a new SVG(List)PropertyTearOff object is created and stored in a RefPtr.
  23147. The SVGPropertyTearOff objects stores a _reference_ to the type it wraps. Concrete example:
  23148. When calling rect.x, a SVGAnimatedPropertyTearOff<SVGLength> is created, that stores a pointer to the SVGRectElement, and a SVGNames::xAttr.
  23149. When calling rect.x.baseVal, a SVGPropertyTearOf<SVGLength> is created, that stores a reference to the "m_x" member variable of the SVGRectElement.
  23150. Any changes applied to the SVGLength object, through the wrapper, are immediately live, as no copies are involved anymore, nor the need to fire any callback methods.
  23151. This is the key concept of the new tear offs, no copies, no callbacks, no virtual methods (except one, needed for lists, but it's a detail).
  23152. The SVGAnimatedListPropertyTearOff and SVGListPropertyTearOff work the same, but for SVG*List objects. The whole SVG*List API is _removed_ from the SVG DOM classes
  23153. like SVGLengthList. It now inherits from Vector<SVGLength>, where it used to store a Vector<RefPtr<SVGListItem<SVGLength> > >. The SVGList API (insertItemBefore, appendItem, etc.)
  23154. is exposed through SVGListPropertyTearOff, and there's no need anymore for SVGLengthList to deal with it at all.
  23155. SVGLengthList is live just like most other SVG DOM object. Concrete example:
  23156. var item0 = text.x.baseVal.getItem(0); item0.value += 150;
  23157. Previously we chose to store a refcounted SVGListItem object, which wrapped the SVGLength object, to achieve liveness. We could change a single list item from DOM
  23158. w/o copying the whole list. The drawback is that a simple type likeSVGLengthList, was heavy to store, as it contained a list of RefPtrs around a wrapper object
  23159. around the real object 'SVGLength'. This complexity is completly gone.
  23160. The SVGListPropertyTearOff<SVGLengthList> stores a reference to the SVGLengthList object (eg. SVGTextElement::m_x) and maintains a list of SVGPropertyTearOff<SVGLength>
  23161. wrappers, that are created when necessary (getItem(2), will create a wrapper around the third list item), and cached. These SVGPropertyTearOff<SVGLength> objects
  23162. store references to the SVGLength object _in the SVGLengthList_. One has to be extra carefully, to keep those lists synchronized.
  23163. The SVGLengthList API is fully implemented for the first time, including moving items between lists, and is extensively tested with 8 new testcases.
  23164. This patch only changed SVGLength/SVGLengthList to the new concept. All other types remain using the old DeprecatedSVGAnimatedProperty* concept.
  23165. This will change in follow-up patches.
  23166. * GNUmakefile.am: Add new files from svg/properties to build.
  23167. * WebCore.gypi: Ditto.
  23168. * WebCore.pro: Ditto.
  23169. * WebCore.vcproj/WebCore.vcproj: Ditto.
  23170. * WebCore.xcodeproj/project.pbxproj: Ditto.
  23171. * bindings/js/JSSVGLengthCustom.cpp: Adapt to context cache removal for SVGLength.
  23172. (WebCore::JSSVGLength::value):
  23173. (WebCore::JSSVGLength::convertToSpecifiedUnits):
  23174. * bindings/scripts/CodeGenerator.pm: Add new isSVGNewStyleAnimatedProperty() helper method, return true for "SVGAnimatedLength" and "SVGAnimatedLengthList".
  23175. * bindings/scripts/CodeGeneratorJS.pm: Generate new style SVG JS bindings, that don't need JSSVGContextCache / JSSVGPODTypeWrapper.
  23176. * bindings/scripts/CodeGeneratorObjC.pm: Ditto. (+ Finally expose a working set of SVG DOM API for Objective C).
  23177. * bindings/scripts/CodeGeneratorV8.pm: Ditto.
  23178. * bindings/v8/custom/V8SVGLengthCustom.cpp: Adapt to context cache removal for SVGLength.
  23179. (WebCore::V8SVGLength::valueAccessorGetter):
  23180. (WebCore::V8SVGLength::convertToSpecifiedUnitsCallback):
  23181. * rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
  23182. (WebCore::extractFloatValuesFromSVGLengthList): SVGLengthList is a POD type now, passed as const reference.
  23183. * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove handling for SVGLength/SVGLengthList, those are converted to the new SVGAnimatedProperty design now.
  23184. * svg/DeprecatedSVGAnimatedTemplate.h: Ditto.
  23185. * svg/SVGAnimatedLength.h: Added.
  23186. * svg/SVGAnimatedLength.idl: Mark as [SVGAnimatedProperty].
  23187. * svg/SVGAnimatedLengthList.h: Added.
  23188. * svg/SVGAnimatedLengthList.idl: Mark as [SVGAnimatedProperty].
  23189. * svg/SVGCircleElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_PROPERTY_NEW/ until the transition to the new concept is finished.
  23190. * svg/SVGCursorElement.h: Ditto.
  23191. * svg/SVGEllipseElement.h: Ditto.
  23192. * svg/SVGFilterElement.h: Ditto.
  23193. * svg/SVGFilterPrimitiveStandardAttributes.h: Ditto.
  23194. * svg/SVGForeignObjectElement.h: Ditto.
  23195. * svg/SVGImageElement.h: Ditto.
  23196. * svg/SVGLength.idl: Mark as [SVGProperty].
  23197. * svg/SVGLengthList.cpp: Use Vector API (appendItem -> append). No need to ever use the SVGList API internally. SVGLengthList is a Vector<SVGLength> now.
  23198. (WebCore::SVGLengthList::parse):
  23199. (WebCore::SVGLengthList::valueAsString):
  23200. * svg/SVGLengthList.h: Inherit from Vector<SVGLength> - not from the SVGList base class. It's a simple, non-refcounted POD type now.
  23201. (WebCore::SVGLengthList::SVGLengthList):
  23202. * svg/SVGLengthList.idl: Mark as [SVGListProperty].
  23203. * svg/SVGLineElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_PROPERTY_NEW/ until the transition to the new concept is finished.
  23204. * svg/SVGLinearGradientElement.h: Ditto.
  23205. * svg/SVGMarkerElement.h: Ditto.
  23206. * svg/SVGMaskElement.h: Ditto.
  23207. * svg/SVGPatternElement.h: Ditto.
  23208. * svg/SVGRadialGradientElement.h: Ditto.
  23209. * svg/SVGRectElement.h: Ditto.
  23210. * svg/SVGSVGElement.h: Ditto.
  23211. * svg/SVGSVGElement.idl: Mark createSVGLength() as [SVGLiveProperty] - a wrapper for the returned object has to be created.
  23212. * svg/SVGTextContentElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_PROPERTY_NEW/ until the transition to the new concept is finished.
  23213. * svg/SVGTextPathElement.h: Ditto.
  23214. * svg/SVGTextPositioningElement.cpp:
  23215. (WebCore::SVGTextPositioningElement::SVGTextPositioningElement):
  23216. (WebCore::SVGTextPositioningElement::parseMappedAttribute): Detach wrappers pointing to the old x/y/dx/dy list, if the underlying list changes via XML DOM.
  23217. (WebCore::listContainsRelativeValue): Adapt to SVGLengthList interface changes, it's a POD type now.
  23218. * svg/SVGTextPositioningElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_LIST_PROPERTY_NEW/ until the transition to the new concept is finished.
  23219. * svg/SVGUseElement.h:
  23220. * svg/properties/SVGAnimatedListPropertyTearOff.h: Added.
  23221. * svg/properties/SVGAnimatedProperty.h: Added. This is the base class for SVGAnimatedPropertyTearOff and SVGAnimatedListPropertyTearOff.
  23222. * svg/properties/SVGAnimatedPropertyDescription.h: Added. Refactored from DeprecatedSVGAnimatedProperty.h.
  23223. * svg/properties/SVGAnimatedPropertyMacros.h: Added. These macros will be _removed_ as soon as the transition to the new concept is finished.
  23224. * svg/properties/SVGAnimatedPropertyTearOff.h: Added.
  23225. * svg/properties/SVGListPropertyTearOff.h: Added.
  23226. * svg/properties/SVGProperty.h: Added. This is the base class for SVGPropertyTearOff and SVGListPropertyTearOff.
  23227. * svg/properties/SVGPropertyTearOff.h: Added.
  23228. * svg/properties/SVGPropertyTraits.h: Added.
  23229. 2010-10-21 Alex Milowski <alex@milowski.com>
  23230. Reviewed by Kenneth Rohde Christiansen.
  23231. Changed the layout algorithm for rows to avoid unnecessary recursion
  23232. into child rows. This solves the long rendering time experienced in
  23233. https://bugs.webkit.org/show_bug.cgi?id=43462 as well as reports in
  23234. various other bugs. The change in the algorithm required some
  23235. tweaks to other rendering objects to make sure that the baseline
  23236. alignment still works.
  23237. In addition, an attempt was made to go through the various
  23238. rendering objects for MathML and reduce unnecessary calls that
  23239. mark the tree in need of layout.
  23240. * mathml/RenderMathMLFenced.cpp:
  23241. * mathml/RenderMathMLFenced.h:
  23242. * mathml/RenderMathMLFraction.cpp:
  23243. (WebCore::RenderMathMLFraction::layout):
  23244. * mathml/RenderMathMLOperator.cpp:
  23245. (WebCore::RenderMathMLOperator::stretchToHeight):
  23246. * mathml/RenderMathMLRoot.cpp:
  23247. (WebCore::RenderMathMLRoot::layout):
  23248. * mathml/RenderMathMLRow.cpp:
  23249. (WebCore::RenderMathMLRow::layout):
  23250. * mathml/RenderMathMLRow.h:
  23251. (WebCore::RenderMathMLRow::stretchToHeight):
  23252. * mathml/RenderMathMLSubSup.cpp:
  23253. (WebCore::RenderMathMLSubSup::addChild):
  23254. (WebCore::RenderMathMLSubSup::stretchToHeight):
  23255. (WebCore::RenderMathMLSubSup::nonOperatorHeight):
  23256. (WebCore::RenderMathMLSubSup::layout):
  23257. (WebCore::RenderMathMLSubSup::baselinePosition):
  23258. * mathml/RenderMathMLUnderOver.cpp:
  23259. (WebCore::RenderMathMLUnderOver::stretchToHeight):
  23260. (WebCore::RenderMathMLUnderOver::layout):
  23261. (WebCore::RenderMathMLUnderOver::nonOperatorHeight):
  23262. * mathml/mathtags.in:
  23263. 2010-10-21 Evan Martin <evan@chromium.org>
  23264. Reviewed by Tony Chang.
  23265. sqlite: show extended error codes in error logs
  23266. https://bugs.webkit.org/show_bug.cgi?id=47859
  23267. SQLite can provide "extended" error codes, where extra information
  23268. about the error is potentially encoded in the high bits of the error
  23269. code. It's only off by default in case older apps rely on equality
  23270. testing on the older error codes, which WebKit doesn't do.
  23271. * platform/sql/SQLiteDatabase.cpp:
  23272. (WebCore::SQLiteDatabase::open):
  23273. * platform/sql/SQLiteStatement.cpp:
  23274. (WebCore::SQLiteStatement::step):
  23275. 2010-10-21 Yuta Kitamura <yutak@chromium.org>
  23276. Reviewed by Yury Semikhatsky.
  23277. Web Inspector: Handle WebSocket events via InspectorInstrumentation
  23278. https://bugs.webkit.org/show_bug.cgi?id=47968
  23279. * inspector/InspectorInstrumentation.cpp:
  23280. (WebCore::InspectorInstrumentation::didCreateWebSocketImpl):
  23281. (WebCore::InspectorInstrumentation::willSendWebSocketHandshakeRequestImpl):
  23282. (WebCore::InspectorInstrumentation::didReceiveWebSocketHandshakeResponseImpl):
  23283. (WebCore::InspectorInstrumentation::didCloseWebSocketImpl):
  23284. * inspector/InspectorInstrumentation.h:
  23285. (WebCore::InspectorInstrumentation::didCreateWebSocket):
  23286. (WebCore::InspectorInstrumentation::willSendWebSocketHandshakeRequest):
  23287. (WebCore::InspectorInstrumentation::didReceiveWebSocketHandshakeResponse):
  23288. (WebCore::InspectorInstrumentation::didCloseWebSocket):
  23289. * websockets/WebSocketChannel.cpp:
  23290. (WebCore::WebSocketChannel::WebSocketChannel):
  23291. Now we do not depend on InspectorController to generate a resource identifier.
  23292. (WebCore::WebSocketChannel::disconnect):
  23293. Check if m_identifier is valid in case we could not obtain an identifier.
  23294. (WebCore::WebSocketChannel::didOpen):
  23295. (WebCore::WebSocketChannel::didClose):
  23296. (WebCore::WebSocketChannel::processBuffer):
  23297. * websockets/WebSocketChannel.h:
  23298. 2010-10-20 Pavel Feldman <pfeldman@chromium.org>
  23299. Reviewed by Yury Semikhatsky.
  23300. Web Inspector: Convert sidebar into the browsing tree in the Storage panel.
  23301. https://bugs.webkit.org/show_bug.cgi?id=47988
  23302. * English.lproj/localizedStrings.js:
  23303. * inspector/front-end/ApplicationCacheItemsView.js:
  23304. (WebInspector.ApplicationCacheItemsView):
  23305. * inspector/front-end/ConsoleView.js:
  23306. (WebInspector.ConsoleMessage.prototype._formatMessage):
  23307. * inspector/front-end/CookieItemsView.js:
  23308. (WebInspector.CookieItemsView):
  23309. * inspector/front-end/DatabaseTableView.js:
  23310. (WebInspector.DatabaseTableView.prototype._queryFinished):
  23311. * inspector/front-end/StoragePanel.js:
  23312. (WebInspector.StoragePanel):
  23313. (WebInspector.StoragePanel.prototype.reset):
  23314. (WebInspector.StoragePanel.prototype.addDatabase):
  23315. (WebInspector.StoragePanel.prototype.addCookieDomain):
  23316. (WebInspector.StoragePanel.prototype.addDOMStorage):
  23317. (WebInspector.StoragePanel.prototype.addApplicationCache):
  23318. (WebInspector.StoragePanel.prototype.showDatabase):
  23319. (WebInspector.StoragePanel.prototype.showDOMStorage):
  23320. (WebInspector.StoragePanel.prototype.showCookies):
  23321. (WebInspector.StoragePanel.prototype.showApplicationCache):
  23322. (WebInspector.StoragePanel.prototype.showCategoryView):
  23323. (WebInspector.StoragePanel.prototype._innerShowView):
  23324. (WebInspector.BaseStorageTreeElement):
  23325. (WebInspector.BaseStorageTreeElement.prototype.onattach):
  23326. (WebInspector.StorageCategoryTreeElement):
  23327. (WebInspector.StorageCategoryTreeElement.prototype.onselect):
  23328. (WebInspector.DatabaseTreeElement):
  23329. (WebInspector.DatabaseTreeElement.prototype.onselect):
  23330. (WebInspector.DatabaseTreeElement.prototype.onpopulate.tableNamesCallback):
  23331. (WebInspector.DatabaseTreeElement.prototype.onpopulate):
  23332. (WebInspector.DatabaseTableTreeElement):
  23333. (WebInspector.DatabaseTableTreeElement.prototype.onselect):
  23334. (WebInspector.DOMStorageTreeElement):
  23335. (WebInspector.DOMStorageTreeElement.prototype.onselect):
  23336. (WebInspector.CookieTreeElement):
  23337. (WebInspector.CookieTreeElement.prototype.onselect):
  23338. (WebInspector.ApplicationCacheTreeElement):
  23339. (WebInspector.ApplicationCacheTreeElement.prototype.onselect):
  23340. (WebInspector.StorageCategoryView):
  23341. (WebInspector.StorageCategoryView.prototype.setText):
  23342. * inspector/front-end/inspector.css:
  23343. (.properties-tree ol):
  23344. (.properties-tree ol.expanded):
  23345. (.database-storage-tree-item .icon):
  23346. (.database-table-storage-tree-item .icon):
  23347. (.domstorage-storage-tree-item.local-storage .icon):
  23348. (.domstorage-storage-tree-item.session-storage .icon):
  23349. (.cookie-storage-tree-item .icon):
  23350. (.application-cache-storage-tree-item .icon):
  23351. (.storage.panel .sidebar):
  23352. (.storage.panel .outline-disclosure > ol):
  23353. (.storage.panel .outline-disclosure li):
  23354. (.storage.panel .outline-disclosure li .selection):
  23355. (.storage.panel .sidebar-resizer-vertical):
  23356. (.storage-base-tree-element-title):
  23357. (.storage.panel .outline-disclosure ol):
  23358. (.storage.panel .outline-disclosure li.selected):
  23359. (.storage.panel .outline-disclosure .icon):
  23360. (.storage-empty-view, .storage-view.table .storage-table-error):
  23361. 2010-10-21 Carlos Garcia Campos <cgarcia@igalia.com>
  23362. Reviewed by Martin Robinson.
  23363. [GTK] Replace encodings multi-dimensional array with calls to registrar method
  23364. https://bugs.webkit.org/show_bug.cgi?id=47990
  23365. * platform/text/gtk/TextCodecGtk.cpp:
  23366. (WebCore::isEncodingAvailable):
  23367. (WebCore::registerEncodingNameIfAvailable):
  23368. (WebCore::registerEncodingAliasIfAvailable):
  23369. (WebCore::registerCodecIfAvailable):
  23370. (WebCore::TextCodecGtk::registerBaseEncodingNames):
  23371. (WebCore::TextCodecGtk::registerBaseCodecs):
  23372. (WebCore::TextCodecGtk::registerExtendedEncodingNames):
  23373. (WebCore::TextCodecGtk::registerExtendedCodecs):
  23374. (WebCore::TextCodecGtk::createIConvDecoder):
  23375. (WebCore::TextCodecGtk::createIConvEncoder):
  23376. * platform/text/gtk/TextCodecGtk.h:
  23377. 2010-10-20 Sheriff Bot <webkit.review.bot@gmail.com>
  23378. Unreviewed, rolling out r70040.
  23379. http://trac.webkit.org/changeset/70040
  23380. https://bugs.webkit.org/show_bug.cgi?id=48042
  23381. "Reverting a performance regression detected by page_cycler"
  23382. (Requested by hayato on #webkit).
  23383. * css/CSSStyleSelector.cpp:
  23384. (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
  23385. (WebCore::CSSStyleSelector::checkSelector):
  23386. * css/CSSStyleSelector.h:
  23387. 2010-10-19 Simon Fraser <simon.fraser@apple.com>
  23388. Reviewed by Gavin Barraclough.
  23389. https://bugs.webkit.org/show_bug.cgi?id=47851
  23390. Avoid buffer overflows in CSSPrimitiveValue's use of
  23391. DecimalNumber, and pass the buffer size in InspectorBasicValue.
  23392. Test: fast/css/large-value-csstext.html
  23393. * css/CSSPrimitiveValue.cpp:
  23394. (WebCore::formatNumber):
  23395. * inspector/InspectorValues.cpp:
  23396. (WebCore::InspectorBasicValue::writeJSON):
  23397. 2010-10-20 Dumitru Daniliuc <dumi@chromium.org>
  23398. Reviewed by David Levin.
  23399. Add SecurityOrigin::threadsafeCopy() to the list of exported symbols.
  23400. https://bugs.webkit.org/show_bug.cgi?id=40655
  23401. * WebCore.exp.in:
  23402. 2010-10-20 Sheriff Bot <webkit.review.bot@gmail.com>
  23403. Unreviewed, rolling out r70165.
  23404. http://trac.webkit.org/changeset/70165
  23405. https://bugs.webkit.org/show_bug.cgi?id=48007
  23406. It broke tests on Qt bot (Requested by Ossy on #webkit).
  23407. * ForwardingHeaders/wtf/text/TextPosition.h: Removed.
  23408. * bindings/js/ScriptSourceCode.h:
  23409. (WebCore::ScriptSourceCode::ScriptSourceCode):
  23410. * bindings/v8/ScheduledAction.cpp:
  23411. (WebCore::ScheduledAction::ScheduledAction):
  23412. * bindings/v8/ScriptController.cpp:
  23413. (WebCore::ScriptController::eventHandlerLineNumber):
  23414. (WebCore::ScriptController::eventHandlerColumnNumber):
  23415. * bindings/v8/ScriptController.h:
  23416. * bindings/v8/ScriptEventListener.cpp:
  23417. (WebCore::createAttributeEventListener):
  23418. * bindings/v8/ScriptSourceCode.h:
  23419. (WebCore::ScriptSourceCode::ScriptSourceCode):
  23420. (WebCore::ScriptSourceCode::startLine):
  23421. * bindings/v8/V8LazyEventListener.cpp:
  23422. (WebCore::V8LazyEventListener::V8LazyEventListener):
  23423. (WebCore::V8LazyEventListener::prepareListenerObject):
  23424. * bindings/v8/V8LazyEventListener.h:
  23425. (WebCore::V8LazyEventListener::create):
  23426. * bindings/v8/V8Proxy.cpp:
  23427. (WebCore::V8Proxy::compileScript):
  23428. (WebCore::V8Proxy::evaluate):
  23429. (WebCore::V8Proxy::runScript):
  23430. * bindings/v8/V8Proxy.h:
  23431. * bindings/v8/WorkerContextExecutionProxy.cpp:
  23432. (WebCore::WorkerContextExecutionProxy::evaluate):
  23433. (WebCore::WorkerContextExecutionProxy::runScript):
  23434. * bindings/v8/WorkerContextExecutionProxy.h:
  23435. * bindings/v8/WorkerScriptController.cpp:
  23436. (WebCore::WorkerScriptController::evaluate):
  23437. * dom/PendingScript.cpp:
  23438. (WebCore::PendingScript::releaseElementAndClear):
  23439. * dom/PendingScript.h:
  23440. (WebCore::PendingScript::PendingScript):
  23441. (WebCore::PendingScript::operator=):
  23442. (WebCore::PendingScript::startingLineNumber):
  23443. * dom/ScriptableDocumentParser.h:
  23444. * dom/XMLDocumentParser.h:
  23445. * dom/XMLDocumentParserLibxml2.cpp:
  23446. (WebCore::XMLDocumentParser::XMLDocumentParser):
  23447. (WebCore::XMLDocumentParser::startElementNs):
  23448. (WebCore::XMLDocumentParser::endElementNs):
  23449. (WebCore::XMLDocumentParser::lineNumber):
  23450. (WebCore::XMLDocumentParser::columnNumber):
  23451. * dom/XMLDocumentParserQt.cpp:
  23452. (WebCore::XMLDocumentParser::XMLDocumentParser):
  23453. (WebCore::XMLDocumentParser::parseStartElement):
  23454. (WebCore::XMLDocumentParser::parseEndElement):
  23455. * html/parser/HTMLDocumentParser.cpp:
  23456. (WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder):
  23457. (WebCore::HTMLDocumentParser::columnNumber):
  23458. * html/parser/HTMLDocumentParser.h:
  23459. * html/parser/HTMLScriptRunner.cpp:
  23460. (WebCore::HTMLScriptRunner::sourceFromPendingScript):
  23461. (WebCore::HTMLScriptRunner::execute):
  23462. (WebCore::HTMLScriptRunner::runScript):
  23463. * html/parser/HTMLScriptRunner.h:
  23464. * html/parser/HTMLTreeBuilder.cpp:
  23465. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  23466. (WebCore::HTMLTreeBuilder::takeScriptToProcess):
  23467. (WebCore::HTMLTreeBuilder::processEndTag):
  23468. (WebCore::HTMLTreeBuilder::processScriptStartTag):
  23469. * html/parser/HTMLTreeBuilder.h:
  23470. 2010-10-20 David Hyatt <hyatt@apple.com>
  23471. Reviewed by Dan Bernstein.
  23472. https://bugs.webkit.org/show_bug.cgi?id=48001
  23473. Make boxes place themselves properly in the block direction. Get basic painting working for spans and add a test that
  23474. verifies that span painting and replaced element painting (like images) works correctly.
  23475. Added fast/blockflow/basic-vertical-line.html
  23476. * rendering/InlineBox.cpp:
  23477. (WebCore::InlineBox::logicalHeight):
  23478. * rendering/InlineFlowBox.cpp:
  23479. (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
  23480. (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
  23481. (WebCore::verticalPositionForBox):
  23482. (WebCore::InlineFlowBox::computeLogicalBoxHeights):
  23483. (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
  23484. (WebCore::InlineFlowBox::flipLinesInBlockDirection):
  23485. (WebCore::InlineFlowBox::paintBoxDecorations):
  23486. (WebCore::InlineFlowBox::paintMask):
  23487. * rendering/InlineFlowBox.h:
  23488. * rendering/style/RenderStyle.h:
  23489. (WebCore::InheritedFlags::isFlippedLinesWritingMode):
  23490. 2010-10-20 Beth Dakin <bdakin@apple.com>
  23491. Reviewed by Dave Hyatt.
  23492. Fix for https://bugs.webkit.org/show_bug.cgi?id=47514 CSS
  23493. transforms should affect scrolling
  23494. This patch causes topmostPosition, lowestPosition,
  23495. leftmostPosition, and rightmostPosition to take transforms into
  23496. account.
  23497. Compute the topmost/lowest/leftmost/rightmost position without
  23498. factoring in the block's transform until the end.
  23499. * rendering/RenderBlock.cpp:
  23500. (WebCore::RenderBlock::topmostPosition):
  23501. (WebCore::RenderBlock::lowestPosition):
  23502. (WebCore::RenderBlock::rightmostPosition):
  23503. (WebCore::RenderBlock::leftmostPosition):
  23504. * rendering/RenderBlock.h:
  23505. transformedFrameRect() returns the frameRect() transformed to the
  23506. layer's transform. applyLayerTransformToRect() does the same thing
  23507. for the input rect.
  23508. * rendering/RenderBox.cpp:
  23509. (WebCore::RenderBox::applyLayerTransformToRect):
  23510. (WebCore::RenderBox::transformedFrameRect):
  23511. (WebCore::RenderBox::topmostPosition):
  23512. (WebCore::RenderBox::lowestPosition):
  23513. (WebCore::RenderBox::rightmostPosition):
  23514. (WebCore::RenderBox::leftmostPosition):
  23515. * rendering/RenderBox.h:
  23516. * rendering/RenderMedia.cpp:
  23517. (WebCore::RenderMedia::topmostPosition):
  23518. (WebCore::RenderMedia::lowestPosition):
  23519. (WebCore::RenderMedia::rightmostPosition):
  23520. (WebCore::RenderMedia::leftmostPosition):
  23521. * rendering/RenderMedia.h:
  23522. * rendering/RenderTableSection.cpp:
  23523. (WebCore::RenderTableSection::topmostPosition):
  23524. (WebCore::RenderTableSection::lowestPosition):
  23525. (WebCore::RenderTableSection::rightmostPosition):
  23526. (WebCore::RenderTableSection::leftmostPosition):
  23527. * rendering/RenderTableSection.h:
  23528. 2010-10-20 Nikolas Zimmermann <nzimmermann@rim.com>
  23529. Not reviewed.
  23530. Rename SVGAnimatedProperty* -> DeprecatedSVGAnimatedProperty*
  23531. https://bugs.webkit.org/show_bug.cgi?id=47973
  23532. Copy headers from svg/properties, otherwhise builds from scratch on win are broken.
  23533. * WebCore.vcproj/copyForwardingHeaders.cmd:
  23534. 2010-10-20 Peter Rybin <peter.rybin@gmail.com>
  23535. Reviewed by Adam Barth.
  23536. HTML parser should provide script column position within HTML document to JavaScript engine
  23537. https://bugs.webkit.org/show_bug.cgi?id=45271
  23538. Replaces line number with TextPosition struct so that script engine
  23539. gets script starting line/column.
  23540. * ForwardingHeaders/wtf/text/TextPosition.h: Added.
  23541. * bindings/js/ScriptSourceCode.h:
  23542. (WebCore::ScriptSourceCode::ScriptSourceCode):
  23543. * bindings/v8/ScheduledAction.cpp:
  23544. (WebCore::ScheduledAction::ScheduledAction):
  23545. * bindings/v8/ScriptController.cpp:
  23546. (WebCore::ScriptController::eventHandlerPosition):
  23547. * bindings/v8/ScriptController.h:
  23548. * bindings/v8/ScriptEventListener.cpp:
  23549. (WebCore::createAttributeEventListener):
  23550. * bindings/v8/ScriptSourceCode.h:
  23551. (WebCore::ScriptSourceCode::ScriptSourceCode):
  23552. (WebCore::ScriptSourceCode::startLine):
  23553. (WebCore::ScriptSourceCode::startPosition):
  23554. * bindings/v8/V8LazyEventListener.cpp:
  23555. (WebCore::V8LazyEventListener::V8LazyEventListener):
  23556. (WebCore::V8LazyEventListener::prepareListenerObject):
  23557. * bindings/v8/V8LazyEventListener.h:
  23558. (WebCore::V8LazyEventListener::create):
  23559. * bindings/v8/V8Proxy.cpp:
  23560. (WebCore::V8Proxy::compileScript):
  23561. (WebCore::V8Proxy::evaluate):
  23562. (WebCore::V8Proxy::runScript):
  23563. * bindings/v8/V8Proxy.h:
  23564. * bindings/v8/WorkerContextExecutionProxy.cpp:
  23565. (WebCore::WorkerContextExecutionProxy::evaluate):
  23566. (WebCore::WorkerContextExecutionProxy::runScript):
  23567. * bindings/v8/WorkerContextExecutionProxy.h:
  23568. * bindings/v8/WorkerScriptController.cpp:
  23569. (WebCore::WorkerScriptController::evaluate):
  23570. * dom/PendingScript.cpp:
  23571. (WebCore::PendingScript::releaseElementAndClear):
  23572. * dom/PendingScript.h:
  23573. (WebCore::PendingScript::PendingScript):
  23574. (WebCore::PendingScript::operator=):
  23575. (WebCore::PendingScript::startingPosition):
  23576. * dom/ScriptableDocumentParser.h:
  23577. * dom/XMLDocumentParser.h:
  23578. * dom/XMLDocumentParserLibxml2.cpp:
  23579. (WebCore::XMLDocumentParser::XMLDocumentParser):
  23580. (WebCore::XMLDocumentParser::startElementNs):
  23581. (WebCore::XMLDocumentParser::endElementNs):
  23582. (WebCore::XMLDocumentParser::lineNumber):
  23583. (WebCore::XMLDocumentParser::columnNumber):
  23584. (WebCore::XMLDocumentParser::textPosition):
  23585. (WebCore::XMLDocumentParser::textPositionOneBased):
  23586. * dom/XMLDocumentParserQt.cpp:
  23587. (WebCore::XMLDocumentParser::XMLDocumentParser):
  23588. (WebCore::XMLDocumentParser::textPosition):
  23589. (WebCore::XMLDocumentParser::parseStartElement):
  23590. (WebCore::XMLDocumentParser::parseEndElement):
  23591. * html/parser/HTMLDocumentParser.cpp:
  23592. (WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder):
  23593. (WebCore::HTMLDocumentParser::textPosition):
  23594. * html/parser/HTMLDocumentParser.h:
  23595. * html/parser/HTMLScriptRunner.cpp:
  23596. (WebCore::HTMLScriptRunner::sourceFromPendingScript):
  23597. (WebCore::HTMLScriptRunner::execute):
  23598. (WebCore::HTMLScriptRunner::runScript):
  23599. * html/parser/HTMLScriptRunner.h:
  23600. * html/parser/HTMLTreeBuilder.cpp:
  23601. (WebCore::uninitializedPositionValue1):
  23602. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  23603. (WebCore::HTMLTreeBuilder::takeScriptToProcess):
  23604. (WebCore::HTMLTreeBuilder::processEndTag):
  23605. (WebCore::HTMLTreeBuilder::processScriptStartTag):
  23606. * html/parser/HTMLTreeBuilder.h:
  23607. 2010-10-20 David Hyatt <hyatt@apple.com>
  23608. Reviewed by Simon Fraser.
  23609. https://bugs.webkit.org/show_bug.cgi?id=47994
  23610. Make computeBlockDirectionPositionsForLine writing-mode-aware. None of the functions it calls are patched yet.
  23611. * rendering/RenderBlockLineLayout.cpp:
  23612. (WebCore::RenderBlock::computeBlockDirectionPositionsForLine):
  23613. 2010-10-20 John Abd-El-Malek <jam@chromium.org>
  23614. Reviewed by Darin Fisher.
  23615. [chromium] Fix crash when mousing over scrollview
  23616. https://bugs.webkit.org/show_bug.cgi?id=47956
  23617. Test: plugins/mouse-move-over-plugin-in-frame.html
  23618. * platform/Widget.h:
  23619. (WebCore::Widget::isPluginContainer):
  23620. 2010-10-20 Sheriff Bot <webkit.review.bot@gmail.com>
  23621. Unreviewed, rolling out r70149.
  23622. http://trac.webkit.org/changeset/70149
  23623. https://bugs.webkit.org/show_bug.cgi?id=47989
  23624. "Build breaks in mac and win" (Requested by satish on
  23625. #webkit).
  23626. * dom/Element.cpp:
  23627. (WebCore::Element::computeInheritedLanguage):
  23628. * page/SpeechInput.cpp:
  23629. (WebCore::SpeechInput::startRecognition):
  23630. * page/SpeechInput.h:
  23631. * page/SpeechInputClient.h:
  23632. * platform/mock/SpeechInputClientMock.cpp:
  23633. (WebCore::SpeechInputClientMock::startRecognition):
  23634. (WebCore::SpeechInputClientMock::setRecognitionResult):
  23635. (WebCore::SpeechInputClientMock::timerFired):
  23636. * platform/mock/SpeechInputClientMock.h:
  23637. * rendering/TextControlInnerElements.cpp:
  23638. (WebCore::TextControlInnerElement::attachInnerElement):
  23639. (WebCore::SearchFieldCancelButtonElement::detach):
  23640. (WebCore::SpinButtonElement::defaultEventHandler):
  23641. (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
  23642. (WebCore::InputFieldSpeechButtonElement::detach):
  23643. 2010-10-20 Leandro Gracia Gil <leandrogracia@google.com>
  23644. Reviewed by Jeremy Orlow.
  23645. Patch the current speech input implementation to use and validate the
  23646. nearest language tag. The language is now passed to the startRecognition
  23647. methods so that language-specific recognition could be used. Also added
  23648. a second parameter to setMockSpeechInputResult for the language used in
  23649. speech recognition.
  23650. https://bugs.webkit.org/show_bug.cgi?id=47089
  23651. This is the 2nd of a 4-sided patch in Chromium and WebKit. For more
  23652. details see http://codereview.chromium.org/3615005/show and
  23653. http://codereview.chromium.org/3595018/show.
  23654. Test: fast/speech/input-text-language-tag.html
  23655. * dom/Element.cpp:
  23656. (WebCore::Element::computeInheritedLanguage): includes a brief character
  23657. validation for the BCP 47 language tag.
  23658. * page/SpeechInput.cpp:
  23659. (WebCore::SpeechInput::startRecognition):
  23660. * page/SpeechInput.h:
  23661. * page/SpeechInputClient.h:
  23662. * platform/mock/SpeechInputClientMock.cpp:
  23663. (WebCore::SpeechInputClientMock::startRecognition):
  23664. (WebCore::SpeechInputClientMock::setRecognitionResult): results are now
  23665. stored by language using a hash map.
  23666. (WebCore::SpeechInputClientMock::timerFired):
  23667. * platform/mock/SpeechInputClientMock.h:
  23668. * rendering/TextControlInnerElements.cpp:
  23669. (WebCore::TextControlInnerElement::attachInnerElement):
  23670. (WebCore::SearchFieldCancelButtonElement::detach):
  23671. (WebCore::SpinButtonElement::defaultEventHandler):
  23672. (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
  23673. (WebCore::InputFieldSpeechButtonElement::detach):
  23674. 2010-10-20 Dirk Schulze <krit@webkit.org>
  23675. Reviewed by Nikolas Zimmermann.
  23676. Merge ColorSpace and ImageColorSpace enums
  23677. https://bugs.webkit.org/show_bug.cgi?id=47922
  23678. Merging these two enums makes it easier to implement color-interpolation as well as
  23679. color-interpolation-filter for SVG.
  23680. Added ColorSpaceLinearRGB to the ColorSpace enum and changed ImageColorSpace to ColorSpace in all related
  23681. files. Renamed enum entries DeviceColorSpace and sRGBColorSpace to ColorSpaceDeviceRGB and ColorSpaceSRGB
  23682. to follow webkit style rules.
  23683. Removed gray scale support in ImageBuffer since it is not used anymore on WebKit.
  23684. * css/CSSPrimitiveValueMappings.h:
  23685. (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
  23686. (WebCore::CSSPrimitiveValue::operator ColorSpace):
  23687. * css/CSSStyleSelector.cpp:
  23688. (WebCore::CSSStyleSelector::applyProperty):
  23689. * editing/SelectionController.cpp:
  23690. (WebCore::SelectionController::paintCaret):
  23691. * html/HTMLCanvasElement.cpp:
  23692. (WebCore::HTMLCanvasElement::paint):
  23693. * html/canvas/CanvasRenderingContext2D.cpp:
  23694. (WebCore::CanvasRenderingContext2D::setAllAttributesToDefault):
  23695. (WebCore::CanvasRenderingContext2D::setShadow):
  23696. (WebCore::CanvasRenderingContext2D::applyShadow):
  23697. (WebCore::CanvasRenderingContext2D::drawImage):
  23698. (WebCore::CanvasRenderingContext2D::drawImageFromRect):
  23699. (WebCore::CanvasRenderingContext2D::drawTextInternal):
  23700. * html/canvas/CanvasStyle.cpp:
  23701. (WebCore::CanvasStyle::applyStrokeColor):
  23702. (WebCore::CanvasStyle::applyFillColor):
  23703. * inspector/InspectorController.cpp:
  23704. (WebCore::drawOutlinedQuad):
  23705. (WebCore::InspectorController::drawElementTitle):
  23706. * mathml/RenderMathMLBlock.cpp:
  23707. (WebCore::RenderMathMLBlock::paint):
  23708. * mathml/RenderMathMLFraction.cpp:
  23709. (WebCore::RenderMathMLFraction::paint):
  23710. * mathml/RenderMathMLRoot.cpp:
  23711. (WebCore::RenderMathMLRoot::paint):
  23712. * mathml/RenderMathMLSquareRoot.cpp:
  23713. (WebCore::RenderMathMLSquareRoot::paint):
  23714. * page/FrameView.cpp:
  23715. (WebCore::FrameView::paintContents):
  23716. * page/PrintContext.cpp:
  23717. (WebCore::PrintContext::spoolAllPagesWithBoundaries):
  23718. * platform/ScrollView.cpp:
  23719. (WebCore::ScrollView::wheelEvent):
  23720. * platform/ScrollbarTheme.h:
  23721. (WebCore::ScrollbarTheme::paintScrollCorner):
  23722. * platform/ScrollbarThemeComposite.cpp:
  23723. (WebCore::ScrollbarThemeComposite::paintScrollCorner):
  23724. * platform/chromium/PopupMenuChromium.cpp:
  23725. (WebCore::PopupContainer::paintBorder):
  23726. (WebCore::PopupListBox::paint):
  23727. (WebCore::PopupListBox::paintRow):
  23728. * platform/chromium/ScrollbarThemeChromium.cpp:
  23729. (WebCore::ScrollbarThemeChromium::paintTickmarks):
  23730. * platform/chromium/ScrollbarThemeChromiumMac.mm:
  23731. (WebCore::ScrollbarThemeChromiumMac::paint):
  23732. * platform/graphics/ColorSpace.h:
  23733. * platform/graphics/GraphicsContext.cpp:
  23734. (WebCore::GraphicsContext::setStrokePattern):
  23735. (WebCore::GraphicsContext::setFillPattern):
  23736. (WebCore::GraphicsContext::setStrokeGradient):
  23737. (WebCore::GraphicsContext::setFillGradient):
  23738. * platform/graphics/GraphicsContextPrivate.h:
  23739. (WebCore::GraphicsContextState::GraphicsContextState):
  23740. * platform/graphics/ImageBuffer.cpp:
  23741. (WebCore::ImageBuffer::transformColorSpace):
  23742. * platform/graphics/ImageBuffer.h:
  23743. (WebCore::ImageBuffer::create):
  23744. * platform/graphics/cairo/ImageBufferCairo.cpp:
  23745. (WebCore::ImageBuffer::ImageBuffer):
  23746. * platform/graphics/cg/ColorCG.cpp:
  23747. (WebCore::cachedCGColorSpace):
  23748. (WebCore::cachedCGColor):
  23749. * platform/graphics/cg/GraphicsContextCG.cpp:
  23750. (WebCore::linearRGBColorSpaceRef):
  23751. * platform/graphics/cg/GraphicsContextCG.h:
  23752. * platform/graphics/cg/ImageBufferCG.cpp:
  23753. (WebCore::ImageBuffer::ImageBuffer):
  23754. (WebCore::cgImage):
  23755. (WebCore::ImageBuffer::draw):
  23756. * platform/graphics/cg/ImageBufferData.h:
  23757. * platform/graphics/cg/ImageCG.cpp:
  23758. (WebCore::imageWithColorSpace):
  23759. * platform/graphics/chromium/GLES2Canvas.cpp:
  23760. (WebCore::GLES2Canvas::clearRect):
  23761. (WebCore::GLES2Canvas::fillRect):
  23762. * platform/graphics/chromium/TransparencyWin.cpp:
  23763. (WebCore::TransparencyWin::setupLayerForWhiteLayer):
  23764. * platform/graphics/filters/FEColorMatrix.cpp:
  23765. (WebCore::FEColorMatrix::apply):
  23766. * platform/graphics/filters/FEComposite.cpp:
  23767. (WebCore::FEComposite::apply):
  23768. * platform/graphics/filters/FEFlood.cpp:
  23769. (WebCore::FEFlood::apply):
  23770. * platform/graphics/filters/FEMerge.cpp:
  23771. (WebCore::FEMerge::apply):
  23772. * platform/graphics/filters/FEOffset.cpp:
  23773. (WebCore::FEOffset::apply):
  23774. * platform/graphics/filters/FETile.cpp:
  23775. (WebCore::FETile::apply):
  23776. * platform/graphics/filters/FilterEffect.cpp:
  23777. (WebCore::FilterEffect::effectContext):
  23778. * platform/graphics/filters/SourceAlpha.cpp:
  23779. (WebCore::SourceAlpha::apply):
  23780. * platform/graphics/filters/SourceGraphic.cpp:
  23781. (WebCore::SourceGraphic::apply):
  23782. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  23783. (WebCore::MediaPlayerPrivateGStreamer::paint):
  23784. * platform/graphics/gtk/FontGtk.cpp:
  23785. (WebCore::Font::drawComplexText):
  23786. * platform/graphics/mac/GraphicsContextMac.mm:
  23787. (WebCore::GraphicsContext::drawFocusRing):
  23788. * platform/graphics/mac/GraphicsLayerCA.mm:
  23789. (WebCore::setLayerBorderColor):
  23790. (WebCore::setLayerBackgroundColor):
  23791. * platform/graphics/qt/GraphicsContextQt.cpp:
  23792. (WebCore::GraphicsContext::GraphicsContext):
  23793. * platform/graphics/qt/ImageBufferQt.cpp:
  23794. (WebCore::ImageBuffer::ImageBuffer):
  23795. (WebCore::ImageBuffer::draw):
  23796. * platform/graphics/skia/ImageBufferSkia.cpp:
  23797. (WebCore::ImageBuffer::ImageBuffer):
  23798. * platform/graphics/skia/PlatformContextSkia.cpp:
  23799. (WebCore::PlatformContextSkia::uploadSoftwareToHardware):
  23800. * platform/graphics/win/FontCGWin.cpp:
  23801. (WebCore::Font::drawGlyphs):
  23802. * platform/graphics/win/GraphicsContextCGWin.cpp:
  23803. (WebCore::GraphicsContext::GraphicsContext):
  23804. (WebCore::GraphicsContext::drawFocusRing):
  23805. * platform/graphics/win/GraphicsLayerCACF.cpp:
  23806. (WebCore::setLayerBorderColor):
  23807. (WebCore::setLayerBackgroundColor):
  23808. * platform/graphics/win/ImageCGWin.cpp:
  23809. (WebCore::BitmapImage::getHBITMAPOfSize):
  23810. * platform/graphics/win/ImageCairoWin.cpp:
  23811. (WebCore::BitmapImage::getHBITMAPOfSize):
  23812. (WebCore::BitmapImage::drawFrameMatchingSourceSize):
  23813. * platform/graphics/win/WebLayer.cpp:
  23814. (WebCore::WebLayer::drawInContext):
  23815. * platform/graphics/wince/GraphicsContextWinCE.cpp:
  23816. (WebCore::GraphicsContext::clearRect):
  23817. (WebCore::GraphicsContext::fillRect):
  23818. * platform/graphics/wince/ImageWinCE.cpp:
  23819. (WebCore::BitmapImage::getHBITMAPOfSize):
  23820. * platform/graphics/wx/GraphicsContextWx.cpp:
  23821. (WebCore::GraphicsContext::GraphicsContext):
  23822. * platform/gtk/RenderThemeGtk.cpp:
  23823. (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration):
  23824. (WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
  23825. (WebCore::paintMediaButton):
  23826. (WebCore::RenderThemeGtk::paintMediaSliderTrack):
  23827. (WebCore::RenderThemeGtk::paintMediaSliderThumb):
  23828. * platform/mac/ScrollbarThemeMac.mm:
  23829. (WebCore::ScrollbarThemeMac::paint):
  23830. * platform/win/PopupMenuWin.cpp:
  23831. (WebCore::PopupMenuWin::paint):
  23832. * platform/win/WebCoreTextRenderer.cpp:
  23833. (WebCore::doDrawTextAtPoint):
  23834. * platform/wx/wxcode/mac/carbon/non-kerned-drawing.cpp:
  23835. (WebCore::drawTextWithSpacing):
  23836. * plugins/PluginView.cpp:
  23837. (WebCore::PluginView::paintMissingPluginIcon):
  23838. * rendering/RenderLayer.cpp:
  23839. (WebCore::RenderLayer::beginTransparencyLayers):
  23840. (WebCore::RenderLayer::paintResizer):
  23841. * rendering/RenderListMarker.cpp:
  23842. (WebCore::RenderListMarker::paint):
  23843. * rendering/RenderMediaControlsChromium.cpp:
  23844. (WebCore::paintMediaButton):
  23845. (WebCore::paintMediaSlider):
  23846. (WebCore::paintMediaVolumeSlider):
  23847. (WebCore::paintMediaTimelineContainer):
  23848. * rendering/RenderSVGImage.cpp:
  23849. (WebCore::RenderSVGImage::paint):
  23850. * rendering/RenderSVGResourceClipper.cpp:
  23851. (WebCore::RenderSVGResourceClipper::applyClippingToContext):
  23852. * rendering/RenderSVGResourceFilter.cpp:
  23853. (WebCore::RenderSVGResourceFilter::applyResource):
  23854. (WebCore::RenderSVGResourceFilter::postApplyResource):
  23855. * rendering/RenderSVGResourceGradient.cpp:
  23856. (WebCore::createMaskAndSwapContextForTextGradient):
  23857. * rendering/RenderSVGResourceMasker.cpp:
  23858. (WebCore::RenderSVGResourceMasker::applyResource):
  23859. (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
  23860. * rendering/RenderSVGResourcePattern.cpp:
  23861. (WebCore::RenderSVGResourcePattern::createTileImage):
  23862. * rendering/RenderSVGResourceSolidColor.cpp:
  23863. (WebCore::RenderSVGResourceSolidColor::applyResource):
  23864. * rendering/RenderScrollbarTheme.cpp:
  23865. (WebCore::RenderScrollbarTheme::paintScrollCorner):
  23866. * rendering/RenderThemeMac.mm:
  23867. (WebCore::RenderThemeMac::paintProgressBar):
  23868. (WebCore::RenderThemeMac::paintMenuListButton):
  23869. * rendering/RenderThemeSafari.cpp:
  23870. (WebCore::RenderThemeSafari::paintMenuListButton):
  23871. * rendering/RenderThemeWinCE.cpp:
  23872. (WebCore::RenderThemeWinCE::paintSearchFieldCancelButton):
  23873. (WebCore::RenderThemeWinCE::paintSliderTrack):
  23874. (WebCore::RenderThemeWinCE::paintSliderThumb):
  23875. * rendering/SVGImageBufferTools.cpp:
  23876. (WebCore::SVGImageBufferTools::createImageBuffer):
  23877. * rendering/SVGImageBufferTools.h:
  23878. * rendering/style/StyleRareInheritedData.cpp:
  23879. (WebCore::StyleRareInheritedData::StyleRareInheritedData):
  23880. * svg/SVGFEImageElement.cpp:
  23881. (WebCore::SVGFEImageElement::build):
  23882. * svg/graphics/SVGImage.cpp:
  23883. (WebCore::SVGImage::nativeImageForCurrentFrame):
  23884. * svg/graphics/filters/SVGFEImage.cpp:
  23885. (WebCore::FEImage::apply):
  23886. 2010-10-20 Dirk Schulze <krit@webkit.org>
  23887. Reviewed by Andreas Kling.
  23888. Remove left over code after moving Cairo port to ShadowContext
  23889. https://bugs.webkit.org/show_bug.cgi?id=47929
  23890. ImageBufferFilter is not needed anymore, since Cairo is using ShadowContext now.
  23891. Made kernelPosition() in FEGaussianBlur a inline function instead of a static function.
  23892. * CMakeLists.txt:
  23893. * GNUmakefile.am:
  23894. * WebCore.gypi:
  23895. * WebCore.vcproj/WebCore.vcproj:
  23896. * platform/graphics/filters/FEGaussianBlur.cpp:
  23897. (WebCore::kernelPosition):
  23898. * platform/graphics/filters/FEGaussianBlur.h:
  23899. * platform/graphics/filters/ImageBufferFilter.cpp: Removed.
  23900. * platform/graphics/filters/ImageBufferFilter.h: Removed.
  23901. 2010-10-20 Nikolas Zimmermann <nzimmermann@rim.com>
  23902. Not reviewed.
  23903. Fix efl build, by adding the new svg/properties include directory.
  23904. * CMakeLists.txt:
  23905. 2010-10-19 Andrey Kosyakov <caseq@chromium.org>
  23906. Reviewed by Pavel Feldman.
  23907. Web Inspector: expose request/response cookies in HAR
  23908. https://bugs.webkit.org/show_bug.cgi?id=47894
  23909. Test: inspector/cookie-parser.html
  23910. * WebCore.gypi:
  23911. * WebCore.vcproj/WebCore.vcproj:
  23912. * inspector/front-end/CookieParser.js: Added.
  23913. * inspector/front-end/HAREntry.js:
  23914. (WebInspector.HAREntry.prototype._buildRequest):
  23915. (WebInspector.HAREntry.prototype._buildResponse):
  23916. (WebInspector.HAREntry.prototype._buildCookies):
  23917. (WebInspector.HAREntry.prototype._buildCookie):
  23918. * inspector/front-end/Resource.js: Parse Cookie/Set-Cookie headers and expose cookies.
  23919. (WebInspector.Resource.prototype.set requestHeaders):
  23920. (WebInspector.Resource.prototype.get requestCookies):
  23921. (WebInspector.Resource.prototype.set responseHeaders):
  23922. (WebInspector.Resource.prototype.get responseCookies):
  23923. (WebInspector.Resource.prototype._parseRequestCookies):
  23924. (WebInspector.Resource.prototype._parseResponseCookies):
  23925. * inspector/front-end/WebKit.qrc:
  23926. * inspector/front-end/inspector.html:
  23927. 2010-10-20 Nikolas Zimmermann <nzimmermann@rim.com>
  23928. Not reviewed.
  23929. Fix non-mac builds, by adding the new svg/properties include directory.
  23930. * GNUmakefile.am:
  23931. * WebCore.gyp/WebCore.gyp:
  23932. * WebCore.pro:
  23933. * WebCore.vcproj/WebCoreCommon.vsprops:
  23934. 2010-10-20 Nikolas Zimmermann <nzimmermann@rim.com>
  23935. Reviewed by Adam Roben.
  23936. Rename SVGAnimatedProperty* -> DeprecatedSVGAnimatedProperty*
  23937. https://bugs.webkit.org/show_bug.cgi?id=47973
  23938. Prepare fixing bug 47905, redesigning SVGAnimatedProperty. As we're going to move type by type
  23939. to the new animated property concept, keep the old one around, marked deprecated, until the
  23940. transition is finished.
  23941. * GNUmakefile.am:
  23942. * WebCore.gypi:
  23943. * WebCore.pro:
  23944. * WebCore.vcproj/WebCore.vcproj:
  23945. * WebCore.xcodeproj/project.pbxproj:
  23946. * bindings/scripts/CodeGeneratorObjC.pm:
  23947. * bindings/scripts/CodeGeneratorV8.pm:
  23948. * svg/DeprecatedSVGAnimatedProperty.h: Copied from svg/SVGAnimatedProperty.h.
  23949. (WebCore::DeprecatedSVGAnimatedPropertyTearOff::DeprecatedSVGAnimatedPropertyTearOff):
  23950. (WebCore::DeprecatedSVGAnimatedPropertyTearOff::~DeprecatedSVGAnimatedPropertyTearOff):
  23951. (WebCore::DeprecatedSVGAnimatedProperty::~DeprecatedSVGAnimatedProperty):
  23952. (WebCore::DeprecatedSVGAnimatedProperty::DeprecatedSVGAnimatedProperty):
  23953. (WebCore::DeprecatedSVGAnimatedProperty::value):
  23954. (WebCore::DeprecatedSVGAnimatedProperty::baseValue):
  23955. * svg/DeprecatedSVGAnimatedPropertyTraits.h: Copied from svg/SVGAnimatedPropertyTraits.h.
  23956. * svg/DeprecatedSVGAnimatedTemplate.h: Copied from svg/SVGAnimatedTemplate.h.
  23957. (WebCore::DeprecatedSVGAnimatedTypeWrapperKey::DeprecatedSVGAnimatedTypeWrapperKey):
  23958. (WebCore::DeprecatedSVGAnimatedTypeWrapperKey::operator==):
  23959. (WebCore::DeprecatedSVGAnimatedTypeWrapperKeyHash::hash):
  23960. (WebCore::DeprecatedSVGAnimatedTypeWrapperKeyHash::equal):
  23961. (WebCore::DeprecatedSVGAnimatedTypeWrapperKeyHashTraits::constructDeletedValue):
  23962. (WebCore::DeprecatedSVGAnimatedTypeWrapperKeyHashTraits::isDeletedValue):
  23963. (WebCore::DeprecatedSVGAnimatedTemplate::~DeprecatedSVGAnimatedTemplate):
  23964. (WebCore::DeprecatedSVGAnimatedTemplate::forgetWrapper):
  23965. (WebCore::lookupOrCreateWrapper):
  23966. * svg/SVGAnimatedProperty.h: Removed.
  23967. * svg/SVGAnimatedPropertySynchronizer.h: Removed.
  23968. * svg/SVGAnimatedPropertyTraits.h: Removed.
  23969. * svg/SVGAnimatedTemplate.h: Removed.
  23970. * svg/SVGElement.h:
  23971. * svg/SVGExternalResourcesRequired.h:
  23972. * svg/SVGFitToViewBox.h:
  23973. * svg/SVGURIReference.h:
  23974. * svg/properties: Added.
  23975. * svg/properties/SVGAnimatedPropertySynchronizer.h: Copied from svg/SVGAnimatedPropertySynchronizer.h.
  23976. 2010-10-20 Shinichiro Hamaji <hamaji@chromium.org>
  23977. Reviewed by Kent Tamura.
  23978. absolutely positioned list in inline element crashes
  23979. https://bugs.webkit.org/show_bug.cgi?id=45095
  23980. Add a NULL check to avoid crash. The rendering result isn't ideal yet.
  23981. Test: fast/lists/positioned-count-crash.html
  23982. * rendering/RenderListItem.cpp:
  23983. (WebCore::previousListItem):
  23984. 2010-10-19 Adam Roben <aroben@apple.com>
  23985. Remove uses of CACFContextRef and CARender* from WebCore
  23986. These types are now wrapped in a WKCACFContext type exported by
  23987. WebKitSystemInterface.
  23988. Fixes <http://webkit.org/b/43244>.
  23989. Reviewed by Sam Weinig.
  23990. * platform/graphics/win/WKCACFContextFlusher.cpp:
  23991. (WebCore::WKCACFContextFlusher::addContext):
  23992. (WebCore::WKCACFContextFlusher::removeContext):
  23993. (WebCore::WKCACFContextFlusher::flushAllContexts):
  23994. * platform/graphics/win/WKCACFContextFlusher.h:
  23995. Changed to use WKCACFContext. We don't retain/release the context when
  23996. putting it into/taking it out of the set. WKCACFContext is not a
  23997. ref-counted type, so we can't retain/release it, but the
  23998. retain/release was also unnecessary as WKCACFLayerRenderer calls
  23999. removeContext before the context is destroyed.
  24000. * platform/graphics/win/WKCACFLayer.cpp:
  24001. (WebCore::WKCACFLayer::becomeRootLayerForContext):
  24002. * platform/graphics/win/WKCACFLayer.h:
  24003. Changed to use WKCACFContext.
  24004. * platform/graphics/win/WKCACFLayerRenderer.cpp:
  24005. (WebCore::WKCACFLayerRenderer::didFlushContext):
  24006. (WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer):
  24007. (WebCore::WKCACFLayerRenderer::~WKCACFLayerRenderer):
  24008. (WebCore::WKCACFLayerRenderer::layerTreeDidChange):
  24009. (WebCore::WKCACFLayerRenderer::createRenderer):
  24010. (WebCore::WKCACFLayerRenderer::destroyRenderer):
  24011. (WebCore::WKCACFLayerRenderer::render): Also replaced uses of
  24012. CGSRegion with WebKitSystemInterface functions/types.
  24013. (WebCore::WKCACFLayerRenderer::resetDevice):
  24014. * platform/graphics/win/WKCACFLayerRenderer.h:
  24015. Replaced our CACFContextRef, CARenderContext, and CARenderOGLContext
  24016. with a single WKCACFContext, which wraps all three. We hold a bare
  24017. pointer to it and destroy it in our destructor.
  24018. 2010-10-19 Yongjun Zhang <yongjun_zhang@apple.com>
  24019. Reviewed by Dan Bernstein.
  24020. Pixel cracks when using background image sprite on transformed element at certain scales.
  24021. https://bugs.webkit.org/show_bug.cgi?id=47868
  24022. The pixel bleeding happens when the current context has scale and interpolation is kCGInterpolationHigh
  24023. or kCGInterpolationDefault. If the source rect size is smaller than the intrinsic image size, some
  24024. pixels outside of the clip rect will also be used to interpolate the color value for clip edges, which
  24025. results in unwanted thin lines around the painted area. We need to use sub-image patch to get rid of
  24026. the artifacts in this case.
  24027. Test: fast/images/pixel-crack-image-background-webkit-transform-scale.html
  24028. * platform/graphics/cg/ImageCG.cpp:
  24029. (WebCore::BitmapImage::draw):
  24030. 2010-10-19 Evan Martin <evan@chromium.org>
  24031. Reviewed by Tony Chang.
  24032. sqlite: remove unused member variable
  24033. https://bugs.webkit.org/show_bug.cgi?id=47957
  24034. There's no need to save the error code into a member variable
  24035. because nobody ever looks at it.
  24036. * platform/sql/SQLiteDatabase.cpp:
  24037. (WebCore::SQLiteDatabase::open):
  24038. * platform/sql/SQLiteDatabase.h:
  24039. 2010-10-19 Jia Pu <jpu@apple.com>
  24040. Reviewed by James Robinson.
  24041. Moving cursor back to autocorrected word in the same line shouldn't remove the underline
  24042. https://bugs.webkit.org/show_bug.cgi?id=47629
  24043. <rdar://problem/8546758>
  24044. Patch <http://trac.webkit.org/changeset/70071> breaks some Chromium Mac hehavior. This patch
  24045. fixes that.
  24046. * editing/Editor.cpp:
  24047. (WebCore::Editor::respondToChangedSelection): Add "!PLATFORM(MAC)" to make sure nothing changes
  24048. on non-Mac platforms.
  24049. 2010-10-19 Alexey Proskuryakov <ap@apple.com>
  24050. Build fix (EFL, maybe more).
  24051. * CMakeLists.txt: Added platform/Language.cpp here, too.
  24052. 2010-10-19 Jian Li <jianli@chromium.org>
  24053. Reviewed by Darin Fisher.
  24054. Rename createBlobURL to createObjectURL and revokeBlobURL to
  24055. revokeObjectURL per the latest File API spec.
  24056. https://bugs.webkit.org/show_bug.cgi?id=47934
  24057. * inspector/front-end/ResourcesPanel.js:
  24058. (WebInspector.ResourcesPanel.prototype._contextMenu):
  24059. * inspector/front-end/utilities.js:
  24060. * page/DOMWindow.cpp:
  24061. (WebCore::DOMWindow::createObjectURL):
  24062. (WebCore::DOMWindow::revokeObjectURL):
  24063. * page/DOMWindow.h:
  24064. * page/DOMWindow.idl:
  24065. * workers/WorkerContext.cpp:
  24066. (WebCore::WorkerContext::createObjectURL):
  24067. (WebCore::WorkerContext::revokeObjectURL):
  24068. * workers/WorkerContext.h:
  24069. * workers/WorkerContext.idl:
  24070. 2010-10-19 Alexey Proskuryakov <ap@apple.com>
  24071. Reviewed by Anders Carlsson.
  24072. https://bugs.webkit.org/show_bug.cgi?id=47933
  24073. <rdar://problem/8494337> navigator.language doesn't work in WebKit2
  24074. * CMakeListsEfl.txt:
  24075. * GNUmakefile.am:
  24076. * WebCore.gypi:
  24077. * WebCore.pro:
  24078. * WebCore.vcproj/WebCore.vcproj:
  24079. * WebCore.xcodeproj/project.pbxproj:
  24080. * platform/chromium/Language.cpp: Removed.
  24081. * platform/chromium/LanguageChromium.cpp: Copied from WebCore/platform/chromium/Language.cpp.
  24082. * platform/efl/Language.cpp: Removed.
  24083. * platform/efl/LanguageEfl.cpp: Copied from WebCore/platform/efl/Language.cpp.
  24084. * platform/gtk/Language.cpp: Removed.
  24085. * platform/gtk/LanguageGtk.cpp: Copied from WebCore/platform/gtk/Language.cpp.
  24086. * platform/qt/Language.cpp: Removed.
  24087. * platform/qt/LanguageQt.cpp: Copied from WebCore/platform/qt/Language.cpp.
  24088. * platform/win/Language.cpp: Removed.
  24089. * platform/win/LanguageWin.cpp: Copied from WebCore/platform/win/Language.cpp.
  24090. * platform/Language.cpp: Added.
  24091. Cross platform code is now in platform/Language.cpp. So, I renamed platform files to match
  24092. the common pattern.
  24093. * WebCore.exp.in: Exported new functions.
  24094. * platform/Language.h: Added an ability to force the language, and an ability to set up
  24095. listeners for changes (if the platform implements that). Web process will always use the
  24096. forced language, as sent to it from UI process.
  24097. * platform/mac/Language.mm: Moved code from WebKit.
  24098. (WebCore::platformDefaultLanguage): Added code to synchronize user defaults. For some reason,
  24099. they come unsynchronized in WebKit2 here, unlike WebKit1.
  24100. * page/mac/WebCoreViewFactory.h: Removed defaultLanguageCode. WebCore no longer goes to WebKit
  24101. to ask for that.
  24102. * platform/mac/WebCoreSystemInterface.h:
  24103. * platform/mac/WebCoreSystemInterface.mm:
  24104. Added wkCopyCFLocalizationPreferredName().
  24105. 2010-10-19 James Simonsen <simonjam@chromium.org>
  24106. Reviewed by Adam Barth.
  24107. Add "in select" insertion mode to parser.
  24108. This was added to the spec in:
  24109. http://html5.org/tools/web-apps-tracker?from=5520&to=5522
  24110. And as a result of:
  24111. http://www.w3.org/Bugs/Public/show_bug.cgi?id=10314
  24112. https://bugs.webkit.org/show_bug.cgi?id=47706
  24113. No new tests. Open to ideas.
  24114. * html/parser/HTMLElementStack.cpp: Added "in select" mode.
  24115. (WebCore::HTMLNames::isSelectScopeMarker): Ditto.
  24116. (WebCore::HTMLElementStack::inSelectScope): Ditto.
  24117. * html/parser/HTMLElementStack.h: Ditto.
  24118. * html/parser/HTMLTreeBuilder.cpp:
  24119. (WebCore::HTMLTreeBuilder::processStartTag): Use "in select" instead of "in table."
  24120. (WebCore::HTMLTreeBuilder::processEndTag): Ditto.
  24121. 2010-10-19 Jeremy Orlow <jorlow@chromium.org>
  24122. Reviewed by Nate Chapin.
  24123. Fix multiple index support in IndexedDB
  24124. https://bugs.webkit.org/show_bug.cgi?id=47919
  24125. Fix 2 bugs that caused the IndexData of all but the last index to be
  24126. properly updated:
  24127. * The objectStoreDataId is NOT unique if there are multiple indexes. So
  24128. remove the constraint.
  24129. * Do not delete all existing entries with that objectStoreDataId before
  24130. adding an entry for each index. Only do it once at the beginning.
  24131. Test: storage/indexeddb/queued-commands.html
  24132. + index-basics.html modified
  24133. * storage/IDBFactoryBackendImpl.cpp:
  24134. (WebCore::createTables):
  24135. * storage/IDBObjectStoreBackendImpl.cpp:
  24136. (WebCore::deleteIndexData):
  24137. (WebCore::putIndexData):
  24138. (WebCore::IDBObjectStoreBackendImpl::putInternal):
  24139. 2010-10-19 Martin Robinson <mrobinson@igalia.com>
  24140. Fix the GTK+ build after r70072. The logic looks incorrect, but
  24141. this fix tries to preserves it, even so.
  24142. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  24143. (baselinePositionForAccessibilityRenderObject):
  24144. (getAttributeSetForAccessibilityObject):
  24145. 2010-10-06 Jer Noble <jer.noble@apple.com>
  24146. Reviewed by Eric Carlson.
  24147. Windows: Implement 'preload=none'
  24148. https://bugs.webkit.org/show_bug.cgi?id=47317
  24149. <rdar://problem/7718442>
  24150. Implement the 'preload=none' identically to the mac implementation. Add three new
  24151. ivars: m_preload, m_delayLoad and m_movieURL; and override the MediaPlayerPrivate
  24152. functions: prepareToPlay() and setPreload().
  24153. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
  24154. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::MediaPlayerPrivateQuickTimeVisualContext):
  24155. Initialize new ivars m_delayLoad and m_preload.
  24156. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::resumeLoad): Added; new.
  24157. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::load): Split contents between
  24158. load and loadInternal.
  24159. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::loadInternal): Added; new.
  24160. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::prepareToPlay): Added; overrides MediaPlayerPrivate.
  24161. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::setPreload): Added; overrides MediaPlayerPrivate.
  24162. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
  24163. 2010-10-19 Enrica Casucci <enrica@apple.com>
  24164. Reviewed by Alexey Proskuryakov.
  24165. Upstream support of KeyCodes for iOS
  24166. https://bugs.webkit.org/show_bug.cgi?id=47857
  24167. * platform/cocoa/KeyEventCocoa.mm:
  24168. (WebCore::windowsKeyCodeForCharCode): Added special handling of keyCodes for iOS.
  24169. 2010-10-19 Joseph Pecoraro <joepeck@webkit.org>
  24170. Reviewed by David Kilzer.
  24171. iOS: ASSERT in Cache::adjustSize running layout tests
  24172. https://bugs.webkit.org/show_bug.cgi?id=47873
  24173. Inside Cache::pruneDeadResources we loop over the LRU lists and make resources purgeable
  24174. with Cache::makeResourcePurgeable(). This wasn't taking into account whether the resource
  24175. was already purgeable or not, and the makeResourcePurgeable call was always calling
  24176. adjustSize(). Now we make sure makeResourcePurgable only adjusts the size of the Cache's
  24177. dead sizes when it first marks the resource purgeable. Likewise, if a resource is marked
  24178. as purgeable and then evicted, we should not adjust the size again.
  24179. The balancing call is when we have a resource that has been marked as purgeable and we
  24180. successfully mark it as no longer purgeable in Cache::resourceForURL.
  24181. No test added because this requires testing purgeable memory.
  24182. * loader/Cache.cpp:
  24183. (WebCore::Cache::makeResourcePurgeable):
  24184. (WebCore::Cache::evict):
  24185. 2010-10-19 Vangelis Kokkevis <vangelis@chromium.org>
  24186. Reviewed by Kenneth Russell.
  24187. [chromium] Disable mipmapping for ImageLayer's to prevent memory use and
  24188. performance regression.
  24189. https://bugs.webkit.org/show_bug.cgi?id=47913
  24190. This patch is a straight revert of the patch committed with issue 46493
  24191. * platform/graphics/chromium/ContentLayerChromium.cpp:
  24192. (WebCore::ContentLayerChromium::SharedValues::SharedValues):
  24193. (WebCore::ContentLayerChromium::updateTextureRect):
  24194. * platform/graphics/chromium/ContentLayerChromium.h:
  24195. (WebCore::ContentLayerChromium::SharedValues::initialized):
  24196. * platform/graphics/chromium/ImageLayerChromium.cpp:
  24197. (WebCore::ImageLayerChromium::updateContents):
  24198. 2010-10-18 Zhenyao Mo <zmo@google.com>
  24199. Reviewed by Kenneth Russell.
  24200. gl-teximage.html fails on chromium webkit mac bot
  24201. https://bugs.webkit.org/show_bug.cgi?id=47034
  24202. * platform/graphics/GraphicsContext3D.cpp: Deal with endians in 16 bit image data.
  24203. (WebCore::convertColor16LittleTo8):
  24204. (WebCore::convertColor16BigTo8):
  24205. (WebCore::doPacking):
  24206. * platform/graphics/GraphicsContext3D.h: Ditto.
  24207. * platform/graphics/cg/GraphicsContext3DCG.cpp: Ditto.
  24208. (WebCore::GraphicsContext3D::getImageData):
  24209. 2010-10-19 David Hyatt <hyatt@apple.com>
  24210. Reviewed by Dan Bernstein.
  24211. https://bugs.webkit.org/show_bug.cgi?id=47841
  24212. Rework baselinePosition and lineHeight to be writing-mode-aware. There's a lot of refactoring here to clean up
  24213. the method parameters to be more readable and to simplify the subclassing of the various methods in order to
  24214. keep the horizontal/vertical querying to a minimum.
  24215. * WebCore.xcodeproj/project.pbxproj:
  24216. * mathml/RenderMathMLFraction.cpp:
  24217. (WebCore::RenderMathMLFraction::baselinePosition):
  24218. * mathml/RenderMathMLFraction.h:
  24219. * mathml/RenderMathMLOperator.cpp:
  24220. (WebCore::RenderMathMLOperator::baselinePosition):
  24221. * mathml/RenderMathMLOperator.h:
  24222. * mathml/RenderMathMLRow.cpp:
  24223. (WebCore::RenderMathMLRow::baselinePosition):
  24224. * mathml/RenderMathMLRow.h:
  24225. * mathml/RenderMathMLSubSup.cpp:
  24226. (WebCore::RenderMathMLSubSup::baselinePosition):
  24227. * mathml/RenderMathMLSubSup.h:
  24228. * mathml/RenderMathMLUnderOver.cpp:
  24229. (WebCore::RenderMathMLUnderOver::layout):
  24230. (WebCore::RenderMathMLUnderOver::baselinePosition):
  24231. * mathml/RenderMathMLUnderOver.h:
  24232. * rendering/InlineBox.h:
  24233. (WebCore::InlineBox::baselinePosition):
  24234. (WebCore::InlineBox::lineHeight):
  24235. * rendering/InlineFlowBox.cpp:
  24236. (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
  24237. (WebCore::InlineFlowBox::computeLogicalBoxHeights):
  24238. (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
  24239. * rendering/InlineTextBox.cpp:
  24240. (WebCore::InlineTextBox::baselinePosition):
  24241. (WebCore::InlineTextBox::lineHeight):
  24242. * rendering/InlineTextBox.h:
  24243. * rendering/RenderBR.cpp:
  24244. (WebCore::RenderBR::lineHeight):
  24245. * rendering/RenderBR.h:
  24246. (WebCore::toRenderBR):
  24247. * rendering/RenderBlock.cpp:
  24248. (WebCore::RenderBlock::lineHeight):
  24249. (WebCore::RenderBlock::baselinePosition):
  24250. (WebCore::RenderBlock::firstLineBoxBaseline):
  24251. (WebCore::RenderBlock::lastLineBoxBaseline):
  24252. (WebCore::RenderBlock::localCaretRect):
  24253. * rendering/RenderBlock.h:
  24254. * rendering/RenderBlockLineLayout.cpp:
  24255. (WebCore::RenderBlock::layoutInlineChildren):
  24256. * rendering/RenderBox.cpp:
  24257. (WebCore::RenderBox::lineHeight):
  24258. (WebCore::RenderBox::baselinePosition):
  24259. * rendering/RenderBox.h:
  24260. * rendering/RenderBoxModelObject.cpp:
  24261. (WebCore::RenderBoxModelObject::verticalPosition):
  24262. * rendering/RenderBoxModelObject.h:
  24263. * rendering/RenderFileUploadControl.cpp:
  24264. (WebCore::RenderFileUploadControl::paintObject):
  24265. * rendering/RenderFlexibleBox.cpp:
  24266. (WebCore::RenderFlexibleBox::layoutHorizontalBox):
  24267. (WebCore::RenderFlexibleBox::layoutVerticalBox):
  24268. * rendering/RenderInline.cpp:
  24269. (WebCore::RenderInline::lineHeight):
  24270. (WebCore::RenderInline::baselinePosition):
  24271. * rendering/RenderInline.h:
  24272. * rendering/RenderListBox.cpp:
  24273. (WebCore::RenderListBox::baselinePosition):
  24274. * rendering/RenderListBox.h:
  24275. * rendering/RenderListMarker.cpp:
  24276. (WebCore::RenderListMarker::lineHeight):
  24277. (WebCore::RenderListMarker::baselinePosition):
  24278. * rendering/RenderListMarker.h:
  24279. * rendering/RenderObject.cpp:
  24280. * rendering/RenderObject.h:
  24281. * rendering/RenderReplaced.cpp:
  24282. * rendering/RenderReplaced.h:
  24283. * rendering/RenderSVGRoot.cpp:
  24284. * rendering/RenderSVGRoot.h:
  24285. * rendering/RenderSlider.cpp:
  24286. (WebCore::RenderSlider::baselinePosition):
  24287. * rendering/RenderSlider.h:
  24288. * rendering/RenderTableCell.cpp:
  24289. (WebCore::RenderTableCell::baselinePosition):
  24290. * rendering/RenderTableCell.h:
  24291. * rendering/RenderTableCol.h:
  24292. (WebCore::RenderTableCol::isTableCol):
  24293. * rendering/RenderTableRow.h:
  24294. * rendering/RenderTableSection.h:
  24295. * rendering/RenderText.cpp:
  24296. * rendering/RenderText.h:
  24297. * rendering/RenderTextControl.cpp:
  24298. (WebCore::RenderTextControl::computeLogicalHeight):
  24299. * rendering/RenderTextControlMultiLine.cpp:
  24300. (WebCore::RenderTextControlMultiLine::baselinePosition):
  24301. * rendering/RenderTextControlMultiLine.h:
  24302. * rendering/RenderTextControlSingleLine.cpp:
  24303. (WebCore::RenderTextControlSingleLine::createInnerTextStyle):
  24304. * rendering/RootInlineBox.h:
  24305. (WebCore::RootInlineBox::baselinePosition):
  24306. (WebCore::RootInlineBox::lineHeight):
  24307. * rendering/svg/SVGInlineTextBox.cpp:
  24308. (WebCore::SVGInlineTextBox::calculateBoundaries):
  24309. 2010-10-19 Jia Pu <jpu@apple.com>
  24310. Reviewed by Adele Peterson.
  24311. Moving cursor back to autocorrected word in the same line shouldn't remove the underline
  24312. https://bugs.webkit.org/show_bug.cgi?id=47629
  24313. <rdar://problem/8546758>
  24314. Tests: platform/mac/editing/spelling/click-autocorrected-word.html
  24315. platform/mac/editing/spelling/delete-into-autocorrected-word.html
  24316. platform/mac/editing/spelling/delete-into-misspelled-word.html
  24317. platform/mac/editing/spelling/forward-delete-into-autocorrected-word.html
  24318. platform/mac/editing/spelling/move-cursor-around-misspelled-word.html
  24319. platform/mac/editing/spelling/move-cursor-to-autocorrected-word.html
  24320. platform/mac/editing/spelling/move-cursor-to-beginning-of-autocorrected-word.html
  24321. * editing/Editor.cpp:
  24322. (WebCore::Editor::respondToChangedSelection): Don't remove misspelling or autocorrection
  24323. underlines when cursor is moved onto a word.
  24324. 2010-10-19 Eric Carlson <eric.carlson@apple.com>
  24325. Not reviewed. Build fix.
  24326. * html/HTMLMediaElement.cpp:
  24327. (WebCore::HTMLMediaElement::selectNextSourceChild): Initialize variable to avoid Windows
  24328. "potentially uninitialized local variable" warning.
  24329. 2010-10-19 Eric Carlson <eric.carlson@apple.com>
  24330. Reviewed by Darin Adler.
  24331. https://bugs.webkit.org/show_bug.cgi?id=46763
  24332. CRASH in WebCore::ThreadTimers::sharedTimerFiredInternal
  24333. Fix crashes caused by moving and deleting <source> element(s) of active media element.
  24334. Tests: media/video-source-moved.html
  24335. media/video-source-removed.html
  24336. * html/HTMLMediaElement.cpp:
  24337. (WebCore::HTMLMediaElement::HTMLMediaElement): Add logging. Initialize selectNextSourceChild.
  24338. (WebCore::HTMLMediaElement::~HTMLMediaElement): Ditto.
  24339. (WebCore::HTMLMediaElement::insertedIntoDocument): Ditto.
  24340. (WebCore::HTMLMediaElement::removedFromDocument): Ditto.
  24341. (WebCore::HTMLMediaElement::scheduleLoad): Ditto.
  24342. (WebCore::HTMLMediaElement::setNetworkState): Deal with m_currentSourceNode being null when
  24343. the media engine signals a failure by skipping the error message and continuing as usual.
  24344. (WebCore::HTMLMediaElement::setVolume): Fix logging typo.
  24345. (WebCore::HTMLMediaElement::havePotentialSourceChild): Save and restore m_nextChildNodeToConsider
  24346. around call to selectNextSourceChild because they are both significant.
  24347. (WebCore::HTMLMediaElement::selectNextSourceChild): Use m_nextChildNodeToConsider to pick
  24348. the first node to consider. Bail immediately if it signals that we have already processed
  24349. every <source> node. Stach the node following the current source element in m_nextChildNodeToConsider
  24350. so we can resume the search even if m_currentSourceNode is removed while it is being processed.
  24351. (WebCore::HTMLMediaElement::sourceWasAdded): New, move logic from HTMLSourceElement::insertedIntoTree
  24352. here and correct it to deal with a <source> node being inserted immediately after the
  24353. current <source> node and a new <source> node being inserted at the end of the list after
  24354. all candidates have failed.
  24355. (WebCore::HTMLMediaElement::sourceWillBeRemoved): New, deal with current source node and next
  24356. potential node being removed.
  24357. * html/HTMLMediaElement.h:
  24358. (WebCore::HTMLMediaElement::sourceChildEndOfListValue): New, define sentinal value used to indicate
  24359. that all nodes have been processed.
  24360. * html/HTMLSourceElement.cpp:
  24361. (WebCore::HTMLSourceElement::HTMLSourceElement): Add logging.
  24362. (WebCore::HTMLSourceElement::insertedIntoTree): Call mediaElement->sourceWasAdded instead
  24363. of having logic here.
  24364. (WebCore::HTMLSourceElement::willRemove): New, call mediaElement->sourceWillBeRemoved
  24365. (WebCore::HTMLSourceElement::scheduleErrorEvent): Add logging.
  24366. (WebCore::HTMLSourceElement::cancelPendingErrorEvent): Add logging.
  24367. * html/HTMLSourceElement.h:
  24368. 2010-10-19 Luiz Agostini <luiz.agostini@openbossa.org>
  24369. Reviewed by Antti Koivisto.
  24370. [Qt] WebKit2 MacOS build fix
  24371. https://bugs.webkit.org/show_bug.cgi?id=47897
  24372. Qt WebKit2 MacOS build fix.
  24373. * bridge/npapi.h:
  24374. 2010-10-19 Philippe Normand <pnormand@igalia.com>
  24375. Reviewed by Xan Lopez.
  24376. [GTK] Soup cache code still has some warnings
  24377. https://bugs.webkit.org/show_bug.cgi?id=47733
  24378. Fixed some compilation warnings happening with gcc 4.4.5 on
  24379. 64-bits architecture.
  24380. * platform/network/soup/cache/webkit/soup-cache.c:
  24381. (webkit_soup_cache_entry_set_freshness):
  24382. (close_ready_cb):
  24383. 2010-10-19 Yury Semikhatsky <yurys@chromium.org>
  24384. Reviewed by Pavel Feldman.
  24385. Web Inspector: crash while trying to step over a function using inspector
  24386. https://bugs.webkit.org/show_bug.cgi?id=47902
  24387. * inspector/front-end/ScriptsPanel.js:
  24388. (WebInspector.ScriptsPanel.prototype.reset): reset scripts panel to resumed state on navigation.
  24389. 2010-10-19 Ryuan Choi <ryuan.choi@samsung.com>
  24390. Unreviewed attempt to remove warning in EFL build.
  24391. Fix #if to #ifdef.
  24392. No new features, so no tests added.
  24393. * platform/efl/WidgetEfl.cpp:
  24394. (WebCore::Widget::applyFallbackCursor):
  24395. 2010-10-19 Andreas Kling <kling@webkit.org>
  24396. Reviewed by Tor Arne Vestbø.
  24397. [Qt] getImageData returns wrong data for non-0,0 source offset
  24398. https://bugs.webkit.org/show_bug.cgi?id=47898
  24399. Test: fast/canvas/canvas-getImageData-negative-source.html
  24400. * platform/graphics/qt/ImageBufferQt.cpp:
  24401. (WebCore::getImageData): Add missing *4's to get correct pixel offset.
  24402. 2010-10-19 Andreas Kling <kling@webkit.org>
  24403. Reviewed by Kenneth Rohde Christiansen.
  24404. [Qt] Correct initial state of ImageBuffer QPen
  24405. https://bugs.webkit.org/show_bug.cgi?id=47804
  24406. Have the QPen on ImageBuffers start in Qt::SvgMiterJoin mode.
  24407. * platform/graphics/qt/ImageBufferQt.cpp:
  24408. (WebCore::ImageBufferData::ImageBufferData):
  24409. 2010-10-19 Philippe Normand <pnormand@igalia.com>
  24410. Reviewed by Martin Robinson.
  24411. GStreamer PlatformVideoWindow needs an API to prepare the widget before applying the overlay
  24412. https://bugs.webkit.org/show_bug.cgi?id=46790
  24413. Simple API addition to PlatformVideoWindow to allow
  24414. implementations to optionally prepare their own PlatformWidget
  24415. before applying the GStreamer XOverlay to it. This will likely be
  24416. needed on Mac OSX only.
  24417. * platform/graphics/gstreamer/GStreamerGWorld.cpp:
  24418. (WebCore::GStreamerGWorld::setWindowOverlay):
  24419. * platform/graphics/gstreamer/PlatformVideoWindow.h:
  24420. * platform/graphics/gstreamer/PlatformVideoWindowGtk.cpp:
  24421. (PlatformVideoWindow::prepareForOverlay):
  24422. * platform/graphics/gstreamer/PlatformVideoWindowEfl.cpp:
  24423. (PlatformVideoWindow::prepareForOverlay):
  24424. 2010-10-19 Ben Murdoch <benm@google.com>
  24425. Reviewed by Steve Block.
  24426. Missing support for document.createTouch and document.createTouchList
  24427. https://bugs.webkit.org/show_bug.cgi?id=47676
  24428. These APIs are used by many sites to detect support for touch events.
  24429. Implement the APIs according to the documentation at:
  24430. http://developer.apple.com/library/safari/#documentation/UserExperience/Reference/DocumentAdditionsReference/DocumentAdditions/DocumentAdditions.html
  24431. Tests: fast/events/touch/document-create-touch-list.html
  24432. fast/events/touch/document-create-touch.html
  24433. * bindings/js/JSBindingsAllInOne.cpp: Add new files to list.
  24434. * bindings/js/JSTouchCustom.cpp: Added.
  24435. (WebCore::toJSNewlyCreated):
  24436. * bindings/js/JSTouchListCustom.cpp: Added.
  24437. (WebCore::toJSNewlyCreated):
  24438. * bindings/scripts/CodeGeneratorJS.pm:
  24439. * dom/Document.cpp:
  24440. (WebCore::Document::createTouch):
  24441. (WebCore::Document::createTouchList):
  24442. * dom/Document.h:
  24443. * dom/Document.idl: Add createTouch and createTouchList functions.
  24444. * Android.jscbindings.mk: Update makefiles.
  24445. * CMakeLists.txt: Ditto.
  24446. * GNUmakefile.am: Ditto.
  24447. * WebCore.gypi: Ditto.
  24448. * WebCore.pro: Ditto.
  24449. 2010-10-19 Pavel Feldman <pfeldman@chromium.org>
  24450. Reviewed by Yury Semikhatsky.
  24451. Web Inspector: migrate from legacy Object.properties to Object.keys, remove dead code.
  24452. https://bugs.webkit.org/show_bug.cgi?id=47890
  24453. * inspector/front-end/ConsoleView.js:
  24454. (WebInspector.ConsoleView.prototype._reportCompletions):
  24455. * inspector/front-end/ElementsPanel.js:
  24456. (WebInspector.ElementsPanel):
  24457. * inspector/front-end/ExtensionServer.js:
  24458. (WebInspector.ExtensionServer.prototype._onGetResources):
  24459. * inspector/front-end/HAREntry.js:
  24460. (WebInspector.HARLog.prototype.build):
  24461. * inspector/front-end/StylesSidebarPane.js:
  24462. (WebInspector.StylePropertyTreeElement.prototype.):
  24463. (WebInspector.StylePropertyTreeElement.prototype):
  24464. * inspector/front-end/utilities.js:
  24465. 2010-10-19 Pavel Feldman <pfeldman@chromium.org>
  24466. Reviewed by Yury Semikhatsky.
  24467. Web Inspector: do not access ResourcePanel from resources directly.
  24468. https://bugs.webkit.org/show_bug.cgi?id=47892
  24469. * inspector/front-end/Resource.js:
  24470. (WebInspector.Resource.prototype.set documentURL):
  24471. (WebInspector.Resource.prototype.set startTime):
  24472. (WebInspector.Resource.prototype.set responseReceivedTime):
  24473. (WebInspector.Resource.prototype.set endTime):
  24474. (WebInspector.Resource.prototype.set resourceSize):
  24475. (WebInspector.Resource.prototype.set expectedContentLength):
  24476. (WebInspector.Resource.prototype.set category):
  24477. (WebInspector.Resource.prototype.set cached):
  24478. (WebInspector.Resource.prototype.set mimeType):
  24479. (WebInspector.Resource.prototype.get requestHeaders):
  24480. (WebInspector.Resource.prototype.set requestHeaders):
  24481. (WebInspector.Resource.prototype.get responseHeaders):
  24482. (WebInspector.Resource.prototype.set responseHeaders):
  24483. * inspector/front-end/ResourcesPanel.js:
  24484. (WebInspector.ResourcesPanel.prototype.addResource):
  24485. (WebInspector.ResourcesPanel.prototype.refreshResource):
  24486. (WebInspector.ResourcesPanel.prototype._recreateViewForResourceIfNeeded):
  24487. (WebInspector.ResourcesPanel.prototype._resourceViewIsConsistentWithCategory):
  24488. (WebInspector.ResourceGraph):
  24489. (WebInspector.ResourceGraph.prototype.refresh):
  24490. * inspector/front-end/inspector.js:
  24491. (WebInspector.updateResource):
  24492. 2010-10-19 Yuta Kitamura <yutak@chromium.org>
  24493. Reviewed by Pavel Feldman.
  24494. Make sure WebSocket resource has the url field when it is created.
  24495. Web Inspector: Uncaught TypeError when connection to WebSocket server is refused
  24496. https://bugs.webkit.org/show_bug.cgi?id=47891
  24497. * inspector/InspectorResource.cpp:
  24498. (WebCore::InspectorResource::createWebSocket):
  24499. 2010-10-19 Hayato Ito <hayato@chromium.org>
  24500. Reviewed by Darin Adler.
  24501. Make CSS style selector non-recursive.
  24502. https://bugs.webkit.org/show_bug.cgi?id=43783
  24503. This change is one of the required changes to fix the following master bug:
  24504. https://bugs.webkit.org/show_bug.cgi?id=42806
  24505. To avoid recursion, we prepare a call stack and maintain a list of
  24506. function call state by ourselves and try matching iteratively.
  24507. Test: fast/css/long-css-selector-matches.html
  24508. * css/CSSStyleSelector.cpp:
  24509. (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
  24510. (WebCore::CSSStyleSelector::checkSelector):
  24511. * css/CSSStyleSelector.h:
  24512. 2010-10-19 Sheriff Bot <webkit.review.bot@gmail.com>
  24513. Unreviewed, rolling out r70034.
  24514. http://trac.webkit.org/changeset/70034
  24515. https://bugs.webkit.org/show_bug.cgi?id=47889
  24516. "Gustavo's bot is lame" (Requested by xan_ on #webkit).
  24517. * platform/network/soup/CookieJarSoup.cpp:
  24518. (WebCore::defaultCookieJar):
  24519. (WebCore::setCookies):
  24520. * platform/network/soup/ResourceHandleSoup.cpp:
  24521. (WebCore::ResourceHandle::prepareForURL):
  24522. (WebCore::restartedCallback):
  24523. (WebCore::startHttp):
  24524. * platform/network/soup/ResourceRequestSoup.cpp:
  24525. (WebCore::ResourceRequest::toSoupMessage):
  24526. (WebCore::ResourceRequest::updateFromSoupMessage):
  24527. 2010-10-19 Xan Lopez <xlopez@igalia.com>
  24528. Reviewed by Martin Robinson.
  24529. [GTK] Bump minimum requirement for libsoup to 2.30
  24530. https://bugs.webkit.org/show_bug.cgi?id=46176
  24531. Bump minimum required libsoup version to 2.30.
  24532. * platform/network/soup/CookieJarSoup.cpp:
  24533. (WebCore::defaultCookieJar):
  24534. (WebCore::setCookies):
  24535. * platform/network/soup/ResourceHandleSoup.cpp:
  24536. (WebCore::ResourceHandle::prepareForURL):
  24537. (WebCore::restartedCallback):
  24538. (WebCore::startHttp):
  24539. * platform/network/soup/ResourceRequestSoup.cpp:
  24540. (WebCore::ResourceRequest::toSoupMessage):
  24541. (WebCore::ResourceRequest::updateFromSoupMessage):
  24542. 2010-10-19 Xan Lopez <xlopez@igalia.com>
  24543. Reviewed by Martin Robinson.
  24544. Fix distcheck, take 2.
  24545. * GNUmakefile.am: also move the generated CSS hash files to the
  24546. build dir.
  24547. 2010-10-18 Kent Tamura <tkent@chromium.org>
  24548. Reviewed by Dimitri Glazkov.
  24549. Should not save state of a detached form control.
  24550. https://bugs.webkit.org/show_bug.cgi?id=47811
  24551. Test: fast/forms/state-save-of-detached-control.html
  24552. * html/HTMLFormControlElement.cpp:
  24553. (WebCore::HTMLFormControlElementWithState::shouldSaveAndRestoreFormControlState):
  24554. If the node is detached, don't save the state.
  24555. 2010-10-18 Xan Lopez <xlopez@igalia.com>
  24556. Reviewed by Martin Robinson.
  24557. * GNUmakefile.am: add missing files.
  24558. 2010-10-18 Oliver Hunt <oliver@apple.com>
  24559. Reviewed by Sam Weinig.
  24560. REGRESSION: Feedly extension crashes Webkit
  24561. https://bugs.webkit.org/show_bug.cgi?id=45811
  24562. The basic problem was the deserializer was holding a pointer into
  24563. the constant pool, but if you were sufficiently unlucky then the
  24564. constant pool would be moved while still relying on the pointer,
  24565. which leads to badness.
  24566. I looked at just making all the sites this could happen extract the
  24567. right string/jsstring before any possible allocations, but it seemed
  24568. too fragile so i've gone for a forwarding object as the solution.
  24569. * bindings/js/SerializedScriptValue.cpp:
  24570. (WebCore::CloneDeserializer::CachedStringRef::CachedStringRef):
  24571. (WebCore::CloneDeserializer::CachedStringRef::operator->):
  24572. (WebCore::CloneDeserializer::readStringData):
  24573. (WebCore::CloneDeserializer::readFile):
  24574. (WebCore::CloneDeserializer::readTerminal):
  24575. (WebCore::CloneDeserializer::deserialize):
  24576. 2010-10-18 Chris Rogers <crogers@google.com>
  24577. Reviewed by Chris Fleizach.
  24578. Add AudioResampler files
  24579. https://bugs.webkit.org/show_bug.cgi?id=47623
  24580. No new tests since audio API is not yet implemented.
  24581. * platform/audio/AudioResampler.cpp: Added.
  24582. (WebCore::AudioResampler::AudioResampler):
  24583. (WebCore::AudioResampler::configureChannels):
  24584. (WebCore::AudioResampler::process):
  24585. (WebCore::AudioResampler::setRate):
  24586. (WebCore::AudioResampler::reset):
  24587. * platform/audio/AudioResampler.h: Added.
  24588. (WebCore::AudioResampler::~AudioResampler):
  24589. (WebCore::AudioResampler::rate):
  24590. 2010-10-18 Vangelis Kokkevis <vangelis@chromium.org>
  24591. Reviewed by James Robinson.
  24592. [chromium] Prevent the creation of very large textures for layers by switching
  24593. to "large layer" mode when a texture is larger than some fixed reasonable size
  24594. (set to 2000 pixels for now).
  24595. https://bugs.webkit.org/show_bug.cgi?id=47751
  24596. The code also changes the large layer logic to use the current scissor rect used
  24597. by the compositor instead of the visible rect to determine how to clip large layers.
  24598. This will provide additional texture savings. In addition, the various layer rects
  24599. have been converted to use integers instead of floats to preserve uniformity in the code.
  24600. Tests: Existing large layer layout tests including huge-layer and huge-layer-img
  24601. * platform/graphics/chromium/ContentLayerChromium.cpp:
  24602. (WebCore::ContentLayerChromium::requiresClippedUpdateRect):
  24603. (WebCore::ContentLayerChromium::calculateClippedUpdateRect):
  24604. * platform/graphics/chromium/LayerChromium.cpp:
  24605. (WebCore::LayerChromium::getDrawRect):
  24606. * platform/graphics/chromium/LayerChromium.h:
  24607. * platform/graphics/chromium/LayerRendererChromium.cpp:
  24608. (WebCore::LayerRendererChromium::drawLayers):
  24609. (WebCore::LayerRendererChromium::drawLayersRecursive):
  24610. (WebCore::LayerRendererChromium::scissorToRect):
  24611. * platform/graphics/chromium/LayerRendererChromium.h:
  24612. (WebCore::LayerRendererChromium::currentScissorRect):
  24613. 2010-10-18 Jia Pu <jpu@apple.com>
  24614. Reviewed by Stephanie Lewis.
  24615. Correct the description of manual test: autocorrection-cancelled-by-typing-1.html
  24616. https://bugs.webkit.org/show_bug.cgi?id=47722
  24617. <rdar://problem/8556206>
  24618. * manual-tests/autocorrection/autocorrection-cancelled-by-typing-1.html: Update description
  24619. to match the test content.
  24620. 2010-10-18 Martin Robinson <mrobinson@igalia.com>
  24621. Build fix for newer versions of GTK+ 2.0. Instead of using GDK_DISPLAY()
  24622. use GDK_DRAWABLE_XDISPLAY(gdk_display_get_default()). GDK_DISPLAY() was
  24623. recently deprecated and the latter method has been available since GTK+
  24624. 2.2.
  24625. * plugins/gtk/PluginViewGtk.cpp:
  24626. (WebCore::PluginView::updatePluginWidget):
  24627. (WebCore::PluginView::paint):
  24628. (WebCore::PluginView::initXEvent):
  24629. (WebCore::PluginView::platformGetValue):
  24630. (WebCore::getVisualAndColormap):
  24631. (WebCore::PluginView::platformStart):
  24632. (WebCore::PluginView::platformDestroy):
  24633. 2010-10-18 Ryosuke Niwa <rniwa@webkit.org>
  24634. Reviewed by Adam Barth.
  24635. elementCannotHaveEndTag should be a member function of MarkupAccumulator
  24636. https://bugs.webkit.org/show_bug.cgi?id=47846
  24637. Moved elementCannotHaveEndTag into MarkupAccumulator.
  24638. No new tests are added since this is a cleanup.
  24639. * editing/MarkupAccumulator.cpp:
  24640. (WebCore::MarkupAccumulator::elementCannotHaveEndTag): Added.
  24641. * editing/MarkupAccumulator.h: Added MarkupAccumulator::elementCannotHaveEndTag.
  24642. * editing/markup.cpp: Removed elementCannotHaveEndTag.
  24643. * editing/markup.h: Removed elementCannotHaveEndTag.
  24644. 2010-10-18 Johnny Ding <jnd@chromium.org>
  24645. Reviewed by Adam Barth.
  24646. Set the right referent sourceURL for the script with force user gesture.
  24647. https://bugs.webkit.org/show_bug.cgi?id=37138
  24648. Because empty sourceURL indicates running script with force user gesture,
  24649. make WebKit use document.url() as referent sourceURL (Since it uses blank
  24650. URL instead empty if the input URL is empty) if WebKit isn't running the
  24651. script from a hyper-link.
  24652. Test: fast/events/popup-blocked-from-window-open.html
  24653. * bindings/ScriptControllerBase.cpp:
  24654. (WebCore::ScriptController::executeScript):
  24655. * bindings/js/ScriptController.cpp:
  24656. (WebCore::ScriptController::executeScriptInWorld):
  24657. 2010-10-18 Darin Adler <darin@apple.com>
  24658. * dom/Node.h: Fix ancient typo in just-modified comment.
  24659. 2010-10-18 Darin Adler <darin@apple.com>
  24660. Reviewed by Alexey Proskuryakov.
  24661. Remove some functions from class Node and make a few others non-virtual
  24662. https://bugs.webkit.org/show_bug.cgi?id=47735
  24663. Refactoring. No new tests.
  24664. * bindings/js/JSNodeCustom.cpp:
  24665. (WebCore::JSNode::markChildren): Added a FIXME about the use of the virtual
  24666. ownerDocument function.
  24667. * dom/ContainerNode.cpp:
  24668. (WebCore::ContainerNode::removeChildren): Removed the unused return value.
  24669. * dom/ContainerNode.h: Made insertBefore, replaceChild, removeChild, and
  24670. appendChild non-virtual for clarity and performance. Made removeChildren
  24671. non-virtual and removed its return value. Moved the inline Node functions
  24672. that call through to ContainerNode into this file since the old way involved
  24673. an extra level of inline function but otherwise had no advantages.
  24674. * dom/Element.h: Moved isMathMLElement here because there is no call site
  24675. that needs to call it on a Node*. We can always move it back if we need to,
  24676. but it's better to have less in the Node class.
  24677. * dom/Node.cpp:
  24678. (WebCore::Node::insertBefore): Added an isContainerNode check so this can
  24679. be non-virtual. There are very few callers who call this function on Node.
  24680. If we want to optimize them further we can make the isContainerNode check
  24681. inline in the future.
  24682. (WebCore::Node::replaceChild): Ditto.
  24683. (WebCore::Node::removeChild): Ditto.
  24684. (WebCore::Node::appendChild): Ditto.
  24685. (WebCore::Node::remove): Removed unneeded ref/unref because
  24686. ContainerNode::removeChild already does this.
  24687. (WebCore::Node::createRendererIfNeeded): Removed #if around call to
  24688. childShouldCreateRenderer since it's needed even without SVG and XHTMLMP.
  24689. * dom/Node.h: Moved definitions of inline functions that depend on
  24690. ContainerNode to the ContainerNode.h header. They already required inclusion
  24691. of that header, so there is no functional change. Made insertBefore,
  24692. replaceChild, removeChild, and appendChild non-virtual. There are very few
  24693. callers of these functions on this class. Moved isMathMLElement to Element.
  24694. Added a FIXME about the name of eventAncestors. Fixed comment formatting.
  24695. Eliminated unused isEditableBlock function. Moved the body of the
  24696. enclosingInlineElement function to the editing file that was the only
  24697. call site. Removed the previousEditable and nextEditable functions,
  24698. incorporating their bodies into the one place they were called.
  24699. Took the childShouldCreateRenderer function out of #if since it's
  24700. now used by the implementation of the <noscript> element.
  24701. * dom/Position.cpp:
  24702. (WebCore::nextRenderedEditable): Rewrote the function to use nextLeafNode
  24703. instead of nextEditable.
  24704. (WebCore::previousRenderedEditable): Rewrote the function to use
  24705. previousLeafNode instead of previousEditable.
  24706. * editing/ReplaceSelectionCommand.cpp:
  24707. (WebCore::enclosingInline): Moved function here from the Node class. Also
  24708. fixed an incorrect cast this function did, which assumed the function
  24709. result was always an element, which the function does not guarantee.
  24710. (WebCore::ReplaceSelectionCommand::doApply): Call the function above.
  24711. * history/HistoryItem.cpp: Added include of MathExtras.h.
  24712. 2010-10-18 Yongjun Zhang <yongjun_zhang@apple.com>
  24713. Reviewed by Darin Adler.
  24714. Missing support for document.createEvent("OrientationEvent")
  24715. https://bugs.webkit.org/show_bug.cgi?id=32492
  24716. Add support for document.createEvent("OrientationEvent") to help unit testing of
  24717. onOrientationChange event.
  24718. Test: fast/dom/DeviceOrientation/create-event-onorientationchange.html
  24719. * dom/Document.cpp:
  24720. (WebCore::Document::createEvent):
  24721. 2010-10-18 Jeremy Orlow <jorlow@chromium.org>
  24722. Reviewed by Darin Adler.
  24723. DOMStringList should return null if the index is out of range
  24724. https://bugs.webkit.org/show_bug.cgi?id=47829
  24725. When item() returns a null string, it needs to be passed to JS as
  24726. null. The indexed getter will then magically do the right thing.
  24727. So all that's left is having DOMStringList::item() return null when
  24728. the index is out of bounds.
  24729. * dom/DOMStringList.cpp:
  24730. (WebCore::DOMStringList::item):
  24731. * dom/DOMStringList.h:
  24732. * dom/DOMStringList.idl:
  24733. 2010-10-18 Girish Ramakrishnan <girish@forwardbias.in>
  24734. Reviewed by Ariya Hidayat.
  24735. [Qt] Implement Accelerated Composition for NPAPI Plugins.
  24736. https://bugs.webkit.org/show_bug.cgi?id=35524
  24737. * plugins/PluginView.h:
  24738. (WebCore::PluginView::platformLayer):
  24739. * plugins/qt/PluginViewQt.cpp:
  24740. (WebCore::PluginGraphicsLayerQt::PluginGraphicsLayerQt):
  24741. (WebCore::PluginGraphicsLayerQt::~PluginGraphicsLayerQt):
  24742. (WebCore::PluginGraphicsLayerQt::paint):
  24743. (WebCore::PluginView::updatePluginWidget):
  24744. (WebCore::PluginView::paint):
  24745. (WebCore::PluginView::invalidateRect):
  24746. (WebCore::PluginView::invalidateRegion):
  24747. (WebCore::PluginView::platformStart):
  24748. (WebCore::PluginView::platformLayer):
  24749. 2010-10-18 Stuart Morgan <stuartmorgan@chromium.org>
  24750. Reviewed by Eric Seidel.
  24751. Switch to using the new Carbon NPAPI event declarations, and remove
  24752. the old ones.
  24753. https://bugs.webkit.org/show_bug.cgi?id=40784
  24754. * bridge/npapi.h:
  24755. * plugins/mac/PluginViewMac.mm:
  24756. (WebCore::PluginView::setFocus):
  24757. (WebCore::PluginView::handleMouseEvent):
  24758. 2010-10-18 Pavel Feldman <pfeldman@chromium.org>
  24759. Reviewed by Yury Semikhatsky.
  24760. Web Inspector: comment out resource manager instantiation on front-end side.
  24761. https://bugs.webkit.org/show_bug.cgi?id=47823
  24762. * inspector/front-end/inspector.js:
  24763. 2010-10-18 Andrei Popescu <andreip@google.com>
  24764. Reviewed by Jeremy Orlow.
  24765. The description parameter of IDBFactory::open() should be mandatory.
  24766. https://bugs.webkit.org/show_bug.cgi?id=47835
  24767. Makes the description parameter mandatory, as per the IndexedDatabase specification.
  24768. Modified existing tests to cover this change.
  24769. * storage/IDBDatabaseBackendImpl.cpp:
  24770. (WebCore::extractMetaData):
  24771. (WebCore::setMetaData):
  24772. (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl):
  24773. * storage/IDBFactory.cpp:
  24774. (WebCore::IDBFactory::open):
  24775. * storage/IDBFactory.h:
  24776. * storage/IDBFactory.idl:
  24777. 2010-10-18 Xiaomei Ji <xji@chromium.org>
  24778. Reviewed by David Levin.
  24779. Code cleanup: Move most function members in TextRunWorker from inlined.
  24780. https://bugs.webkit.org/show_bug.cgi?id=47732
  24781. No functionality change, so no tests added.
  24782. * platform/graphics/chromium/FontLinux.cpp:
  24783. (WebCore::TextRunWalker::setWordSpacingAdjustment):
  24784. (WebCore::TextRunWalker::setLetterSpacingAdjustment):
  24785. (WebCore::TextRunWalker::setXOffsetToZero):
  24786. (WebCore::TextRunWalker::rtl):
  24787. (WebCore::TextRunWalker::glyphs):
  24788. (WebCore::TextRunWalker::length):
  24789. (WebCore::TextRunWalker::xPositions):
  24790. (WebCore::TextRunWalker::advances):
  24791. (WebCore::TextRunWalker::width):
  24792. (WebCore::TextRunWalker::logClusters):
  24793. (WebCore::TextRunWalker::numCodePoints):
  24794. (WebCore::TextRunWalker::fontPlatformDataForScriptRun):
  24795. (WebCore::TextRunWalker::isCodepointSpace):
  24796. (WebCore::TextRunWalker::TextRunWalker):
  24797. (WebCore::TextRunWalker::~TextRunWalker):
  24798. (WebCore::TextRunWalker::isWordBreak):
  24799. (WebCore::TextRunWalker::setPadding):
  24800. (WebCore::TextRunWalker::reset):
  24801. (WebCore::TextRunWalker::setBackwardsIteration):
  24802. (WebCore::TextRunWalker::nextScriptRun):
  24803. (WebCore::TextRunWalker::widthOfFullRun):
  24804. (WebCore::TextRunWalker::getTextRun):
  24805. (WebCore::TextRunWalker::getNormalizedTextRun):
  24806. (WebCore::TextRunWalker::setupFontForScriptRun):
  24807. (WebCore::TextRunWalker::allocHarfbuzzFont):
  24808. (WebCore::TextRunWalker::deleteGlyphArrays):
  24809. (WebCore::TextRunWalker::createGlyphArrays):
  24810. (WebCore::TextRunWalker::resetGlyphArrays):
  24811. (WebCore::TextRunWalker::shapeGlyphs):
  24812. (WebCore::TextRunWalker::setGlyphXPositions):
  24813. (WebCore::TextRunWalker::mirrorCharacters):
  24814. 2010-10-18 No'am Rosenthal <noam.rosenthal@nokia.com>
  24815. Reviewed by Andreas Kling.
  24816. [Qt] AC rendering bugs
  24817. There were a few missing connections in Qt AC between GraphicsLayer and plugins, like changing the plugin's geometry to the layer's
  24818. contentsRect, and making sure media layers handle ParentChange events and setContentsNeedsDisplay. Now media layers behave correctly.
  24819. https://bugs.webkit.org/show_bug.cgi?id=47571
  24820. No new tests. This is in preparation for fixing AC+plugins, which already has tests that don't work yet with Qt.
  24821. * platform/graphics/qt/GraphicsLayerQt.cpp:
  24822. (WebCore::GraphicsLayerQtImpl::flushChanges):
  24823. (WebCore::GraphicsLayerQt::setContentsNeedsDisplay):
  24824. * platform/graphics/qt/GraphicsLayerQt.h:
  24825. 2010-10-18 Pavel Feldman <pfeldman@chromium.org>
  24826. Reviewed by Simon Fraser.
  24827. Web Inspector: [crash] when Inspector Open in CSSStyleSelector::loadPendingImages().
  24828. https://bugs.webkit.org/show_bug.cgi?id=46224
  24829. * CMakeLists.txt:
  24830. * GNUmakefile.am:
  24831. * WebCore.gypi:
  24832. * WebCore.pro:
  24833. * WebCore.vcproj/WebCore.vcproj:
  24834. * WebCore.xcodeproj/project.pbxproj:
  24835. * inspector/InspectorClient.cpp: Added.
  24836. (WebCore::InspectorClient::doDispatchMessageOnFrontendPage):
  24837. * inspector/InspectorClient.h:
  24838. (WebCore::InspectorClient::InspectorClient):
  24839. 2010-10-18 Andrei Popescu <andreip@google.com>
  24840. Reviewed by Jeremy Orlow.
  24841. IDBKeyTree.h is no longer used.
  24842. https://bugs.webkit.org/show_bug.cgi?id=47824
  24843. No new tests, just removing unused files.
  24844. * WebCore.gypi:
  24845. * WebCore.xcodeproj/project.pbxproj:
  24846. * storage/IDBKeyTree.h: Removed.
  24847. 2010-10-18 Andreas Kling <kling@webkit.org>
  24848. Unreviewed buildfix for Qt + V8.
  24849. Add missing <wtf/text/CString.h> include.
  24850. * inspector/InspectorInstrumentation.cpp:
  24851. 2010-10-18 Ilya Tikhonovsky <loislo@chromium.org>
  24852. Reviewed by Yury Semikhatsky.
  24853. Web Inspector: toJSON serialization for Numbers should be fixed.
  24854. DecimalNumber is used instead of printf.
  24855. https://bugs.webkit.org/show_bug.cgi?id=43832
  24856. * inspector/InspectorValues.cpp:
  24857. (WebCore::InspectorBasicValue::writeJSON):
  24858. 2010-10-18 Ilya Tikhonovsky <loislo@chromium.org>
  24859. Reviewed by Yury Semikhatsky.
  24860. Web Inspector: [REGRESSION] Inspector window visible during run-webkit-tests.
  24861. The initial state of an inspector setting should stay untouched
  24862. if the profile has no value for it.
  24863. https://bugs.webkit.org/show_bug.cgi?id=47785
  24864. * inspector/InspectorState.cpp:
  24865. (WebCore::InspectorState::loadFromSettings):
  24866. 2010-10-18 Pavel Feldman <pfeldman@chromium.org>
  24867. Reviewed by Yury Semikhatsky.
  24868. Web Inspector: tab headers on resource panel are 1px off on Mac.
  24869. https://bugs.webkit.org/show_bug.cgi?id=47798
  24870. * inspector/front-end/inspector.css:
  24871. (.tabbed-pane-header li):
  24872. 2010-10-18 Pavel Feldman <pfeldman@chromium.org>
  24873. Not reviewed. Build fix.
  24874. * inspector/InspectorResourceAgent.cpp:
  24875. (WebCore::cachedResourceTypeString):
  24876. 2010-10-17 Pavel Feldman <pfeldman@chromium.org>
  24877. Reviewed by Yury Semikhatsky.
  24878. Web Inspector: Introduce InspectorResourceAgent.h/cpp and ResourceManager.js to
  24879. fill network panel with data.
  24880. https://bugs.webkit.org/show_bug.cgi?id=47779
  24881. InspectorResourceAgent instance / JS part are introduced in this patch. Agent's lifetime is equal
  24882. to the front-end's. This new resource agent does not have state, instead it covers two functions:
  24883. 1) forwards loader client messages to the front-end 2) is capable of building a tree of cached resources.
  24884. (1) feeds network panel with data, (2) shows the resource tree in the new ResourcesPanel concept.
  24885. This bug is for extracting this new InspectorResourceAgent class and its javascript counterpart.
  24886. Once resources panel is refactored for the new concept, InspectorResource, InspectorController's
  24887. resource-related routines, inspector.js's code dealing with resources, they all will be gone.
  24888. * WebCore.gypi:
  24889. * WebCore.vcproj/WebCore.vcproj:
  24890. * inspector/CodeGeneratorInspector.pm:
  24891. * inspector/Inspector.idl:
  24892. * inspector/InspectorApplicationCacheAgent.cpp:
  24893. (WebCore::InspectorApplicationCacheAgent::didReceiveManifestResponse):
  24894. * inspector/InspectorController.cpp:
  24895. (WebCore::InspectorController::connectFrontend):
  24896. (WebCore::InspectorController::releaseFrontendLifetimeAgents):
  24897. (WebCore::InspectorController::didCommitLoad):
  24898. (WebCore::InspectorController::frameDetachedFromParent):
  24899. (WebCore::InspectorController::didLoadResourceFromMemoryCache):
  24900. (WebCore::InspectorController::identifierForInitialRequest):
  24901. (WebCore::InspectorController::willSendRequest):
  24902. (WebCore::InspectorController::markResourceAsCached):
  24903. (WebCore::InspectorController::didReceiveResponse):
  24904. (WebCore::InspectorController::didReceiveContentLength):
  24905. (WebCore::InspectorController::didFinishLoading):
  24906. (WebCore::InspectorController::didFailLoading):
  24907. (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
  24908. (WebCore::InspectorController::scriptImported):
  24909. (WebCore::InspectorController::didCreateWebSocket):
  24910. (WebCore::InspectorController::willSendWebSocketHandshakeRequest):
  24911. (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse):
  24912. (WebCore::InspectorController::didCloseWebSocket):
  24913. * inspector/InspectorController.h:
  24914. * inspector/InspectorResource.cpp:
  24915. (WebCore::InspectorResource::updateResponse):
  24916. (WebCore::cachedResourceType):
  24917. (WebCore::InspectorResource::type):
  24918. (WebCore::InspectorResource::sourceString):
  24919. (WebCore::InspectorResource::sourceBytes):
  24920. (WebCore::InspectorResource::endTiming):
  24921. * inspector/InspectorResourceAgent.cpp:
  24922. (WebCore::InspectorResourceAgent::resourceContent):
  24923. (WebCore::InspectorResourceAgent::resourceContentBase64):
  24924. (WebCore::InspectorResourceAgent::resourceData):
  24925. (WebCore::InspectorResourceAgent::cachedResource):
  24926. (WebCore::buildObjectForHeaders):
  24927. (WebCore::buildObjectForTiming):
  24928. (WebCore::buildObjectForResourceRequest):
  24929. (WebCore::buildObjectForResourceResponse):
  24930. (WebCore::buildObjectForMainResource):
  24931. (WebCore::cachedResourceTypeString):
  24932. (WebCore::buildObjectForCachedResource):
  24933. (WebCore::buildObjectForFrameResources):
  24934. (WebCore::InspectorResourceAgent::~InspectorResourceAgent):
  24935. (WebCore::InspectorResourceAgent::identifierForInitialRequest):
  24936. (WebCore::InspectorResourceAgent::willSendRequest):
  24937. (WebCore::InspectorResourceAgent::markResourceAsCached):
  24938. (WebCore::InspectorResourceAgent::didReceiveResponse):
  24939. (WebCore::InspectorResourceAgent::didReceiveContentLength):
  24940. (WebCore::InspectorResourceAgent::didFinishLoading):
  24941. (WebCore::InspectorResourceAgent::didFailLoading):
  24942. (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
  24943. (WebCore::InspectorResourceAgent::setOverrideContent):
  24944. (WebCore::InspectorResourceAgent::didCommitLoad):
  24945. (WebCore::InspectorResourceAgent::frameDetachedFromParent):
  24946. (WebCore::createReadableStringFromBinary):
  24947. (WebCore::InspectorResourceAgent::didCreateWebSocket):
  24948. (WebCore::InspectorResourceAgent::willSendWebSocketHandshakeRequest):
  24949. (WebCore::InspectorResourceAgent::didReceiveWebSocketHandshakeResponse):
  24950. (WebCore::InspectorResourceAgent::didCloseWebSocket):
  24951. (WebCore::InspectorResourceAgent::cachedResources):
  24952. (WebCore::InspectorResourceAgent::InspectorResourceAgent):
  24953. * inspector/InspectorResourceAgent.h:
  24954. (WebCore::InspectorResourceAgent::create):
  24955. * inspector/InspectorStyleSheet.cpp:
  24956. (WebCore::InspectorStyleSheet::resourceStyleSheetText):
  24957. * inspector/front-end/ExtensionServer.js:
  24958. (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource):
  24959. (WebInspector.ExtensionServer.prototype._onGetResourceContent):
  24960. * inspector/front-end/Resource.js:
  24961. (WebInspector.Resource.prototype.get responseReceivedTime):
  24962. (WebInspector.Resource.prototype.set endTime):
  24963. * inspector/front-end/Settings.js:
  24964. * inspector/front-end/SourceView.js:
  24965. (WebInspector.SourceView.prototype.setupSourceFrameIfNeeded):
  24966. * inspector/front-end/WebKit.qrc:
  24967. * inspector/front-end/inspector.css:
  24968. (.tabbed-pane-header li):
  24969. * inspector/front-end/inspector.html:
  24970. * inspector/front-end/inspector.js:
  24971. (WebInspector.updateResource):
  24972. * loader/ResourceLoadNotifier.cpp:
  24973. (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
  24974. * loader/appcache/ApplicationCacheGroup.cpp:
  24975. (WebCore::ApplicationCacheGroup::didReceiveResponse):
  24976. 2010-10-16 Pavel Feldman <pfeldman@chromium.org>
  24977. Reviewed by Yury Semikhatsky.
  24978. Web Inspector: brush up URL parsing on the front-end.
  24979. https://bugs.webkit.org/show_bug.cgi?id=47772
  24980. * inspector/InspectorResource.cpp:
  24981. (WebCore::InspectorResource::updateScriptObject):
  24982. * inspector/front-end/AuditRules.js:
  24983. (WebInspector.AuditRules.getDomainToResourcesMap):
  24984. (WebInspector.AuditRules.CombineExternalResourcesRule.prototype.doRun):
  24985. (WebInspector.AuditRules.MinimizeDnsLookupsRule.prototype.doRun):
  24986. (WebInspector.AuditRules.ParallelizeDownloadRule.prototype.doRun):
  24987. (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
  24988. (WebInspector.AuditRules.CookieSizeRule.prototype.processCookies):
  24989. (WebInspector.AuditRules.StaticCookielessRule.prototype.processCookies):
  24990. * inspector/front-end/CookieItemsView.js:
  24991. (WebInspector.CookieItemsView.prototype._filterCookiesForDomain):
  24992. * inspector/front-end/DOMAgent.js:
  24993. (WebInspector.Cookies.cookieMatchesResourceURL):
  24994. * inspector/front-end/Resource.js:
  24995. (WebInspector.Resource):
  24996. (WebInspector.Resource.prototype.set url):
  24997. (WebInspector.Resource.prototype.get displayName):
  24998. * inspector/front-end/ResourceCategory.js:
  24999. (WebInspector.ResourceCategory.prototype.addResource):
  25000. * inspector/front-end/ResourceView.js:
  25001. (WebInspector.ResourceView):
  25002. * inspector/front-end/inspector.js:
  25003. (WebInspector.documentClick.followLink):
  25004. (WebInspector.documentClick):
  25005. (WebInspector.updateResource):
  25006. (WebInspector.linkifyStringAsFragment):
  25007. (WebInspector.resourceURLForRelatedNode):
  25008. (WebInspector.completeURL):
  25009. * inspector/front-end/utilities.js:
  25010. (String.prototype.asParsedURL):
  25011. 2010-10-17 Andreas Kling <kling@webkit.org>
  25012. Reviewed by Kenneth Rohde Christiansen.
  25013. [Qt] Support custom open() verbs/methods in XMLHttpRequest
  25014. https://bugs.webkit.org/show_bug.cgi?id=40476
  25015. Fall back to QNetworkAccessManager::CustomOperation for any HTTP verb
  25016. that's not specifically supported by QNetworkAccessManager.
  25017. This prevents the infinite loop that otherwise occurs after sending
  25018. an UnknownOperation request.
  25019. This change is covered by existing (skipped) tests that will be
  25020. unskipped once the Qt bots are running Qt 4.7.
  25021. * platform/network/qt/QNetworkReplyHandler.cpp:
  25022. (WebCore::QNetworkReplyHandler::httpMethod):
  25023. (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
  25024. (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
  25025. * platform/network/qt/QNetworkReplyHandler.h:
  25026. 2010-10-17 Adam Barth <abarth@webkit.org>
  25027. Reviewed by Dimitri Glazkov.
  25028. Remove explicit passing of user gesture in NavigationScheduler
  25029. https://bugs.webkit.org/show_bug.cgi?id=47786
  25030. As requested by Mr. Glazkov, remove more explicit passing of the user
  25031. gesture state. We now use a static to pass this information around.
  25032. * bindings/generic/BindingFrame.h:
  25033. (WebCore::::navigateIfAllowed):
  25034. * bindings/js/JSDOMWindowCustom.cpp:
  25035. (WebCore::JSDOMWindow::setLocation):
  25036. * bindings/js/JSLocationCustom.cpp:
  25037. (WebCore::JSLocation::reload):
  25038. * bindings/v8/custom/V8LocationCustom.cpp:
  25039. (WebCore::V8Location::reloadCallback):
  25040. * inspector/InspectorController.cpp:
  25041. (WebCore::InspectorController::setResourceTrackingEnabled):
  25042. (WebCore::InspectorController::reloadPage):
  25043. * loader/NavigationScheduler.cpp:
  25044. (WebCore::ScheduledNavigation::ScheduledNavigation):
  25045. (WebCore::ScheduledURLNavigation::ScheduledURLNavigation):
  25046. (WebCore::ScheduledRedirect::ScheduledRedirect):
  25047. (WebCore::ScheduledLocationChange::ScheduledLocationChange):
  25048. (WebCore::ScheduledRefresh::ScheduledRefresh):
  25049. (WebCore::ScheduledHistoryNavigation::ScheduledHistoryNavigation):
  25050. (WebCore::ScheduledFormSubmission::ScheduledFormSubmission):
  25051. (WebCore::NavigationScheduler::scheduleRedirect):
  25052. (WebCore::NavigationScheduler::mustLockBackForwardList):
  25053. (WebCore::NavigationScheduler::scheduleLocationChange):
  25054. (WebCore::NavigationScheduler::scheduleFormSubmission):
  25055. (WebCore::NavigationScheduler::scheduleRefresh):
  25056. (WebCore::NavigationScheduler::scheduleHistoryNavigation):
  25057. * loader/NavigationScheduler.h:
  25058. * loader/SubframeLoader.cpp:
  25059. (WebCore::SubframeLoader::loadOrRedirectSubframe):
  25060. 2010-10-17 Julien Chaffraix <jchaffraix@codeaurora.org>
  25061. Reviewed by Andreas Kling.
  25062. 'transparent' should be a valid color
  25063. https://bugs.webkit.org/show_bug.cgi?id=45482
  25064. Test: svg/animations/svg-animate-color-transparent.svg
  25065. Based on previous work by Jan Erik Hanssen <jhanssen@codeaurora.org>
  25066. * platform/ColorData.gperf: Added 'transparent' to the list of colors.
  25067. Added the alpha to all the colors as it was needed to support the new color.
  25068. * platform/graphics/Color.cpp:
  25069. (WebCore::Color::Color):
  25070. (WebCore::Color::setNamedColor): Avoid setting the alpha as now it is not
  25071. always 0xFF.
  25072. 2010-10-17 Justin Schuh <jschuh@chromium.org>
  25073. Reviewed by Nikolas Zimmermann.
  25074. Duplicate use element children in shadow tree.
  25075. https://bugs.webkit.org/show_bug.cgi?id=47561
  25076. Test: svg/custom/use-nested-children.svg
  25077. * svg/SVGUseElement.cpp:
  25078. (WebCore::SVGUseElement::expandUseElementsInShadowTree):
  25079. 2010-10-17 Hyung Song <beergun@company100.net>
  25080. Reviewed by David Levin.
  25081. Add !SINGLE_THREADED guard.
  25082. https://bugs.webkit.org/show_bug.cgi?id=47608
  25083. For SINGLE_THREADED ports LockingMutex.tryLock() returns false.
  25084. This will prevent interrupt() from falling into infinite loop.
  25085. * platform/sql/SQLiteDatabase.cpp:
  25086. (WebCore::SQLiteDatabase::interrupt):
  25087. 2010-10-17 Simon Fraser <simon.fraser@apple.com>
  25088. Reviewed by Nikolas Zimmermann.
  25089. Very large and small numbers fail to round-trip through CSS
  25090. https://bugs.webkit.org/show_bug.cgi?id=20674
  25091. Use the new DecimalNumber functionality to convert CSS numberic values to strings
  25092. using decimal notation, rather than %g (which can output scientific notation).
  25093. Test: fast/css/round-trip-values.html
  25094. * css/CSSPrimitiveValue.cpp:
  25095. (WebCore::formatNumber):
  25096. (WebCore::CSSPrimitiveValue::cssText):
  25097. 2010-10-17 Cosmin Truta <ctruta@chromium.org>
  25098. Reviewed by Nikolas Zimmermann.
  25099. Crash while processing ill-formed SVG with cycles
  25100. https://bugs.webkit.org/show_bug.cgi?id=47498
  25101. Test: svg/custom/invalid-paint-shape-mask.svg
  25102. * rendering/SVGResources.cpp:
  25103. (paintingResourceFromSVGPaint): Ensured that the painting resource is
  25104. either a pattern resource or a gradient resource.
  25105. (SVGResources::setClipper):
  25106. (SVGResources::setFilter):
  25107. (SVGResources::setMarkerStart):
  25108. (SVGResources::setMarkerMid):
  25109. (SVGResources::setMarkerEnd):
  25110. (SVGResources::setMasker):
  25111. (SVGResources::setFill):
  25112. (SVGResources::setStroke): Added ASSERT statements for previously-unchecked
  25113. preconditions.
  25114. 2010-10-17 Alex Milowski <alex@milowski.com>
  25115. Reviewed by Kenneth Rohde Christiansen.
  25116. Fixed extra whitespace above operators when they aren't stretched
  25117. yet the stretch height is large. Also, the baseline alignment
  25118. was changed so that rows and operators interact appropriately now
  25119. that operators don't have the extra white space.
  25120. * mathml/RenderMathMLOperator.cpp:
  25121. * mathml/RenderMathMLRow.cpp:
  25122. 2010-10-17 Viatcheslav Ostapenko <ostapenko.viatcheslav@nokia.com>
  25123. Reviewed by Antonio Gomes.
  25124. [Qt] Fix focusing of control elements on mouse click.
  25125. Brings GTK fix to Qt platform.
  25126. https://bugs.webkit.org/show_bug.cgi?id=40641
  25127. Test: fast/events/click-focus-control.html
  25128. * html/HTMLFormControlElement.cpp:
  25129. (WebCore::HTMLFormControlElement::isMouseFocusable):
  25130. 2010-10-17 Adam Barth <abarth@webkit.org>
  25131. Reviewed by Dimitri Glazkov.
  25132. FrameLoader doesn't need an explicit userGesture parameter
  25133. https://bugs.webkit.org/show_bug.cgi?id=47777
  25134. We used to pass around the user gesture state explicitly. Now we use
  25135. static state. Explicitly passing the user gesture state to FrameLoader
  25136. in these methods is pretty out-dated.
  25137. * bindings/ScriptControllerBase.cpp:
  25138. (WebCore::ScriptController::executeIfJavaScriptURL):
  25139. * bindings/generic/BindingDOMWindow.h:
  25140. (WebCore::::createWindow):
  25141. (WebCore::::open):
  25142. * bindings/js/JSDOMWindowCustom.cpp:
  25143. (WebCore::createWindow):
  25144. (WebCore::JSDOMWindow::open):
  25145. * bindings/js/JSDocumentCustom.cpp:
  25146. (WebCore::JSDocument::setLocation):
  25147. * bindings/js/ScriptController.h:
  25148. * bindings/v8/ScriptController.h:
  25149. * html/HTMLAnchorElement.cpp:
  25150. (WebCore::handleLinkClick):
  25151. * inspector/InspectorController.cpp:
  25152. (WebCore::InspectorController::openInInspectedWindow):
  25153. * loader/FrameLoader.cpp:
  25154. (WebCore::FrameLoader::changeLocation):
  25155. (WebCore::FrameLoader::urlSelected):
  25156. (WebCore::FrameLoader::submitForm):
  25157. * loader/FrameLoader.h:
  25158. * loader/NavigationScheduler.cpp:
  25159. (WebCore::ScheduledURLNavigation::fire):
  25160. (WebCore::ScheduledRefresh::fire):
  25161. (WebCore::ScheduledHistoryNavigation::fire):
  25162. (WebCore::NavigationScheduler::scheduleLocationChange):
  25163. 2010-10-17 Sergey A. Sukiyazov <sergey.sukiyazov@gmail.com>
  25164. Reviewed by Andreas Kling
  25165. [Qt] Hovering the mouse over links produce a trail of underlined links (X11 paint engine)
  25166. https://bugs.webkit.org/show_bug.cgi?id=42248
  25167. The problem will appear because coordinates of points may increase by 0.05f (if line width is odd) inside
  25168. method GraphicsContext::adjustLineToPixelBoundaries(...) and become outside of text bounding rect htere,
  25169. then the new point coordinates will be passed to Qt graphics engine.
  25170. The solution decreases Y cordinates of points inside drawLineForText(...) method only if Qt graphics engine
  25171. is X11. The Y coordinates will be increase by 0.5f inside method adjustLineToPixelBoundaries(...), which
  25172. called from drawLine(...), and then inside Qt painting engine will be rounded to next greater integer value.
  25173. NOTE: This changes will affect only Qt X11 verision and if only X11 Painting Engine will be used.
  25174. No new tests.
  25175. * platform/graphics/qt/GraphicsContextQt.cpp:
  25176. (WebCore::GraphicsContext::drawLineForText):
  25177. 2010-10-17 Rob Buis <rwlbuis@gmail.com>
  25178. Reviewed by Dirk Schulze.
  25179. Text under nested link dropped
  25180. https://bugs.webkit.org/show_bug.cgi?id=46460
  25181. Allow links inside of tspan and textPath elements.
  25182. * svg/SVGTSpanElement.cpp:
  25183. (WebCore::SVGTSpanElement::childShouldCreateRenderer):
  25184. * svg/SVGTextPathElement.cpp:
  25185. (WebCore::SVGTextPathElement::childShouldCreateRenderer):
  25186. 2010-10-16 Kwang Yul Seo <skyul@company100.net>
  25187. Reviewed by Kent Tamura.
  25188. [BREWMP] Port TextCodec
  25189. https://bugs.webkit.org/show_bug.cgi?id=45797
  25190. Implement TextCodec with Brew MP's ICharsetConv.
  25191. Only UTF-8 is supported for now.
  25192. * platform/text/TextEncoding.cpp:
  25193. (WebCore::TextEncoding::encode):
  25194. * platform/text/TextEncodingRegistry.cpp:
  25195. (WebCore::buildBaseTextCodecMaps):
  25196. * platform/text/brew/TextCodecBrew.cpp: Added.
  25197. (WebCore::newTextCodecBrew):
  25198. (WebCore::TextCodecBrew::registerBaseEncodingNames):
  25199. (WebCore::TextCodecBrew::registerBaseCodecs):
  25200. (WebCore::TextCodecBrew::registerExtendedEncodingNames):
  25201. (WebCore::TextCodecBrew::registerExtendedCodecs):
  25202. (WebCore::TextCodecBrew::TextCodecBrew):
  25203. (WebCore::TextCodecBrew::~TextCodecBrew):
  25204. (WebCore::TextCodecBrew::decode):
  25205. (WebCore::TextCodecBrew::encode):
  25206. * platform/text/brew/TextCodecBrew.h: Added.
  25207. 2010-10-16 Patrick Gansterer <paroga@webkit.org>
  25208. Unreviewed.
  25209. Build fix for !ENABLE(INSPECTOR) after r69844.
  25210. * inspector/InspectorState.h: Added ENABLE(INSPECTOR) guard.
  25211. 2010-10-16 Patrick Gansterer <paroga@webkit.org>
  25212. Unreviewed, build fix.
  25213. WinCE build fix for r69798.
  25214. * platform/text/wince/TextCodecWinCE.cpp: Added missing include.
  25215. 2010-10-16 Johnny Ding <jnd@chromium.org>
  25216. Reviewed by Adam Barth.
  25217. Requires a user gesture when opening file choose dialog.
  25218. https://bugs.webkit.org/show_bug.cgi?id=47593
  25219. Test: fast/forms/input-file-not-open-without-gesture.html
  25220. * rendering/RenderFileUploadControl.cpp:
  25221. (WebCore::RenderFileUploadControl::click):
  25222. 2010-10-16 Alex Milowski <alex@milowski.com>
  25223. Reviewed by Kenneth Rohde Christiansen.
  25224. Changed the vertical alignment within mfenced to baseline to
  25225. match the rest of the containers (e.g. mrow) and adjusted the
  25226. operator spacing to 0.1em.
  25227. Test: mathml/presentation/fenced-mi.xhtml
  25228. * css/mathml.css:
  25229. * mathml/RenderMathMLFenced.cpp:
  25230. 2010-10-16 Patrick Gansterer <paroga@webkit.org>
  25231. Reviewed by Adam Barth.
  25232. Rename StringHasherFunctions.h to StringHasher.h
  25233. https://bugs.webkit.org/show_bug.cgi?id=47200
  25234. * ForwardingHeaders/wtf/StringHashFunctions.h: Removed.
  25235. * ForwardingHeaders/wtf/StringHasher.h: Copied from WebCore/ForwardingHeaders/wtf/StringHashFunctions.h.
  25236. 2010-10-15 Ryosuke Niwa <rniwa@webkit.org>
  25237. Reviewed by Darin Adler.
  25238. unlink removes inline style of anchor elements
  25239. https://bugs.webkit.org/show_bug.cgi?id=47424
  25240. The bug was caused by our not extracting styles when the anchor element is removed by removeInlineStyle.
  25241. Because we removed the element without pushing its inline style down, we lost style information.
  25242. Fixed the bug by pushing down styles in removeInlineStyle as done in pushDownInlineStyleAroundNode.
  25243. Also fixed a bug in addInlineStyleIfNeeded where StyleChange incorrectly removed styles of the container
  25244. node as supposed to that of startNode from the style to apply when startNode is not an element.
  25245. Test: editing/execCommand/toggle-unlink.html
  25246. * editing/ApplyStyleCommand.cpp:
  25247. (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): To prevent a similar bug in the future,
  25248. added an assert that extractedStyle is specified whenever we're removing a styled element.
  25249. (WebCore::ApplyStyleCommand::removeInlineStyle):
  25250. (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
  25251. 2010-10-15 Ryosuke Niwa <rniwa@webkit.org>
  25252. Reviewed by Tony Chang.
  25253. serializeNodesWithNamespaces should be in MarkupAccumulator
  25254. https://bugs.webkit.org/show_bug.cgi?id=47749
  25255. Moved serializeNodesWithNamespaces to MarkupAccumulator, and renamed it to serializeNodes.
  25256. MarkupAccumulator::serializeNode now returns the resultant string instead of having a separate takeResults().
  25257. Added several helper functions to MarkupAccumulator.
  25258. No new tests are added since this is a cleanup.
  25259. * editing/MarkupAccumulator.cpp:
  25260. (WebCore::MarkupAccumulator::serializeNodes): Wrapper for serializeNodes and concatenateMarkup.
  25261. (WebCore::MarkupAccumulator::serializeNodesWithNamespaces): Moved from markup.cpp
  25262. (WebCore::MarkupAccumulator::appendStartTag): Calls appendString instead of appending into m_succeedingMarkup directly.
  25263. (WebCore::MarkupAccumulator::appendEndTag): Ditto.
  25264. (WebCore::MarkupAccumulator::totalLength): Added; extracted from takeResults.
  25265. (WebCore::MarkupAccumulator::concatenateMarkup): Ditto.
  25266. * editing/MarkupAccumulator.h:
  25267. (WebCore::MarkupAccumulator::length): Added; calls totalLength.
  25268. * editing/markup.cpp:
  25269. (WebCore::StyledMarkupAccumulator::appendString): Added; calls MarkupAccumulator's appendString.
  25270. (WebCore::StyledMarkupAccumulator::wrapWithStyleNode): Calls appendString.
  25271. (WebCore::StyledMarkupAccumulator::takeResults): Calls length, totalLength, and concatenateMarkup.
  25272. (WebCore::StyledMarkupAccumulator::serializeNodes): Became a member function.
  25273. (WebCore::createMarkup): Uses MarkupAccumulator.
  25274. 2010-10-15 Kinuko Yasuda <kinuko@google.com>
  25275. Reviewed by Jian Li.
  25276. Implement FileEntrySync.file() in FileSystem API
  25277. https://bugs.webkit.org/show_bug.cgi?id=47310
  25278. Tests: fast/filesystem/workers/file-from-file-entry-sync.html
  25279. fast/filesystem/workers/file-from-file-entry.html
  25280. * fileapi/DOMFileSystem.cpp:
  25281. (WebCore::DOMFileSystem::createFile): Added.
  25282. * fileapi/DOMFileSystem.h:
  25283. * fileapi/DOMFileSystemSync.cpp:
  25284. (WebCore::DOMFileSystemSync::createFile): Added.
  25285. * fileapi/DOMFileSystemSync.h:
  25286. * fileapi/DirectoryReaderBase.h: Added 'virtual path' comment.
  25287. * fileapi/EntryBase.h: Added 'virtual path' comment.
  25288. * fileapi/FileEntry.cpp:
  25289. (WebCore::FileEntry::file): Changed to use DOMFileSystem::createFile.
  25290. * fileapi/FileEntrySync.cpp:
  25291. (WebCore::FileEntrySync::file): Implemented.
  25292. * fileapi/FileEntrySync.h:
  25293. * fileapi/FileEntrySync.idl: Added file().
  25294. 2010-10-15 Nico Weber <thakis@chromium.org>
  25295. Reviewed by Eric Carlson.
  25296. Make sure to update the current graphics context when calling out to AppKit.
  25297. https://bugs.webkit.org/show_bug.cgi?id=47757
  25298. Like r57741, but for the spellchecking highlight
  25299. * platform/graphics/mac/GraphicsContextMac.mm:
  25300. (WebCore::GraphicsContext::drawLineForTextChecking):
  25301. 2010-10-15 Brian Weinstein <bweinstein@apple.com>
  25302. Reviewed by Sam Weinig.
  25303. REGRESSION(r69850) Loading apple.com/startpage in WebKit on Windows gets a bad request.
  25304. https://bugs.webkit.org/show_bug.cgi?id=47753
  25305. <rdar://problem/8558242>
  25306. r69850 switched over to a different way of concatenating WebCore strings, but ran into an issue
  25307. where some Windows calls were returning null terminated strings, and this breaks the new
  25308. method of concatenation.
  25309. GetLocaleInfo returns a null-terminated string, but WebCore strings are non-null terminated,
  25310. so once we create our WebCore string, we want to trim off the null terminating character before
  25311. we return the localeInfo.
  25312. Test: fast/dom/navigator-userAgent.html
  25313. * platform/win/Language.cpp:
  25314. (WebCore::localeInfo):
  25315. 2010-10-15 Alexey Proskuryakov <ap@apple.com>
  25316. Trying to fix crashes on Leopard buildbot.
  25317. * loader/loader.cpp:
  25318. (WebCore::Loader::Host::didFinishLoading):
  25319. (WebCore::Loader::Host::didFail):
  25320. Moved logging higher in the function - it seems that CachedResource can be already destroyed.
  25321. * platform/Logging.cpp: (WebCore::getChannelFromName):
  25322. * platform/mac/LoggingMac.mm: (WebCore::InitializeLoggingChannelsIfNecessary):
  25323. Initialize the new channel (oops).
  25324. 2010-10-15 Mike Lawther <mikelawther@chromium.org>
  25325. Reviewed by James Robinson.
  25326. Prevent scrollbars from appearing in iframes with scrolling=no
  25327. when the embedded content has overflow:scroll set on the html
  25328. or body tags.
  25329. iframes keep getting scrollbars with scrolling="no"
  25330. https://bugs.webkit.org/show_bug.cgi?id=29240
  25331. Test: fast/frames/iframe-scrolling-attribute-overflowscroll.html
  25332. * page/FrameView.cpp:
  25333. (WebCore::FrameView::calculateScrollbarModesForLayout)
  25334. (WebCore::FrameView::updateCanHaveScrollbars):
  25335. (WebCore::FrameView::layout):
  25336. * page/FrameView.h:
  25337. (WebCore::FrameView::calculateScrollbarModesForLayout)
  25338. 2010-10-15 Dan Bernstein <mitz@apple.com>
  25339. Reviewed by Adele Peterson.
  25340. Clean up RenderFlexibleBox::applyLineClamp()
  25341. https://bugs.webkit.org/show_bug.cgi?id=47743
  25342. * rendering/RenderFlexibleBox.cpp:
  25343. (WebCore::RenderFlexibleBox::applyLineClamp):
  25344. 2010-10-15 Alexey Proskuryakov <ap@apple.com>
  25345. Reviewed by Darin Adler.
  25346. https://bugs.webkit.org/show_bug.cgi?id=47736
  25347. <rdar://problem/8429396> WebCore cache gets corrupted if revalidation request starts at an inopportune time
  25348. Test: http/tests/cache/stopped-revalidation.html
  25349. * loader/loader.cpp: (WebCore::Loader::Host::servePendingRequests): Copied logic for
  25350. revalidation requests from didFail().
  25351. 2010-10-15 Alexey Proskuryakov <ap@apple.com>
  25352. Reviewed by Darin Adler in <https://bugs.webkit.org/show_bug.cgi?id=47736>.
  25353. Add a logging channel for WebCore cache and resource loading.
  25354. Test: http/tests/cache/stopped-revalidation.html
  25355. * platform/Logging.cpp:
  25356. * platform/Logging.h:
  25357. Added a logging channel for Cache and Loader.
  25358. * loader/Cache.cpp:
  25359. (WebCore::Cache::requestResource):
  25360. (WebCore::Cache::revalidateResource):
  25361. (WebCore::Cache::revalidationFailed):
  25362. (WebCore::Cache::evict):
  25363. * loader/CachedResource.cpp:
  25364. (WebCore::CachedResource::setResourceToRevalidate):
  25365. (WebCore::CachedResource::switchClientsToRevalidatedResource):
  25366. (WebCore::CachedResource::mustRevalidate):
  25367. Added logging.
  25368. * loader/loader.cpp:
  25369. (WebCore::Loader::load): Added logging.
  25370. (WebCore::Loader::scheduleServePendingRequests): Ditto.
  25371. (WebCore::Loader::requestTimerFired): Ditto.
  25372. (WebCore::Loader::servePendingRequests): Ditto.
  25373. (WebCore::Loader::Host::servePendingRequests): Changed logging to use the new channel.
  25374. (WebCore::Loader::Host::didFinishLoading): Changed logging to use the new channel.
  25375. (WebCore::Loader::Host::didFail): Added logging.
  25376. 2010-10-15 No'am Rosenthal <noam.rosenthal@nokia.com>
  25377. Reviewed by Simon Fraser.
  25378. Add public functions to serialize TransformOperations.
  25379. https://bugs.webkit.org/show_bug.cgi?id=47728
  25380. Added public accessors to the internal data of the TransformOperations.
  25381. No new tests. These functions are enablers for WebKit2.
  25382. * platform/graphics/transforms/Matrix3DTransformOperation.h:
  25383. (WebCore::Matrix3DTransformOperation::matrix):
  25384. * platform/graphics/transforms/MatrixTransformOperation.h:
  25385. (WebCore::MatrixTransformOperation::matrix):
  25386. * platform/graphics/transforms/PerspectiveTransformOperation.h:
  25387. (WebCore::PerspectiveTransformOperation::perspective):
  25388. * platform/graphics/transforms/RotateTransformOperation.h:
  25389. (WebCore::RotateTransformOperation::x):
  25390. (WebCore::RotateTransformOperation::y):
  25391. (WebCore::RotateTransformOperation::z):
  25392. * platform/graphics/transforms/SkewTransformOperation.h:
  25393. (WebCore::SkewTransformOperation::angleX):
  25394. (WebCore::SkewTransformOperation::angleY):
  25395. * platform/graphics/transforms/TranslateTransformOperation.h:
  25396. (WebCore::TranslateTransformOperation::x):
  25397. (WebCore::TranslateTransformOperation::y):
  25398. (WebCore::TranslateTransformOperation::z):
  25399. 2010-10-15 Jian Li <jianli@chromium.org>
  25400. Reviewed by Dmitry Titov.
  25401. FileReader.readAsDataURL should take Blob object
  25402. https://bugs.webkit.org/show_bug.cgi?id=47679
  25403. Test cases have been added into read-blob-test-cases.js.
  25404. * fileapi/FileReader.idl: Update per the latest File API spec.
  25405. 2010-10-15 Adam Barth <abarth@webkit.org>
  25406. Reviewed by Eric Seidel.
  25407. Move MarkupAccumulator from markup.cpp to its own file
  25408. https://bugs.webkit.org/show_bug.cgi?id=47734
  25409. This patch moves the MarkupAccumulator class into its own file.
  25410. There's a lot of clean up left to do, but this patch is a step in the
  25411. right direction.
  25412. No behavior change.
  25413. * Android.mk:
  25414. * CMakeLists.txt:
  25415. * GNUmakefile.am:
  25416. * WebCore.gypi:
  25417. * WebCore.pro:
  25418. * WebCore.vcproj/WebCore.vcproj:
  25419. * WebCore.xcodeproj/project.pbxproj:
  25420. * editing/markup.cpp:
  25421. (WebCore::elementCannotHaveEndTag):
  25422. * editing/markup.h:
  25423. * editing/MarkupAccumulator.h: Added.
  25424. * editing/MarkupAccumulator.cpp: Added.
  25425. 2010-10-15 Ryosuke Niwa <rniwa@webkit.org>
  25426. Reviewed by Darin Adler.
  25427. Match the elements supported by execCommand('formatBlock') and queryCommandValue('formatBlock')
  25428. https://bugs.webkit.org/show_bug.cgi?id=47712
  25429. Extended queryCommandValue('formatBlock', false, null) to support article, aside, blockquote, dd, dl,
  25430. div, dl, dt, dl, footer, header, hgroup, nav, and section. Because this makes isElementForFormatBlockCommand
  25431. in Editor.cpp and FormatBlockCommand::isElementToApplyInFormatBlockCommand identical, they are merged and moved
  25432. to FormatBlockCommand.cpp
  25433. Tests are added to editing/execCommand/query-format-block.html
  25434. * editing/Editor.cpp: Removed isElementForFormatBlockCommand and Editor::elementForFormatBlockCommand.
  25435. * editing/Editor.h:
  25436. * editing/EditorCommand.cpp:
  25437. (WebCore::executeFormatBlock): Removed the check of tag name; the check is moved into FormatBlockCommand.
  25438. (WebCore::valueFormatBlock): Calls FormatBlockCommand::elementForFormatBlockCommand.
  25439. * editing/FormatBlockCommand.cpp:
  25440. (WebCore::isElementForFormatBlock):
  25441. (WebCore::FormatBlockCommand::FormatBlockCommand):
  25442. (WebCore::FormatBlockCommand::formatSelection): Added to check the tag name. Exit early if the specified tag name
  25443. is not what FormatBlock should apply. Set m_didApply true if m_didApply did apply the element.
  25444. (WebCore::FormatBlockCommand::formatRange): Moved from Editor.cpp. Takes Range* instead of accessing selection directly.
  25445. (WebCore::FormatBlockCommand::elementForFormatBlockCommand): Moved from Editor.cpp
  25446. (WebCore::enclosingBlockToSplitTreeTo): Calls isElementForFormatBlock.
  25447. * editing/FormatBlockCommand.h:
  25448. (WebCore::FormatBlockCommand::didApply): Added.
  25449. 2010-10-15 Dirk Schulze <krit@webkit.org>
  25450. Reviewed by Nikolas Zimmermann.
  25451. carto.net Dock example redraws *way* too often
  25452. https://bugs.webkit.org/show_bug.cgi?id=16090
  25453. Setting the attributes x, y, width or height shouldn't cause a repaint if the image boundaries don't change.
  25454. Added updateFromElement() to RenderSVGImage that checks if the old boundaries match the new boundaries after
  25455. setting one of the attributes of above. Mark renderer for layout (and therefore repaint) if the boundaries
  25456. differ, do nothing if not.
  25457. Also added caching of the repaint rect to avoid multiple calculations.
  25458. Test: svg/custom/repaint-on-constant-size-change.svg
  25459. * rendering/RenderSVGImage.cpp:
  25460. (WebCore::RenderSVGImage::RenderSVGImage):
  25461. (WebCore::RenderSVGImage::layout): Update repaint rect on layout.
  25462. (WebCore::RenderSVGImage::updateFromElement): Check SVGImageElement for boundaries update.
  25463. * rendering/RenderSVGImage.h:
  25464. (WebCore::RenderSVGImage::repaintRectInLocalCoordinates): Return the cached repaint rect.
  25465. * svg/SVGImageElement.cpp:
  25466. (WebCore::SVGImageElement::svgAttributeChanged): Call updateFromElement() on changes to x, y, width or height.
  25467. 2010-10-15 Martin Robinson <mrobinson@igalia.com>
  25468. Build fix for GTK+.
  25469. * platform/network/soup/cache/webkit/soup-cache.h: Do not use PLATFORM(...) macro
  25470. in a file that does not include config.h
  25471. 2010-10-15 Anders Carlsson <andersca@apple.com>
  25472. Reviewed by Sam Weinig.
  25473. Add FindIndicatorWindow class
  25474. https://bugs.webkit.org/show_bug.cgi?id=47731
  25475. Export symbols needed by the FindIndicator in WebKit2.
  25476. * WebCore.exp.in:
  25477. 2010-10-15 Leandro Pereira <leandro@profusion.mobi>
  25478. [EFL] Unreviewed. Build fix.
  25479. Add new files needed by the Soup network backend, and #ifdef a
  25480. GTK+-port only include in soup-cache.h.
  25481. * CMakeListsEfl.txt:
  25482. * platform/network/soup/cache/webkit/soup-cache.h:
  25483. 2010-10-14 Darin Adler <darin@apple.com>
  25484. Reviewed by Alexey Proskuryakov.
  25485. Use more specific types for node pointers, especially when calling node insertion and removal functions
  25486. https://bugs.webkit.org/show_bug.cgi?id=47702
  25487. Refactoring. No new tests.
  25488. While developing this patch I temporarily removed the node insertion and
  25489. removal member functions from the Node class and fixed almost all call sites
  25490. so they call it directly on the ContainerNode class, which will be important
  25491. once we make the functions non-virtual.
  25492. * css/CSSStyleSelector.cpp:
  25493. (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
  25494. * dom/ContainerNode.cpp:
  25495. (WebCore::ContainerNode::insertBefore):
  25496. (WebCore::ContainerNode::replaceChild):
  25497. (WebCore::ContainerNode::appendChild):
  25498. * dom/Document.cpp:
  25499. (WebCore::Document::caretRangeFromPoint):
  25500. * dom/DynamicNodeList.cpp:
  25501. (WebCore::DynamicNodeList::itemWithName):
  25502. * dom/Position.cpp:
  25503. (WebCore::Position::previous):
  25504. (WebCore::Position::next):
  25505. * dom/Text.cpp:
  25506. (WebCore::Text::replaceWholeText):
  25507. * dom/TreeWalker.cpp:
  25508. (WebCore::TreeWalker::firstChild):
  25509. (WebCore::TreeWalker::lastChild):
  25510. (WebCore::TreeWalker::previousNode):
  25511. * dom/XMLDocumentParserLibxml2.cpp:
  25512. (WebCore::XMLDocumentParser::XMLDocumentParser):
  25513. * editing/BreakBlockquoteCommand.cpp:
  25514. (WebCore::BreakBlockquoteCommand::doApply):
  25515. * editing/CompositeEditCommand.h:
  25516. * editing/DeleteButtonController.cpp:
  25517. (WebCore::isDeletableElement):
  25518. * editing/IndentOutdentCommand.cpp:
  25519. (WebCore::IndentOutdentCommand::outdentParagraph):
  25520. * editing/InsertNodeBeforeCommand.cpp:
  25521. (WebCore::InsertNodeBeforeCommand::doApply):
  25522. * editing/JoinTextNodesCommand.cpp:
  25523. (WebCore::JoinTextNodesCommand::doApply):
  25524. (WebCore::JoinTextNodesCommand::doUnapply):
  25525. * editing/MergeIdenticalElementsCommand.cpp:
  25526. (WebCore::MergeIdenticalElementsCommand::doUnapply):
  25527. * editing/RemoveNodeCommand.cpp:
  25528. (WebCore::RemoveNodeCommand::doApply):
  25529. (WebCore::RemoveNodeCommand::doUnapply):
  25530. * editing/RemoveNodeCommand.h:
  25531. * editing/SplitElementCommand.cpp:
  25532. (WebCore::SplitElementCommand::executeApply):
  25533. * editing/SplitTextNodeCommand.cpp:
  25534. (WebCore::SplitTextNodeCommand::doApply):
  25535. (WebCore::SplitTextNodeCommand::doReapply):
  25536. * editing/TextIterator.cpp:
  25537. (WebCore::parentCrossingShadowBoundaries):
  25538. * editing/htmlediting.cpp:
  25539. (WebCore::enclosingList):
  25540. * editing/markup.cpp:
  25541. (WebCore::serializeNodes):
  25542. (WebCore::ancestorToRetainStructureAndAppearance):
  25543. (WebCore::createMarkup):
  25544. * html/HTMLAreaElement.cpp:
  25545. (WebCore::HTMLAreaElement::updateFocusAppearance):
  25546. * html/HTMLEmbedElement.cpp:
  25547. (WebCore::HTMLEmbedElement::rendererIsNeeded):
  25548. * html/HTMLFormElement.cpp:
  25549. (WebCore::HTMLFormElement::rendererIsNeeded):
  25550. * html/HTMLFrameSetElement.cpp:
  25551. (WebCore::HTMLFrameSetElement::attach):
  25552. * html/HTMLImageElement.cpp:
  25553. (WebCore::HTMLImageElement::insertedIntoTree):
  25554. * html/HTMLLegendElement.cpp:
  25555. (WebCore::HTMLLegendElement::associatedControl):
  25556. * html/HTMLOptGroupElement.cpp:
  25557. (WebCore::HTMLOptGroupElement::recalcSelectOptions):
  25558. (WebCore::HTMLOptGroupElement::ownerSelectElement):
  25559. * html/HTMLOptionElement.cpp:
  25560. (WebCore::HTMLOptionElement::ownerSelectElement):
  25561. * html/HTMLTableCellElement.cpp:
  25562. (WebCore::HTMLTableCellElement::additionalAttributeStyleDecls):
  25563. * html/HTMLTableColElement.cpp:
  25564. (WebCore::HTMLTableColElement::additionalAttributeStyleDecls):
  25565. * html/HTMLTableElement.cpp:
  25566. (WebCore::HTMLTableElement::insertRow):
  25567. * html/HTMLTableRowElement.cpp:
  25568. (WebCore::HTMLTableRowElement::rowIndex):
  25569. * html/HTMLTableSectionElement.cpp:
  25570. (WebCore::HTMLTableSectionElement::additionalAttributeStyleDecls):
  25571. * page/DOMSelection.cpp:
  25572. (WebCore::DOMSelection::getRangeAt):
  25573. (WebCore::DOMSelection::containsNode):
  25574. * rendering/RenderSVGGradientStop.cpp:
  25575. (WebCore::RenderSVGGradientStop::gradientElement):
  25576. * svg/SVGElement.cpp:
  25577. (WebCore::SVGElement::ownerSVGElement):
  25578. (WebCore::SVGElement::viewportElement):
  25579. * svg/SVGFELightElement.cpp:
  25580. (WebCore::SVGFELightElement::svgAttributeChanged):
  25581. (WebCore::SVGFELightElement::childrenChanged):
  25582. * svg/SVGFEMergeNodeElement.cpp:
  25583. (WebCore::SVGFEMergeNodeElement::svgAttributeChanged):
  25584. * svg/SVGFontFaceFormatElement.cpp:
  25585. (WebCore::SVGFontFaceFormatElement::childrenChanged):
  25586. * svg/SVGFontFaceUriElement.cpp:
  25587. (WebCore::SVGFontFaceUriElement::childrenChanged):
  25588. * svg/SVGGlyphElement.cpp:
  25589. (WebCore::SVGGlyphElement::invalidateGlyphCache):
  25590. * svg/SVGHKernElement.cpp:
  25591. (WebCore::SVGHKernElement::insertedIntoDocument):
  25592. (WebCore::SVGHKernElement::removedFromDocument):
  25593. * svg/SVGLocatable.cpp:
  25594. (WebCore::SVGLocatable::nearestViewportElement):
  25595. (WebCore::SVGLocatable::farthestViewportElement):
  25596. * svg/SVGUseElement.cpp:
  25597. (WebCore::SVGUseElement::updateContainerOffsets):
  25598. * svg/SVGVKernElement.cpp:
  25599. (WebCore::SVGVKernElement::insertedIntoDocument):
  25600. (WebCore::SVGVKernElement::removedFromDocument):
  25601. * svg/animation/SVGSMILElement.cpp:
  25602. (WebCore::SVGSMILElement::targetElement):
  25603. * wml/WMLDoElement.cpp:
  25604. (WebCore::WMLDoElement::insertedIntoDocument):
  25605. (WebCore::WMLDoElement::removedFromDocument):
  25606. * wml/WMLNoopElement.cpp:
  25607. (WebCore::WMLNoopElement::insertedIntoDocument):
  25608. * wml/WMLOptionElement.cpp:
  25609. (WebCore::ownerSelectElement):
  25610. * wml/WMLPostfieldElement.cpp:
  25611. (WebCore::WMLPostfieldElement::insertedIntoDocument):
  25612. (WebCore::WMLPostfieldElement::removedFromDocument):
  25613. * wml/WMLSetvarElement.cpp:
  25614. (WebCore::WMLSetvarElement::insertedIntoDocument):
  25615. (WebCore::WMLSetvarElement::removedFromDocument):
  25616. * wml/WMLTaskElement.cpp:
  25617. (WebCore::WMLTaskElement::insertedIntoDocument):
  25618. (WebCore::WMLTaskElement::removedFromDocument):
  25619. * wml/WMLTimerElement.cpp:
  25620. (WebCore::WMLTimerElement::insertedIntoDocument):
  25621. (WebCore::WMLTimerElement::removedFromDocument):
  25622. * xml/XPathStep.cpp:
  25623. (WebCore::XPath::Step::nodesInAxis):
  25624. Use ContainerNode* for the result of the parentNode function now that
  25625. it returns a ContainerNode*. In the past it used to return just Node*.
  25626. * dom/ContainerNode.h: Added toContainerNode.
  25627. * dom/Element.h: Use ContainerNode*. Added toElement.
  25628. * dom/Element.cpp:
  25629. (WebCore::Element::deprecatedCreateContextualFragment): Explcitly
  25630. cast to HTMLElement* in the case that handles <html> and <body>
  25631. elements.
  25632. (WebCore::Element::baseURI): Use ContainerNode*.
  25633. * dom/Node.cpp:
  25634. (WebCore::Node::markAncestorsWithChildNeedsStyleRecalc): Use ContainerNode*.
  25635. (WebCore::Node::isDescendantOf): Ditto.
  25636. (WebCore::Node::createRendererIfNeeded): Ditto.
  25637. (WebCore::Node::setTextContent): Use already-typecast pointer in a call to
  25638. appendChild.
  25639. (WebCore::Node::ancestorElement): Use ContainerNode*.
  25640. * dom/Range.cpp:
  25641. (WebCore::Range::compareNode): Use ContainerNode*.
  25642. (WebCore::Range::intersectsNode): Ditto.
  25643. (WebCore::Range::processContents): Cast to ContainerNode* in a couple cases
  25644. where we previously checked that the node in question has a child. Any node
  25645. that returns a non-zero value for firstChild is a ContainerNode.
  25646. (WebCore::Range::checkNodeBA): Ditto.
  25647. (WebCore::Range::selectNode): Ditto.
  25648. (WebCore::Range::surroundContents): Ditto.
  25649. * dom/XMLDocumentParser.cpp:
  25650. (WebCore::XMLDocumentParser::insertErrorMessageBlock): Rewrote code to use
  25651. more specific types, document instead of doc, and paragraph instead of par.
  25652. * editing/ApplyStyleCommand.cpp:
  25653. (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle):
  25654. Use ContainerNode*.
  25655. (WebCore::ApplyStyleCommand::replaceWithSpanOrRemoveIfWithoutAttributes):
  25656. Use replaceElementWithSpanPreservingChildrenAndAttributes; the old function
  25657. took a Node argument and had Node in its name.
  25658. * editing/CompositeEditCommand.cpp:
  25659. (WebCore::CompositeEditCommand::removeNodeAndPruneAncestors): Use ContainerNode.
  25660. (WebCore::CompositeEditCommand::replaceElementWithSpanPreservingChildrenAndAttributes):
  25661. Renamed and changed to take HTMLElement. Also use ContainerNode.
  25662. (WebCore::CompositeEditCommand::prune): Ditto.
  25663. (WebCore::CompositeEditCommand::breakOutOfEmptyListItem): Ditto.
  25664. (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph): Ditto.
  25665. * editing/ReplaceNodeWithSpanCommand.cpp:
  25666. (WebCore::ReplaceNodeWithSpanCommand::ReplaceNodeWithSpanCommand): Take an
  25667. HTMLElement instead of a Node. Call it m_elementToReplace instead of m_node.
  25668. (WebCore::swapInNodePreservingAttributesAndChildren): Take HTMLElement.
  25669. (WebCore::ReplaceNodeWithSpanCommand::doApply): Updated for name changes.
  25670. (WebCore::ReplaceNodeWithSpanCommand::doUnapply): Ditto.
  25671. * editing/ReplaceNodeWithSpanCommand.h: Ditto.
  25672. * editing/ReplaceSelectionCommand.cpp:
  25673. (WebCore::ReplacementFragment::ReplacementFragment): Use StyledElement for result
  25674. of insertFragmentForTestRendering since that's what it returns.
  25675. (WebCore::ReplacementFragment::removeNode): Use ContainerNode.
  25676. (WebCore::ReplacementFragment::insertNodeBefore): Ditto.
  25677. (WebCore::ReplacementFragment::insertFragmentForTestRendering): Return StyledElement.
  25678. Use HTMLElement for body.
  25679. (WebCore::ReplacementFragment::restoreTestRenderingNodesToFragment): Take
  25680. StyledElement.
  25681. (WebCore::ReplaceSelectionCommand::handleStyleSpans): Use ContainerNode.
  25682. (WebCore::ReplaceSelectionCommand::copyStyleToChildren): Use HTMLElement for
  25683. the cloned span, since the clone will be a sspan too.
  25684. (WebCore::ReplaceSelectionCommand::insertAsListItems): Use ContainerNode since
  25685. the list item has a child, and that proves it is a ContainerNode.
  25686. * editing/SelectionController.cpp:
  25687. (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
  25688. Use ContainerNode and also removed an unnneded local variable.
  25689. * html/HTMLElement.cpp:
  25690. (WebCore::HTMLElement::setOuterText): Use ContainerNode.
  25691. (WebCore::HTMLElement::insertAdjacent): Use ContainerNode and also use && to make
  25692. the logic a little simpler.
  25693. (WebCore::contextElementForInsertion): Use ContainerNode.
  25694. (WebCore::HTMLElement::findFormAncestor): Ditto.
  25695. * inspector/InspectorDOMAgent.cpp:
  25696. (WebCore::InspectorDOMAgent::removeNode): Use ContainerNode.
  25697. (WebCore::InspectorDOMAgent::changeTagName): Ditto.
  25698. (WebCore::InspectorDOMAgent::setOuterHTML): Ditto.
  25699. (WebCore::InspectorDOMAgent::innerParentNode): Use isDocumentNode instead of
  25700. nodeType. We should almost never use nodeType inside the engine.
  25701. (WebCore::InspectorDOMAgent::didInsertDOMNode): Use ContainerNode.
  25702. (WebCore::InspectorDOMAgent::didRemoveDOMNode): Ditto.
  25703. * wml/WMLOptGroupElement.cpp: Removed unneeded overrides of insertBefore,
  25704. replaceChild, removeChild, appendChild, and removeChildren functions.
  25705. Ths already overrides childrenChanged, that is called by all of the above,
  25706. and it does the same thing these functions did.
  25707. (WebCore::ownerSelectElement): Use ContainerNode.
  25708. * wml/WMLOptGroupElement.h: Ditto.
  25709. 2010-10-15 Ryosuke Niwa <rniwa@webkit.org>
  25710. Reviewed by Darin Adler.
  25711. Crash in WebCore::ApplyStyleCommand::applyBlockStyle
  25712. https://bugs.webkit.org/show_bug.cgi?id=47699
  25713. The crash was caused by applyBlockStyle's invalidly assuming that visibleStart and visibleEnd always exist.
  25714. Added an early exit to the function when either visibleStart or visibleEnd is null or orphaned.
  25715. Test: editing/style/block-style-progress-crash.html
  25716. * editing/ApplyStyleCommand.cpp:
  25717. (WebCore::ApplyStyleCommand::applyBlockStyle):
  25718. 2010-10-13 Anders Carlsson <andersca@apple.com>
  25719. Reviewed by Sam Weinig.
  25720. Add a FindIndicator class
  25721. https://bugs.webkit.org/show_bug.cgi?id=47635
  25722. Make Gradient.h and Generator.h private headers; they're used by WebKit2.
  25723. * WebCore.xcodeproj/project.pbxproj:
  25724. 2010-10-15 Sergio Villar Senin <svillar@igalia.com>
  25725. Reviewed by Gustavo Noronha Silva.
  25726. [Soup] Should not ignore body for redirection responses
  25727. https://bugs.webkit.org/show_bug.cgi?id=29299
  25728. Body is now provided to WebKitGtk+ in some redirections (like 302)
  25729. because it could be used by servers to perform clunky redirections
  25730. for example using http-equiv=REFRESH
  25731. Test: http/tests/navigation/redirect302-metaredirect.html
  25732. * platform/network/soup/ResourceHandleSoup.cpp:
  25733. (WebCore::gotHeadersCallback):
  25734. (WebCore::finishedCallback):
  25735. 2010-10-15 Sergio Villar Senin <svillar@igalia.com>
  25736. Reviewed by Martin Robinson.
  25737. [GTK] Fix introspection support
  25738. https://bugs.webkit.org/show_bug.cgi?id=47723
  25739. WebKitSoupCacheType was incorrectly registered twice. Renamed to
  25740. WebKitSoupCacheTypeType for the enumerated type.
  25741. * platform/network/soup/cache/webkit/soup-cache.c:
  25742. (webkit_soup_cache_type_get_type):
  25743. 2010-10-15 Ilya Tikhonovsky <loislo@chromium.org>
  25744. Reviewed by Yury Semikhatsky.
  25745. Web Inspector: extract consoleMessages related stuff from populateScriptObjects into separate function.
  25746. This is a part of Inspector protocol sanitization activity.
  25747. We want to populate console messages only if it is required by frontend.
  25748. https://bugs.webkit.org/show_bug.cgi?id=46802
  25749. * inspector/Inspector.idl:
  25750. * inspector/InspectorController.cpp:
  25751. (WebCore::InspectorController::setConsoleMessagesEnabled):
  25752. (WebCore::InspectorController::addConsoleMessage):
  25753. (WebCore::InspectorController::disconnectFrontend):
  25754. (WebCore::InspectorController::populateScriptObjects):
  25755. * inspector/InspectorController.h:
  25756. * inspector/InspectorState.cpp:
  25757. (WebCore::InspectorState::InspectorState):
  25758. * inspector/InspectorState.h:
  25759. * inspector/front-end/inspector.js:
  25760. (WebInspector.doLoadedDone):
  25761. 2010-10-15 Ryuan Choi <ryuan.choi@samsung.com>
  25762. Reviewed by Nikolas Zimmermann.
  25763. [EFL] REGRESSION(69798) UCHAR can't be converted to String.
  25764. https://bugs.webkit.org/show_bug.cgi?id=47698
  25765. Create String value using String(const char*, 1) instead of operator[].
  25766. No tests. No functionality changed.
  25767. * platform/efl/PlatformKeyboardEventEfl.cpp:
  25768. (WebCore::createWindowsKeyMap):
  25769. 2010-10-15 Sergio Villar Senin <svillar@igalia.com>
  25770. Reviewed by Xan Lopez.
  25771. [GTK] Do a stricter check for invalid base64 dataURLs
  25772. https://bugs.webkit.org/show_bug.cgi?id=47717
  25773. Restore the strict base64 decoding we added in
  25774. https://bugs.webkit.org/show_bug.cgi?id=44261 and then rolled back
  25775. in https://bugs.webkit.org/show_bug.cgi?id=47666 due to a failing
  25776. test. The actual issue was that we were not finishing the load of
  25777. the resource gracefully when an error happened.
  25778. Loading invalid base64-encoded data:// URLs are now handled
  25779. properly.
  25780. * platform/network/soup/ResourceHandleSoup.cpp:
  25781. (WebCore::parseDataUrl):
  25782. * platform/network/soup/cache/soup-request-data.c:
  25783. (webkit_soup_request_data_send):
  25784. 2010-10-15 Alejandro G. Castro <alex@igalia.com>
  25785. Reviewed by Martin Robinson.
  25786. compile fail with gtk >= 2.22
  25787. https://bugs.webkit.org/show_bug.cgi?id=47483
  25788. * platform/graphics/gtk/FontGtk.cpp: Removed the shrink operation,
  25789. it was added long time ago and currently it is not adding any real
  25790. area to the clip vertically, actually the gtk3 shrink version did
  25791. not work.
  25792. (WebCore::Font::drawComplexText):
  25793. * platform/gtk/gtk2drawing.c: Undef the deprecation flags, this
  25794. file is full of gtk2 stuff, and it does not seem interesting to
  25795. upgrade because we are already creating a new version of the file
  25796. for gtk3.
  25797. 2010-10-14 Ilya Tikhonovsky <loislo@chromium.org>
  25798. Reviewed by Pavel Feldman.
  25799. Web Inspector: inspector settings/properties/states management
  25800. should be extracted into separate class.
  25801. We have a lot of flags/values in InspectorController.
  25802. Some flags are persisting into profile.
  25803. Others are part of inspector state for frontend.
  25804. All these flags should keep their values after navigation.
  25805. It'd be better to extract these flags/values into separate
  25806. class which will care about theirs lifetime.
  25807. https://bugs.webkit.org/show_bug.cgi?id=47275
  25808. * CMakeLists.txt:
  25809. * GNUmakefile.am:
  25810. * WebCore.exp.in:
  25811. * WebCore.gypi:
  25812. * WebCore.pro:
  25813. * WebCore.vcproj/WebCore.vcproj:
  25814. * WebCore.xcodeproj/project.pbxproj:
  25815. * inspector/InspectorController.cpp:
  25816. (WebCore::InspectorController::InspectorController):
  25817. (WebCore::InspectorController::inspectorStartsAttached):
  25818. (WebCore::InspectorController::setInspectorStartsAttached):
  25819. (WebCore::InspectorController::setInspectorAttachedHeight):
  25820. (WebCore::InspectorController::inspectorAttachedHeight):
  25821. (WebCore::InspectorController::searchingForNodeInPage):
  25822. (WebCore::InspectorController::resourceTrackingEnabled):
  25823. (WebCore::InspectorController::saveApplicationSettings):
  25824. (WebCore::InspectorController::getInspectorState):
  25825. (WebCore::InspectorController::restoreInspectorStateFromCookie):
  25826. (WebCore::InspectorController::getSettings):
  25827. (WebCore::InspectorController::storeLastActivePanel):
  25828. (WebCore::InspectorController::mouseDidMoveOverElement):
  25829. (WebCore::InspectorController::handleMousePress):
  25830. (WebCore::InspectorController::setSearchingForNode):
  25831. (WebCore::InspectorController::setMonitoringXHREnabled):
  25832. (WebCore::InspectorController::showPanel):
  25833. (WebCore::InspectorController::disconnectFrontend):
  25834. (WebCore::InspectorController::populateScriptObjects):
  25835. (WebCore::InspectorController::restoreDebugger):
  25836. (WebCore::InspectorController::restoreProfiler):
  25837. (WebCore::InspectorController::getTrackedResource):
  25838. (WebCore::InspectorController::didLoadResourceFromMemoryCache):
  25839. (WebCore::InspectorController::identifierForInitialRequest):
  25840. (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
  25841. (WebCore::InspectorController::scriptImported):
  25842. (WebCore::InspectorController::setResourceTrackingEnabled):
  25843. (WebCore::InspectorController::ensureSettingsLoaded):
  25844. (WebCore::InspectorController::startTimelineProfiler):
  25845. (WebCore::InspectorController::stopTimelineProfiler):
  25846. (WebCore::InspectorController::enableProfiler):
  25847. (WebCore::InspectorController::disableProfiler):
  25848. (WebCore::InspectorController::enableDebuggerFromFrontend):
  25849. (WebCore::InspectorController::disableDebugger):
  25850. (WebCore::InspectorController::loadBreakpoints):
  25851. (WebCore::InspectorController::saveBreakpoints):
  25852. * inspector/InspectorController.h:
  25853. * inspector/InspectorFrontendClientLocal.cpp:
  25854. (WebCore::InspectorFrontendClientLocal::changeAttachedWindowHeight):
  25855. (WebCore::InspectorFrontendClientLocal::restoreAttachedWindowHeight):
  25856. * inspector/InspectorState.cpp: Added.
  25857. (WebCore::InspectorState::InspectorState):
  25858. (WebCore::InspectorState::restoreFromInspectorCookie):
  25859. (WebCore::InspectorState::generateStateObjectForFrontend):
  25860. (WebCore::InspectorState::loadFromSettings):
  25861. (WebCore::InspectorState::updateCookie):
  25862. (WebCore::InspectorState::setValue):
  25863. (WebCore::InspectorState::getBoolean):
  25864. (WebCore::InspectorState::getString):
  25865. (WebCore::InspectorState::getLong):
  25866. (WebCore::InspectorState::registerBoolean):
  25867. (WebCore::InspectorState::registerString):
  25868. (WebCore::InspectorState::registerLong):
  25869. (WebCore::InspectorState::Property::create):
  25870. * inspector/InspectorState.h: Added.
  25871. (WebCore::InspectorState::setBoolean):
  25872. (WebCore::InspectorState::setString):
  25873. (WebCore::InspectorState::setLong):
  25874. 2010-10-14 Jia Pu <jpu@apple.com>
  25875. Reviewed by Adele Peterson.
  25876. REGRESSION (r69548): Autocorrections are applied even after typing further characters in the word
  25877. https://bugs.webkit.org/show_bug.cgi?id=47689
  25878. <rdar://problem/8552250>
  25879. The test requires using setTimeout(). So we put it in manual-tests.
  25880. * editing/Editor.cpp:
  25881. (WebCore::Editor::markMisspellingsAfterTypingToPosition): Relpace release() with clear().
  25882. (WebCore::Editor::startCorrectionPanelTimer): Release previously set correction range before
  25883. start timer for next autocorrection check.
  25884. * manual-tests/autocorrection: Added.
  25885. * manual-tests/autocorrection/autocorrection-cancelled-by-typing-1.html: Added.
  25886. 2010-10-14 Ryosuke Niwa <rniwa@webkit.org>
  25887. Reviewed by Tony Chang and Darin Adler.
  25888. execCommand FormatBlock creates lots of blockquotes
  25889. https://bugs.webkit.org/show_bug.cgi?id=19795
  25890. The bug was caused by WebKit's not reusing the block node added by previous iteration
  25891. and its inserting block node at wrong places.
  25892. Fixed the bug by rewriting FormatBlockCommand::formatRange. New code resembles that of
  25893. IndentOutdentCommand::indentIntoBlockquote. The difference between two is that formatRange
  25894. avoids the existing block elements when replacing blocks and it also adds a placeholder
  25895. when removing the existing block caused paragraphs to collapse.
  25896. Also fixed a bug in moveParagraphWithClones where erroneous br is added to the start of
  25897. the block element to which the paragraph is moved if the block element is the start of a paragraph
  25898. and not the end of a paragraph.
  25899. Tests: editing/execCommand/format-block-multiple-paragraphs.html
  25900. editing/execCommand/format-block-table.html
  25901. * editing/CompositeEditCommand.cpp:
  25902. (WebCore::CompositeEditCommand::moveParagraphWithClones): No longer adds erroneous br.
  25903. * editing/EditorCommand.cpp:
  25904. (WebCore::executeFormatBlock):
  25905. * editing/FormatBlockCommand.cpp:
  25906. (WebCore::FormatBlockCommand::formatRange): Rewritten; see above.
  25907. (WebCore::FormatBlockCommand::isElementToApplyInFormatBlockCommand): Renamed from validBlockElement
  25908. and moved from htmlediting.cpp.
  25909. (WebCore::enclosingBlockToSplitTreeTo): Added.
  25910. * editing/FormatBlockCommand.h:
  25911. * editing/VisiblePosition.cpp:
  25912. (WebCore::enclosingBlockFlowElement): Changed the return type to Element*
  25913. * editing/VisiblePosition.h:
  25914. 2010-10-14 Justin Schuh <jschuh@chromium.org>
  25915. Reviewed by James Robinson.
  25916. Crash in HTMLTextFormControlElement::selection()
  25917. https://bugs.webkit.org/show_bug.cgi?id=47522
  25918. Patch by Ryosuke Niwa <rniwa@webkit.org>
  25919. The bug was caused by our triggering layout inside RenderTextControl::selection.
  25920. Fixed it by changing the return type of RenderTextControl::selection to PassRefPtr<Range> from VisibleSelection.
  25921. Test: fast/forms/render-text-crash.html
  25922. * editing/Editor.cpp:
  25923. (WebCore::Editor::selectionForCommand): Calls HTMLTextFormControlElement::selection.
  25924. * html/HTMLFormControlElement.cpp:
  25925. (WebCore::HTMLTextFormControlElement::selection): Calls RenderTextControl::selection.
  25926. * html/HTMLFormControlElement.h:
  25927. * rendering/RenderTextControl.cpp:
  25928. (WebCore::RenderTextControl::selection): Changed the return type.
  25929. * rendering/RenderTextControl.h:
  25930. 2010-10-14 James Robinson <jamesr@chromium.org>
  25931. Reviewed by Simon Fraser.
  25932. SelectElement should check if its renderer exists after calling Element::focus()
  25933. https://bugs.webkit.org/show_bug.cgi?id=47696
  25934. Adds null checks for element->renderer() after calling element->focus(), since focus()
  25935. can dispatch an event and run arbitrary javascript that may cause the select element
  25936. to lose its renderer.
  25937. Test: fast/forms/select-listbox-focus-displaynone.html
  25938. * dom/SelectElement.cpp:
  25939. (WebCore::SelectElement::menuListDefaultEventHandler):
  25940. (WebCore::SelectElement::listBoxDefaultEventHandler):
  25941. 2010-10-14 Beth Dakin <bdakin@apple.com>
  25942. Reviewed by Dave Hyatt.
  25943. This patch lays the groundwork for
  25944. https://bugs.webkit.org/show_bug.cgi?id=47514 CSS transforms should
  25945. affect scrolling
  25946. by adding topmostPosition().
  25947. * rendering/RenderBlock.cpp:
  25948. (WebCore::RenderBlock::topmostPosition):
  25949. * rendering/RenderBlock.h:
  25950. * rendering/RenderBox.cpp:
  25951. (WebCore::RenderBox::topmostPosition):
  25952. * rendering/RenderBox.h:
  25953. * rendering/RenderMedia.cpp:
  25954. (WebCore::RenderMedia::topmostPosition):
  25955. * rendering/RenderMedia.h:
  25956. * rendering/RenderTableSection.cpp:
  25957. (WebCore::RenderTableSection::topmostPosition):
  25958. * rendering/RenderTableSection.h:
  25959. 2010-10-14 Sergio Villar Senin <svillar@igalia.com>
  25960. Reviewed by Martin Robinson.
  25961. [GTK] fix compilation warnings in imported libsoup code
  25962. https://bugs.webkit.org/show_bug.cgi?id=47674
  25963. Fixed some warnings caused by comparisons between signed and
  25964. unsigned integer expressions
  25965. * platform/network/soup/cache/soup-directory-input-stream.c:
  25966. (webkit_soup_directory_input_stream_read):
  25967. * platform/network/soup/cache/soup-request-data.c:
  25968. (webkit_soup_request_data_send):
  25969. * platform/network/soup/cache/soup-request-file.c:
  25970. (webkit_soup_request_file_ensure_file):
  25971. * platform/network/soup/cache/webkit/soup-cache.c:
  25972. (webkit_soup_cache_entry_is_fresh_enough):
  25973. (webkit_soup_cache_has_response):
  25974. 2010-10-14 Andreas Kling <kling@webkit.org>
  25975. Unreviewed buildfix, RetainPtr is a mac thing..
  25976. * platform/network/soup/ProxyServerSoup.cpp:
  25977. 2010-10-08 Martin Robinson <mrobinson@igalia.com>
  25978. Reviewed by Xan Lopez.
  25979. [GTK] Form controls do not respect GTK+ font size
  25980. https://bugs.webkit.org/show_bug.cgi?id=47134
  25981. Have form controls use the font specified in GtkSettings. This font is
  25982. the default control font in GTK+ applications and Firefox. We need to
  25983. pass the string through Pango to get a valid font name and size.
  25984. * platform/gtk/RenderThemeGtk.cpp:
  25985. (WebCore::getScreenDPI): A helper function which returns
  25986. the DPI of the default screen or 96 as a fallback.
  25987. (WebCore::RenderThemeGtk::systemFont): Calculate the system font
  25988. by looking at the GtkSettings value and pushing it through Pango
  25989. to get the font family and font size.
  25990. 2010-10-14 Andreas Kling <kling@webkit.org>
  25991. Soup buildfix for r69808: add ProxyServer stub.
  25992. * GNUmakefile.am:
  25993. * platform/network/soup/ProxyServerSoup.cpp: Added.
  25994. (WebCore::proxyServersForURL):
  25995. 2010-10-14 Andreas Kling <kling@webkit.org>
  25996. Fix GTK+ build after r69808.
  25997. * GNUmakefile.am:
  25998. * platform/network/curl/ProxyServerCurl.cpp:
  25999. (WebCore::proxyServersForURL):
  26000. 2010-10-14 Simon Fraser <simon.fraser@apple.com>
  26001. Another build fix. Export FrameLoader::networkingContext()
  26002. * WebCore.exp.in:
  26003. 2010-10-14 Simon Fraser <simon.fraser@apple.com>
  26004. Fix the build after r69808.
  26005. * WebCore.xcodeproj/project.pbxproj:
  26006. * platform/network/cf/ProxyServerCFNet.cpp:
  26007. (WebCore::proxyServersForURL):
  26008. 2010-10-14 Gavin Barraclough <barraclough@apple.com>
  26009. Windows build fix following r69806.
  26010. * platform/win/ClipboardUtilitiesWin.cpp:
  26011. (WebCore::markupToCFHTML):
  26012. 2010-10-14 Dawit Alemayehu <adawit@kde.org>
  26013. Reviewed by Andreas Kling
  26014. Implemented NPN_GetValueForURL and NPN_SetValueForURL and NPN_GetAuthenticationInfo.
  26015. https://bugs.webkit.org/show_bug.cgi?id=34539
  26016. These missing NPN functions cause Java applets to crash in ports such
  26017. as QtWebkit that rely on webkit for Java applet support.
  26018. * plugins/PluginDebug.cpp:
  26019. (WebCore::prettyNameForNPNURLVariable):
  26020. * plugins/PluginDebug.h:
  26021. * plugins/PluginPackage.cpp:
  26022. (WebCore::PluginPackage::initializeBrowserFuncs):
  26023. * plugins/PluginView.cpp:
  26024. (WebCore::PluginView::getValueForURL):
  26025. (WebCore::PluginView::setValueForURL):
  26026. (WebCore::PluginView::getAuthenticationInfo):
  26027. * plugins/PluginView.h:
  26028. * plugins/npapi.cpp:
  26029. (NPN_GetValueForURL):
  26030. (NPN_SetValueForURL):
  26031. (NPN_GetAuthenticationInfo):
  26032. * platform/network/ProxyServer.h:
  26033. * platform/network/cf/ProxyServerCFNet.cpp:
  26034. (WebCore::proxyServersForURL):
  26035. * platform/network/qt/ProxyServerQt.cpp:
  26036. (WebCore::proxyServersForURL):
  26037. 2010-10-14 Gavin Barraclough <barraclough@apple.com>
  26038. Windows build fix following r69806.
  26039. * platform/win/ClipboardUtilitiesWin.cpp:
  26040. (WebCore::markupToCFHTML):
  26041. 2010-10-14 Zhenyao Mo <zmo@google.com>
  26042. Reviewed by Kenneth Russell.
  26043. Cache link status at linkProgram and use it in useProgram instead of querying GPU
  26044. https://bugs.webkit.org/show_bug.cgi?id=47685
  26045. * html/canvas/WebGLProgram.cpp: Always cache link status at linkStatus and use it upon query.
  26046. (WebCore::WebGLProgram::WebGLProgram):
  26047. * html/canvas/WebGLProgram.h: Ditto.
  26048. (WebCore::WebGLProgram::getLinkStatus):
  26049. (WebCore::WebGLProgram::setLinkStatus):
  26050. * html/canvas/WebGLRenderingContext.cpp: Ditto.
  26051. (WebCore::WebGLRenderingContext::getProgramParameter):
  26052. (WebCore::WebGLRenderingContext::linkProgram):
  26053. (WebCore::WebGLRenderingContext::useProgram):
  26054. 2010-10-14 Justin Schuh <jschuh@chromium.org>
  26055. Reviewed by James Robinson.
  26056. Style fix for r69735
  26057. https://bugs.webkit.org/show_bug.cgi?id=47684
  26058. No logic change. Existing tests apply.
  26059. * rendering/RootInlineBox.cpp:
  26060. (WebCore::RootInlineBox::alignBoxesInBlockDirection):
  26061. 2010-10-14 Yury Semikhatsky <yurys@chromium.org>
  26062. Reviewed by Pavel Feldman.
  26063. Web Inspector: encapsulate ScriptState into ConsoleMessage instead of passing it as additional parameter
  26064. https://bugs.webkit.org/show_bug.cgi?id=47675
  26065. No new tests. This refactoring is covered by existing inspector tests.
  26066. * bindings/js/JSConsoleCustom.cpp:
  26067. * bindings/js/ScriptCallFrame.cpp:
  26068. * bindings/js/ScriptCallFrame.h:
  26069. (WebCore::ScriptCallFrame::functionName):
  26070. (WebCore::ScriptCallFrame::sourceURL):
  26071. (WebCore::ScriptCallFrame::lineNumber):
  26072. (WebCore::ScriptCallFrame::argumentCount):
  26073. * inspector/ConsoleMessage.cpp:
  26074. (WebCore::ConsoleMessage::isEqual):
  26075. * inspector/ConsoleMessage.h:
  26076. * inspector/InspectorController.cpp:
  26077. (WebCore::InspectorController::addMessageToConsole):
  26078. (WebCore::InspectorController::addConsoleMessage):
  26079. (WebCore::InspectorController::startGroup):
  26080. (WebCore::InspectorController::endGroup):
  26081. * inspector/InspectorController.h:
  26082. 2010-10-14 Nikolas Zimmermann <nzimmermann@rim.com>
  26083. Reviewed by Gavin Barraclough.
  26084. Replace lots of String::format() usages by StringConcatenate
  26085. https://bugs.webkit.org/show_bug.cgi?id=47664
  26086. * ForwardingHeaders/wtf/text/StringConcatenate.h: Added.
  26087. * bindings/js/JSDOMWindowBase.cpp:
  26088. (WebCore::JSDOMWindowBase::crossDomainAccessErrorMessage):
  26089. * bindings/v8/V8Proxy.cpp:
  26090. (WebCore::V8Proxy::reportUnsafeAccessTo):
  26091. * dom/ExceptionBase.cpp:
  26092. (WebCore::ExceptionBase::ExceptionBase):
  26093. * dom/XMLDocumentParser.cpp:
  26094. (WebCore::XMLDocumentParser::handleError):
  26095. * history/PageCache.cpp:
  26096. (WebCore::logCanCacheFrameDecision):
  26097. * html/FTPDirectoryDocument.cpp:
  26098. (WebCore::processFileDateString):
  26099. * inspector/CodeGeneratorInspector.pm:
  26100. * inspector/InspectorController.cpp:
  26101. (WebCore::InspectorController::didReceiveResponse):
  26102. (WebCore::InspectorController::count):
  26103. * inspector/InspectorDOMAgent.cpp:
  26104. (WebCore::InspectorDOMAgent::createBreakpointId):
  26105. * inspector/InspectorDebuggerAgent.cpp:
  26106. (WebCore::formatBreakpointId):
  26107. * inspector/InspectorProfilerAgent.cpp:
  26108. (WebCore::InspectorProfilerAgent::addProfileFinishedMessageToConsole):
  26109. (WebCore::InspectorProfilerAgent::addStartProfilingMessageToConsole):
  26110. (WebCore::InspectorProfilerAgent::getCurrentUserInitiatedProfileName):
  26111. (WebCore::InspectorProfilerAgent::takeHeapSnapshot):
  26112. * loader/CachedResourceLoader.cpp:
  26113. (WebCore::CachedResourceLoader::printAccessDeniedMessage):
  26114. * loader/FrameLoader.cpp:
  26115. (WebCore::FrameLoader::checkIfDisplayInsecureContent):
  26116. (WebCore::FrameLoader::checkIfRunInsecureContent):
  26117. (WebCore::FrameLoader::shouldAllowNavigation):
  26118. * loader/archive/cf/LegacyWebArchive.cpp:
  26119. (WebCore::LegacyWebArchive::createFromSelection):
  26120. * page/DOMWindow.cpp:
  26121. (WebCore::DOMWindow::postMessageTimerFired):
  26122. * page/PrintContext.cpp:
  26123. (WebCore::PrintContext::pageProperty):
  26124. (WebCore::PrintContext::pageSizeAndMarginsInPixels):
  26125. * page/XSSAuditor.cpp:
  26126. (WebCore::XSSAuditor::canLoadObject):
  26127. * platform/efl/PlatformKeyboardEventEfl.cpp:
  26128. (WebCore::createKeyMap):
  26129. (WebCore::createWindowsKeyMap):
  26130. * platform/graphics/GraphicsLayer.cpp:
  26131. (WebCore::GraphicsLayer::animationNameForTransition):
  26132. * platform/graphics/brew/ImageBrew.cpp:
  26133. (WebCore::Image::loadPlatformResource):
  26134. * platform/graphics/cg/ImageBufferCG.cpp:
  26135. (WebCore::ImageBuffer::toDataURL):
  26136. * platform/graphics/efl/ImageEfl.cpp:
  26137. (WebCore::loadResourceSharedBuffer):
  26138. * platform/graphics/gtk/ImageBufferGtk.cpp:
  26139. (WebCore::ImageBuffer::toDataURL):
  26140. * platform/graphics/haiku/ImageBufferHaiku.cpp:
  26141. (WebCore::ImageBuffer::toDataURL):
  26142. * platform/graphics/mac/GraphicsLayerCA.mm:
  26143. (WebCore::animationIdentifier):
  26144. * platform/graphics/qt/ImageBufferQt.cpp:
  26145. (WebCore::ImageBuffer::toDataURL):
  26146. * platform/graphics/skia/ImageBufferSkia.cpp:
  26147. (WebCore::ImageBuffer::toDataURL):
  26148. * platform/graphics/win/WebLayer.cpp:
  26149. (WebCore::WebLayer::drawInContext):
  26150. * platform/network/CredentialStorage.cpp:
  26151. (WebCore::originStringFromURL):
  26152. * platform/sql/SQLiteDatabase.cpp:
  26153. (WebCore::SQLiteDatabase::setSynchronous):
  26154. * platform/text/wince/TextCodecWinCE.cpp:
  26155. (WebCore::LanguageManager::LanguageManager):
  26156. * platform/win/ClipboardUtilitiesWin.cpp:
  26157. (WebCore::markupToCFHTML):
  26158. * platform/win/Language.cpp:
  26159. (WebCore::defaultLanguage):
  26160. * plugins/PluginStream.cpp:
  26161. (WebCore::PluginStream::startStream):
  26162. * svg/SVGUseElement.cpp:
  26163. (WebCore::dumpInstanceTree):
  26164. * websockets/WebSocket.cpp:
  26165. (WebCore::WebSocket::connect):
  26166. * websockets/WebSocketChannel.cpp:
  26167. (WebCore::WebSocketChannel::appendToBuffer):
  26168. * websockets/WebSocketHandshake.cpp:
  26169. (WebCore::WebSocketHandshake::readServerHandshake):
  26170. 2010-10-14 Xan Lopez <xlopez@igalia.com>
  26171. Reviewed by Martin Robinson.
  26172. [GTK] Small cleanup in PluginViewGtk
  26173. https://bugs.webkit.org/show_bug.cgi?id=47588
  26174. Remove some dead code and use PlatformRefPtr for cairo surfaces.
  26175. No new tests, only refactoring.
  26176. * plugins/gtk/PluginViewGtk.cpp:
  26177. (WebCore::PluginView::paint):
  26178. 2010-10-14 Dawit Alemayehu <adawit@kde.org>
  26179. Reviewed by Andreas Kling.
  26180. Fix compile error when bulding webkit's Qt port using the "--v8" option.
  26181. https://bugs.webkit.org/show_bug.cgi?id=47455
  26182. * platform/qt/PlatformBridge.h:
  26183. 2010-10-01 Martin Robinson <mrobinson@igalia.com>
  26184. Reviewed by Holger Freyther.
  26185. [GTK] REGRESSION: FreeType backend does not respect XSettings font settings after r68558
  26186. https://bugs.webkit.org/show_bug.cgi?id=47033
  26187. Fix logic that merges XSettings defaults and FontConfig settings. If
  26188. FontConfig or XSettings specifies a subpixel order, we force subpixel
  26189. anti-aliasing on. If anti-aliasing is turned on explicitly, only
  26190. override the setting if it was previously off, otherwise we ignore
  26191. the user's preference for subpixel or gray antialiasing.
  26192. Test: platform/gtk/fonts/xsettings_antialias_settings.html
  26193. * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
  26194. (WebCore::setCairoFontOptionsFromFontConfigPattern): Fix merging of XSettings
  26195. and FontConfig anti-aliasing settings.
  26196. (WebCore::getDefaultFontOptions): Added this helper.
  26197. (WebCore::FontPlatformData::FontPlatformData): Use the getDefaultFontOptions helper.
  26198. 2010-10-14 Jian Li <jianli@chromium.org>
  26199. Reviewed by David Levin.
  26200. Support typed arrays in workers
  26201. https://bugs.webkit.org/show_bug.cgi?id=47616
  26202. To support typed arrays in workers, we need to expose constructors in
  26203. WorkerContext and add NoStaticTables attribute.
  26204. I also add File API feature guard to the constructors defined in
  26205. DOMWindow.
  26206. * bindings/js/JSDOMWindowCustom.cpp: Add File API feature guard to the
  26207. constructors defined in DOMWindow.
  26208. * html/canvas/ArrayBuffer.idl: Add NoStaticTables attribute.
  26209. * html/canvas/ArrayBufferView.idl: Add NoStaticTables attribute.
  26210. * html/canvas/Float32Array.idl: Add NoStaticTables attribute.
  26211. * html/canvas/Int16Array.idl: Add NoStaticTables attribute.
  26212. * html/canvas/Int32Array.idl: Add NoStaticTables attribute.
  26213. * html/canvas/Int8Array.idl: Add NoStaticTables attribute.
  26214. * html/canvas/Uint16Array.idl: Add NoStaticTables attribute.
  26215. * html/canvas/Uint32Array.idl: Add NoStaticTables attribute.
  26216. * html/canvas/Uint8Array.idl: Add NoStaticTables attribute.
  26217. * page/DOMWindow.idl: Add File API feature guard to the constructors
  26218. defined in DOMWindow.
  26219. * workers/WorkerContext.idl: Expose type array constructors.
  26220. 2010-10-14 Andreas Kling <kling@webkit.org>
  26221. Reviewed by Ariya Hidayat.
  26222. [Qt] Avoid creating empty transparency layers in ImageBuffer::clip()
  26223. We were creating empty layers for sub-1 height/width clips due to
  26224. using IntRect(FloatRect) instead of enclosingIntRect().
  26225. This lead to a bunch of QPainter warnings on the console since you
  26226. can't draw on an empty QPixmap.
  26227. * platform/graphics/qt/ImageBufferQt.cpp:
  26228. (WebCore::ImageBuffer::clip):
  26229. 2010-10-14 Holger Hans Peter Freyther <holger@moiji-mobile.com>
  26230. Reviewed by Martin Robinson.
  26231. [cairo] Typo in determining fixed width fonts
  26232. https://bugs.webkit.org/show_bug.cgi?id=47470
  26233. It must be a single ampersand otherwise the
  26234. && FT_FACE_FLAG_FIXED_WIDTH will always be true.
  26235. * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
  26236. (WebCore::FontPlatformData::FontPlatformData):
  26237. 2010-10-14 Sergio Villar Senin <svillar@igalia.com>
  26238. Reviewed by Xan Lopez.
  26239. [GTK] Failing test LayoutTests/editing/undo/orphaned-selection-crash-bug32823-2.html
  26240. https://bugs.webkit.org/show_bug.cgi?id=47666
  26241. Do a less strict decoding of base64 data url's as it was done
  26242. before. The actual problem is most likely
  26243. https://bugs.webkit.org/show_bug.cgi?id=47661 tough.
  26244. * platform/network/soup/cache/soup-request-data.c:
  26245. (webkit_soup_request_data_send):
  26246. 2010-10-14 Renata Hodovan <reni@inf.u-szeged.hu>
  26247. Reviewed by Andreas Kling.
  26248. SVGFEConvolveMatrixElement doesn't support dynamic invalidation, when attributes change.
  26249. https://bugs.webkit.org/show_bug.cgi?id=47660
  26250. The dynamic changes are captured by the svgAttributeChange function, and invalidate the filter primitive if necessary.
  26251. The patch also implements the simple setOrder and setKernelUnitLength methods.
  26252. Tests: svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr.html
  26253. svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr.html
  26254. svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr.html
  26255. svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr.html
  26256. svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr.html
  26257. svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr.html
  26258. svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr.html
  26259. svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr.html
  26260. svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr.html
  26261. svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetY-attr.html
  26262. * svg/SVGFEConvolveMatrixElement.cpp:
  26263. (WebCore::SVGFEConvolveMatrixElement::setOrder):
  26264. (WebCore::SVGFEConvolveMatrixElement::setKernelUnitLength):
  26265. (WebCore::SVGFEConvolveMatrixElement::svgAttributeChanged):
  26266. * svg/SVGFEConvolveMatrixElement.h:
  26267. 2010-10-14 No'am Rosenthal <noam.rosenthal@nokia.com>
  26268. Reviewed by Andreas Kling.
  26269. [Qt] Text breaking is slow: enable ICU as an opt-in
  26270. https://bugs.webkit.org/show_bug.cgi?id=40332
  26271. Added a config flag that enables ICU as an opt-in instead of the Qt specific code.
  26272. No new tests, this should be covered by existing tests.
  26273. * WebCore.pro:
  26274. * platform/text/qt/TextBreakIteratorQt.cpp:
  26275. (WebCore::currentTextBreakLocaleID):
  26276. 2010-10-14 No'am Rosenthal <noam.rosenthal@nokia.com>
  26277. Reviewed by Kenneth Rohde Christiansen.
  26278. [Texmap] [Qt] Texture mapper initial implementation
  26279. https://bugs.webkit.org/show_bug.cgi?id=47070
  26280. This patch enables compilation of TextureMapper with Media. It has an initial non-working implementation of a video layer, to be integrated
  26281. once other parts of TextureMapper are fully working.
  26282. No new tests: this is new implementation that's not enabled yet.
  26283. * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
  26284. (WebCore::TextureMapperVideoLayerQt::TextureMapperVideoLayerQt):
  26285. (WebCore::TextureMapperVideoLayerQt::setPlatformLayerClient):
  26286. (WebCore::TextureMapperVideoLayerQt::paint):
  26287. (WebCore::TextureMapperVideoLayerQt::size):
  26288. (WebCore::MediaPlayerPrivateQt::acceleratedRenderingStateChanged):
  26289. (WebCore::MediaPlayerPrivateQt::platformLayer):
  26290. * platform/graphics/qt/MediaPlayerPrivateQt.h:
  26291. (WebCore::MediaPlayerPrivateQt::supportsAcceleratedRendering):
  26292. (WebCore::MediaPlayerPrivateQt::acceleratedRenderingStateChanged):
  26293. (WebCore::MediaPlayerPrivateQt::platformLayer):
  26294. 2010-10-14 Alejandro G. Castro <alex@igalia.com>
  26295. Reviewed by Martin Robinson.
  26296. Fixed crashes in the GTK 64bits bot, we have to use NULL instead
  26297. of 0 when calling these glib APIs, 0 is compiled as a char and in
  26298. 64bits systems it is not correct.
  26299. * platform/network/soup/cache/soup-requester.c:
  26300. (webkit_soup_requester_new):
  26301. (webkit_soup_requester_request_uri):
  26302. 2010-10-14 Daniel Bates <dbates@rim.com>
  26303. Attempt to fix the Qt and GTK builds based on the build bot results from <http://webkit.sed.hu>.
  26304. * rendering/RenderInline.cpp: Include header "RenderTheme.h"
  26305. 2010-10-14 Daniel Bates <dbates@rim.com>
  26306. Reviewed by Darin Adler.
  26307. Only draw focus ring in RenderInline and RenderImage if the theme
  26308. is not able to draw a focus ring
  26309. https://bugs.webkit.org/show_bug.cgi?id=47632
  26310. Fixes an issue where RenderInline::paintOutline() and RenderImage::paintFocusRings()
  26311. would draw a focus ring regardless of whether the port-specific theme is able to
  26312. draw a focus ring. Instead, these methods should only draw a focus ring if the
  26313. theme is unable to draw a focus ring.
  26314. Also, extracted common focus ring drawing code from RenderObject::paintOutline()
  26315. and RenderInline::paintOutline() into RenderObject::paintFocusRing().
  26316. Tests: fast/forms/textfield-focus-ring.html
  26317. fast/images/imagemap-focus-ring.html
  26318. fast/inline/inline-focus-ring.html
  26319. * rendering/RenderImage.cpp:
  26320. (WebCore::RenderImage::paintFocusRings): Modified to only draw a focus ring if the
  26321. the theme does not draw one.
  26322. * rendering/RenderInline.cpp:
  26323. (WebCore::RenderInline::paintOutline): Modified to call RenderObject::paintFocusRing().
  26324. * rendering/RenderObject.cpp:
  26325. * rendering/RenderObject.cpp:
  26326. (WebCore::RenderObject::paintFocusRing): Added.
  26327. (WebCore::RenderObject::paintOutline): Modified to call RenderObject::paintFocusRing().
  26328. * rendering/RenderObject.h:
  26329. 2010-10-14 Pavel Feldman <pfeldman@chromium.org>
  26330. Reviewed by Yury Semikhatsky.
  26331. Web Inspector: Move load and dom content event timers into InspectorController.
  26332. https://bugs.webkit.org/show_bug.cgi?id=47668
  26333. * inspector/CodeGeneratorInspector.pm:
  26334. * inspector/Inspector.idl:
  26335. * inspector/InspectorController.cpp:
  26336. (WebCore::InspectorController::InspectorController):
  26337. (WebCore::InspectorController::populateScriptObjects):
  26338. (WebCore::InspectorController::mainResourceFiredDOMContentEvent):
  26339. (WebCore::InspectorController::mainResourceFiredLoadEvent):
  26340. * inspector/InspectorController.h:
  26341. * inspector/InspectorResource.cpp:
  26342. (WebCore::InspectorResource::InspectorResource):
  26343. (WebCore::InspectorResource::updateScriptObject):
  26344. * inspector/InspectorResource.h:
  26345. * inspector/front-end/inspector.js:
  26346. (WebInspector.updateResource):
  26347. (WebInspector.domContentEventFired):
  26348. (WebInspector.loadEventFired):
  26349. 2010-10-14 Pavel Feldman <pfeldman@chromium.org>
  26350. Not reviewed. Re-landing r69757.
  26351. 2010-10-14 Pavel Podivilov <podivilov@chromium.org>
  26352. Reviewed by Pavel Feldman.
  26353. Web Inspector: implement pausing on window events and timeouts
  26354. https://bugs.webkit.org/show_bug.cgi?id=47542
  26355. * inspector/InspectorInstrumentation.cpp:
  26356. (WebCore::InspectorInstrumentation::didInstallTimerImpl):
  26357. (WebCore::InspectorInstrumentation::didRemoveTimerImpl):
  26358. (WebCore::InspectorInstrumentation::willDispatchEventImpl):
  26359. (WebCore::InspectorInstrumentation::didDispatchEventImpl):
  26360. (WebCore::InspectorInstrumentation::willDispatchEventOnWindowImpl):
  26361. (WebCore::InspectorInstrumentation::didDispatchEventOnWindowImpl):
  26362. (WebCore::InspectorInstrumentation::willFireTimerImpl):
  26363. (WebCore::InspectorInstrumentation::didFireTimerImpl):
  26364. (WebCore::InspectorInstrumentation::pauseOnNativeEventIfNeeded):
  26365. (WebCore::InspectorInstrumentation::cancelPauseOnNativeEvent):
  26366. * inspector/InspectorInstrumentation.h:
  26367. * inspector/front-end/BreakpointManager.js:
  26368. (WebInspector.EventListenerBreakpoint.prototype.populateLabelElement):
  26369. (WebInspector.EventListenerBreakpoint.prototype.populateStatusMessageElement):
  26370. (WebInspector.EventListenerBreakpoint.prototype._condition):
  26371. (WebInspector.EventListenerBreakpoint.prototype._uiEventName):
  26372. * inspector/front-end/BreakpointsSidebarPane.js:
  26373. (WebInspector.EventListenerBreakpointsSidebarPane.prototype._populate):
  26374. 2010-10-14 Csaba Osztrogonác <ossy@webkit.org>
  26375. Reviewed by Andreas Kling.
  26376. Canvas: "currentColor" should inherit the canvas element's color
  26377. https://bugs.webkit.org/show_bug.cgi?id=40273
  26378. Warning fix after r69755. Missing default cases added.
  26379. * html/canvas/CanvasStyle.cpp:
  26380. (WebCore::parseColorOrCurrentColor):
  26381. (WebCore::CanvasStyle::createFromString):
  26382. (WebCore::CanvasStyle::createFromStringWithOverrideAlpha):
  26383. 2010-10-14 Pavel Feldman <pfeldman@chromium.org>
  26384. Not reviewed. Rolling out r69757.
  26385. 2010-10-08 Pavel Feldman <pfeldman@chromium.org>
  26386. Reviewed by Yury Semikhatsky.
  26387. Web Inspector: extract content-related methods into InspectorResourceAgent.
  26388. https://bugs.webkit.org/show_bug.cgi?id=47415
  26389. This is needed for resource-tracking-less operation of resources panel.
  26390. * CMakeLists.txt:
  26391. * GNUmakefile.am:
  26392. * WebCore.gypi:
  26393. * WebCore.pro:
  26394. * inspector/InspectorCSSAgent.cpp:
  26395. * inspector/InspectorResource.cpp:
  26396. (WebCore::InspectorResource::type):
  26397. (WebCore::InspectorResource::sourceString):
  26398. (WebCore::InspectorResource::sourceBytes):
  26399. * inspector/InspectorResource.h:
  26400. * inspector/InspectorResourceAgent.cpp: Added.
  26401. (WebCore::InspectorResourceAgent::resourceContent):
  26402. (WebCore::InspectorResourceAgent::resourceContentBase64):
  26403. (WebCore::InspectorResourceAgent::resourceData):
  26404. (WebCore::InspectorResourceAgent::cachedResourceType):
  26405. (WebCore::InspectorResourceAgent::cachedResource):
  26406. * inspector/InspectorResourceAgent.h: Added.
  26407. * inspector/InspectorStyleSheet.cpp:
  26408. (WebCore::InspectorStyleSheet::resourceStyleSheetText):
  26409. * inspector/InspectorUtilities.cpp: Removed.
  26410. * inspector/InspectorUtilities.h: Removed.
  26411. 2010-10-14 Andreas Kling <kling@webkit.org>
  26412. Reviewed by Darin Adler.
  26413. Canvas: "currentColor" should inherit the canvas element's color
  26414. https://bugs.webkit.org/show_bug.cgi?id=40273
  26415. Add support for "currentColor" in CanvasRenderingContext2D APIs.
  26416. If the canvas is in-document, "currentColor" is replaced by canvas.style.color,
  26417. otherwise we use fully opaque black.
  26418. For gradient addColorStop(), "currentColor" always means fully opaque black.
  26419. Spec link:
  26420. http://www.whatwg.org/specs/web-apps/current-work/#2dcontext
  26421. Test: fast/canvas/canvas-currentColor.html
  26422. * html/canvas/CanvasGradient.cpp:
  26423. (WebCore::CanvasGradient::addColorStop):
  26424. * html/canvas/CanvasRenderingContext2D.cpp:
  26425. (WebCore::CanvasRenderingContext2D::setStrokeStyle):
  26426. (WebCore::CanvasRenderingContext2D::setFillStyle):
  26427. (WebCore::CanvasRenderingContext2D::setShadowColor):
  26428. (WebCore::CanvasRenderingContext2D::setShadow):
  26429. * html/canvas/CanvasStyle.cpp:
  26430. (WebCore::parseColor):
  26431. (WebCore::currentColor):
  26432. (WebCore::parseColorOrCurrentColor):
  26433. (WebCore::CanvasStyle::CanvasStyle):
  26434. (WebCore::CanvasStyle::createFromString):
  26435. (WebCore::CanvasStyle::createFromStringWithOverrideAlpha):
  26436. (WebCore::CanvasStyle::isEquivalentColor):
  26437. (WebCore::CanvasStyle::applyStrokeColor):
  26438. (WebCore::CanvasStyle::applyFillColor):
  26439. * html/canvas/CanvasStyle.h:
  26440. (WebCore::CanvasStyle::isCurrentColor):
  26441. (WebCore::CanvasStyle::hasOverrideAlpha):
  26442. (WebCore::CanvasStyle::overrideAlpha):
  26443. 2010-10-08 Yury Semikhatsky <yurys@chromium.org>
  26444. Reviewed by Pavel Feldman.
  26445. Web Inspector: [REGRESSION] Scripts panel: the bubble shows wrong values
  26446. https://bugs.webkit.org/show_bug.cgi?id=47358
  26447. Test: inspector/debugger-eval-on-call-frame.html
  26448. * inspector/front-end/InjectedScript.js:
  26449. (injectedScriptConstructor.): don't embrace expression evaluated in the local scope
  26450. of a call frame into with(window) to avoid shadowing local variables by global ones.
  26451. 2010-10-13 Adam Barth <abarth@webkit.org>
  26452. Reviewed by Darin Adler.
  26453. Implement getParameter from the URL API
  26454. https://bugs.webkit.org/show_bug.cgi?id=46610
  26455. Another API from
  26456. https://docs.google.com/document/edit?id=1r_VTFKApVOaNIkocrg0z-t7lZgzisTuGTXkdzAk4gLU&hl=en#
  26457. getParameter lets a web site easily read the value of a URL parameter.
  26458. This API is for the simple case of a non-repeated parameter name.
  26459. getParameterAll will handle repeated parameter names in a future patch.
  26460. Tests: fast/dom/anchor-getParameter.html
  26461. http/tests/misc/location-getParameter.html
  26462. * html/HTMLAnchorElement.cpp:
  26463. (WebCore::HTMLAnchorElement::getParameter):
  26464. * html/HTMLAnchorElement.h:
  26465. * html/HTMLAnchorElement.idl:
  26466. * page/Location.cpp:
  26467. (WebCore::Location::getParameter):
  26468. * page/Location.h:
  26469. * page/Location.idl:
  26470. * platform/KURL.cpp:
  26471. (WebCore::KURL::copyParsedQueryTo):
  26472. * platform/KURLGoogle.cpp:
  26473. (WebCore::KURL::copyParsedQueryTo):
  26474. * platform/KURL.h:
  26475. 2010-10-14 Alejandro G. Castro <alex@igalia.com>
  26476. Unreviewed. GTK build fix.
  26477. * platform/network/soup/ResourceHandleSoup.cpp:
  26478. (WebCore::sendRequestCallback):
  26479. 2010-10-14 Adrienne Walker <enne@google.com>
  26480. Reviewed by James Robinson.
  26481. Add a short-term solution for large layers. Layers that are too
  26482. large to be contained in a single texture just upload the portion of
  26483. the layer that is within the content rect. A longer-term solution
  26484. is still tiling with proper memory management. Layers that have full
  26485. 3D transforms (more than just translations) are still not drawn.
  26486. https://bugs.webkit.org/show_bug.cgi?id=47016
  26487. Test: compositing/tiling
  26488. * platform/graphics/chromium/ContentLayerChromium.cpp:
  26489. (WebCore::ContentLayerChromium::ContentLayerChromium):
  26490. (WebCore::ContentLayerChromium::requiresClippedUpdateRect):
  26491. (WebCore::ContentLayerChromium::calculateClippedUpdateRect):
  26492. (WebCore::ContentLayerChromium::updateContents):
  26493. (WebCore::ContentLayerChromium::updateTextureRect):
  26494. (WebCore::ContentLayerChromium::draw):
  26495. * platform/graphics/chromium/ContentLayerChromium.h:
  26496. * platform/graphics/chromium/ImageLayerChromium.cpp:
  26497. (WebCore::ImageLayerChromium::updateContents):
  26498. * platform/graphics/chromium/LayerRendererChromium.cpp:
  26499. (WebCore::LayerRendererChromium::drawLayers):
  26500. * platform/graphics/chromium/LayerRendererChromium.h:
  26501. (WebCore::LayerRendererChromium::rootLayerContentRect):
  26502. 2010-10-14 Chris Rogers <crogers@google.com>
  26503. Reviewed by Chris Fleizach.
  26504. Add DelayDSPKernel files
  26505. https://bugs.webkit.org/show_bug.cgi?id=47518
  26506. No new tests since audio API is not yet implemented.
  26507. * webaudio/DelayDSPKernel.cpp: Added.
  26508. (WebCore::DelayDSPKernel::DelayDSPKernel):
  26509. (WebCore::DelayDSPKernel::process):
  26510. (WebCore::DelayDSPKernel::reset):
  26511. * webaudio/DelayDSPKernel.h: Added.
  26512. (WebCore::DelayDSPKernel::maxDelayTime):
  26513. (WebCore::DelayDSPKernel::setDelayFrames):
  26514. (WebCore::DelayDSPKernel::delayProcessor):
  26515. 2010-10-13 Sergio Villar Senin <svillar@igalia.com>
  26516. Reviewed by Martin Robinson.
  26517. WebKitGtk+ to use the new API from the imported SoupURILoader code
  26518. [GTK] Add HTTP caching support
  26519. https://bugs.webkit.org/show_bug.cgi?id=44261
  26520. ResourceHandleSoup now does everything via SoupURILoader. This means
  26521. that all URLs are handled via the same code path, where WebCore simply
  26522. asks libsoup for a WebKitSoupRequest and the request returns an input
  26523. stream. Many of ResourceHandleSoup's data members are now PlatformRefPtr
  26524. as well, to simplify reference counting
  26525. * platform/network/ResourceHandleInternal.h:
  26526. (WebCore::ResourceHandleInternal::ResourceHandleInternal):
  26527. * platform/network/soup/ResourceHandleSoup.cpp:
  26528. (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
  26529. (WebCore::ResourceHandle::~ResourceHandle):
  26530. (WebCore::restartedCallback):
  26531. (WebCore::gotChunkCallback):
  26532. (WebCore::parseDataUrl):
  26533. (WebCore::cleanupSoupRequestOperation):
  26534. (WebCore::sendRequestCallback):
  26535. (WebCore::startHttp):
  26536. (WebCore::ResourceHandle::start):
  26537. (WebCore::ResourceHandle::cancel):
  26538. (WebCore::closeCallback):
  26539. (WebCore::readCallback):
  26540. (WebCore::startGio):
  26541. * platform/network/soup/ResourceRequest.h:
  26542. * platform/network/soup/ResourceRequestSoup.cpp:
  26543. (WebCore::ResourceRequest::updateSoupMessage):
  26544. 2010-10-12 Abhishek Arya <inferno@chromium.org>
  26545. Reviewed by Darin Adler.
  26546. Prevent block logical height of a root inline box from overflowing by clamping it
  26547. at INT_MAX. Otherwise, we will not be able to properly dirty the set of lines during
  26548. removal a floating object.
  26549. https://bugs.webkit.org/show_bug.cgi?id=45611
  26550. Test: fast/overflow/overflow-block-logical-height-crash.html
  26551. * rendering/RootInlineBox.cpp:
  26552. (WebCore::RootInlineBox::alignBoxesInBlockDirection):
  26553. 2010-10-13 James Robinson <jamesr@chromium.org>
  26554. Reviewed by Darin Adler.
  26555. Throw INDEX_SIZE_ERR exception if createRadialGradient is called with a negative radius
  26556. Canvas: radialGradient with negative radius should throw exception
  26557. https://bugs.webkit.org/show_bug.cgi?id=37176
  26558. This matches the canvas 2d specification, Opera, IE9 beta and our behavior for arc()
  26559. and arcTo(). Also fixes some PassRefPtr/RefPtr errors in this file.
  26560. Test: canvas/philip/tests/2d.gradient.radial.negative.html
  26561. * html/canvas/CanvasRenderingContext2D.cpp:
  26562. (WebCore::CanvasRenderingContext2D::createLinearGradient):
  26563. (WebCore::CanvasRenderingContext2D::createRadialGradient):
  26564. (WebCore::createEmptyImageData):
  26565. (WebCore::CanvasRenderingContext2D::measureText):
  26566. 2010-10-13 Fridrich Strba <fridrich.strba@bluewin.ch>
  26567. Reviewed by Darin Adler.
  26568. Add WebCore/plugins/win directory to CFLAGS
  26569. https://bugs.webkit.org/show_bug.cgi?id=45547
  26570. * GNUmakefile.am:
  26571. 2010-10-13 Martin Robinson <mrobinson@igalia.com>
  26572. Build fix for older versions of libsoup.
  26573. * platform/network/soup/cache/soup-request-file.c:
  26574. (webkit_soup_request_file_ensure_file): Access the path member of the SoupURI directly.
  26575. 2010-10-13 Kwang Yul Seo <skyul@company100.net>
  26576. Reviewed by Kent Tamura.
  26577. [BREWMP] Add TextBoundaries and TextBreakIterator
  26578. https://bugs.webkit.org/show_bug.cgi?id=46105
  26579. Copy the implementation of WinCE port.
  26580. * platform/text/brew/TextBoundariesBrew.cpp: Added.
  26581. (WebCore::findNextWordFromIndex):
  26582. (WebCore::findWordBoundary):
  26583. * platform/text/brew/TextBreakIteratorBrew.cpp: Added.
  26584. (WebCore::isCharStop):
  26585. (WebCore::isLineStop):
  26586. (WebCore::isSentenceStop):
  26587. (WebCore::TextBreakIterator::reset):
  26588. (WebCore::TextBreakIterator::following):
  26589. (WebCore::TextBreakIterator::preceding):
  26590. (WebCore::WordBreakIterator::first):
  26591. (WebCore::WordBreakIterator::next):
  26592. (WebCore::WordBreakIterator::previous):
  26593. (WebCore::CharBreakIterator::first):
  26594. (WebCore::CharBreakIterator::next):
  26595. (WebCore::CharBreakIterator::previous):
  26596. (WebCore::LineBreakIterator::first):
  26597. (WebCore::LineBreakIterator::next):
  26598. (WebCore::LineBreakIterator::previous):
  26599. (WebCore::SentenceBreakIterator::first):
  26600. (WebCore::SentenceBreakIterator::next):
  26601. (WebCore::SentenceBreakIterator::previous):
  26602. (WebCore::wordBreakIterator):
  26603. (WebCore::characterBreakIterator):
  26604. (WebCore::lineBreakIterator):
  26605. (WebCore::sentenceBreakIterator):
  26606. (WebCore::textBreakFirst):
  26607. (WebCore::textBreakNext):
  26608. (WebCore::textBreakPreceding):
  26609. (WebCore::textBreakFollowing):
  26610. (WebCore::textBreakCurrent):
  26611. (WebCore::isTextBreak):
  26612. (WebCore::cursorMovementIterator):
  26613. 2010-10-13 Jeremy Orlow <jorlow@chromium.org>
  26614. Reviewed by Nate Chapin.
  26615. IndexedDB should fire some errors synchronously
  26616. https://bugs.webkit.org/show_bug.cgi?id=47530
  26617. Add dumb plumbing to pass around exception codes.
  26618. Utilize that plumbing in the backend to fire some
  26619. errors synchronously.
  26620. Verify that create/remove* functions are only called
  26621. in setVersionTransactions (and raise when not).
  26622. Remove plumbing for obsolete IDBDatabase.objectStore
  26623. Remove obsolete mode param.
  26624. * storage/IDBCursor.cpp:
  26625. (WebCore::IDBCursor::update):
  26626. (WebCore::IDBCursor::continueFunction):
  26627. (WebCore::IDBCursor::remove):
  26628. * storage/IDBCursor.h:
  26629. (WebCore::IDBCursor::continueFunction):
  26630. * storage/IDBCursor.idl:
  26631. * storage/IDBCursorBackendImpl.cpp:
  26632. (WebCore::IDBCursorBackendImpl::update):
  26633. (WebCore::IDBCursorBackendImpl::continueFunction):
  26634. (WebCore::IDBCursorBackendImpl::remove):
  26635. * storage/IDBCursorBackendImpl.h:
  26636. * storage/IDBCursorBackendInterface.h:
  26637. * storage/IDBDatabase.cpp:
  26638. (WebCore::IDBDatabase::IDBDatabase):
  26639. (WebCore::IDBDatabase::createObjectStore):
  26640. (WebCore::IDBDatabase::removeObjectStore):
  26641. (WebCore::IDBDatabase::setVersion):
  26642. (WebCore::IDBDatabase::transaction):
  26643. * storage/IDBDatabase.h:
  26644. (WebCore::IDBDatabase::createObjectStore):
  26645. (WebCore::IDBDatabase::transaction):
  26646. * storage/IDBDatabase.idl:
  26647. * storage/IDBDatabaseBackendImpl.cpp:
  26648. (WebCore::IDBDatabaseBackendImpl::createObjectStore):
  26649. (WebCore::IDBDatabaseBackendImpl::objectStore):
  26650. (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
  26651. (WebCore::IDBDatabaseBackendImpl::setVersion):
  26652. (WebCore::IDBDatabaseBackendImpl::transaction):
  26653. * storage/IDBDatabaseBackendImpl.h:
  26654. * storage/IDBDatabaseBackendInterface.h:
  26655. * storage/IDBFactory.cpp:
  26656. (WebCore::IDBFactory::open):
  26657. * storage/IDBFactory.h:
  26658. (WebCore::IDBFactory::open):
  26659. * storage/IDBFactory.idl:
  26660. * storage/IDBIndex.cpp:
  26661. (WebCore::IDBIndex::openCursor):
  26662. (WebCore::IDBIndex::openKeyCursor):
  26663. (WebCore::IDBIndex::get):
  26664. (WebCore::IDBIndex::getKey):
  26665. * storage/IDBIndex.h:
  26666. (WebCore::IDBIndex::openCursor):
  26667. (WebCore::IDBIndex::openKeyCursor):
  26668. * storage/IDBIndex.idl:
  26669. * storage/IDBIndexBackendImpl.cpp:
  26670. (WebCore::IDBIndexBackendImpl::openCursor):
  26671. (WebCore::IDBIndexBackendImpl::openKeyCursor):
  26672. (WebCore::IDBIndexBackendImpl::get):
  26673. (WebCore::IDBIndexBackendImpl::getKey):
  26674. * storage/IDBIndexBackendImpl.h:
  26675. * storage/IDBIndexBackendInterface.h:
  26676. * storage/IDBObjectStore.cpp:
  26677. (WebCore::IDBObjectStore::get):
  26678. (WebCore::IDBObjectStore::add):
  26679. (WebCore::IDBObjectStore::put):
  26680. (WebCore::IDBObjectStore::remove):
  26681. (WebCore::IDBObjectStore::createIndex):
  26682. (WebCore::IDBObjectStore::index):
  26683. (WebCore::IDBObjectStore::removeIndex):
  26684. (WebCore::IDBObjectStore::openCursor):
  26685. * storage/IDBObjectStore.h:
  26686. (WebCore::IDBObjectStore::add):
  26687. (WebCore::IDBObjectStore::put):
  26688. (WebCore::IDBObjectStore::createIndex):
  26689. (WebCore::IDBObjectStore::openCursor):
  26690. * storage/IDBObjectStore.idl:
  26691. * storage/IDBObjectStoreBackendImpl.cpp:
  26692. (WebCore::IDBObjectStoreBackendImpl::get):
  26693. (WebCore::IDBObjectStoreBackendImpl::put):
  26694. (WebCore::IDBObjectStoreBackendImpl::remove):
  26695. (WebCore::IDBObjectStoreBackendImpl::createIndex):
  26696. (WebCore::IDBObjectStoreBackendImpl::index):
  26697. (WebCore::IDBObjectStoreBackendImpl::removeIndex):
  26698. (WebCore::IDBObjectStoreBackendImpl::openCursor):
  26699. * storage/IDBObjectStoreBackendImpl.h:
  26700. (WebCore::IDBObjectStoreBackendImpl::name):
  26701. (WebCore::IDBObjectStoreBackendImpl::keyPath):
  26702. (WebCore::IDBObjectStoreBackendImpl::autoIncrement):
  26703. * storage/IDBObjectStoreBackendInterface.h:
  26704. * storage/IDBTransaction.cpp:
  26705. (WebCore::IDBTransaction::objectStore):
  26706. * storage/IDBTransaction.h:
  26707. * storage/IDBTransactionBackendImpl.cpp:
  26708. (WebCore::IDBTransactionBackendImpl::objectStore):
  26709. 2010-10-13 Sergio Villar Senin <svillar@igalia.com>
  26710. Reviewed by Martin Robinson.
  26711. [GTK] Add HTTP caching support
  26712. https://bugs.webkit.org/show_bug.cgi?id=44261
  26713. This patch adds HTTP caching support to libsoup networking backend.
  26714. This code will eventually be part of libsoup, but has been temporarily
  26715. imported into the WebCore tree for testing purposes. All libsoup code
  26716. is located in WebCore/platform/network/soup/cache. The webkit prefix
  26717. was added to all the symbols to prevent problems when this lands in
  26718. libsoup. Some external API was also added under webkit/ directory and
  26719. will be used by library clients to enable HTTP caching.
  26720. There are two parts to this imported code, the first one is the code
  26721. under WebCore/platform/network/soup/cache/ that contains all the
  26722. SoupURILoader code that supports the development of the cache. The
  26723. second part is the HTTP cache implementation located in
  26724. WebCore/platform/network/soup/cache/webkit/.
  26725. * GNUmakefile.am:
  26726. * platform/network/soup/cache/soup-directory-input-stream.c: Added.
  26727. (webkit_soup_directory_input_stream_parse_info):
  26728. (webkit_soup_directory_input_stream_read_next_file):
  26729. (webkit_soup_directory_input_stream_read):
  26730. (webkit_soup_directory_input_stream_close):
  26731. (webkit_soup_directory_input_stream_class_init):
  26732. (webkit_soup_directory_input_stream_init):
  26733. (webkit_soup_directory_input_stream_new):
  26734. * platform/network/soup/cache/soup-directory-input-stream.h: Added.
  26735. * platform/network/soup/cache/soup-http-input-stream.c: Added.
  26736. (webkit_soup_http_input_stream_finalize):
  26737. (webkit_soup_http_input_stream_class_init):
  26738. (webkit_soup_http_input_stream_seekable_iface_init):
  26739. (webkit_soup_http_input_stream_init):
  26740. (webkit_soup_http_input_stream_queue_message):
  26741. (webkit_soup_http_input_stream_new):
  26742. (webkit_soup_http_input_stream_got_headers):
  26743. (webkit_soup_http_input_stream_got_chunk):
  26744. (webkit_soup_http_input_stream_finished):
  26745. (webkit_soup_http_input_stream_cancelled):
  26746. (webkit_soup_http_input_stream_prepare_for_io):
  26747. (webkit_soup_http_input_stream_done_io):
  26748. (set_error_if_http_failed):
  26749. (read_from_leftover):
  26750. (webkit_soup_http_input_stream_send_internal):
  26751. (send_sync_finished):
  26752. (webkit_soup_http_input_stream_send):
  26753. (webkit_soup_http_input_stream_read):
  26754. (webkit_soup_http_input_stream_close):
  26755. (wrapper_callback):
  26756. (send_async_thread):
  26757. (webkit_soup_http_input_stream_send_async_in_thread):
  26758. (send_async_finished):
  26759. (webkit_soup_http_input_stream_send_async_internal):
  26760. (webkit_soup_http_input_stream_send_async):
  26761. (webkit_soup_http_input_stream_send_finish):
  26762. (read_async_done):
  26763. (webkit_soup_http_input_stream_read_async):
  26764. (webkit_soup_http_input_stream_read_finish):
  26765. (webkit_soup_http_input_stream_close_async):
  26766. (webkit_soup_http_input_stream_close_finish):
  26767. (webkit_soup_http_input_stream_tell):
  26768. (webkit_soup_http_input_stream_can_seek):
  26769. (webkit_soup_http_input_stream_seek):
  26770. (webkit_soup_http_input_stream_can_truncate):
  26771. (webkit_soup_http_input_stream_truncate):
  26772. (webkit_soup_http_input_stream_get_message):
  26773. * platform/network/soup/cache/soup-http-input-stream.h: Added.
  26774. * platform/network/soup/cache/soup-request-data.c: Added.
  26775. (webkit_soup_request_data_init):
  26776. (webkit_soup_request_data_finalize):
  26777. (webkit_soup_request_data_check_uri):
  26778. (uri_decoded_copy):
  26779. (webkit_soup_request_data_send):
  26780. (webkit_soup_request_data_get_content_length):
  26781. (webkit_soup_request_data_get_content_type):
  26782. (webkit_soup_request_data_class_init):
  26783. * platform/network/soup/cache/soup-request-data.h: Added.
  26784. * platform/network/soup/cache/soup-request-file.c: Added.
  26785. (webkit_soup_request_file_get_file):
  26786. (webkit_soup_request_file_init):
  26787. (webkit_soup_request_file_finalize):
  26788. (webkit_soup_request_file_check_uri):
  26789. (webkit_soup_request_file_ftp_main_loop_quit):
  26790. (webkit_soup_request_file_ensure_file_ftp):
  26791. (webkit_soup_request_file_ensure_file):
  26792. (webkit_soup_request_file_send):
  26793. (webkit_soup_request_file_send_async_thread):
  26794. (webkit_soup_request_file_send_async):
  26795. (webkit_soup_request_file_send_finish):
  26796. (webkit_soup_request_file_get_content_length):
  26797. (webkit_soup_request_file_get_content_type):
  26798. (webkit_soup_request_file_class_init):
  26799. * platform/network/soup/cache/soup-request-file.h: Added.
  26800. * platform/network/soup/cache/soup-request-http.c: Added.
  26801. (webkit_soup_request_http_get_message):
  26802. (webkit_soup_request_http_init):
  26803. (webkit_soup_request_http_check_uri):
  26804. (webkit_soup_request_http_finalize):
  26805. (webkit_soup_request_http_send):
  26806. (sent_async):
  26807. (conditional_get_ready_cb):
  26808. (send_async_cb):
  26809. (webkit_soup_request_http_send_async):
  26810. (webkit_soup_request_http_send_finish):
  26811. (webkit_soup_request_http_get_content_length):
  26812. (webkit_soup_request_http_get_content_type):
  26813. (webkit_soup_request_http_class_init):
  26814. * platform/network/soup/cache/soup-request-http.h: Added.
  26815. * platform/network/soup/cache/soup-request.c: Added.
  26816. (webkit_soup_request_init):
  26817. (webkit_soup_request_finalize):
  26818. (webkit_soup_request_set_property):
  26819. (webkit_soup_request_get_property):
  26820. (webkit_soup_request_initable_init):
  26821. (webkit_soup_request_default_check_uri):
  26822. (webkit_soup_request_default_send_async):
  26823. (webkit_soup_request_default_send_finish):
  26824. (webkit_soup_request_send):
  26825. (webkit_soup_request_send_async):
  26826. (webkit_soup_request_send_finish):
  26827. (webkit_soup_request_class_init):
  26828. (webkit_soup_request_initable_interface_init):
  26829. (webkit_soup_request_get_uri):
  26830. (webkit_soup_request_get_session):
  26831. (webkit_soup_request_get_content_length):
  26832. (webkit_soup_request_get_content_type):
  26833. * platform/network/soup/cache/soup-request.h: Added.
  26834. * platform/network/soup/cache/soup-requester.c: Added.
  26835. (webkit_soup_requester_init):
  26836. (finalize):
  26837. (webkit_soup_requester_class_init):
  26838. (init_request_types):
  26839. (webkit_soup_requester_new):
  26840. (webkit_soup_requester_request):
  26841. (webkit_soup_requester_request_uri):
  26842. (webkit_soup_scheme_is_valid):
  26843. (webkit_soup_requester_add_protocol):
  26844. (webkit_soup_requester_remove_protocol):
  26845. (webkit_soup_error_quark):
  26846. * platform/network/soup/cache/soup-requester.h: Added.
  26847. * platform/network/soup/cache/webkit/soup-cache-private.h: Added.
  26848. * platform/network/soup/cache/webkit/soup-cache.c: Added.
  26849. (get_cacheability):
  26850. (webkit_soup_cache_entry_free):
  26851. (copy_headers):
  26852. (update_headers):
  26853. (webkit_soup_cache_entry_get_current_age):
  26854. (webkit_soup_cache_entry_is_fresh_enough):
  26855. (webkit_soup_message_get_cache_key):
  26856. (webkit_soup_cache_entry_set_freshness):
  26857. (webkit_soup_cache_entry_new):
  26858. (webkit_soup_cache_writing_fixture_free):
  26859. (close_ready_cb):
  26860. (write_ready_cb):
  26861. (msg_got_chunk_cb):
  26862. (msg_got_body_cb):
  26863. (webkit_soup_cache_entry_delete):
  26864. (lru_compare_func):
  26865. (cache_accepts_entries_of_size):
  26866. (make_room_for_new_entry):
  26867. (webkit_soup_cache_entry_insert_by_key):
  26868. (msg_restarted_cb):
  26869. (append_to_ready_cb):
  26870. (msg_got_headers_cb):
  26871. (webkit_soup_cache_send_response):
  26872. (request_started):
  26873. (attach):
  26874. (webkit_soup_cache_session_feature_init):
  26875. (webkit_soup_cache_init):
  26876. (webkit_soup_cache_finalize):
  26877. (webkit_soup_cache_set_property):
  26878. (webkit_soup_cache_get_property):
  26879. (webkit_soup_cache_constructed):
  26880. (webkit_soup_cache_type_get_type):
  26881. (webkit_soup_cache_class_init):
  26882. (webkit_soup_cache_new):
  26883. (webkit_soup_cache_has_response):
  26884. (webkit_soup_cache_get_cacheability):
  26885. (force_flush_timeout):
  26886. (webkit_soup_cache_flush):
  26887. (remove_cache_item):
  26888. (webkit_soup_cache_clear):
  26889. (webkit_soup_cache_generate_conditional_request):
  26890. (pack_entry):
  26891. (webkit_soup_cache_dump):
  26892. (webkit_soup_cache_load):
  26893. (webkit_soup_cache_set_max_size):
  26894. (webkit_soup_cache_get_max_size):
  26895. * platform/network/soup/cache/webkit/soup-cache.h: Added.
  26896. 2010-10-13 Gavin Barraclough <barraclough@apple.com>
  26897. Chromium build fix.
  26898. * bindings/v8/ScriptProfiler.cpp:
  26899. 2010-10-13 Chris Evans <cevans@google.com>
  26900. Reviewed by Jian Li.
  26901. Blob / BlobBuilder can be put into bad state with wild integers and strings, due to integer overflows
  26902. https://bugs.webkit.org/show_bug.cgi?id=47382
  26903. Fix integer overflow errors in Blob.slice and BlobBuilder.append.
  26904. Test: fast/files/blob-slice-overflow.html
  26905. * fileapi/Blob.cpp:
  26906. (WebCore::Blob::slice): handle integer overflow properly.
  26907. * fileapi/BlobBuilder.cpp:
  26908. (WebCore::BlobBuilder::append): use correct type for vector length.
  26909. 2010-10-13 Gavin Barraclough <barraclough@apple.com>
  26910. Build fix - remove some redundant references to ScriptString.
  26911. * WebCore.gypi:
  26912. * WebCore.pro:
  26913. * bindings/v8/ScriptProfiler.cpp:
  26914. 2010-10-13 Gavin Barraclough <barraclough@apple.com>
  26915. Reviewed by Oliver Hunt.
  26916. Bug 47621 - Remove bindings/v8/ScriptString
  26917. This is now redundant.
  26918. * bindings/v8/ScriptCallFrame.h:
  26919. (WebCore::ScriptCallFrame::functionName):
  26920. * bindings/v8/ScriptFunctionCall.cpp:
  26921. * bindings/v8/ScriptFunctionCall.h:
  26922. * bindings/v8/ScriptString.h: Removed.
  26923. * bindings/v8/ScriptStringImpl.cpp: Removed.
  26924. * bindings/v8/ScriptStringImpl.h: Removed.
  26925. 2010-10-13 Anders Carlsson <andersca@apple.com>
  26926. Reviewed by John Sullivan.
  26927. Draw the find overlay holes
  26928. https://bugs.webkit.org/show_bug.cgi?id=47631
  26929. Export symbols needed by WebKit2.
  26930. * WebCore.exp.in:
  26931. 2010-10-13 James Simonsen <simonjam@chromium.org>
  26932. Reviewed by Darin Adler.
  26933. Implement onreadystatechange event handler for Documents
  26934. https://bugs.webkit.org/show_bug.cgi?id=26140
  26935. Test: fast/dom/Document/readystate.html
  26936. * dom/Document.cpp:
  26937. (WebCore::Document::setReadyState): Fire readystatechangeevent.
  26938. (WebCore::Document::open): Clear event listeners.
  26939. * dom/Document.h: Add readystatechange event.
  26940. * dom/Document.idl: Ditto.
  26941. 2010-10-13 Chris Fleizach <cfleizach@apple.com>
  26942. Reviewed by Beth Dakin.
  26943. AX: accessibilityIsIgnored not respected on ARIA tables
  26944. https://bugs.webkit.org/show_bug.cgi?id=47564
  26945. For platforms that ignore column headers and header container objects (everything
  26946. except Mac) on accessibility tables, that choice needs to be respected in
  26947. ARIA tables as well.
  26948. GTK is the only open platform doing this, so I'll have to collect the result of this
  26949. test. It was copied from table-hierarchy.html, but changed to use ARIA tables.
  26950. Test: platform/gtk/accessibility/aria-table-hierarchy.html
  26951. * accessibility/AccessibilityARIAGrid.cpp:
  26952. (WebCore::AccessibilityARIAGrid::addChildren):
  26953. 2010-10-13 Victoria Kirst <vrk@google.com>
  26954. Reviewed by James Robinson.
  26955. No longer ASSERT for LayerRenderer in VideoLayerChromium destructor
  26956. https://bugs.webkit.org/show_bug.cgi?id=47432
  26957. * platform/graphics/chromium/VideoLayerChromium.cpp:
  26958. (WebCore::VideoLayerChromium::cleanupResources):
  26959. 2010-10-13 Leandro Pereira <leandro@profusion.mobi>
  26960. [EFL] Unreviewed. Build fix.
  26961. * CMakeLists.txt: Add ContextShadow.cpp.
  26962. * CMakeListsEfl.txt: Add ContextShadowCairo.cpp.
  26963. 2010-10-13 Martin Robinson <mrobinson@igalia.com>
  26964. Reviewed by Holger Freyther.
  26965. [GTK] r69681 caused some tests to crash
  26966. https://bugs.webkit.org/show_bug.cgi?id=47622
  26967. Properly initialize m_layerContext on the ContextShadow so that in situations
  26968. where beginShadowLayer bails out early with a null return value, it is set
  26969. to null. This may happen when the first call to beginShadowLayer on a particular
  26970. ContextShadow uses a region which is entirely outside the clip region or which
  26971. is empty.
  26972. * platform/graphics/cairo/ContextShadow.cpp:
  26973. (WebCore::ContextShadow::ContextShadow): Properly initialize m_layerContext.
  26974. 2010-10-13 Anders Carlsson <andersca@apple.com>
  26975. Reviewed by Beth Dakin.
  26976. Don't set the fill/stroke colorspace before filling/stroking
  26977. https://bugs.webkit.org/show_bug.cgi?id=47619
  26978. Setting the colorspace has the side-effect of setting the color to black, which is
  26979. not what we want. When fill/stroke is called, a fill/stroke color should already have been set.
  26980. Pixel tests show no regressions from this change.
  26981. * platform/graphics/cg/GraphicsContextCG.cpp:
  26982. (WebCore::GraphicsContext::fillPath):
  26983. (WebCore::GraphicsContext::strokePath):
  26984. (WebCore::GraphicsContext::fillRect):
  26985. (WebCore::GraphicsContext::strokeRect):
  26986. 2010-10-13 Brent Fulgham <bfulgham@webkit.org>
  26987. Unreviewed WinCairo build fix.
  26988. New ContextShadow class not built for Windows builds.
  26989. * WebCore.vcproj/WebCore.vcproj: Add missing files for
  26990. building ContextShadow on WinCairo.
  26991. * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
  26992. Add missing include for ContextShadow definition.
  26993. 2010-10-13 Gavin Barraclough <barraclough@apple.com>
  26994. Chromium build fix pt1.
  26995. * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
  26996. (WebCore::V8XMLHttpRequest::responseTextAccessorGetter):
  26997. 2010-10-13 Anders Carlsson <andersca@apple.com>
  26998. Reviewed by Sam Weinig.
  26999. Send over find indicator information to the UI process
  27000. https://bugs.webkit.org/show_bug.cgi?id=47612
  27001. Export symbols needed by WebKit2.
  27002. * WebCore.exp.in:
  27003. 2010-10-13 Gavin Barraclough <barraclough@apple.com>
  27004. Reviewed by Oliver Hunt.
  27005. https://bugs.webkit.org/show_bug.cgi?id=43987
  27006. Switch XMLHttpRequest, FileReader, and FileReaderSync to use a Stringbuilder
  27007. to construct their internal result string. Remove ScriptString (this is now
  27008. redundant).
  27009. * WebCore.xcodeproj/project.pbxproj:
  27010. * bindings/js/JSDOMBinding.cpp:
  27011. (WebCore::jsOwnedStringOrNull):
  27012. * bindings/js/JSDOMBinding.h:
  27013. * bindings/js/JSXMLHttpRequestCustom.cpp:
  27014. (WebCore::JSXMLHttpRequest::responseText):
  27015. * bindings/js/ScriptCallFrame.cpp:
  27016. (WebCore::ScriptCallFrame::ScriptCallFrame):
  27017. * bindings/js/ScriptCallFrame.h:
  27018. (WebCore::ScriptCallFrame::functionName):
  27019. * bindings/js/ScriptCallStack.h:
  27020. * bindings/js/ScriptFunctionCall.cpp:
  27021. * bindings/js/ScriptFunctionCall.h:
  27022. * bindings/js/ScriptString.h: Removed.
  27023. * dom/ScriptExecutionContext.h:
  27024. * fileapi/FileReader.cpp:
  27025. (WebCore::FileReader::FileReader):
  27026. (WebCore::FileReader::abort):
  27027. (WebCore::FileReader::didReceiveData):
  27028. (WebCore::FileReader::result):
  27029. (WebCore::FileReader::convertToText):
  27030. (WebCore::FileReader::convertToDataURL):
  27031. * fileapi/FileReader.h:
  27032. * fileapi/FileReaderSync.cpp:
  27033. (WebCore::FileReaderSyncLoader::FileReaderSyncLoader):
  27034. (WebCore::FileReaderSyncLoader::didReceiveData):
  27035. (WebCore::FileReaderSync::readAsBinaryString):
  27036. (WebCore::FileReaderSync::readAsText):
  27037. (WebCore::FileReaderSync::readAsDataURL):
  27038. (WebCore::FileReaderSync::read):
  27039. (WebCore::FileReaderSync::convertToText):
  27040. * fileapi/FileReaderSync.h:
  27041. (WebCore::FileReaderSync::readAsText):
  27042. (WebCore::FileReaderSync::FileReaderSync):
  27043. * inspector/InspectorController.cpp:
  27044. (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
  27045. (WebCore::InspectorController::scriptImported):
  27046. * inspector/InspectorController.h:
  27047. * inspector/InspectorResource.cpp:
  27048. (WebCore::InspectorResource::setOverrideContent):
  27049. * inspector/InspectorResource.h:
  27050. * loader/FrameLoader.cpp:
  27051. * loader/FrameLoader.h:
  27052. * loader/FrameLoaderClient.h:
  27053. * loader/ResourceLoadNotifier.h:
  27054. * workers/WorkerScriptLoader.h:
  27055. * xml/XMLHttpRequest.cpp:
  27056. (WebCore::XMLHttpRequest::XMLHttpRequest):
  27057. (WebCore::XMLHttpRequest::responseText):
  27058. (WebCore::XMLHttpRequest::responseXML):
  27059. (WebCore::XMLHttpRequest::abort):
  27060. (WebCore::XMLHttpRequest::clearResponse):
  27061. (WebCore::XMLHttpRequest::dropProtection):
  27062. (WebCore::XMLHttpRequest::didFinishLoading):
  27063. (WebCore::XMLHttpRequest::didReceiveData):
  27064. * xml/XMLHttpRequest.h:
  27065. 2010-10-13 Gavin Barraclough <barraclough@apple.com>
  27066. Reviewed by Oliver Hunt.
  27067. Bug 43987 - Downloading using XHR is much slower than before
  27068. * svg/SVGPathStringBuilder.cpp:
  27069. (WebCore::SVGPathStringBuilder::result):
  27070. StringBuilder::size() -> StringBuilder::length().
  27071. 2010-10-13 Yong Li <yoli@rim.com>
  27072. Reviewed by Oliver Hunt.
  27073. Fix potential misaligned memory access in CloneDeserializer::readLittleEndian and readString
  27074. that can result crash on ARM (<v6).
  27075. https://bugs.webkit.org/show_bug.cgi?id=47594
  27076. No new test added, because the crash can be produced by existing tests like:
  27077. LayoutTests/fast/events/message-channel-gc-4.html
  27078. * bindings/js/SerializedScriptValue.cpp:
  27079. (WebCore::CloneDeserializer::readLittleEndian):
  27080. (WebCore::CloneDeserializer::readString):
  27081. 2010-10-06 Martin Robinson <mrobinson@igalia.com>
  27082. Reviewed by Dirk Schulze.
  27083. [Cairo] Activate ContextShadow in all places where shadows are drawn
  27084. https://bugs.webkit.org/show_bug.cgi?id=46475
  27085. Turn on ContextShadow for the Cairo port and remove all old shadow code.
  27086. Shadow tiling optimizations will be added in a followup patch to ContextShadowCairo.
  27087. * platform/graphics/GraphicsContext.h: Add a ContextShadow forward declaration for Cairo.
  27088. * platform/graphics/cairo/FontCairo.cpp: Switch to using ContextShadow.
  27089. (WebCore::prepareContextForGlyphDrawing): Added this helper which sets up the translation
  27090. on the specified cairo_t to prepare for drawing glyphs.
  27091. (WebCore::drawGlyphsToContext): Added this helper which draws the glyphs to a cairo_t,
  27092. while properly handling glyphs with synthetic bold.
  27093. (WebCore::Font::drawGlyphs): Removed old shadow code and replaced it with ContextShadow usage.
  27094. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  27095. (WebCore::drawPathShadow): Modified this to use ContextShadow and to take an enum
  27096. argument specifying whether to fill or stroke the solid figure for the shadow.
  27097. (WebCore::fillCurrentCairoPath): Updated drawPathShadow call.
  27098. (WebCore::strokeCurrentCairoPath): Ditto.
  27099. (WebCore::GraphicsContext::savePlatformState): Save the ContextShadow.
  27100. (WebCore::GraphicsContext::restorePlatformState): Restore the ContextShadow.
  27101. (WebCore::GraphicsContext::drawPath): Updated drawPathShadow call.
  27102. (WebCore::GraphicsContext::fillRect): Uses ContextShadow now.
  27103. (WebCore::GraphicsContext::setPlatformShadow): Uses ContextShadow now.
  27104. (WebCore::GraphicsContext::contextShadow): Added.
  27105. (WebCore::GraphicsContext::clearPlatformShadow): Clears the ContextShadow member.
  27106. (WebCore::GraphicsContext::fillRoundedRect): Updated drawPathShadow call.
  27107. * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
  27108. (WebCore::GraphicsContextPlatformPrivate::hasShadow): Added.
  27109. * platform/graphics/cairo/ImageCairo.cpp:
  27110. (WebCore::BitmapImage::draw): Updated to use ContextShadow.
  27111. 2010-10-13 John Knottenbelt <jknotten@chromium.org>
  27112. Reviewed by Steve Block.
  27113. First step towards client-based Geolocation in Chromium. Build
  27114. fixes for CLIENT_BASED_GEOLOCATION preprocessor feature define.
  27115. https://bugs.webkit.org/show_bug.cgi?id=47586
  27116. * WebCore.gyp/WebCore.gyp:
  27117. * platform/chromium/ChromiumBridge.h:
  27118. * platform/chromium/GeolocationServiceChromium.cpp:
  27119. 2010-10-13 Steve Block <steveblock@google.com>
  27120. Unreviewed fix
  27121. Need to check for the existence of DeviceOrientation and DeviceMotion controllers
  27122. These features can be disabled at run time, so an enable guard is not sufficient.
  27123. This bug was introduced in http://trac.webkit.org/changeset/69646
  27124. Tested with existing tests.
  27125. * history/PageCache.cpp:
  27126. (WebCore::logCanCachePageDecision):
  27127. (WebCore::PageCache::canCache):
  27128. 2010-10-13 Yury Semikhatsky <yurys@chromium.org>
  27129. Reviewed by Pavel Feldman.
  27130. Web Inspector: stack information is inconsistent between console.trace and runtime errors.
  27131. https://bugs.webkit.org/show_bug.cgi?id=47252
  27132. * console.trace() is now formatted the same way as other stack traces
  27133. * If there is //@ sourceURL=url line at the end of eval'ed script source
  27134. the url will be shown in the stack traces for script. That is why ScriptCallFrame::sourceURL
  27135. type has changed from KURL to String.
  27136. Tests: inspector/console-trace-in-eval.html
  27137. inspector/console-uncaught-exception-in-eval.html
  27138. * bindings/js/ScriptCallFrame.cpp:
  27139. (WebCore::ScriptCallFrame::ScriptCallFrame):
  27140. * bindings/js/ScriptCallFrame.h:
  27141. (WebCore::ScriptCallFrame::sourceURL):
  27142. * bindings/v8/ScriptCallFrame.cpp:
  27143. (WebCore::ScriptCallFrame::ScriptCallFrame):
  27144. * bindings/v8/ScriptCallFrame.h:
  27145. (WebCore::ScriptCallFrame::sourceURL):
  27146. * bindings/v8/ScriptCallStack.cpp:
  27147. (WebCore::getFrameLocation):
  27148. (WebCore::ScriptCallStack::create):
  27149. * bindings/v8/ScriptCallStack.h:
  27150. * bindings/v8/ScriptController.cpp:
  27151. (WebCore::ScriptController::setCaptureCallStackForUncaughtExceptions):
  27152. * bindings/v8/custom/V8ConsoleCustom.cpp:
  27153. (WebCore::V8Console::traceCallback):
  27154. * inspector/ConsoleMessage.cpp:
  27155. (WebCore::ConsoleMessage::CallFrame::buildInspectorObject):
  27156. (WebCore::ConsoleMessage::ConsoleMessage):
  27157. * inspector/ConsoleMessage.h:
  27158. * inspector/front-end/ConsoleView.js:
  27159. (WebInspector.ConsoleMessage.prototype._formatMessage):
  27160. * page/Console.cpp:
  27161. (WebCore::Console::addMessage):
  27162. (WebCore::Console::count):
  27163. (WebCore::Console::timeEnd):
  27164. 2010-10-13 Kent Tamura <tkent@chromium.org>
  27165. Unreviewed, a trivial change.
  27166. Run sort-Xcode-project-file.
  27167. * WebCore.xcodeproj/project.pbxproj:
  27168. 2010-10-13 Yael Aharon <yael.aharon@nokia.com>
  27169. Reviewed by Andreas Kling.
  27170. Wrong ASSERT when select element has size 0
  27171. https://bugs.webkit.org/show_bug.cgi?id=47567
  27172. Keep the ASSERT only if the size of the element list is more than 0
  27173. Test: fast/dom/HTMLSelectElement/click-size-zero-no-crash.html
  27174. * dom/SelectElement.cpp:
  27175. (WebCore::SelectElement::updateListBoxSelection):
  27176. (WebCore::SelectElement::listBoxDefaultEventHandler):
  27177. 2010-10-13 Steve Block <steveblock@google.com>
  27178. Reviewed by Alexey Proskuryakov.
  27179. Pages using DeviceOrientation and DeviceMotion should not go into the page cache
  27180. https://bugs.webkit.org/show_bug.cgi?id=47408
  27181. Tests: fast/dom/DeviceMotion/no-page-cache.html
  27182. fast/dom/DeviceOrientation/no-page-cache.html
  27183. * dom/DeviceMotionController.h:
  27184. (WebCore::DeviceMotionController::isActive):
  27185. * dom/DeviceOrientationController.h:
  27186. (WebCore::DeviceOrientationController::isActive):
  27187. * history/PageCache.cpp:
  27188. (WebCore::logCanCachePageDecision):
  27189. (WebCore::PageCache::canCache):
  27190. * page/Page.cpp:
  27191. 2010-10-13 Jenn Braithwaite <jennb@chromium.org>
  27192. Reviewed by Dmitry Titov.
  27193. Make resource identifiers unique across pages
  27194. https://bugs.webkit.org/show_bug.cgi?id=47002
  27195. Test: http/tests/misc/iframe-reparenting-id-collision.html
  27196. * loader/ProgressTracker.cpp:
  27197. (WebCore::ProgressTracker::ProgressTracker):
  27198. (WebCore::ProgressTracker::createUniqueIdentifier):
  27199. * loader/ProgressTracker.h:
  27200. 2010-10-12 Roland Steiner <rolandsteiner@chromium.org>
  27201. Reviewed by David Hyatt.
  27202. Bug 41040 - :before/:after content should not become part of a ruby base
  27203. https://bugs.webkit.org/show_bug.cgi?id=41040
  27204. Also related to:
  27205. https://bugs.webkit.org/show_bug.cgi?id=40895.
  27206. https://bugs.webkit.org/show_bug.cgi?id=43722.
  27207. Explicitly handle :before and :after content in the default way.
  27208. Test: fast/ruby/ruby-beforeafter.html
  27209. fast/ruby/after-doesnt-crash.html
  27210. * rendering/RenderObject.h:
  27211. (WebCore::RenderObject::isBeforeContent):
  27212. * rendering/RenderRuby.cpp:
  27213. (WebCore::lastRubyRun):
  27214. (WebCore::RenderRubyAsInline::addChild):
  27215. (WebCore::RenderRubyAsInline::removeChild):
  27216. (WebCore::RenderRubyAsBlock::addChild):
  27217. (WebCore::RenderRubyAsBlock::removeChild):
  27218. 2010-10-12 Sheriff Bot <webkit.review.bot@gmail.com>
  27219. Unreviewed, rolling out r69639.
  27220. http://trac.webkit.org/changeset/69639
  27221. https://bugs.webkit.org/show_bug.cgi?id=47575
  27222. "regressed nav-element.html" (Requested by rniwa on #webkit).
  27223. * editing/ApplyBlockElementCommand.cpp:
  27224. (WebCore::ApplyBlockElementCommand::formatSelection):
  27225. * editing/EditorCommand.cpp:
  27226. (WebCore::executeFormatBlock):
  27227. * editing/FormatBlockCommand.cpp:
  27228. (WebCore::FormatBlockCommand::formatRange):
  27229. * editing/FormatBlockCommand.h:
  27230. (WebCore::FormatBlockCommand::editingAction):
  27231. * editing/VisiblePosition.cpp:
  27232. (WebCore::enclosingBlockFlowElement):
  27233. * editing/VisiblePosition.h:
  27234. * editing/htmlediting.cpp:
  27235. (WebCore::validBlockTag):
  27236. * editing/htmlediting.h:
  27237. 2010-10-12 Ryosuke Niwa <rniwa@webkit.org>
  27238. Reviewed by Tony Chang.
  27239. execCommand FormatBlock creates lots of blockquotes
  27240. https://bugs.webkit.org/show_bug.cgi?id=19795
  27241. The bug was caused by WebKit's not reusing the block node added by previous iteration
  27242. and its inserting block node at wrong places.
  27243. Fixed the bug by rewriting FormatBlockCommand::formatRange. New code resembles that of
  27244. IndentOutdentCommand::indentIntoBlockquote. The difference between two is that formatRange
  27245. avoids the existing block elements when replacing blocks and it also adds a placeholder
  27246. when removing the existing block caused paragraphs to collapse.
  27247. Tests: editing/execCommand/format-block-multiple-paragraphs.html
  27248. editing/execCommand/format-block-table.html
  27249. * editing/EditorCommand.cpp:
  27250. (WebCore::executeFormatBlock):
  27251. * editing/FormatBlockCommand.cpp:
  27252. (WebCore::FormatBlockCommand::formatRange): Rewritten; see above.
  27253. (WebCore::FormatBlockCommand::isElementToApplyInFormatBlockCommand): Renamed from validBlockElement
  27254. and moved from htmlediting.cpp.
  27255. (WebCore::FormatBlockCommand::enclosingBlockToSplitTreeTo): Added.
  27256. * editing/FormatBlockCommand.h:
  27257. * editing/VisiblePosition.cpp:
  27258. (WebCore::enclosingBlockFlowElement): Changed the return type to Element*
  27259. * editing/VisiblePosition.h:
  27260. 2010-10-11 Girish Ramakrishnan <girish@forwardbias.in>
  27261. Reviewed by Anders Carlsson.
  27262. Make PluginView inherit from PluginViewBase.
  27263. This change is a precursor to adding accelerated compositing support
  27264. for NPAPI plugins.
  27265. https://bugs.webkit.org/show_bug.cgi?id=47418
  27266. * page/Page.cpp:
  27267. (WebCore::Page::privateBrowsingStateChanged):
  27268. * plugins/PluginView.h:
  27269. * plugins/PluginViewBase.h:
  27270. (WebCore::PluginViewBase::PluginViewBase):
  27271. 2010-10-12 Kinuko Yasuda <kinuko@chromium.org>
  27272. Reviewed by Jian Li.
  27273. Pass platform path (rather than virtual path) when creating File from FileEntry
  27274. https://bugs.webkit.org/show_bug.cgi?id=47563
  27275. No new tests, the new test for FileWriter will be verifying this.
  27276. * fileapi/FileEntry.cpp:
  27277. (WebCore::FileEntry::file):
  27278. 2010-10-12 David Hyatt <hyatt@apple.com>
  27279. Reviewed by Dan Bernstein
  27280. <rdar://problem/8488444> REGRESSION (r67771)
  27281. https://bugs.webkit.org/show_bug.cgi?id=47434
  27282. Crash when printing in RenderBlock::markDescendantBlocksAndLinesForLayout
  27283. Added printing/simultaneous-position-float-change.html
  27284. Remove the markDescendantBlocksAndLinesForLayout method since it can walk m_floatingObjects lists with deleted
  27285. objects in them. Make the mechanism for relayout when the page height changes the same as the one when pageY
  27286. changes and just tie a concept of pageHeightChanged to the layout state. If that is set, blocks will just
  27287. automatically mark themselves as needing layout.
  27288. * rendering/LayoutState.cpp:
  27289. (WebCore::LayoutState::LayoutState):
  27290. * rendering/LayoutState.h:
  27291. (WebCore::LayoutState::LayoutState):
  27292. (WebCore::LayoutState::pageHeight):
  27293. (WebCore::LayoutState::pageHeightChanged):
  27294. * rendering/RenderBlock.cpp:
  27295. (WebCore::RenderBlock::layoutBlock):
  27296. (WebCore::RenderBlock::layoutBlockChild):
  27297. (WebCore::RenderBlock::layoutPositionedObjects):
  27298. (WebCore::RenderBlock::markForPaginationRelayoutIfNeeded):
  27299. (WebCore::RenderBlock::insertFloatingObject):
  27300. (WebCore::RenderBlock::positionNewFloats):
  27301. * rendering/RenderBlock.h:
  27302. * rendering/RenderBox.cpp:
  27303. * rendering/RenderBox.h:
  27304. (WebCore::RenderBox::markForPaginationRelayoutIfNeeded):
  27305. * rendering/RenderFlexibleBox.cpp:
  27306. (WebCore::RenderFlexibleBox::layoutHorizontalBox):
  27307. (WebCore::RenderFlexibleBox::layoutVerticalBox):
  27308. * rendering/RenderView.cpp:
  27309. (WebCore::RenderView::RenderView):
  27310. (WebCore::RenderView::layout):
  27311. * rendering/RenderView.h:
  27312. (WebCore::RenderView::setPageHeight):
  27313. (WebCore::RenderView::pushLayoutState):
  27314. (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
  27315. (WebCore::LayoutStateMaintainer::push):
  27316. 2010-10-12 Anders Carlsson <andersca@apple.com>
  27317. Reviewed by Dan Bernstein.
  27318. Paint the find overlay background
  27319. https://bugs.webkit.org/show_bug.cgi?id=47565
  27320. Export symbols required by WebKit2.
  27321. * WebCore.exp.in:
  27322. 2010-10-12 James Robinson <jamesr@chromium.org>
  27323. Unreviewed chromium compile fixes for http://trac.webkit.org/changeset/69619
  27324. * platform/graphics/chromium/LayerRendererChromium.cpp:
  27325. (WebCore::LayerRendererChromium::create):
  27326. (WebCore::LayerRendererChromium::LayerRendererChromium):
  27327. * platform/graphics/chromium/LayerRendererChromium.h:
  27328. 2010-10-12 Chris Marrin <cmarrin@apple.com>
  27329. Reviewed by Darin Adler.
  27330. Manage DrawingBuffer lifetime in GraphicsContext3D
  27331. https://bugs.webkit.org/show_bug.cgi?id=47501
  27332. GraphicsContext3D and DrawingBuffer are now Refcounted. DrawingBuffer
  27333. has a RefPtr to GraphicsContext3D to ensure the proper lifetime.
  27334. DrawingBuffer is now created by GraphicsContext3D. Also DrawingBuffer
  27335. refers to GraphicsContext3D rather than SharedGraphicsContext3D.
  27336. * html/canvas/CanvasRenderingContext2D.cpp:
  27337. (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
  27338. * html/canvas/CanvasRenderingContext2D.h:
  27339. * html/canvas/WebGLRenderingContext.cpp:
  27340. (WebCore::WebGLRenderingContext::create):
  27341. (WebCore::WebGLRenderingContext::WebGLRenderingContext):
  27342. * html/canvas/WebGLRenderingContext.h:
  27343. * platform/graphics/GraphicsContext3D.cpp:
  27344. (WebCore::GraphicsContext3D::createDrawingBuffer):
  27345. * platform/graphics/GraphicsContext3D.h:
  27346. * platform/graphics/chromium/DrawingBufferChromium.cpp:
  27347. (WebCore::generateColorTexture):
  27348. (WebCore::DrawingBuffer::DrawingBuffer):
  27349. (WebCore::DrawingBuffer::~DrawingBuffer):
  27350. (WebCore::DrawingBuffer::publishToPlatformLayer):
  27351. (WebCore::DrawingBuffer::reset):
  27352. * platform/graphics/gpu/DrawingBuffer.cpp:
  27353. (WebCore::DrawingBuffer::create):
  27354. (WebCore::DrawingBuffer::clear):
  27355. (WebCore::DrawingBuffer::bind):
  27356. * platform/graphics/gpu/DrawingBuffer.h:
  27357. (WebCore::DrawingBuffer::graphicsContext3D):
  27358. * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
  27359. (WebCore::SharedGraphicsContext3D::create):
  27360. (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
  27361. * platform/graphics/gpu/SharedGraphicsContext3D.h:
  27362. (WebCore::SharedGraphicsContext3D::graphicsContext3D):
  27363. * platform/graphics/gpu/mac/DrawingBufferMac.mm:
  27364. (WebCore::DrawingBuffer::DrawingBuffer):
  27365. (WebCore::DrawingBuffer::~DrawingBuffer):
  27366. (WebCore::DrawingBuffer::reset):
  27367. * platform/graphics/mac/GraphicsContext3DMac.mm:
  27368. (WebCore::GraphicsContext3D::create):
  27369. 2010-10-12 Jian Li <jianli@chromium.org>
  27370. Reviewed by David Levin.
  27371. Fix passing blob data with string data item between threads.
  27372. https://bugs.webkit.org/show_bug.cgi?id=46543
  27373. The fix is to use a thread-safe ref-counted Vector<char> to store the
  27374. string data. This also makes us be able to store any binary data in it.
  27375. I've also fix BlobBuilder and BlobRegistryImpl to avoid some additional
  27376. copies to make blob handling faster.
  27377. * fileapi/BlobBuilder.cpp:
  27378. (WebCore::BlobBuilder::append):
  27379. * fileapi/ThreadableBlobRegistry.cpp:
  27380. (WebCore::BlobRegistryContext::BlobRegistryContext):
  27381. * platform/network/BlobData.cpp:
  27382. (WebCore::BlobDataItem::RawData::RawData):
  27383. (WebCore::BlobDataItem::RawData::detachFromCurrentThread):
  27384. (WebCore::BlobDataItem::detachFromCurrentThread):
  27385. (WebCore::BlobData::create):
  27386. (WebCore::BlobData::detachFromCurrentThread):
  27387. (WebCore::BlobData::appendData):
  27388. * platform/network/BlobData.h:
  27389. (WebCore::BlobDataItem::RawData::create):
  27390. (WebCore::BlobDataItem::RawData::data):
  27391. (WebCore::BlobDataItem::RawData::length):
  27392. (WebCore::BlobDataItem::RawData::mutableData):
  27393. (WebCore::BlobDataItem::BlobDataItem):
  27394. * platform/network/BlobRegistryImpl.cpp:
  27395. (WebCore::BlobRegistryImpl::registerBlobURL):
  27396. * platform/network/BlobResourceHandle.cpp:
  27397. (WebCore::BlobResourceHandle::readDataSync):
  27398. (WebCore::BlobResourceHandle::readDataAsync):
  27399. * platform/network/mac/FormDataStreamMac.mm:
  27400. (WebCore::setHTTPBody):
  27401. * platform/text/LineEnding.cpp:
  27402. (OutputBuffer::CStringBuffer::CStringBuffer):
  27403. (OutputBuffer::CStringBuffer::~CStringBuffer):
  27404. (OutputBuffer::CStringBuffer::allocate):
  27405. (OutputBuffer::CStringBuffer::copy):
  27406. (OutputBuffer::CStringBuffer::buffer):
  27407. (OutputBuffer::VectorCharAppendBuffer::VectorCharAppendBuffer):
  27408. (OutputBuffer::VectorCharAppendBuffer::~VectorCharAppendBuffer):
  27409. (OutputBuffer::VectorCharAppendBuffer::allocate):
  27410. (OutputBuffer::VectorCharAppendBuffer::copy):
  27411. (OutputBuffer::internalNormalizeLineEndingsToCRLF):
  27412. (WebCore::normalizeToCROrLF):
  27413. (WebCore::normalizeLineEndingsToCRLF):
  27414. (WebCore::normalizeLineEndingsToCR):
  27415. (WebCore::normalizeLineEndingsToLF):
  27416. (WebCore::normalizeLineEndingsToNative):
  27417. * platform/text/LineEnding.h:
  27418. 2010-10-12 Sheriff Bot <webkit.review.bot@gmail.com>
  27419. Unreviewed, rolling out r69589.
  27420. http://trac.webkit.org/changeset/69589
  27421. https://bugs.webkit.org/show_bug.cgi?id=47547
  27422. Wrong patch landed from a bug with two patches (Requested by
  27423. mrobinson on #webkit).
  27424. * platform/network/ResourceHandleInternal.h:
  27425. (WebCore::ResourceHandleInternal::ResourceHandleInternal):
  27426. * platform/network/soup/ResourceHandleSoup.cpp:
  27427. (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
  27428. (WebCore::ResourceHandle::~ResourceHandle):
  27429. (WebCore::restartedCallback):
  27430. (WebCore::gotChunkCallback):
  27431. (WebCore::finishedCallback):
  27432. (WebCore::parseDataUrl):
  27433. (WebCore::startHttp):
  27434. * platform/network/soup/ResourceRequest.h:
  27435. * platform/network/soup/ResourceRequestSoup.cpp:
  27436. 2010-10-12 Simon Fraser <simon.fraser@apple.com>
  27437. Screen.availLeft should be signed
  27438. https://bugs.webkit.org/show_bug.cgi?id=34397
  27439. Add the manual test missed in r69599.
  27440. * manual-tests/screen-availLeft.html: Added.
  27441. 2010-10-12 Girish Ramakrishnan <girish@forwardbias.in>
  27442. Reviewed by Ariya Hidayat.
  27443. [Qt] Windowless mode 64-bit Flash/X11 freezes when right-click is sent.
  27444. Adds a new quirk PluginQuirkIgnoreRightClickInWindowlessMode. This
  27445. quirk is enabled only for 64-bit Flash/X11 and should not affect other
  27446. plugins. The freeze itself is in Flash code and the backtrace is not
  27447. useful.
  27448. https://bugs.webkit.org/show_bug.cgi?id=47545
  27449. * plugins/PluginPackage.cpp:
  27450. (WebCore::PluginPackage::determineQuirks):
  27451. * plugins/PluginQuirkSet.h:
  27452. * plugins/qt/PluginViewQt.cpp:
  27453. (WebCore::PluginView::handleMouseEvent):
  27454. 2010-10-08 Simon Fraser <simon.fraser@apple.com>
  27455. Reviewed by Alexey Proskuryakov.
  27456. Screen.availLeft should be signed
  27457. https://bugs.webkit.org/show_bug.cgi?id=34397
  27458. For the screen to the left of the main screen, screen.availLeft
  27459. can be negative, so the Screen API needs to use signed numbers
  27460. for availLeft and availTop.
  27461. * manual-tests/screen-availLeft.html: Added.
  27462. * page/Screen.cpp:
  27463. (WebCore::Screen::availLeft):
  27464. (WebCore::Screen::availTop):
  27465. * page/Screen.h:
  27466. * page/Screen.idl:
  27467. 2010-10-12 Anders Carlsson <andersca@apple.com>
  27468. Reviewed by Sam Weinig.
  27469. Add FindController class
  27470. https://bugs.webkit.org/show_bug.cgi?id=47555
  27471. Export Page::findString.
  27472. * WebCore.exp.in:
  27473. 2010-10-12 Alexey Proskuryakov <ap@apple.com>
  27474. Reviewed by Simon Fraser.
  27475. https://bugs.webkit.org/show_bug.cgi?id=47550
  27476. <rdar://problem/8353386> For WebKit plug-ins, beforeload can be called recursively
  27477. (esp. with AdBlock style extensions)
  27478. No test - we don't have a WebKit-style plugin in DRT, and don't care enough to add one.
  27479. The fix is to block plug-in scripting while in beforeload event - the plug-in is obviously
  27480. not available yet, so scripting could only attempt to load it recursively.
  27481. This didn't affect NPAPI plug-ins, because of a completely different code path taken in
  27482. updateWidget(), see <https://bugs.webkit.org/show_bug.cgi?id=44575#c8>.
  27483. * html/HTMLEmbedElement.cpp: (WebCore::HTMLEmbedElement::updateWidget):
  27484. * html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::updateWidget):
  27485. * html/HTMLPlugInElement.cpp:
  27486. (WebCore::HTMLPlugInElement::HTMLPlugInElement):
  27487. (WebCore::HTMLPlugInElement::pluginWidget):
  27488. * html/HTMLPlugInElement.h:
  27489. 2010-10-12 Nikolas Zimmermann <nzimmermann@rim.com>
  27490. Reviewed by Gavin Barraclough.
  27491. Unify JSC::StringBuilder & WebCore::StringBuilder
  27492. https://bugs.webkit.org/show_bug.cgi?id=47538
  27493. JSC::StringBuilder operates on a Vector<UChar, 64> and allows to build a string based on a stream of characters in an efficient manner.
  27494. WebCore::StringBuilder operates on a Vector<String, 16> and allows to concat an arbitary number of Strings. It's not efficient in handling single
  27495. characters, as a String with length=1 has to be constructed for those. An analysis of the callers of WebCore::StringBuilder shows that
  27496. most callsites actually combine Strings and single characters, so using a Vector<UChar> would be more efficient. Those who only combine large
  27497. strings are only used for debugging purposes, so it's fine to switch them to a Vector<UChar> approach as well.
  27498. Replace WebCore::StringBuilder with JSC::StringBuilder, and move it to wtf/text/StringBuilder.h into the WTF namespace.
  27499. While I was at it remove platform/text/StringBuffer.h, as it was only including wtf/text/StringBuffer.h.
  27500. No change in functionality, thus no new tests.
  27501. * Android.mk: Remove platform/text/StringBuilder.* and platform/text/StringBuffer.h.
  27502. * CMakeLists.txt: Ditto.
  27503. * GNUmakefile.am: Ditto.
  27504. * WebCore.gypi: Ditto.
  27505. * WebCore.order: Ditto.
  27506. * WebCore.pro: Ditto.
  27507. * WebCore.vcproj/WebCore.vcproj: Ditto.
  27508. * WebCore.xcodeproj/project.pbxproj: Ditto.
  27509. * ForwardingHeaders/runtime/StringBuilder.h: Removed.
  27510. * ForwardingHeaders/runtime/UStringBuilder.h: Added.
  27511. * ForwardingHeaders/wtf/text/StringBuilder.h: Added.
  27512. * bindings/js/ScriptString.h: Don't include PlatformString.h but wtf/text/WTFString.h.
  27513. (WebCore::ScriptString::operator+=): Use JSC::UStringBuilder instead of JSC::StringBuilder.
  27514. * bridge/jni/JNIBridge.cpp: Use WTF::StringBuilder (+ use append(const UChar) for single characters).
  27515. * css/MediaQuery.cpp: Ditto.
  27516. * css/MediaQueryExp.cpp: Ditto.
  27517. * dom/Node.cpp: Ditto.
  27518. (WebCore::Node::appendTextContent): Manually track wheter the StringBuilder content is empty or null, the new StringBuilder doesn't differentiate between null & empty strings.
  27519. * dom/Node.h: Remove appendTextContent definition, it's not needed to be exported, removes the need for a StringBuilder.h include or forward declaration.
  27520. * html/DOMTokenList.cpp: Use WTF::StringBuilder.
  27521. * inspector/InspectorResource.cpp: Remove useless StringBuffer.h include.
  27522. * platform/android/FileSystemAndroid.cpp: Use WTF::StringBuilder.
  27523. * platform/brew/FileSystemBrew.cpp: Ditto.
  27524. * platform/chromium/ClipboardChromium.cpp: Ditto (+ use append(const UChar) for single characters).
  27525. * platform/graphics/gpu/PODInterval.h: Ditto (Only used as debugging helper here, in debug builds).
  27526. * platform/graphics/gpu/PODRedBlackTree.h: Ditto (Only used as debugging helper here, in debug builds).
  27527. * platform/graphics/mac/GraphicsLayerCA.mm: Remove useless StringBuilder.h include.
  27528. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: Use WTF::StringBuilder, and use append(const UChar) for single characters.
  27529. * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp: Ditto.
  27530. * platform/network/ProxyServer.cpp:
  27531. (WebCore::appendProxyServerString): Use WTF::StringBuilder.
  27532. * platform/text/StringBuffer.h: Removed.
  27533. * platform/text/StringBuilder.cpp: Removed.
  27534. * platform/text/StringBuilder.h: Removed.
  27535. * plugins/DOMMimeType.cpp: Use WTF::StringBuilder.
  27536. * svg/SVGPathParserFactory.cpp: Ditto.
  27537. * svg/SVGPathStringBuilder.cpp: SVGPathStringBuilder used stringBuilder.toString(ConcatAddingSpacesBetweenIndividualStrings), adapt to the change, that this mode is gone now.
  27538. (WebCore::SVGPathStringBuilder::result): Just use toString(), append a space to the end of each command, when building the string. Remove the last trailing space before building the result.
  27539. (WebCore::SVGPathStringBuilder::moveTo):
  27540. (WebCore::SVGPathStringBuilder::lineTo):
  27541. (WebCore::SVGPathStringBuilder::lineToHorizontal):
  27542. (WebCore::SVGPathStringBuilder::lineToVertical):
  27543. (WebCore::SVGPathStringBuilder::curveToCubic):
  27544. (WebCore::SVGPathStringBuilder::curveToCubicSmooth):
  27545. (WebCore::SVGPathStringBuilder::curveToQuadratic):
  27546. (WebCore::SVGPathStringBuilder::curveToQuadraticSmooth):
  27547. (WebCore::SVGPathStringBuilder::arcTo):
  27548. (WebCore::SVGPathStringBuilder::closePath):
  27549. * svg/SVGPathStringBuilder.h:
  27550. (WebCore::SVGPathStringBuilder::cleanup): StringBuilder::clear() is gone, just cleanup by assigning StringBuilder().
  27551. * websockets/WebSocket.cpp: Use WTF::StringBuilder.
  27552. * websockets/WebSocketHandshake.cpp: Ditto (+ use append(const UChar) for single characters).
  27553. 2010-10-12 Gyuyoung Kim <gyuyoung.kim@samsung.com>
  27554. Reviewed by Antonio Gomes.
  27555. [EFL] Add a missing file in CMakeListEfl.txt
  27556. https://bugs.webkit.org/show_bug.cgi?id=47480
  27557. IntRectEfl.cpp was missing in CMakeListEfl.txt. So, IntRectEfl.cpp is added.
  27558. * CMakeListsEfl.txt:
  27559. 2010-10-12 Sam Weinig <sam@webkit.org>
  27560. Reviewed by Anders Carlsson.
  27561. Need WebKit2 API to get the cell above a table cell
  27562. <rdar://problem/8537111>
  27563. https://bugs.webkit.org/show_bug.cgi?id=47532
  27564. Re-factor functionality to get the cell above a table cell
  27565. into a function on HTMLTableCellElement and export it for use
  27566. as SPI.
  27567. * WebCore.exp.in:
  27568. * WebCore.xcodeproj/project.pbxproj:
  27569. * html/HTMLTableCellElement.cpp:
  27570. (WebCore::HTMLTableCellElement::cellAbove): Move implementation here...
  27571. * html/HTMLTableCellElement.h:
  27572. * page/Frame.cpp:
  27573. (WebCore::Frame::searchForLabelsAboveCell): ...from here.
  27574. 2010-10-12 Dave Moore <davemoore@chromium.org>
  27575. Reviewed by Tony Chang.
  27576. Use new WebThemeEngine api on chromium / linux to draw scrollbars.
  27577. https://bugs.webkit.org/show_bug.cgi?id=47473
  27578. * platform/chromium/ChromiumBridge.h:
  27579. * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
  27580. 2010-10-12 Andreas Kling <kling@webkit.org>
  27581. Reviewed by Antonio Gomes.
  27582. [Qt] Clipping problem viewing SVG with WebKit
  27583. https://bugs.webkit.org/show_bug.cgi?id=29596
  27584. SVG path clipping (via GraphicsContext::clipPath()) was done using the
  27585. Qt::ReplaceClip mode (default) instead of Qt::IntersectClip. This led
  27586. to misrenderings when nesting multiple clip paths.
  27587. * platform/graphics/qt/GraphicsContextQt.cpp:
  27588. (WebCore::GraphicsContext::clipPath):
  27589. 2010-10-07 Pavel Podivilov <podivilov@chromium.org>
  27590. Reviewed by Pavel Feldman.
  27591. Web Inspector: refactoring of native breakpoints.
  27592. https://bugs.webkit.org/show_bug.cgi?id=47360
  27593. Make DOM, EventListener and XHR breakpoints subclasses of NativeBreakpoint class.
  27594. Move stuff that depends on breakpoint type to corresponding subclass.
  27595. * inspector/Inspector.idl:
  27596. * inspector/InspectorController.cpp:
  27597. (WebCore::InspectorController::didCommitLoad):
  27598. (WebCore::InspectorController::setNativeBreakpoint):
  27599. (WebCore::InspectorController::removeNativeBreakpoint):
  27600. (WebCore::InspectorController::findEventListenerBreakpoint):
  27601. (WebCore::InspectorController::findXHRBreakpoint):
  27602. * inspector/InspectorController.h:
  27603. * inspector/InspectorDOMAgent.cpp:
  27604. (WebCore::InspectorDOMAgent::setDOMBreakpoint):
  27605. (WebCore::InspectorDOMAgent::removeDOMBreakpoint):
  27606. (WebCore::InspectorDOMAgent::descriptionForDOMEvent):
  27607. (WebCore::InspectorDOMAgent::didRemoveDOMNode):
  27608. (WebCore::InspectorDOMAgent::removeBreakpointsForNode):
  27609. (WebCore::InspectorDOMAgent::createBreakpointId):
  27610. * inspector/InspectorDOMAgent.h:
  27611. * inspector/InspectorDebuggerAgent.h:
  27612. * inspector/InspectorInstrumentation.cpp:
  27613. (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
  27614. (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
  27615. (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
  27616. (WebCore::InspectorInstrumentation::willSendXMLHttpRequestImpl):
  27617. (WebCore::InspectorInstrumentation::willDispatchEventImpl):
  27618. * inspector/front-end/BreakpointManager.js:
  27619. (WebInspector.BreakpointManager):
  27620. (WebInspector.BreakpointManager.prototype.reset):
  27621. (WebInspector.BreakpointManager.prototype.createDOMBreakpoint):
  27622. (WebInspector.BreakpointManager.prototype.createEventListenerBreakpoint):
  27623. (WebInspector.BreakpointManager.prototype.createXHRBreakpoint):
  27624. (WebInspector.BreakpointManager.prototype._removeNativeBreakpoint):
  27625. (WebInspector.BreakpointManager.prototype._setNativeBreakpointOnBackend.didSetNativeBreakpoint):
  27626. (WebInspector.BreakpointManager.prototype._setNativeBreakpointOnBackend):
  27627. (WebInspector.BreakpointManager.prototype.debuggerPaused):
  27628. (WebInspector.BreakpointManager.prototype.debuggerResumed):
  27629. (WebInspector.BreakpointManager.prototype.restoreDOMBreakpoints.restoreBreakpointsForNode):
  27630. (WebInspector.BreakpointManager.prototype.restoreDOMBreakpoints):
  27631. (WebInspector.NativeBreakpoint):
  27632. (WebInspector.NativeBreakpoint.prototype.remove):
  27633. (WebInspector.NativeBreakpoint.prototype.get _frontendId):
  27634. (WebInspector.NativeBreakpoint.prototype.get _type):
  27635. (WebInspector.NativeBreakpoint.prototype._compare):
  27636. (WebInspector.NativeBreakpoint.prototype._onRemove):
  27637. (WebInspector.DOMBreakpoint):
  27638. (WebInspector.DOMBreakpoint.prototype.click):
  27639. (WebInspector.DOMBreakpoint.prototype.compareTo):
  27640. (WebInspector.DOMBreakpoint.prototype.populateLabelElement):
  27641. (WebInspector.DOMBreakpoint.prototype.populateStatusMessageElement.formatters.s):
  27642. (WebInspector.DOMBreakpoint.prototype.populateStatusMessageElement.append):
  27643. (WebInspector.DOMBreakpoint.prototype.populateStatusMessageElement):
  27644. (WebInspector.DOMBreakpoint.prototype._condition):
  27645. (WebInspector.DOMBreakpoint.prototype._onRemove):
  27646. (WebInspector.EventListenerBreakpoint):
  27647. (WebInspector.EventListenerBreakpoint.prototype.compareTo):
  27648. (WebInspector.EventListenerBreakpoint.prototype.label):
  27649. (WebInspector.EventListenerBreakpoint.prototype.populateStatusMessageElement):
  27650. (WebInspector.EventListenerBreakpoint.prototype._condition):
  27651. (WebInspector.XHRBreakpoint):
  27652. (WebInspector.XHRBreakpoint.prototype.compareTo):
  27653. (WebInspector.XHRBreakpoint.prototype.populateLabelElement):
  27654. (WebInspector.XHRBreakpoint.prototype.populateStatusMessageElement):
  27655. (WebInspector.XHRBreakpoint.prototype._condition):
  27656. (WebInspector.domBreakpointTypeLabel):
  27657. (WebInspector.domBreakpointTypeContextMenuLabel):
  27658. * inspector/front-end/BreakpointsSidebarPane.js:
  27659. (WebInspector.BreakpointItem):
  27660. (WebInspector.BreakpointItem.prototype._breakpointClicked):
  27661. (WebInspector.EventListenerBreakpointsSidebarPane.prototype._populate):
  27662. * inspector/front-end/CallStackSidebarPane.js:
  27663. (WebInspector.CallStackSidebarPane):
  27664. (WebInspector.CallStackSidebarPane.prototype.registerShortcuts):
  27665. (WebInspector.CallStackSidebarPane.prototype._breakpointHit):
  27666. * inspector/front-end/DOMAgent.js:
  27667. (WebInspector.DOMNode):
  27668. (WebInspector.DOMAgent.prototype._setDocument):
  27669. (WebInspector.DOMAgent.prototype._removeBreakpoints):
  27670. (WebInspector.childNodeRemoved):
  27671. * inspector/front-end/ElementsTreeOutline.js:
  27672. (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
  27673. * inspector/front-end/ScriptsPanel.js:
  27674. (WebInspector.ScriptsPanel.prototype.debuggerPaused):
  27675. * inspector/front-end/inspector.js:
  27676. (WebInspector.createDOMBreakpointsSidebarPane.breakpointAdded):
  27677. (WebInspector.createDOMBreakpointsSidebarPane):
  27678. (WebInspector.reset):
  27679. 2010-10-11 Eric Uhrhane <ericu@chromium.org>
  27680. Reviewed by Dumitru Daniliuc.
  27681. FileWriter should hold a reference to a Blob during write
  27682. https://bugs.webkit.org/show_bug.cgi?id=47318
  27683. Without this reference, the Blob might get garbage-collected from JS
  27684. before the write has completed, which would be quite unintuitive to the
  27685. user. I just grab a RefPtr to the Blob at write(), then clear it when
  27686. we're done.
  27687. * fileapi/FileWriter.cpp:
  27688. (WebCore::FileWriter::stop):
  27689. (WebCore::FileWriter::write):
  27690. (WebCore::FileWriter::didWrite):
  27691. (WebCore::FileWriter::didFail):
  27692. * fileapi/FileWriter.h:
  27693. 2010-10-11 Michael Saboff <msaboff@apple.com>
  27694. Reviewed by Darin Adler.
  27695. Changed DOMWindow to have a constructor. Updated the code generator
  27696. to add security checks to the constructors if CheckDomainSecurity is
  27697. set. Also changed the constructor generation code to use
  27698. globalObject->prototype() for DOMWindow object prototypes instead
  27699. of "self".
  27700. https://bugs.webkit.org/show_bug.cgi?id=47422
  27701. Test: fast/dom/Window/window-constructor.html
  27702. * bindings/scripts/CodeGeneratorJS.pm:
  27703. * page/DOMWindow.idl:
  27704. 2010-10-11 Daniel Cheng <dcheng@chromium.org>
  27705. Reviewed by Tony Chang.
  27706. [chromium] Prepare Clipboard/DragData for transition to new drag-and-drop interface.
  27707. https://bugs.webkit.org/show_bug.cgi?id=44992
  27708. In order to allow a graceful transition, ChromiumDataObject has been
  27709. reimplemented as a wrapper around the three different types of data
  27710. objects that the Chrome port uses:
  27711. 1. ChromiumDataObjectLegacy -- this is the original ChromiumDataObject.
  27712. All the data that ClipboardChromium/DragDataChromium can potentially
  27713. use is copied over, regardless of whether or not it is needed.
  27714. 2. ReadableDataObject -- used for dragging in and pasting into WebKit.
  27715. For efficiency, it caches an optimistic list of types it believes it
  27716. can handle. When getData() is called, a browser IPC is called to
  27717. retrieve the appropriate data.
  27718. 3. WritableDataObject -- similar to ChromiumDataObjectLegacy in that it
  27719. buffers all data when dragging out of WebKit or copying/cutting.
  27720. Unfortunately, there is a difference between dragging out and
  27721. copying/cutting--on drag outs, the data is buffered and flushed out
  27722. when startDrag() is called. For copy/cut, any calls to setData()
  27723. result in a browser IPC right away, so calls to setData() in one
  27724. copy/cut event are not atomic.
  27725. Copy and paste has been changed to use the new data objects. Dragging
  27726. out uses the legacy data object, and dragging in now has two potential
  27727. entry points--one using the legacy data object, and one using
  27728. ReadableDataObject. Once Chromium transitions to using the new drag-in
  27729. interface, the old interface will be removed.
  27730. This change is covered by existing tests.
  27731. * WebCore.gypi:
  27732. * editing/chromium/EditorChromium.cpp:
  27733. (WebCore::Editor::newGeneralClipboard):
  27734. * page/chromium/EventHandlerChromium.cpp:
  27735. (WebCore::EventHandler::createDraggingClipboard):
  27736. * platform/chromium/ChromiumDataObject.cpp:
  27737. (WebCore::ChromiumDataObject::ChromiumDataObject):
  27738. (WebCore::ChromiumDataObject::create):
  27739. (WebCore::ChromiumDataObject::createReadable):
  27740. (WebCore::ChromiumDataObject::createWritable):
  27741. (WebCore::ChromiumDataObject::clearData):
  27742. (WebCore::ChromiumDataObject::clearAll):
  27743. (WebCore::ChromiumDataObject::clearAllExceptFiles):
  27744. (WebCore::ChromiumDataObject::hasData):
  27745. (WebCore::ChromiumDataObject::types):
  27746. (WebCore::ChromiumDataObject::getData):
  27747. (WebCore::ChromiumDataObject::setData):
  27748. (WebCore::ChromiumDataObject::urlTitle):
  27749. (WebCore::ChromiumDataObject::setUrlTitle):
  27750. (WebCore::ChromiumDataObject::htmlBaseUrl):
  27751. (WebCore::ChromiumDataObject::setHtmlBaseUrl):
  27752. (WebCore::ChromiumDataObject::containsFilenames):
  27753. (WebCore::ChromiumDataObject::filenames):
  27754. (WebCore::ChromiumDataObject::setFilenames):
  27755. (WebCore::ChromiumDataObject::fileExtension):
  27756. (WebCore::ChromiumDataObject::setFileExtension):
  27757. (WebCore::ChromiumDataObject::fileContentFilename):
  27758. (WebCore::ChromiumDataObject::setFileContentFilename):
  27759. (WebCore::ChromiumDataObject::fileContent):
  27760. (WebCore::ChromiumDataObject::setFileContent):
  27761. * platform/chromium/ChromiumDataObject.h:
  27762. * platform/chromium/ChromiumDataObjectLegacy.cpp: Copied from ChromiumDataObject.cpp
  27763. (WebCore::ChromiumDataObjectLegacy::clearData):
  27764. (WebCore::ChromiumDataObjectLegacy::clearAll):
  27765. (WebCore::ChromiumDataObjectLegacy::clearAllExceptFiles):
  27766. (WebCore::ChromiumDataObjectLegacy::hasData):
  27767. (WebCore::ChromiumDataObjectLegacy::types):
  27768. (WebCore::ChromiumDataObjectLegacy::getData):
  27769. (WebCore::ChromiumDataObjectLegacy::setData):
  27770. (WebCore::ChromiumDataObjectLegacy::ChromiumDataObjectLegacy):
  27771. * platform/chromium/ChromiumDataObjectLegacy.h: Copied from ChromiumDataObject.h
  27772. (WebCore::ChromiumDataObjectLegacy::create):
  27773. (WebCore::ChromiumDataObjectLegacy::copy):
  27774. (WebCore::ChromiumDataObjectLegacy::urlTitle):
  27775. (WebCore::ChromiumDataObjectLegacy::setUrlTitle):
  27776. (WebCore::ChromiumDataObjectLegacy::htmlBaseUrl):
  27777. (WebCore::ChromiumDataObjectLegacy::setHtmlBaseUrl):
  27778. (WebCore::ChromiumDataObjectLegacy::containsFilenames):
  27779. (WebCore::ChromiumDataObjectLegacy::filenames):
  27780. (WebCore::ChromiumDataObjectLegacy::setFilenames):
  27781. (WebCore::ChromiumDataObjectLegacy::fileExtension):
  27782. (WebCore::ChromiumDataObjectLegacy::setFileExtension):
  27783. (WebCore::ChromiumDataObjectLegacy::fileContentFilename):
  27784. (WebCore::ChromiumDataObjectLegacy::setFileContentFilename):
  27785. (WebCore::ChromiumDataObjectLegacy::fileContent):
  27786. (WebCore::ChromiumDataObjectLegacy::setFileContent):
  27787. * platform/chromium/ClipboardChromium.cpp:
  27788. (WebCore::ClipboardChromium::create):
  27789. * platform/chromium/ClipboardChromium.h:
  27790. * platform/chromium/ReadableDataObject.cpp:
  27791. (WebCore::ReadableDataObject::getData):
  27792. * platform/chromium/WritableDataObject.cpp:
  27793. (WebCore::WritableDataObject::setData):
  27794. 2010-10-11 Anders Carlsson <andersca@apple.com>
  27795. Reviewed by Darin Adler.
  27796. Remove WebIconFetcher from WebKit and IconFetcher from WebCore
  27797. https://bugs.webkit.org/show_bug.cgi?id=47523
  27798. Remove all traces of the WebCore IconFetcher class. It's SPI that nobody uses.
  27799. * GNUmakefile.am:
  27800. * WebCore.exp.in:
  27801. * WebCore.gyp/WebCore.gyp:
  27802. * WebCore.gypi:
  27803. * WebCore.vcproj/WebCore.vcproj:
  27804. * WebCore.xcodeproj/project.pbxproj:
  27805. * loader/icon/IconFetcher.cpp: Removed.
  27806. * loader/icon/IconFetcher.h: Removed.
  27807. 2010-10-11 Jia Pu <jpu@apple.com>
  27808. Reviewed by Adele Peterson.
  27809. Should commit pending autocorrection before next round of text checking.
  27810. https://bugs.webkit.org/show_bug.cgi?id=46986
  27811. <rdar://problem/8424535>
  27812. 1. Apply pending autocorrection before calling markAllMisspellingsAndBadGrammarInRanges().
  27813. 2. Remove unneccessary calls to dismissCorrectionPanel(), since the panel is dismissed when
  27814. selection changes, which occurs after every typing command.
  27815. * editing/Editor.cpp:
  27816. (WebCore::Editor::markMisspellingsAfterTypingToPosition): Apply pending autocorrection.
  27817. (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Store current correction replacement
  27818. in m_correctionReplacementString.
  27819. (WebCore::Editor::startCorrectionPanelTimer): Remove call to dismissCorrectionPanel().
  27820. * editing/Editor.h: Add m_correctionReplacementString to store proposed autocorrection string.
  27821. 2010-10-11 Oliver Hunt <oliver@apple.com>
  27822. Reviewed by Adam Barth.
  27823. Make fast/canvas/webgl/glsl-conformance pass again
  27824. https://bugs.webkit.org/show_bug.cgi?id=47525
  27825. Remove incorrect call to glGetShaderiv, so it is only
  27826. called in the case where we don't have our own simulated
  27827. log.
  27828. * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
  27829. (WebCore::GraphicsContext3D::getShaderInfoLog):
  27830. 2010-10-11 Sam Weinig <sam@webkit.org>
  27831. Reviewed by Anders Carlsson.
  27832. Add WebKit2 equivalents for setValueForUser and setAutoFilled
  27833. <rdar://problem/8475934>
  27834. https://bugs.webkit.org/show_bug.cgi?id=47524
  27835. * WebCore.exp.in: Add needed export.
  27836. 2010-10-11 Andrei Popescu <andreip@google.com>
  27837. Reviewed by Jeremy Orlow.
  27838. The names of IndexedDB-specific attributes of DOMWindow should be prefixed with 'webkit'.
  27839. https://bugs.webkit.org/show_bug.cgi?id=47508
  27840. * bindings/generic/RuntimeEnabledFeatures.h:
  27841. (WebCore::RuntimeEnabledFeatures::setWebkitIndexedDBEnabled):
  27842. (WebCore::RuntimeEnabledFeatures::webkitIndexedDBEnabled):
  27843. (WebCore::RuntimeEnabledFeatures::webkitIDBCursorEnabled):
  27844. (WebCore::RuntimeEnabledFeatures::webkitIDBDatabaseEnabled):
  27845. (WebCore::RuntimeEnabledFeatures::webkitIDBDatabaseErrorEnabled):
  27846. (WebCore::RuntimeEnabledFeatures::webkitIDBDatabaseExceptionEnabled):
  27847. (WebCore::RuntimeEnabledFeatures::webkitIDBErrorEventEnabled):
  27848. (WebCore::RuntimeEnabledFeatures::webkitIDBEventEnabled):
  27849. (WebCore::RuntimeEnabledFeatures::webkitIDBFactoryEnabled):
  27850. (WebCore::RuntimeEnabledFeatures::webkitIDBIndexEnabled):
  27851. (WebCore::RuntimeEnabledFeatures::webkitIDBKeyRangeEnabled):
  27852. (WebCore::RuntimeEnabledFeatures::webkitIDBObjectStoreEnabled):
  27853. (WebCore::RuntimeEnabledFeatures::webkitIDBRequestEnabled):
  27854. (WebCore::RuntimeEnabledFeatures::webkitIDBSuccessEventEnabled):
  27855. (WebCore::RuntimeEnabledFeatures::webkitIDBTransactionEnabled):
  27856. * page/DOMWindow.cpp:
  27857. (WebCore::DOMWindow::webkitIndexedDB):
  27858. * page/DOMWindow.h:
  27859. * page/DOMWindow.idl:
  27860. 2010-10-11 Sam Weinig <sam@webkit.org>
  27861. Reviewed by Anders Carlsson.
  27862. Add ability to convert from a JSObjectRef back to a WKBundleNodeHandleRef
  27863. https://bugs.webkit.org/show_bug.cgi?id=47509
  27864. * WebCore.exp.in: Export toNode.
  27865. 2010-10-11 Martin Robinson <mrobinson@igalia.com>
  27866. Reviewed by Tony Chang.
  27867. [GTK] editing/pasteboard/dataTransfer-setData-getData.html fails on GTK+
  27868. https://bugs.webkit.org/show_bug.cgi?id=47244
  27869. Store the URI list as a String in DataObjectGtk, so that non-URI elements
  27870. are preserved when getData(...) is called. This necessitates some other
  27871. changes, including adding a m_filenames member to DataObjectGtk to store
  27872. filenames extracted during setURIList(...). The logic in getData(...) has
  27873. also changed to set success = true no matter what to match the spec. A
  27874. followup patch will remove this parameter completely for all platforms.
  27875. * platform/gtk/ClipboardGtk.cpp:
  27876. (WebCore::ClipboardGtk::getData): Always succeed to match the HTML5
  27877. spec and Firefox. Simply return the uriList string from the DataObject
  27878. instead of reconstructing it from a vector of KURLs.
  27879. (WebCore::ClipboardGtk::setData): The DataObject now accepts a string
  27880. for the uriList parameter.
  27881. (WebCore::ClipboardGtk::types): Predicate the "Files" member on
  27882. DataObjectGtk::hasFilenames().
  27883. (WebCore::ClipboardGtk::files): Update to reflect the change from
  27884. DataObjectGtk::files() to DataObjectGtk::filenames().
  27885. * platform/gtk/DataObjectGtk.cpp:
  27886. (WebCore::DataObjectGtk::setURIList): Expanded this setter to find the
  27887. first valid URL to use as the m_url member and also extract a list of filenames
  27888. from the URI list.
  27889. (WebCore::DataObjectGtk::setURL): Updated to reflect changes to m_uriList.
  27890. (WebCore::DataObjectGtk::clear): Updated to reflect changes to m_uriList and
  27891. also leave a comment explaining why we do not clear filenames here.
  27892. * platform/gtk/DataObjectGtk.h:
  27893. (WebCore::DataObjectGtk::url): This implementation is now a simple getter.
  27894. (WebCore::DataObjectGtk::uriList): Ditto.
  27895. (WebCore::DataObjectGtk::filenames): Added.
  27896. (WebCore::DataObjectGtk::hasURL): Now a simple check.
  27897. (WebCore::DataObjectGtk::hasFilenames): Added.
  27898. (WebCore::DataObjectGtk::clearURIList): Simple setter.
  27899. (WebCore::DataObjectGtk::clearURL): Ditto.
  27900. * platform/gtk/DragDataGtk.cpp:
  27901. (WebCore::DragData::containsFiles): Updated to access DataObjectGtk::hasFilenames().
  27902. (WebCore::DragData::asFilenames): Updated to access DataObjectGtk::filenames().
  27903. * platform/gtk/PasteboardHelper.cpp:
  27904. (WebCore::PasteboardHelper::getClipboardContents): Use the uriList as a string now.
  27905. (WebCore::PasteboardHelper::fillSelectionData): Ditto.
  27906. (WebCore::PasteboardHelper::fillDataObjectFromDropData): Ditto.
  27907. 2010-10-11 James Robinson <jamesr@chromium.org>
  27908. Reviewed by Kenneth Russell.
  27909. [chromium] DRT crash in fast/canvas tests w/accel 2D canvas due to NULL DrawingBuffer
  27910. https://bugs.webkit.org/show_bug.cgi?id=47241
  27911. Avoid initializing accelerated graphics objects on CanvasRenderingContext2D
  27912. if there is no drawingContext associated with the canvas.
  27913. Test: fast/canvas/access-zero-sized-canvas.html
  27914. fast/canvas/canvas-skia-excessive-size.html
  27915. fast/canvas/toDataURL-noData.html
  27916. with --accelerated-compositing and --accelerated-2d-canvas
  27917. * html/canvas/CanvasRenderingContext2D.cpp:
  27918. (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
  27919. (WebCore::CanvasRenderingContext2D::reset):
  27920. 2010-10-11 Martin Robinson <mrobinson@igalia.com>
  27921. Reviewed by Gustavo Noronha Silva.
  27922. [GTK] Cleanup font selection code for the Freetype backend
  27923. https://bugs.webkit.org/show_bug.cgi?id=47503
  27924. Do some miscellaneous cleanup work in the Freetype font font selection backend.
  27925. * platform/graphics/cairo/FontCacheFreeType.cpp:
  27926. (WebCore::getFamilyNameStringFromFontDescriptionAndFamily): Modified this method to return
  27927. a WebCore String.
  27928. (WebCore::FontCache::createFontPlatformData): Do a bit of cleanup in this method: properly
  27929. handle cursive and fantasy as fallback-like fonts. Instead of using raw CStrings do string
  27930. comparisons using WebCore Strings. Remove a large block comment that originated from a
  27931. Apache-licensed file.
  27932. 2010-10-11 Martin Robinson <mrobinson@igalia.com>
  27933. Reviewed by Gustavo Noronha Silva.
  27934. [GTK] Buttons activated with the keyboard should be painted as clicked
  27935. https://bugs.webkit.org/show_bug.cgi?id=18364
  27936. When a button is pressed, force it into the hovered state as far as the
  27937. Mozilla theme drawing code is concerned. This bug also seems to be an
  27938. issue for Firefox. When we switch away from the Mozilla theme drawing
  27939. code this work-around should no longer be necessary.
  27940. No new tests. I was not able to generate a pixel test for this issue. It
  27941. seems that our DRT does not have the necessary infrastructure to generate a
  27942. pixel dump while a button is in the pressed state.
  27943. * platform/gtk/RenderThemeGtk.cpp:
  27944. (WebCore::RenderThemeGtk::paintRenderObject):
  27945. 2010-10-11 Jian Li <jianli@chromium.org>
  27946. Unreviewed. Build fix.
  27947. * bindings/js/JSArrayBufferCustom.cpp:
  27948. * bindings/js/JSArrayBufferViewCustom.cpp:
  27949. * bindings/js/JSFloat32ArrayCustom.cpp:
  27950. * bindings/js/JSInt16ArrayCustom.cpp:
  27951. * bindings/js/JSInt32ArrayCustom.cpp:
  27952. * bindings/js/JSInt8ArrayCustom.cpp:
  27953. * bindings/js/JSUint16ArrayCustom.cpp:
  27954. * bindings/js/JSUint32ArrayCustom.cpp:
  27955. * bindings/js/JSUint8ArrayCustom.cpp:
  27956. * bindings/v8/custom/V8ArrayBufferCustom.cpp:
  27957. * bindings/v8/custom/V8ArrayBufferViewCustom.cpp:
  27958. * bindings/v8/custom/V8Float32ArrayCustom.cpp:
  27959. * bindings/v8/custom/V8Int16ArrayCustom.cpp:
  27960. * bindings/v8/custom/V8Int32ArrayCustom.cpp:
  27961. * bindings/v8/custom/V8Int8ArrayCustom.cpp:
  27962. * bindings/v8/custom/V8Uint16ArrayCustom.cpp:
  27963. * bindings/v8/custom/V8Uint32ArrayCustom.cpp:
  27964. * bindings/v8/custom/V8Uint8ArrayCustom.cpp:
  27965. 2010-10-11 Brent Fulgham <bfulgham@webkit.org>
  27966. Unreviewed WinCairo build fixes.
  27967. * platform/network/curl/ResourceResponse.h: Correct forward declaration
  27968. for CFURLResponseRef.
  27969. * rendering/RenderMediaControls.h: Add ENABLE(VIDEO) guard to new
  27970. header file to avoid build failure on non-VIDEO builds.
  27971. 2010-10-11 Jian Li <jianli@chromium.org>
  27972. Reviewed by Adam Barth.
  27973. Add File API feature guard to all typed array files
  27974. https://bugs.webkit.org/show_bug.cgi?id=47437
  27975. Since we're going to add ArrayBuffer support to FileReader and BlobBuilder,
  27976. we need to update all type array files to include File API feature guard
  27977. in addition to the existing 3D_CANVAS guard. When ArrayBuffer is used in
  27978. XMLHttpRequest, we will then remove all the guards. This is per the
  27979. discussion on webkit-dev mailing list:
  27980. https://lists.webkit.org/pipermail/webkit-dev/2010-October/014716.html
  27981. * html/canvas/ArrayBuffer.cpp:
  27982. * html/canvas/ArrayBuffer.idl:
  27983. * html/canvas/ArrayBufferView.cpp:
  27984. * html/canvas/ArrayBufferView.idl:
  27985. * html/canvas/Float32Array.cpp:
  27986. * html/canvas/Float32Array.idl:
  27987. * html/canvas/Int16Array.cpp:
  27988. * html/canvas/Int16Array.idl:
  27989. * html/canvas/Int32Array.cpp:
  27990. * html/canvas/Int32Array.idl:
  27991. * html/canvas/Int8Array.cpp:
  27992. * html/canvas/Int8Array.idl:
  27993. * html/canvas/Uint16Array.cpp:
  27994. * html/canvas/Uint16Array.idl:
  27995. * html/canvas/Uint32Array.cpp:
  27996. * html/canvas/Uint32Array.idl:
  27997. * html/canvas/Uint8Array.cpp:
  27998. * html/canvas/Uint8Array.idl:
  27999. 2010-10-11 Andreas Kling <kling@webkit.org>
  28000. Build fix (implicit float conversion in Path.cpp)
  28001. * platform/graphics/Path.cpp:
  28002. 2010-10-11 Girish Ramakrishnan <girish@forwardbias.in>
  28003. Reviewed by Kenneth Rohde Christiansen.
  28004. [Qt] Refactor Plugin X Pixmap painting code to a separate function
  28005. The refactored function will be used for rendering by the Accelerated
  28006. Composition enabled graphics layer.
  28007. https://bugs.webkit.org/show_bug.cgi?id=35524
  28008. * plugins/PluginView.h:
  28009. * plugins/qt/PluginViewQt.cpp:
  28010. (WebCore::PluginView::paintUsingXPixmap):
  28011. (WebCore::PluginView::paint):
  28012. 2010-10-11 Andreas Kling <kling@webkit.org>
  28013. Reviewed by Dirk Schulze.
  28014. SVG: Remove "create" methods and use port-specific "add" counterparts
  28015. https://bugs.webkit.org/show_bug.cgi?id=46052
  28016. Circles and ellipses will be significantly faster on platforms that
  28017. implement Path::addEllipse() in a sane fashion.
  28018. Also, a lot of Path copying has been factored out by changing functions
  28019. that would return Paths to take Path& arguments instead (toPathData, toClipPath)
  28020. * mathml/RenderMathMLRoot.cpp:
  28021. (WebCore::RenderMathMLRoot::paint):
  28022. * mathml/RenderMathMLSquareRoot.cpp:
  28023. (WebCore::RenderMathMLSquareRoot::paint):
  28024. * platform/graphics/GraphicsContext.cpp:
  28025. (WebCore::GraphicsContext::addRoundedRectClip):
  28026. (WebCore::GraphicsContext::clipOutRoundedRect):
  28027. * platform/graphics/Path.cpp:
  28028. (WebCore::pathLengthApplierFunction):
  28029. (WebCore::Path::addRoundedRect):
  28030. * platform/graphics/Path.h:
  28031. * platform/graphics/cairo/ContextShadowCairo.cpp:
  28032. (WebCore::ContextShadow::drawRectShadowWithoutTiling):
  28033. (WebCore::ContextShadow::drawRectShadow):
  28034. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  28035. (WebCore::GraphicsContext::drawFocusRing):
  28036. (WebCore::GraphicsContext::drawTiledShadow):
  28037. (WebCore::GraphicsContext::fillRoundedRect):
  28038. * platform/graphics/cg/GraphicsContextCG.cpp:
  28039. (WebCore::GraphicsContext::fillRoundedRect):
  28040. * platform/graphics/qt/GraphicsContextQt.cpp:
  28041. (WebCore::GraphicsContext::fillRoundedRect):
  28042. * rendering/RenderBoxModelObject.cpp:
  28043. (WebCore::RenderBoxModelObject::paintBorder):
  28044. (WebCore::RenderBoxModelObject::paintBoxShadow):
  28045. * rendering/RenderEmbeddedObject.cpp:
  28046. (WebCore::RenderEmbeddedObject::getReplacementTextGeometry):
  28047. * rendering/RenderSVGResourceClipper.cpp:
  28048. (WebCore::RenderSVGResourceClipper::pathOnlyClipping):
  28049. * rendering/svg/RenderSVGPath.cpp:
  28050. (WebCore::RenderSVGPath::layout):
  28051. * rendering/svg/RenderSVGTextPath.cpp:
  28052. (WebCore::RenderSVGTextPath::layoutPath):
  28053. * rendering/svg/SVGInlineTextBox.cpp:
  28054. (WebCore::SVGInlineTextBox::paintDecorationWithStyle):
  28055. * svg/SVGAnimateMotionElement.cpp:
  28056. (WebCore::SVGAnimateMotionElement::animationPath):
  28057. * svg/SVGCircleElement.cpp:
  28058. (WebCore::SVGCircleElement::toPathData):
  28059. * svg/SVGCircleElement.h:
  28060. * svg/SVGEllipseElement.cpp:
  28061. (WebCore::SVGEllipseElement::toPathData):
  28062. * svg/SVGEllipseElement.h:
  28063. * svg/SVGLineElement.cpp:
  28064. (WebCore::SVGLineElement::toPathData):
  28065. * svg/SVGLineElement.h:
  28066. * svg/SVGPathElement.cpp:
  28067. (WebCore::SVGPathElement::getTotalLength):
  28068. (WebCore::SVGPathElement::getPointAtLength):
  28069. (WebCore::SVGPathElement::toPathData):
  28070. * svg/SVGPathElement.h:
  28071. * svg/SVGPolygonElement.cpp:
  28072. (WebCore::SVGPolygonElement::toPathData):
  28073. * svg/SVGPolygonElement.h:
  28074. * svg/SVGPolylineElement.cpp:
  28075. (WebCore::SVGPolylineElement::toPathData):
  28076. * svg/SVGPolylineElement.h:
  28077. * svg/SVGRectElement.cpp:
  28078. (WebCore::SVGRectElement::toPathData):
  28079. * svg/SVGRectElement.h:
  28080. * svg/SVGStyledTransformableElement.cpp:
  28081. (WebCore::SVGStyledTransformableElement::toClipPath):
  28082. * svg/SVGStyledTransformableElement.h:
  28083. (WebCore::SVGStyledTransformableElement::toPathData):
  28084. * svg/SVGUseElement.cpp:
  28085. (WebCore::SVGUseElement::toClipPath):
  28086. * svg/SVGUseElement.h:
  28087. 2010-10-01 Oliver Hunt <oliver@apple.com>
  28088. Reviewed by Gavin Barraclough.
  28089. [ES5] Implement strict mode
  28090. https://bugs.webkit.org/show_bug.cgi?id=10701
  28091. Test: fast/js/basic-strict-mode.html
  28092. Override toStrictThisObject on the domwindow so that
  28093. it correctly provides the shell object when used as this
  28094. in a strict mode function.
  28095. * bindings/js/JSDOMWindowBase.cpp:
  28096. (WebCore::JSDOMWindowBase::toStrictThisObject):
  28097. * bindings/js/JSDOMWindowBase.h:
  28098. 2010-10-11 Joseph Pecoraro <joepeck@webkit.org>
  28099. Reviewed by Eric Carlson.
  28100. CRASH at WebCore::HTMLSourceElement::scheduleErrorEvent
  28101. https://bugs.webkit.org/show_bug.cgi?id=46777
  28102. Another case that could lead to an improper set of states between
  28103. m_currentNode and m_loadingState. Also added an ASSERT and early
  28104. return to prevent crashes if this case can still happen in other ways.
  28105. * html/HTMLMediaElement.cpp:
  28106. (WebCore::HTMLMediaElement::prepareForLoad):
  28107. 2010-10-11 Ryosuke Niwa <rniwa@webkit.org>
  28108. Reviewed by Darin Adler.
  28109. spellcheck="false" not respected in designMode
  28110. https://bugs.webkit.org/show_bug.cgi?id=39978
  28111. The bug was caused by WebKit's setting focus to html element rather than body element in design mode.
  28112. Because we disable spell-check only if ancestor nodes of the focused element had spellcheck=false,
  28113. this caused us to ignore body element's spellcheck attribute.
  28114. Fixed the bug by overriding supportsFocus in HTMLBodyElement to make body element focusable
  28115. when the parent node of body elements (namely html element) is editable.
  28116. Test: editing/spelling/design-mode-spellcheck-off.html
  28117. * html/HTMLBodyElement.cpp:
  28118. (WebCore::HTMLBodyElement::supportsFocus): Added.
  28119. * html/HTMLBodyElement.h:
  28120. 2010-10-11 Oliver Hunt <oliver@apple.com>
  28121. Build fix -- I thought i had killed the prior commit in time to have this be part of the commit.
  28122. * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
  28123. (WebCore::GraphicsContext3D::getShaderInfoLog):
  28124. 2010-10-11 Oliver Hunt <oliver@apple.com>
  28125. Reviewed by Andreas Kling.
  28126. Incorrect handling of 0 length logs in GraphicsContext3DOpenGL.cpp
  28127. https://bugs.webkit.org/show_bug.cgi?id=47494
  28128. Working on another patch I found that there was some screwy behaviour
  28129. when dealing with logs from GL. GL_INFO_LOG_LENGTH is defined as being
  28130. zero if there is no log message, but we did not check for that case and
  28131. simply perfomed a zero sized alloc and passed the resultant buffer to
  28132. glGetShaderInfoLog, etc. glGetShaderInfoLog would then write a null
  28133. terminator to the buffer, thus causing an overflow. This is obviously
  28134. not a problem in practice as allocations are at least 4 bytes long in
  28135. all common allocators, but it is still a bug.
  28136. I also removed some unnecessary null checks following calls to fastMalloc.
  28137. * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
  28138. (WebCore::GraphicsContext3D::getProgramInfoLog):
  28139. (WebCore::GraphicsContext3D::getShaderInfoLog):
  28140. 2010-10-11 Nikolas Zimmermann <nzimmermann@rim.com>
  28141. Reviewed by Andreas Kling.
  28142. Kill Path::debugString()
  28143. https://bugs.webkit.org/show_bug.cgi?id=47493
  28144. Remove the obsolete Path::debugString() method. DRT now dumps paths in a platform independant way.
  28145. * platform/graphics/Path.h:
  28146. * platform/graphics/cairo/PathCairo.cpp:
  28147. * platform/graphics/cg/PathCG.cpp:
  28148. * platform/graphics/haiku/PathHaiku.cpp:
  28149. * platform/graphics/openvg/PathOpenVG.cpp:
  28150. * platform/graphics/qt/PathQt.cpp:
  28151. * platform/graphics/skia/PathSkia.cpp:
  28152. * platform/graphics/wince/PathWinCE.cpp:
  28153. * platform/graphics/wince/PlatformPathWinCE.cpp:
  28154. * platform/graphics/wince/PlatformPathWinCE.h:
  28155. * platform/graphics/wx/PathWx.cpp:
  28156. * svg/SVGGlyphElement.h:
  28157. (WebCore::SVGGlyphIdentifier::operator==):
  28158. 2010-10-11 Martin Robinson <mrobinson@igalia.com>
  28159. Reviewed by Xan Lopez.
  28160. [GTK] Search field icons should be centered vertically in the field
  28161. https://bugs.webkit.org/show_bug.cgi?id=47441
  28162. Center search field icons vertically in the search field.
  28163. * platform/gtk/RenderThemeGtk.cpp:
  28164. (WebCore::centerRectVerticallyInParentInputElement): Added this helper.
  28165. (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration): Center the search
  28166. field icon by adjusting its drawing rect relative to the containing search field.
  28167. (WebCore::RenderThemeGtk::paintSearchFieldCancelButton): Ditto.
  28168. 2010-10-11 Pavel Podivilov <podivilov@chromium.org>
  28169. Reviewed by Pavel Feldman.
  28170. Web Inspector: fix event listener breakpoints sidebar pane style
  28171. https://bugs.webkit.org/show_bug.cgi?id=47487
  28172. * inspector/front-end/inspector.css:
  28173. (.section .properties, .event-bar .event-properties):
  28174. (.section.expanded .properties, .event-bar.expanded .event-properties):
  28175. (.properties-tree):
  28176. (.properties-tree li):
  28177. (.properties-tree li.parent):
  28178. (.properties-tree li.parent::before):
  28179. (.properties-tree li.parent.expanded::before):
  28180. (.properties-tree li .info):
  28181. (.properties-tree ol, .stack-trace ol, ol.stack-trace):
  28182. (.properties-tree ol.expanded, .stack-trace ol, ol.stack-trace):
  28183. (ol.stack-trace):
  28184. (.event-listener-breakpoints .event-category):
  28185. (.event-listener-breakpoints.properties-tree .children li):
  28186. (.event-listener-breakpoints .checkbox-elem):
  28187. (.breakpoint-list .breakpoint-hit):
  28188. 2010-10-11 Andreas Kling <kling@webkit.org>
  28189. Reviewed by Tor Arne Vestbø.
  28190. [Qt] Avoid QPainterPath::operator=(QPainterPath()) when possible
  28191. Same concept as <http://trac.webkit.org/changeset/69462>, do nothing
  28192. when clearing an already empty QPainterPath. Avoids one delete+new.
  28193. * platform/graphics/qt/GraphicsContextQt.cpp:
  28194. (WebCore::GraphicsContextPlatformPrivate::clearCurrentPath):
  28195. (WebCore::GraphicsContext::fillPath):
  28196. (WebCore::GraphicsContext::strokePath):
  28197. (WebCore::GraphicsContext::beginPath):
  28198. 2010-10-11 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
  28199. Unreviewed. Remove unnecessary GTK+ and Pango includes.
  28200. * platform/gtk/FileChooserGtk.cpp:
  28201. * platform/gtk/Language.cpp:
  28202. 2010-10-11 Kinuko Yasuda <kinuko@chromium.org>
  28203. Reviewed by David Levin.
  28204. Support DirectoryEntry.removeRecursively for FileSystem API
  28205. https://bugs.webkit.org/show_bug.cgi?id=47400
  28206. Also disallows remove/removeRecursively on the root directory.
  28207. Test: fast/filesystem/op-remove.html
  28208. * fileapi/DOMFileSystemBase.cpp:
  28209. (WebCore::DOMFileSystemBase::removeRecursively): Added.
  28210. * fileapi/DOMFileSystemBase.h:
  28211. * fileapi/DirectoryEntry.cpp:
  28212. (WebCore::DirectoryEntry::removeRecursively): Added.
  28213. * fileapi/DirectoryEntry.h:
  28214. * fileapi/DirectoryEntry.idl:
  28215. * fileapi/DirectoryEntrySync.cpp:
  28216. (WebCore::DirectoryEntrySync::removeRecursively): Added.
  28217. * fileapi/DirectoryEntrySync.h:
  28218. * fileapi/DirectoryEntrySync.idl:
  28219. * platform/AsyncFileSystem.h:
  28220. 2010-10-11 Dirk Schulze <krit@webkit.org>
  28221. Reviewed by Nikolas Zimmermann.
  28222. SVG feImage take preserveAspectRatio into account for absolute paint rect
  28223. https://bugs.webkit.org/show_bug.cgi?id=47464
  28224. Determine the smallest effect region for SVGFEImage by taking preserveAspectRatio into account.
  28225. * svg/graphics/filters/SVGFEImage.cpp:
  28226. (WebCore::FEImage::determineAbsolutePaintRect):
  28227. (WebCore::FEImage::apply):
  28228. * svg/graphics/filters/SVGFEImage.h:
  28229. 2010-10-10 Abhishek Arya <inferno@chromium.org>
  28230. Reviewed by Dan Bernstein.
  28231. <rdar://problem/8510200> Lines flow around a float that has been removed
  28232. Overhanging floats are not added to flexible boxes since they behave like
  28233. block formatting contexts. This causes the intruding floats added in siblings
  28234. to not get cleared. Enforce the float release by checking if the parent is a
  28235. flexible box and if yes, use that as the outermost block.
  28236. https://bugs.webkit.org/show_bug.cgi?id=47104
  28237. Test: fast/flexbox/overhanging-floats-removed.html
  28238. * rendering/RenderBox.cpp:
  28239. (WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists):
  28240. 2010-10-10 Chris Fleizach <cfleizach@apple.com>
  28241. Reviewed by Beth Dakin.
  28242. AX: if aria-live is on a <span> or ignored element, live regions don't work
  28243. https://bugs.webkit.org/show_bug.cgi?id=47443
  28244. If an element has aria attributes, but has no other native role associated with it,
  28245. accessibility should fallback to exposing that element as an AXGroup.
  28246. Test: platform/mac/accessibility/live-region-on-span.html
  28247. * accessibility/AccessibilityRenderObject.cpp:
  28248. (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
  28249. 2010-10-10 Daniel Cheng <dcheng@chromium.org>
  28250. Reviewed by Adam Barth.
  28251. [chromium] Clipboard no longer accepts 'text' as a synonym for 'text/plain'
  28252. https://bugs.webkit.org/show_bug.cgi?id=47419
  28253. This was a regression introduced in r68807. mimeTypeText had the incorrect
  28254. value.
  28255. Test: editing/pasteboard/dataTransfer-setData-getData.html
  28256. * platform/chromium/ClipboardMimeTypes.cpp:
  28257. 2010-10-09 Eric Uhrhane <ericu@chromium.org>
  28258. Reviewed by Andreas Kling.
  28259. FileWriter sends write event instead of progress event
  28260. https://bugs.webkit.org/show_bug.cgi?id=47454
  28261. No new tests; FileWriter tests will be added shortly, but currently
  28262. there's no implementation capable of running them.
  28263. * fileapi/FileWriter.cpp:
  28264. (WebCore::FileWriter::didWrite):
  28265. 2010-10-09 Andreas Kling <kling@webkit.org>
  28266. Reviewed by Kenneth Rohde Christiansen.
  28267. [Qt] Fast-path in Path::clear() for already empty paths
  28268. https://bugs.webkit.org/show_bug.cgi?id=47460
  28269. The only way to clear a QPainterPath is to assign QPainterPath() to it.
  28270. Avoid creating a temporary object etc if the path is already empty.
  28271. * platform/graphics/qt/PathQt.cpp:
  28272. (WebCore::Path::clear):
  28273. 2010-10-08 Ryosuke Niwa <rniwa@webkit.org>
  28274. Reviewed by Darin Adler.
  28275. Redo in ReplaceNodeWithSpanCommand is broken
  28276. https://bugs.webkit.org/show_bug.cgi?id=47428
  28277. The bug was caused by ReplaceNodeWithSpanCommand's inheriting from CompositeEditCommand,
  28278. and ReplaceNodeWithSpanCommand's not implementing doReapply. Because ReplaceNodeWithSpanCommand's doApply
  28279. directly modifies DOM and does not use simple edit commands while CompositeEditCommand's doReapply
  28280. only calls reapply of compositing simple edit commands, ReplaceNodeWithSpanCommand's doReapply was no-op.
  28281. Fixed the bug by changing the base class of ReplaceNodeWithSpanCommand to SimpleEditCommand.
  28282. This allows ReplaceNodeWithSpanCommand's doReapply to call its doApply, which already supports redo operation.
  28283. Test: editing/undo/replace-by-span-then-remove.html
  28284. * editing/ReplaceNodeWithSpanCommand.cpp:
  28285. (WebCore::ReplaceNodeWithSpanCommand::ReplaceNodeWithSpanCommand):
  28286. * editing/ReplaceNodeWithSpanCommand.h:
  28287. 2010-10-09 Carlos Garcia Campos <cgarcia@igalia.com>
  28288. Reviewed by Martin Robinson.
  28289. [GTK] Implement subregion rendering in WebView when using gtk3
  28290. https://bugs.webkit.org/show_bug.cgi?id=47411
  28291. * GNUmakefile.am:
  28292. * platform/graphics/FloatRect.h:
  28293. * platform/graphics/cairo/FloatRectCairo.cpp: Added.
  28294. (WebCore::FloatRect::FloatRect):
  28295. (WebCore::FloatRect::operator cairo_rectangle_t):
  28296. 2010-10-09 Carlos Garcia Campos <cgarcia@igalia.com>
  28297. Reviewed by Martin Robinson.
  28298. [GTK] Implement subregion rendering in WebView when using gtk3
  28299. https://bugs.webkit.org/show_bug.cgi?id=47411
  28300. * GNUmakefile.am:
  28301. * platform/graphics/FloatRect.h:
  28302. * platform/graphics/cairo/FloatRectCairo.cpp: Added.
  28303. (WebCore::FloatRect::FloatRect):
  28304. (WebCore::FloatRect::operator cairo_rectangle_t):
  28305. 2010-10-09 Kwang Yul Seo <skyul@company100.net>
  28306. Reviewed by Andreas Kling.
  28307. Add ENABLE(ACCELERATED_2D_CANVAS) guard for m_uploadTexture
  28308. https://bugs.webkit.org/show_bug.cgi?id=47114
  28309. PlatformContextSkia's m_uploadTexture is used only in code guarded with ENABLE(ACCELERATED_2D_CANVAS).
  28310. * platform/graphics/skia/PlatformContextSkia.h:
  28311. 2010-10-09 Patrick Gansterer <paroga@webkit.org>
  28312. Reviewed by Adam Barth.
  28313. Use WTF::StringHasher for hashing MappedAttributeKey
  28314. https://bugs.webkit.org/show_bug.cgi?id=46516
  28315. * dom/StyledElement.cpp:
  28316. (WebCore::MappedAttributeHash::hash):
  28317. 2010-10-09 Martin Robinson <mrobinson@igalia.com>
  28318. Reviewed by Xan Lopez.
  28319. [Gtk] Non-rectangular buttons have a square background behind them
  28320. https://bugs.webkit.org/show_bug.cgi?id=23569
  28321. Remove some code which was clearing pieces of the GdkDrawable if it was
  28322. currently mapped to a window. In our case it is unnecessary, because the
  28323. platform-independent parts of the render have already cleared this section
  28324. if it is needed.
  28325. Mozilla must not trip this code path, which means they are probably rendering
  28326. most often to a non-mapped GdkPixmap.
  28327. No new tests as some themed rendering is covered by existing tests that
  28328. render buttons. This particular bug is very hard to test as it only appears
  28329. with certain GTK+ themes and we currently have no mechanism to test different
  28330. themes in DRT.
  28331. * platform/gtk/gtk2drawing.c:
  28332. (moz_gtk_button_paint): Remove unnecessary code.
  28333. 2010-10-09 Martin Robinson <mrobinson@igalia.com>
  28334. Reviewed by Xan Lopez.
  28335. [GTK] Slider padding translate into a larger track rect
  28336. https://bugs.webkit.org/show_bug.cgi?id=47435
  28337. Instead of painting the track rectangle for ranges onto the entire RenderBox
  28338. rectangle, simply paint it on the content rectangle. This prevents misrendering
  28339. sliders with padding.
  28340. * platform/gtk/RenderThemeGtk.cpp:
  28341. (WebCore::RenderThemeGtk::paintSliderTrack): Paint onto the absoluteContentRect
  28342. of the slider instead of the entire area (which includes padding).
  28343. 2010-10-09 Kent Tamura <tkent@chromium.org>
  28344. Unreviewed, trivial regression fix for r69445.
  28345. RangeInputType::supportsRequired() should return false.
  28346. https://bugs.webkit.org/show_bug.cgi?id=47405
  28347. * html/RangeInputType.cpp:
  28348. (WebCore::RangeInputType::supportsRequired):
  28349. * html/RangeInputType.h:
  28350. 2010-10-09 Kent Tamura <tkent@chromium.org>
  28351. Reviewed by Dimitri Glazkov.
  28352. Refactor HTMLInputElement: Move typeMismatch(), valueMissing(),
  28353. isRequiredFormControl(), and recalcWillValidate()
  28354. https://bugs.webkit.org/show_bug.cgi?id=47405
  28355. Also make checkedRadioButtons() an inline member function of
  28356. HTMLInputElement in order that RadioInputType can use it.
  28357. * html/BaseDateAndTimeInputType.cpp:
  28358. (WebCore::BaseDateAndTimeInputType::typeMismatchFor):
  28359. (WebCore::BaseDateAndTimeInputType::typeMismatch):
  28360. * html/BaseDateAndTimeInputType.h:
  28361. * html/ButtonInputType.cpp:
  28362. (WebCore::ButtonInputType::supportsValidation):
  28363. * html/ButtonInputType.h:
  28364. * html/CheckboxInputType.cpp:
  28365. (WebCore::CheckboxInputType::valueMissing):
  28366. * html/CheckboxInputType.h:
  28367. * html/ColorInputType.cpp:
  28368. (WebCore::isValidColorString):
  28369. (WebCore::ColorInputType::typeMismatchFor):
  28370. (WebCore::ColorInputType::typeMismatch):
  28371. (WebCore::ColorInputType::supportsRequired):
  28372. * html/ColorInputType.h:
  28373. * html/EmailInputType.cpp:
  28374. (WebCore::isValidEmailAddress):
  28375. (WebCore::EmailInputType::typeMismatchFor):
  28376. (WebCore::EmailInputType::typeMismatch):
  28377. * html/EmailInputType.h:
  28378. * html/FileInputType.cpp:
  28379. (WebCore::FileInputType::valueMissing):
  28380. * html/FileInputType.h:
  28381. * html/HTMLInputElement.cpp:
  28382. (WebCore::HTMLInputElement::updateCheckedRadioButtons):
  28383. (WebCore::HTMLInputElement::isValidValue):
  28384. (WebCore::HTMLInputElement::typeMismatch):
  28385. (WebCore::HTMLInputElement::valueMissing):
  28386. (WebCore::HTMLInputElement::isKeyboardFocusable):
  28387. (WebCore::HTMLInputElement::updateType):
  28388. (WebCore::HTMLInputElement::parseMappedAttribute):
  28389. (WebCore::HTMLInputElement::setChecked):
  28390. (WebCore::HTMLInputElement::preDispatchEventHandler):
  28391. (WebCore::HTMLInputElement::isRequiredFormControl):
  28392. (WebCore::HTMLInputElement::recalcWillValidate):
  28393. * html/HTMLInputElement.h:
  28394. (WebCore::HTMLInputElement::checkedRadioButtons):
  28395. * html/HiddenInputType.cpp:
  28396. (WebCore::HiddenInputType::supportsValidation):
  28397. * html/HiddenInputType.h:
  28398. * html/ImageInputType.cpp:
  28399. (WebCore::ImageInputType::supportsValidation):
  28400. * html/ImageInputType.h:
  28401. * html/InputType.cpp:
  28402. (WebCore::InputType::supportsValidation):
  28403. (WebCore::InputType::typeMismatchFor):
  28404. (WebCore::InputType::typeMismatch):
  28405. (WebCore::InputType::supportsRequired):
  28406. (WebCore::InputType::valueMissing):
  28407. * html/InputType.h:
  28408. * html/IsIndexInputType.cpp:
  28409. (WebCore::IsIndexInputType::supportsRequired):
  28410. * html/IsIndexInputType.h:
  28411. * html/NumberInputType.cpp:
  28412. (WebCore::NumberInputType::typeMismatchFor):
  28413. (WebCore::NumberInputType::typeMismatch):
  28414. * html/NumberInputType.h:
  28415. * html/RadioInputType.cpp:
  28416. (WebCore::RadioInputType::valueMissing):
  28417. * html/RadioInputType.h:
  28418. * html/ResetInputType.cpp:
  28419. (WebCore::ResetInputType::supportsValidation):
  28420. * html/ResetInputType.h:
  28421. * html/SubmitInputType.cpp:
  28422. (WebCore::SubmitInputType::supportsValidation):
  28423. * html/SubmitInputType.h:
  28424. * html/TextFieldInputType.cpp:
  28425. (WebCore::TextFieldInputType::valueMissing):
  28426. * html/TextFieldInputType.h:
  28427. * html/URLInputType.cpp:
  28428. (WebCore::URLInputType::typeMismatchFor):
  28429. (WebCore::URLInputType::typeMismatch):
  28430. * html/URLInputType.h:
  28431. * html/ValidityState.cpp:
  28432. (WebCore::ValidityState::typeMismatch):
  28433. 2010-10-09 Pratik Solanki <psolanki@apple.com>
  28434. Reviewed by Dan Bernstein.
  28435. https://bugs.webkit.org/show_bug.cgi?id=47450
  28436. Crash in WebCore::SocketStreamHandle::chooseProxyFromArray because proxyArray passed is nil
  28437. <rdar://problem/8244376>
  28438. * platform/network/cf/SocketStreamHandleCFNet.cpp:
  28439. (WebCore::SocketStreamHandle::chooseProxyFromArray): If proxyArray is
  28440. NULL, return early to avoid crash.
  28441. 2010-10-08 Chris Rogers <crogers@google.com>
  28442. Reviewed by James Robinson.
  28443. Add HRTFPanner files
  28444. https://bugs.webkit.org/show_bug.cgi?id=46299
  28445. No new tests since audio API is not yet implemented.
  28446. * platform/audio/HRTFPanner.cpp: Added.
  28447. (WebCore::HRTFPanner::HRTFPanner):
  28448. (WebCore::HRTFPanner::~HRTFPanner):
  28449. (WebCore::HRTFPanner::fftSizeForSampleRate):
  28450. (WebCore::HRTFPanner::reset):
  28451. (WebCore::wrapDistance):
  28452. (WebCore::HRTFPanner::calculateDesiredAzimuthIndexAndBlend):
  28453. (WebCore::HRTFPanner::pan):
  28454. * platform/audio/HRTFPanner.h: Added.
  28455. (WebCore::HRTFPanner::fftSize):
  28456. (WebCore::HRTFPanner::sampleRate):
  28457. 2010-10-08 James Robinson <jamesr@chromium.org>
  28458. Reviewed by Adam Barth.
  28459. Avoid inlining large and/or virtual functions in widely included header files
  28460. https://bugs.webkit.org/show_bug.cgi?id=47230
  28461. Functions with very large bodies should not be included in widely included header files.
  28462. This results in the function's code ending up included in hundreds of object files that
  28463. the linker has to discard, at a cost of linker memory use, link time, and disk space. This
  28464. is a particular problem in the Chromium windows build where MSVC often exhausts its 32-bit
  28465. virtual address space and completely fails to link.
  28466. This patch moves function definitions from the .h to the corresponding .cpp when the function
  28467. is large and not a candidate for inlining either because it is virtual or because its size is
  28468. above any reasonable compiler's threshhold for inlining. The most common case by far in this
  28469. patch is changing a class' implicitly defined destructor to an explicitly declared d'tor in
  28470. the header and an explicitly defined d'tor in the .cpp. This is important since many of our
  28471. container and utility classes (especially Vector, String, and HashSet) have quite large
  28472. destructors.
  28473. This patch removes 22.4MB of object file size in a debug 64 bit compile.
  28474. * css/CSSBorderImageValue.cpp:
  28475. (WebCore::CSSBorderImageValue::~CSSBorderImageValue):
  28476. * css/CSSBorderImageValue.h:
  28477. * css/CSSFontFaceSrcValue.cpp:
  28478. (WebCore::CSSFontFaceSrcValue::~CSSFontFaceSrcValue):
  28479. * css/CSSFontFaceSrcValue.h:
  28480. * css/CSSFunctionValue.h:
  28481. * dom/BeforeTextInsertedEvent.cpp:
  28482. (WebCore::BeforeTextInsertedEvent::~BeforeTextInsertedEvent):
  28483. * dom/BeforeTextInsertedEvent.h:
  28484. * dom/BeforeUnloadEvent.cpp:
  28485. (WebCore::BeforeUnloadEvent::~BeforeUnloadEvent):
  28486. * dom/BeforeUnloadEvent.h:
  28487. * dom/ClassNodeList.h:
  28488. * dom/ClipboardEvent.cpp:
  28489. (WebCore::ClipboardEvent::~ClipboardEvent):
  28490. * dom/ClipboardEvent.h:
  28491. * dom/CustomEvent.cpp:
  28492. (WebCore::CustomEvent::~CustomEvent):
  28493. * dom/CustomEvent.h:
  28494. * dom/Element.cpp:
  28495. * dom/Element.h:
  28496. * dom/EventTarget.cpp:
  28497. (WebCore::EventTargetData::EventTargetData):
  28498. * dom/EventTarget.h:
  28499. * dom/InputElement.cpp:
  28500. (WebCore::InputElementData::~InputElementData):
  28501. * dom/InputElement.h:
  28502. * dom/MutationEvent.cpp:
  28503. (WebCore::MutationEvent::~MutationEvent):
  28504. * dom/MutationEvent.h:
  28505. * dom/Node.cpp:
  28506. (WebCore::Node::refEventTarget):
  28507. (WebCore::Node::derefEventTarget):
  28508. * dom/Node.h:
  28509. * dom/OptionElement.cpp:
  28510. (WebCore::OptionElementData::~OptionElementData):
  28511. * dom/OptionElement.h:
  28512. * dom/PopStateEvent.cpp:
  28513. (WebCore::PopStateEvent::~PopStateEvent):
  28514. * dom/PopStateEvent.h:
  28515. * dom/QualifiedName.cpp:
  28516. (WebCore::QualifiedName::~QualifiedName):
  28517. * dom/QualifiedName.h:
  28518. * dom/SelectElement.cpp:
  28519. (WebCore::SelectElementData::~SelectElementData):
  28520. * dom/SelectElement.h:
  28521. * dom/StaticHashSetNodeList.cpp:
  28522. (WebCore::StaticHashSetNodeList::StaticHashSetNodeList):
  28523. (WebCore::StaticHashSetNodeList::~StaticHashSetNodeList):
  28524. * dom/StaticHashSetNodeList.h:
  28525. * dom/StyleElement.cpp:
  28526. (WebCore::StyleElement::~StyleElement):
  28527. * dom/StyleElement.h:
  28528. * dom/TouchEvent.cpp:
  28529. (WebCore::TouchEvent::TouchEvent):
  28530. (WebCore::TouchEvent::~TouchEvent):
  28531. * dom/TouchEvent.h:
  28532. * editing/CompositeEditCommand.cpp:
  28533. (WebCore::CompositeEditCommand::~CompositeEditCommand):
  28534. * editing/CompositeEditCommand.h:
  28535. * editing/TextIterator.cpp:
  28536. (WebCore::BitStack::~BitStack):
  28537. (WebCore::TextIterator::~TextIterator):
  28538. (WebCore::WordAwareIterator::~WordAwareIterator):
  28539. * editing/TextIterator.h:
  28540. * inspector/InspectorValues.cpp:
  28541. (WebCore::InspectorObject::~InspectorObject):
  28542. (WebCore::InspectorObject::InspectorObject):
  28543. (WebCore::InspectorArray::~InspectorArray):
  28544. (WebCore::InspectorArray::InspectorArray):
  28545. * inspector/InspectorValues.h:
  28546. * loader/CachedResource.cpp:
  28547. (WebCore::CachedResource::registerHandle):
  28548. (WebCore::CachedResource::unregisterHandle):
  28549. * loader/CachedResource.h:
  28550. * platform/network/HTTPHeaderMap.cpp:
  28551. (WebCore::HTTPHeaderMap::HTTPHeaderMap):
  28552. (WebCore::HTTPHeaderMap::~HTTPHeaderMap):
  28553. (WebCore::HTTPHeaderMap::get):
  28554. (WebCore::HTTPHeaderMap::add):
  28555. * platform/network/HTTPHeaderMap.h:
  28556. * rendering/RenderApplet.cpp:
  28557. (WebCore::RenderApplet::~RenderApplet):
  28558. * rendering/RenderApplet.h:
  28559. * rendering/RenderButton.cpp:
  28560. (WebCore::RenderButton::~RenderButton):
  28561. * rendering/RenderButton.h:
  28562. * rendering/RenderCounter.cpp:
  28563. (WebCore::RenderCounter::~RenderCounter):
  28564. * rendering/RenderCounter.h:
  28565. * rendering/RenderFieldset.h:
  28566. * rendering/RenderForeignObject.cpp:
  28567. (WebCore::RenderForeignObject::~RenderForeignObject):
  28568. * rendering/RenderForeignObject.h:
  28569. * rendering/RenderFrame.h:
  28570. * rendering/RenderFrameBase.h:
  28571. * rendering/RenderHTMLCanvas.h:
  28572. * rendering/RenderIFrame.h:
  28573. * rendering/RenderInline.h:
  28574. * rendering/RenderListItem.h:
  28575. * rendering/RenderMarquee.cpp:
  28576. (WebCore::RenderMarquee::~RenderMarquee):
  28577. * rendering/RenderMarquee.h:
  28578. * rendering/RenderPath.cpp:
  28579. (WebCore::RenderPath::~RenderPath):
  28580. * rendering/RenderPath.h:
  28581. * rendering/RenderSVGBlock.h:
  28582. * rendering/RenderSVGContainer.cpp:
  28583. (WebCore::RenderSVGContainer::~RenderSVGContainer):
  28584. * rendering/RenderSVGContainer.h:
  28585. * rendering/RenderSVGHiddenContainer.h:
  28586. * rendering/RenderSVGInline.h:
  28587. * rendering/RenderSVGInlineText.cpp:
  28588. (WebCore::RenderSVGInlineText::~RenderSVGInlineText):
  28589. * rendering/RenderSVGInlineText.h:
  28590. * rendering/RenderSVGModelObject.h:
  28591. * rendering/RenderSVGResourceFilterPrimitive.h:
  28592. * rendering/RenderSVGRoot.cpp:
  28593. (WebCore::RenderSVGRoot::~RenderSVGRoot):
  28594. * rendering/RenderSVGRoot.h:
  28595. * rendering/RenderSVGTSpan.h:
  28596. * rendering/RenderSVGText.h:
  28597. * rendering/RenderSVGTextPath.h:
  28598. * rendering/RenderSVGTransformableContainer.h:
  28599. * rendering/RenderSVGViewportContainer.h:
  28600. * rendering/RenderTable.cpp:
  28601. (WebCore::RenderTable::~RenderTable):
  28602. * rendering/RenderTable.h:
  28603. * rendering/RenderTableCell.h:
  28604. * rendering/RenderTableCol.h:
  28605. * rendering/RenderTableRow.h:
  28606. * rendering/RenderTextFragment.cpp:
  28607. (WebCore::RenderTextFragment::~RenderTextFragment):
  28608. * rendering/RenderTextFragment.h:
  28609. * rendering/RenderWordBreak.h:
  28610. * svg/SVGStyledElement.cpp:
  28611. (WebCore::SVGStyledElement::~SVGStyledElement):
  28612. * svg/SVGStyledElement.h:
  28613. * svg/SVGStyledTransformableElement.cpp:
  28614. (WebCore::SVGStyledTransformableElement::~SVGStyledTransformableElement):
  28615. * svg/SVGStyledTransformableElement.h:
  28616. * xml/XPathParser.cpp:
  28617. (WebCore::XPath::Parser::~Parser):
  28618. * xml/XPathParser.h:
  28619. 2010-10-08 Martin Robinson <mrobinson@igalia.com>
  28620. Reviewed by Daniel Bates.
  28621. [GTK] Fails /LayoutTests/fast/css/button-height.html
  28622. https://bugs.webkit.org/show_bug.cgi?id=33936
  28623. GTK buttons honor height property set via CSS. The code for the method
  28624. adjustButtonStyle originates from the original GTK+ theme drawing code
  28625. and is clearly just a copy-paste from the Safari theme drawing code. The
  28626. Safari theme drawing code does quite a bit of work to ensure that button
  28627. fonts are consistent with the system theme, which is not something the GTK+
  28628. port does.
  28629. This change brings the method more in line with the Chromium port, which
  28630. allows CSS to style buttons, only overriding the line-height property,
  28631. which is required for layout tests to pass.
  28632. * platform/gtk/RenderThemeGtk.cpp:
  28633. (WebCore::RenderThemeGtk::adjustButtonStyle): No longer override most CSS
  28634. properties for button styling.
  28635. 2010-10-08 Mihai Parparita <mihaip@chromium.org>
  28636. Reviewed by Adam Barth.
  28637. popstate events are lost when network connection is in progress
  28638. https://bugs.webkit.org/show_bug.cgi?id=42940
  28639. Instead of checking FrameLoader::isComplete() (which isn't true if the
  28640. document's resource loader has requests outstanding), check that the
  28641. document's readyState is complete, as the spec says.
  28642. Test: http/tests/history/popstate-fires-with-pending-requests.html
  28643. * dom/Document.cpp:
  28644. (WebCore::Document::statePopped):
  28645. * loader/FrameLoader.cpp:
  28646. (WebCore::FrameLoader::didBeginDocument): Added call to set readyState
  28647. to Loading earlier. Otherwise, readyState's initial value is Complete,
  28648. and we only set it to Loading in Document::implicitOpen (which is called
  28649. after FrameLoader::didBeginDocument by DocumentWriter::begin), so we
  28650. could end up in Document::statePopped and have the readyState be
  28651. Complete, even if we hadn't even begin loading the document.
  28652. 2010-10-08 Daniel Cheng <dcheng@chromium.org>
  28653. Reviewed by Tony Chang.
  28654. [chromium] Update ReadableDataObject/WritableDataObject interface for ChromiumDataObject change
  28655. https://bugs.webkit.org/show_bug.cgi?id=47394
  28656. Minor cleanup--these classes have suffered from bit rot since they aren't
  28657. actively used at the moment. The three main changes are to:
  28658. 1) Condense getURL, setURL, getHTML, setHTML, urlTitle, htmlBaseUrl,
  28659. setUrlTitle, and sethtmlBaseUrl into setters/getters for just the URL
  28660. title and HTML base URL.
  28661. 2) Use Clipboard::ClipboardType instead of a bool.
  28662. 3) Remove the use of virtuals, as they are no longer needed..
  28663. * platform/chromium/ReadableDataObject.cpp:
  28664. (WebCore::clipboardBuffer):
  28665. (WebCore::ReadableDataObject::create):
  28666. (WebCore::ReadableDataObject::ReadableDataObject):
  28667. (WebCore::ReadableDataObject::getData):
  28668. (WebCore::ReadableDataObject::urlTitle): renamed from getURL
  28669. (WebCore::ReadableDataObject::htmlBaseUrl): renamed from getHTML
  28670. (WebCore::ReadableDataObject::containsFilenames):
  28671. (WebCore::ReadableDataObject::filenames):
  28672. (WebCore::ReadableDataObject::ensureTypeCacheInitialized):
  28673. * platform/chromium/ReadableDataObject.h:
  28674. * platform/chromium/WritableDataObject.cpp:
  28675. (WebCore::WritableDataObject::create):
  28676. (WebCore::WritableDataObject::WritableDataObject):
  28677. (WebCore::WritableDataObject::setData):
  28678. * platform/chromium/WritableDataObject.h:
  28679. (WebCore::WritableDataObject::setUrlTitle): renamed from setURL
  28680. (WebCore::WritableDataObject::setHtmlBaseUrl): renamed from setHTML
  28681. (WebCore::WritableDataObject::dataMap):
  28682. (WebCore::WritableDataObject::urlTitle):
  28683. (WebCore::WritableDataObject::htmlBaseURL):
  28684. (WebCore::WritableDataObject::fileExtension):
  28685. (WebCore::WritableDataObject::fileContentFilename):
  28686. (WebCore::WritableDataObject::fileContent):
  28687. (WebCore::WritableDataObject::setFileExtension):
  28688. (WebCore::WritableDataObject::setFileContentFilename):
  28689. (WebCore::WritableDataObject::setFileContent):
  28690. 2010-10-08 Abhishek Arya <inferno@chromium.org>
  28691. Unreviewed, rolling out r69360.
  28692. http://trac.webkit.org/changeset/69360
  28693. https://bugs.webkit.org/show_bug.cgi?id=46921
  28694. Test still crashing on chromium test_shell
  28695. * html/HTMLObjectElement.cpp:
  28696. (WebCore::HTMLObjectElement::renderFallbackContent):
  28697. 2010-10-08 Sheriff Bot <webkit.review.bot@gmail.com>
  28698. Unreviewed, rolling out r68574.
  28699. http://trac.webkit.org/changeset/68574
  28700. https://bugs.webkit.org/show_bug.cgi?id=47433
  28701. [chromium] Breaks partial repaint of images while scrolling
  28702. (Requested by jamesr on #webkit).
  28703. * platform/graphics/skia/ImageSkia.cpp:
  28704. (WebCore::computeResamplingMode):
  28705. (WebCore::drawResampledBitmap):
  28706. 2010-10-08 Andy Estes <aestes@apple.com>
  28707. Reviewed by Darin Adler.
  28708. REGRESSION (r66223): Crash when using CSS content and -webkit-mask-box-image properties containing cached images.
  28709. https://bugs.webkit.org/show_bug.cgi?id=47430
  28710. Test: fast/replaced/css-content-and-webkit-mask-box-image-crash.html
  28711. * rendering/RenderImage.cpp:
  28712. (WebCore::RenderImage::imageChanged): imageChanged() can be called prior
  28713. to m_imageResource being set. The appropriate thing to do in this case
  28714. is to return early.
  28715. (WebCore::RenderImage::notifyFinished): Ditto.
  28716. 2010-10-08 Andrei Popescu <andreip@google.com>
  28717. Reviewed by Jeremy Orlow.
  28718. IndexedDB does not have a quota mechanism.
  28719. https://bugs.webkit.org/show_bug.cgi?id=47389
  28720. Test: storage/indexeddb/database-quota.html
  28721. Add a simple mechanism for enforcing a maximum size
  28722. for each origin using IndexedDB. Note that this depends
  28723. on having one SQLite database file per origin, which is
  28724. addressed in a separate patch.
  28725. * page/GroupSettings.cpp:
  28726. (WebCore::GroupSettings::GroupSettings):
  28727. (WebCore::GroupSettings::setIndexedDBQuotaBytes):
  28728. * page/GroupSettings.h:
  28729. (WebCore::GroupSettings::indexedDBQuotaBytes):
  28730. * storage/IDBDatabaseBackendImpl.cpp:
  28731. (WebCore::IDBDatabaseBackendImpl::createObjectStore):
  28732. (WebCore::IDBDatabaseBackendImpl::createObjectStoreInternal):
  28733. (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
  28734. (WebCore::IDBDatabaseBackendImpl::setVersionInternal):
  28735. * storage/IDBFactory.cpp:
  28736. (WebCore::IDBFactory::open):
  28737. * storage/IDBFactoryBackendImpl.cpp:
  28738. (WebCore::openSQLiteDatabase):
  28739. (WebCore::IDBFactoryBackendImpl::open):
  28740. * storage/IDBFactoryBackendImpl.h:
  28741. * storage/IDBFactoryBackendInterface.h:
  28742. * storage/IDBObjectStoreBackendImpl.cpp:
  28743. (WebCore::putObjectStoreData):
  28744. (WebCore::putIndexData):
  28745. (WebCore::IDBObjectStoreBackendImpl::put):
  28746. (WebCore::IDBObjectStoreBackendImpl::putInternal):
  28747. (WebCore::IDBObjectStoreBackendImpl::createIndexInternal):
  28748. * storage/IDBObjectStoreBackendImpl.h:
  28749. 2010-10-08 Gavin Peters <gavinp@chromium.org>
  28750. Reviewed by Adam Barth.
  28751. Output X-Purpose header for prefetch requests
  28752. https://bugs.webkit.org/show_bug.cgi?id=46529
  28753. Test: http/tests/misc/prefetch-purpose.html
  28754. * loader/loader.cpp:
  28755. (WebCore::Loader::Host::servePendingRequests):
  28756. 2010-10-08 James Kozianski <koz@chromium.org>
  28757. Reviewed by Simon Fraser.
  28758. Crash on reload when CSS property 'content' has malformed URL.
  28759. https://bugs.webkit.org/show_bug.cgi?id=47322
  28760. Make CSSStyleSelector handle the case where a cached image can't be
  28761. produced due to a malformed URL.
  28762. Test: fast/css-generated-content/malformed-url.html
  28763. * css/CSSStyleSelector.cpp:
  28764. (WebCore::CSSStyleSelector::loadPendingImages):
  28765. 2010-10-08 Dirk Schulze <krit@webkit.org>
  28766. Reviewed by Nikolas Zimmermann.
  28767. SVG feImage needs absolute subregion for preserveAspectRatio
  28768. https://bugs.webkit.org/show_bug.cgi?id=47409
  28769. PreserverAspectRatio needs the subregion in absolute coordinates to determine
  28770. the destination position and size of the input image. The maxEffectRect() already
  28771. stores the absolute subregion, but clipped to the filter region.
  28772. Test: svg/W3C-SVG-1.1se/filters-image-03-f.svg
  28773. * platform/graphics/filters/FETile.cpp:
  28774. (WebCore::FETile::apply):
  28775. * platform/graphics/filters/FilterEffect.h: Added enum to differentate sourece inputs, feTile and feImage.
  28776. (WebCore::FilterEffect::filterEffectType):
  28777. * platform/graphics/filters/SourceAlpha.h: Make use of the new enum in FilterEffect
  28778. (WebCore::SourceAlpha::filterEffectType):
  28779. * platform/graphics/filters/SourceGraphic.h: Ditto.
  28780. (WebCore::SourceGraphic::filterEffectType):
  28781. * svg/graphics/filters/SVGFEImage.cpp: Take the absolute subregion to determine the destination rect for input image.
  28782. (WebCore::FEImage::apply):
  28783. * svg/graphics/filters/SVGFEImage.h: Ditto.
  28784. (WebCore::FEImage::setAbsoluteSubregion):
  28785. (WebCore::FEImage::filterEffectType):
  28786. * svg/graphics/filters/SVGFilter.cpp: Give over subregion in absolute coordinates to feImage. Just feImage makes use of it.
  28787. (WebCore::SVGFilter::determineFilterPrimitiveSubregion):
  28788. 2010-10-08 Nikolas Zimmermann <nzimmermann@rim.com>
  28789. Reviewed by Dirk Schulze.
  28790. gradient stroke on lines does not work
  28791. https://bugs.webkit.org/show_bug.cgi?id=40985
  28792. Correct handling of invalid fill/stroke paint servers / colors according to SVG 1.1 2nd Edition.
  28793. Perfectly matches Opera, and now lets us pass three of the new tests.
  28794. Fix incorrect svg/custom/invalid-fill* tests:
  28795. -> If there's an invalid fill URI, but no fallback specified, it is as if fill="black" was specified. (invalid-fill.svg)
  28796. -> If there's an invalid fill color, but no fallback specified, it is as if fill="none" was specified. (invalid-fill-hex.svg)
  28797. Needed to refactor some of the gradient/pattern code to properly handle fallback paint servers.
  28798. As side effect, we're allowing gradients with gradientUnits="userSpaceOnUse" to apply on 1d objects (lines) again, per SVG 1.1 2nd edition.
  28799. Tests: svg/W3C-SVG-1.1-SE/pservers-pattern-03-f.svg
  28800. svg/W3C-SVG-1.1-SE/pservers-grad-17-b.svg
  28801. svg/W3C-SVG-1.1-SE/pservers-grad-20-b.svg
  28802. * rendering/RenderSVGResource.cpp: Rewrite fill/stroke paint resource requests, share all code between the similar functions.
  28803. (WebCore::requestPaintingResource):
  28804. (WebCore::RenderSVGResource::fillPaintingResource):
  28805. (WebCore::RenderSVGResource::strokePaintingResource):
  28806. * rendering/RenderSVGResource.h:
  28807. * rendering/RenderSVGResourceGradient.cpp: Split collecting gradient properties from building the gradient. We don't need to build it, if it's not applyable (eg. on 1d lines).
  28808. (WebCore::RenderSVGResourceGradient::RenderSVGResourceGradient):
  28809. (WebCore::RenderSVGResourceGradient::removeAllClientsFromCache):
  28810. (WebCore::clipToTextMask):
  28811. (WebCore::RenderSVGResourceGradient::applyResource):
  28812. * rendering/RenderSVGResourceGradient.h: Stop storing boundingBoxMode & gradientTransform in each GradientData object, it's enough to just store it in the gradient resource, once.
  28813. * rendering/RenderSVGResourceLinearGradient.cpp:
  28814. (WebCore::RenderSVGResourceLinearGradient::collectGradientAttributes): Splitted from buildGradient.
  28815. (WebCore::RenderSVGResourceLinearGradient::buildGradient):
  28816. * rendering/RenderSVGResourceLinearGradient.h:
  28817. (WebCore::RenderSVGResourceLinearGradient::boundingBoxMode): Return bounding box mode information, from m_attributes instead of storing in gradientData.
  28818. (WebCore::RenderSVGResourceLinearGradient::calculateGradientTransform): Ditto.
  28819. * rendering/RenderSVGResourcePattern.cpp: Split collecting pattern properties from building the pattern. We don't need to build it, if it's not applyable (eg. on 1d lines).
  28820. (WebCore::RenderSVGResourcePattern::RenderSVGResourcePattern):
  28821. (WebCore::RenderSVGResourcePattern::removeAllClientsFromCache):
  28822. (WebCore::RenderSVGResourcePattern::applyResource):
  28823. (WebCore::RenderSVGResourcePattern::buildTileImageTransform):
  28824. * rendering/RenderSVGResourcePattern.h:
  28825. * rendering/RenderSVGResourceRadialGradient.cpp:
  28826. (WebCore::RenderSVGResourceRadialGradient::collectGradientAttributes):
  28827. (WebCore::RenderSVGResourceRadialGradient::buildGradient):
  28828. * rendering/RenderSVGResourceRadialGradient.h:
  28829. (WebCore::RenderSVGResourceRadialGradient::boundingBoxMode):
  28830. (WebCore::RenderSVGResourceRadialGradient::calculateGradientTransform):
  28831. * rendering/SVGRenderTreeAsText.cpp: Adapt to change, that fill/strokePaintingResource now take a Color& fallbackColor parameter.
  28832. (WebCore::writeStyle):
  28833. (WebCore::writeSVGResourceContainer):
  28834. * rendering/svg/RenderSVGPath.cpp:
  28835. (WebCore::RenderSVGPath::fillContains): Ditto.
  28836. (WebCore::RenderSVGPath::strokeContains): Ditto.
  28837. (WebCore::RenderSVGPath::fillAndStrokePath): Properly handle fallback color, if an existing (!) paint server failed to apply.
  28838. * rendering/svg/SVGInlineTextBox.cpp:
  28839. (WebCore::SVGInlineTextBox::acquirePaintingResource): Ditto.
  28840. * svg/SVGLinearGradientElement.cpp:
  28841. (WebCore::SVGLinearGradientElement::collectGradientAttributes): Pass LinearGradientAttributes by reference, instead of returning a copy.
  28842. * svg/SVGLinearGradientElement.h: Rename collectGradientProperties to collectGradientAttributes.
  28843. * svg/SVGPatternElement.cpp:
  28844. (WebCore::SVGPatternElement::collectPatternAttributes): Pass PatternAttributes by reference, instead of returning.
  28845. * svg/SVGPatternElement.h: Rename collectPatternProperties to collectPatternAttributes.
  28846. * svg/SVGRadialGradientElement.cpp:
  28847. (WebCore::SVGRadialGradientElement::collectGradientAttributes): Pass RadialGradientAttributes by reference, instead of returning a copy.
  28848. * svg/SVGRadialGradientElement.h: Rename collectGradientProperties to collectGradientAttributes.
  28849. 2010-10-08 Benjamin Poulain <benjamin.poulain@nokia.com>
  28850. Reviewed by Andreas Kling.
  28851. [Qt] Slider widgets looks bad on Mac
  28852. https://bugs.webkit.org/show_bug.cgi?id=47421
  28853. This patch change the rendering of the slider to only have the
  28854. subcontrols that would be defined by default on a QSlider.
  28855. * platform/qt/RenderThemeQt.cpp:
  28856. (WebCore::RenderThemeQt::paintSliderTrack):
  28857. 2010-10-08 Renata Hodovan <reni@inf.u-szeged.hu>
  28858. Reviewed by Andreas Kling.
  28859. SVGFEColorMatrixElement doesn't support dynamic invalidation, when attributes change.
  28860. https://bugs.webkit.org/show_bug.cgi?id=47342
  28861. The dynamic changes are captured by the svgAttributeChange function, and invalidate the filter primitive if necessary.
  28862. Tests: svg/dynamic-updates/SVGFEColorMatrixElement-dom-in-attr.html
  28863. svg/dynamic-updates/SVGFEColorMatrixElement-dom-type-attr.html
  28864. svg/dynamic-updates/SVGFEColorMatrixElement-dom-values-attr.html
  28865. svg/dynamic-updates/SVGFEColorMatrixElement-svgdom-in-prop.html
  28866. svg/dynamic-updates/SVGFEColorMatrixElement-svgdom-type-prop.html
  28867. svg/dynamic-updates/SVGFEColorMatrixElement-svgdom-values-prop.html
  28868. * svg/SVGFEColorMatrixElement.cpp:
  28869. (WebCore::SVGFEColorMatrixElement::svgAttributeChanged):
  28870. * svg/SVGFEColorMatrixElement.h:
  28871. 2010-10-08 Pavel Podivilov <podivilov@chromium.org>
  28872. Reviewed by Pavel Feldman.
  28873. Web Inspector: save InspectorController in instrumentation cookie
  28874. https://bugs.webkit.org/show_bug.cgi?id=47406
  28875. * bindings/v8/V8Proxy.cpp:
  28876. (WebCore::V8Proxy::evaluate):
  28877. (WebCore::V8Proxy::callFunction):
  28878. * dom/Document.cpp:
  28879. (WebCore::Document::recalcStyle):
  28880. * dom/Node.cpp:
  28881. (WebCore::Node::dispatchGenericEvent):
  28882. * html/parser/HTMLDocumentParser.cpp:
  28883. (WebCore::HTMLDocumentParser::pumpTokenizer):
  28884. * inspector/InspectorInstrumentation.cpp:
  28885. * inspector/InspectorInstrumentation.h:
  28886. * loader/ResourceLoader.cpp:
  28887. (WebCore::ResourceLoader::didReceiveResponse):
  28888. (WebCore::ResourceLoader::didReceiveData):
  28889. * page/DOMTimer.cpp:
  28890. (WebCore::DOMTimer::fired):
  28891. * page/DOMWindow.cpp:
  28892. (WebCore::DOMWindow::dispatchEvent):
  28893. * page/FrameView.cpp:
  28894. (WebCore::FrameView::layout):
  28895. (WebCore::FrameView::paintContents):
  28896. * rendering/RenderLayerBacking.cpp:
  28897. (WebCore::RenderLayerBacking::paintContents):
  28898. * xml/XMLHttpRequest.cpp:
  28899. (WebCore::XMLHttpRequest::callReadyStateChangeListener):
  28900. 2010-10-08 Adam Roben <aroben@apple.com>
  28901. Windows Release build fix for 32-bit systems
  28902. WebCore had once again grown too large for the linker's virtual
  28903. address space on 32-bit systems. I combined WebCore/rendering,
  28904. WebCore/rendering/style, and WebCore/dom into new *AllInOne.cpp files,
  28905. and added a few more files to RenderSVGAllInOne.cpp.
  28906. Fixes <http://webkit.org/b/47417> <rdar://problem/8529362>
  28907. * WebCore.vcproj/WebCore.vcproj: Added new *AllInOne.cpp files and
  28908. excluded the individual files they contain from the build.
  28909. * rendering/RenderSVGAllInOne.cpp: Added a few more files to this.
  28910. * dom/DOMAllInOne.cpp: Added.
  28911. * rendering/RenderingAllInOne.cpp: Added.
  28912. * rendering/style/StyleAllInOne.cpp: Added.
  28913. 2010-10-08 Girish Ramakrishnan <girish@forwardbias.in>
  28914. Reviewed by Andreas Kling.
  28915. [Qt] Use constBegin and constEnd when using const iterators
  28916. * platform/graphics/qt/GraphicsLayerQt.cpp:
  28917. (WebCore::GraphicsLayerQtImpl::~GraphicsLayerQtImpl):
  28918. (WebCore::GraphicsLayerQtImpl::updateTransform):
  28919. (WebCore::GraphicsLayerQtImpl::flushChanges):
  28920. 2010-10-07 Pavel Feldman <pfeldman@chromium.org>
  28921. Reviewed by Yury Semikhatsky.
  28922. Web Inspector: add resource viewer to the network panel.
  28923. https://bugs.webkit.org/show_bug.cgi?id=47346
  28924. * inspector/front-end/DataGrid.js:
  28925. (WebInspector.DataGrid):
  28926. (WebInspector.DataGrid.prototype.autoSizeColumns):
  28927. (WebInspector.DataGrid.prototype.updateWidths):
  28928. (WebInspector.DataGrid.prototype.columnWidthsMap):
  28929. (WebInspector.DataGrid.prototype.applyColumnWidthsMap):
  28930. (WebInspector.DataGrid.prototype.isColumnVisible):
  28931. (WebInspector.DataGrid.prototype.showColumn):
  28932. (WebInspector.DataGrid.prototype.hideColumn):
  28933. (WebInspector.DataGrid.prototype._positionResizers):
  28934. (WebInspector.DataGrid.prototype._resizerDragging):
  28935. * inspector/front-end/NetworkPanel.js:
  28936. (WebInspector.NetworkPanel):
  28937. (WebInspector.NetworkPanel.prototype.updateSidebarWidth):
  28938. (WebInspector.NetworkPanel.prototype.updateMainViewWidth):
  28939. (WebInspector.NetworkPanel.prototype.handleShortcut):
  28940. (WebInspector.NetworkPanel.prototype._createTable):
  28941. (WebInspector.NetworkPanel.prototype._sortItems):
  28942. (WebInspector.NetworkPanel.prototype._sortByTimeline):
  28943. (WebInspector.NetworkPanel.prototype._createSummaryBar):
  28944. (WebInspector.NetworkPanel.prototype._updateDividersIfNeeded):
  28945. (WebInspector.NetworkPanel.prototype.hide):
  28946. (WebInspector.NetworkPanel.prototype.get searchableViews):
  28947. (WebInspector.NetworkPanel.prototype.refresh):
  28948. (WebInspector.NetworkPanel.prototype.reset):
  28949. (WebInspector.NetworkPanel.prototype.refreshResource):
  28950. (WebInspector.NetworkPanel.prototype.canShowSourceLine):
  28951. (WebInspector.NetworkPanel.prototype.showSourceLine):
  28952. (WebInspector.NetworkPanel.prototype._showResource):
  28953. (WebInspector.NetworkPanel.prototype._closeVisibleResource):
  28954. (WebInspector.NetworkPanel.prototype._resourceViewForResource):
  28955. (WebInspector.NetworkPanel.prototype._resourceViewTypeMatchesResource):
  28956. (WebInspector.NetworkPanel.prototype._toggleGridMode):
  28957. (WebInspector.NetworkPanel.prototype._toggleViewingResourceMode):
  28958. (WebInspector.NetworkDataGridNode):
  28959. (WebInspector.NetworkDataGridNode.prototype.select):
  28960. (WebInspector.NetworkDataGridNode.prototype._createTimelineCell):
  28961. * inspector/front-end/networkPanel.css:
  28962. (#network-container):
  28963. (#network-views):
  28964. (.network.panel .data-grid.full-grid-mode .viewer-column):
  28965. (.network.panel .data-grid.brief-grid-mode .time-column):
  28966. (.network.panel.viewing-resource .network-timeline-grid):
  28967. (.network.panel .data-grid.viewing-resource-mode .timeline-column):
  28968. (.network.panel .network-sidebar):
  28969. (.network.panel:not(.viewing-resource) .sidebar-resizer-vertical):
  28970. (.network.panel.viewing-resource .data-grid-resizer):
  28971. (.network.panel .scope-bar):
  28972. (.network.panel .resource-view.headers-visible .resource-view-content):
  28973. (.network.panel:not(.viewing-resource) .data-grid tr.selected):
  28974. 2010-10-08 Andreas Kling <kling@webkit.org>
  28975. Reviewed by Nikolas Zimmermann.
  28976. SVGTextLayoutAttributesBuilder: "XValue" and "YValue" clash with X11 macros
  28977. https://bugs.webkit.org/show_bug.cgi?id=47180
  28978. Rename *Value to *ValueAttribute
  28979. * rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
  28980. (WebCore::SVGTextLayoutAttributesBuilder::nextLayoutValue):
  28981. (WebCore::SVGTextLayoutAttributesBuilder::assignLayoutAttributesForCharacter):
  28982. * rendering/svg/SVGTextLayoutAttributesBuilder.h:
  28983. 2010-10-08 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
  28984. Reviewed by Kenneth Rohde Christiansen.
  28985. [Qt] Don't use -whole-archive to link-in libWebKit2.a except for libQtWebKit.so
  28986. https://bugs.webkit.org/show_bug.cgi?id=47347
  28987. * WebCore.pro:
  28988. 2010-10-08 Gyuyoung Kim <gyuyoung.kim@samsung.com>
  28989. Reviewed by Kenneth Rohde Christiansen.
  28990. [EFL] Implement IntRectEfl.cpp
  28991. https://bugs.webkit.org/show_bug.cgi?id=47403
  28992. Implement IntRect for Efl Port using Eina_Rectangle.
  28993. * platform/graphics/IntRect.h:
  28994. * platform/graphics/efl/IntRectEfl.cpp:
  28995. (WebCore::IntRect::IntRect):
  28996. (WebCore::IntRect::operator Eina_Rectangle):
  28997. 2010-10-08 Andreas Kling <andreas.kling@nokia.com>
  28998. Reviewed by Nikolas Zimmermann.
  28999. SVG: Make RenderPath DRT output platform-independent
  29000. https://bugs.webkit.org/show_bug.cgi?id=46051
  29001. Move away from using the port-specific Path::debugString() to dump
  29002. RenderPath objects. This shrinks the DRT output delta between platforms
  29003. and makes it more readable as we now dump only the relevant,
  29004. element-specific properties of each object.
  29005. * rendering/SVGRenderTreeAsText.cpp:
  29006. (WebCore::operator<<):
  29007. Generate DRT output for RenderPaths in a platform-independent manner,
  29008. dumping the relevant element properties.
  29009. 2010-10-08 Kinuko Yasuda <kinuko@chromium.org>
  29010. Reviewed by David Levin.
  29011. Fix FileSystem path validation order to normalize '..' and '.' before restriction checks
  29012. https://bugs.webkit.org/show_bug.cgi?id=47309
  29013. Test: fast/filesystem/op-get-entry.html
  29014. * fileapi/DOMFileSystemBase.cpp:
  29015. (WebCore::DOMFileSystemBase::getFile): Fixed the path validation order.
  29016. (WebCore::DOMFileSystemBase::getDirectory): Fixed the path validation order.
  29017. 2010-10-08 Carlos Garcia Campos <cgarcia@igalia.com>
  29018. Reviewed by Xan Lopez.
  29019. [GTK] Port GTK+ theming code to GTK+ 3.x APIs
  29020. https://bugs.webkit.org/show_bug.cgi?id=47398
  29021. Create a new gtk3drawing file for the widget drawing primitives in
  29022. WebKit, using the GTK+ 3.x APIs. It's very similar to the GTK+ 2.x
  29023. code at the moment, but we'll evolve it incrementally from here.
  29024. * GNUmakefile.am:
  29025. * platform/gtk/RenderThemeGtk.cpp:
  29026. (WebCore::RenderThemeGtk::partsForDrawable):
  29027. (WebCore::RenderThemeGtk::paintMozillaGtkWidget):
  29028. * platform/gtk/gtk2drawing.c:
  29029. (TSOffsetStyleGCArray):
  29030. (TSOffsetStyleGCs):
  29031. (moz_gtk_button_paint):
  29032. (moz_gtk_scrollbar_thumb_paint):
  29033. (moz_gtk_entry_paint):
  29034. (moz_gtk_combo_box_paint):
  29035. (moz_gtk_get_widget_border):
  29036. * platform/gtk/gtk3drawing.c: Added.
  29037. * platform/gtk/gtkdrawing.h:
  29038. 2010-10-07 Daniel Cheng <dcheng@chromium.org>
  29039. Reviewed by Kent Tamura.
  29040. [chromium] Fix indentation in ChromiumDataObject.h
  29041. https://bugs.webkit.org/show_bug.cgi?id=47396
  29042. Just a cleanup patch to make followup diffs smaller.
  29043. * platform/chromium/ChromiumDataObject.h:
  29044. (WebCore::ChromiumDataObject::create):
  29045. (WebCore::ChromiumDataObject::copy):
  29046. (WebCore::ChromiumDataObject::urlTitle):
  29047. (WebCore::ChromiumDataObject::setUrlTitle):
  29048. (WebCore::ChromiumDataObject::htmlBaseUrl):
  29049. (WebCore::ChromiumDataObject::setHtmlBaseUrl):
  29050. (WebCore::ChromiumDataObject::containsFilenames):
  29051. (WebCore::ChromiumDataObject::filenames):
  29052. (WebCore::ChromiumDataObject::setFilenames):
  29053. (WebCore::ChromiumDataObject::fileExtension):
  29054. (WebCore::ChromiumDataObject::setFileExtension):
  29055. (WebCore::ChromiumDataObject::fileContentFilename):
  29056. (WebCore::ChromiumDataObject::setFileContentFilename):
  29057. (WebCore::ChromiumDataObject::fileContent):
  29058. (WebCore::ChromiumDataObject::setFileContent):
  29059. 2010-10-07 Kent Tamura <tkent@chromium.org>
  29060. Reviewed by Dimitri Glazkov.
  29061. Refactor HTMLInputElement: Move valueAsDate and valueAsNumber implementations
  29062. https://bugs.webkit.org/show_bug.cgi?id=47327
  29063. Move the content of HTMLInputElement::valueAsDate(), setValueAsDate(),
  29064. valueAsNumber(), and setValueAsNumber() to InputType, and move
  29065. serialize() and serializeForDateTimeTypes() too
  29066. * html/BaseDateAndTimeInputType.cpp:
  29067. (WebCore::BaseDateAndTimeInputType::valueAsDate):
  29068. (WebCore::BaseDateAndTimeInputType::setValueAsDate):
  29069. (WebCore::BaseDateAndTimeInputType::valueAsNumber):
  29070. (WebCore::BaseDateAndTimeInputType::setValueAsNumber):
  29071. (WebCore::BaseDateAndTimeInputType::serialize):
  29072. * html/BaseDateAndTimeInputType.h:
  29073. * html/DateInputType.cpp:
  29074. (WebCore::DateInputType::setMillisecondToDateComponents):
  29075. * html/DateInputType.h:
  29076. * html/DateTimeInputType.cpp:
  29077. (WebCore::DateTimeInputType::setMillisecondToDateComponents):
  29078. * html/DateTimeInputType.h:
  29079. * html/DateTimeLocalInputType.cpp:
  29080. (WebCore::DateTimeLocalInputType::valueAsDate):
  29081. (WebCore::DateTimeLocalInputType::setValueAsDate):
  29082. (WebCore::DateTimeLocalInputType::setMillisecondToDateComponents):
  29083. * html/DateTimeLocalInputType.h:
  29084. * html/HTMLInputElement.cpp:
  29085. (WebCore::HTMLInputElement::valueAsDate):
  29086. (WebCore::HTMLInputElement::setValueAsDate):
  29087. (WebCore::HTMLInputElement::valueAsNumber):
  29088. (WebCore::HTMLInputElement::setValueAsNumber):
  29089. (WebCore::HTMLInputElement::stepUpFromRenderer):
  29090. * html/HTMLInputElement.h:
  29091. * html/InputType.cpp:
  29092. (WebCore::InputType::valueAsDate):
  29093. (WebCore::InputType::setValueAsDate):
  29094. (WebCore::InputType::valueAsNumber):
  29095. (WebCore::InputType::setValueAsNumber):
  29096. (WebCore::InputType::serialize):
  29097. * html/InputType.h:
  29098. * html/MonthInputType.cpp:
  29099. (WebCore::MonthInputType::valueAsDate):
  29100. (WebCore::MonthInputType::setValueAsDate):
  29101. (WebCore::MonthInputType::setMillisecondToDateComponents):
  29102. * html/MonthInputType.h:
  29103. * html/NumberInputType.cpp:
  29104. (WebCore::NumberInputType::valueAsNumber):
  29105. (WebCore::NumberInputType::setValueAsNumber):
  29106. (WebCore::NumberInputType::serialize):
  29107. * html/NumberInputType.h:
  29108. * html/RangeInputType.cpp:
  29109. (WebCore::RangeInputType::valueAsNumber):
  29110. (WebCore::RangeInputType::setValueAsNumber):
  29111. (WebCore::RangeInputType::serialize):
  29112. * html/RangeInputType.h:
  29113. * html/TimeInputType.cpp:
  29114. (WebCore::TimeInputType::setMillisecondToDateComponents):
  29115. * html/TimeInputType.h:
  29116. * html/WeekInputType.cpp:
  29117. (WebCore::WeekInputType::setMillisecondToDateComponents):
  29118. * html/WeekInputType.h:
  29119. 2010-10-07 No'am Rosenthal <noam.rosenthal@nokia.com>
  29120. Reviewed by Kenneth Rohde Christiansen.
  29121. [Texmap] [Qt] Texture mapper initial implementation
  29122. Texture Mapper is an implementation of accelerated compositing that doesn't require a
  29123. platform specific scenegraph library like CA or QGraphicsView. The idea is that with
  29124. time this would replace GraphicsLayerQt, and could serve as an implementation for other
  29125. platforms that don't have a scenegraph library. The first stage of this is to add all the code to trunk,
  29126. and enable it in Qt with an opt-in build flag so that it can be easily tested. Once it reaches
  29127. an adequate level of stability, we can enable it by default and eventually have it replace GraphicsLayerQt.
  29128. This change includes only the common new files and the Qt backend; Still to come: the GL backend and integration layer.
  29129. * platform/graphics/qt/TextureMapperQt.cpp: Added.
  29130. * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: Added.
  29131. * platform/graphics/texmap/GraphicsLayerTextureMapper.h: Added.
  29132. * platform/graphics/texmap/TextureMapper.h: Added.
  29133. * platform/graphics/texmap/TextureMapperPlatformLayer.h: Added.
  29134. 2010-10-07 Antonio Gomes <agomes@rim.com>
  29135. Reviewed by Simon Fraser.
  29136. [Mac] [DRT] implement setSpatialNavigationEnabled
  29137. https://bugs.webkit.org/show_bug.cgi?id=47291
  29138. Added Settings::setSpatialNavigationEnabled symbols to WebKit.exp.in
  29139. so it can be used from WebKit/mac.
  29140. * WebCore.exp.in:
  29141. 2010-10-07 Eric Uhrhane <ericu@chromium.org>
  29142. Reviewed by Jian Li
  29143. [V8] Add FileWriter to active DOM map
  29144. https://bugs.webkit.org/show_bug.cgi?id=47380
  29145. It's an ActiveDOMObject; it needs to be in the map.
  29146. * bindings/scripts/CodeGeneratorV8.pm:
  29147. 2010-10-07 Nico Weber <thakis@chromium.org>
  29148. Reviewed by James Robinson.
  29149. [chromium] Make sure to update the current graphics context when calling out to AppKit.
  29150. https://bugs.webkit.org/show_bug.cgi?id=47387
  29151. This ports r57741 to ThemeChromiumMac. It also reverts r66975, which is
  29152. now no longer necessary.
  29153. Should be covered by existing tests. The checkbox at
  29154. http://webkit.org/blog-files/3d-transforms/morphing-cubes.html should
  29155. now show up correctly.
  29156. * platform/chromium/ThemeChromiumMac.mm:
  29157. (WebCore::paintCheckbox):
  29158. (WebCore::paintRadio):
  29159. Create current context.
  29160. * platform/graphics/chromium/ContentLayerChromium.cpp:
  29161. (WebCore::ContentLayerChromium::updateContents):
  29162. Remove LocalCurrentContext, it's now no longer necessary.
  29163. 2010-10-07 Cris Neckar <cdn@chromium.org>
  29164. Reviewed by Adam Barth.
  29165. Postpone clearing the imageLoader when rendering certain fallback content for objects until after the attach().
  29166. https://bugs.webkit.org/show_bug.cgi?id=46921
  29167. Test: fast/html/object-image-nested-fallback.html
  29168. * html/HTMLObjectElement.cpp:
  29169. (WebCore::HTMLObjectElement::renderFallbackContent):
  29170. 2010-10-07 Rafael Antognolli <antognolli@profusion.mobi>
  29171. Reviewed by Kenneth Rohde Christiansen.
  29172. [EFL] Fix shared timers on EFL port - make them thread safe.
  29173. https://bugs.webkit.org/show_bug.cgi?id=47383
  29174. Using ecore_timer_add to create a timer from a thread that is
  29175. not the main thread isn't safe. Now we add a pipe that is used
  29176. to request a timer to be added in the main thread.
  29177. In order to reduce some delay on timers that are added with a
  29178. very small interval, the timer callback is called immediately
  29179. if the interval is smaller than the mainloop frame time.
  29180. No new features, so no tests added.
  29181. * platform/efl/SharedTimerEfl.cpp:
  29182. (WebCore::setSharedTimerFiredFunction):
  29183. (WebCore::timerEvent):
  29184. (WebCore::processTimers):
  29185. (WebCore::pipeHandlerCb):
  29186. (WebCore::stopSharedTimer):
  29187. (WebCore::addNewTimer):
  29188. (WebCore::setSharedTimerFireTime):
  29189. 2010-10-07 James Kozianski <koz@chromium.org>
  29190. Reviewed by Adam Barth.
  29191. getPropertyValue('border') is incorrect after border-top-width is set
  29192. https://bugs.webkit.org/show_bug.cgi?id=45949
  29193. Test: fast/dom/css-shorthand-common-value.html
  29194. CSSMutableStyleDeclaration::getCommonValue() was ignoring values from
  29195. properties that were implicitly set, which led to erroneous results
  29196. from getPropertyValue().
  29197. * css/CSSMutableStyleDeclaration.cpp:
  29198. (WebCore::CSSMutableStyleDeclaration::getCommonValue):
  29199. 2010-10-07 Ryosuke Niwa <rniwa@webkit.org>
  29200. Reviewed by Tony Chang.
  29201. REGRESSION: Indenting pre duplicates content
  29202. https://bugs.webkit.org/show_bug.cgi?id=47233
  29203. The bug was caused by our not splitting text nodes properly.
  29204. In new approach, we split text nodes in each iteration. Added rangeForParagraphSplitingTextNodesIfNeeded
  29205. to split text nodes at the start and at the end of paragraph, which also adjusts start and end positions
  29206. for moveParagraphWithClones. Added endOfNextParagrahSplittingTextNodesIfNeeded to adjust endOfNextParagraph,
  29207. start, and end to work-around moveParagraphWithClones's removing a line feed.
  29208. Tests: editing/execCommand/indent-pre-list.html
  29209. editing/execCommand/indent-pre-paragraphs.html
  29210. * editing/ApplyBlockElementCommand.cpp:
  29211. (WebCore::ApplyBlockElementCommand::formatSelection): See above.
  29212. (WebCore::isNewLineAtPosition):
  29213. (WebCore::renderStyleOfEnclosingTextNode): Added.
  29214. (WebCore::ApplyBlockElementCommand::rangeForParagraphSplittingTextNodesIfNeeded): Added.
  29215. (WebCore::ApplyBlockElementCommand::endOfNextParagrahSplittingTextNodesIfNeeded): Added.
  29216. * editing/ApplyBlockElementCommand.h:
  29217. * editing/FormatBlockCommand.cpp:
  29218. (WebCore::FormatBlockCommand::formatRange): Takes two Positions instead of one VisiblePosition.
  29219. * editing/FormatBlockCommand.h:
  29220. * editing/IndentOutdentCommand.cpp:
  29221. (WebCore::IndentOutdentCommand::tryIndentingAsListItem): Ditto.
  29222. (WebCore::IndentOutdentCommand::indentIntoBlockquote): Ditto.
  29223. (WebCore::IndentOutdentCommand::formatRange): Ditto.
  29224. * editing/IndentOutdentCommand.h:
  29225. 2010-10-07 Jian Li <jianli@chromium.org>
  29226. Reviewed by Adam Barth.
  29227. Support generating a FormData object based on the data in an existing <form>.
  29228. https://bugs.webkit.org/show_bug.cgi?id=45929
  29229. Test: http/tests/local/formdata/send-form-data-constructed-from-form.html
  29230. * bindings/js/JSDOMFormDataCustom.cpp:
  29231. (WebCore::toHTMLFormElement):
  29232. (WebCore::JSDOMFormDataConstructor::constructJSDOMFormData):
  29233. * bindings/v8/custom/V8DOMFormDataCustom.cpp:
  29234. (WebCore::V8DOMFormData::constructorCallback):
  29235. * html/DOMFormData.cpp:
  29236. (WebCore::DOMFormData::DOMFormData):
  29237. * html/DOMFormData.h:
  29238. (WebCore::DOMFormData::create):
  29239. * html/DOMFormData.idl:
  29240. 2010-10-07 Abhishek Arya <inferno@chromium.org>
  29241. Reviewed by Dave Hyatt.
  29242. Set the m_selectedChildren flag on the root inline box if one of the leaf
  29243. inline box from the bidi runs walk has a selection state. Remove the flag
  29244. setting logic from addToLine, since line boxes created in createLinesBoxes
  29245. should not be propagating selection state to root inline box.
  29246. https://bugs.webkit.org/show_bug.cgi?id=47201
  29247. Test: editing/selection/root-inlinebox-selected-children-crash.html
  29248. * rendering/InlineFlowBox.cpp:
  29249. (WebCore::InlineFlowBox::addToLine):
  29250. * rendering/RenderBlockLineLayout.cpp:
  29251. (WebCore::RenderBlock::constructLine):
  29252. 2010-10-07 Benjamin Otte <otte@gnome.org>
  29253. Reviewed by Martin Robinson.
  29254. [GTK] Code cleanup in PluginViewGtk.cpp for transparent plugins
  29255. https://bugs.webkit.org/show_bug.cgi?id=47361
  29256. Reduce some code in PluginViewGtk.cpp by doing things with Cairo instead
  29257. of directly with X11. This should work fine with GDK double-buffering, but
  29258. if we ever disable it, we'll need to verify that this is still functioning
  29259. properly.
  29260. * plugins/gtk/PluginViewGtk.cpp:
  29261. (WebCore::PluginView::paint): Do a bit of code cleanup.
  29262. 2010-10-07 Anders Carlsson <andersca@apple.com>
  29263. Reviewed by Sam Weinig.
  29264. Add a WKPageFindClient, hook up WKPageCountStringMatches
  29265. https://bugs.webkit.org/show_bug.cgi?id=47373
  29266. Export find related symbols needed by WebKit2.
  29267. * WebCore.exp.in:
  29268. 2010-10-07 David Hyatt <hyatt@apple.com>
  29269. Reviewed by Sam Weinig.
  29270. https://bugs.webkit.org/show_bug.cgi?id=47370
  29271. Make line box placement in the inline direction writing-mode-aware. Lines now set their y-position instead of x-position
  29272. when vertical.
  29273. Refactored shadow overflow to give text-shadow the same helpers in RenderStyle that box-shadow has so that the shadow-walking loop in
  29274. placeBoxesInInlineDirection can be replaced with the helper.
  29275. Overflow had to be patched to be writing-mode-aware so that the correct physical directions would be set for vertical line
  29276. boxes.
  29277. Vertical lines are still not testable until they can be placed in the block direction. Then the render tree dumps
  29278. become meaningful (even if the pixel results look horrible).
  29279. * rendering/InlineBox.h:
  29280. (WebCore::InlineBox::logicalRight):
  29281. * rendering/InlineFlowBox.cpp:
  29282. (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
  29283. * rendering/InlineFlowBox.h:
  29284. (WebCore::InlineFlowBox::logicalLeftLayoutOverflow):
  29285. (WebCore::InlineFlowBox::logicalRightLayoutOverflow):
  29286. (WebCore::InlineFlowBox::logicalLeftVisualOverflow):
  29287. (WebCore::InlineFlowBox::logicalRightVisualOverflow):
  29288. (WebCore::InlineFlowBox::setInlineDirectionOverflowPositions):
  29289. * rendering/RenderBlockLineLayout.cpp:
  29290. (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
  29291. * rendering/style/RenderStyle.cpp:
  29292. (WebCore::RenderStyle::getShadowExtent):
  29293. (WebCore::RenderStyle::getShadowHorizontalExtent):
  29294. (WebCore::RenderStyle::getShadowVerticalExtent):
  29295. * rendering/style/RenderStyle.h:
  29296. (WebCore::InheritedFlags::getTextShadowExtent):
  29297. (WebCore::InheritedFlags::getTextShadowHorizontalExtent):
  29298. (WebCore::InheritedFlags::getTextShadowVerticalExtent):
  29299. (WebCore::InheritedFlags::getTextShadowInlineDirectionExtent):
  29300. (WebCore::InheritedFlags::getBoxShadowExtent):
  29301. (WebCore::InheritedFlags::getBoxShadowHorizontalExtent):
  29302. (WebCore::InheritedFlags::getBoxShadowVerticalExtent):
  29303. (WebCore::InheritedFlags::getBoxShadowInlineDirectionExtent):
  29304. (WebCore::InheritedFlags::getShadowInlineDirectionExtent):
  29305. 2010-10-07 Dan Bernstein <mitz@apple.com>
  29306. Reviewed by Simon Fraser.
  29307. <rdar://problem/8142645> REGRESSION (r47440): Printing Mail messages with large fonts does not fill page
  29308. https://bugs.webkit.org/show_bug.cgi?id=47374
  29309. In the legacy (paint-time pagination) printing model, when there are overlapping lines,
  29310. adjustPageHeightDeprecated() was not idempotent, since the truncation point imposed by line n,
  29311. namely the top of line n, was above the bottom of line n-1, so in the next round, line n-1
  29312. moved the truncation point up again.
  29313. * rendering/RenderLineBoxList.cpp:
  29314. (WebCore::RenderLineBoxList::paint): Consider the top of the next line when deciding if the
  29315. current line extends below the truncation point.
  29316. 2010-10-07 Simon Fraser <simon.fraser@apple.com>
  29317. Reviewed by Beth Dakin.
  29318. Use isIdentityOrTranslationOrFlipped() in scrollbar code
  29319. https://bugs.webkit.org/show_bug.cgi?id=47378
  29320. Replace old code that looked at values in the CGAffineTransform
  29321. with nicely named method that does the same test.
  29322. * platform/mac/ScrollbarThemeMac.mm:
  29323. (WebCore::ScrollbarThemeMac::paint):
  29324. 2010-10-07 Simon Fraser <simon.fraser@apple.com>
  29325. Reviewed by Beth Dakin.
  29326. Edge fringe artifact with transformed, masked elements (including reflections)
  29327. https://bugs.webkit.org/show_bug.cgi?id=19179
  29328. When drawing the mask images, use a transparency layer if the CTM
  29329. has a rotation, scale or skew in it to avoid antialiasing issues at
  29330. the edges.
  29331. Test: fast/css/transformed-mask.html
  29332. * rendering/RenderBox.cpp:
  29333. (WebCore::RenderBox::paintMask): Don't bother painting the mask if
  29334. painting is disabled, which also avoids an assertion in getCTM().
  29335. (WebCore::RenderBox::paintMaskImages):
  29336. 2010-10-07 Kwang Yul Seo <skyul@company100.net>
  29337. Reviewed by Kent Tamura.
  29338. [BREWMP] Map non-alphabet key code to Unicode value
  29339. https://bugs.webkit.org/show_bug.cgi?id=46002
  29340. Non-alphabet key codes are not equal to the unicode values. Add conversion.
  29341. * platform/brew/PlatformKeyboardEventBrew.cpp:
  29342. (WebCore::singleCharacterString):
  29343. 2010-10-05 Martin Robinson <mrobinson@igalia.com>
  29344. Reviewed by Chris Fleizach.
  29345. [GTK] The FreeType backend does not respect the FC_EMBOLDEN property
  29346. https://bugs.webkit.org/show_bug.cgi?id=46216
  29347. Look for the FC_EMBOLDEN property of the FcPattern when constructing
  29348. FontPlatformData and use it to enable synthetic bold fonts when necessary.
  29349. Test: platform/gtk/fonts/fontconfig-synthetic-bold.html
  29350. * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
  29351. (WebCore::FontPlatformData::FontPlatformData): Properly handle the FC_EMBOLDEN property.
  29352. 2010-10-07 James Simonsen <simonjam@chromium.org>
  29353. Reviewed by Pavel Feldman.
  29354. [Web Timing] Use platform definition of responseEnd
  29355. https://bugs.webkit.org/show_bug.cgi?id=46306
  29356. No new tests. Used existing webtiming test.
  29357. * loader/MainResourceLoader.cpp:
  29358. (WebCore::MainResourceLoader::didFinishLoading):
  29359. 2010-10-05 Martin Robinson <mrobinson@igalia.com>
  29360. Reviewed by Chris Fleizach.
  29361. [Gtk] CSS font-style: italic behavior
  29362. https://bugs.webkit.org/show_bug.cgi?id=33299
  29363. Properly interpret the FC_MATRIX property from a FontConfig pattern.
  29364. FontConfig will use this property when returning fonts which have a
  29365. synthetic oblique variant configured in the fonts.conf configuration
  29366. file.
  29367. Test: platform/gtk/fonts/fontconfig-synthetic-oblique.html
  29368. * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
  29369. (WebCore::FontPlatformData::FontPlatformData): Added a constructor that
  29370. takes an existing FontPlatformData and a font size.
  29371. (WebCore::FontPlatformData::initializeWithFontFace): Added this helper
  29372. intialization method that properly handles the FC_MATRIX property from
  29373. the FcPattern.
  29374. * platform/graphics/cairo/FontPlatformDataFreeType.h: Added a declaration
  29375. to the new constructor and the initializeWithFontFace.
  29376. * platform/graphics/cairo/SimpleFontDataCairo.cpp:
  29377. (WebCore::SimpleFontData::smallCapsFontData): Use the new FontPlatformData
  29378. constructor.
  29379. 2010-10-07 David Hyatt <hyatt@apple.com>
  29380. Reviewed by Dan Bernstein.
  29381. https://bugs.webkit.org/show_bug.cgi?id=47357
  29382. Make findNextLineBreak and some of the helper functions it also calls writing-mode-aware.
  29383. * rendering/InlineFlowBox.cpp:
  29384. (WebCore::InlineFlowBox::computeLogicalBoxHeights):
  29385. (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
  29386. * rendering/RenderBlock.cpp:
  29387. (WebCore::RenderBlock::positionNewFloatOnLine):
  29388. * rendering/RenderBlockLineLayout.cpp:
  29389. (WebCore::getBorderPaddingMargin):
  29390. (WebCore::inlineLogicalWidth):
  29391. (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
  29392. (WebCore::inlineFlowRequiresLineBox):
  29393. (WebCore::RenderBlock::skipLeadingWhitespace):
  29394. (WebCore::RenderBlock::fitBelowFloats):
  29395. (WebCore::RenderBlock::findNextLineBreak):
  29396. * rendering/RenderBoxModelObject.h:
  29397. (WebCore::RenderBoxModelObject::hasInlineDirectionBordersPaddingOrMargin):
  29398. (WebCore::RenderBoxModelObject::hasInlineDirectionBordersOrPadding):
  29399. 2010-10-07 Luiz Agostini <luiz.agostini@openbossa.org>
  29400. Reviewed by Kenneth Rohde Christiansen.
  29401. Fixing viewport meta tag user-scalable handling
  29402. https://bugs.webkit.org/show_bug.cgi?id=47330
  29403. user-scalable attribute was not considered in viewport meta tag handling.
  29404. * dom/ViewportArguments.cpp:
  29405. (WebCore::findConfigurationForViewportData):
  29406. * dom/ViewportArguments.h:
  29407. 2010-10-05 Diego Gonzalez <diegohcg@webkit.org>
  29408. Reviewed by Andreas Kling.
  29409. [Qt] Hook up accelerometer data via Qt DeviceMotion
  29410. https://bugs.webkit.org/show_bug.cgi?id=47105
  29411. Get accelerometer necessary data via Qt mobility library using a
  29412. provider class. Enable, also the RotationRate using the current device
  29413. orientation provider.
  29414. * WebCore.pro:
  29415. 2010-10-07 Luiz Agostini <luiz.agostini@openbossa.org>
  29416. Reviewed by Kenneth Rohde Christiansen.
  29417. Some viewport meta tag api refactoring
  29418. https://bugs.webkit.org/show_bug.cgi?id=47334
  29419. WebCore::findConfigurationForViewportData renamed to computeViewportAttributes.
  29420. WebCore::ViewportAttributes::layoutViewport renamed to layoutSize.
  29421. * dom/ViewportArguments.cpp:
  29422. (WebCore::computeViewportAttributes):
  29423. * dom/ViewportArguments.h:
  29424. 2010-10-07 Carlos Garcia Campos <cgarcia@igalia.com>
  29425. Reviewed by Xan Lopez.
  29426. [GTK] Don't use GtkObject
  29427. https://bugs.webkit.org/show_bug.cgi?id=47090
  29428. GtkObject has been removed in gtk3.
  29429. * plugins/gtk/gtk2xtbin.c:
  29430. (gtk_xtbin_class_init):
  29431. (gtk_xtbin_dispose):
  29432. 2010-10-07 Pavel Podivilov <podivilov@chromium.org>
  29433. Reviewed by Pavel Feldman.
  29434. Web Inspector: highlight XHR breakpoint when hit.
  29435. https://bugs.webkit.org/show_bug.cgi?id=47253
  29436. * inspector/InspectorController.cpp:
  29437. (WebCore::InspectorController::didCommitLoad):
  29438. (WebCore::InspectorController::setNativeBreakpoint):
  29439. (WebCore::InspectorController::removeNativeBreakpoint):
  29440. (WebCore::InspectorController::findEventListenerBreakpoint):
  29441. (WebCore::InspectorController::findXHRBreakpoint):
  29442. * inspector/InspectorController.h:
  29443. * inspector/InspectorInstrumentation.cpp:
  29444. (WebCore::InspectorInstrumentation::instrumentWillDispatchEventImpl):
  29445. (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequestImpl):
  29446. * inspector/front-end/BreakpointManager.js:
  29447. (WebInspector.BreakpointManager.prototype.createEventListenerBreakpoint):
  29448. (WebInspector.BreakpointManager.prototype.createXHRBreakpoint):
  29449. (WebInspector.BreakpointManager.prototype._xhrBreakpointRemoved):
  29450. (WebInspector.BreakpointManager.prototype._removeNativeBreakpoint):
  29451. (WebInspector.BreakpointManager.prototype._setNativeBreakpointEnabled):
  29452. (WebInspector.BreakpointManager.prototype._setNativeBreakpointOnBackend.didSetNativeBreakpoint):
  29453. (WebInspector.BreakpointManager.prototype._setNativeBreakpointOnBackend):
  29454. (WebInspector.BreakpointManager.prototype._removeNativeBreakpointFromBackend):
  29455. (WebInspector.BreakpointManager.prototype.debuggerPaused):
  29456. (WebInspector.BreakpointManager.prototype.debuggerResumed):
  29457. (WebInspector.NativeBreakpoint):
  29458. (WebInspector.NativeBreakpoint.prototype.get enabled):
  29459. (WebInspector.NativeBreakpoint.prototype.set enabled):
  29460. (WebInspector.NativeBreakpoint.prototype.remove):
  29461. * inspector/front-end/BreakpointsSidebarPane.js:
  29462. (WebInspector.BreakpointItem):
  29463. (WebInspector.BreakpointItem.prototype._breakpointClicked):
  29464. (WebInspector.BreakpointItem.prototype._hitStateChanged):
  29465. * inspector/front-end/CallStackSidebarPane.js:
  29466. (WebInspector.CallStackSidebarPane.prototype.updateStatus):
  29467. * inspector/front-end/inspector.css:
  29468. (.breakpoint-list .breakpoint-hit):
  29469. * inspector/front-end/inspector.js:
  29470. (WebInspector.pausedScript):
  29471. (WebInspector.resumedScript):
  29472. 2010-10-07 Carlos Garcia Campos <cgarcia@igalia.com>
  29473. Reviewed by Xan Lopez.
  29474. [GTK] Fix the build for GTK+ 3
  29475. https://bugs.webkit.org/show_bug.cgi?id=47249
  29476. Use GdkVisual instead of GdkColormap. GdkColormap has been removed
  29477. in gtk3.
  29478. * plugins/gtk/PluginViewGtk.cpp:
  29479. (WebCore::PluginView::platformStart):
  29480. * plugins/gtk/gtk2xtbin.c:
  29481. (gtk_xtbin_new):
  29482. 2010-10-07 Carlos Garcia Campos <cgarcia@igalia.com>
  29483. Reviewed by Xan Lopez.
  29484. [GTK] Fix the build for GTK+ 3
  29485. https://bugs.webkit.org/show_bug.cgi?id=47249
  29486. Do not use GdkDrawable deprecated API. Some methods of GdkDrawable
  29487. are deprecated in gtk2 and have been removed in gtk3. Equivalent
  29488. API has been added to GdkWindow.
  29489. * platform/gtk/GtkVersioning.c:
  29490. (getDefaultGDKPointerDevice):
  29491. * platform/gtk/GtkVersioning.h:
  29492. * platform/gtk/PlatformScreenGtk.cpp:
  29493. (WebCore::getVisual):
  29494. (WebCore::screenAvailableRect):
  29495. 2010-10-06 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
  29496. Reviewed by Andreas Kling.
  29497. [Qt] Disconnect signals before destroying MediaPlayerPrivateQt
  29498. https://bugs.webkit.org/show_bug.cgi?id=47073
  29499. * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
  29500. 2010-10-07 Alexander Pavlov <apavlov@chromium.org>
  29501. Unreviewed, release build fix.
  29502. * inspector/InspectorStyleSheet.cpp:
  29503. (WebCore::InspectorStyleSheetForInlineStyle::setStyleText):
  29504. * inspector/InspectorStyleSheet.h:
  29505. (WebCore::InspectorStyleSheetForInlineStyle::styleForId):
  29506. (WebCore::InspectorStyleSheetForInlineStyle::ruleSourceDataFor):
  29507. 2010-10-07 Pavel Podivilov <podivilov@chromium.org>
  29508. Unreviewed, build fix.
  29509. Build fix for r69283.
  29510. * dom/Document.cpp:
  29511. (WebCore::Document::inspectorController):
  29512. * dom/Document.h:
  29513. 2010-10-07 Carlos Garcia Campos <cgarcia@igalia.com>
  29514. Reviewed by Xan Lopez.
  29515. [GTK] Fix the build for GTK+ 3
  29516. https://bugs.webkit.org/show_bug.cgi?id=47249
  29517. Don't use gtk_size_request_get_size(). It has been removed,
  29518. gtk_widget_get_preferred_size() should be used instead
  29519. * platform/gtk/PopupMenuGtk.cpp:
  29520. (WebCore::PopupMenuGtk::show):
  29521. 2010-10-06 Alexander Pavlov <apavlov@chromium.org>
  29522. Reviewed by Pavel Feldman.
  29523. Web Inspector: Implement handling of CSS operations in InspectorCSSAgent.
  29524. Property toggling not implemented yet. The code is not going live.
  29525. https://bugs.webkit.org/show_bug.cgi?id=45825
  29526. * CMakeLists.txt:
  29527. * GNUmakefile.am:
  29528. * WebCore.gypi:
  29529. * WebCore.pro:
  29530. * WebCore.vcproj/WebCore.vcproj:
  29531. * WebCore.xcodeproj/project.pbxproj:
  29532. * inspector/InspectorCSSAgent.cpp: Added.
  29533. (WebCore::InspectorCSSAgent::buildObjectForStyle):
  29534. (WebCore::InspectorCSSAgent::parentStyleSheet):
  29535. (WebCore::InspectorCSSAgent::asCSSStyleRule):
  29536. (WebCore::InspectorCSSAgent::InspectorCSSAgent):
  29537. (WebCore::InspectorCSSAgent::~InspectorCSSAgent):
  29538. (WebCore::InspectorCSSAgent::reset):
  29539. (WebCore::InspectorCSSAgent::getMatchedRulesForNode2):
  29540. (WebCore::InspectorCSSAgent::getMatchedPseudoRulesForNode2):
  29541. (WebCore::InspectorCSSAgent::getAttributeStylesForNode2):
  29542. (WebCore::InspectorCSSAgent::getInlineStyleForNode2):
  29543. (WebCore::InspectorCSSAgent::getComputedStyleForNode2):
  29544. (WebCore::InspectorCSSAgent::getInheritedStylesForNode2):
  29545. (WebCore::InspectorCSSAgent::getAllStyles2):
  29546. (WebCore::InspectorCSSAgent::getStyleSheet2):
  29547. (WebCore::InspectorCSSAgent::setStyleSheetText2):
  29548. (WebCore::InspectorCSSAgent::setStyleText2):
  29549. (WebCore::InspectorCSSAgent::toggleProperty2):
  29550. (WebCore::InspectorCSSAgent::setRuleSelector2):
  29551. (WebCore::InspectorCSSAgent::addRule2):
  29552. (WebCore::InspectorCSSAgent::getSupportedCSSProperties):
  29553. (WebCore::InspectorCSSAgent::inlineStyleElement):
  29554. (WebCore::InspectorCSSAgent::populateObjectWithStyleProperties):
  29555. (WebCore::InspectorCSSAgent::shorthandValue):
  29556. (WebCore::InspectorCSSAgent::shorthandPriority):
  29557. (WebCore::InspectorCSSAgent::longhandProperties):
  29558. (WebCore::InspectorCSSAgent::asInspectorStyleSheet):
  29559. (WebCore::InspectorCSSAgent::elementForId):
  29560. (WebCore::InspectorCSSAgent::bindStyleSheet):
  29561. (WebCore::InspectorCSSAgent::viaInspectorStyleSheet):
  29562. (WebCore::InspectorCSSAgent::styleSheetForId):
  29563. (WebCore::InspectorCSSAgent::detectOrigin):
  29564. (WebCore::InspectorCSSAgent::buildArrayForRuleList):
  29565. (WebCore::InspectorCSSAgent::buildObjectForAttributeStyles):
  29566. (WebCore::InspectorCSSAgent::didRemoveDocument):
  29567. (WebCore::InspectorCSSAgent::didRemoveDOMNode):
  29568. * inspector/InspectorCSSAgent.h: Added.
  29569. (WebCore::InspectorCSSAgent::create):
  29570. * inspector/InspectorDOMAgent.cpp:
  29571. (WebCore::InspectorDOMAgent::InspectorDOMAgent):
  29572. (WebCore::InspectorDOMAgent::setDOMListener):
  29573. (WebCore::InspectorDOMAgent::unbind):
  29574. (WebCore::InspectorDOMAgent::didRemoveDOMNode):
  29575. (WebCore::InspectorDOMAgent::getSupportedCSSProperties):
  29576. * inspector/InspectorDOMAgent.h:
  29577. (WebCore::InspectorDOMAgent::DOMListener::~DOMListener):
  29578. (WebCore::InspectorDOMAgent::documents):
  29579. * inspector/InspectorStyleSheet.cpp: Added.
  29580. (ParsedStyleSheet::cssStyleSheet):
  29581. (ParsedStyleSheet::text):
  29582. (ParsedStyleSheet::hasText):
  29583. (ParsedStyleSheet::sourceData):
  29584. (ParsedStyleSheet::hasSourceData):
  29585. (ParsedStyleSheet::ParsedStyleSheet):
  29586. (ParsedStyleSheet::setText):
  29587. (ParsedStyleSheet::setSourceData):
  29588. (ParsedStyleSheet::ruleSourceDataAt):
  29589. (WebCore::InspectorStyleSheet::InspectorStyleSheet):
  29590. (WebCore::InspectorStyleSheet::~InspectorStyleSheet):
  29591. (WebCore::InspectorStyleSheet::setText):
  29592. (WebCore::InspectorStyleSheet::setRuleSelector):
  29593. (WebCore::InspectorStyleSheet::addRule):
  29594. (WebCore::InspectorStyleSheet::ruleForId):
  29595. (WebCore::InspectorStyleSheet::buildObjectForStyleSheet):
  29596. (WebCore::InspectorStyleSheet::buildObjectForRule):
  29597. (WebCore::InspectorStyleSheet::buildObjectForStyle):
  29598. (WebCore::InspectorStyleSheet::styleForId):
  29599. (WebCore::InspectorStyleSheet::setStyleText):
  29600. (WebCore::InspectorStyleSheet::ownerDocument):
  29601. (WebCore::InspectorStyleSheet::ruleSourceDataFor):
  29602. (WebCore::InspectorStyleSheet::ruleIndexByStyle):
  29603. (WebCore::InspectorStyleSheet::ensureParsedDataReady):
  29604. (WebCore::InspectorStyleSheet::text):
  29605. (WebCore::InspectorStyleSheet::ensureText):
  29606. (WebCore::InspectorStyleSheet::ensureSourceData):
  29607. (WebCore::InspectorStyleSheet::innerSetStyleSheetText):
  29608. (WebCore::InspectorStyleSheet::innerSetStyleText):
  29609. (WebCore::InspectorStyleSheet::styleSheetTextWithChangedStyle):
  29610. (WebCore::InspectorStyleSheet::findPageRuleWithStyle):
  29611. (WebCore::InspectorStyleSheet::fullRuleId):
  29612. (WebCore::InspectorStyleSheet::revalidateStyle):
  29613. (WebCore::InspectorStyleSheet::styleSheetText):
  29614. (WebCore::InspectorStyleSheet::resourceStyleSheetText):
  29615. (WebCore::InspectorStyleSheet::inlineStyleSheetText):
  29616. (WebCore::InspectorStyleSheet::buildArrayForRuleList):
  29617. (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
  29618. (WebCore::InspectorStyleSheetForInlineStyle::setStyleText):
  29619. (WebCore::InspectorStyleSheetForInlineStyle::ownerDocument):
  29620. (WebCore::InspectorStyleSheetForInlineStyle::ensureParsedDataReady):
  29621. (WebCore::InspectorStyleSheetForInlineStyle::inlineStyle):
  29622. (WebCore::InspectorStyleSheetForInlineStyle::getStyleAttributeRanges):
  29623. * inspector/InspectorStyleSheet.h: Added.
  29624. (WebCore::InspectorStyleSheet::create):
  29625. (WebCore::InspectorStyleSheet::id):
  29626. (WebCore::InspectorStyleSheet::pageStyleSheet):
  29627. (WebCore::InspectorStyleSheet::canBind):
  29628. (WebCore::InspectorStyleSheet::fullRuleOrStyleId):
  29629. (WebCore::InspectorStyleSheet::ruleOrStyleId):
  29630. (WebCore::InspectorStyleSheet::fullStyleId):
  29631. (WebCore::InspectorStyleSheetForInlineStyle::create):
  29632. (WebCore::InspectorStyleSheetForInlineStyle::styleForId):
  29633. (WebCore::InspectorStyleSheetForInlineStyle::ruleSourceDataFor):
  29634. (WebCore::InspectorStyleSheetForInlineStyle::ruleIndexByStyle):
  29635. * inspector/InspectorUtilities.cpp: Added.
  29636. (WebCore::InspectorUtilities::resourceContentForURL):
  29637. * inspector/InspectorUtilities.h: Added.
  29638. 2010-10-05 Pavel Podivilov <podivilov@chromium.org>
  29639. Reviewed by Pavel Feldman.
  29640. Web Inspector: extract Inspector Instrumentation API as a class
  29641. https://bugs.webkit.org/show_bug.cgi?id=47173
  29642. * bindings/js/JSXMLHttpRequestCustom.cpp:
  29643. (WebCore::JSXMLHttpRequest::send):
  29644. * bindings/js/ScriptController.cpp:
  29645. (WebCore::ScriptController::evaluateInWorld):
  29646. * bindings/v8/V8DOMWindowShell.cpp:
  29647. * bindings/v8/V8Proxy.cpp:
  29648. (WebCore::V8Proxy::evaluate):
  29649. (WebCore::V8Proxy::callFunction):
  29650. * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
  29651. (WebCore::V8XMLHttpRequest::sendCallback):
  29652. * dom/Document.cpp:
  29653. (WebCore::Document::recalcStyle):
  29654. * dom/Document.h:
  29655. * dom/Node.cpp:
  29656. (WebCore::Node::dispatchGenericEvent):
  29657. * html/parser/HTMLDocumentParser.cpp:
  29658. (WebCore::HTMLDocumentParser::pumpTokenizer):
  29659. * html/parser/HTMLDocumentParser.h:
  29660. * inspector/InspectorInstrumentation.cpp:
  29661. (WebCore::InspectorInstrumentation::hasFrontend):
  29662. (WebCore::InspectorInstrumentation::retrieveTimelineAgent):
  29663. * inspector/InspectorInstrumentation.h:
  29664. (WebCore::InspectorInstrumentation::hasFrontends):
  29665. (WebCore::InspectorInstrumentation::inspectorControllerForContext):
  29666. (WebCore::InspectorInstrumentation::inspectorControllerForDocument):
  29667. (WebCore::InspectorInstrumentation::inspectorControllerForFrame):
  29668. (WebCore::InspectorInstrumentation::inspectorControllerForPage):
  29669. * inspector/InspectorTimelineAgent.cpp:
  29670. (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
  29671. (WebCore::InspectorTimelineAgent::~InspectorTimelineAgent):
  29672. * inspector/InspectorTimelineAgent.h:
  29673. * loader/ResourceLoader.cpp:
  29674. (WebCore::ResourceLoader::didReceiveResponse):
  29675. (WebCore::ResourceLoader::didReceiveData):
  29676. * loader/loader.cpp:
  29677. (WebCore::Loader::load):
  29678. * page/DOMTimer.cpp:
  29679. (WebCore::DOMTimer::install):
  29680. (WebCore::DOMTimer::removeById):
  29681. (WebCore::DOMTimer::fired):
  29682. * page/DOMTimer.h:
  29683. * page/DOMWindow.cpp:
  29684. (WebCore::DOMWindow::dispatchEvent):
  29685. * page/DOMWindow.h:
  29686. * page/FrameView.cpp:
  29687. (WebCore::FrameView::layout):
  29688. (WebCore::FrameView::paintContents):
  29689. * page/FrameView.h:
  29690. * page/Page.cpp:
  29691. * page/Page.h:
  29692. * rendering/RenderLayerBacking.cpp:
  29693. (WebCore::RenderLayerBacking::paintContents):
  29694. * xml/XMLHttpRequest.cpp:
  29695. (WebCore::XMLHttpRequest::callReadyStateChangeListener):
  29696. 2010-10-07 Zraly Mike <mike.zraly@nokia.com>
  29697. Reviewed by Andreas Kling.
  29698. Windowless flash plugin is not rendered in Symbian
  29699. https://bugs.webkit.org/show_bug.cgi?id=47172
  29700. * plugins/symbian/PluginViewSymbian.cpp:
  29701. (WebCore::PluginView::platformStart):
  29702. Add call to updatePluginWidget() following changes to
  29703. platform widget. This is needed to set PluginView's
  29704. m_windowRect and m_clipRect members properly after
  29705. the proxy widget and its container get created.
  29706. 2010-10-07 Andreas Kling <kling@webkit.org>
  29707. Reviewed by Nikolas Zimmermann.
  29708. Rename (and move) RenderPath to svg/RenderSVGPath
  29709. https://bugs.webkit.org/show_bug.cgi?id=47053
  29710. Also renamed RenderObject::isRenderPath() to isSVGPath()
  29711. * Android.mk:
  29712. * CMakeLists.txt:
  29713. * GNUmakefile.am:
  29714. * WebCore.gypi:
  29715. * WebCore.order:
  29716. * WebCore.pro:
  29717. * WebCore.vcproj/WebCore.vcproj:
  29718. * WebCore.xcodeproj/project.pbxproj:
  29719. * rendering/RenderObject.h:
  29720. (WebCore::RenderObject::isSVGPath):
  29721. * rendering/RenderPath.cpp: Removed.
  29722. * rendering/RenderPath.h: Removed.
  29723. * rendering/RenderSVGHiddenContainer.cpp:
  29724. * rendering/RenderSVGResourceClipper.cpp:
  29725. (WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):
  29726. (WebCore::RenderSVGResourceClipper::calculateClipContentRepaintRect):
  29727. (WebCore::RenderSVGResourceClipper::hitTestClipContent):
  29728. * rendering/RenderSVGResourceContainer.cpp:
  29729. (WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke):
  29730. * rendering/RenderSVGResourceSolidColor.cpp:
  29731. (WebCore::RenderSVGResourceSolidColor::postApplyResource):
  29732. * rendering/RenderTreeAsText.cpp:
  29733. (WebCore::write):
  29734. * rendering/SVGRenderSupport.cpp:
  29735. (WebCore::SVGRenderSupport::layoutChildren):
  29736. * rendering/SVGRenderTreeAsText.cpp:
  29737. (WebCore::writeStyle):
  29738. (WebCore::operator<<):
  29739. (WebCore::write):
  29740. * rendering/SVGRenderTreeAsText.h:
  29741. * rendering/style/SVGRenderStyle.cpp:
  29742. (WebCore::SVGRenderStyle::diff):
  29743. * rendering/svg/RenderSVGPath.cpp: Copied from WebCore/rendering/RenderPath.cpp.
  29744. (WebCore::RenderSVGPath::RenderSVGPath):
  29745. (WebCore::RenderSVGPath::fillContains):
  29746. (WebCore::RenderSVGPath::strokeContains):
  29747. (WebCore::RenderSVGPath::layout):
  29748. (WebCore::RenderSVGPath::fillAndStrokePath):
  29749. (WebCore::RenderSVGPath::paint):
  29750. (WebCore::RenderSVGPath::addFocusRingRects):
  29751. (WebCore::RenderSVGPath::nodeAtFloatPoint):
  29752. (WebCore::RenderSVGPath::calculateMarkerBoundsIfNeeded):
  29753. (WebCore::RenderSVGPath::updateCachedBoundaries):
  29754. * rendering/svg/RenderSVGPath.h: Copied from WebCore/rendering/RenderPath.h.
  29755. (WebCore::RenderSVGPath::isSVGPath):
  29756. (WebCore::RenderSVGPath::renderName):
  29757. (WebCore::toRenderSVGPath):
  29758. * svg/SVGCircleElement.cpp:
  29759. (WebCore::SVGCircleElement::svgAttributeChanged):
  29760. * svg/SVGEllipseElement.cpp:
  29761. (WebCore::SVGEllipseElement::svgAttributeChanged):
  29762. * svg/SVGGradientElement.cpp:
  29763. * svg/SVGLineElement.cpp:
  29764. (WebCore::SVGLineElement::svgAttributeChanged):
  29765. * svg/SVGPathElement.cpp:
  29766. (WebCore::SVGPathElement::svgAttributeChanged):
  29767. * svg/SVGPolyElement.cpp:
  29768. (WebCore::SVGPolyElement::svgAttributeChanged):
  29769. * svg/SVGRectElement.cpp:
  29770. (WebCore::SVGRectElement::svgAttributeChanged):
  29771. * svg/SVGStyledLocatableElement.cpp:
  29772. * svg/SVGStyledTransformableElement.cpp:
  29773. (WebCore::SVGStyledTransformableElement::createRenderer):
  29774. 2010-10-06 Yury Semikhatsky <yurys@chromium.org>
  29775. Reviewed by Pavel Feldman.
  29776. Web Inspector: clear line highlight when switching current view
  29777. https://bugs.webkit.org/show_bug.cgi?id=47262
  29778. * inspector/front-end/SourceFrame.js:
  29779. (WebInspector.SourceFrame.prototype.clearLineHighlight):
  29780. * inspector/front-end/SourceView.js:
  29781. (WebInspector.SourceView.prototype.hide):
  29782. * inspector/front-end/TextViewer.js:
  29783. (WebInspector.TextViewer.prototype.highlightLine):
  29784. (WebInspector.TextViewer.prototype.clearLineHighlight):
  29785. 2010-10-06 Chris Evans <cevans@google.com>
  29786. Reviewed by David Levin.
  29787. https://bugs.webkit.org/show_bug.cgi?id=47313
  29788. Fix integer errors with enormous input strings to newline normalization APIs.
  29789. * platform/text/LineEnding.cpp:
  29790. (WebCore::normalizeLineEndingsToCRLF): return the empty string upon huge input strings. (Behaves similarly to base64Encode now).
  29791. (WebCore::normalizeToCROrLF): use the correct type for a string length.
  29792. 2010-10-06 Kent Tamura <tkent@chromium.org>
  29793. Unreviewed, build fix.
  29794. Windows build fix for r69272.
  29795. * html/BaseDateAndTimeInputType.cpp:
  29796. (WebCore::BaseDateAndTimeInputType::stepBase):
  29797. Use defaultStepBase() instead of defaultStepBase.
  29798. * html/InputType.h:
  29799. (WebCore::InputType::defaultStepBase):
  29800. Make defaultStepBase static function.
  29801. * html/NumberInputType.cpp:
  29802. (WebCore::NumberInputType::stepBase):
  29803. Use defaultStepBase() instead of defaultStepBase.
  29804. 2010-10-06 Kent Tamura <tkent@chromium.org>
  29805. Reviewed by Dimitri Glazkov.
  29806. Refactor HTMLInputElement: Move range/step related functions
  29807. https://bugs.webkit.org/show_bug.cgi?id=47251
  29808. Move the content of the following functions:
  29809. - rangeUnderflow()
  29810. - rangeOverflow()
  29811. - minimum()
  29812. - maximum()
  29813. - stepMismatch()
  29814. - stepBase()
  29815. getStepParameters() was split into InputType::defaultStep() and
  29816. stepScaleFactor().
  29817. * html/BaseDateAndTimeInputType.cpp:
  29818. (WebCore::BaseDateAndTimeInputType::rangeUnderflow):
  29819. (WebCore::BaseDateAndTimeInputType::rangeOverflow):
  29820. (WebCore::BaseDateAndTimeInputType::stepMismatch):
  29821. (WebCore::BaseDateAndTimeInputType::stepBase):
  29822. * html/BaseDateAndTimeInputType.h:
  29823. * html/DateInputType.cpp:
  29824. (WebCore::DateInputType::minimum):
  29825. (WebCore::DateInputType::maximum):
  29826. (WebCore::DateInputType::defaultStep):
  29827. (WebCore::DateInputType::stepScaleFactor):
  29828. (WebCore::DateInputType::parsedStepValueShouldBeInteger):
  29829. * html/DateInputType.h:
  29830. * html/DateTimeInputType.cpp:
  29831. (WebCore::DateTimeInputType::minimum):
  29832. (WebCore::DateTimeInputType::maximum):
  29833. (WebCore::DateTimeInputType::defaultStep):
  29834. (WebCore::DateTimeInputType::stepScaleFactor):
  29835. (WebCore::DateTimeInputType::scaledStepValeuShouldBeInteger):
  29836. * html/DateTimeInputType.h:
  29837. * html/DateTimeLocalInputType.cpp:
  29838. (WebCore::DateTimeLocalInputType::minimum):
  29839. (WebCore::DateTimeLocalInputType::maximum):
  29840. (WebCore::DateTimeLocalInputType::defaultStep):
  29841. (WebCore::DateTimeLocalInputType::stepScaleFactor):
  29842. (WebCore::DateTimeLocalInputType::scaledStepValeuShouldBeInteger):
  29843. * html/DateTimeLocalInputType.h:
  29844. * html/HTMLInputElement.cpp:
  29845. (WebCore::HTMLInputElement::rangeUnderflow):
  29846. (WebCore::HTMLInputElement::rangeOverflow):
  29847. (WebCore::HTMLInputElement::minimum):
  29848. (WebCore::HTMLInputElement::maximum):
  29849. (WebCore::HTMLInputElement::stepMismatch):
  29850. (WebCore::HTMLInputElement::getAllowedValueStep):
  29851. (WebCore::HTMLInputElement::applyStep):
  29852. (WebCore::HTMLInputElement::handleKeyEventForRange):
  29853. (WebCore::HTMLInputElement::stepUpFromRenderer):
  29854. * html/HTMLInputElement.h:
  29855. * html/InputType.cpp:
  29856. (WebCore::InputType::patternMismatch):
  29857. (WebCore::InputType::rangeUnderflow):
  29858. (WebCore::InputType::rangeOverflow):
  29859. (WebCore::InputType::minimum):
  29860. (WebCore::InputType::maximum):
  29861. (WebCore::InputType::stepMismatch):
  29862. (WebCore::InputType::stepBase):
  29863. (WebCore::InputType::defaultStep):
  29864. (WebCore::InputType::stepScaleFactor):
  29865. (WebCore::InputType::parsedStepValueShouldBeInteger):
  29866. (WebCore::InputType::scaledStepValeuShouldBeInteger):
  29867. * html/InputType.h:
  29868. * html/MonthInputType.cpp:
  29869. (WebCore::MonthInputType::minimum):
  29870. (WebCore::MonthInputType::maximum):
  29871. (WebCore::MonthInputType::defaultStep):
  29872. (WebCore::MonthInputType::stepScaleFactor):
  29873. (WebCore::MonthInputType::parsedStepValueShouldBeInteger):
  29874. * html/MonthInputType.h:
  29875. * html/NumberInputType.cpp:
  29876. (WebCore::NumberInputType::rangeUnderflow):
  29877. (WebCore::NumberInputType::rangeOverflow):
  29878. (WebCore::NumberInputType::minimum):
  29879. (WebCore::NumberInputType::maximum):
  29880. (WebCore::NumberInputType::stepMismatch):
  29881. (WebCore::NumberInputType::stepBase):
  29882. (WebCore::NumberInputType::defaultStep):
  29883. (WebCore::NumberInputType::stepScaleFactor):
  29884. * html/NumberInputType.h:
  29885. * html/RangeInputType.cpp:
  29886. (WebCore::RangeInputType::rangeUnderflow):
  29887. (WebCore::RangeInputType::rangeOverflow):
  29888. (WebCore::RangeInputType::minimum):
  29889. (WebCore::RangeInputType::maximum):
  29890. (WebCore::RangeInputType::stepMismatch):
  29891. (WebCore::RangeInputType::stepBase):
  29892. (WebCore::RangeInputType::defaultStep):
  29893. (WebCore::RangeInputType::stepScaleFactor):
  29894. * html/RangeInputType.h:
  29895. * html/TimeInputType.cpp:
  29896. (WebCore::TimeInputType::minimum):
  29897. (WebCore::TimeInputType::maximum):
  29898. (WebCore::TimeInputType::defaultStep):
  29899. (WebCore::TimeInputType::stepScaleFactor):
  29900. (WebCore::TimeInputType::scaledStepValeuShouldBeInteger):
  29901. * html/TimeInputType.h:
  29902. * html/WeekInputType.cpp:
  29903. (WebCore::WeekInputType::minimum):
  29904. (WebCore::WeekInputType::maximum):
  29905. (WebCore::WeekInputType::stepBase):
  29906. (WebCore::WeekInputType::defaultStep):
  29907. (WebCore::WeekInputType::stepScaleFactor):
  29908. (WebCore::WeekInputType::parsedStepValueShouldBeInteger):
  29909. * html/WeekInputType.h:
  29910. 2010-10-06 Simon Fraser <simon.fraser@apple.com>
  29911. Reviewed by Dan Bernstein, Darin Adler.
  29912. :first-letter should apply to "punctuation" after the first letter
  29913. https://bugs.webkit.org/show_bug.cgi?id=45986
  29914. Follow the CSS 2.1 spec by allow certain kinds of punctuation before and after
  29915. the :first-letter character.
  29916. The spec does not describe whitespace behavior, and browsers are inconsistent.
  29917. This patch allows whitespace (including non-breaking spaces) before and after the
  29918. leading punctuation, and before the trailing punctuation.
  29919. Test: fast/css/first-letter-punctuation.html
  29920. * rendering/RenderBlock.cpp:
  29921. (WebCore::isPunctuationForFirstLetter):
  29922. (WebCore::shouldSkipForFirstLetter):
  29923. (WebCore::RenderBlock::updateFirstLetter):
  29924. 2010-10-06 Sanjeev Radhakrishnan <sanjeevr@chromium.org>
  29925. Reviewed by Darin Fisher.
  29926. Released the pluginNode in PluginDocument::detach() and prevents a memory leak.
  29927. https://bugs.webkit.org/show_bug.cgi?id=47129
  29928. * html/PluginDocument.cpp:
  29929. (WebCore::PluginDocument::detach):
  29930. * html/PluginDocument.h:
  29931. 2010-10-06 Vincent Scheib <scheib@chromium.org>
  29932. Reviewed by Kenneth Russell.
  29933. [chromium] Thumbnail generation asserts on zero alpha values.
  29934. https://bugs.webkit.org/show_bug.cgi?id=47292
  29935. Test: Tested manually by running debug mode, and analyzing in PIX.
  29936. * platform/graphics/chromium/LayerRendererChromium.cpp:
  29937. (WebCore::LayerRendererChromium::drawLayers):
  29938. 2010-10-06 Kinuko Yasuda <kinuko@chromium.org>
  29939. Unreviewed, trying to fix chromium Windows build.
  29940. Explicitly give the parameter value that has a default parameter value.
  29941. * page/DOMWindow.cpp:
  29942. (WebCore::DOMWindow::requestFileSystem):
  29943. * workers/WorkerContext.cpp:
  29944. (WebCore::WorkerContext::requestFileSystem):
  29945. 2010-10-06 Darin Adler <darin@apple.com>
  29946. Try to fix Windows build.
  29947. * platform/graphics/cg/ColorCG.cpp:
  29948. (WebCore::cachedCGColor): Put in braces to make the Windows compiler
  29949. happy with this file.
  29950. * platform/graphics/cg/ImageCG.cpp: Added include of RetainPtr.h.
  29951. 2010-10-06 Darin Adler <darin@apple.com>
  29952. Reviewed by Alexey Proskuryakov.
  29953. Cache CGColor as we do NSColor
  29954. https://bugs.webkit.org/show_bug.cgi?id=47226
  29955. This fixes performance problems on certain web pages that use
  29956. multiple colors. Once in the past we were using NSColor. Now that
  29957. we are using CGColor, we need the same sort of caching that we have
  29958. for NSColor.
  29959. One example: <http://results.active.com/uploads/html/100759.html>.
  29960. * WebCore.xcodeproj/project.pbxproj: Add GraphicsContextCG.h.
  29961. * platform/graphics/Color.h: Replace createCGColor with cachedCGColor.
  29962. * platform/graphics/cg/ColorCG.cpp:
  29963. (WebCore::cachedCGColorSpace): Added.
  29964. (WebCore::leakCGColor): Added.
  29965. (WebCore::cachedCGColor): Added.
  29966. * platform/graphics/cg/GraphicsContextCG.cpp:
  29967. (WebCore::setCGFillColor): Use cachedCGColor.
  29968. (WebCore::setCGStrokeColor): Ditto.
  29969. (WebCore::GraphicsContext::fillRect): Ditto.
  29970. (WebCore::GraphicsContext::setPlatformShadow): Ditto.
  29971. * platform/graphics/cg/GraphicsContextCG.h: Added.
  29972. * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
  29973. Moved the color space functions here.
  29974. * platform/graphics/cg/ImageCG.cpp: Tweaked headers and formatting.
  29975. * platform/graphics/mac/ColorMac.mm: Removed the createCGColor
  29976. function.
  29977. * platform/graphics/mac/GraphicsContextMac.mm:
  29978. (WebCore::drawFocusRingToContext): Removed innappropriate use of
  29979. RetainPtr for the arguments to this function.
  29980. (WebCore::GraphicsContext::drawFocusRing): Use cachedCGColor.
  29981. * platform/graphics/mac/GraphicsLayerCA.mm:
  29982. (WebCore::setLayerBorderColor): Use cachedCGColor.
  29983. (WebCore::setLayerBackgroundColor): Ditto.
  29984. * platform/graphics/win/GraphicsContextCGWin.cpp:
  29985. (WebCore::GraphicsContext::drawFocusRing): Ditto.
  29986. * platform/graphics/win/GraphicsLayerCACF.cpp:
  29987. (WebCore::setLayerBorderColor): Ditto.
  29988. (WebCore::setLayerBackgroundColor): Ditto.
  29989. * platform/graphics/win/WKCACFLayerRenderer.cpp:
  29990. (WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer): Use
  29991. CGColorCreateGenericRGB for color used only for debugging.
  29992. * platform/graphics/win/WebTiledLayer.cpp:
  29993. (WebCore::WebTiledLayer::addTile): Ditto.
  29994. 2010-10-06 Peter Kasting <pkasting@google.com>
  29995. Reviewed by James Robinson
  29996. ScrollViews without scrollbars should not eat scroll events
  29997. https://bugs.webkit.org/show_bug.cgi?id=47036
  29998. * platform/ScrollView.cpp:
  29999. (WebCore::ScrollView::wheelEvent):
  30000. 2010-10-06 Daniel Bates <dbates@rim.com>
  30001. Reviewed by Darin Adler.
  30002. ASSERTION FAILURE: Attempt to cast RenderObject to RenderFrameSet
  30003. when <frameset> has CSS content property
  30004. https://bugs.webkit.org/show_bug.cgi?id=47314
  30005. Fixes an issue where sending a mouse event to an HTML Frameset Element that
  30006. whose content was replaced via the CSS content property causes an assertion
  30007. failure.
  30008. By default, HTMLFrameSetElement forwards mouse events to RenderFrameSet so as
  30009. to support resizing a frame within the set. When a <frameset> specifies an
  30010. image in its CSS content property we create a generic render object (RenderObject)
  30011. for the frame set instead of a RenderFrameSet object. The event handler code
  30012. in HTMLFrameSetElement calls WebCore::toRenderFrameSet() to cast its renderer
  30013. to type RenderFrameSet, which fails. To correct this, HTMLFrameSetElement
  30014. must check that its renderer is of type RenderFrameSet before casting to this type.
  30015. Test: fast/frames/crash-frameset-CSS-content-property.html
  30016. * html/HTMLFrameSetElement.cpp:
  30017. (WebCore::HTMLFrameSetElement::defaultEventHandler): Check that our renderer is
  30018. of type RenderFrameSet before casting it as such.
  30019. 2010-10-06 Albert J. Wong <ajwong@chromium.org>
  30020. Reviewed by Andreas Kling.
  30021. r69181 breaks compilation of WebCore/platform/graphics/filters/FETile.cpp if ENABLE(SVG) is false.
  30022. https://bugs.webkit.org/show_bug.cgi?id=47315
  30023. Compile fix. No tests.
  30024. * platform/graphics/filters/FETile.cpp:
  30025. (WebCore::FETile::apply):
  30026. 2010-10-06 Kinuko Yasuda <kinuko@chromium.org>
  30027. Unreviewed, fixing screwed up ChangeLogs.
  30028. 2010-10-06 Kinuko Yasuda <kinuko@chromium.org>
  30029. Reviewed by David Levin.
  30030. Add FileSystemSync implementation for Worker
  30031. https://bugs.webkit.org/show_bug.cgi?id=47044
  30032. Tests: fast/filesystem/async-operations.html
  30033. fast/filesystem/workers/async-operations.html
  30034. fast/filesystem/workers/sync-operations.html
  30035. * GNUmakefile.am:
  30036. * WebCore.gypi:
  30037. * WebCore.pro:
  30038. * WebCore.vcproj/WebCore.vcproj:
  30039. * WebCore.xcodeproj/project.pbxproj:
  30040. * bindings/generic/RuntimeEnabledFeatures.h: Removed
  30041. requestFileSystemEnabled() as I changed the idl/generator to
  30042. use fileSystemEnabled for all the FileSystem related features.
  30043. * fileapi/DOMFileSystem.cpp:
  30044. * fileapi/DOMFileSystem.h:
  30045. * fileapi/DOMFileSystemBase.cpp:
  30046. (WebCore::DOMFileSystemBase::getMetadata): Moved from DOMFileSystem.
  30047. (WebCore::checkValidityForForCopyOrMove): Moved from DOMFileSystem.
  30048. (WebCore::DOMFileSystemBase::move): Moved from DOMFileSystem.
  30049. (WebCore::DOMFileSystemBase::copy): Moved from DOMFileSystem.
  30050. (WebCore::DOMFileSystemBase::remove): Moved from DOMFileSystem.
  30051. (WebCore::DOMFileSystemBase::getParent): Moved from DOMFileSystem.
  30052. (WebCore::DOMFileSystemBase::getFile): Moved from DOMFileSystem.
  30053. (WebCore::DOMFileSystemBase::getDirectory): Moved from DOMFileSystem.
  30054. (WebCore::DOMFileSystemBase::readDirectory): Moved from DOMFileSystem.
  30055. * fileapi/DOMFileSystemBase.h:
  30056. * fileapi/DOMFileSystemSync.h:
  30057. * fileapi/DirectoryEntry.cpp:
  30058. (WebCore::DirectoryEntry::DirectoryEntry): Updated to call
  30059. DOMFileSystemBase's method instead of DOMFileSystem's one.
  30060. (WebCore::DirectoryEntry::getFile): Ditto.
  30061. (WebCore::DirectoryEntry::getDirectory): Ditto.
  30062. * fileapi/DirectoryEntry.h:
  30063. * fileapi/DirectoryEntrySync.cpp:
  30064. (WebCore::DirectoryEntrySync::getFile): Implemented.
  30065. (WebCore::DirectoryEntrySync::getDirectory): Implemented.
  30066. * fileapi/DirectoryReader.h:
  30067. * fileapi/DirectoryReaderSync.cpp:
  30068. (WebCore::DirectoryReaderSync::readEntries): Implemented.
  30069. * fileapi/Entry.cpp:
  30070. (WebCore::Entry::Entry): Updated to call DOMFileSystemBase's method.
  30071. (WebCore::Entry::getMetadata): Ditto.
  30072. (WebCore::Entry::moveTo): Ditto.
  30073. (WebCore::Entry::copyTo): Ditto.
  30074. (WebCore::Entry::remove): Ditto.
  30075. (WebCore::Entry::getParent): Ditto.
  30076. * fileapi/Entry.h:
  30077. * fileapi/Entry.idl:
  30078. * fileapi/EntryArraySync.cpp:
  30079. (WebCore::EntryArraySync::create): Added.
  30080. * fileapi/EntryArraySync.h:
  30081. * fileapi/EntryBase.h:
  30082. (WebCore::EntryBase::filesystem): Added.
  30083. * fileapi/EntrySync.cpp:
  30084. (WebCore::EntrySync::create): Implemented.
  30085. (WebCore::EntrySync::getMetadata): Implemented.
  30086. (WebCore::EntrySync::moveTo): Implemented.
  30087. (WebCore::EntrySync::copyTo): Implemented.
  30088. (WebCore::EntrySync::remove): Implemented.
  30089. * fileapi/EntrySync.h:
  30090. * fileapi/FileEntry.cpp:
  30091. * fileapi/FileEntry.h:
  30092. * fileapi/FileSystemCallbacks.cpp:
  30093. (WebCore::EntryCallbacks::create): Updated to take DOMFileSystemBase
  30094. instead of DOMFileSystem.
  30095. (WebCore::EntryCallbacks::EntryCallbacks): Ditto.
  30096. (WebCore::EntriesCallbacks::create): Ditto.
  30097. (WebCore::EntriesCallbacks::EntriesCallbacks): Ditto.
  30098. * fileapi/FileSystemCallbacks.h:
  30099. * fileapi/LocalFileSystem.cpp:
  30100. (WebCore::LocalFileSystem::requestFileSystem): Added synchronous
  30101. parameter.
  30102. * fileapi/LocalFileSystem.h:
  30103. * fileapi/Metadata.h:
  30104. * fileapi/SyncCallbackHelper.h: Added. This defines a helper template
  30105. for synchronous implementation.
  30106. * page/DOMWindow.idl:
  30107. * platform/AsyncFileSystem.h:
  30108. (WebCore::AsyncFileSystem::waitCompletion): Added.
  30109. * workers/WorkerContext.cpp:
  30110. (WebCore::WorkerContext::requestFileSystemSync): Added.
  30111. * workers/WorkerContext.h:
  30112. * workers/WorkerContext.idl:
  30113. 2010-10-06 Andrei Popescu <andreip@google.com>
  30114. Reviewed by Jeremy Orlow.
  30115. IDBDatabase and IDBObjectStore metadata is not recovered correctly when the setVersion transactions aborts.
  30116. https://bugs.webkit.org/show_bug.cgi?id=47245
  30117. Recover metadata properly by adding abort tasks that
  30118. are run when a transaction aborts.
  30119. * storage/IDBDatabase.cpp:
  30120. (WebCore::IDBDatabase::createObjectStore):
  30121. (WebCore::IDBDatabase::removeObjectStore):
  30122. * storage/IDBDatabaseBackendImpl.cpp:
  30123. (WebCore::IDBDatabaseBackendImpl::createObjectStore):
  30124. (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
  30125. (WebCore::IDBDatabaseBackendImpl::setVersion):
  30126. (WebCore::IDBDatabaseBackendImpl::removeObjectStoreFromMap):
  30127. (WebCore::IDBDatabaseBackendImpl::addObjectStoreToMap):
  30128. (WebCore::IDBDatabaseBackendImpl::resetVersion):
  30129. * storage/IDBDatabaseBackendImpl.h:
  30130. * storage/IDBObjectStoreBackendImpl.cpp:
  30131. (WebCore::IDBObjectStoreBackendImpl::createIndex):
  30132. (WebCore::IDBObjectStoreBackendImpl::removeIndex):
  30133. (WebCore::IDBObjectStoreBackendImpl::removeIndexFromMap):
  30134. (WebCore::IDBObjectStoreBackendImpl::addIndexToMap):
  30135. * storage/IDBObjectStoreBackendImpl.h:
  30136. * storage/IDBTransactionBackendImpl.cpp:
  30137. (WebCore::IDBTransactionBackendImpl::scheduleTask):
  30138. (WebCore::IDBTransactionBackendImpl::abort):
  30139. * storage/IDBTransactionBackendImpl.h:
  30140. * storage/IDBTransactionBackendInterface.h:
  30141. * storage/IDBTransactionCoordinator.h:
  30142. 2010-10-06 David Hyatt <hyatt@apple.com>
  30143. Reviewed by Dan Bernstein.
  30144. https://bugs.webkit.org/show_bug.cgi?id=47306
  30145. Convert determineStart/EndPosition and matchedEndLine to be writing-mode-aware.
  30146. * rendering/RenderBlockLineLayout.cpp:
  30147. (WebCore::RenderBlock::determineStartPosition):
  30148. (WebCore::RenderBlock::determineEndPosition):
  30149. (WebCore::RenderBlock::matchedEndLine):
  30150. 22010-10-06 Chris Fleizach <cfleizach@apple.com>
  30151. Reviewed by Beth Dakin.
  30152. REGRESSION (r53857): AREA tag with tabindex="-1" displays focus ring after multiple mouse clicks.
  30153. https://bugs.webkit.org/show_bug.cgi?id=45832
  30154. Test: fast/events/mouse-focus-imagemap.html
  30155. * html/HTMLAreaElement.cpp:
  30156. (WebCore::HTMLAreaElement::isKeyboardFocusable):
  30157. (WebCore::HTMLAreaElement::isMouseFocusable):
  30158. (WebCore::HTMLAreaElement::isFocusable):
  30159. (WebCore::HTMLAreaElement::updateFocusAppearance):
  30160. * html/HTMLAreaElement.h:
  30161. 010-10-06 David Hyatt <hyatt@apple.com>
  30162. Reviewed by Dan Bernstein.
  30163. https://bugs.webkit.org/show_bug.cgi?id=47303
  30164. Convert layoutInlineChildren to be block-flow-aware. None of the functions it calls are patched yet.
  30165. * rendering/RenderBlock.cpp:
  30166. (WebCore::RenderBlock::layoutBlock):
  30167. * rendering/RenderBlock.h:
  30168. (WebCore::RenderBlock::forceLayoutInlineChildren):
  30169. * rendering/RenderBlockLineLayout.cpp:
  30170. (WebCore::RenderBlock::layoutInlineChildren):
  30171. (WebCore::RenderBlock::beforeSideVisibleOverflowForLine):
  30172. (WebCore::RenderBlock::afterSideVisibleOverflowForLine):
  30173. (WebCore::RenderBlock::beforeSideLayoutOverflowForLine):
  30174. (WebCore::RenderBlock::afterSideLayoutOverflowForLine):
  30175. * rendering/RenderBox.h:
  30176. (WebCore::RenderBox::logicalLeftLayoutOverflow):
  30177. (WebCore::RenderBox::logicalRightLayoutOverflow):
  30178. (WebCore::RenderBox::logicalLeftVisualOverflow):
  30179. (WebCore::RenderBox::logicalRightVisualOverflow):
  30180. 2010-10-06 David Hyatt <hyatt@apple.com>
  30181. Reviewed by Dan Bernstein.
  30182. https://bugs.webkit.org/show_bug.cgi?id=47298
  30183. Rename blockHeight to blockLogicalHeight.
  30184. * rendering/RenderBlock.cpp:
  30185. (WebCore::RenderBlock::markLinesDirtyInBlockRange):
  30186. * rendering/RenderBlockLineLayout.cpp:
  30187. (WebCore::RenderBlock::computeBlockDirectionPositionsForLine):
  30188. (WebCore::RenderBlock::layoutInlineChildren):
  30189. (WebCore::RenderBlock::determineStartPosition):
  30190. (WebCore::RenderBlock::determineEndPosition):
  30191. (WebCore::RenderBlock::matchedEndLine):
  30192. * rendering/RootInlineBox.cpp:
  30193. (WebCore::RootInlineBox::RootInlineBox):
  30194. (WebCore::RootInlineBox::adjustPosition):
  30195. * rendering/RootInlineBox.h:
  30196. (WebCore::RootInlineBox::blockLogicalHeight):
  30197. (WebCore::RootInlineBox::setBlockLogicalHeight):
  30198. * rendering/svg/SVGRootInlineBox.cpp:
  30199. (WebCore::SVGRootInlineBox::layoutRootBox):
  30200. 2010-10-05 James Robinson <jamesr@chromium.org>
  30201. Reviewed by Kenneth Russell.
  30202. [chromium] DRT assertion w/accel 2D canvas in PlatformContextSkia
  30203. https://bugs.webkit.org/show_bug.cgi?id=47242
  30204. Call PlatformContextSkia::prepareForSoftwareDraw before doing putImageData
  30205. since that call mutates the software backing store.
  30206. Test: fast/canvas/canvas-putImageData.html
  30207. * platform/graphics/skia/ImageBufferSkia.cpp:
  30208. (WebCore::ImageBuffer::putUnmultipliedImageData):
  30209. 2010-10-06 Alexey Proskuryakov <ap@apple.com>
  30210. Reviewed by Brady Eidson.
  30211. https://bugs.webkit.org/show_bug.cgi?id=47294
  30212. <rdar://problem/8425647>Application cache isn't consulted on redirect
  30213. Test: http/tests/appcache/main-resource-redirect.html
  30214. * loader/MainResourceLoader.cpp:
  30215. (WebCore::MainResourceLoader::continueAfterNavigationPolicy): If we have substitute data now
  30216. (presumably after a redirect is served by appcache), switch to it.
  30217. (WebCore::MainResourceLoader::willSendRequest): Check appcache for the new URL.
  30218. * loader/MainResourceLoader.h: Made handleDataLoadSoon() take a const ResourceRequest
  30219. reference - it doesn't ever modify it, and we can call it from continueAfterNavigationPolicy() now.
  30220. 2010-10-06 Alejandro G. Castro <alex@igalia.com>
  30221. Reviewed by Dirk Schulze.
  30222. ContextShadow should not use the blur radius as kernel size of the
  30223. box blurs
  30224. https://bugs.webkit.org/show_bug.cgi?id=46918
  30225. Calculate the size of the kernel in the blur algorithm using the radius instead
  30226. of using the blur distance directly. Change the name of the variables to match the
  30227. terminology in the spec.
  30228. * platform/graphics/ContextShadow.cpp:
  30229. (WebCore::ContextShadow::ContextShadow):
  30230. (WebCore::ContextShadow::clear):
  30231. (WebCore::ContextShadow::blurLayerImage):
  30232. (WebCore::ContextShadow::calculateLayerBoundingRect):
  30233. * platform/graphics/ContextShadow.h:
  30234. 2010-10-06 Andras Becsi <abecsi@webkit.org>
  30235. Reviewed by Kenneth Rohde Christiansen.
  30236. [Qt] Correct CamelCase of socketSentdata() in SocketStreamHandlePrivate
  30237. to fix "QMetaObject::invokeMethod: No such method" warnings in layout tests.
  30238. https://bugs.webkit.org/show_bug.cgi?id=47284
  30239. No new tests needed.
  30240. * platform/network/qt/SocketStreamHandlePrivate.h:
  30241. * platform/network/qt/SocketStreamHandleQt.cpp:
  30242. (WebCore::SocketStreamHandlePrivate::socketSentData):
  30243. 2010-10-06 David Hyatt <hyatt@apple.com>
  30244. Reviewed by Dan Bernstein.
  30245. https://bugs.webkit.org/show_bug.cgi?id=47285
  30246. Update to the latest writing-mode draft. The block-flow property is gone and has been replaced with writing-mode.
  30247. Change all the code to use writingMode() instead of blockFlow() and rename all functions that referred to block flow
  30248. as appropriate.
  30249. * css/CSSComputedStyleDeclaration.cpp:
  30250. (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  30251. * css/CSSParser.cpp:
  30252. (WebCore::CSSParser::parseValue):
  30253. * css/CSSPrimitiveValueMappings.h:
  30254. (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
  30255. (WebCore::CSSPrimitiveValue::operator WritingMode):
  30256. (WebCore::CSSPrimitiveValue::operator SVGWritingMode):
  30257. * css/CSSProperty.cpp:
  30258. (WebCore::resolveToPhysicalProperty):
  30259. (WebCore::CSSProperty::resolveDirectionAwareProperty):
  30260. * css/CSSProperty.h:
  30261. * css/CSSPropertyNames.in:
  30262. * css/CSSStyleSelector.cpp:
  30263. (WebCore::CSSStyleSelector::styleForDocument):
  30264. (WebCore::CSSStyleSelector::adjustRenderStyle):
  30265. (WebCore::CSSStyleSelector::applyDeclarations):
  30266. (WebCore::CSSStyleSelector::applyProperty):
  30267. * css/CSSValueKeywords.in:
  30268. * rendering/RenderBlock.cpp:
  30269. (WebCore::RenderBlock::MarginInfo::MarginInfo):
  30270. (WebCore::RenderBlock::expandsToEncloseOverhangingFloats):
  30271. (WebCore::RenderBlock::setLogicalLeftForChild):
  30272. (WebCore::RenderBlock::setLogicalTopForChild):
  30273. (WebCore::RenderBlock::layoutBlockChild):
  30274. (WebCore::RenderBlock::insertFloatingObject):
  30275. (WebCore::RenderBlock::addOverhangingFloats):
  30276. (WebCore::RenderBlock::addIntrudingFloats):
  30277. (WebCore::RenderBlock::collapsedMarginBeforeForChild):
  30278. (WebCore::RenderBlock::collapsedMarginAfterForChild):
  30279. (WebCore::RenderBlock::marginBeforeForChild):
  30280. (WebCore::RenderBlock::marginAfterForChild):
  30281. (WebCore::RenderBlock::marginStartForChild):
  30282. (WebCore::RenderBlock::marginEndForChild):
  30283. (WebCore::RenderBlock::setMarginStartForChild):
  30284. (WebCore::RenderBlock::setMarginEndForChild):
  30285. (WebCore::RenderBlock::setMarginBeforeForChild):
  30286. (WebCore::RenderBlock::setMarginAfterForChild):
  30287. (WebCore::RenderBlock::marginValuesForChild):
  30288. * rendering/RenderBlock.h:
  30289. (WebCore::RenderBlock::logicalWidthForChild):
  30290. (WebCore::RenderBlock::logicalHeightForChild):
  30291. (WebCore::RenderBlock::logicalTopForChild):
  30292. (WebCore::RenderBlock::logicalRightOffsetForContent):
  30293. (WebCore::RenderBlock::logicalLeftOffsetForContent):
  30294. (WebCore::RenderBlock::logicalTopForFloat):
  30295. (WebCore::RenderBlock::logicalBottomForFloat):
  30296. (WebCore::RenderBlock::logicalLeftForFloat):
  30297. (WebCore::RenderBlock::logicalRightForFloat):
  30298. (WebCore::RenderBlock::logicalWidthForFloat):
  30299. (WebCore::RenderBlock::setLogicalTopForFloat):
  30300. (WebCore::RenderBlock::setLogicalLeftForFloat):
  30301. (WebCore::RenderBlock::setLogicalHeightForFloat):
  30302. (WebCore::RenderBlock::setLogicalWidthForFloat):
  30303. * rendering/RenderBox.cpp:
  30304. (WebCore::RenderBox::marginBefore):
  30305. (WebCore::RenderBox::marginAfter):
  30306. (WebCore::RenderBox::marginStart):
  30307. (WebCore::RenderBox::marginEnd):
  30308. (WebCore::RenderBox::setMarginStart):
  30309. (WebCore::RenderBox::setMarginEnd):
  30310. (WebCore::RenderBox::setMarginBefore):
  30311. (WebCore::RenderBox::setMarginAfter):
  30312. (WebCore::RenderBox::styleDidChange):
  30313. (WebCore::RenderBox::perpendicularContainingBlockLogicalHeight):
  30314. (WebCore::RenderBox::computeLogicalWidth):
  30315. (WebCore::RenderBox::computeLogicalHeight):
  30316. (WebCore::RenderBox::availableLogicalHeightUsing):
  30317. (WebCore::RenderBox::avoidsFloats):
  30318. * rendering/RenderBox.h:
  30319. (WebCore::RenderBox::logicalLeft):
  30320. (WebCore::RenderBox::logicalTop):
  30321. (WebCore::RenderBox::logicalWidth):
  30322. (WebCore::RenderBox::logicalHeight):
  30323. (WebCore::RenderBox::setLogicalLeft):
  30324. (WebCore::RenderBox::setLogicalTop):
  30325. (WebCore::RenderBox::setLogicalWidth):
  30326. (WebCore::RenderBox::setLogicalHeight):
  30327. (WebCore::RenderBox::setLogicalLocation):
  30328. (WebCore::RenderBox::contentLogicalWidth):
  30329. (WebCore::RenderBox::contentLogicalHeight):
  30330. (WebCore::RenderBox::stretchesToViewport):
  30331. (WebCore::RenderBox::intrinsicLogicalWidth):
  30332. (WebCore::RenderBox::intrinsicLogicalHeight):
  30333. (WebCore::RenderBox::availableWidth):
  30334. (WebCore::RenderBox::availableHeight):
  30335. (WebCore::RenderBox::scrollbarLogicalHeight):
  30336. (WebCore::RenderBox::isWritingModeRoot):
  30337. * rendering/RenderFieldset.cpp:
  30338. (WebCore::RenderFieldset::paintBoxDecorations):
  30339. (WebCore::RenderFieldset::paintMask):
  30340. * rendering/RenderImage.cpp:
  30341. (WebCore::RenderImage::computeReplacedLogicalWidth):
  30342. (WebCore::RenderImage::computeReplacedLogicalHeight):
  30343. * rendering/RenderInline.cpp:
  30344. (WebCore::RenderInline::marginLeft):
  30345. (WebCore::RenderInline::marginRight):
  30346. (WebCore::RenderInline::marginTop):
  30347. (WebCore::RenderInline::marginBottom):
  30348. * rendering/RenderTableCell.cpp:
  30349. (WebCore::RenderTableCell::paddingTop):
  30350. (WebCore::RenderTableCell::paddingBottom):
  30351. (WebCore::RenderTableCell::paddingLeft):
  30352. (WebCore::RenderTableCell::paddingRight):
  30353. * rendering/RenderView.h:
  30354. (WebCore::RenderView::viewLogicalWidth):
  30355. (WebCore::RenderView::viewLogicalHeight):
  30356. * rendering/RootInlineBox.cpp:
  30357. (WebCore::RootInlineBox::RootInlineBox):
  30358. * rendering/style/RenderStyle.cpp:
  30359. (WebCore::RenderStyle::diff):
  30360. (WebCore::RenderStyle::logicalWidth):
  30361. (WebCore::RenderStyle::logicalHeight):
  30362. (WebCore::RenderStyle::logicalMinWidth):
  30363. (WebCore::RenderStyle::logicalMaxWidth):
  30364. (WebCore::RenderStyle::logicalMinHeight):
  30365. (WebCore::RenderStyle::logicalMaxHeight):
  30366. (WebCore::RenderStyle::borderBeforeWidth):
  30367. (WebCore::RenderStyle::borderAfterWidth):
  30368. (WebCore::RenderStyle::borderStartWidth):
  30369. (WebCore::RenderStyle::borderEndWidth):
  30370. (WebCore::RenderStyle::marginBefore):
  30371. (WebCore::RenderStyle::marginAfter):
  30372. (WebCore::RenderStyle::marginBeforeUsing):
  30373. (WebCore::RenderStyle::marginAfterUsing):
  30374. (WebCore::RenderStyle::marginStart):
  30375. (WebCore::RenderStyle::marginEnd):
  30376. (WebCore::RenderStyle::marginStartUsing):
  30377. (WebCore::RenderStyle::marginEndUsing):
  30378. (WebCore::RenderStyle::paddingBefore):
  30379. (WebCore::RenderStyle::paddingAfter):
  30380. (WebCore::RenderStyle::paddingStart):
  30381. (WebCore::RenderStyle::paddingEnd):
  30382. * rendering/style/RenderStyle.h:
  30383. (WebCore::InheritedFlags::setBitDefaults):
  30384. (WebCore::InheritedFlags::writingMode):
  30385. (WebCore::InheritedFlags::isHorizontalWritingMode):
  30386. (WebCore::InheritedFlags::setWritingMode):
  30387. (WebCore::InheritedFlags::initialWritingMode):
  30388. * rendering/style/RenderStyleConstants.h:
  30389. * rendering/style/SVGRenderStyle.h:
  30390. (WebCore::SVGRenderStyle::initialWritingMode):
  30391. (WebCore::SVGRenderStyle::setWritingMode):
  30392. (WebCore::SVGRenderStyle::writingMode):
  30393. * rendering/style/SVGRenderStyleDefs.h:
  30394. 2010-10-06 Sheriff Bot <webkit.review.bot@gmail.com>
  30395. Unreviewed, rolling out r69201.
  30396. http://trac.webkit.org/changeset/69201
  30397. https://bugs.webkit.org/show_bug.cgi?id=47279
  30398. This change broke the WebKitGTK+ build for GTK+ 2.0.
  30399. (Requested by mrobinson on #webkit).
  30400. * platform/gtk/GtkVersioning.c:
  30401. (getDefaultGDKPointerDevice):
  30402. * platform/gtk/GtkVersioning.h:
  30403. * platform/gtk/PlatformScreenGtk.cpp:
  30404. (WebCore::getVisual):
  30405. (WebCore::screenAvailableRect):
  30406. 2010-10-06 Stephen White <senorblanco@chromium.org>
  30407. Reviewed by James Robinson.
  30408. https://bugs.webkit.org/show_bug.cgi?id=47282
  30409. Robustify the creation of SharedGraphicsContext3D against shader
  30410. compilation failures.
  30411. Covered by any canvas 2D layout test, when opened in chrome with
  30412. --enable-accelerated-2d-canvas --in-process-webgl.
  30413. * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
  30414. (WebCore::SharedGraphicsContext3D::create):
  30415. (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
  30416. * platform/graphics/gpu/SharedGraphicsContext3D.h:
  30417. 2010-10-06 Luiz Agostini <luiz.agostini@openbossa.org>
  30418. Reviewed by Kenneth Rohde Christiansen.
  30419. Renaming WebCore::ViewportConfiguration to WebCore::ViewportAttributes
  30420. https://bugs.webkit.org/show_bug.cgi?id=47268
  30421. Renaming WebCore::ViewportConfiguration to WebCore::ViewportAttributes
  30422. * dom/ViewportArguments.cpp:
  30423. (WebCore::findConfigurationForViewportData):
  30424. * dom/ViewportArguments.h:
  30425. 2010-10-06 Renata Hodovan <reni@inf.u-szeged.hu>
  30426. Reviewed by Nikolas Zimmermann.
  30427. SVGFEMergeNodeElement doesn't support dynamic invalidation, when attributes change.
  30428. https://bugs.webkit.org/show_bug.cgi?id=47181
  30429. Since feMergeNode doesn't have own renderer, we have to call the invalidation via its parent.
  30430. Tests: svg/dynamic-updates/SVGFEMergeNodeElement-dom-in-attr.html
  30431. svg/dynamic-updates/SVGFEMergeNodeElement-svgdom-in-prop.html
  30432. * svg/SVGFEMergeNodeElement.cpp:
  30433. (WebCore::SVGFEMergeNodeElement::svgAttributeChanged):
  30434. * svg/SVGFEMergeNodeElement.h:
  30435. 2010-10-06 Carlos Garcia Campos <cgarcia@igalia.com>
  30436. Reviewed by Martin Robinson.
  30437. [GTK] Remove unused code from gtk2drawing.c
  30438. https://bugs.webkit.org/show_bug.cgi?id=47086
  30439. gtk2drawing.c was copied from mozilla and contains a lot of code that is not
  30440. used by WebKit. Most of that unused code is uncompatible with gtk3, so
  30441. removing it will make easier porting to gtk3.
  30442. * platform/gtk/gtk2drawing.c:
  30443. (moz_gtk_get_widget_border):
  30444. (moz_gtk_widget_paint):
  30445. (moz_gtk_destroy_theme_parts_widgets):
  30446. * platform/gtk/gtkdrawing.h:
  30447. 2010-10-06 Carlos Garcia Campos <cgarcia@igalia.com>
  30448. Reviewed by Xan Lopez.
  30449. [GTK] Use pixbufs instead of pixmaps when creating platform cursors
  30450. https://bugs.webkit.org/show_bug.cgi?id=47087
  30451. gdk_cursor_new_from_pixmap() has been removed in gtk3. We can use a
  30452. pixbuf instead of a pixman and use gdk_cursor_new_from_pixbuf() instead
  30453. for both gtk2 and gtk3.
  30454. * platform/gtk/CursorGtk.cpp:
  30455. (WebCore::createNamedCursor):
  30456. * platform/gtk/GtkVersioning.c:
  30457. (gdk_cairo_format_for_content):
  30458. (gdk_cairo_surface_coerce_to_image):
  30459. (convert_alpha):
  30460. (convert_no_alpha):
  30461. (gdk_pixbuf_get_from_surface):
  30462. * platform/gtk/GtkVersioning.h:
  30463. 2010-10-06 Pavel Podivilov <podivilov@chromium.org>
  30464. Reviewed by Yury Semikhatsky.
  30465. Web Inspector: add event listener breakpoints sidebar pane
  30466. https://bugs.webkit.org/show_bug.cgi?id=46738
  30467. * inspector/front-end/BreakpointManager.js:
  30468. (WebInspector.BreakpointManager.prototype.createEventListenerBreakpoint):
  30469. (WebInspector.BreakpointManager.prototype.createXHRBreakpoint.breakpoint.compareTo):
  30470. (WebInspector.BreakpointManager.prototype.createXHRBreakpoint):
  30471. (WebInspector.NativeBreakpoint):
  30472. (WebInspector.NativeBreakpoint.prototype._setOnBackend.didSet):
  30473. (WebInspector.NativeBreakpoint.prototype._setOnBackend):
  30474. * inspector/front-end/BreakpointsSidebarPane.js:
  30475. (WebInspector.XHRBreakpointsSidebarPane.prototype._showEditBreakpointDialog):
  30476. (WebInspector.BreakpointItem):
  30477. (WebInspector.EventListenerBreakpointsSidebarPane):
  30478. (WebInspector.EventListenerBreakpointsSidebarPane.prototype._populate):
  30479. (WebInspector.EventListenerBreakpointsSidebarPane.prototype._createCheckbox):
  30480. (WebInspector.EventListenerBreakpointsSidebarPane.prototype._categoryCheckboxClicked):
  30481. (WebInspector.EventListenerBreakpointsSidebarPane.prototype._eventNameCheckboxClicked):
  30482. (WebInspector.EventListenerBreakpointsSidebarPane.prototype._breakpointEnableChanged):
  30483. (WebInspector.EventListenerBreakpointsSidebarPane.prototype._updateCategoryCheckbox):
  30484. (WebInspector.EventListenerBreakpointsSidebarPane.prototype.reset):
  30485. * inspector/front-end/EventListenersSidebarPane.js:
  30486. ():
  30487. * inspector/front-end/PropertiesSection.js:
  30488. (WebInspector.PropertiesSection):
  30489. * inspector/front-end/ScriptsPanel.js:
  30490. (WebInspector.ScriptsPanel):
  30491. (WebInspector.ScriptsPanel.prototype.reset):
  30492. * inspector/front-end/inspector.css:
  30493. (.section .properties, .event-bar .event-properties):
  30494. (.section.expanded .properties, .event-bar.expanded .event-properties):
  30495. (ol.properties-tree):
  30496. (ol.properties-tree li):
  30497. (ol.properties-tree li.parent):
  30498. (ol.properties-tree li.parent::before):
  30499. (ol.properties-tree li.parent.expanded::before):
  30500. (ol.properties-tree li .info):
  30501. (ol.properties-tree ol, .stack-trace ol, ol.stack-trace):
  30502. (ol.properties-tree ol.expanded, .stack-trace ol, ol.stack-trace):
  30503. (ol.stack-trace):
  30504. (.event-listener-breakpoints .event-category):
  30505. (ol.event-listener-breakpoints.properties-tree .children li):
  30506. (.event-listener-breakpoints .checkbox-elem):
  30507. * inspector/front-end/inspector.js:
  30508. (WebInspector.createXHRBreakpointsSidebarPane.breakpointAdded):
  30509. (WebInspector.createXHRBreakpointsSidebarPane):
  30510. 2010-10-06 Carlos Garcia Campos <cgarcia@igalia.com>
  30511. Reviewed by Xan Lopez.
  30512. [GTK] Port to gtk+3 (2.91.0)
  30513. https://bugs.webkit.org/show_bug.cgi?id=47249
  30514. Do not use GdkDrawable deprecated API
  30515. Some methods of GdkDrawable are deprecated in gtk2 and have been
  30516. remmoved in gtk3. Equivalent API has been added to GdkWindow.
  30517. * platform/gtk/GtkVersioning.c:
  30518. (getDefaultGDKPointerDevice):
  30519. * platform/gtk/GtkVersioning.h:
  30520. * platform/gtk/PlatformScreenGtk.cpp:
  30521. (WebCore::getVisual):
  30522. (WebCore::screenAvailableRect):
  30523. 2010-10-06 Ryuan Choi <ryuan.choi@samsung.com>
  30524. Reviewed by Antonio Gomes.
  30525. [EFL] Support Progress Tag
  30526. https://bugs.webkit.org/show_bug.cgi?id=45951
  30527. Implement to render progress tag.
  30528. No new tests. Existing tests in fast/dom/HTMLProgressElement.
  30529. * platform/efl/RenderThemeEfl.cpp:
  30530. (WebCore::RenderThemeEfl::paintThemePart):
  30531. (WebCore::RenderThemeEfl::edjeGroupFromFormType):
  30532. (WebCore::RenderThemeEfl::adjustProgressBarStyle):
  30533. (WebCore::RenderThemeEfl::paintProgressBar):
  30534. * platform/efl/RenderThemeEfl.h:
  30535. 2010-10-06 Patrick Gansterer <paroga@webkit.org>
  30536. Reviewed by Darin Adler.
  30537. Add KURL::protocolIsData()
  30538. https://bugs.webkit.org/show_bug.cgi?id=47219
  30539. * page/Page.cpp:
  30540. (WebCore::Page::userStyleSheetLocationChanged):
  30541. * page/SecurityOrigin.cpp:
  30542. (WebCore::SecurityOrigin::taintsCanvas):
  30543. * page/XSSAuditor.cpp:
  30544. (WebCore::XSSAuditor::findInRequest):
  30545. * platform/KURL.h:
  30546. (WebCore::KURL::protocolIsData):
  30547. * platform/network/curl/ResourceHandleManager.cpp:
  30548. (WebCore::ResourceHandleManager::dispatchSynchronousJob):
  30549. (WebCore::ResourceHandleManager::startJob):
  30550. * platform/network/win/ResourceHandleWin.cpp:
  30551. (WebCore::ResourceHandle::start):
  30552. (WebCore::ResourceHandle::fileLoadTimer):
  30553. 2010-10-06 Alexander Pavlov <apavlov@chromium.org>
  30554. Reviewed by Pavel Feldman.
  30555. CSSParser: Enable rule selector source range extraction.
  30556. API modification followed by clients.
  30557. https://bugs.webkit.org/show_bug.cgi?id=46367
  30558. Some code removal suggested by Darin Adler.
  30559. * css/CSSGrammar.y:
  30560. * css/CSSParser.cpp:
  30561. (WebCore::CSSParser::CSSParser):
  30562. (WebCore::CSSParser::parseSheet):
  30563. (WebCore::CSSParser::parseDeclaration):
  30564. (WebCore::CSSParser::createStyleRule):
  30565. (WebCore::CSSParser::markSelectorListStart):
  30566. (WebCore::CSSParser::markSelectorListEnd):
  30567. (WebCore::CSSParser::markRuleBodyStart):
  30568. (WebCore::CSSParser::markRuleBodyEnd):
  30569. (WebCore::CSSParser::markPropertyStart):
  30570. (WebCore::CSSParser::markPropertyEnd):
  30571. * css/CSSParser.h:
  30572. (WebCore::CSSParser::resetSelectorListMarks):
  30573. (WebCore::CSSParser::resetRuleBodyMarks):
  30574. (WebCore::CSSParser::resetPropertyMarks):
  30575. * css/CSSPropertySourceData.cpp:
  30576. * css/CSSPropertySourceData.h:
  30577. (WebCore::CSSRuleSourceData::create):
  30578. * inspector/InspectorCSSStore.cpp:
  30579. (WebCore::InspectorCSSStore::getRuleSourceData):
  30580. (WebCore::InspectorCSSStore::extractRanges):
  30581. (WebCore::InspectorCSSStore::getStyleAttributeRanges):
  30582. * inspector/InspectorCSSStore.h:
  30583. * inspector/InspectorDOMAgent.cpp:
  30584. (WebCore::InspectorDOMAgent::getStyleSourceData):
  30585. 2010-10-06 Dirk Schulze <krit@webkit.org>
  30586. Added reviewer to commit r69187.
  30587. 2010-10-06 Dirk Schulze <krit@webkit.org>
  30588. Reviewed by Nikolas Zimmermann.
  30589. SVG feMorphology - big radii cause huge ImageBuffer sizes
  30590. https://bugs.webkit.org/show_bug.cgi?id=47263
  30591. The current code in FEMorphology::determineAbsolutePaintRect calculates the smallest paint rect by inflate the paint rect
  30592. of a previous effect with the radius. This was meant as an optimization, but I forgot to clip the calculated image size
  30593. by the maximal effect size. This caused huge image sizes for big radii.
  30594. This is covered by svg/filters/feMorphology-invalid-radius.svg and fixes the crashes on Windows and Snow Leopard bots.
  30595. * platform/graphics/filters/FEMorphology.cpp:
  30596. (WebCore::FEMorphology::determineAbsolutePaintRect):
  30597. 2010-10-06 Alejandro G. Castro <alex@igalia.com>
  30598. Reviewed by Dirk Schulze.
  30599. Fixed crash in gtk bots (filter-empty-g.svg) after r69181.
  30600. * rendering/RenderSVGResourceFilter.cpp:
  30601. (WebCore::RenderSVGResourceFilter::postApplyResource):
  30602. 2010-10-06 Antonio Gomes <agomes@rim.org>
  30603. Reviewed by Kenneth Rohde Christiansen.
  30604. Rename HitTestResult::rectFromPoint to rectForPoint
  30605. https://bugs.webkit.org/show_bug.cgi?id=47261
  30606. As per Kenneth Christiansen request inhttps://bugs.webkit.org/show_bug.cgi?id=46336#c20.
  30607. * WebCore.exp.in:
  30608. * dom/Document.cpp:
  30609. (WebCore::Document::nodesFromRect):
  30610. * rendering/EllipsisBox.cpp:
  30611. (WebCore::EllipsisBox::nodeAtPoint):
  30612. * rendering/HitTestResult.cpp:
  30613. (WebCore::HitTestResult::addNodeToRectBasedTestResult):
  30614. (WebCore::HitTestResult::rectForPoint):
  30615. * rendering/HitTestResult.h:
  30616. (WebCore::HitTestResult::rectForPoint):
  30617. * rendering/InlineFlowBox.cpp:
  30618. (WebCore::InlineFlowBox::nodeAtPoint):
  30619. * rendering/InlineTextBox.cpp:
  30620. (WebCore::InlineTextBox::nodeAtPoint):
  30621. * rendering/RenderBlock.cpp:
  30622. (WebCore::RenderBlock::nodeAtPoint):
  30623. (WebCore::RenderBlock::hitTestColumns):
  30624. * rendering/RenderBox.cpp:
  30625. (WebCore::RenderBox::nodeAtPoint):
  30626. * rendering/RenderLayer.cpp:
  30627. (WebCore::RenderLayer::hitTestLayer):
  30628. (WebCore::RenderLayer::hitTestChildLayerColumns):
  30629. * rendering/RenderTable.cpp:
  30630. (WebCore::RenderTable::nodeAtPoint):
  30631. * rendering/RenderTableSection.cpp:
  30632. (WebCore::RenderTableSection::nodeAtPoint):
  30633. 2010-10-06 Dirk Schulze <krit@webkit.org>
  30634. Reviewed by Martin Robinson.
  30635. SVGs with filters look grainy when scaled
  30636. https://bugs.webkit.org/show_bug.cgi?id=5526
  30637. Fixed issues on Cairos shadow implementation after the changes to FilterEffects.
  30638. Cairo calculates the inflation of the effect rect itself. Respect this for FEGaussianBlur.
  30639. This is just a temporary solution, since Cairo and Qt will use ContextShadow soon.
  30640. * platform/graphics/GraphicsContext.h:
  30641. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  30642. (WebCore::drawBorderlessRectShadow):
  30643. (WebCore::GraphicsContext::applyPlatformShadow):
  30644. (WebCore::GraphicsContext::createShadowMask):
  30645. (WebCore::GraphicsContext::drawTiledShadow):
  30646. (WebCore::GraphicsContext::fillRoundedRect):
  30647. * platform/graphics/filters/ImageBufferFilter.cpp:
  30648. (WebCore::ImageBufferFilter::ImageBufferFilter):
  30649. (WebCore::ImageBufferFilter::create):
  30650. * platform/graphics/filters/ImageBufferFilter.h:
  30651. (WebCore::ImageBufferFilter::filterRegion):
  30652. (WebCore::ImageBufferFilter::sourceImageRect):
  30653. 2010-10-06 Nikolas Zimmermann <nzimmermann@rim.com>
  30654. Reviewed by Dirk Schulze.
  30655. Only execute first SVG text layout phase if needed
  30656. https://bugs.webkit.org/show_bug.cgi?id=47254
  30657. The first SVG text layout phase which computes the per-character metrics and extracts
  30658. the x/y/dx/dy/rotate values from the SVG DOM is currently executed upon every RenderSVGText::layout() call.
  30659. Optimize this, by only calling it:
  30660. - if x/y/dx/dy/rotate value lists change
  30661. - the style of a RenderSVGInlineText changes (eg. font-size changes influence metrics)
  30662. - the text content of any of the children in the <text> subtree change
  30663. No change in layout tests, a pure performance change - covered by existing tests.
  30664. * rendering/RenderSVGResourceGradient.cpp:
  30665. (WebCore::createMaskAndSwapContextForTextGradient): Adapt to renames, use RenderSVGText::locateRenderSVGTextAncestor().
  30666. (WebCore::clipToTextMask): Ditto.
  30667. * rendering/SVGRenderSupport.cpp:
  30668. * rendering/SVGRenderSupport.h: Move findTreeRootObject to RenderSVGText::locateRenderSVGTextAncestor().
  30669. * rendering/svg/RenderSVGInline.cpp:
  30670. (WebCore::RenderSVGInline::objectBoundingBox): adapt to renames, use RenderSVGText::locateRenderSVGTextAncestor().
  30671. (WebCore::RenderSVGInline::strokeBoundingBox): Ditto.
  30672. (WebCore::RenderSVGInline::repaintRectInLocalCoordinates): Ditto.
  30673. (WebCore::RenderSVGInline::absoluteQuads): Ditto.
  30674. * rendering/svg/RenderSVGInlineText.cpp:
  30675. (WebCore::RenderSVGInlineText::styleDidChange): Call setNeedsPositioningValuesUpdate() on the RenderSVGText root object, if diff == StyleDifferenceLayout.
  30676. * rendering/svg/RenderSVGText.cpp:
  30677. (WebCore::RenderSVGText::RenderSVGText): Initialize m_needsPositioningValuesUpdate.
  30678. (WebCore::RenderSVGText::locateRenderSVGTextAncestor): New helper function, moved from SVGRenderSupport, to a more sensible place.
  30679. (WebCore::RenderSVGText::layout): Only execute the first SVG text layout phase, if m_needsPositioningValuesUpdate=true.
  30680. * rendering/svg/RenderSVGText.h:
  30681. (WebCore::RenderSVGText::setNeedsPositioningValuesUpdate):
  30682. (WebCore::toRenderSVGText): Add new helper casting methods, like most other renderers have.
  30683. * svg/SVGTextPositioningElement.cpp:
  30684. (WebCore::updatePositioningValuesInRenderer):
  30685. (WebCore::SVGTextPositioningElement::svgAttributeChanged): If x/y/dx/dy/rotate changes, call setNeedsPositioningValuesUpdate on the RenderSVGText root object.
  30686. (WebCore::SVGTextPositioningElement::childrenChanged): If any children changes (addition, removal), do the same.
  30687. * svg/SVGTextPositioningElement.h:
  30688. 2010-10-05 Andrey Kosyakov <caseq@chromium.org>
  30689. Reviewed by Yury Semikhatsky.
  30690. Web Inspector: [Extensions API] Expose access to resource bodies
  30691. Added support for encoding resource in WebInspector.getResourceContent()
  30692. https://bugs.webkit.org/show_bug.cgi?id=45953
  30693. * inspector/Inspector.idl: Added encoding parameter to getResourceContent()
  30694. * inspector/InspectorController.cpp:
  30695. (WebCore::InspectorController::getResourceContent):
  30696. * inspector/InspectorController.h:
  30697. * inspector/InspectorResource.cpp: Added sourceBytes() to return encoded representation of resource's binary body.
  30698. (WebCore::InspectorResource::sourceBytes):
  30699. * inspector/InspectorResource.h:
  30700. * inspector/front-end/ExtensionAPI.js:
  30701. (WebInspector.injectedExtensionAPI.Resources.prototype.getContent):
  30702. * inspector/front-end/ExtensionServer.js:
  30703. (WebInspector.ExtensionServer):
  30704. (WebInspector.ExtensionServer.prototype._onGetResourceContent):
  30705. (WebInspector.ExtensionServer.prototype._onGetResourceContent.onContentAvailable):
  30706. (WebInspector.getEncodedResourceContent):
  30707. * inspector/front-end/NetworkPanel.js:
  30708. (WebInspector.getResourceContent):
  30709. * inspector/front-end/ResourcesPanel.js:
  30710. (WebInspector.getResourceContent):
  30711. 2010-10-06 David Hyatt <hyatt@apple.com>
  30712. Reviewed by Dan Bernstein.
  30713. https://bugs.webkit.org/show_bug.cgi?id=47235
  30714. Make "lr" block-flow fieldsets work.
  30715. (1) Patched html.css rules for legends and fieldsets to use logical margins and padding.
  30716. (2) Converted just enough of computePreferredLogicalWidths to make basic examples work.
  30717. (3) Removed the extra border drawing code from fieldsets so that the "clip out the legend" approach
  30718. is now just always used. It's silly to keep the old border drawing code in (which has already gotten out
  30719. of sync with the base class) just to avoid a save/restore and some clipping.
  30720. (4) Modified the layout/painting routines to place the legend properly and to be able to draw it in
  30721. both the top and the left borders.
  30722. Added fast/blockflow/fieldsets.html
  30723. * css/html.css:
  30724. (legend):
  30725. (fieldset):
  30726. * rendering/RenderBlock.cpp:
  30727. (WebCore::RenderBlock::determineLogicalLeftPositionForChild):
  30728. (WebCore::RenderBlock::setLogicalLeftForChild):
  30729. (WebCore::RenderBlock::setLogicalTopForChild):
  30730. (WebCore::RenderBlock::layoutBlockChild):
  30731. (WebCore::RenderBlock::computePreferredLogicalWidths):
  30732. * rendering/RenderBlock.h:
  30733. * rendering/RenderFieldset.cpp:
  30734. (WebCore::RenderFieldset::layoutLegend):
  30735. (WebCore::RenderFieldset::paintBoxDecorations):
  30736. (WebCore::RenderFieldset::paintMask):
  30737. * rendering/RenderFieldset.h:
  30738. 2010-10-06 Patrick Gansterer <paroga@webkit.org>
  30739. Reviewed by Darin Adler.
  30740. Move parseDataUrl() from CURL into own file
  30741. https://bugs.webkit.org/show_bug.cgi?id=41462
  30742. Move the data URL parsing algorithm into a new file to use it in ResourceHandleWin too.
  30743. * CMakeLists.txt:
  30744. * WebCore.gypi:
  30745. * WebCore.vcproj/WebCore.vcproj:
  30746. * platform/network/DataURL.cpp: Added.
  30747. (WebCore::handleDataURL):
  30748. * platform/network/DataURL.h: Added.
  30749. * platform/network/curl/ResourceHandleManager.cpp:
  30750. (WebCore::ResourceHandleManager::dispatchSynchronousJob):
  30751. (WebCore::ResourceHandleManager::startJob):
  30752. * platform/network/win/ResourceHandleWin.cpp:
  30753. (WebCore::ResourceHandle::start):
  30754. (WebCore::ResourceHandle::fileLoadTimer):
  30755. 2010-10-06 Dirk Schulze <krit@webkit.org>
  30756. Reviewed by Nikolas Zimmermann.
  30757. SVGs with filters look grainy when scaled
  30758. https://bugs.webkit.org/show_bug.cgi?id=5526
  30759. SVG filter effects need smarter size calculation
  30760. https://bugs.webkit.org/show_bug.cgi?id=31370
  30761. SVG elements use Filters before own transformations
  30762. https://bugs.webkit.org/show_bug.cgi?id=32486
  30763. Calculate all filter results in device space instead of the filtered objects user space. This change is similar to
  30764. the patches for SVG Pattern and SVG Masker before. It avoids pixelation and guarantees smooth filter results for
  30765. every scale level and is independent of any transformation to the target element or any ancester of the target.
  30766. The second part of this patch reduces the size of every effect to the smallest affected region instead of the complete
  30767. filter primitive subregion (http://www.w3.org/TR/SVG/filters.html#FilterPrimitiveSubRegion). We just use the subregion
  30768. as clipping region, like mentioned in the SVG specification, to make the affected region even smaller now.
  30769. This is a huge speed up. The ECMA cloud (http://ejohn.org/files/ecma-cloud.svg) is more than 100 times faster on Gtk and
  30770. renders in less than a second.
  30771. Some examples on svg-wow.org can be viewed the first time now, since the subregions were much bigger than the affected
  30772. region.
  30773. There's still more potential to speed up filters, by further reducing the ImageBuffer sizes.
  30774. Renamed repaintRectInLocalCoordinates to absolutePaintRect, since all coordinates are in device space instead of the
  30775. user space now.
  30776. The absolute paint rect is calculated by determineAbsolutePaintRect() and gets called by FilterEffect::effectContext() on
  30777. applying the effect.
  30778. Partly rewrote filter resolution (http://www.w3.org/TR/SVG/filters.html#FilterElementFilterResAttribute) to work with the
  30779. new concept. This also corrects the old behavior to match the SVG specification.
  30780. Tests: svg/filters/filterRes1.svg
  30781. svg/filters/filterRes2.svg
  30782. svg/filters/filterRes3.svg
  30783. * platform/graphics/cairo/GraphicsContextCairo.cpp: Call setAbsolutePaintRect instead of setRepaintRectInLocalCoordinates.
  30784. (WebCore::GraphicsContext::createShadowMask):
  30785. * platform/graphics/filters/FEBlend.cpp: Renamed repaintRectInLocalCoordinates to absolutePaintRect.
  30786. (WebCore::FEBlend::apply):
  30787. * platform/graphics/filters/FEColorMatrix.cpp: Ditto.
  30788. (WebCore::FEColorMatrix::apply):
  30789. * platform/graphics/filters/FEComponentTransfer.cpp: Ditto.
  30790. (WebCore::FEComponentTransfer::apply):
  30791. * platform/graphics/filters/FEComposite.cpp: Ditto.
  30792. (WebCore::FEComposite::determineAbsolutePaintRect):
  30793. (WebCore::FEComposite::apply):
  30794. * platform/graphics/filters/FEComposite.h:
  30795. * platform/graphics/filters/FEConvolveMatrix.cpp: Ditto.
  30796. (WebCore::FEConvolveMatrix::apply):
  30797. * platform/graphics/filters/FEConvolveMatrix.h:
  30798. (WebCore::FEConvolveMatrix::determineAbsolutePaintRect):
  30799. * platform/graphics/filters/FEDisplacementMap.cpp: Ditto.
  30800. (WebCore::FEDisplacementMap::apply):
  30801. * platform/graphics/filters/FEDisplacementMap.h:
  30802. (WebCore::FEDisplacementMap::determineAbsolutePaintRect):
  30803. * platform/graphics/filters/FEFlood.cpp: Ditto.
  30804. (WebCore::FEFlood::apply):
  30805. * platform/graphics/filters/FEFlood.h:
  30806. (WebCore::FEFlood::determineAbsolutePaintRect):
  30807. * platform/graphics/filters/FEGaussianBlur.cpp: Ditto.
  30808. (WebCore::calculateKernelSize):
  30809. (WebCore::FEGaussianBlur::determineAbsolutePaintRect):
  30810. (WebCore::FEGaussianBlur::apply):
  30811. * platform/graphics/filters/FEGaussianBlur.h:
  30812. * platform/graphics/filters/FELighting.cpp: Ditto.
  30813. (WebCore::FELighting::apply):
  30814. * platform/graphics/filters/FEMerge.cpp: Ditto.
  30815. (WebCore::FEMerge::apply):
  30816. * platform/graphics/filters/FEMorphology.cpp: Ditto.
  30817. (WebCore::FEMorphology::determineAbsolutePaintRect):
  30818. (WebCore::FEMorphology::apply):
  30819. * platform/graphics/filters/FEMorphology.h:
  30820. * platform/graphics/filters/FEOffset.cpp: Ditto.
  30821. (WebCore::FEOffset::determineAbsolutePaintRect):
  30822. (WebCore::FEOffset::apply):
  30823. * platform/graphics/filters/FEOffset.h:
  30824. * platform/graphics/filters/FETile.cpp: Ditto.
  30825. (WebCore::FETile::determineFilterPrimitiveSubregion):
  30826. (WebCore::FETile::apply):
  30827. * platform/graphics/filters/FETile.h:
  30828. (WebCore::FETile::determineAbsolutePaintRect):
  30829. * platform/graphics/filters/FETurbulence.cpp: Ditto.
  30830. (WebCore::FETurbulence::apply):
  30831. * platform/graphics/filters/FETurbulence.h:
  30832. (WebCore::FETurbulence::determineAbsolutePaintRect):
  30833. * platform/graphics/filters/Filter.h:
  30834. (WebCore::Filter::applyHorizontalScale): Map horizontal effect values to absolute coordinates.
  30835. (WebCore::Filter::applyVerticalScale): Map vertical effect values to absolute coordinates.
  30836. (WebCore::Filter::mapAbsolutePointToLocalPoint):
  30837. (WebCore::Filter::filterRegionInUserSpace):
  30838. * platform/graphics/filters/FilterEffect.cpp: Ditto.
  30839. (WebCore::FilterEffect::determineFilterPrimitiveSubregion):
  30840. (WebCore::FilterEffect::determineAbsolutePaintRect):
  30841. (WebCore::FilterEffect::requestedRegionOfInputImageData):
  30842. (WebCore::FilterEffect::drawingRegionOfInputImage):
  30843. (WebCore::FilterEffect::effectContext):
  30844. * platform/graphics/filters/FilterEffect.h:
  30845. (WebCore::FilterEffect::absolutePaintRect):
  30846. (WebCore::FilterEffect::setAbsolutePaintRect):
  30847. (WebCore::FilterEffect::maxEffectRect): The subregion in absolute coordinates for SVG.
  30848. (WebCore::FilterEffect::setMaxEffectRect):
  30849. * platform/graphics/filters/SourceAlpha.cpp: Ditto.
  30850. (WebCore::SourceAlpha::determineAbsolutePaintRect):
  30851. (WebCore::SourceAlpha::apply):
  30852. * platform/graphics/filters/SourceAlpha.h:
  30853. * platform/graphics/filters/SourceGraphic.cpp: Ditto.
  30854. (WebCore::SourceGraphic::determineAbsolutePaintRect):
  30855. (WebCore::SourceGraphic::apply):
  30856. * platform/graphics/filters/SourceGraphic.h:
  30857. * rendering/RenderSVGResourceFilter.cpp:
  30858. (WebCore::RenderSVGResourceFilter::applyResource):
  30859. (WebCore::RenderSVGResourceFilter::postApplyResource):
  30860. * rendering/RenderSVGResourceFilter.h:
  30861. (WebCore::FilterData::FilterData):
  30862. * svg/graphics/filters/SVGFEImage.cpp: Ditto.
  30863. (WebCore::FEImage::apply):
  30864. * svg/graphics/filters/SVGFEImage.h:
  30865. (WebCore::FEImage::determineAbsolutePaintRect):
  30866. * svg/graphics/filters/SVGFilter.cpp:
  30867. (WebCore::SVGFilter::SVGFilter):
  30868. (WebCore::SVGFilter::determineFilterPrimitiveSubregion):
  30869. (WebCore::SVGFilter::applyHorizontalScale):
  30870. (WebCore::SVGFilter::applyVerticalScale):
  30871. (WebCore::SVGFilter::create):
  30872. * svg/graphics/filters/SVGFilter.h:
  30873. (WebCore::SVGFilter::effectBoundingBoxMode):
  30874. (WebCore::SVGFilter::filterRegionInUserSpace):
  30875. (WebCore::SVGFilter::filterRegion):
  30876. (WebCore::SVGFilter::mapAbsolutePointToLocalPoint): Map absolute point to local point in userspace.
  30877. (WebCore::SVGFilter::sourceImageRect):
  30878. (WebCore::SVGFilter::maxImageSize):
  30879. 2010-10-06 Pavel Podivilov <podivilov@chromium.org>
  30880. Reviewed by Yury Semikhatsky.
  30881. Web Inspector: add "Set Breakpoint" item to XHR resource context menu.
  30882. https://bugs.webkit.org/show_bug.cgi?id=47085
  30883. * English.lproj/localizedStrings.js:
  30884. * inspector/front-end/ResourcesPanel.js:
  30885. (WebInspector.ResourcesPanel.prototype._contextMenu):
  30886. 2010-10-05 Kinuko Yasuda <kinuko@chromium.org>
  30887. Reviewed by David Levin.
  30888. Add idl and mock classes for FileSystemSync for FileSystem API
  30889. https://bugs.webkit.org/show_bug.cgi?id=46405
  30890. Added bunch of *Sync classes, plus refactored some classes:
  30891. Added DOMFileSystemBase as a common base class for DOMFileSystem and
  30892. DOMFileSystemSync.
  30893. Added EntryBase as a common base class for Entry and EntrySync.
  30894. Added DirectoryReaderBase as a common base class for DirectoryReader and
  30895. DirectoryReaderSync.
  30896. Test: fast/filesystem/workers/
  30897. * CMakeLists.txt: Added new files.
  30898. * DerivedSources.cpp: Added new files.
  30899. * DerivedSources.make: Added new files.
  30900. * GNUmakefile.am: Added new files.
  30901. * WebCore.gypi: Added new files.
  30902. * WebCore.pri: Added new files.
  30903. * WebCore.pro: Added new files.
  30904. * WebCore.vcproj/WebCore.vcproj: Added new files. Also removed the duplicated fileapi\FileEntry.cpp entry.
  30905. * WebCore.xcodeproj/project.pbxproj: Added new files.
  30906. * bindings/js/JSDirectoryEntrySyncCustom.cpp: Added.
  30907. * bindings/js/JSEntrySyncCustom.cpp: Added.
  30908. * bindings/v8/custom/V8DirectoryEntrySyncCustom.cpp: Added.
  30909. * bindings/v8/custom/V8EntrySyncCustom.cpp: Added.
  30910. * fileapi/DOMFileSystemBase.cpp: Added.
  30911. * fileapi/DOMFileSystemBase.h: Added.
  30912. * fileapi/DOMFileSystemSync.cpp: Added.
  30913. * fileapi/DOMFileSystemSync.h: Added.
  30914. * fileapi/DOMFileSystemSync.idl: Added.
  30915. * fileapi/DirectoryEntrySync.cpp: Added.
  30916. * fileapi/DirectoryEntrySync.h: Added.
  30917. * fileapi/DirectoryEntrySync.idl: Added.
  30918. * fileapi/DirectoryReaderBase.h: Added.
  30919. * fileapi/DirectoryReaderSync.cpp: Added.
  30920. * fileapi/DirectoryReaderSync.h: Added.
  30921. * fileapi/DirectoryReaderSync.idl: Added.
  30922. * fileapi/EntryArraySync.cpp: Added.
  30923. * fileapi/EntryArraySync.h: Added.
  30924. * fileapi/EntryArraySync.idl: Added.
  30925. * fileapi/EntryBase.h: Added.
  30926. * fileapi/EntrySync.cpp: Added.
  30927. * fileapi/EntrySync.h: Added.
  30928. * fileapi/EntrySync.idl: Added.
  30929. * fileapi/FileEntrySync.cpp: Added.
  30930. * fileapi/FileEntrySync.h: Added.
  30931. * fileapi/FileEntrySync.idl: Added.
  30932. 2010-10-05 Kent Tamura <tkent@chromium.org>
  30933. Reviewed by Dimitri Glazkov.
  30934. REGRESSION (r67166): "Placeholder" text remains in input box after 2nd focus()
  30935. https://bugs.webkit.org/show_bug.cgi?id=45940
  30936. Test: fast/forms/input-placeholder-focus-twice.html
  30937. * html/HTMLFormControlElement.h: Make supportsPlaceholder() public.
  30938. * rendering/RenderTextControlSingleLine.cpp:
  30939. (WebCore::RenderTextControlSingleLine::updateFromElement):
  30940. We always need to update the renderer value with the DOM value if
  30941. the element supports the placeholder feature.
  30942. Note: the placeholder feature and "unacceptable renderer value"
  30943. are exclusive.
  30944. 2010-10-05 Kyusun Kim <maniagoon@company100.net>
  30945. Reviewed by Kent Tamura.
  30946. [BREWMP] Translate key code in PlatformKeyboardEvent with IKeysMapping
  30947. https://bugs.webkit.org/show_bug.cgi?id=47234
  30948. Brew MP devices have a variey of key configurations and use modifiers to
  30949. input capital letters, symbols and special characters. Use IKeysMapping to translate key code.
  30950. * platform/brew/PlatformKeyboardEventBrew.cpp:
  30951. (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
  30952. 2010-10-05 W. James MacLean <wjmaclean@chromium.org>
  30953. Reviewed by James Robinson.
  30954. [chromium] Add mipmap support for ImageLayerChromium
  30955. https://bugs.webkit.org/show_bug.cgi?id=46493
  30956. Mipmap behaviour can be tested with existing tests.
  30957. Tests in LayoutTests/compositing/images/ will detect if
  30958. mipmaps fail.
  30959. * platform/graphics/chromium/ContentLayerChromium.cpp:
  30960. (WebCore::ContentLayerChromium::SharedValues::SharedValues):
  30961. (WebCore::isPowerOfTwo):
  30962. (WebCore::ContentLayerChromium::updateTextureRect):
  30963. * platform/graphics/chromium/ContentLayerChromium.h:
  30964. (WebCore::ContentLayerChromium::SharedValues::npotSupported):
  30965. * platform/graphics/chromium/ImageLayerChromium.cpp:
  30966. (WebCore::ImageLayerChromium::updateContents):
  30967. 2010-10-05 Adam Barth <abarth@webkit.org>
  30968. Reviewed by Darin Adler.
  30969. Issue in treebuilder parsing related to table tags
  30970. https://bugs.webkit.org/show_bug.cgi?id=47190
  30971. Update ASSERT to match the spec and our behavior.
  30972. * html/parser/HTMLTreeBuilder.cpp:
  30973. (WebCore::HTMLTreeBuilder::processEndTagForInCell):
  30974. 2010-10-05 Victoria Kirst <vrk@google.com>
  30975. Reviewed by James Robinson.
  30976. VideoLayerChromium releases old resources if the LayerRenderer changes.
  30977. https://bugs.webkit.org/show_bug.cgi?id=47030
  30978. Refactored LayerChromium to have a virtual cleanupResources() method
  30979. that will release textures/other context-dependent resources when a
  30980. LayerRenderer changes. ContentLayerChromium and VideoLayerChromium now
  30981. override this method to perform cleanup.
  30982. * platform/graphics/chromium/ContentLayerChromium.cpp:
  30983. * platform/graphics/chromium/ContentLayerChromium.h:
  30984. * platform/graphics/chromium/LayerChromium.cpp:
  30985. (WebCore::LayerChromium::setLayerRenderer):
  30986. * platform/graphics/chromium/LayerChromium.h:
  30987. (WebCore::LayerChromium::cleanupResources):
  30988. * platform/graphics/chromium/VideoLayerChromium.cpp:
  30989. (WebCore::VideoLayerChromium::~VideoLayerChromium):
  30990. (WebCore::VideoLayerChromium::cleanupResources):
  30991. * platform/graphics/chromium/VideoLayerChromium.h:
  30992. 2010-10-05 Kinuko Yasuda <kinuko@chromium.org>
  30993. Reviewed by Jian Li.
  30994. FileEntry::file needs to be implemented
  30995. https://bugs.webkit.org/show_bug.cgi?id=47192
  30996. Test: fast/filesystem/file-from-file-entry.html
  30997. * fileapi/FileEntry.cpp:
  30998. (WebCore::FileEntry::file): Implemented.
  30999. 2010-09-29 Alpha Lam <hclam@chromium.org>
  31000. Reviewed by James Robinson.
  31001. Render textures in video frame directly.
  31002. https://bugs.webkit.org/show_bug.cgi?id=46765
  31003. Render textures in VideoLayerChromium directly if the video frame type
  31004. is GL texture. In the future VideoLayerChromium will not allocate
  31005. textures and perform textures upload as those operations will be done
  31006. in Chromium to minimize memory copy. This patch will help moving toward
  31007. this direction and facilitate hardware video decoding.
  31008. * platform/graphics/chromium/VideoFrameChromium.h:
  31009. * platform/graphics/chromium/VideoFrameProvider.h:
  31010. (WebCore::VideoFrameProvider::~VideoFrameProvider):
  31011. * platform/graphics/chromium/VideoLayerChromium.cpp:
  31012. (WebCore::VideoLayerChromium::VideoLayerChromium):
  31013. (WebCore::VideoLayerChromium::~VideoLayerChromium):
  31014. (WebCore::VideoLayerChromium::updateContents):
  31015. (WebCore::VideoLayerChromium::draw):
  31016. (WebCore::VideoLayerChromium::releaseCurrentFrame):
  31017. (WebCore::VideoLayerChromium::resetFrameParameters):
  31018. (WebCore::VideoLayerChromium::saveCurrentFrame):
  31019. * platform/graphics/chromium/VideoLayerChromium.h:
  31020. (WebCore::VideoLayerChromium::SharedValues::initialized):
  31021. 2010-10-05 Fady Samuel <fsamuel@chromium.org>
  31022. Reviewed by Darin Adler.
  31023. REGRESSION (r65539): One pixel white gaps when scrolling Trac changeset pages
  31024. https://bugs.webkit.org/show_bug.cgi?id=45131
  31025. When border-collapse: separate property is set on the table, paintObject
  31026. may skip repainting cells, if the dirty region only touches one row/col of pixels.
  31027. Test: fast/table/simple_paint_separate_borders.html
  31028. * rendering/RenderTableSection.cpp:
  31029. (WebCore::RenderTableSection::paintObject):
  31030. Don't subtract one from the right and bottom of the dirty paint rect.
  31031. 2010-10-05 Sanjeev Radhakrishnan <sanjeevr@chromium.org>
  31032. Reviewed by Darin Fisher.
  31033. PluginDocument now holds on to the created plugin node so that the pluginNode() and pluginWidget() methods can return the correct node.
  31034. https://bugs.webkit.org/show_bug.cgi?id=47129
  31035. * html/PluginDocument.cpp:
  31036. (WebCore::PluginDocumentParser::createDocumentStructure):
  31037. (WebCore::PluginDocument::pluginWidget):
  31038. (WebCore::PluginDocument::pluginNode):
  31039. * html/PluginDocument.h:
  31040. (WebCore::PluginDocument::setPluginNode):
  31041. 2010-10-05 Andreas Kling <kling@webkit.org>
  31042. Reviewed by Tor Arne Vestbø.
  31043. [Qt] Re-enable single-NPP_SetWindow quirk for 64-bit
  31044. https://bugs.webkit.org/show_bug.cgi?id=45363
  31045. This is still causing trouble for people, so let's put the
  31046. quirk back until we can figure this out properly.
  31047. * plugins/PluginPackage.cpp:
  31048. (WebCore::PluginPackage::determineQuirks):
  31049. 2010-10-05 Jian Li <jianli@chromium.org>
  31050. Reviewed by Nate Chapin.
  31051. [V8] Add FileReader to active DOM map
  31052. https://bugs.webkit.org/show_bug.cgi?id=47205
  31053. We need to have a custom FileReader V8 constructor in order to add object
  31054. into active DOM map to prevent it from GC-ed when it is still in-use.
  31055. * Android.v8bindings.mk:
  31056. * WebCore.gypi:
  31057. * bindings/scripts/CodeGeneratorV8.pm:
  31058. * bindings/v8/custom/V8FileReaderCustom.cpp: Added.
  31059. (WebCore::V8FileReader::constructorCallback):
  31060. * fileapi/FileReader.idl:
  31061. 2010-10-05 Vincent Scheib <scheib@chromium.org>
  31062. Reviewed by Kenneth Russell.
  31063. [chromium] 51304 GPU compositor resorts to "slow" text rendering for base page layer
  31064. https://bugs.webkit.org/show_bug.cgi?id=47193
  31065. Test: Accelerated compositor test infrastructure still coming online. Tested manually.
  31066. * platform/graphics/chromium/LayerRendererChromium.cpp:
  31067. (WebCore::LayerRendererChromium::setRootLayerCanvasSize):
  31068. (WebCore::LayerRendererChromium::prepareToDrawLayers):
  31069. (WebCore::LayerRendererChromium::drawLayers):
  31070. 2010-10-05 Nico Weber <thakis@chromium.org>
  31071. Reviewed by Andreas Kling.
  31072. Fix clang build
  31073. https://bugs.webkit.org/show_bug.cgi?id=47198
  31074. * page/Chrome.h:
  31075. Declare ViewportArguments as struct, not as class.
  31076. 2010-10-05 David Hyatt <hyatt@apple.com>
  31077. Reviewed by Sam Weinig.
  31078. https://bugs.webkit.org/show_bug.cgi?id=47204
  31079. Make isSelfCollapsingBlock use logical height instead of height in all its checks.
  31080. Added fast/blockflow/self-collapsing-block.html
  31081. * rendering/RenderBlock.cpp:
  31082. (WebCore::RenderBlock::isSelfCollapsingBlock):
  31083. 2010-10-05 Eric Uhrhane <ericu@chromium.org>
  31084. Reviewed by David Levin.
  31085. Relax restrictions on FileWriter::didWrite calls
  31086. https://bugs.webkit.org/show_bug.cgi?id=47139
  31087. No new tests; they're still waiting on the first implementation.
  31088. * fileapi/FileWriter.cpp:
  31089. (WebCore::FileWriter::FileWriter):
  31090. (WebCore::FileWriter::write):
  31091. (WebCore::FileWriter::didWrite):
  31092. * fileapi/FileWriter.h:
  31093. 2010-10-05 Daniel Cheng <dcheng@chromium.org>
  31094. Reviewed by Tony Chang.
  31095. [chromium] getData('text/uri-list') should return the same thing that was passed to setData('text/uri-list')
  31096. https://bugs.webkit.org/show_bug.cgi?id=46943
  31097. We no longer parse the input of setData('text/uri-list') and only store
  31098. the valid URLs that were parsed out.
  31099. Test: editing/pasteboard/dataTransfer-setData-getData.html
  31100. * platform/chromium/ChromiumDataObject.cpp:
  31101. (WebCore::ChromiumDataObject::clearData):
  31102. (WebCore::ChromiumDataObject::clearAllExceptFiles):
  31103. (WebCore::ChromiumDataObject::types):
  31104. (WebCore::ChromiumDataObject::getData):
  31105. (WebCore::ChromiumDataObject::setData):
  31106. * platform/chromium/ChromiumDataObject.h:
  31107. 2010-10-05 Martin Robinson <mrobinson@igalia.com>
  31108. Reviewed by Xan Lopez.
  31109. [GTK] Support FontPlatformData::isFixedPitch for custom fonts
  31110. https://bugs.webkit.org/show_bug.cgi?id=47124
  31111. Instead of determining whether or not a font is a fixed-width font
  31112. lazily, do it up front. For fonts not backed by Fontconfig patterns,
  31113. fetch information about whether or not the font is fixed-width from
  31114. the FreeType face.
  31115. No new tests as this should not change functionality.
  31116. * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
  31117. (WebCore::FontPlatformData::FontPlatformData): Initialize the m_fixedWidth member
  31118. from the Fontconfig pattern or the FreeType face.
  31119. (WebCore::FontPlatformData::operator=): Copy over the m_fixedWidth member.
  31120. (WebCore::FontPlatformData::isFixedPitch): Just return the value of the m_fixedWidth member.
  31121. * platform/graphics/cairo/FontPlatformDataFreeType.h: Added an m_fixedWidth member.
  31122. 2010-10-05 David Hyatt <hyatt@apple.com>
  31123. Reviewed by Anders Carlsson.
  31124. https://bugs.webkit.org/show_bug.cgi?id=47199
  31125. Make float positioning work in block layout with block children.
  31126. It doesn't work yet from inside line layout, since line layout is unpatched.
  31127. Added fast/blockflow/floats-in-block-layout.html
  31128. * rendering/RenderBlock.cpp:
  31129. (WebCore::RenderBlock::adjustFloatingBlock):
  31130. (WebCore::RenderBlock::setLogicalLeftForChild):
  31131. (WebCore::RenderBlock::setLogicalTopForChild):
  31132. (WebCore::RenderBlock::insertFloatingObject):
  31133. (WebCore::RenderBlock::positionNewFloats):
  31134. (WebCore::RenderBlock::logicalLeftOffsetForLine):
  31135. (WebCore::RenderBlock::logicalRightOffsetForLine):
  31136. * rendering/RenderBlock.h:
  31137. (WebCore::RenderBlock::FloatingObject::type):
  31138. (WebCore::RenderBlock::FloatingObject::renderer):
  31139. (WebCore::RenderBlock::logicalRightForFloat):
  31140. (WebCore::RenderBlock::setLogicalTopForFloat):
  31141. (WebCore::RenderBlock::setLogicalLeftForFloat):
  31142. (WebCore::RenderBlock::setLogicalHeightForFloat):
  31143. (WebCore::RenderBlock::setLogicalWidthForFloat):
  31144. 2010-10-05 Kimmo Kinnunen <kimmo.t.kinnunen@nokia.com>
  31145. Reviewed by Kenneth Rohde Christiansen.
  31146. [Qt] Web process crash when pressing modifiers in input field
  31147. https://bugs.webkit.org/show_bug.cgi?id=44935
  31148. Revert part of the http://trac.webkit.org/changeset/69105 due to a
  31149. test regression. Unix: Add ASSERTs to plugin related code. These
  31150. will fail if Qt WebKit2 is used with plugins, unless code is not
  31151. fixed before.
  31152. * plugins/qt/PluginViewQt.cpp:
  31153. (WebCore::setXKeyEventSpecificFields): Use qKeyEvent, Use ASSERT as a reminder.
  31154. 2010-10-05 Chris Rogers <crogers@google.com>
  31155. Reviewed by Kenneth Russell.
  31156. Add AudioBasicProcessorNode files
  31157. https://bugs.webkit.org/show_bug.cgi?id=46495
  31158. No new tests since audio API is not yet implemented.
  31159. * webaudio/AudioBasicProcessorNode.cpp: Added.
  31160. (WebCore::AudioBasicProcessorNode::AudioBasicProcessorNode):
  31161. (WebCore::AudioBasicProcessorNode::initialize):
  31162. (WebCore::AudioBasicProcessorNode::uninitialize):
  31163. (WebCore::AudioBasicProcessorNode::process):
  31164. (WebCore::AudioBasicProcessorNode::pullInputs):
  31165. (WebCore::AudioBasicProcessorNode::reset):
  31166. (WebCore::AudioBasicProcessorNode::checkNumberOfChannelsForInput):
  31167. (WebCore::AudioBasicProcessorNode::numberOfChannels):
  31168. * webaudio/AudioBasicProcessorNode.h: Added.
  31169. (WebCore::AudioBasicProcessorNode::processor):
  31170. 2010-10-05 Chris Marrin <cmarrin@apple.com>
  31171. Unreviewed.
  31172. The platform/graphics/gpu folder was mistakenly inside the filters folder.
  31173. I moved it to the right place in the Group Tree.
  31174. * WebCore.xcodeproj/project.pbxproj:
  31175. 2010-10-05 Chris Marrin <cmarrin@apple.com>
  31176. Reviewed by Adam Roben.
  31177. Fix ownership of GraphicsContext3D in SharedGraphicsContext3D to prevent early deallocation and crash
  31178. https://bugs.webkit.org/show_bug.cgi?id=47197
  31179. This is work in progress and the crash only happens with ACCELERATED_2D_CANVAS turned on (which is off
  31180. by default). Many existing test cases will crash before and after this patch.
  31181. * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
  31182. (WebCore::SharedGraphicsContext3D::create):
  31183. 2010-10-05 Tony Chang <tony@chromium.org>
  31184. Reviewed by Kent Tamura.
  31185. [chromium] properly paint really small scrollbar arrows on linux
  31186. https://bugs.webkit.org/show_bug.cgi?id=47109
  31187. * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
  31188. (WebCore::ScrollbarThemeChromiumLinux::buttonSize): Clamp button size based on available size. This matches what
  31189. we do on Win.
  31190. 2010-10-05 Nate Chapin <japhet@chromium.org>
  31191. Reviewed by David Levin.
  31192. Remove unused CachedResource::Status values (New and NotCached).
  31193. https://bugs.webkit.org/show_bug.cgi?id=47132
  31194. Refactor only, no new tests.
  31195. * loader/CachedResource.h:
  31196. * loader/CachedResourceLoader.cpp:
  31197. (WebCore::CachedResourceLoader::checkCacheObjectStatus):
  31198. 2010-10-04 Jeremy Orlow <jorlow@chromium.org>
  31199. Reviewed by Nate Chapin.
  31200. Rename get* and open*Cursor per the spec on IDBIndex
  31201. https://bugs.webkit.org/show_bug.cgi?id=46906
  31202. The spec changed so that:
  31203. IDBIndex.get -> getKey
  31204. IDBIndex.getObject -> get
  31205. IDBIndex.openCursor -> openKeyCursor
  31206. IDBIndex.openObjectCursor -> openCursor
  31207. Existing tests cover since this is just renaming stuff.
  31208. * storage/IDBIndex.cpp:
  31209. (WebCore::IDBIndex::openCursor):
  31210. (WebCore::IDBIndex::openKeyCursor):
  31211. (WebCore::IDBIndex::get):
  31212. (WebCore::IDBIndex::getKey):
  31213. * storage/IDBIndex.h:
  31214. * storage/IDBIndex.idl:
  31215. * storage/IDBIndexBackendImpl.cpp:
  31216. (WebCore::IDBIndexBackendImpl::openCursor):
  31217. (WebCore::IDBIndexBackendImpl::openKeyCursor):
  31218. (WebCore::IDBIndexBackendImpl::get):
  31219. (WebCore::IDBIndexBackendImpl::getKey):
  31220. * storage/IDBIndexBackendImpl.h:
  31221. * storage/IDBIndexBackendInterface.h:
  31222. 2010-10-05 Keith Kyzivat <keith.kyzivat@nokia.com>
  31223. Reviewed by Simon Hausmann.
  31224. [Qt] Fix breakage in RVCT 2.2 compile
  31225. https://bugs.webkit.org/show_bug.cgi?id=47187
  31226. Fix bug in RVCT 2.2 compile for Symbian^3 in html/canvas/Int32Array.h and
  31227. html/canvas/Uin8Array.h
  31228. For RVCT2.2, the using clause is unneeded, and can be omitted.
  31229. A Test case cannot be made for this since this is a build-related issue.
  31230. * html/canvas/Int32Array.h:
  31231. * html/canvas/Uint8Array.h:
  31232. 2010-10-04 Andrei Popescu <andreip@google.com>
  31233. Reviewed by Jeremy Orlow.
  31234. IDBDatabase::createObjectStore/removeObjectStore and IDBObjectStore::createIndex/removeIndex should be synchronous.
  31235. https://bugs.webkit.org/show_bug.cgi?id=46883
  31236. Makes the schema manipulation methods synchronous. Modifies the transaction
  31237. logic to support tasks that may have pending events as well as tasks that
  31238. don't have such events.
  31239. * storage/IDBDatabase.cpp:
  31240. (WebCore::IDBDatabase::createObjectStore):
  31241. (WebCore::IDBDatabase::removeObjectStore):
  31242. * storage/IDBDatabase.h:
  31243. * storage/IDBDatabase.idl:
  31244. * storage/IDBDatabaseBackendImpl.cpp:
  31245. (WebCore::IDBDatabaseBackendImpl::createObjectStore):
  31246. (WebCore::IDBDatabaseBackendImpl::createObjectStoreInternal):
  31247. (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
  31248. (WebCore::IDBDatabaseBackendImpl::removeObjectStoreInternal):
  31249. * storage/IDBDatabaseBackendImpl.h:
  31250. * storage/IDBDatabaseBackendInterface.h:
  31251. * storage/IDBIndexBackendImpl.cpp:
  31252. (WebCore::IDBIndexBackendImpl::IDBIndexBackendImpl):
  31253. * storage/IDBIndexBackendImpl.h:
  31254. (WebCore::IDBIndexBackendImpl::create):
  31255. (WebCore::IDBIndexBackendImpl::id):
  31256. (WebCore::IDBIndexBackendImpl::setId):
  31257. * storage/IDBObjectStore.cpp:
  31258. (WebCore::IDBObjectStore::createIndex):
  31259. (WebCore::IDBObjectStore::removeIndex):
  31260. * storage/IDBObjectStore.h:
  31261. * storage/IDBObjectStore.idl:
  31262. * storage/IDBObjectStoreBackendImpl.cpp:
  31263. (WebCore::IDBObjectStoreBackendImpl::IDBObjectStoreBackendImpl):
  31264. (WebCore::IDBObjectStoreBackendImpl::createIndex):
  31265. (WebCore::IDBObjectStoreBackendImpl::createIndexInternal):
  31266. (WebCore::IDBObjectStoreBackendImpl::removeIndex):
  31267. (WebCore::IDBObjectStoreBackendImpl::removeIndexInternal):
  31268. * storage/IDBObjectStoreBackendImpl.h:
  31269. (WebCore::IDBObjectStoreBackendImpl::create):
  31270. (WebCore::IDBObjectStoreBackendImpl::id):
  31271. (WebCore::IDBObjectStoreBackendImpl::setId):
  31272. (WebCore::IDBObjectStoreBackendImpl::autoIncrement):
  31273. * storage/IDBObjectStoreBackendInterface.h:
  31274. * storage/IDBTransactionBackendImpl.cpp:
  31275. (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
  31276. (WebCore::IDBTransactionBackendImpl::objectStore):
  31277. (WebCore::IDBTransactionBackendImpl::scheduleTask):
  31278. (WebCore::IDBTransactionBackendImpl::abort):
  31279. (WebCore::IDBTransactionBackendImpl::didCompleteTaskEvents):
  31280. (WebCore::IDBTransactionBackendImpl::run):
  31281. (WebCore::IDBTransactionBackendImpl::taskTimerFired):
  31282. (WebCore::IDBTransactionBackendImpl::taskEventTimerFired):
  31283. * storage/IDBTransactionBackendImpl.h:
  31284. 2010-10-05 Chris Fleizach <cfleizach@apple.com>
  31285. Reviewed by Darin Adler.
  31286. WAI-ARIA 'marquee' role live region uses aria-live="polite", should use aria-live="off"
  31287. https://bugs.webkit.org/show_bug.cgi?id=47185
  31288. Test: platform/mac/accessibility/aria-liveregion-marquee-default.html
  31289. * accessibility/AccessibilityRenderObject.cpp:
  31290. (WebCore::AccessibilityRenderObject::ariaLiveRegionStatus):
  31291. 2010-10-05 Martin Robinson <mrobinson@igalia.com>
  31292. Reviewed by Xan Lopez.
  31293. [GTK] Interior scrollbars do not draw their background properly
  31294. https://bugs.webkit.org/show_bug.cgi?id=47096
  31295. Correct the method that the GTK+ theme drawing code uses to
  31296. draw scrolled window backgrounds. Now it uses gtk_paint_shadow,
  31297. the same as the actual code from GTK+.
  31298. No new tests as this is very hard to write tests for. The bug only
  31299. manifests on some GTK+ themes and we have no test harness mechanism
  31300. for testing rendering with non-default GTK+ themes.
  31301. * platform/gtk/ScrollbarThemeGtk.cpp:
  31302. (WebCore::ScrollbarThemeGtk::paintScrollbarBackground): No longer
  31303. initialize the widget state, as it's unused by the callee.
  31304. (WebCore::ScrollbarThemeGtk::paint): Remove an inaccurate comment.
  31305. * platform/gtk/gtk2drawing.c:
  31306. (moz_gtk_scrolled_window_paint): Paint scrolled window backgrounds
  31307. with gtk_paint_shadow instead of gtk_paint_box.
  31308. 2010-10-05 Kwang Yul Seo <skyul@company100.net>
  31309. Reviewed by Kent Tamura.
  31310. [BREWMP] Use PlatformRefPtr instead of OwnPtr in FileSystem
  31311. https://bugs.webkit.org/show_bug.cgi?id=47025
  31312. PlatformRefPtr is a better choice here because all Brew MP instances are
  31313. reference counted.
  31314. * platform/brew/FileSystemBrew.cpp:
  31315. (WebCore::getFileSize):
  31316. (WebCore::fileExists):
  31317. (WebCore::deleteFile):
  31318. (WebCore::deleteEmptyDirectory):
  31319. (WebCore::canonicalPath):
  31320. (WebCore::makeAllDirectories):
  31321. (WebCore::openTemporaryFile):
  31322. 2010-10-05 Martin Robinson <mrobinson@igalia.com>
  31323. Reviewed by Gustavo Noronha Silva.
  31324. [GTK] Complex text rendering does not render custom fonts
  31325. https://bugs.webkit.org/show_bug.cgi?id=41091
  31326. For fonts that do not have a FontConfig pattern (including custom
  31327. fonts), fall back to the simple text rendering path. This is a work-
  31328. -around for not supporting Pango rendering with non-FontConfig fonts.
  31329. Test: platform/gtk/fonts/font-face-with-complex-text.html
  31330. * platform/graphics/gtk/FontGtk.cpp:
  31331. (WebCore::Font::drawComplexText): Fall back to the simple path for custom fonts.
  31332. (WebCore::Font::floatWidthForComplexText): Ditto.
  31333. (WebCore::Font::offsetForPositionForComplexText): Ditto.
  31334. (WebCore::Font::selectionRectForComplexText): Ditto.
  31335. 2010-10-05 Kwang Yul Seo <skyul@company100.net>
  31336. Reviewed by Kent Tamura.
  31337. [BREWMP] Use PlatformRefPtr in getDisplayInfo
  31338. https://bugs.webkit.org/show_bug.cgi?id=47023
  31339. Use PlatformRefPtr to release IBitmap* automatically.
  31340. * platform/brew/ScreenBrew.cpp:
  31341. (WebCore::getDisplayInfo):
  31342. 2010-10-05 Kristian Monsen <kristianm@google.com>
  31343. Reviewed by Steve Block.
  31344. Including JavaScriptCore/config.h from WebCore/config.h
  31345. instead of from WebCorePrefix.h.
  31346. https://bugs.webkit.org/show_bug.cgi?id=47179
  31347. No new tests, just changing where files are included.
  31348. * WebCorePrefix.h:
  31349. * config.h:
  31350. 2010-10-05 Jakob Petsovits <jpetsovits@rim.com>
  31351. Reviewed by Andreas Kling.
  31352. [Qt] Make build work with QT_NO_CURSOR
  31353. https://bugs.webkit.org/show_bug.cgi?id=46097
  31354. Add a missing include.
  31355. * platform/qt/QWebPageClient.h:
  31356. 2010-10-05 Jakob Petsovits <jpetsovits@rim.com>
  31357. Reviewed by Andreas Kling.
  31358. [Qt] Make build work with QT_NO_CURSOR
  31359. https://bugs.webkit.org/show_bug.cgi?id=46097
  31360. createCustomCursor() is a static function and not used
  31361. in that file if QT_NO_CURSOR is defined, so rather than
  31362. making it return 0, it should not exist altogether.
  31363. * platform/qt/CursorQt.cpp:
  31364. (WebCore::createCustomCursor):
  31365. 2010-10-05 Adam Roben <aroben@apple.com>
  31366. Windows linker warning fix
  31367. * WebCore.vcproj/WebCore.vcproj: Exclude JSDOMTokenList.cpp from the
  31368. build, since it is already being compiled via DerivedSources.cpp. Also
  31369. let VS reorder some files.
  31370. 2010-10-05 Kimmo Kinnunen <kimmo.t.kinnunen@nokia.com>
  31371. Reviewed by Kenneth Rohde Christiansen.
  31372. [Qt] Web process crash when pressing modifiers in input field
  31373. https://bugs.webkit.org/show_bug.cgi?id=44935
  31374. Fix null pointer dereference by not using
  31375. PlatformKeyboardEvent::m_qtEvent. This member is not set when
  31376. event comes from WebKit2. Unix: Add ASSERTs to plugin related
  31377. code. These will fail if WebKit2 is used with plugins, unless code
  31378. is not fixed before. Symbian: Add ASSERT to code which uses
  31379. qtEvent(). It will fail when WebKit2 is enabled for Symbian, if
  31380. code is not fixed before.
  31381. * platform/PlatformKeyboardEvent.h:
  31382. * platform/qt/PlatformKeyboardEventQt.cpp:
  31383. (WebCore::isVirtualKeyCodeRepresentingCharacter): Added.
  31384. (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent): Avoid using m_qtEvent.
  31385. (WebCore::PlatformKeyboardEvent::nativeModifiers): Added. Use ASSERT as a reminder.
  31386. (WebCore::PlatformKeyboardEvent::nativeScanCode): Added. Use ASSERT as a reminder.
  31387. * plugins/qt/PluginViewQt.cpp:
  31388. (WebCore::setXKeyEventSpecificFields):
  31389. * plugins/symbian/PluginViewSymbian.cpp:
  31390. (WebCore::PluginView::handleKeyboardEvent): Add ASSERT as a reminder.
  31391. 2010-10-05 Kwang Yul Seo <skyul@company100.net>
  31392. Reviewed by Csaba Osztrogonác.
  31393. Add ENABLE(ACCELERATED_2D_CANVAS) guard to LoopBlinnLocalTriangulator.cpp
  31394. https://bugs.webkit.org/show_bug.cgi?id=47115
  31395. LoopBlinnLocalTriangulator.cpp depends on LoopBlinnMathUtils.cpp which is guarded by
  31396. ENABLE(ACCELERATED_2D_CANVAS).
  31397. * platform/graphics/gpu/LoopBlinnLocalTriangulator.cpp:
  31398. 2010-10-05 Satish Sampath <satish@chromium.org>
  31399. Reviewed by Kent Tamura.
  31400. Added event onwebkitspeechchange to invoke on new speech input results.
  31401. https://bugs.webkit.org/show_bug.cgi?id=47127
  31402. * dom/EventNames.h: Added webkitspeechchange event name.
  31403. * html/HTMLAttributeNames.in: Added onwebkitspeechchange attribute name.
  31404. * html/HTMLInputElement.cpp:
  31405. (WebCore::HTMLInputElement::parseMappedAttribute): Handle new attribute set.
  31406. (WebCore::HTMLInputElement::dispatchWebkitSpeechChangeEvent): Invoke the event handler.
  31407. * html/HTMLInputElement.h:
  31408. * html/HTMLInputElement.idl: Added attribute to IDL.
  31409. * rendering/TextControlInnerElements.cpp:
  31410. (WebCore::InputFieldSpeechButtonElement::setRecognitionResult): Invoke new event handler instead of onChange
  31411. 2010-10-05 Satish Sampath <satish@chromium.org>
  31412. Reviewed by Jeremy Orlow.
  31413. Rename @webkitspeech to @x-webkit-speech to follow HTML5 convention
  31414. https://bugs.webkit.org/show_bug.cgi?id=46873
  31415. The @webkitspeech attribute is renamed to @x-webkit-speech per the HTML5 spec for extension
  31416. attributes. The DOM attribute in IDL was renamed to 'webkitSpeech' as well. But the generated
  31417. code for the attribute did not match the generated code for the IDL, so I modified
  31418. dom/make_names.pl to generate the appropriate name for such extension attributes.
  31419. * bindings/generic/RuntimeEnabledFeatures.h: Rename flag accessor to match IDL attribute name.
  31420. (WebCore::RuntimeEnabledFeatures::webkitSpeechEnabled):
  31421. * dom/make_names.pl: Additions to generate names for x-webkit-xxxx attributes that match the
  31422. generated code from IDL and remember the original names including the x- prefix when writing
  31423. out the cpp files.
  31424. * html/HTMLAttributeNames.in: Rename @webkitspeech to @x-webkit-speech
  31425. * html/HTMLInputElement.idl: Rename @webkitspeech to @webkitSpeech
  31426. 2010-10-04 Andrey Kosyakov <caseq@chromium.org>
  31427. Reviewed by Yury Semikhatsky.
  31428. Web Inspector: [Chromium][Extension API] provide tab id of inspected tab in extension API
  31429. https://bugs.webkit.org/show_bug.cgi?id=47080
  31430. * inspector/front-end/ExtensionServer.js: Added support for platform-specific extensions API.
  31431. (WebInspector.ExtensionServer.prototype._buildExtensionAPIInjectedScript):
  31432. 2010-10-05 Sanjeev Radhakrishnan <sanjeevr@chromium.org>
  31433. Reviewed by Darin Fisher.
  31434. Fixed implementation of pluginWidgetFromDocument to search for the "embed" element rather than just use the first child.
  31435. https://bugs.webkit.org/show_bug.cgi?id=47129
  31436. * html/PluginDocument.cpp:
  31437. (WebCore::PluginDocumentParser::pluginWidgetFromDocument):
  31438. 2010-10-05 Chris Rogers <crogers@google.com>
  31439. Reviewed by Kenneth Russell.
  31440. Add BiquadDSPKernel files
  31441. https://bugs.webkit.org/show_bug.cgi?id=46528
  31442. No new tests since audio API is not yet implemented.
  31443. * webaudio/BiquadDSPKernel.cpp: Added.
  31444. (WebCore::BiquadDSPKernel::process):
  31445. * webaudio/BiquadDSPKernel.h: Added.
  31446. (WebCore::BiquadDSPKernel::BiquadDSPKernel):
  31447. (WebCore::BiquadDSPKernel::reset):
  31448. (WebCore::BiquadDSPKernel::biquadProcessor):
  31449. 2010-10-05 Chris Rogers <crogers@google.com>
  31450. Reviewed by James Robinson.
  31451. Fix AudioContext to use new HRTFDatabaseLoader API
  31452. https://bugs.webkit.org/show_bug.cgi?id=46858
  31453. No new tests since audio API is not yet implemented.
  31454. * webaudio/AudioContext.cpp:
  31455. (WebCore::AudioContext::AudioContext):
  31456. (WebCore::AudioContext::isRunnable):
  31457. * webaudio/AudioContext.h:
  31458. * webaudio/AudioContext.idl:
  31459. 2010-10-05 Chris Rogers <crogers@google.com>
  31460. Reviewed by Kenneth Russell.
  31461. Add AudioPannerNode files
  31462. https://bugs.webkit.org/show_bug.cgi?id=46505
  31463. No new tests since audio API is not yet implemented.
  31464. * webaudio/AudioPannerNode.cpp: Added.
  31465. (WebCore::fixNANs):
  31466. (WebCore::AudioPannerNode::AudioPannerNode):
  31467. (WebCore::AudioPannerNode::~AudioPannerNode):
  31468. (WebCore::AudioPannerNode::pullInputs):
  31469. (WebCore::AudioPannerNode::process):
  31470. (WebCore::AudioPannerNode::reset):
  31471. (WebCore::AudioPannerNode::initialize):
  31472. (WebCore::AudioPannerNode::uninitialize):
  31473. (WebCore::AudioPannerNode::listener):
  31474. (WebCore::AudioPannerNode::setPanningModel):
  31475. (WebCore::AudioPannerNode::getAzimuthElevation):
  31476. (WebCore::AudioPannerNode::dopplerRate):
  31477. (WebCore::AudioPannerNode::distanceConeGain):
  31478. (WebCore::AudioPannerNode::notifyAudioSourcesConnectedToNode):
  31479. * webaudio/AudioPannerNode.h: Added.
  31480. (WebCore::AudioPannerNode::create):
  31481. (WebCore::AudioPannerNode::panningModel):
  31482. (WebCore::AudioPannerNode::position):
  31483. (WebCore::AudioPannerNode::setPosition):
  31484. (WebCore::AudioPannerNode::orientation):
  31485. (WebCore::AudioPannerNode::setOrientation):
  31486. (WebCore::AudioPannerNode::velocity):
  31487. (WebCore::AudioPannerNode::setVelocity):
  31488. (WebCore::AudioPannerNode::distanceModel):
  31489. (WebCore::AudioPannerNode::setDistanceModel):
  31490. (WebCore::AudioPannerNode::refDistance):
  31491. (WebCore::AudioPannerNode::setRefDistance):
  31492. (WebCore::AudioPannerNode::maxDistance):
  31493. (WebCore::AudioPannerNode::setMaxDistance):
  31494. (WebCore::AudioPannerNode::rolloffFactor):
  31495. (WebCore::AudioPannerNode::setRolloffFactor):
  31496. (WebCore::AudioPannerNode::coneInnerAngle):
  31497. (WebCore::AudioPannerNode::setConeInnerAngle):
  31498. (WebCore::AudioPannerNode::coneOuterAngle):
  31499. (WebCore::AudioPannerNode::setConeOuterAngle):
  31500. (WebCore::AudioPannerNode::coneOuterGain):
  31501. (WebCore::AudioPannerNode::setConeOuterGain):
  31502. (WebCore::AudioPannerNode::distanceGain):
  31503. (WebCore::AudioPannerNode::coneGain):
  31504. * webaudio/AudioPannerNode.idl: Added.
  31505. 2010-10-04 Alejandro G. Castro <alex@igalia.com>
  31506. Reviewed by Martin Robinson.
  31507. [Cairo] Port drawTiledShadow to the new ContextShadow
  31508. https://bugs.webkit.org/show_bug.cgi?id=45902
  31509. Ported the drawTiledShadow function to the ContextShadow, it
  31510. renders shadows for rects faster than the simple blurring using
  31511. tiling of a smaller rect. We will remove the old function in a
  31512. next patch when starting to use ContextShadows for cairo
  31513. rendering.
  31514. * platform/graphics/ContextShadow.h:
  31515. * platform/graphics/cairo/ContextShadowCairo.cpp:
  31516. (WebCore::ContextShadow::drawRectShadowWithoutTiling):
  31517. (WebCore::ContextShadow::drawRectShadow):
  31518. 2010-10-05 Chris Rogers <crogers@google.com>
  31519. Reviewed by Kenneth Russell.
  31520. Add BiquadProcessor files
  31521. https://bugs.webkit.org/show_bug.cgi?id=46527
  31522. No new tests since audio API is not yet implemented.
  31523. * webaudio/BiquadProcessor.cpp: Added.
  31524. (WebCore::BiquadProcessor::BiquadProcessor):
  31525. (WebCore::BiquadProcessor::~BiquadProcessor):
  31526. (WebCore::BiquadProcessor::createKernel):
  31527. (WebCore::BiquadProcessor::process):
  31528. * webaudio/BiquadProcessor.h: Added.
  31529. (WebCore::BiquadProcessor::filterCoefficientsDirty):
  31530. (WebCore::BiquadProcessor::parameter1):
  31531. (WebCore::BiquadProcessor::parameter2):
  31532. (WebCore::BiquadProcessor::parameter3):
  31533. (WebCore::BiquadProcessor::type):
  31534. 2010-10-05 Chris Rogers <crogers@google.com>
  31535. Reviewed by Kenneth Russell.
  31536. Add EqualPowerPanner files
  31537. https://bugs.webkit.org/show_bug.cgi?id=45077
  31538. No new tests since audio API is not yet implemented.
  31539. * platform/audio/EqualPowerPanner.cpp: Added.
  31540. (WebCore::EqualPowerPanner::EqualPowerPanner):
  31541. (WebCore::EqualPowerPanner::pan):
  31542. * platform/audio/EqualPowerPanner.h: Added.
  31543. (WebCore::EqualPowerPanner::reset):
  31544. 2010-10-05 Chris Rogers <crogers@google.com>
  31545. Reviewed by Kenneth Russell.
  31546. Add HighPass2FilterNode files
  31547. https://bugs.webkit.org/show_bug.cgi?id=46533
  31548. No new tests since audio API is not yet implemented.
  31549. * webaudio/HighPass2FilterNode.cpp: Added.
  31550. (WebCore::HighPass2FilterNode::HighPass2FilterNode):
  31551. * webaudio/HighPass2FilterNode.h: Added.
  31552. (WebCore::HighPass2FilterNode::create):
  31553. (WebCore::HighPass2FilterNode::cutoff):
  31554. (WebCore::HighPass2FilterNode::resonance):
  31555. (WebCore::HighPass2FilterNode::biquadProcessor):
  31556. * webaudio/HighPass2FilterNode.idl: Added.
  31557. 2010-10-05 Chris Rogers <crogers@google.com>
  31558. Reviewed by Kenneth Russell.
  31559. Add LowPass2FilterNode files
  31560. https://bugs.webkit.org/show_bug.cgi?id=46532
  31561. No new tests since audio API is not yet implemented.
  31562. * webaudio/LowPass2FilterNode.cpp: Added.
  31563. (WebCore::LowPass2FilterNode::LowPass2FilterNode):
  31564. * webaudio/LowPass2FilterNode.h: Added.
  31565. (WebCore::LowPass2FilterNode::create):
  31566. (WebCore::LowPass2FilterNode::cutoff):
  31567. (WebCore::LowPass2FilterNode::resonance):
  31568. (WebCore::LowPass2FilterNode::biquadProcessor):
  31569. * webaudio/LowPass2FilterNode.idl: Added.
  31570. 2010-10-04 Alejandro G. Castro <alex@igalia.com>
  31571. Reviewed by Kent Tamura.
  31572. Fixed compilation problem added in commit 69082. The interface of
  31573. the function has two parameters with the same name.
  31574. * rendering/RenderBlock.h:
  31575. 2010-10-04 Chris Rogers <crogers@google.com>
  31576. Reviewed by Kenneth Russell.
  31577. Add AudioUtilities files
  31578. https://bugs.webkit.org/show_bug.cgi?id=47011
  31579. No new tests since audio API is not yet implemented.
  31580. * platform/audio/AudioUtilities.cpp: Added.
  31581. (WebCore::AudioUtilities::decibelsToLinear):
  31582. (WebCore::AudioUtilities::linearToDecibels):
  31583. (WebCore::AudioUtilities::discreteTimeConstantForSampleRate):
  31584. * platform/audio/AudioUtilities.h: Added.
  31585. 2010-10-04 David Hyatt <hyatt@apple.com>
  31586. Reviewed by Dan Bernstein.
  31587. https://bugs.webkit.org/show_bug.cgi?id=47112
  31588. Convert addOverhangingFloats and addIntrudingFloats to be block-flow-aware.
  31589. Also clean up how floats are placed to use a bit instead of the magic -1 value on top().
  31590. * rendering/RenderBlock.cpp:
  31591. (WebCore::RenderBlock::layoutBlock):
  31592. (WebCore::RenderBlock::layoutBlockChild):
  31593. (WebCore::RenderBlock::insertFloatingObject):
  31594. (WebCore::RenderBlock::removeFloatingObject):
  31595. (WebCore::RenderBlock::removeFloatingObjectsBelow):
  31596. (WebCore::RenderBlock::positionNewFloats):
  31597. (WebCore::RenderBlock::markLinesDirtyInBlockRange):
  31598. (WebCore::RenderBlock::clearFloats):
  31599. (WebCore::RenderBlock::addOverhangingFloats):
  31600. (WebCore::RenderBlock::addIntrudingFloats):
  31601. * rendering/RenderBlock.h:
  31602. (WebCore::RenderBlock::FloatingObject::FloatingObject):
  31603. (WebCore::RenderBlock::FloatingObject::isPlaced):
  31604. (WebCore::RenderBlock::FloatingObject::setIsPlaced):
  31605. * rendering/RenderBlockLineLayout.cpp:
  31606. (WebCore::RenderBlock::determineStartPosition):
  31607. 2010-10-04 Nico Weber <thakis@chromium.org>
  31608. Reviewed by Kenneth Russell.
  31609. Fix broken C++ in PODInterval and PODIntervalTree
  31610. https://bugs.webkit.org/show_bug.cgi?id=47063
  31611. See http://clang.llvm.org/compatibility.html#dep_lookup . Since
  31612. valueToString needs to work with non-class types, it needs to be
  31613. declared before it's used. And since it needs to handle many types, it
  31614. needs to be a template function, for which clients will need to
  31615. provide specializations for the types they care about. Partial template
  31616. specialization is only supported for structs, so wrap the function in
  31617. a struct, too.
  31618. * platform/graphics/gpu/PODInterval.h:
  31619. (WebCore::PODInterval::toString):
  31620. * platform/graphics/gpu/PODIntervalTree.h:
  31621. (WebCore::PODIntervalTree::checkInvariantsFromNode):
  31622. * platform/graphics/gpu/PODRedBlackTree.h:
  31623. (WebCore::PODRedBlackTree::dumpFromNode):
  31624. 2010-10-04 Yael Aharon <yael.aharon@nokia.com>
  31625. Reviewed by Antonio Gomes.
  31626. Spatial Navigation: Add support for <input type="radio">
  31627. https://bugs.webkit.org/show_bug.cgi?id=46993
  31628. When using Spatial Navigation, every radio button should be focusable and
  31629. users should be able to navigate from one button to the next without moving the selection.
  31630. Tests: fast/events/spatial-navigation/snav-radio-group.html
  31631. fast/events/spatial-navigation/snav-radio.html
  31632. * html/HTMLInputElement.cpp:
  31633. (WebCore::HTMLInputElement::isKeyboardFocusable):
  31634. Every radio button should be keyboard focusable, if using Spatial Navigation.
  31635. (WebCore::HTMLInputElement::defaultEventHandler):
  31636. Disable the algorithm for selecting the next radio button within a group, if using Spatial Navigation.
  31637. 2010-10-04 Renata Hodovan <reni@inf.u-szeged.hu>
  31638. Reviewed by Andreas Kling.
  31639. SVGFEGaussianBlurElement doesn't support dynamic invalidation, when attributes change.
  31640. https://bugs.webkit.org/show_bug.cgi?id=47074
  31641. The patch also implements the simple setStdDeviation method.
  31642. Tests: svg/dynamic-updates/SVGFEGaussianBlurElement-dom-in-attr.html
  31643. svg/dynamic-updates/SVGFEGaussianBlurElement-dom-stdDeviation-attr.html
  31644. svg/dynamic-updates/SVGFEGaussianBlurElement-dom-stdDeviation-call.html
  31645. svg/dynamic-updates/SVGFEGaussianBlurElement-svgdom-in-prop.html
  31646. * svg/SVGFEGaussianBlurElement.cpp:
  31647. (WebCore::SVGFEGaussianBlurElement::setStdDeviation):
  31648. (WebCore::SVGFEGaussianBlurElement::svgAttributeChanged):
  31649. * svg/SVGFEGaussianBlurElement.h:
  31650. 2010-10-04 Patrick Gansterer <paroga@paroga.com>
  31651. Reviewed by Darin Adler.
  31652. Add Base64DecodePolicy option at base64Decode()
  31653. https://bugs.webkit.org/show_bug.cgi?id=41510
  31654. Add an option for ignoring characters in base64 data.
  31655. This is necessary for decoding data urls.
  31656. Also add an overload to decode WebCore::String directly.
  31657. * page/DOMWindow.cpp:
  31658. (WebCore::DOMWindow::atob):
  31659. * page/Page.cpp:
  31660. (WebCore::Page::userStyleSheetLocationChanged):
  31661. * platform/text/Base64.cpp:
  31662. (WebCore::base64Encode):
  31663. (WebCore::base64Decode):
  31664. (WebCore::base64DecodeInternal):
  31665. * platform/text/Base64.h:
  31666. (WebCore::):
  31667. 2010-10-04 Ryuan Choi <bunhere@gmail.com>
  31668. Unreviewed build fix.
  31669. [WML] Build fix for r68854
  31670. https://bugs.webkit.org/show_bug.cgi?id=47043
  31671. Include HTMLParserIdioms.h.
  31672. No features added, so no new tests.
  31673. * wml/WMLAElement.cpp:
  31674. * wml/WMLImageLoader.cpp:
  31675. 2010-10-04 Ryuan Choi <ryuan.choi@samsung.com>
  31676. Unreviewed build fix.
  31677. [CMAKE] Build fix for r68901
  31678. https://bugs.webkit.org/show_bug.cgi?id=47042
  31679. Move plugins/PluginPackage.cpp
  31680. No features added, so no new tests.
  31681. * CMakeLists.txt:
  31682. 2010-10-04 Eric Uhrhane <ericu@chromium.org>
  31683. Reviewed by David Levin.
  31684. Hook FileEntry::createWriter to DOMFileSystem::createWriter
  31685. https://bugs.webkit.org/show_bug.cgi?id=46908
  31686. No new tests--still waiting for the first complete implementation.
  31687. * fileapi/FileEntry.cpp:
  31688. (WebCore::FileEntry::createWriter):
  31689. 2010-10-04 Yael Aharon <yael.aharon@nokia.com>
  31690. Reviewed by Antonio Gomes.
  31691. Spatial Navigation: select element does not release focus with Spatial Navigation
  31692. https://bugs.webkit.org/show_bug.cgi?id=46896
  31693. When using Spatial Navigation, once a select element is focused, you cannot use arrow keys
  31694. to navigate out of the select element. That is because select element currently uses the
  31695. arrow keys to change the selected element.
  31696. Change the behavior of select element so it does not change selection, if Spatial Navigation
  31697. is on.
  31698. This patch is addressing the case where Spatial Navigation is used
  31699. in a mobile device, and the flag ENABLE_NO_LISTBOX_RENDERING is on.
  31700. In the future we can add support for the case where the flag is off, and
  31701. the user needs to traverse the select element inline.
  31702. Tests: fast/events/spatial-navigation/snav-multiple-select.html
  31703. fast/events/spatial-navigation/snav-single-select.html
  31704. * dom/SelectElement.cpp:
  31705. (WebCore::SelectElement::menuListDefaultEventHandler):
  31706. 2010-10-04 Sriram Neelakandan <sriram.neelakandan@gmail.com>
  31707. Reviewed by Andreas Kling.
  31708. [Qt] QNetworkReplyHandler forces buffered output for FormData with files
  31709. https://bugs.webkit.org/show_bug.cgi?id=46259
  31710. No new tests. Existing form submit tests should cover this change.
  31711. * platform/network/qt/QNetworkReplyHandler.cpp:
  31712. (WebCore::FormDataIODevice::FormDataIODevice):
  31713. (WebCore::FormDataIODevice::computeSize):
  31714. Add computeSize() for computing form device size
  31715. (WebCore::QNetworkReplyHandler::start):
  31716. Call computeSize(), fill Content-Length and prevent UploadData buffering
  31717. * platform/network/qt/QNetworkReplyHandler.h:
  31718. (WebCore::FormDataIODevice::getFormDataSize):
  31719. 2010-10-04 Chang Shu <chang.shu@nokia.com>
  31720. Reviewed by Antonio Gomes.
  31721. Fixed the typo that searches the wrong direction in the no-focus-node case.
  31722. As a result, after page is loaded, pressing key "arrowdown" will bring the
  31723. focus to the 1st element instead of the last element.
  31724. https://bugs.webkit.org/show_bug.cgi?id=46901
  31725. Test: fast/events/spatial-navigation/snav-1st-stop.html
  31726. * page/FocusController.cpp:
  31727. (WebCore::FocusController::advanceFocusDirectionally):
  31728. 2010-10-04 Simon Fraser <simon.fraser@apple.com>
  31729. No review.
  31730. Touch cf/SocketStreamHandle.h and add an #ifdef to qt/SocketStreamHandle.h
  31731. to fail at compile time if Mac includes that header.
  31732. * platform/network/cf/SocketStreamHandle.h:
  31733. * platform/network/qt/SocketStreamHandle.h:
  31734. 2010-10-04 Simon Fraser <simon.fraser@apple.com>
  31735. Reviewed by Darin Adler.
  31736. https://bugs.webkit.org/show_bug.cgi?id=47136
  31737. WebSocket tests are crashing
  31738. The Mac xcode project was finding qt/SocketStreamHandle.h because of
  31739. an inadvertent change in r68951. Thus the header and implementation didn't match,
  31740. and memory corruption ensued.
  31741. * WebCore.xcodeproj/project.pbxproj:
  31742. 2010-10-04 Chris Marrin <cmarrin@apple.com>
  31743. Reviewed by James Robinson.
  31744. Move SharedGraphicsContext3D from ChromeClient to Page
  31745. https://bugs.webkit.org/show_bug.cgi?id=47113
  31746. * html/canvas/CanvasRenderingContext2D.cpp:
  31747. (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
  31748. * page/ChromeClient.h:
  31749. * page/Page.cpp:
  31750. (WebCore::Page::sharedGraphicsContext3D):
  31751. * page/Page.h:
  31752. * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
  31753. (WebCore::SharedGraphicsContext3D::create):
  31754. * platform/graphics/gpu/SharedGraphicsContext3D.h:
  31755. 2010-10-04 Jeremy Orlow <jorlow@chromium.org>
  31756. Reviewed by Nate Chapin.
  31757. Implement IndexedDB's oncomplete and ontimeout.
  31758. https://bugs.webkit.org/show_bug.cgi?id=47106
  31759. Add ontimeout and oncomplete to IDBTransaction and plumb
  31760. them. Test this behavior in the existing IDBTransaction-basics
  31761. test.
  31762. * WebCore.gypi:
  31763. * storage/IDBTransaction.cpp:
  31764. (WebCore::IDBTransaction::IDBTransaction):
  31765. (WebCore::IDBTransaction::mode):
  31766. (WebCore::IDBTransaction::objectStore):
  31767. (WebCore::IDBTransaction::abort):
  31768. (WebCore::IDBTransaction::onAbort):
  31769. (WebCore::IDBTransaction::onComplete):
  31770. (WebCore::IDBTransaction::onTimeout):
  31771. (WebCore::IDBTransaction::stop):
  31772. (WebCore::IDBTransaction::onAbortTimerFired):
  31773. (WebCore::IDBTransaction::onCompleteTimerFired):
  31774. (WebCore::IDBTransaction::onTimeoutTimerFired):
  31775. * storage/IDBTransaction.h:
  31776. * storage/IDBTransactionBackendImpl.cpp:
  31777. (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
  31778. (WebCore::IDBTransactionBackendImpl::commit):
  31779. * storage/IDBTransactionCallbacks.h:
  31780. 2010-10-04 Enrica Casucci <enrica@apple.com>
  31781. Reviewed by Darin Adler.
  31782. Crash at WebCore::nextCandidate + 27
  31783. https://bugs.webkit.org/show_bug.cgi?id=47118
  31784. <rdar://problem/7282934>
  31785. When we canonicalize a Position to create a VisiblePosition, the position
  31786. is passed by reference. In canonicalPosition we call updateLayoutIgnorePendingStylesheets
  31787. that can produce a lot of side effects, including changing the selection.
  31788. This becomes a serious problem whne the position passed as reference is one of
  31789. the selection endpoints.
  31790. Test: editing/selection/focus-crash.html
  31791. * editing/VisiblePosition.cpp:
  31792. (WebCore::VisiblePosition::canonicalPosition):
  31793. 2010-10-04 Alexey Proskuryakov <ap@apple.com>
  31794. Reviewed by Adam Barth.
  31795. https://bugs.webkit.org/show_bug.cgi?id=37812
  31796. Assertion failure when appcache/fail-on-update.html is run twice in a row
  31797. Test: http/tests/appcache/fail-on-update-2.html
  31798. For some reason, I can't reproduce this assertion failure with ToT, but the fixes I made
  31799. previously are still good, and covered by the new test.
  31800. * loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::selectCache):
  31801. Handle the case when the cache is already obsolete by the time cache selection occurs.
  31802. * loader/appcache/ApplicationCacheHost.cpp: (WebCore::ApplicationCacheHost::failedLoadingMainResource):
  31803. It's not true that loading from appcache always succeeds - it can be aborted.
  31804. * loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::store):
  31805. Calling ensureOriginRecord(group->origin()) can change lastInsertRowID!
  31806. 2010-10-04 Erik Arvidsson <arv@chromium.org>
  31807. Reviewed by James Robinson.
  31808. https://bugs.webkit.org/show_bug.cgi?id=47122
  31809. Crash in classList when class attribute is empty.
  31810. Tests: fast/dom/HTMLElement/class-list.html
  31811. * html/DOMTokenList.cpp:
  31812. (WebCore::DOMTokenList::length):
  31813. (WebCore::DOMTokenList::containsInternal):
  31814. (WebCore::DOMTokenList::classNames):
  31815. 2010-10-04 Darin Adler <darin@apple.com>
  31816. Reviewed by Dan Bernstein.
  31817. Use isHTMLSpace in more places, and optimize it
  31818. https://bugs.webkit.org/show_bug.cgi?id=47103
  31819. * css/CSSParser.cpp:
  31820. (WebCore::parseColorInt): Use isHTMLSpace instead of a separate isCSSWhitespace function.
  31821. (WebCore::parseAlphaValue): Ditto.
  31822. (WebCore::CSSParser::text): Ditto.
  31823. * dom/SpaceSplitString.h: Removed isClassWhitespace.
  31824. * dom/SpaceSplitString.cpp:
  31825. (WebCore::SpaceSplitStringData::createVector): Use isHTMLSpace instead of isClassWhitespace.
  31826. * dom/StyledElement.cpp:
  31827. (WebCore::StyledElement::classAttributeChanged): Ditto.
  31828. * html/DOMTokenList.cpp:
  31829. (WebCore::validateToken): Ditto.
  31830. (WebCore::DOMTokenList::removeInternal): Ditto.
  31831. * html/parser/HTMLParserIdioms.h: Added histogram data an changed so that non-spaces take
  31832. only a single branch and plain old spaces take only two branches.
  31833. 2010-10-04 Justin Schuh <jschuh@chromium.org>
  31834. Reviewed by James Robinson.
  31835. HTMLMediaElement delayed load should fire asynchronously
  31836. https://bugs.webkit.org/show_bug.cgi?id=45765
  31837. Test: media/remove-from-document-before-load.html
  31838. * dom/Document.cpp:
  31839. (WebCore::Document::Document):
  31840. (WebCore::Document::decrementLoadEventDelayCount):
  31841. (WebCore::Document::loadEventDelayTimerFired):
  31842. * dom/Document.h:
  31843. * html/HTMLMediaElement.cpp:
  31844. (WebCore::HTMLMediaElement::HTMLMediaElement):
  31845. (WebCore::HTMLMediaElement::asyncEventTimerFired):
  31846. (WebCore::HTMLMediaElement::setShouldDelayLoadEvent):
  31847. * html/HTMLMediaElement.h:
  31848. 2010-10-04 Adam Barth <abarth@webkit.org>
  31849. Reviewed by Darin Adler.
  31850. ResourceHandle's public/protected/private sections are fragmented
  31851. https://bugs.webkit.org/show_bug.cgi?id=47038
  31852. Minor cleanup.
  31853. * platform/network/ResourceHandle.h:
  31854. 2010-10-04 Alexey Proskuryakov <ap@apple.com>
  31855. Reviewed by Adam Barth.
  31856. https://bugs.webkit.org/show_bug.cgi?id=43506
  31857. <rdar://problem/8289284> foreign-iframe-main.html occasionally crashes (during the next test,
  31858. idempotent-update.html)
  31859. Application cache doesn't use ResourceLoader machinery (for better or worse), so we need to
  31860. abort update process explicitly.
  31861. Note that in principle, update could piggyback on any other existing frame - or even run
  31862. frameless - but currently, it's tied to the first frame that requested update.
  31863. * loader/DocumentLoader.cpp:
  31864. (WebCore::DocumentLoader::stopLoading):
  31865. * loader/appcache/ApplicationCacheGroup.cpp:
  31866. (WebCore::ApplicationCacheGroup::stopLoadingInFrame):
  31867. * loader/appcache/ApplicationCacheGroup.h:
  31868. * loader/appcache/ApplicationCacheHost.cpp:
  31869. (WebCore::ApplicationCacheHost::~ApplicationCacheHost):
  31870. (WebCore::ApplicationCacheHost::stopLoadingInFrame):
  31871. * loader/appcache/ApplicationCacheHost.h:
  31872. 2010-10-04 Adam Barth <abarth@webkit.org>
  31873. Reviewed by Darin Adler.
  31874. Rename RedirectScheduler to NavigationScheduler
  31875. https://bugs.webkit.org/show_bug.cgi?id=47037
  31876. This class schedules more than just redirects. In fact, it schedules
  31877. most kinds of navigations.
  31878. * Android.mk:
  31879. * CMakeLists.txt:
  31880. * GNUmakefile.am:
  31881. * WebCore.gypi:
  31882. * WebCore.pro:
  31883. * WebCore.vcproj/WebCore.vcproj:
  31884. * WebCore.xcodeproj/project.pbxproj:
  31885. * bindings/generic/BindingDOMWindow.h:
  31886. (WebCore::::createWindow):
  31887. (WebCore::::open):
  31888. * bindings/generic/BindingFrame.h:
  31889. (WebCore::::navigateIfAllowed):
  31890. * bindings/js/JSDOMWindowCustom.cpp:
  31891. (WebCore::JSDOMWindow::setLocation):
  31892. (WebCore::createWindow):
  31893. (WebCore::JSDOMWindow::open):
  31894. * bindings/js/JSDocumentCustom.cpp:
  31895. (WebCore::JSDocument::setLocation):
  31896. * bindings/js/JSLocationCustom.cpp:
  31897. (WebCore::JSLocation::reload):
  31898. * bindings/v8/custom/V8LocationCustom.cpp:
  31899. (WebCore::V8Location::reloadCallback):
  31900. * dom/Document.cpp:
  31901. (WebCore::Document::implicitClose):
  31902. (WebCore::Document::processHttpEquiv):
  31903. * inspector/InspectorController.cpp:
  31904. (WebCore::InspectorController::setResourceTrackingEnabled):
  31905. (WebCore::InspectorController::reloadPage):
  31906. * loader/FrameLoader.cpp:
  31907. (WebCore::FrameLoader::setDefersLoading):
  31908. (WebCore::FrameLoader::submitForm):
  31909. (WebCore::FrameLoader::stopLoading):
  31910. (WebCore::FrameLoader::didOpenURL):
  31911. (WebCore::FrameLoader::didExplicitOpen):
  31912. (WebCore::FrameLoader::cancelAndClear):
  31913. (WebCore::FrameLoader::clear):
  31914. (WebCore::FrameLoader::receivedFirstData):
  31915. (WebCore::FrameLoader::checkCompleted):
  31916. (WebCore::FrameLoader::provisionalLoadStarted):
  31917. (WebCore::FrameLoader::completed):
  31918. (WebCore::FrameLoader::prepareForCachedPageRestore):
  31919. * loader/FrameLoader.h:
  31920. * loader/NavigationScheduler.cpp: Added.
  31921. (WebCore::ScheduledNavigation::ScheduledNavigation):
  31922. (WebCore::ScheduledNavigation::~ScheduledNavigation):
  31923. (WebCore::ScheduledNavigation::shouldStartTimer):
  31924. (WebCore::ScheduledNavigation::didStartTimer):
  31925. (WebCore::ScheduledNavigation::didStopTimer):
  31926. (WebCore::ScheduledNavigation::delay):
  31927. (WebCore::ScheduledNavigation::lockHistory):
  31928. (WebCore::ScheduledNavigation::lockBackForwardList):
  31929. (WebCore::ScheduledNavigation::wasDuringLoad):
  31930. (WebCore::ScheduledNavigation::isLocationChange):
  31931. (WebCore::ScheduledNavigation::wasUserGesture):
  31932. (WebCore::ScheduledURLNavigation::ScheduledURLNavigation):
  31933. (WebCore::ScheduledURLNavigation::fire):
  31934. (WebCore::ScheduledURLNavigation::didStartTimer):
  31935. (WebCore::ScheduledURLNavigation::didStopTimer):
  31936. (WebCore::ScheduledURLNavigation::url):
  31937. (WebCore::ScheduledURLNavigation::referrer):
  31938. (WebCore::ScheduledRedirect::ScheduledRedirect):
  31939. (WebCore::ScheduledRedirect::shouldStartTimer):
  31940. (WebCore::ScheduledLocationChange::ScheduledLocationChange):
  31941. (WebCore::ScheduledRefresh::ScheduledRefresh):
  31942. (WebCore::ScheduledRefresh::fire):
  31943. (WebCore::ScheduledHistoryNavigation::ScheduledHistoryNavigation):
  31944. (WebCore::ScheduledHistoryNavigation::fire):
  31945. (WebCore::ScheduledFormSubmission::ScheduledFormSubmission):
  31946. (WebCore::ScheduledFormSubmission::fire):
  31947. (WebCore::ScheduledFormSubmission::didStartTimer):
  31948. (WebCore::ScheduledFormSubmission::didStopTimer):
  31949. (WebCore::NavigationScheduler::NavigationScheduler):
  31950. (WebCore::NavigationScheduler::~NavigationScheduler):
  31951. (WebCore::NavigationScheduler::redirectScheduledDuringLoad):
  31952. (WebCore::NavigationScheduler::locationChangePending):
  31953. (WebCore::NavigationScheduler::clear):
  31954. (WebCore::NavigationScheduler::scheduleRedirect):
  31955. (WebCore::NavigationScheduler::mustLockBackForwardList):
  31956. (WebCore::NavigationScheduler::scheduleLocationChange):
  31957. (WebCore::NavigationScheduler::scheduleFormSubmission):
  31958. (WebCore::NavigationScheduler::scheduleRefresh):
  31959. (WebCore::NavigationScheduler::scheduleHistoryNavigation):
  31960. (WebCore::NavigationScheduler::timerFired):
  31961. (WebCore::NavigationScheduler::schedule):
  31962. (WebCore::NavigationScheduler::startTimer):
  31963. (WebCore::NavigationScheduler::cancel):
  31964. * loader/NavigationScheduler.h: Added.
  31965. * loader/RedirectScheduler.cpp: Removed.
  31966. * loader/RedirectScheduler.h: Removed.
  31967. * loader/SubframeLoader.cpp:
  31968. (WebCore::SubframeLoader::loadOrRedirectSubframe):
  31969. * loader/appcache/ApplicationCacheGroup.cpp:
  31970. (WebCore::ApplicationCacheGroup::selectCache):
  31971. * page/Frame.cpp:
  31972. (WebCore::Frame::Frame):
  31973. * page/Frame.h:
  31974. (WebCore::Frame::navigationScheduler):
  31975. * page/History.cpp:
  31976. (WebCore::History::back):
  31977. (WebCore::History::forward):
  31978. (WebCore::History::go):
  31979. * page/XSSAuditor.cpp:
  31980. (WebCore::XSSAuditor::findInRequest):
  31981. 2010-10-04 Adam Barth <abarth@webkit.org>
  31982. Reviewed by Sam Weinig.
  31983. Remove ENABLE_SANDBOX
  31984. https://bugs.webkit.org/show_bug.cgi?id=47032
  31985. I'm not sure there's a reason for this to be behind a compile flag
  31986. anymore.
  31987. * Configurations/FeatureDefines.xcconfig:
  31988. * GNUmakefile.am:
  31989. * features.pri:
  31990. * html/HTMLIFrameElement.cpp:
  31991. (WebCore::parseSandboxAttribute):
  31992. (WebCore::HTMLIFrameElement::parseMappedAttribute):
  31993. 2010-10-04 Huahui Wu <mediadependent@gmail.com>
  31994. Reviewed by Darin Adler.
  31995. Fix a compiler error for ANDROID introduced by bug 45221.
  31996. https://bugs.webkit.org/show_bug.cgi?id=47095
  31997. It's a small fix for a compiler error, so there is no new test.
  31998. * platform/android/PlatformTouchEventAndroid.cpp:
  31999. (WebCore::PlatformTouchEvent::PlatformTouchEvent):
  32000. 2010-10-04 Chris Fleizach <cfleizach@apple.com>
  32001. Reviewed by Beth Dakin.
  32002. AX: doAXRangeForLine does not work
  32003. https://bugs.webkit.org/show_bug.cgi?id=47101
  32004. Asking for NSAccessibilityRangeForLine was returning a null range for any line number > 0.
  32005. The code was using a SelectionController to extend to the next line. Rather than change the implementation
  32006. of that core functionality, it is cleaner to use endOfLine to find the end of the line.
  32007. Test: platform/mac/accessibility/range-for-line-textarea.html
  32008. * accessibility/AccessibilityRenderObject.cpp:
  32009. (WebCore::AccessibilityRenderObject::doAXRangeForLine):
  32010. 2010-10-04 Brent Fulgham <bfulgham@webkit.org>
  32011. Unreviewed, build fix for r68951.
  32012. Add stub implementation for ProxyServer logic.
  32013. * WebCore.vcproj/WebCore.vcproj: Add new WinCairo file.
  32014. * WebCore/platform/network/curl/ProxyServerCurl.cpp: Added
  32015. 2010-10-04 Alexey Proskuryakov <ap@apple.com>
  32016. Reviewed by Adam Barth.
  32017. https://bugs.webkit.org/show_bug.cgi?id=47035
  32018. Application cache selection algorithm should only be invoked after navigation
  32019. Tests: http/tests/appcache/document-write-html-element-2.html
  32020. http/tests/appcache/document-write-html-element.html
  32021. http/tests/appcache/insert-html-element-with-manifest-2.html
  32022. http/tests/appcache/insert-html-element-with-manifest.html
  32023. * dom/DocumentParser.cpp: (WebCore::DocumentParser::DocumentParser):
  32024. * dom/DocumentParser.h:
  32025. (WebCore::DocumentParser::setDocumentWasLoadedAsPartOfNavigation):
  32026. (WebCore::DocumentParser::documentWasLoadedAsPartOfNavigation):
  32027. Track whether the document being parsed is being loaded as part of navigation.
  32028. * html/HTMLHtmlElement.cpp: (WebCore::HTMLHtmlElement::insertedByParser): Only run the
  32029. cache selection algorithm if the document is being loaded as part of navigation. We don't
  32030. want to switch associated appcache is someone document.writes <html manifest=...>.
  32031. * html/HTMLHtmlElement.h: We need to differentiate between parsing and DOM manipulation, so
  32032. this code can't be in HTMLHtmlElement::insertedIntoDocument().
  32033. * dom/XMLDocumentParserLibxml2.cpp: (WebCore::XMLDocumentParser::startElementNs):
  32034. * dom/XMLDocumentParserQt.cpp: (WebCore::XMLDocumentParser::parseStartElement):
  32035. * html/ImageDocument.cpp: (WebCore::ImageDocument::createDocumentStructure):
  32036. * html/MediaDocument.cpp: (WebCore::MediaDocumentParser::createDocumentStructure):
  32037. * html/PluginDocument.cpp: (WebCore::PluginDocumentParser::createDocumentStructure):
  32038. * html/parser/HTMLConstructionSite.cpp: (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML):
  32039. Check for manifest attribute in cases specified by HTML5.
  32040. * html/parser/HTMLConstructionSite.h: Removed unused insertHTMLHtmlElement().
  32041. * loader/DocumentWriter.cpp: (WebCore::DocumentWriter::setDocumentWasLoadedAsPartOfNavigation):
  32042. * loader/DocumentWriter.h:
  32043. Forward this call to DocumentParser, since DocumentWriter is supposed to encapsulate it.
  32044. * loader/FrameLoader.cpp: (WebCore::FrameLoader::receivedFirstData): Receiving data from
  32045. loader means being loaded as part of navigation. This notion is used in HTML5 without a rigorous
  32046. definition that I could find - this seems to be a meaningful formalization.
  32047. 2010-10-04 David Hyatt <hyatt@apple.com>
  32048. Reviewed by Dan Bernstein.
  32049. https://bugs.webkit.org/show_bug.cgi?id=47100
  32050. Convert clearFloats() to be block-flow-aware. Helpers that it calls have not been patched though.
  32051. * rendering/RenderBlock.cpp:
  32052. (WebCore::RenderBlock::clearFloats):
  32053. * rendering/RenderBlock.h:
  32054. (WebCore::RenderBlock::logicalTopForFloat):
  32055. (WebCore::RenderBlock::logicalLeftForFloat):
  32056. (WebCore::RenderBlock::logicalWidthForFloat):
  32057. 2010-10-04 Diego Gonzalez <diegohcg@webkit.org>
  32058. Reviewed by Kenneth Rohde Christiansen.
  32059. [Qt] Hook up DeviceOrientation data for Qt support
  32060. https://bugs.webkit.org/show_bug.cgi?id=47052
  32061. Get DeviceOrientation necessary data via Qt mobility library
  32062. using a provider class.
  32063. * WebCore.pro:
  32064. 2010-10-01 Victoria Kirst <vrk@google.com>
  32065. Reviewed by James Robinson.
  32066. Fixing crash when audio media player is destructed
  32067. https://bugs.webkit.org/show_bug.cgi?id=47020
  32068. Adds assert for LayerRenderer in destructor.
  32069. * platform/graphics/chromium/VideoLayerChromium.cpp:
  32070. (WebCore::VideoLayerChromium::~VideoLayerChromium):
  32071. 2010-10-04 Pavel Podivilov <podivilov@chromium.org>
  32072. Reviewed by Pavel Feldman.
  32073. Web Inspector: do not show breakpoint in front-end if it was not set in v8
  32074. https://bugs.webkit.org/show_bug.cgi?id=46749
  32075. * bindings/v8/DebuggerScript.js:
  32076. ():
  32077. 2010-10-04 Alejandro G. Castro <alex@igalia.com>
  32078. Reviewed by Martin Robinson.
  32079. [cairo] Context shadow modifies the data of the surface without
  32080. flushing and marking as dirty
  32081. https://bugs.webkit.org/show_bug.cgi?id=47079
  32082. Added the cairo_surface_flush and cairo_surface_mark_dirty before
  32083. and after modifying the image pixels directly.
  32084. * platform/graphics/cairo/ContextShadowCairo.cpp:
  32085. (WebCore::ContextShadow::endShadowLayer):
  32086. 2010-10-04 Alejandro G. Castro <alex@igalia.com>
  32087. Reviewed by Xan Lopez.
  32088. Crashed caused by missing OwnPtrCairo include, for more
  32089. information check the issue in the bug 46268.
  32090. * platform/graphics/cairo/CairoUtilities.cpp:
  32091. 2010-10-04 Alejandro G. Castro <alex@igalia.com>
  32092. Reviewed by Martin Robinson.
  32093. [cairo] Move some cairo functions to the CairoUtilities
  32094. https://bugs.webkit.org/show_bug.cgi?id=47076
  32095. Moved some cairo functions to the CairoUtilities so we can use
  32096. them outside GraphicsContextCairo.
  32097. * platform/graphics/cairo/CairoUtilities.cpp:
  32098. (WebCore::appendPathToCairoContext):
  32099. (WebCore::setPathOnCairoContext):
  32100. (WebCore::appendWebCorePathToCairoContext):
  32101. (WebCore::toCairoOperator):
  32102. (WebCore::drawPatternToCairoContext):
  32103. * platform/graphics/cairo/CairoUtilities.h:
  32104. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  32105. * platform/graphics/cairo/ImageCairo.cpp:
  32106. (WebCore::Image::drawPattern):
  32107. 2010-10-04 podivilov@chromium.org <podivilov@chromium.org>
  32108. Reviewed by Yury Semikhatsky.
  32109. Web Inspector: implement pausing on event listeners (back-end part)
  32110. https://bugs.webkit.org/show_bug.cgi?id=46624
  32111. * bindings/js/ScriptDebugServer.cpp:
  32112. (WebCore::ScriptDebugServer::setPauseOnNextStatement):
  32113. * bindings/js/ScriptDebugServer.h:
  32114. * bindings/v8/ScriptDebugServer.cpp:
  32115. (WebCore::ScriptDebugServer::setPauseOnNextStatement):
  32116. * bindings/v8/ScriptDebugServer.h:
  32117. * dom/Node.cpp:
  32118. (WebCore::Node::dispatchGenericEvent):
  32119. * inspector/InspectorController.cpp:
  32120. (WebCore::InspectorController::didCommitLoad):
  32121. (WebCore::InspectorController::setNativeBreakpoint):
  32122. (WebCore::InspectorController::removeNativeBreakpoint):
  32123. (WebCore::InspectorController::shouldBreakOnEvent):
  32124. (WebCore::InspectorController::shouldBreakOnXMLHttpRequest):
  32125. * inspector/InspectorController.h:
  32126. * inspector/InspectorDebuggerAgent.cpp:
  32127. (WebCore::InspectorDebuggerAgent::~InspectorDebuggerAgent):
  32128. (WebCore::InspectorDebuggerAgent::schedulePauseOnNextStatement):
  32129. (WebCore::InspectorDebuggerAgent::cancelPauseOnNextStatement):
  32130. (WebCore::InspectorDebuggerAgent::pause):
  32131. (WebCore::InspectorDebuggerAgent::didContinue):
  32132. (WebCore::InspectorDebuggerAgent::breakProgram):
  32133. * inspector/InspectorDebuggerAgent.h:
  32134. * inspector/InspectorInstrumentation.cpp:
  32135. (WebCore::eventHasListeners):
  32136. (WebCore::InspectorInstrumentation::instrumentWillDispatchEventImpl):
  32137. (WebCore::InspectorInstrumentation::instrumentDidDispatchEventImpl):
  32138. (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequestImpl):
  32139. * inspector/InspectorInstrumentation.h:
  32140. (WebCore::InspectorInstrumentation::instrumentWillDispatchEvent):
  32141. (WebCore::InspectorInstrumentation::instrumentDidDispatchEvent):
  32142. (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequest):
  32143. * inspector/InspectorTimelineAgent.cpp:
  32144. (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
  32145. * inspector/InspectorTimelineAgent.h:
  32146. (WebCore::InspectorTimelineAgent::id):
  32147. * inspector/front-end/CallStackSidebarPane.js:
  32148. 2010-10-04 Pavel Feldman <pfeldman@chromium.org>
  32149. Reviewed by Yury Semikhatsky.
  32150. Web Inspector: add total bar to the network panel.
  32151. https://bugs.webkit.org/show_bug.cgi?id=47081
  32152. * English.lproj/localizedStrings.js:
  32153. * inspector/front-end/ConsoleView.js:
  32154. (WebInspector.ConsoleView.createDividerElement):
  32155. * inspector/front-end/DataGrid.js:
  32156. (WebInspector.DataGrid.prototype.removeChild):
  32157. (WebInspector.DataGrid.prototype.sortNodes):
  32158. (WebInspector.DataGrid.prototype._clickInHeaderCell):
  32159. (WebInspector.DataGrid.prototype.markColumnAsSortedBy):
  32160. * inspector/front-end/NetworkPanel.js:
  32161. (WebInspector.NetworkPanel):
  32162. (WebInspector.NetworkPanel.prototype.resize):
  32163. (WebInspector.NetworkPanel.prototype._positionSummaryBar):
  32164. (WebInspector.NetworkPanel.prototype._createTimelineGrid):
  32165. (WebInspector.NetworkPanel.prototype._createSortingFunctions):
  32166. (WebInspector.NetworkPanel.prototype._sortItems):
  32167. (WebInspector.NetworkPanel.prototype._sortByTimeline):
  32168. (WebInspector.NetworkPanel.prototype._createFilterStatusBarItems):
  32169. (WebInspector.NetworkPanel.prototype._createSummaryBar):
  32170. (WebInspector.NetworkPanel.prototype._updateSummaryBar):
  32171. (WebInspector.NetworkPanel.prototype._updateFilter):
  32172. (WebInspector.NetworkPanel.prototype.show):
  32173. (WebInspector.NetworkPanel.prototype.refresh):
  32174. (WebInspector.NetworkPanel.prototype.reset):
  32175. (WebInspector.NetworkDataGridNode.SizeComparator):
  32176. (WebInspector.NetworkDataGridNode.ResourcePropertyComparator):
  32177. (WebInspector.NetworkTotalGridNode):
  32178. (WebInspector.NetworkTotalGridNode.prototype.createCells):
  32179. * inspector/front-end/ResourcesPanel.js:
  32180. (WebInspector.ResourcesPanel.prototype.createFilterPanel):
  32181. * inspector/front-end/inspector.css:
  32182. (.scope-bar-divider):
  32183. * inspector/front-end/networkPanel.css:
  32184. (.network-timeline-grid):
  32185. (.network-summary-bar):
  32186. (.network-summary-bar-bottom):
  32187. (.data-grid td .network-summary-bar):
  32188. 2010-09-28 Luiz Agostini <luiz.agostini@openbossa.org>
  32189. Reviewed by Kenneth Rohde Christiansen.
  32190. Viewport data change notifications
  32191. https://bugs.webkit.org/show_bug.cgi?id=46755
  32192. Regarding viewport meta tags, what matters for browser developers is to know when the viewport data has
  32193. changed and its current value. Viewport data belongs to the document, but it is useful to keep the current
  32194. viewport data in Page as a reference, to be able to send notifications only when the current viewport
  32195. has changed.
  32196. * dom/Document.cpp:
  32197. (WebCore::Document::processViewport):
  32198. (WebCore::Document::setInPageCache):
  32199. * dom/ViewportArguments.h:
  32200. (WebCore::ViewportArguments::operator==):
  32201. * html/HTMLBodyElement.cpp:
  32202. (WebCore::HTMLBodyElement::HTMLBodyElement):
  32203. * page/Chrome.cpp:
  32204. (WebCore::Chrome::viewportDataChanged):
  32205. * page/Chrome.h:
  32206. * page/ChromeClient.h:
  32207. (WebCore::ChromeClient::viewportDataChanged):
  32208. * page/Page.cpp:
  32209. (WebCore::Page::updateViewportArguments):
  32210. * page/Page.h:
  32211. (WebCore::Page::viewportArguments):
  32212. 2010-10-03 Kent Tamura <tkent@chromium.org>
  32213. Unreviewed, build fix for r68996.
  32214. * html/BaseDateAndTimeInputType.cpp: Includes <wtf/MathExtras.h> for isfinite().
  32215. * html/MonthInputType.cpp: ditto.
  32216. * html/NumberInputType.cpp: ditto.
  32217. * html/RangeInputType.cpp: ditto.
  32218. 2010-10-03 Kent Tamura <tkent@chromium.org>
  32219. Reviewed by Dimitri Glazkov.
  32220. Refactor HTMLInputElement: Move parseToDouble() and
  32221. parseToDateComponents() to InputType.
  32222. https://bugs.webkit.org/show_bug.cgi?id=46965
  32223. Introduce BaseDateAndTimeInputType, which is a super class of
  32224. date, datetime, datetime-local, month, time, and week types.
  32225. No new tests. Just a refactoring.
  32226. * Android.mk: Add BaseDateAndTimeInputType.
  32227. * CMakeLists.txt: ditto.
  32228. * GNUmakefile.am: ditto.
  32229. * WebCore.gypi: ditto.
  32230. * WebCore.pro: ditto.
  32231. * WebCore.vcproj/WebCore.vcproj: ditto.
  32232. * WebCore.xcodeproj/project.pbxproj: ditto.
  32233. * html/BaseDateAndTimeInputType.cpp: Added.
  32234. (WebCore::BaseDateAndTimeInputType::parseToDouble):
  32235. (WebCore::BaseDateAndTimeInputType::parseToDateComponents):
  32236. * html/BaseDateAndTimeInputType.h: Added.
  32237. (WebCore::BaseDateAndTimeInputType::BaseDateAndTimeInputType):
  32238. * html/DateInputType.cpp:
  32239. (WebCore::DateInputType::parseToDateComponentsInternal):
  32240. * html/DateInputType.h:
  32241. (WebCore::DateInputType::DateInputType):
  32242. * html/DateTimeInputType.cpp:
  32243. (WebCore::DateTimeInputType::parseToDateComponentsInternal):
  32244. * html/DateTimeInputType.h:
  32245. (WebCore::DateTimeInputType::DateTimeInputType):
  32246. * html/DateTimeLocalInputType.cpp:
  32247. (WebCore::DateTimeLocalInputType::parseToDateComponentsInternal):
  32248. * html/DateTimeLocalInputType.h:
  32249. (WebCore::DateTimeLocalInputType::DateTimeLocalInputType):
  32250. * html/HTMLInputElement.cpp: Replace parseToD* calls with m_inputType->parseToD*.
  32251. (WebCore::HTMLInputElement::typeMismatch):
  32252. (WebCore::HTMLInputElement::rangeUnderflow):
  32253. (WebCore::HTMLInputElement::rangeOverflow):
  32254. (WebCore::HTMLInputElement::minimum):
  32255. (WebCore::HTMLInputElement::maximum):
  32256. (WebCore::HTMLInputElement::stepBase):
  32257. (WebCore::HTMLInputElement::stepMismatch):
  32258. (WebCore::HTMLInputElement::applyStep):
  32259. (WebCore::HTMLInputElement::valueAsDate):
  32260. (WebCore::HTMLInputElement::valueAsNumber):
  32261. (WebCore::HTMLInputElement::handleKeyEventForRange):
  32262. (WebCore::HTMLInputElement::stepUpFromRenderer):
  32263. * html/HTMLInputElement.h:
  32264. * html/InputType.cpp:
  32265. (WebCore::InputType::parseToDouble):
  32266. (WebCore::InputType::parseToDateComponents):
  32267. * html/InputType.h:
  32268. * html/MonthInputType.cpp:
  32269. (WebCore::MonthInputType::parseToDouble):
  32270. (WebCore::MonthInputType::parseToDateComponentsInternal):
  32271. * html/MonthInputType.h:
  32272. (WebCore::MonthInputType::MonthInputType):
  32273. * html/NumberInputType.cpp:
  32274. (WebCore::NumberInputType::parseToDouble):
  32275. * html/NumberInputType.h:
  32276. * html/RangeInputType.cpp:
  32277. (WebCore::RangeInputType::parseToDouble):
  32278. * html/RangeInputType.h:
  32279. * html/TimeInputType.cpp:
  32280. (WebCore::TimeInputType::parseToDateComponentsInternal):
  32281. * html/TimeInputType.h:
  32282. (WebCore::TimeInputType::TimeInputType):
  32283. * html/WeekInputType.cpp:
  32284. (WebCore::WeekInputType::parseToDateComponentsInternal):
  32285. * html/WeekInputType.h:
  32286. (WebCore::WeekInputType::WeekInputType):
  32287. 2010-10-03 Adam Barth <abarth@webkit.org>
  32288. Reviewed by Holger Freyther.
  32289. ASSERT(m_state = Open); is bad news bears
  32290. https://bugs.webkit.org/show_bug.cgi?id=47057
  32291. Added by ap (review by darin) in http://trac.webkit.org/changeset/50951
  32292. Too bad the compiler doesn't catch these errors. I don't believe this
  32293. is possible to test.
  32294. * platform/network/cf/SocketStreamHandleCFNet.cpp:
  32295. (WebCore::SocketStreamHandle::writeStreamCallback):
  32296. 2010-10-03 Adam Barth <abarth@webkit.org>
  32297. Reviewed by Holger Freyther.
  32298. All the WebSocket tests crash
  32299. https://bugs.webkit.org/show_bug.cgi?id=47056
  32300. More code that tries to hold onto temporaries with references.
  32301. * websockets/WebSocketChannel.cpp:
  32302. (WebCore::WebSocketChannel::didOpen):
  32303. 2010-10-03 Adam Barth <abarth@webkit.org>
  32304. Reviewed by Holger Freyther.
  32305. All the WebSocket tests crash
  32306. https://bugs.webkit.org/show_bug.cgi?id=47055
  32307. This code attempts to hold onto temporary objects using references.
  32308. That doesn't work in C++. Instead, we need to actually store the
  32309. objects somewhere.
  32310. * bindings/js/JSWebSocketCustom.cpp:
  32311. (WebCore::JSWebSocketConstructor::constructJSWebSocket):
  32312. 2010-10-02 Diego Gonzalez <diegohcg@webkit.org>
  32313. Reviewed by Kenneth Rohde Christiansen.
  32314. [Qt] Provide Qt support for DeviceMotion/Orientation clients
  32315. https://bugs.webkit.org/show_bug.cgi?id=47051
  32316. Add Qt DeviceMotion/Orientation dummy clients in build system.
  32317. * WebCore.pro:
  32318. 2010-10-01 Nikolas Zimmermann <nzimmermann@rim.com>
  32319. Reviewed by Dirk Schulze.
  32320. Rewrite SVG text layout code
  32321. https://bugs.webkit.org/show_bug.cgi?id=45532
  32322. Modernize SVG text layout engine, split the layout process into three phases, so that each results can be cached (which will be done in a follow-up patch).
  32323. Phase #1) - SVGTextLayoutAttributesBuilder
  32324. ------------------------------------------
  32325. Parse x/y/dx/dy/rotate values of the <text> subtree (<text x="30 40">A<tspan>B<tspan x="50">C</tspan></tspan></text>)
  32326. This is done by SVGTextLayoutAttributesBuilder. It builds a SVGTextLayoutAttributes object for each RenderSVGInlineText renderer, and stores it there.
  32327. Phase #1 is started from RenderSVGText::layout(), before RenderBlockLineLayout is laying out the inline children, and thus before the InlineBox tree is created.
  32328. Now we know which character has an associated absolute x or y position, denoting the start of a new text chunk. Whenever we encounter a new text chunk
  32329. RenderBlockLineLayout should create a new SVGInlineTextBox. This is very important, as BiDi reordering shouldn't happen across text chunks, as well as ligature detection.
  32330. The text chunk concept is now merged right into the InlineBox tree, so we don't need to hack around the lack of that, as done for the previous years.
  32331. Phase #2) - SVGTextLayoutEngine
  32332. ------------------------------------------
  32333. RenderSVGText::layout() calls RenderBlock::layoutInlineChildren() right after phase #1 ends. The InlineBox tree is created. During that process findNextLineBreak()
  32334. decides how to split up the text into InlineTextBoxes. It has already been patched, to ask RenderSVGInlineText::characterStartsNewTextChunk(int position), whether the
  32335. current character should go in a new SVGInlineTextBox or not. This requires that phase #1 already stored these information in the RenderSVGInlineText objects.
  32336. For each <text> object a SVGRootInlineBox is created (in constructLine()) and all child boxes are added. After that SVGRootInlineBox::computePerCharacterLayoutInformation()
  32337. is called (unlike HTML text, which splits the vertical & horizontal layout in two phases, it's just one single phase for SVG). This function invokes SVGTextLayoutEngine
  32338. and starts phase #2 of the layout process.
  32339. SVGTextLayoutEngine lays out the content of each SVGInlineTextBox either on a line or a path. It contains all the logic handling, alignment-baseline, dominant-baseline,
  32340. letter-spacing, word-spacing, kerning, glyph-orientation-(horizontal|vertical), rotation, etc. etc.
  32341. As result it generates a set of SVGTextFragment objects which are stored in each SVGInlineTextBox. Each SVGTextFragment is a portion of text that can be rendered/measured
  32342. at once. Some examples to illustrate what's going on:
  32343. <text x="20">ABCD</text>:
  32344. - SVGInlineTextBox
  32345. - SVGTextFragment, start 0 length 4, "ABCD" (x=20)
  32346. <text x="20 100">ABCD</text>:
  32347. - SVGInlineTextBox
  32348. - SVGTextFragment, start 0 length 1, "A" (x=20)
  32349. - SVGInlineTextBox
  32350. - SVGTextFragment, start 0 length 1, "B" (x=100)
  32351. - SVGTextFragment, start 1 length 2, "CD" (x=100 + advance_of_last)
  32352. <text><textPath xlink:href="#somePath">ABCD</textPath></text>:
  32353. - SVGInlineTextBox
  32354. - SVGTextFragment, start 0 length 1, "A" (rotated!)
  32355. - SVGTextFragment, start 1 length 1, "B" (rotated!)
  32356. - SVGTextFragment, start 2 length 1, "C" (rotated!)
  32357. - SVGTextFragment, start 3 length 1, "D" (rotated!)
  32358. <text x="0 50 100">A<tspan>B</tspan>C</text>
  32359. - SVGInlineTextBox
  32360. - SVGTextFragment, start 0 length 1, "A" (x=0)
  32361. - SVGInlineFlowBox
  32362. - SVGInlineTextBox
  32363. - SVGTextFragment, start 0 length 1, "B" (x=50)
  32364. - SVGInlineTextBox
  32365. - SVGTextFragment, start 0 length 1, "C" (x=100)
  32366. When painting text SVGInlineTextBox just walks its fragments and paints them. Text selection works the same.
  32367. All text measurements (width/height etc.) have already been done in phase #2 and aren't required anymore while painting/selecting.
  32368. This is one of the main benefits of the new text layout engine, painting & selection is cheap now, compared to the layout process.
  32369. We're now doing phase #1 everytime RenderSVGText::layout() is called. This is not necessary, we only have to recompute these information
  32370. if the x/y/dx/dy or rotate list of an element in the <text> subtree changes or the text content itself -> this will be done in a follow-up patch.
  32371. It's likely that we'll also find ways to skip phase #2 in certain situations.
  32372. Phase #3) - SVGTextChunkBuilder
  32373. ------------------------------------------
  32374. After phase #2 finished, we can post-process the text fragments. Certain operations have to be applied on a "per chunk" basis.
  32375. text-anchor should be applied to individual text chunks, as well as textLength corrections (lengthAdjust="spacing" / lengthAdjust="spacingAndGlyphs").
  32376. SVGTextChunkBuilder just walks the SVGInlineTextBox, and collects all boxes belonging to a certain chunk. For each of the chunks all fragments
  32377. are post-processed. For instance for text-anchor="middle", all x positions of all fragments are shifted by -fragmentWidth/2 (for horizonal text).
  32378. After phase #1 - #3 finished, SVGRootInlineBox::computePerCharacterLayoutInformation() utilizies the stored SVGTextFragments to lay out all child
  32379. boxes in the InlineBox tree (setWidth/Height, etc.), the size and position of the SVGRootInlineBox and it's parent RenderSVGText object.
  32380. This should give interessted readers a good summary of how the new text layout engine works.
  32381. See LayoutTests/ChangeLog for more details on test progression.
  32382. Tests: svg/custom/text-rotation.svg
  32383. svg/custom/text-x-dy-lists.svg
  32384. * Android.mk: Add SVGTextLayoutEngine.* / SVGTextChunkBuilder.* to build. Remove SVGCharacterData.* / SVGTextChunkLayoutInfo.* / SVGTextLayoutUtilities.* from build.
  32385. * CMakeLists.txt: Ditto.
  32386. * GNUmakefile.am: Ditto.
  32387. * WebCore.gypi: Ditto.
  32388. * WebCore.pro: Ditto.
  32389. * WebCore.vcproj/WebCore.vcproj: Ditto.
  32390. * WebCore.xcodeproj/project.pbxproj: Ditto.
  32391. * rendering/InlineBox.h:
  32392. (WebCore::InlineBox::isSVGInlineFlowBox): Add helper function to identify SVGInlineFlowBoxes. The variants for SVGInlineTextBox etc. already exist.
  32393. * rendering/InlineTextBox.h: Devirtualize selectionStartEnd, SVG is no longer overriding it.
  32394. * rendering/RenderSVGAllInOne.cpp: removes
  32395. * rendering/RenderText.cpp:
  32396. (WebCore::RenderText::setTextInternal): Remove SVG specific hacks, moved to RenderSVGInlineText.
  32397. * rendering/SVGCharacterData.cpp: Removed.
  32398. * rendering/SVGCharacterData.h: Removed.
  32399. * rendering/SVGCharacterLayoutInfo.cpp: Removed.
  32400. * rendering/SVGCharacterLayoutInfo.h: Removed.
  32401. * rendering/SVGRenderTreeAsText.cpp: Hack DRT output to be somewhat compatible with the current output, the plan is to change it completly after this patch.
  32402. (WebCore::writeRenderSVGTextBox):
  32403. (WebCore::writeSVGInlineTextBox):
  32404. * rendering/SVGTextChunkLayoutInfo.cpp: Removed.
  32405. * rendering/SVGTextChunkLayoutInfo.h: Removed.
  32406. * rendering/SVGTextLayoutUtilities.cpp: Removed.
  32407. * rendering/SVGTextLayoutUtilities.h: Removed.
  32408. * rendering/style/RenderStyle.cpp:
  32409. (WebCore::RenderStyle::diff): Only return immediately if SVGRenderStyle::diff produced StyleDifferenceLayout, it it's sth. else be sure to ask RenderStyle itself what to do.
  32410. * rendering/style/SVGRenderStyle.h:
  32411. (WebCore::SVGRenderStyle::isVerticalWritingMode): New helper method, moved from SVGTextLayoutUtilities.
  32412. * rendering/svg/RenderSVGInlineText.cpp:
  32413. (WebCore::applySVGWhitespaceRules): Moved from RenderText into a SVG specific place.
  32414. (WebCore::RenderSVGInlineText::RenderSVGInlineText): Use applySVGWhitespaceRules on the incoming text.
  32415. (WebCore::RenderSVGInlineText::styleDidChange): Only apply SVG white space rules, when using xml:space="preserve", otherwhise the constructor already handled it.
  32416. (WebCore::RenderSVGInlineText::characterStartsNewTextChunk): Create text chunks for absolute y values as well, SVG 1.1 2nd Edition demands that.
  32417. (WebCore::RenderSVGInlineText::positionForPoint): New function operating on all SVGInlineTextBoxes and their SVGTextFragments.
  32418. * rendering/svg/RenderSVGInlineText.h:
  32419. (WebCore::RenderSVGInlineText::layoutAttributes): Stores the layout attributes generated by SVGTextLayoutAttributesBuilder.
  32420. (WebCore::toRenderSVGInlineText): New helper methods for casting.
  32421. * rendering/svg/RenderSVGText.cpp:
  32422. (WebCore::RenderSVGText::layout): Add comment, that SVGTextLayoutAttributesBuilder is just phase one of the layout process.
  32423. (WebCore::RenderSVGText::positionForPoint): Simplified implementation for SVGs needs.
  32424. * rendering/svg/RenderSVGText.h:
  32425. * rendering/svg/SVGInlineFlowBox.cpp:
  32426. (WebCore::SVGInlineFlowBox::paintSelectionBackground): Seperated selection background drawing from actual text rendering, to make sure selection is always in background for SVG.
  32427. (WebCore::SVGInlineFlowBox::paint): Call computetextMatchMarkerRectForRenderer, before painting.
  32428. (WebCore::SVGInlineFlowBox::computeTextMatchMarkerRectForRenderer): New method.
  32429. * rendering/svg/SVGInlineFlowBox.h:
  32430. (WebCore::SVGInlineFlowBox::isSVGInlineFlowBox):
  32431. * rendering/svg/SVGInlineTextBox.cpp: Completly rewritten, operates on SVGTextFragments, produced by the SVGTextLayoutEngine. Whole new concept, compared to the old hack.
  32432. * rendering/svg/SVGInlineTextBox.h:
  32433. (WebCore::SVGInlineTextBox::clearTextFragments): Only used by SVGTextLayoutEngine, to clean up previously computed fragments.
  32434. (WebCore::SVGInlineTextBox::textFragments): Offers access to the fragments in the box.
  32435. (WebCore::SVGInlineTextBox::startsNewTextChunk): Does this box start a new text chunk?
  32436. (WebCore::SVGInlineTextBox::setStartsNewTextChunk): SVGTextLayoutEngine marks this box, if it starts a new text chunk.
  32437. * rendering/svg/SVGRootInlineBox.cpp: Remove old code regarding text chunk parts.
  32438. (WebCore::SVGRootInlineBox::paint): Selection is now painted before text, to assure it's really in the background.
  32439. (WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation): Use new SVGTextLayoutEngine.
  32440. (WebCore::SVGRootInlineBox::layoutCharactersInTextBoxes): Feed SVGTextLayoutEngine with SVGInlineTextBoxes, detect the begin/end of path layouts.
  32441. (WebCore::SVGRootInlineBox::layoutChildBoxes): Use new isSVGInlineTextBox() helper method.
  32442. (WebCore::SVGRootInlineBox::closestLeafChildForPosition): Simplified version for SVG.
  32443. * rendering/svg/SVGRootInlineBox.h: Remove access to text chunks, they're now longer stored in the SVGRootInlineBox.
  32444. * rendering/svg/SVGTextChunk.cpp: s/SVGTextChunkNew/SVGTextChunk/
  32445. * rendering/svg/SVGTextChunk.h:
  32446. * rendering/svg/SVGTextChunkBuilder.cpp: Added.
  32447. * rendering/svg/SVGTextChunkBuilder.h: Added.
  32448. * rendering/svg/SVGTextLayoutAttributes.cpp: Constify dump() method.
  32449. * rendering/svg/SVGTextLayoutAttributes.h:
  32450. (WebCore::SVGTextLayoutAttributes::textMetricsValues):
  32451. * rendering/svg/SVGTextLayoutAttributesBuilder.cpp: Rewritten, consume less memory, while building the layout attributes.
  32452. * rendering/svg/SVGTextLayoutAttributesBuilder.h:
  32453. * rendering/svg/SVGTextLayoutEngine.cpp: Added.
  32454. * rendering/svg/SVGTextLayoutEngine.h: Added.
  32455. * rendering/svg/SVGTextQuery.cpp: Rewritten to deal with the new SVGTextFragment/SVGTextLayoutAttributes logic.
  32456. * rendering/svg/SVGTextQuery.h:
  32457. 2010-10-02 Alpha Lam <hclam@chromium.org>
  32458. Build fix. Not reviewed.
  32459. An adhoc fix for a crash found by reliability bot. This will make the
  32460. reliability bot happy. A proper fix is pending commit.
  32461. * platform/graphics/chromium/VideoLayerChromium.cpp:
  32462. (WebCore::VideoLayerChromium::~VideoLayerChromium):
  32463. 2010-10-01 Ryosuke Niwa <rniwa@webkit.org>
  32464. Reviewed by Darin Adler.
  32465. FormatBlockCommand and IndentOutdentCommand should use the same code to iterate paragraphs
  32466. https://bugs.webkit.org/show_bug.cgi?id=46840
  32467. Added ApplyBlockElementCommand, which is an abstract class inherited by FormatBlockCommand
  32468. and IndentOutdentCommand. It is intended to be inherited by InsertListCommand as well.
  32469. ApplyBlockElementCommand's doApply verifies the current selection and exits early
  32470. if it's invalid or orphaned or if the current selection is outside editable region.
  32471. It then calls formatSelection to apply the block element after which doApply restores the selection.
  32472. formatSelection iterates through paragraphs and calls formatParagraph, a pure virtual function
  32473. implemented by FormatBlockCommand and IndentOutdentCommand, on each paragraph.
  32474. No new tests are added since this is a refactoring.
  32475. * Android.mk: Added ApplyBlockElementCommand.cpp.
  32476. * CMakeLists.txt: Ditto.
  32477. * GNUmakefile.am: Added ApplyBlockElementCommand.cpp and ApplyBlockElementCommand.h.
  32478. * WebCore.gypi: Ditto.
  32479. * WebCore.pro: Ditto.
  32480. * WebCore.xcodeproj/project.pbxproj: Ditto.
  32481. * editing/ApplyBlockElementCommand.cpp: Added.
  32482. (WebCore::countParagraphs): Moved from IndentOutdentCommand.cpp
  32483. (WebCore::ApplyBlockElementCommand::ApplyBlockElementCommand): Added.
  32484. (WebCore::ApplyBlockElementCommand::doApply): Moved from IndentOutdentCommand::doApply.
  32485. (WebCore::ApplyBlockElementCommand::formatSelection): Moved from IndentOutdentCommand::indentRegion.
  32486. (WebCore::ApplyBlockElementCommand::createBlockElement): Added.
  32487. (WebCore::ApplyBlockElementCommand::splitTextNodes): Moved from IndentOutdentCommand::splitTextNodes.
  32488. * editing/ApplyBlockElementCommand.h: Added.
  32489. * editing/EditingAllInOne.cpp:
  32490. * editing/EditorCommand.cpp:
  32491. (WebCore::executeFormatBlock):
  32492. * editing/FormatBlockCommand.cpp: Removed doApply.
  32493. (WebCore::FormatBlockCommand::FormatBlockCommand): Calls ApplyBlockElementCommand's constructor.
  32494. (WebCore::FormatBlockCommand::formatParagraph): Renamed from doApplyForSingleParagraph.
  32495. * editing/FormatBlockCommand.h: FormatBlockCommand inherits from ApplyBlockElementCommand.
  32496. (WebCore::FormatBlockCommand::create): Uses QualifiedName for the tag name instead of AtomicString.
  32497. * editing/IndentOutdentCommand.cpp: Removed doApply, indentIntoBlockquote, and splitTextNodes.
  32498. (WebCore::IndentOutdentCommand::IndentOutdentCommand): Calls ApplyBlockElementCommand's constructor.
  32499. (WebCore::IndentOutdentCommand::indentIntoBlockquote): The code to nullify targetBlockquote
  32500. when the next paragraph is in a different table cell is moved to ApplyBlockElementCommand::formatSelection.
  32501. (WebCore::IndentOutdentCommand::formatSelection): Added. Calls outdentRegion when outdenting.
  32502. (WebCore::IndentOutdentCommand::formatParagraph): Added. Calls tryIndentingAsListItem and indentIntoBlockquote.
  32503. * editing/IndentOutdentCommand.h: IndentOutdentCommand inherits from ApplyBlockElementCommand.
  32504. 2010-10-01 Mark Rowe <mrowe@apple.com>
  32505. Build fix.
  32506. Clear the executable bit from a number of source files.
  32507. * page/Frame.cpp:
  32508. * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp:
  32509. * platform/graphics/win/WKCACFLayerRenderer.cpp:
  32510. * platform/graphics/win/WKCACFLayerRenderer.h:
  32511. * platform/network/ResourceRawHeaders.h:
  32512. * rendering/RenderLayerCompositor.cpp:
  32513. * rendering/RenderLayerCompositor.h:
  32514. 2010-10-01 Martin Robinson <mrobinson@igalia.com>
  32515. Reviewed by Adam Barth.
  32516. [GTK] r68923 broke some plugin tests
  32517. https://bugs.webkit.org/show_bug.cgi?id=47040
  32518. No longer pass focus and blur events to plugins when the "old" DOM Level
  32519. 2 DOMFocusIn/DOMFocusOut events occur. r68923 made a change which means
  32520. that the DOM Level 3 version is always fired for this event.
  32521. No new tests, as this should cause the failing tests to pass.
  32522. * plugins/PluginView.cpp:
  32523. (WebCore::PluginView::handleEvent): No longer pass focus and blur events to
  32524. plugins when DOMFocusIn / DOMFocusOut events occur.
  32525. 2010-10-01 Anders Carlsson <andersca@apple.com>
  32526. Reviewed by Sam Weinig.
  32527. Plug-ins should have access to the private browsing state.
  32528. https://bugs.webkit.org/show_bug.cgi?id=47031
  32529. <rdar://problem/8505405>
  32530. * page/Page.cpp:
  32531. (WebCore::Page::privateBrowsingStateChanged):
  32532. When iterating over all widgets, also look for PluginViewBase classes and invoke their
  32533. privateBrowsingStateChange member function.
  32534. * plugins/PluginViewBase.h:
  32535. (WebCore::PluginViewBase::privateBrowsingStateChanged):
  32536. Add function.
  32537. 2010-10-01 Brian Weinstein <bweinstein@apple.com>
  32538. Build Fix for Windows.
  32539. * WebCore.vcproj/WebCore.vcproj: Don't have an empty post-build step, use
  32540. WebCoreCommon.vsprops to handle post-build step.
  32541. * WebCore.vcproj/WebCoreCommon.vsprops: Set the post-build step to delete
  32542. $(WebKitOutputDir)/buildfailed.
  32543. 2010-10-01 Ragner Magalhaes <ragner.magalhaes@openbossa.org>
  32544. Reviewed by Kenneth Rohde Christiansen.
  32545. [Qt] Segmentation fault during zoom out
  32546. https://bugs.webkit.org/show_bug.cgi?id=46984
  32547. * platform/qt/QtMobileWebStyle.cpp:
  32548. (QtMobileWebStyle::drawChecker): Adjust checkerSize to be greater than or equals to middle.
  32549. 2010-10-01 Anders Carlsson <andersca@apple.com>
  32550. Another Qt build fix attempt.
  32551. * WebCore.pro:
  32552. 2010-10-01 David Hyatt <hyatt@apple.com>
  32553. Reviewed by Dan Bernstein.
  32554. https://bugs.webkit.org/show_bug.cgi?id=47021
  32555. Patch the floatBottom function and its friends. Rename them and consolidate them to be block-flow-aware.
  32556. Nothing testable yet, since most of the float code is still unpatched.
  32557. * rendering/RenderBlock.cpp:
  32558. (WebCore::RenderBlock::layoutBlock):
  32559. (WebCore::RenderBlock::layoutBlockChildren):
  32560. (WebCore::RenderBlock::layoutBlockChild):
  32561. (WebCore::RenderBlock::positionNewFloats):
  32562. (WebCore::RenderBlock::newLine):
  32563. (WebCore::RenderBlock::nextFloatLogicalBottomBelow):
  32564. (WebCore::RenderBlock::lowestFloatLogicalBottom):
  32565. (WebCore::RenderBlock::clearFloats):
  32566. (WebCore::RenderBlock::addOverhangingFloats):
  32567. (WebCore::RenderBlock::getClearDelta):
  32568. * rendering/RenderBlock.h:
  32569. (WebCore::RenderBlock::logicalBottomForFloat):
  32570. (WebCore::RenderBlock::hasOverhangingFloats):
  32571. * rendering/RenderBlockLineLayout.cpp:
  32572. (WebCore::RenderBlock::fitBelowFloats):
  32573. 2010-10-01 Anders Carlsson <andersca@apple.com>
  32574. Fix typo.
  32575. * platform/network/qt/ProxyServerQt.cpp:
  32576. (WebCore::proxyServersForURL):
  32577. 2010-10-01 Anders Carlsson <andersca@apple.com>
  32578. Add Qt ProxyServer stub.
  32579. * WebCore.pro:
  32580. * platform/network/qt/ProxyServerQt.cpp: Added.
  32581. (WebCore::proxyServersForURL):
  32582. 2010-10-01 Anders Carlsson <andersca@apple.com>
  32583. Reviewed by Dan Bernstein.
  32584. Add proxy server query function proxyServersForURL and change the Mac plug-in code to use it
  32585. https://bugs.webkit.org/show_bug.cgi?id=47022
  32586. <rdar://problem/8504712>
  32587. * WebCore.exp.in:
  32588. Export proxyServersForURL and toString.
  32589. * WebCore.vcproj/WebCore.vcproj:
  32590. * WebCore.xcodeproj/project.pbxproj:
  32591. Add new files.
  32592. * platform/network/ProxyServer.cpp: Added.
  32593. (WebCore::appendProxyServerString):
  32594. (WebCore::toString):
  32595. New function that converts a vector of ProxyServers into a PAC style string.
  32596. * platform/network/ProxyServer.h: Added.
  32597. (WebCore::ProxyServer::ProxyServer):
  32598. (WebCore::ProxyServer::type):
  32599. (WebCore::ProxyServer::hostName):
  32600. (WebCore::ProxyServer::port):
  32601. Add ProxyServer class.
  32602. * platform/network/cf/ProxyServerCFNet.cpp: Added.
  32603. (WebCore::proxyServersForURL):
  32604. (WebCore::addProxyServersForURL):
  32605. Query CFNetwork for the proxy servers given a URL.
  32606. 2010-09-30 Zhenyao Mo <zmo@google.com>
  32607. Reviewed by Kenneth Russell.
  32608. texImage2D fails on 16-bit-per-channel images
  32609. https://bugs.webkit.org/show_bug.cgi?id=46947
  32610. * platform/graphics/GraphicsContext3D.cpp: Handling 16-bit-per-channel source formats.
  32611. (WebCore::convertColor16To8):
  32612. (WebCore::doPacking):
  32613. * platform/graphics/GraphicsContext3D.h: Ditto.
  32614. * platform/graphics/cg/GraphicsContext3DCG.cpp: Ditto.
  32615. (WebCore::GraphicsContext3D::getImageData):
  32616. 2010-10-01 Eric Uhrhane <ericu@chromium.org>
  32617. Reviewed by Nate Chapin.
  32618. Add v8 binding helpers to make FileWriter be an EventTarget.
  32619. https://bugs.webkit.org/show_bug.cgi?id=46910
  32620. No new tests; still waiting for the first complete implementation.
  32621. * bindings/v8/V8DOMWrapper.cpp:
  32622. (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
  32623. 2010-10-01 David Hyatt <hyatt@apple.com>
  32624. Reviewed by Sam Weinig.
  32625. https://bugs.webkit.org/show_bug.cgi?id=47015
  32626. Change FloatingObject to store its dimensions as a rect.
  32627. This will make it easier for logical access for block-flow later on if
  32628. top/bottom is no different from left/width. This change also simplifies
  32629. calling code a bit in places.
  32630. * rendering/RenderBlock.cpp:
  32631. (WebCore::RenderBlock::addOverflowFromFloats):
  32632. (WebCore::RenderBlock::repaintOverhangingFloats):
  32633. (WebCore::RenderBlock::paintFloats):
  32634. (WebCore::RenderBlock::fillSelectionGaps):
  32635. (WebCore::RenderBlock::insertFloatingObject):
  32636. (WebCore::RenderBlock::removeFloatingObject):
  32637. (WebCore::RenderBlock::removeFloatingObjectsBelow):
  32638. (WebCore::RenderBlock::positionNewFloats):
  32639. (WebCore::RenderBlock::positionNewFloatOnLine):
  32640. (WebCore::RenderBlock::logicalLeftOffsetForLine):
  32641. (WebCore::RenderBlock::logicalRightOffsetForLine):
  32642. (WebCore::RenderBlock::nextFloatBottomBelow):
  32643. (WebCore::RenderBlock::floatBottom):
  32644. (WebCore::RenderBlock::lowestPosition):
  32645. (WebCore::RenderBlock::rightmostPosition):
  32646. (WebCore::RenderBlock::leftmostPosition):
  32647. (WebCore::RenderBlock::leftBottom):
  32648. (WebCore::RenderBlock::rightBottom):
  32649. (WebCore::RenderBlock::clearFloats):
  32650. (WebCore::RenderBlock::addOverhangingFloats):
  32651. (WebCore::RenderBlock::addIntrudingFloats):
  32652. (WebCore::RenderBlock::hitTestFloats):
  32653. (WebCore::RenderBlock::adjustForBorderFit):
  32654. * rendering/RenderBlock.h:
  32655. (WebCore::RenderBlock::FloatingObject::FloatingObject):
  32656. (WebCore::RenderBlock::FloatingObject::left):
  32657. (WebCore::RenderBlock::FloatingObject::right):
  32658. (WebCore::RenderBlock::FloatingObject::top):
  32659. (WebCore::RenderBlock::FloatingObject::bottom):
  32660. (WebCore::RenderBlock::FloatingObject::width):
  32661. (WebCore::RenderBlock::FloatingObject::height):
  32662. (WebCore::RenderBlock::FloatingObject::setLeft):
  32663. (WebCore::RenderBlock::FloatingObject::setTop):
  32664. (WebCore::RenderBlock::FloatingObject::setWidth):
  32665. (WebCore::RenderBlock::FloatingObject::setHeight):
  32666. (WebCore::RenderBlock::FloatingObject::frameRect):
  32667. (WebCore::RenderBlock::FloatingObject::setFrameRect):
  32668. * rendering/RenderBlockLineLayout.cpp:
  32669. (WebCore::RenderBlock::layoutInlineChildren):
  32670. (WebCore::RenderBlock::matchedEndLine):
  32671. 2010-10-01 Enrica Casucci <enrica@apple.com>
  32672. Reviewed by Darin Adler.
  32673. DOMFocusIn/DOMFocusOut return focusin/focusout Event.type
  32674. https://bugs.webkit.org/show_bug.cgi?id=42580
  32675. <rdar://problem/8107311>
  32676. This change removes the aliased type machinery from the Event class.
  32677. We now fire the event with the new name and the oldname.
  32678. Tests: Modified fast/events/focusinout.html to check the event
  32679. type.
  32680. * dom/Document.cpp:
  32681. (WebCore::Document::setFocusedNode):
  32682. * dom/Event.cpp: Removed aliasedType and hasAliasedType.
  32683. * dom/Event.h: Removed aliasedType and hasAliasedType.
  32684. * dom/EventTarget.cpp:
  32685. (WebCore::EventTarget::fireEventListeners): Removed aliasedType related code.
  32686. 2010-10-01 David Hyatt <hyatt@apple.com>
  32687. Reviewed by Darin Adler.
  32688. https://bugs.webkit.org/show_bug.cgi?id=46642, make replaced elements work with block-flow. This patch changes
  32689. all of the computeReplacedLogicalWidth and comuteReplacedLogicalHeight functions (and their helpers) to use logical width
  32690. and logical height instead.
  32691. Added fast/blockflow/block-level-images.html
  32692. * rendering/RenderBox.cpp:
  32693. (WebCore::RenderBox::computeLogicalWidth):
  32694. (WebCore::RenderBox::computeLogicalHeight):
  32695. (WebCore::RenderBox::computeReplacedLogicalWidth):
  32696. (WebCore::RenderBox::computeReplacedLogicalWidthUsing):
  32697. (WebCore::RenderBox::computeReplacedLogicalHeight):
  32698. (WebCore::RenderBox::computeReplacedLogicalHeightUsing):
  32699. (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
  32700. (WebCore::RenderBox::computePositionedLogicalHeightReplaced):
  32701. * rendering/RenderBox.h:
  32702. (WebCore::RenderBox::intrinsicLogicalWidth):
  32703. (WebCore::RenderBox::intrinsicLogicalHeight):
  32704. * rendering/RenderImage.cpp:
  32705. (WebCore::RenderImage::isLogicalWidthSpecified):
  32706. (WebCore::RenderImage::isLogicalHeightSpecified):
  32707. (WebCore::RenderImage::computeReplacedLogicalWidth):
  32708. (WebCore::RenderImage::computeReplacedLogicalHeight):
  32709. (WebCore::RenderImage::calcAspectRatioLogicalWidth):
  32710. (WebCore::RenderImage::calcAspectRatioLogicalHeight):
  32711. * rendering/RenderImage.h:
  32712. * rendering/RenderReplaced.cpp:
  32713. (WebCore::RenderReplaced::layout):
  32714. (WebCore::RenderReplaced::computeReplacedLogicalWidth):
  32715. (WebCore::RenderReplaced::computeReplacedLogicalHeight):
  32716. (WebCore::RenderReplaced::calcAspectRatioLogicalWidth):
  32717. (WebCore::RenderReplaced::calcAspectRatioLogicalHeight):
  32718. (WebCore::RenderReplaced::computePreferredLogicalWidths):
  32719. * rendering/RenderReplaced.h:
  32720. * rendering/RenderSVGRoot.cpp:
  32721. (WebCore::RenderSVGRoot::computePreferredLogicalWidths):
  32722. (WebCore::RenderSVGRoot::computeReplacedLogicalWidth):
  32723. (WebCore::RenderSVGRoot::computeReplacedLogicalHeight):
  32724. * rendering/RenderSVGRoot.h:
  32725. * rendering/RenderVideo.cpp:
  32726. (WebCore::RenderVideo::computeReplacedLogicalWidth):
  32727. (WebCore::RenderVideo::computeReplacedLogicalHeight):
  32728. * rendering/RenderVideo.h:
  32729. 2010-10-01 Nate Chapin <japhet@chromium.org>
  32730. Reviewed by Darin Adler.
  32731. Remove unused Request::buffer() and Request::m_buffer.
  32732. https://bugs.webkit.org/show_bug.cgi?id=47003
  32733. * loader/Request.h:
  32734. 2010-10-01 Dan Bernstein <mitz@apple.com>
  32735. Reviewed by Adele Peterson.
  32736. <rdar://problem/7563219> Null dereference when dragging an element with generated content
  32737. https://bugs.webkit.org/show_bug.cgi?id=47005
  32738. Test: fast/css-generated-content/drag-state.html
  32739. * rendering/RenderObject.cpp:
  32740. (WebCore::RenderObject::updateDragState): Null-check node().
  32741. 2010-10-01 Robert Hogan <robert@webkit.org>
  32742. Reviewed by Adam Barth.
  32743. [Qt] Fix http/tests/loading/redirect-methods.html
  32744. Document our redirection behaviour too.
  32745. https://bugs.webkit.org/show_bug.cgi?id=41571
  32746. * platform/network/qt/QNetworkReplyHandler.cpp:
  32747. (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
  32748. (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
  32749. * platform/network/qt/QNetworkReplyHandler.h:
  32750. 2010-10-01 Adam Roben <aroben@apple.com>
  32751. Copy forwarding headers and Inspector JS files as part of
  32752. WebCoreGenerated.vcproj
  32753. WebCoreGenerated.vcproj runs on every build, while WebCore.vcproj only
  32754. runs when a .h or .cpp file changes. By moving the copying to
  32755. WebCoreGenerated, it will happen even when someone only changes a JS
  32756. file (as happened in r68887).
  32757. Fixes <http://webkit.org/b/46988> <rdar://problem/8502489> REGRESSION
  32758. (r68887): Web Inspector: inspector/extensions*.html are failing on
  32759. Windows
  32760. Reviewed by Anders Carlsson.
  32761. * WebCore.vcproj/WebCore.vcproj: Moved invocation of
  32762. copyForwardingHeaders and copyInspectorFiles from here...
  32763. * WebCore.vcproj/WebCoreGenerated.vcproj: ...to here.
  32764. 2010-09-30 Ryosuke Niwa <rniwa@webkit.org>
  32765. Reviewed by Darin Adler.
  32766. Implement queryCommandState('justifyFull')
  32767. https://bugs.webkit.org/show_bug.cgi?id=46954
  32768. Implemented queryCommandState('justifyFull').
  32769. New tests are added to editing/style/inline-style-container.html
  32770. * editing/ApplyStyleCommand.cpp:
  32771. (WebCore::getTextAlignment): Added support for CSSValueJustify.
  32772. * editing/EditorCommand.cpp:
  32773. (WebCore::stateJustifyFull): Added.
  32774. (WebCore::createCommandMap): Added stateJustifyFull.
  32775. 2010-10-01 Jia Pu <jpu@apple.com>
  32776. Reviewed by Darin Adler.
  32777. Autocorrection shouldn't prompt the same correction after user has edited previous correction.
  32778. https://bugs.webkit.org/show_bug.cgi?id=46839
  32779. <rdar://problem/8476963>
  32780. * editing/Editor.cpp:
  32781. (WebCore::Editor::respondToChangedSelection): Remove "CorrectionIndicator" marker instead of
  32782. "Replacement" marker. Since the former controls whether we draw autocorrection underline,
  32783. and the latter is used to prevent autocorrection from being applied again on already auto-
  32784. corrected word. So the "Replacement" shouldn't be removed.
  32785. 2010-10-01 Patrick Gansterer <paroga@webkit.org>
  32786. Reviewed by Anders Carlsson.
  32787. [CMake] Add handling for ENABLE(NETSCAPE_PLUGIN_API)
  32788. https://bugs.webkit.org/show_bug.cgi?id=46309
  32789. * CMakeLists.txt:
  32790. * CMakeListsEfl.txt:
  32791. 2010-10-01 David Hyatt <hyatt@apple.com>
  32792. Reviewed by Darin Adler.
  32793. https://bugs.webkit.org/show_bug.cgi?id=46996, patch the functions dealing with the bottom of the block to
  32794. be block-flow-aware.
  32795. * rendering/RenderBlock.cpp:
  32796. (WebCore::RenderBlock::setCollapsedBottomMargin):
  32797. (WebCore::RenderBlock::handleAfterSideOfBlock):
  32798. 2010-10-01 Pratik Solanki <psolanki@apple.com>
  32799. Reviewed by Geoffrey Garen.
  32800. Specify ALWAYS_INLINE at function declaration not function definition
  32801. https://bugs.webkit.org/show_bug.cgi?id=46960
  32802. For functions defined with ALWAYS_INLINE, add the attribute to the declaration as well.
  32803. * css/CSSStyleSelector.h:
  32804. * rendering/InlineIterator.h:
  32805. * rendering/style/RenderStyle.h:
  32806. 2010-10-01 David Hyatt <hyatt@apple.com>
  32807. Reviewed by Dan Bernstein.
  32808. https://bugs.webkit.org/show_bug.cgi?id=46995, make direction propagate up to the viewport from the root element.
  32809. Added fast/css/rtl-to-viewport.html
  32810. * css/CSSStyleSelector.cpp:
  32811. (WebCore::CSSStyleSelector::styleForDocument):
  32812. * rendering/RenderBox.cpp:
  32813. (WebCore::RenderBox::styleDidChange):
  32814. 2010-10-01 Alexey Proskuryakov <ap@apple.com>
  32815. Reviewed by Anders Carlsson.
  32816. https://bugs.webkit.org/show_bug.cgi?id=44406
  32817. <rdar://problem/8310921> Application Cache crash when a fallback document has a manifest URL
  32818. Test: http/tests/appcache/foreign-fallback.html
  32819. * loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::selectCache):
  32820. Changed ApplicationCacheResource lookup to find fallback resources correctly.
  32821. 2010-10-01 Kwang Yul Seo <skyul@company100.net>
  32822. Unreviewed, Brew MP build fix.
  32823. * platform/brew/ClipboardBrew.cpp:
  32824. (WebCore::ClipboardBrew::ClipboardBrew):
  32825. 2010-10-01 Rafael Antognolli <antognolli@profusion.mobi>
  32826. Unreviewed build fix.
  32827. [CMAKE] Build fix for r68878
  32828. https://bugs.webkit.org/show_bug.cgi?id=46985
  32829. Fix name of files added to CMakeLists.txt:
  32830. SVGTextLayoutBaseline.cpp -> SVGTextLayoutEngineBaseline.cpp
  32831. SVGTextLayoutSpacing.cpp -> SVGTextLayoutEngineSpacing.cpp
  32832. No features added, so no new tests.
  32833. * CMakeLists.txt:
  32834. 2010-10-01 Ragner Magalhaes <ragner.magalhaes@openbossa.org>
  32835. Reviewed by Kenneth Rohde Christiansen.
  32836. [Qt] New buttons style for Qt Mobile theme
  32837. https://bugs.webkit.org/show_bug.cgi?id=46920
  32838. Rename Maemo5Webstyle to QtMobileWebStyle since it implements the style for all Qt mobile platform.
  32839. Adjust new Qt mobile style for buttons, radios, checks and combos.
  32840. * WebCore.pro:
  32841. * css/themeQtMobile.css: Adjust gradient color for buttons and combos.
  32842. (select):
  32843. (select:active):
  32844. * platform/qt/QtMobileWebStyle.cpp: Renamed from platform/qt/Maemo5Webstyle.cpp to match name scheme.
  32845. (QtMobileWebStyle::QtMobileWebStyle):
  32846. (drawRectangularControlBackground):
  32847. (QtMobileWebStyle::drawChecker):
  32848. (QtMobileWebStyle::findChecker):
  32849. (QtMobileWebStyle::drawRadio): Adjust gradient color for RadioButton.
  32850. (QtMobileWebStyle::findRadio):
  32851. (QtMobileWebStyle::drawControl): Adjust gradient color for CheckBox.
  32852. (QtMobileWebStyle::drawMultipleComboButton):
  32853. (QtMobileWebStyle::drawSimpleComboButton): Adjust ComboBox arrow.
  32854. (QtMobileWebStyle::getButtonImageSize):
  32855. (QtMobileWebStyle::findComboButton):
  32856. (QtMobileWebStyle::drawComplexControl):
  32857. * platform/qt/QtMobileWebStyle.h: Renamed from platform/qt/Maemo5Webstyle.h to match name scheme.
  32858. * platform/qt/RenderThemeQt.cpp:
  32859. (WebCore::RenderThemeQt::RenderThemeQt):
  32860. 2010-10-01 Andrey Kosyakov <caseq@chromium.org>
  32861. Reviewed by Pavel Feldman.
  32862. Web Inspector: [Extensions API] expose page load events timings
  32863. Added webInspector.resources.getPageTimings()
  32864. https://bugs.webkit.org/show_bug.cgi?id=45954
  32865. * inspector/front-end/ExtensionAPI.js:
  32866. (WebInspector.injectedExtensionAPI.Resources.prototype):
  32867. (WebInspector.injectedExtensionAPI.Resources.prototype.getPageTimings):
  32868. * inspector/front-end/ExtensionServer.js:
  32869. (WebInspector.ExtensionServer):
  32870. (WebInspector.ExtensionServer.prototype._onGetPageTimings):
  32871. * inspector/front-end/HAREntry.js: Return page event timings as -1 if start or event time unknown.
  32872. (WebInspector.HARLog.prototype._buildPages):
  32873. (WebInspector.HARLog.prototype.buildMainResourceTimings):
  32874. (WebInspector.HARLog.prototype._convertResource):
  32875. (WebInspector.HARLog.prototype._pageEventTime):
  32876. 2010-10-01 Patrick Gansterer <paroga@webkit.org>
  32877. Reviewed by Adam Roben.
  32878. [WIN] Add GDIExtras
  32879. https://bugs.webkit.org/show_bug.cgi?id=46974
  32880. Some, but not all WinCE environments have support for AlphaBlend().
  32881. Add this files to check for AlphaBlend (and SoftLink) on WinCE.
  32882. On WinNT alphaBlendIfSupported() inlines AlphaBlend and returns true.
  32883. * platform/graphics/win/GDIExtras.cpp: Added.
  32884. (WebCore::AlphaBlendPointer):
  32885. * platform/graphics/win/GDIExtras.h: Added.
  32886. (WebCore::hasAlphaBlendSupport):
  32887. (WebCore::alphaBlendIfSupported):
  32888. 2010-10-01 Patrick Gansterer <paroga@webkit.org>
  32889. Reviewed by Adam Roben.
  32890. [WINCE] Use alphaBlendIfSupported in GraphicsContext
  32891. https://bugs.webkit.org/show_bug.cgi?id=46979
  32892. * platform/graphics/wince/GraphicsContextWinCE.cpp:
  32893. (WebCore::GraphicsContextPlatformPrivate::paintBackTransparentLayerBitmap):
  32894. 2010-10-01 Nikolas Zimmermann <nzimmermann@rim.com>
  32895. Reviewed by Dirk Schulze.
  32896. Add two new helper files for the new SVGTextLayoutEngine
  32897. https://bugs.webkit.org/show_bug.cgi?id=46972
  32898. Refactor code from SVGTextLayoutUtilities into two seperated classes.
  32899. SVGTextLayoutUtilities will be removed, as soon as the main clss SVGTextLayoutEngine lands and gets used.
  32900. Doesn't affect any functionality yet, as the new classes are not used so far.
  32901. * Android.mk:
  32902. * CMakeLists.txt:
  32903. * GNUmakefile.am:
  32904. * WebCore.gypi:
  32905. * WebCore.vcproj/WebCore.vcproj:
  32906. * WebCore.xcodeproj/project.pbxproj:
  32907. * rendering/svg/SVGTextFragment.h:
  32908. * rendering/svg/SVGTextLayoutEngineBaseline.cpp: Added.
  32909. (WebCore::SVGTextLayoutEngineBaseline::SVGTextLayoutEngineBaseline):
  32910. (WebCore::SVGTextLayoutEngineBaseline::calculateBaselineShift):
  32911. (WebCore::SVGTextLayoutEngineBaseline::dominantBaselineToAlignmentBaseline):
  32912. (WebCore::SVGTextLayoutEngineBaseline::calculateAlignmentBaselineShift):
  32913. (WebCore::SVGTextLayoutEngineBaseline::calculateGlyphOrientationAngle):
  32914. (WebCore::glyphOrientationIsMultiplyOf180Degrees):
  32915. (WebCore::SVGTextLayoutEngineBaseline::calculateGlyphAdvanceAndOrientation):
  32916. * rendering/svg/SVGTextLayoutEngineBaseline.h: Added.
  32917. * rendering/svg/SVGTextLayoutEngineSpacing.cpp: Added.
  32918. (WebCore::SVGTextLayoutEngineSpacing::SVGTextLayoutEngineSpacing):
  32919. (WebCore::SVGTextLayoutEngineSpacing::calculateSVGKerning):
  32920. (WebCore::SVGTextLayoutEngineSpacing::calculateCSSKerningAndSpacing):
  32921. * rendering/svg/SVGTextLayoutEngineSpacing.h: Added.
  32922. 2010-10-01 Nikolas Zimmermann <nzimmermann@rim.com>
  32923. Reviewed by Andreas Kling.
  32924. Rename SVGTextLayoutBuilder to SVGTextLayoutAttributesBuilder
  32925. https://bugs.webkit.org/show_bug.cgi?id=46971
  32926. Doesn't affect any functionality, just moves files around.
  32927. * Android.mk:
  32928. * CMakeLists.txt:
  32929. * GNUmakefile.am:
  32930. * WebCore.gypi:
  32931. * WebCore.pro:
  32932. * WebCore.vcproj/WebCore.vcproj:
  32933. * WebCore.xcodeproj/project.pbxproj:
  32934. * rendering/svg/RenderSVGText.cpp:
  32935. (WebCore::RenderSVGText::layout): Adopt to renaming.
  32936. * rendering/svg/SVGTextLayoutAttributesBuilder.cpp: Copied from rendering/svg/SVGTextLayoutBuilder.cpp.
  32937. * rendering/svg/SVGTextLayoutAttributesBuilder.h: Copied from rendering/svg/SVGTextLayoutBuilder.h.
  32938. * rendering/svg/SVGTextLayoutBuilder.cpp: Removed.
  32939. * rendering/svg/SVGTextLayoutBuilder.h: Removed.
  32940. 2010-10-01 MORITA Hajime <morrita@google.com>
  32941. Unreviewed build fix.
  32942. * platform/graphics/skia/PlatformContextSkia.cpp:
  32943. (WebCore::PlatformContextSkia::PlatformContextSkia):
  32944. 2010-10-01 Nikolas Zimmermann <nzimmermann@rim.com>
  32945. Reviewed by Andreas Kling.
  32946. Move SVG text related renderers into rendering/svg/
  32947. https://bugs.webkit.org/show_bug.cgi?id=46969
  32948. Doesn't affect any functionality, just moves files around.
  32949. * Android.mk:
  32950. * CMakeLists.txt:
  32951. * GNUmakefile.am:
  32952. * WebCore.gypi:
  32953. * WebCore.pro:
  32954. * WebCore.vcproj/WebCore.vcproj:
  32955. * WebCore.xcodeproj/project.pbxproj:
  32956. * rendering/RenderSVGAllInOne.cpp:
  32957. * rendering/RenderSVGInline.cpp: Removed.
  32958. * rendering/RenderSVGInline.h: Removed.
  32959. * rendering/RenderSVGInlineText.cpp: Removed.
  32960. * rendering/RenderSVGInlineText.h: Removed.
  32961. * rendering/RenderSVGTSpan.cpp: Removed.
  32962. * rendering/RenderSVGTSpan.h: Removed.
  32963. * rendering/RenderSVGText.cpp: Removed.
  32964. * rendering/RenderSVGText.h: Removed.
  32965. * rendering/RenderSVGTextPath.cpp: Removed.
  32966. * rendering/RenderSVGTextPath.h: Removed.
  32967. * rendering/SVGInlineFlowBox.cpp: Removed.
  32968. * rendering/SVGInlineFlowBox.h: Removed.
  32969. * rendering/SVGInlineTextBox.cpp: Removed.
  32970. * rendering/SVGInlineTextBox.h: Removed.
  32971. * rendering/SVGRootInlineBox.cpp: Removed.
  32972. * rendering/SVGRootInlineBox.h: Removed.
  32973. * rendering/SVGTextQuery.cpp: Removed.
  32974. * rendering/SVGTextQuery.h: Removed.
  32975. * rendering/svg/RenderSVGInline.cpp: Copied from rendering/RenderSVGInline.cpp.
  32976. * rendering/svg/RenderSVGInline.h: Copied from rendering/RenderSVGInline.h.
  32977. * rendering/svg/RenderSVGInlineText.cpp: Copied from rendering/RenderSVGInlineText.cpp.
  32978. * rendering/svg/RenderSVGInlineText.h: Copied from rendering/RenderSVGInlineText.h.
  32979. * rendering/svg/RenderSVGTSpan.cpp: Copied from rendering/RenderSVGTSpan.cpp.
  32980. * rendering/svg/RenderSVGTSpan.h: Copied from rendering/RenderSVGTSpan.h.
  32981. * rendering/svg/RenderSVGText.cpp: Copied from rendering/RenderSVGText.cpp.
  32982. * rendering/svg/RenderSVGText.h: Copied from rendering/RenderSVGText.h.
  32983. * rendering/svg/RenderSVGTextPath.cpp: Copied from rendering/RenderSVGTextPath.cpp.
  32984. * rendering/svg/RenderSVGTextPath.h: Copied from rendering/RenderSVGTextPath.h.
  32985. * rendering/svg/SVGInlineFlowBox.cpp: Copied from rendering/SVGInlineFlowBox.cpp.
  32986. * rendering/svg/SVGInlineFlowBox.h: Copied from rendering/SVGInlineFlowBox.h.
  32987. * rendering/svg/SVGInlineTextBox.cpp: Copied from rendering/SVGInlineTextBox.cpp.
  32988. * rendering/svg/SVGInlineTextBox.h: Copied from rendering/SVGInlineTextBox.h.
  32989. * rendering/svg/SVGRootInlineBox.cpp: Copied from rendering/SVGRootInlineBox.cpp.
  32990. * rendering/svg/SVGRootInlineBox.h: Copied from rendering/SVGRootInlineBox.h.
  32991. * rendering/svg/SVGTextQuery.cpp: Copied from rendering/SVGTextQuery.cpp.
  32992. * rendering/svg/SVGTextQuery.h: Copied from rendering/SVGTextQuery.h.
  32993. 2010-10-01 Nikolas Zimmermann <nzimmermann@rim.com>
  32994. Reviewed by Dirk Schulze.
  32995. Add SVGTextMetrics/SVGTextFragment/SVGTextChunk primitives used by the new layout engine
  32996. https://bugs.webkit.org/show_bug.cgi?id=46964
  32997. The new SVG text layout engine will use these new classes.
  32998. 1) SVGTextMetrics is used to measure either single glyphs (which may span multiple characters, when ligatures are defined) or a range of characters.
  32999. -> In "single glyph" mode, it returns the width/height of the glyph, the length of the glyph (> 1, when ligatures are used) and a "Glyph" object
  33000. describing the glyph (name of glyph, when used together with SVG Fonts and the unicode string the glyph describes).
  33001. -> In "range of characters" mode, it returns the width/height of the range, and its length.
  33002. All measurements are done using the regular Font::floatWidth() methods, this class just encapsulates its usage for the SVG text layout engine.
  33003. 2) SVGTextFragment describes a fragment of text, living in a SVGInlineTextBox, which can be measured/rendered in one shot.
  33004. It contains all necessary information to render the fragment (x/y/width/height, offset into characters() buffer for the first char of the fragment,
  33005. length, and an arbitary transformation, holding information about rotations/scale/glyph-orientation etc.)
  33006. In future the SVGTextLayoutEngine will generate SVGTextFragment objects for each SVGInlineTextBox. When painting no more measurements have to
  33007. be performed as SVGTextFragment contains all necessary information to render text / select text etc.
  33008. 3) SVGTextChunk describes a SVG text chunk, which may span multiple text boxes (and in turn text fragments).
  33009. Quotes from SVG spec:
  33010. Each absolute position adjustment defines a new "text chunk". Absolute position adjustments impact text layout in the following ways:
  33011. * Ligatures only occur when a set of characters which might map to a ligature are all in the same text chunk.
  33012. * Each text chunk represents a separate block of text for alignment due to "text-anchor" property values.
  33013. * Reordering of characters due to bidirectionality only occurs within a text chunk. Reordering does not happen across text chunks.
  33014. An absolute position adjustment occurs in the following circumstances:
  33015. * At the start of a <text> element
  33016. * At the start of each <textPath> element
  33017. * For each character within a <text>, <tspan>, <tref> and <altGlyph> element which has an "x" or "y" attribute value assigned to it explicitly
  33018. After the line-layout finishes, each "text chunk" is altered according to the textLength and text-anchor processing rules
  33019. (eg. for text-anchor="middle" moving the whole text chunk by -fragmentWidth/2, for horizontal text).
  33020. SVGTextChunk is just a simple helper class, that encapsulates measuring/altering a text chunk.
  33021. Doesn't affect any tests, as these classes aren't used so far.
  33022. * Android.mk: Add SVGTextMetrics.*, SVGTextFragment.h, SVGTextChunk.* to build.
  33023. * CMakeLists.txt: Ditto.
  33024. * GNUmakefile.am: Ditto.
  33025. * WebCore.gypi: Ditto.
  33026. * WebCore.pro: Ditto.
  33027. * WebCore.vcproj/WebCore.vcproj: Ditto.
  33028. * WebCore.xcodeproj/project.pbxproj: Ditto.
  33029. * rendering/svg/SVGTextChunk.cpp: Added.
  33030. * rendering/svg/SVGTextChunk.h: Added.
  33031. * rendering/svg/SVGTextFragment.h: Added.
  33032. * rendering/svg/SVGTextMetrics.cpp: Added.
  33033. * rendering/svg/SVGTextMetrics.h: Added.
  33034. 2010-10-01 Vincent Scheib <scheib@chromium.org>
  33035. Reviewed by James Robinson.
  33036. REGRESSION: Lots of fast canvas updates fail to completely render
  33037. https://bugs.webkit.org/show_bug.cgi?id=46319
  33038. Test: fast/repaint/canvas-putImageData.html
  33039. * html/canvas/CanvasRenderingContext2D.cpp:
  33040. (WebCore::CanvasRenderingContext2D::putImageData):
  33041. 2010-10-01 Nikolas Zimmermann <nzimmermann@rim.com>
  33042. Reviewed by Dirk Schulze.
  33043. Add helper methods to cast between renderers & SVGTextContent/PositioningElement
  33044. https://bugs.webkit.org/show_bug.cgi?id=46963
  33045. Doesn't affect any tests.
  33046. * svg/SVGTextContentElement.cpp:
  33047. (WebCore::SVGTextContentElement::elementFromRenderer):
  33048. * svg/SVGTextContentElement.h:
  33049. * svg/SVGTextPositioningElement.cpp:
  33050. (WebCore::SVGTextPositioningElement::elementFromRenderer):
  33051. * svg/SVGTextPositioningElement.h:
  33052. 2010-09-30 MORITA Hajime <morrita@google.com>
  33053. Reviewed by James Robinson.
  33054. [Chromium] build fails unless ACCELERATED_2D_CANVAS defined
  33055. https://bugs.webkit.org/show_bug.cgi?id=46955
  33056. Added ifdef guard around SharedGraphicsContext3D.
  33057. No new tests. just a build fix.
  33058. * platform/graphics/skia/PlatformContextSkia.cpp:
  33059. (WebCore::PlatformContextSkia::~PlatformContextSkia):
  33060. (WebCore::PlatformContextSkia::setSharedGraphicsContext3D):
  33061. (WebCore::PlatformContextSkia::uploadSoftwareToHardware):
  33062. (WebCore::PlatformContextSkia::readbackHardwareToSoftware):
  33063. * platform/graphics/skia/PlatformContextSkia.h:
  33064. (WebCore::PlatformContextSkia::gpuCanvas):
  33065. 2010-09-30 Kent Tamura <tkent@chromium.org>
  33066. Reviewed by Chris Fleizach.
  33067. [Windows] Implement <input type=number> UI
  33068. https://bugs.webkit.org/show_bug.cgi?id=38381
  33069. Implement theme drawing for inner-spin-button.
  33070. No new tests. Existing tests for type=number will cover this change.
  33071. * rendering/RenderThemeWin.cpp:
  33072. (WebCore::RenderThemeWin::RenderThemeWin):
  33073. Handle m_spinButtonTheme.
  33074. (WebCore::RenderThemeWin::spinButtonTheme): ditto.
  33075. (WebCore::RenderThemeWin::close): ditto.
  33076. (WebCore::RenderThemeWin::determineClassicState):
  33077. Add ControlSubPart parameter, and add support for InnerSpinButtonPart.
  33078. (WebCore::RenderThemeWin::determineSpinButtonState): Added.
  33079. (WebCore::RenderThemeWin::getClassicThemeData):
  33080. Add ControlSubPart parameter, and handle InnerSpinButtonPart.
  33081. (WebCore::RenderThemeWin::getThemeData): ditto.
  33082. (WebCore::RenderThemeWin::adjustInnerSpinButtonStyle):
  33083. Set SM_CXVSCROLL value to the width.
  33084. (WebCore::RenderThemeWin::paintInnerSpinButton):
  33085. Call drawControl() for the upper part and the lower part.
  33086. * rendering/RenderThemeWin.h:
  33087. 2010-09-30 Kent Tamura <tkent@chromium.org>
  33088. Unreviewed, Windows build fix for r68854
  33089. * WebCore.vcproj/copyForwardingHeaders.cmd:
  33090. Copy WebCore/html/parser/*.h.
  33091. 2010-09-30 Abhishek Arya <inferno@chromium.org>
  33092. Reviewed by Dan Bernstein.
  33093. While updating :before and :after content, make sure that the generated
  33094. container is allowed to add the child type.
  33095. https://bugs.webkit.org/show_bug.cgi?id=46106
  33096. Test: fast/css-generated-content/text-before-table-col-crash.html
  33097. * rendering/RenderObjectChildList.cpp:
  33098. (WebCore::RenderObjectChildList::updateBeforeAfterContent):
  33099. 2010-09-30 Mario Sanchez Prada <msanchez@igalia.com>
  33100. Reviewed by Daniel Bates.
  33101. [GTK] Crash on testatk.c unittest because of a call to ASSERT_NOT_REACHED
  33102. https://bugs.webkit.org/show_bug.cgi?id=46886
  33103. Removed call to ASSERT_NOT_REACHED() from listMarkerSuffix().
  33104. So far, this assertion made sense because it was not possible that
  33105. a call to listMarkerSuffix() happened when the style of the list
  33106. item was one of the following: Asterisks, Circle, Discm Footnotes,
  33107. NoneListStyle or Square (it's easy to figure this out by checking
  33108. the functions where listMarkerSuffix() was called).
  33109. However, since revision 68415 (about bug 45381), there's a new
  33110. place where listMarkerSuffix() is being called (the suffix()
  33111. public method), regardless of the style of the item being or not
  33112. one of those pointed out, so the aforementioned assertion in
  33113. listMarkerSuffix() would no longer be correct, as now it's ok to
  33114. reach those cases in the switch statement.
  33115. * rendering/RenderListMarker.cpp:
  33116. (WebCore::listMarkerSuffix): Removed call to ASSERT_NOT_REACHED().
  33117. 2010-09-30 Beth Dakin <bdakin@apple.com>
  33118. Reviewed by Adele Peterson.
  33119. https://bugs.webkit.org/show_bug.cgi?id=46948 Crash with all-
  33120. whitespace separators for mfenced
  33121. Check the size of characters instead of separators in case all the
  33122. separators were whitespace.
  33123. * mathml/RenderMathMLFenced.cpp:
  33124. (WebCore::RenderMathMLFenced::updateFromElement):
  33125. 2010-09-30 Darin Adler <darin@apple.com>
  33126. Reviewed by Sam Weinig.
  33127. Remove remaining calls to deprecatedParseURL
  33128. https://bugs.webkit.org/show_bug.cgi?id=26599
  33129. Test: fast/replaced/object-param-spaces.html
  33130. * css/CSSHelper.cpp: Removed.
  33131. * css/CSSHelper.h: Removed deprecatedParseURL.
  33132. * html/parser/HTMLParserIdioms.cpp:
  33133. (WebCore::stripLeadingAndTrailingHTMLSpaces):
  33134. Fixed bug where the function would turn the null string into the empty string.
  33135. Fixed bug where the function would not strip all trailing spaces.
  33136. * html/parser/CSSPreloadScanner.cpp:
  33137. (WebCore::CSSPreloadScanner::CSSPreloadScanner): Initialize m_state
  33138. instead of calling the reset function.
  33139. (WebCore::CSSPreloadScanner::scan): Tweaked coding style.
  33140. (WebCore::CSSPreloadScanner::tokenize): Use isHTMLSpace instead of
  33141. an identical local function named isWhitespace.
  33142. (WebCore::parseCSSStringOrURL): Added. This function does what
  33143. deprecatedParseURL did before, and this is the only place in WebKit
  33144. that needs it. The code implements the rules for a string or URL
  33145. token. The real CSS parser does this with flex and the code to hook
  33146. flex up to yacc, so the function is not needed there.
  33147. (WebCore::CSSPreloadScanner::emitRule): Streamlined the code a bit
  33148. and mae it call parseCSSStringOrURL.
  33149. * bindings/generic/BindingSecurity.h:
  33150. (WebCore::::allowSettingFrameSrcToJavascriptUrl):
  33151. * bindings/js/JSDOMBinding.cpp:
  33152. (WebCore::allowSettingSrcToJavascriptURL):
  33153. * bindings/js/JSHTMLFrameElementCustom.cpp:
  33154. (WebCore::allowSettingJavascriptURL):
  33155. * bindings/objc/DOM.mm:
  33156. (-[DOMElement _getURLAttribute:]):
  33157. * bindings/objc/DOMHTML.mm:
  33158. (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]):
  33159. * dom/Document.cpp:
  33160. (WebCore::Document::processBaseElement):
  33161. * dom/Element.cpp:
  33162. (WebCore::isAttributeToRemove):
  33163. (WebCore::Element::getURLAttribute):
  33164. (WebCore::Element::getNonEmptyURLAttribute):
  33165. * html/HTMLAnchorElement.cpp:
  33166. (WebCore::HTMLAnchorElement::defaultEventHandler):
  33167. (WebCore::HTMLAnchorElement::parseMappedAttribute):
  33168. (WebCore::HTMLAnchorElement::href):
  33169. * html/HTMLBodyElement.cpp:
  33170. (WebCore::HTMLBodyElement::parseMappedAttribute):
  33171. * html/HTMLEmbedElement.cpp:
  33172. (WebCore::HTMLEmbedElement::parseMappedAttribute):
  33173. * html/HTMLFrameElementBase.cpp:
  33174. (WebCore::HTMLFrameElementBase::parseMappedAttribute):
  33175. * html/HTMLImageElement.cpp:
  33176. (WebCore::HTMLImageElement::parseMappedAttribute):
  33177. * html/HTMLImageLoader.cpp:
  33178. (WebCore::HTMLImageLoader::sourceURI):
  33179. * html/HTMLLinkElement.cpp:
  33180. (WebCore::HTMLLinkElement::parseMappedAttribute):
  33181. * html/HTMLMediaElement.cpp:
  33182. * html/HTMLObjectElement.cpp:
  33183. (WebCore::HTMLObjectElement::parseMappedAttribute):
  33184. (WebCore::HTMLObjectElement::parametersForPlugin):
  33185. * html/HTMLTableElement.cpp:
  33186. (WebCore::HTMLTableElement::parseMappedAttribute):
  33187. * html/HTMLTablePartElement.cpp:
  33188. (WebCore::HTMLTablePartElement::parseMappedAttribute):
  33189. * html/parser/HTMLPreloadScanner.cpp:
  33190. (WebCore::HTMLNames::PreloadTask::setUrlToLoad):
  33191. * loader/FormSubmission.cpp:
  33192. (WebCore::FormSubmission::Attributes::parseAction):
  33193. * platform/chromium/ClipboardChromium.cpp:
  33194. (WebCore::ClipboardChromium::declareAndWriteDragImage):
  33195. * platform/chromium/PasteboardChromium.cpp:
  33196. (WebCore::Pasteboard::writeImage):
  33197. * platform/qt/ClipboardQt.cpp:
  33198. (WebCore::ClipboardQt::declareAndWriteDragImage):
  33199. * platform/win/ClipboardWin.cpp:
  33200. (WebCore::ClipboardWin::declareAndWriteDragImage):
  33201. * rendering/HitTestResult.cpp:
  33202. (WebCore::HitTestResult::absoluteImageURL):
  33203. (WebCore::HitTestResult::absoluteMediaURL):
  33204. (WebCore::HitTestResult::absoluteLinkURL):
  33205. * svg/SVGAElement.cpp:
  33206. (WebCore::SVGAElement::defaultEventHandler):
  33207. * svg/SVGImageLoader.cpp:
  33208. (WebCore::SVGImageLoader::sourceURI):
  33209. * wml/WMLAElement.cpp:
  33210. (WebCore::WMLAElement::defaultEventHandler):
  33211. * wml/WMLImageLoader.cpp:
  33212. (WebCore::WMLImageLoader::sourceURI):
  33213. Call stripLeadingAndTrailingHTMLSpaces instead of deprecatedParseURL.
  33214. * WebCore.exp.in: Updated.
  33215. * Android.mk: Removed CSSHelper.cpp.
  33216. * CMakeLists.txt: Ditto.
  33217. * GNUmakefile.am: Ditto.
  33218. * WebCore.gypi: Ditto.
  33219. * WebCore.pro: Ditto.
  33220. * WebCore.vcproj/WebCore.vcproj: Ditto.
  33221. * WebCore.xcodeproj/project.pbxproj: Ditto.
  33222. * bindings/js/JSAttrCustom.cpp:
  33223. * bindings/js/JSElementCustom.cpp:
  33224. * bindings/v8/custom/V8ElementCustom.cpp:
  33225. * bindings/v8/custom/V8LocationCustom.cpp:
  33226. * css/CSSParser.cpp:
  33227. * html/HTMLMediaElement.cpp:
  33228. * html/HTMLVideoElement.cpp:
  33229. * loader/ImageLoader.cpp:
  33230. * rendering/style/RenderStyle.h:
  33231. Removed unneeded include of CSSHelper.h.
  33232. 2010-09-30 Alexey Marinichev <amarinichev@chromium.org>
  33233. Reviewed by Chris Marrin.
  33234. Add GetGraphicsResetStatusARB entry point from ARB_robustness
  33235. extension to GraphicsContext3D
  33236. https://bugs.webkit.org/show_bug.cgi?id=46850
  33237. Added stubs for GraphicsContext3D::getGraphicsResetStatusARB for
  33238. Mac and QT.
  33239. * platform/graphics/GraphicsContext3D.h:
  33240. * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
  33241. (WebCore::GraphicsContext3D::getGraphicsResetStatusARB):
  33242. * platform/graphics/qt/GraphicsContext3DQt.cpp:
  33243. (WebCore::GraphicsContext3D::getGraphicsResetStatusARB):
  33244. 2010-09-30 David Hyatt <hyatt@apple.com>
  33245. Reviewed by Sam Weinig.
  33246. https://bugs.webkit.org/show_bug.cgi?id=46938
  33247. Rewrite margin collapsing to be block-flow-aware. Eliminate a bunch of the margin functions on RenderBox in favor of a single
  33248. master function for grabbing all the margin values for a child: marginValuesForChild on RenderBlock. Introduce a new
  33249. MarginValues struct to make returning the collection of 4 margin values easy.
  33250. fast/blockflow/inline-direction-positioning.html progresses to have the correct results.
  33251. Added fast/blockflow/margin-collapse.html
  33252. * rendering/RenderBlock.cpp:
  33253. (WebCore::RenderBlock::MarginInfo::MarginInfo):
  33254. (WebCore::RenderBlock::adjustPositionedBlock):
  33255. (WebCore::RenderBlock::collapseMargins):
  33256. (WebCore::RenderBlock::clearFloatsIfNeeded):
  33257. (WebCore::RenderBlock::setCollapsedBottomMargin):
  33258. (WebCore::RenderBlock::layoutBlockChild):
  33259. (WebCore::RenderBlock::setMaxMarginBeforeValues):
  33260. (WebCore::RenderBlock::setMaxMarginAfterValues):
  33261. (WebCore::RenderBlock::marginValuesForChild):
  33262. * rendering/RenderBlock.h:
  33263. (WebCore::RenderBlock::MarginValues::MarginValues):
  33264. (WebCore::RenderBlock::MarginValues::positiveMarginBefore):
  33265. (WebCore::RenderBlock::MarginValues::negativeMarginBefore):
  33266. (WebCore::RenderBlock::MarginValues::positiveMarginAfter):
  33267. (WebCore::RenderBlock::MarginValues::negativeMarginAfter):
  33268. (WebCore::RenderBlock::MarginValues::setPositiveMarginBefore):
  33269. (WebCore::RenderBlock::MarginValues::setNegativeMarginBefore):
  33270. (WebCore::RenderBlock::MarginValues::setPositiveMarginAfter):
  33271. (WebCore::RenderBlock::MarginValues::setNegativeMarginAfter):
  33272. (WebCore::RenderBlock::maxPositiveMarginBefore):
  33273. (WebCore::RenderBlock::maxNegativeMarginBefore):
  33274. (WebCore::RenderBlock::maxPositiveMarginAfter):
  33275. (WebCore::RenderBlock::maxNegativeMarginAfter):
  33276. (WebCore::RenderBlock::initMaxMarginValues):
  33277. (WebCore::RenderBlock::collapsedMarginBefore):
  33278. (WebCore::RenderBlock::collapsedMarginAfter):
  33279. (WebCore::RenderBlock::MarginInfo::clearMargin):
  33280. (WebCore::RenderBlock::MarginInfo::setPositiveMargin):
  33281. (WebCore::RenderBlock::MarginInfo::setNegativeMargin):
  33282. (WebCore::RenderBlock::MarginInfo::setPositiveMarginIfLarger):
  33283. (WebCore::RenderBlock::MarginInfo::setNegativeMarginIfLarger):
  33284. (WebCore::RenderBlock::MarginInfo::setMargin):
  33285. (WebCore::RenderBlock::MarginInfo::positiveMargin):
  33286. (WebCore::RenderBlock::MarginInfo::negativeMargin):
  33287. (WebCore::RenderBlock::MarginInfo::margin):
  33288. (WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData):
  33289. (WebCore::RenderBlock::RenderBlockRareData::positiveMarginBeforeDefault):
  33290. (WebCore::RenderBlock::RenderBlockRareData::negativeMarginBeforeDefault):
  33291. (WebCore::RenderBlock::RenderBlockRareData::positiveMarginAfterDefault):
  33292. (WebCore::RenderBlock::RenderBlockRareData::negativeMarginAfterDefault):
  33293. * rendering/RenderBox.h:
  33294. (WebCore::RenderBox::collapsedMarginBefore):
  33295. (WebCore::RenderBox::collapsedMarginAfter):
  33296. * rendering/RenderFlexibleBox.cpp:
  33297. (WebCore::RenderFlexibleBox::layoutBlock):
  33298. 2010-09-30 Patrick Gansterer <paroga@webkit.org>
  33299. Reviewed by Adam Roben.
  33300. [WINCE] Fix InternetGetCookie in CookieJarWin.cpp
  33301. https://bugs.webkit.org/show_bug.cgi?id=46929
  33302. If the InternetGetCookie fails the output size won't be set.
  33303. Set the default size to 0, so we always get the correct size
  33304. and check the return value of InternetGetCookie.
  33305. * platform/network/win/CookieJarWin.cpp:
  33306. (WebCore::cookies):
  33307. 2010-09-30 Patrick Gansterer <paroga@webkit.org>
  33308. Reviewed by Adam Roben.
  33309. [WINCE] Use OwnPtr for HBRUSH and HPEN in GraphicsContext
  33310. https://bugs.webkit.org/show_bug.cgi?id=46881
  33311. Also add some missing SelectObject calls.
  33312. * platform/graphics/wince/GraphicsContextWinCE.cpp:
  33313. (WebCore::createPen):
  33314. (WebCore::createBrush):
  33315. (WebCore::GraphicsContext::drawRect):
  33316. (WebCore::GraphicsContext::drawLine):
  33317. (WebCore::GraphicsContext::drawEllipse):
  33318. (WebCore::GraphicsContext::strokeArc):
  33319. (WebCore::GraphicsContext::drawConvexPolygon):
  33320. (WebCore::GraphicsContext::strokeRect):
  33321. (WebCore::GraphicsContext::fillRoundedRect):
  33322. (WebCore::GraphicsContext::fillPath):
  33323. (WebCore::GraphicsContext::strokePath):
  33324. 2010-09-30 Anders Carlsson <andersca@apple.com>
  33325. Reviewed by Dan Bernstein and Darin Adler.
  33326. WebCore uses the main thread to process sleep notifications
  33327. https://bugs.webkit.org/show_bug.cgi?id=46935
  33328. <rdar://problem/8495374>
  33329. Rewrite the old WebCorePowerNotifier to use IOKit directly.
  33330. On Snow Leopard, set up power notifications to arrive on a dispatch queue,
  33331. so that we can handle them quickly even if the main thread is hung.
  33332. (Tiger and Leopard will still get the old behavior).
  33333. * WebCore.xcodeproj/project.pbxproj:
  33334. Link with IOKit.
  33335. * platform/mac/SharedTimerMac.mm:
  33336. (WebCore::PowerObserver::PowerObserver):
  33337. Initialize the IOKit machinery.
  33338. (WebCore::PowerObserver::~PowerObserver):
  33339. Tear down the IOKit notifications.
  33340. (WebCore::PowerObserver::didReceiveSystemPowerNotification):
  33341. Acknowledge the event immediately and then call the shared timer functions. On Snow Leopard, we
  33342. make sure to call the shared timer functions on the main thread.
  33343. 2010-09-30 James Simonsen <simonjam@chromium.org>
  33344. Reviewed by Adam Barth.
  33345. [Web Timing] Make requestEnd equal to start of response
  33346. https://bugs.webkit.org/show_bug.cgi?id=46302
  33347. * page/Timing.cpp:
  33348. (WebCore::Timing::requestEnd):
  33349. 2010-09-30 Zhenyao Mo <zmo@google.com>
  33350. Reviewed by Kenneth Russell.
  33351. fast/canvas/webgl/draw-elements-out-of-bounds.html is crashing on Snow Leopard
  33352. https://bugs.webkit.org/show_bug.cgi?id=46870
  33353. * platform/graphics/ANGLEWebKitBridge.cpp:
  33354. (WebCore::ANGLEWebKitBridge::~ANGLEWebKitBridge): Remove ShFinalize().
  33355. 2010-09-30 Ryosuke Niwa <rniwa@webkit.org>
  33356. Reviewed by Tony Chang.
  33357. WebKit nests font element when applying different font styles
  33358. https://bugs.webkit.org/show_bug.cgi?id=45568
  33359. The bug was caused by fixRangeAndApplyInlineStyle's not including fully selected ancestors,
  33360. and addInlineStyleIfNeeded's always surrounding the contents by new elements as supposed to
  33361. adding font attributes or style attribute.
  33362. Fixed the bug by extending the node range in fixRangeAndApplyInlineStyle and finding
  33363. the appropriate container node to add attributes in addInlineStyleIfNeeded.
  33364. addInlineStyleIfNeeded now tires to add font and style attributes to the inner most font and
  33365. span elements respectively.
  33366. Also added an early exit check to removeStyleFromRunBeforeApplyingStyle so that WebKit does not
  33367. modify the contents when the entire contents already have the desired style.
  33368. Test: editing/style/inline-style-container.html
  33369. * editing/ApplyStyleCommand.cpp:
  33370. (WebCore::ApplyStyleCommand::fixRangeAndApplyInlineStyle):
  33371. (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle):
  33372. (WebCore::ApplyStyleCommand::removeInlineStyleFromElement):
  33373. (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
  33374. 2010-09-30 Jarred Nicholls <jarred@sencha.com>
  33375. Reviewed by Darin Adler.
  33376. Removed unnecessary calls to ceil() on an int
  33377. Removing the call fixes MSVC build errors
  33378. https://bugs.webkit.org/show_bug.cgi?id=46931
  33379. * platform/graphics/ContextShadow.cpp:
  33380. (WebCore::ContextShadow::calculateLayerBoundingRect):
  33381. 2010-09-30 David Hyatt <hyatt@apple.com>
  33382. Reviewed by Beth Dakin.
  33383. https://bugs.webkit.org/show_bug.cgi?id=46932
  33384. Get fast/blockflow/root-lr-basic.html results to be correct by patching a few more
  33385. height() calls to be logicalHeight().
  33386. * rendering/RenderBlock.cpp:
  33387. (WebCore::RenderBlock::collapseMargins):
  33388. (WebCore::RenderBlock::handleAfterSideOfBlock):
  33389. 2010-09-30 Cris Neckar <cdn@chromium.org>
  33390. Reviewed by Darin Adler.
  33391. Added check to test for removed counter node when calling findPlaceForCounter() in updateCounters().
  33392. Added refcounting to counternodes in countermaps.
  33393. https://bugs.webkit.org/show_bug.cgi?id=46387
  33394. Test: fast/css/counters/counter-traverse-table-cell.html
  33395. * rendering/CounterNode.cpp:
  33396. (WebCore::CounterNode::create):
  33397. * rendering/CounterNode.h:
  33398. * rendering/RenderCounter.cpp:
  33399. (WebCore::makeCounterNode):
  33400. (WebCore::destroyCounterNodeWithoutMapRemoval):
  33401. (WebCore::RenderCounter::destroyCounterNodes):
  33402. (WebCore::RenderCounter::destroyCounterNode):
  33403. (WebCore::updateCounters):
  33404. 2010-09-30 David Hyatt <hyatt@apple.com>
  33405. Reviewed by Beth Dakin.
  33406. https://bugs.webkit.org/show_bug.cgi?id=46928
  33407. Add isLeftToRightDirection() to RenderStyle and change callers that did direction() == LTR and direction() == RTL to use this instead.
  33408. * css/CSSStyleSelector.cpp:
  33409. (WebCore::CSSStyleSelector::isLeftPage):
  33410. (WebCore::CSSStyleSelector::applyProperty):
  33411. * editing/Editor.cpp:
  33412. (WebCore::Editor::hasBidiSelection):
  33413. * editing/VisiblePosition.cpp:
  33414. (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
  33415. (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
  33416. * html/canvas/CanvasRenderingContext2D.cpp:
  33417. (WebCore::CanvasRenderingContext2D::drawTextInternal):
  33418. * rendering/InlineBox.h:
  33419. (WebCore::InlineBox::isLeftToRightDirection):
  33420. (WebCore::InlineBox::caretLeftmostOffset):
  33421. (WebCore::InlineBox::caretRightmostOffset):
  33422. * rendering/InlineFlowBox.cpp:
  33423. (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
  33424. (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
  33425. (WebCore::InlineFlowBox::paintTextDecorations):
  33426. * rendering/InlineIterator.h:
  33427. (WebCore::InlineIterator::direction):
  33428. * rendering/InlineTextBox.cpp:
  33429. (WebCore::InlineTextBox::selectionRect):
  33430. (WebCore::InlineTextBox::placeEllipsisBox):
  33431. (WebCore::InlineTextBox::paint):
  33432. (WebCore::InlineTextBox::paintSelection):
  33433. (WebCore::InlineTextBox::paintCompositionBackground):
  33434. (WebCore::InlineTextBox::paintDecoration):
  33435. (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
  33436. (WebCore::InlineTextBox::paintTextMatchMarker):
  33437. (WebCore::InlineTextBox::computeRectForReplacementMarker):
  33438. (WebCore::InlineTextBox::textPos):
  33439. (WebCore::InlineTextBox::offsetForPosition):
  33440. (WebCore::InlineTextBox::positionForOffset):
  33441. * rendering/RenderBlock.cpp:
  33442. (WebCore::RenderBlock::adjustPositionedBlock):
  33443. (WebCore::RenderBlock::determineLogicalLeftPositionForChild):
  33444. (WebCore::RenderBlock::paintColumnRules):
  33445. (WebCore::RenderBlock::paintColumnContents):
  33446. (WebCore::RenderBlock::getHorizontalSelectionGapInfo):
  33447. (WebCore::RenderBlock::logicalLeftOffsetForLine):
  33448. (WebCore::RenderBlock::logicalRightOffsetForLine):
  33449. (WebCore::RenderBlock::rightmostPosition):
  33450. (WebCore::RenderBlock::leftmostPosition):
  33451. (WebCore::RenderBlock::columnRectAt):
  33452. (WebCore::RenderBlock::layoutColumns):
  33453. (WebCore::getBorderPaddingMargin):
  33454. (WebCore::RenderBlock::localCaretRect):
  33455. (WebCore::RenderBlock::marginStartForChild):
  33456. (WebCore::RenderBlock::marginEndForChild):
  33457. (WebCore::RenderBlock::setMarginStartForChild):
  33458. (WebCore::RenderBlock::setMarginEndForChild):
  33459. * rendering/RenderBlockLineLayout.cpp:
  33460. (WebCore::getBorderPaddingMargin):
  33461. (WebCore::RenderBlock::constructLine):
  33462. (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
  33463. (WebCore::RenderBlock::determineStartPosition):
  33464. (WebCore::RenderBlock::skipTrailingWhitespace):
  33465. (WebCore::RenderBlock::skipLeadingWhitespace):
  33466. (WebCore::RenderBlock::findNextLineBreak):
  33467. (WebCore::RenderBlock::checkLinesForTextOverflow):
  33468. * rendering/RenderBox.cpp:
  33469. (WebCore::RenderBox::marginStart):
  33470. (WebCore::RenderBox::marginEnd):
  33471. (WebCore::RenderBox::setMarginStart):
  33472. (WebCore::RenderBox::setMarginEnd):
  33473. (WebCore::RenderBox::scrollWidth):
  33474. (WebCore::RenderBox::computeInlineDirectionMargins):
  33475. (WebCore::RenderBox::containingBlockWidthForPositioned):
  33476. (WebCore::RenderBox::computePositionedLogicalWidthUsing):
  33477. (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
  33478. (WebCore::RenderBox::localCaretRect):
  33479. * rendering/RenderBoxModelObject.cpp:
  33480. (WebCore::RenderBoxModelObject::relativePositionOffsetX):
  33481. * rendering/RenderFieldset.cpp:
  33482. (WebCore::RenderFieldset::layoutLegend):
  33483. * rendering/RenderFileUploadControl.cpp:
  33484. (WebCore::RenderFileUploadControl::paintObject):
  33485. * rendering/RenderFlexibleBox.cpp:
  33486. (WebCore::FlexBoxIterator::FlexBoxIterator):
  33487. (WebCore::RenderFlexibleBox::layoutHorizontalBox):
  33488. (WebCore::RenderFlexibleBox::layoutVerticalBox):
  33489. * rendering/RenderLayer.cpp:
  33490. (WebCore::RenderLayer::computeScrollDimensions):
  33491. * rendering/RenderListBox.cpp:
  33492. (WebCore::RenderListBox::paintItemForeground):
  33493. * rendering/RenderListItem.cpp:
  33494. (WebCore::RenderListItem::positionListMarker):
  33495. (WebCore::RenderListItem::markerTextWithSuffix):
  33496. * rendering/RenderListMarker.cpp:
  33497. (WebCore::RenderListMarker::paint):
  33498. (WebCore::RenderListMarker::updateMargins):
  33499. (WebCore::RenderListMarker::suffix):
  33500. * rendering/RenderMarquee.cpp:
  33501. (WebCore::RenderMarquee::computePosition):
  33502. * rendering/RenderMeter.cpp:
  33503. (WebCore::RenderMeter::valuePartRect):
  33504. * rendering/RenderProgress.cpp:
  33505. (WebCore::RenderProgress::valuePartRect):
  33506. * rendering/RenderTable.cpp:
  33507. (WebCore::RenderTable::calcBorderLeft):
  33508. (WebCore::RenderTable::calcBorderRight):
  33509. * rendering/RenderTableCell.cpp:
  33510. (WebCore::RenderTableCell::clippedOverflowRectForRepaint):
  33511. (WebCore::RenderTableCell::borderHalfLeft):
  33512. (WebCore::RenderTableCell::borderHalfRight):
  33513. (WebCore::RenderTableCell::collectBorderStyles):
  33514. (WebCore::RenderTableCell::paintCollapsedBorder):
  33515. * rendering/RenderTableSection.cpp:
  33516. (WebCore::RenderTableSection::layoutRows):
  33517. (WebCore::RenderTableSection::recalcOuterBorder):
  33518. (WebCore::RenderTableSection::paintObject):
  33519. (WebCore::RenderTableSection::nodeAtPoint):
  33520. * rendering/RenderText.cpp:
  33521. (WebCore::RenderText::localCaretRect):
  33522. (WebCore::RenderText::positionLineBox):
  33523. * rendering/RenderTextControlSingleLine.cpp:
  33524. (WebCore::RenderTextControlSingleLine::forwardEvent):
  33525. * rendering/RenderThemeMac.mm:
  33526. (WebCore::RenderThemeMac::levelIndicatorFor):
  33527. (WebCore::RenderThemeMac::paintProgressBar):
  33528. * rendering/RenderTreeAsText.cpp:
  33529. (WebCore::writeTextRun):
  33530. * rendering/SVGInlineTextBox.cpp:
  33531. (WebCore::SVGInlineTextBox::measureCharacter):
  33532. (WebCore::SVGInlineTextBox::buildLayoutInformation):
  33533. * rendering/SVGRenderTreeAsText.cpp:
  33534. (WebCore::writeSVGInlineTextBox):
  33535. * rendering/SVGTextLayoutUtilities.cpp:
  33536. (WebCore::svgTextRunForInlineTextBox):
  33537. * rendering/style/RenderStyle.cpp:
  33538. (WebCore::RenderStyle::borderStartWidth):
  33539. (WebCore::RenderStyle::borderEndWidth):
  33540. (WebCore::RenderStyle::marginStart):
  33541. (WebCore::RenderStyle::marginEnd):
  33542. (WebCore::RenderStyle::marginStartUsing):
  33543. (WebCore::RenderStyle::marginEndUsing):
  33544. (WebCore::RenderStyle::paddingStart):
  33545. (WebCore::RenderStyle::paddingEnd):
  33546. * rendering/style/RenderStyle.h:
  33547. (WebCore::InheritedFlags::isLeftToRightDirection):
  33548. * wml/WMLTableElement.cpp:
  33549. (WebCore::WMLTableElement::alignCells):
  33550. 2010-09-30 David Hyatt <hyatt@apple.com>
  33551. Reviewed by Simon Fraser.
  33552. https://bugs.webkit.org/show_bug.cgi?id=46923
  33553. Make determineLogicalLeftPositionForChild block-flow-aware. Rewrite the function so that there aren't
  33554. completely separate LTR/RTL cases.
  33555. Added fast/blockflow/inline-direction-positioning.html
  33556. * rendering/RenderBlock.cpp:
  33557. (WebCore::RenderBlock::determineLogicalLeftPositionForChild):
  33558. (WebCore::RenderBlock::setLogicalLeftForChild):
  33559. * rendering/RenderBlock.h:
  33560. (WebCore::RenderBlock::logicalWidthForChild):
  33561. (WebCore::RenderBlock::logicalRightOffsetForContent):
  33562. (WebCore::RenderBlock::logicalLeftOffsetForContent):
  33563. 2010-09-29 Adam Roben <aroben@apple.com>
  33564. Fix color media queries on Windows
  33565. Fixes <http://webkit.org/b/42973> <rdar://problem/8234072> (color:8)
  33566. media query does not evaluate to true for 32bpp displays on Windows
  33567. Test: fast/media/color-does-not-include-alpha.html
  33568. Reviewed by Darin Adler.
  33569. * platform/win/PlatformScreenWin.cpp:
  33570. (WebCore::screenDepthPerComponent): Use screenDepth instead of trying
  33571. to interpret DEVMODE directly, since screenDepth knows how to correct
  33572. for video drivers that return 32 instead of 24.
  33573. 2010-09-29 Adam Roben <aroben@apple.com>
  33574. Make sure screen.colorDepth/screen.pixelDepth don't include the bits
  33575. used for alpha
  33576. Fixes <http://webkit.org/b/42972> <rdar://problem/8234071>
  33577. screen.colorDepth and screen.pixelDepth return 32 on Windows, but
  33578. should return 24 (according to CSSOM View and Firefox)
  33579. Reviewed by Darin Adler.
  33580. * platform/win/PlatformScreenWin.cpp:
  33581. (WebCore::screenDepth): If Windows says there are 32 bits per pixel,
  33582. return 24 instead, as 32 includes the alpha component but this
  33583. function is supposed to ignore the alpha component.
  33584. 2010-09-30 Daniel Cheng <dcheng@chromium.org>
  33585. Reviewed by Tony Chang.
  33586. [chromium] Refactor ChromiumDataObject to use getters/setters.
  33587. https://bugs.webkit.org/show_bug.cgi?id=46559
  33588. This is an intermediate step to converting ChromiumDataObject to use
  33589. callbacks to the browser to retrieve data.
  33590. This is covered by existing tests.
  33591. * editing/chromium/EditorChromium.cpp:
  33592. (WebCore::Editor::newGeneralClipboard):
  33593. * page/chromium/EventHandlerChromium.cpp:
  33594. (WebCore::EventHandler::createDraggingClipboard):
  33595. * platform/chromium/ChromiumDataObject.cpp:
  33596. (WebCore::ChromiumDataObject::clearData):
  33597. (WebCore::ChromiumDataObject::clearAll):
  33598. (WebCore::ChromiumDataObject::clearAllExceptFiles):
  33599. (WebCore::ChromiumDataObject::hasData):
  33600. (WebCore::ChromiumDataObject::types):
  33601. (WebCore::ChromiumDataObject::getData):
  33602. (WebCore::ChromiumDataObject::setData):
  33603. (WebCore::ChromiumDataObject::ChromiumDataObject):
  33604. * platform/chromium/ChromiumDataObject.h:
  33605. (WebCore::ChromiumDataObject::create):
  33606. (WebCore::ChromiumDataObject::urlTitle):
  33607. (WebCore::ChromiumDataObject::setUrlTitle):
  33608. (WebCore::ChromiumDataObject::htmlBaseUrl):
  33609. (WebCore::ChromiumDataObject::setHtmlBaseUrl):
  33610. (WebCore::ChromiumDataObject::containsFilenames):
  33611. (WebCore::ChromiumDataObject::filenames):
  33612. (WebCore::ChromiumDataObject::setFilenames):
  33613. (WebCore::ChromiumDataObject::fileExtension):
  33614. (WebCore::ChromiumDataObject::setFileExtension):
  33615. (WebCore::ChromiumDataObject::fileContentFilename):
  33616. (WebCore::ChromiumDataObject::setFileContentFilename):
  33617. (WebCore::ChromiumDataObject::fileContent):
  33618. (WebCore::ChromiumDataObject::setFileContent):
  33619. * platform/chromium/ClipboardChromium.cpp:
  33620. (WebCore::normalizeType):
  33621. (WebCore::ClipboardChromium::clearData):
  33622. (WebCore::ClipboardChromium::clearAllData):
  33623. (WebCore::ClipboardChromium::getData):
  33624. (WebCore::ClipboardChromium::setData):
  33625. (WebCore::ClipboardChromium::types):
  33626. (WebCore::ClipboardChromium::files):
  33627. (WebCore::writeImageToDataObject):
  33628. (WebCore::ClipboardChromium::declareAndWriteDragImage):
  33629. (WebCore::ClipboardChromium::writeURL):
  33630. (WebCore::ClipboardChromium::writeRange):
  33631. (WebCore::ClipboardChromium::writePlainText):
  33632. * platform/chromium/ClipboardChromiumWin.cpp:
  33633. (WebCore::ClipboardChromium::validateFileName):
  33634. * platform/chromium/ClipboardMimeTypes.cpp:
  33635. * platform/chromium/ClipboardMimeTypes.h:
  33636. * platform/chromium/DragDataChromium.cpp:
  33637. (WebCore::containsHTML):
  33638. (WebCore::DragData::containsURL):
  33639. (WebCore::DragData::asURL):
  33640. (WebCore::DragData::containsFiles):
  33641. (WebCore::DragData::asFilenames):
  33642. (WebCore::DragData::containsPlainText):
  33643. (WebCore::DragData::asPlainText):
  33644. (WebCore::DragData::canSmartReplace):
  33645. (WebCore::DragData::asFragment):
  33646. * platform/chromium/ReadableDataObject.cpp:
  33647. (WebCore::ReadableDataObject::getURL):
  33648. (WebCore::ReadableDataObject::getHTML):
  33649. * platform/chromium/WritableDataObject.cpp:
  33650. (WebCore::WritableDataObject::clearData):
  33651. (WebCore::WritableDataObject::setData):
  33652. (WebCore::WritableDataObject::setURL):
  33653. (WebCore::WritableDataObject::setHTML):
  33654. 2010-09-30 Chris Marrin <cmarrin@apple.com>
  33655. Reviewed by Simon Fraser.
  33656. Make 2D accelerated canvas rendering build on Mac
  33657. https://bugs.webkit.org/show_bug.cgi?id=46007
  33658. Add accelerated 2D rendering files to Mac build, fix build errors,
  33659. add ifdefs to compile only when the ACCELERATED_2D_CANVAS flag is
  33660. enabled, and add a skeleton of the mac specific file so it builds.
  33661. DrawingBufferMac.mm, the Mac specific file does nothing right now
  33662. other than initialize and create a layer. The rest will be added
  33663. when I do the actual implementation.
  33664. The most significant change was to SharedGraphicsContext3D, which
  33665. had a static local OwnPtr in one of the methods. This was causing
  33666. the exit time destructor warning. Getting rid of the OwnPtr fixed
  33667. the problem. Since the pointer that was being wrapped was to a
  33668. static object that would never get destroyed, the OwnPtr was not
  33669. necessary.
  33670. I also added the ACCELERATED_2D_CANVAS flag to build-webkit
  33671. and FeatureDefines.xcconfig for WebCore, WebKit and JavaScriptCore.
  33672. But right now the flag is off by default.
  33673. * Configurations/FeatureDefines.xcconfig:
  33674. * WebCore.xcodeproj/project.pbxproj:
  33675. * platform/graphics/gpu/DrawingBuffer.cpp:
  33676. * platform/graphics/gpu/DrawingBuffer.h:
  33677. (WebCore::DrawingBuffer::WillPublishCallback::~WillPublishCallback):
  33678. * platform/graphics/gpu/LoopBlinnClassifier.cpp:
  33679. * platform/graphics/gpu/LoopBlinnMathUtils.cpp:
  33680. * platform/graphics/gpu/LoopBlinnTextureCoords.cpp:
  33681. * platform/graphics/gpu/Shader.cpp:
  33682. * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
  33683. (WebCore::SharedGraphicsContext3D::allContexts):
  33684. * platform/graphics/gpu/SolidFillShader.cpp:
  33685. * platform/graphics/gpu/TexShader.cpp:
  33686. * platform/graphics/gpu/Texture.cpp:
  33687. * platform/graphics/gpu/Texture.h:
  33688. * platform/graphics/gpu/TilingData.cpp:
  33689. * platform/graphics/gpu/mac: Added.
  33690. * platform/graphics/gpu/mac/DrawingBufferMac.mm: Added.
  33691. (WebCore::DrawingBuffer::DrawingBuffer):
  33692. (WebCore::DrawingBuffer::~DrawingBuffer):
  33693. (WebCore::DrawingBuffer::reset):
  33694. (WebCore::DrawingBuffer::platformLayer):
  33695. 2010-09-30 Renata Hodovan <reni@inf.u-szeged.hu>
  33696. Reviewed by Dirk Schulze.
  33697. SVGFECompositeElement doesn't support dynamic invalidation, when attributes change.
  33698. https://bugs.webkit.org/show_bug.cgi?id=46902
  33699. Tests: svg/dynamic-updates/SVGFECompositeElement-dom-in-attr.html
  33700. svg/dynamic-updates/SVGFECompositeElement-dom-in2-attr.html
  33701. svg/dynamic-updates/SVGFECompositeElement-dom-k1-attr.html
  33702. svg/dynamic-updates/SVGFECompositeElement-dom-k2-attr.html
  33703. svg/dynamic-updates/SVGFECompositeElement-dom-k3-attr.html
  33704. svg/dynamic-updates/SVGFECompositeElement-dom-k4-attr.html
  33705. svg/dynamic-updates/SVGFECompositeElement-dom-operator-attr.html
  33706. svg/dynamic-updates/SVGFECompositeElement-svgdom-in-prop.html
  33707. svg/dynamic-updates/SVGFECompositeElement-svgdom-in2-prop.html
  33708. svg/dynamic-updates/SVGFECompositeElement-svgdom-k1-prop.html
  33709. svg/dynamic-updates/SVGFECompositeElement-svgdom-k2-prop.html
  33710. svg/dynamic-updates/SVGFECompositeElement-svgdom-k3-prop.html
  33711. svg/dynamic-updates/SVGFECompositeElement-svgdom-k4-prop.html
  33712. svg/dynamic-updates/SVGFECompositeElement-svgdom-operator-prop.html
  33713. * svg/SVGFECompositeElement.cpp:
  33714. (WebCore::SVGFECompositeElement::svgAttributeChanged):
  33715. * svg/SVGFECompositeElement.h:
  33716. 2010-09-29 Jeremy Orlow <jorlow@chromium.org>
  33717. Reviewed by Steve Block.
  33718. Finished IDBTransaction for IndexedDB
  33719. https://bugs.webkit.org/show_bug.cgi?id=46823
  33720. Switch the rest of IndexedDB to use transactions.
  33721. Implement most of setVersion.
  33722. Add IDBTransactions to IDBAny, IDBCursor, IDBRequest, etc.
  33723. Switch to using the standard cross thread task stuff.
  33724. Make everything threadsafe so it works with cross thread copy
  33725. (will be useful in the future).
  33726. Fix some subtle bugs in transactions.
  33727. Various bits of clean up (when I couldn't resist).
  33728. * bindings/js/JSIDBAnyCustom.cpp:
  33729. (WebCore::toJS):
  33730. * bindings/v8/IDBBindingUtilities.cpp:
  33731. (WebCore::LocalContext::LocalContext):
  33732. (WebCore::LocalContext::~LocalContext):
  33733. (WebCore::createIDBKeyFromSerializedValueAndKeyPath):
  33734. * bindings/v8/SerializedScriptValue.cpp:
  33735. (WebCore::SerializedScriptValue::release):
  33736. (WebCore::SerializedScriptValue::SerializedScriptValue):
  33737. * bindings/v8/SerializedScriptValue.h:
  33738. * bindings/v8/custom/V8IDBAnyCustom.cpp:
  33739. (WebCore::toV8):
  33740. * platform/CrossThreadCopier.cpp:
  33741. * storage/IDBAny.cpp:
  33742. (WebCore::IDBAny::idbFactory):
  33743. (WebCore::IDBAny::idbTransaction):
  33744. (WebCore::IDBAny::set):
  33745. * storage/IDBAny.h:
  33746. * storage/IDBCallbacks.h:
  33747. * storage/IDBCursor.cpp:
  33748. (WebCore::IDBCursor::IDBCursor):
  33749. (WebCore::IDBCursor::update):
  33750. (WebCore::IDBCursor::continueFunction):
  33751. (WebCore::IDBCursor::remove):
  33752. * storage/IDBCursor.h:
  33753. (WebCore::IDBCursor::create):
  33754. * storage/IDBCursorBackendImpl.cpp:
  33755. (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):
  33756. (WebCore::IDBCursorBackendImpl::update):
  33757. (WebCore::IDBCursorBackendImpl::updateInternal):
  33758. (WebCore::IDBCursorBackendImpl::continueFunction):
  33759. (WebCore::IDBCursorBackendImpl::continueFunctionInternal):
  33760. (WebCore::IDBCursorBackendImpl::remove):
  33761. (WebCore::IDBCursorBackendImpl::removeInternal):
  33762. * storage/IDBCursorBackendImpl.h:
  33763. (WebCore::IDBCursorBackendImpl::create):
  33764. * storage/IDBDatabase.cpp:
  33765. (WebCore::IDBDatabase::setSetVersionTransaction):
  33766. (WebCore::IDBDatabase::createObjectStore):
  33767. (WebCore::IDBDatabase::removeObjectStore):
  33768. (WebCore::IDBDatabase::setVersion):
  33769. (WebCore::IDBDatabase::close):
  33770. * storage/IDBDatabase.h:
  33771. * storage/IDBDatabase.idl:
  33772. * storage/IDBDatabaseBackendImpl.cpp:
  33773. (WebCore::IDBDatabaseBackendImpl::createObjectStore):
  33774. (WebCore::IDBDatabaseBackendImpl::createObjectStoreInternal):
  33775. (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
  33776. (WebCore::IDBDatabaseBackendImpl::removeObjectStoreInternal):
  33777. (WebCore::IDBDatabaseBackendImpl::setVersion):
  33778. (WebCore::IDBDatabaseBackendImpl::setVersionInternal):
  33779. (WebCore::IDBDatabaseBackendImpl::close):
  33780. * storage/IDBDatabaseBackendImpl.h:
  33781. * storage/IDBDatabaseBackendInterface.h:
  33782. * storage/IDBFactory.cpp:
  33783. (WebCore::IDBFactory::open):
  33784. * storage/IDBIndex.cpp:
  33785. (WebCore::IDBIndex::IDBIndex):
  33786. (WebCore::IDBIndex::openObjectCursor):
  33787. (WebCore::IDBIndex::openCursor):
  33788. (WebCore::IDBIndex::getObject):
  33789. (WebCore::IDBIndex::get):
  33790. * storage/IDBIndex.h:
  33791. (WebCore::IDBIndex::create):
  33792. * storage/IDBIndexBackendImpl.cpp:
  33793. (WebCore::IDBIndexBackendImpl::openCursorInternal):
  33794. (WebCore::IDBIndexBackendImpl::openObjectCursor):
  33795. (WebCore::IDBIndexBackendImpl::openCursor):
  33796. (WebCore::IDBIndexBackendImpl::getInternal):
  33797. (WebCore::IDBIndexBackendImpl::getObject):
  33798. (WebCore::IDBIndexBackendImpl::get):
  33799. * storage/IDBIndexBackendImpl.h:
  33800. * storage/IDBIndexBackendInterface.h:
  33801. * storage/IDBKey.cpp:
  33802. (WebCore::IDBKey::IDBKey):
  33803. * storage/IDBKey.h:
  33804. * storage/IDBKeyRange.h:
  33805. * storage/IDBObjectStore.cpp:
  33806. (WebCore::IDBObjectStore::IDBObjectStore):
  33807. (WebCore::IDBObjectStore::add):
  33808. (WebCore::IDBObjectStore::put):
  33809. (WebCore::IDBObjectStore::remove):
  33810. (WebCore::IDBObjectStore::createIndex):
  33811. (WebCore::IDBObjectStore::index):
  33812. (WebCore::IDBObjectStore::removeIndex):
  33813. (WebCore::IDBObjectStore::openCursor):
  33814. * storage/IDBObjectStore.idl:
  33815. * storage/IDBObjectStoreBackendImpl.cpp:
  33816. (WebCore::IDBObjectStoreBackendImpl::get):
  33817. (WebCore::IDBObjectStoreBackendImpl::getInternal):
  33818. (WebCore::IDBObjectStoreBackendImpl::put):
  33819. (WebCore::IDBObjectStoreBackendImpl::putInternal):
  33820. (WebCore::IDBObjectStoreBackendImpl::remove):
  33821. (WebCore::IDBObjectStoreBackendImpl::removeInternal):
  33822. (WebCore::IDBObjectStoreBackendImpl::createIndex):
  33823. (WebCore::IDBObjectStoreBackendImpl::createIndexInternal):
  33824. (WebCore::IDBObjectStoreBackendImpl::removeIndex):
  33825. (WebCore::IDBObjectStoreBackendImpl::removeIndexInternal):
  33826. (WebCore::IDBObjectStoreBackendImpl::openCursor):
  33827. (WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
  33828. * storage/IDBObjectStoreBackendImpl.h:
  33829. * storage/IDBObjectStoreBackendInterface.h:
  33830. * storage/IDBRequest.cpp:
  33831. (WebCore::IDBRequest::IDBRequest):
  33832. (WebCore::IDBRequest::resetReadyState):
  33833. (WebCore::IDBRequest::onSuccess):
  33834. (WebCore::IDBRequest::timerFired):
  33835. * storage/IDBRequest.h:
  33836. (WebCore::IDBRequest::create):
  33837. * storage/IDBTransactionBackendImpl.cpp:
  33838. (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
  33839. (WebCore::IDBTransactionBackendImpl::scheduleTask):
  33840. (WebCore::IDBTransactionBackendImpl::didCompleteTaskEvents):
  33841. (WebCore::IDBTransactionBackendImpl::run):
  33842. (WebCore::IDBTransactionBackendImpl::start):
  33843. (WebCore::IDBTransactionBackendImpl::commit):
  33844. (WebCore::IDBTransactionBackendImpl::timerFired):
  33845. * storage/IDBTransactionBackendImpl.h:
  33846. 2010-09-30 Csaba Osztrogonác <ossy@webkit.org>
  33847. Reviewed by Martin Robinson.
  33848. [Gtk] build still broken since r68521
  33849. https://bugs.webkit.org/show_bug.cgi?id=46795
  33850. makevalues.pl and makeprop.pl generate 3 files in one run.
  33851. Double or triple target is incorrect, because on a multicore
  33852. machine make processes targets in parallel.
  33853. Setting a->b->c dependencies for 3 generated files guarantees
  33854. that make doesn't execute the recipe of the rule more than one.
  33855. * GNUmakefile.am: Dependencies and missing headers added.
  33856. 2010-09-30 Andrey Kosyakov <caseq@chromium.org>
  33857. Unreviewed build fix (marked ResourceRawHeaders.h as private)
  33858. * WebCore.xcodeproj/project.pbxproj:
  33859. 2010-09-29 Andrey Kosyakov <caseq@chromium.org>
  33860. Reviewed by Pavel Feldman.
  33861. Web Inspector: display headers actually used by network stack in Resources tab
  33862. https://bugs.webkit.org/show_bug.cgi?id=46092
  33863. * GNUmakefile.am:
  33864. * WebCore.gypi:
  33865. * WebCore.pro:
  33866. * WebCore.vcproj/WebCore.vcproj:
  33867. * inspector/InspectorController.cpp:
  33868. (WebCore::InspectorController::willSendRequest): enable raw headers reporting if front-end is visible.
  33869. * inspector/InspectorResource.cpp:
  33870. (WebCore::InspectorResource::updateResponse):
  33871. * platform/network/ResourceRawHeaders.h: Added.
  33872. * platform/network/ResourceRequestBase.h: Added flag to enable raw headers reporting.
  33873. (WebCore::ResourceRequestBase::reportRawHeaders):
  33874. (WebCore::ResourceRequestBase::setReportRawHeaders):
  33875. (WebCore::ResourceRequestBase::ResourceRequestBase):
  33876. * platform/network/ResourceResponseBase.cpp: Added support for raw headers.
  33877. (WebCore::ResourceResponseBase::resourceRawHeaders):
  33878. (WebCore::ResourceResponseBase::setResourceRawHeaders):
  33879. * platform/network/ResourceResponseBase.h:
  33880. 2010-09-29 Andrey Kosyakov <caseq@chromium.org>
  33881. Reviewed by Pavel Feldman.
  33882. Web Inspector: display headers actually used by network stack in Resources tab
  33883. https://bugs.webkit.org/show_bug.cgi?id=46092
  33884. * GNUmakefile.am:
  33885. * WebCore.gypi:
  33886. * WebCore.pro:
  33887. * WebCore.vcproj/WebCore.vcproj:
  33888. * inspector/InspectorController.cpp:
  33889. (WebCore::InspectorController::willSendRequest): enable raw headers reporting if front-end is visible.
  33890. * inspector/InspectorResource.cpp:
  33891. (WebCore::InspectorResource::updateResponse):
  33892. * platform/network/ResourceRawHeaders.h: Added.
  33893. * platform/network/ResourceRequestBase.h: Added flag to enable raw headers reporting.
  33894. (WebCore::ResourceRequestBase::reportRawHeaders):
  33895. (WebCore::ResourceRequestBase::setReportRawHeaders):
  33896. (WebCore::ResourceRequestBase::ResourceRequestBase):
  33897. * platform/network/ResourceResponseBase.cpp: Added support for raw headers.
  33898. (WebCore::ResourceResponseBase::resourceRawHeaders):
  33899. (WebCore::ResourceResponseBase::setResourceRawHeaders):
  33900. * platform/network/ResourceResponseBase.h:
  33901. 2010-09-30 Andreas Kling <andreas.kling@nokia.com>
  33902. Reviewed by Tor Arne Vestbø.
  33903. [Qt] V8 port: Unbreak build
  33904. Add missing <wtf/text/CString.h> include.
  33905. * loader/PingLoader.cpp:
  33906. 2010-09-29 Ilya Tikhonovsky <loislo@chromium.org>
  33907. Reviewed by Pavel Feldman.
  33908. Web Inspector: assign the resource loading finish time which was obtained from the network stack
  33909. as the end time for the corresponding event in Timeline.
  33910. See related change for Resources panel https://bugs.webkit.org/show_bug.cgi?id=45664
  33911. https://bugs.webkit.org/show_bug.cgi?id=46789
  33912. * inspector/InspectorController.cpp:
  33913. (WebCore::InspectorController::didFinishLoading):
  33914. (WebCore::InspectorController::didFailLoading):
  33915. * inspector/InspectorTimelineAgent.cpp:
  33916. (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
  33917. * inspector/InspectorTimelineAgent.h:
  33918. 2010-09-29 Pavel Feldman <pfeldman@chromium.org>
  33919. Reviewed by Timothy Hatcher.
  33920. Web Inspector: implement sorting by timeline in network panel + filtering.
  33921. https://bugs.webkit.org/show_bug.cgi?id=45657
  33922. A number of drive-by fixes, sorting by timeline added,
  33923. 0-based timeline for duration added, filters added,
  33924. more love for detailed view + nice headers.
  33925. * English.lproj/localizedStrings.js:
  33926. * inspector/front-end/DataGrid.js:
  33927. (WebInspector.DataGrid):
  33928. (WebInspector.DataGrid.prototype.markColumnAsSortedBy):
  33929. (WebInspector.DataGrid.prototype.headerTableHeader):
  33930. * inspector/front-end/NetworkPanel.js:
  33931. (WebInspector.NetworkPanel):
  33932. (WebInspector.NetworkPanel.prototype.get statusBarItems):
  33933. (WebInspector.NetworkPanel.prototype._createTable):
  33934. (WebInspector.NetworkPanel.prototype._makeHeaderInnerHTML):
  33935. (WebInspector.NetworkPanel.prototype._createSortingFunctions):
  33936. (WebInspector.NetworkPanel.prototype._sortByTimeline):
  33937. (WebInspector.NetworkPanel.prototype._sortItems):
  33938. (WebInspector.NetworkPanel.prototype._createFilterPanel):
  33939. (WebInspector.NetworkPanel.prototype._showCategory):
  33940. (WebInspector.NetworkPanel.prototype._hideCategory):
  33941. (WebInspector.NetworkPanel.prototype._updateFilter):
  33942. (WebInspector.NetworkPanel.prototype._filter):
  33943. (WebInspector.NetworkPanel.prototype._updateDividersIfNeeded):
  33944. (WebInspector.NetworkPanel.prototype.reset):
  33945. (WebInspector.NetworkPanel.prototype._setLargerResources):
  33946. (WebInspector.NetworkDataGridNode.prototype.createCells):
  33947. (WebInspector.NetworkDataGridNode.prototype._createDivInTD):
  33948. (WebInspector.NetworkDataGridNode.prototype._refreshURLCell):
  33949. (WebInspector.NetworkDataGridNode.prototype._refreshStatusCell):
  33950. (WebInspector.NetworkDataGridNode.prototype._appendSubtitle):
  33951. (WebInspector.NetworkDataGridNode.SizeComparator):
  33952. (WebInspector.NetworkDataGridNode.ResourcePropertyComparator):
  33953. * inspector/front-end/ProfilesPanel.js:
  33954. (WebInspector.ProfilesPanel):
  33955. (WebInspector.ProfilesPanel.prototype.updateMainViewWidth):
  33956. * inspector/front-end/StoragePanel.js:
  33957. (WebInspector.StoragePanel):
  33958. * inspector/front-end/TimelineGrid.js:
  33959. (WebInspector.TimelineGrid.prototype.updateDividers):
  33960. * inspector/front-end/TimelineOverviewPane.js:
  33961. (WebInspector.TimelineOverviewPane):
  33962. (WebInspector.TimelineOverviewPane.prototype.updateMainViewWidth):
  33963. * inspector/front-end/inspector.css:
  33964. (.data-grid th.sort-ascending > div::after):
  33965. (.data-grid th.sort-descending > div::after):
  33966. (.status-bar-items):
  33967. * inspector/front-end/networkPanel.css:
  33968. (.network.panel .data-grid td):
  33969. (.network.panel .data-grid th):
  33970. (.network.panel .data-grid.small th):
  33971. (.network.panel .data-grid .data-container):
  33972. (.network.panel .data-grid.small .data-container):
  33973. (.network.panel .data-grid select):
  33974. (.network.panel .data-grid td.time-column):
  33975. (.network-cell-subtitle):
  33976. (.network-header-subtitle):
  33977. (.network-event-divider):
  33978. (.network.panel .network-timeline-grid.small .network-event-divider):
  33979. (.network.panel .resources-dividers-label-bar):
  33980. (.network.panel .network-timeline-grid.small .resources-dividers-label-bar):
  33981. (.network.panel .resources-divider-label):
  33982. (.network.panel .resources-dividers-label-bar .resources-divider):
  33983. (.network.panel .network-timeline-grid.small .resources-dividers-label-bar .resources-divider):
  33984. (.network.panel .resources-divider.first .resources-divider-label):
  33985. (.network.panel .resources-dividers-label-bar .resources-divider.first):
  33986. (#network-filter):
  33987. (.data-grid table.data tr.revealed.network-category-websockets, .data-grid table.data tr.revealed.network-category-other):
  33988. (.data-grid.filter-all table.data tr.revealed.network-category-other, .data-grid.filter-other table.data tr.revealed.network-category-other):
  33989. 2010-09-30 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
  33990. Reviewed by Simon Hausmann.
  33991. [Qt] Ensure we always report a valid size for the video
  33992. Some QtMultimedia-backends require a paint before even giving us
  33993. a size, so we start out by using the default video size, and then
  33994. update it once QtMultimedia starts feeding us valid sizes.
  33995. * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
  33996. (WebCore::MediaPlayerPrivateQt::MediaPlayerPrivateQt):
  33997. (WebCore::MediaPlayerPrivateQt::nativeSizeChanged):
  33998. (WebCore::MediaPlayerPrivateQt::setSize):
  33999. (WebCore::MediaPlayerPrivateQt::naturalSize):
  34000. * platform/graphics/qt/MediaPlayerPrivateQt.h:
  34001. 2010-09-30 Nikolas Zimmermann <nzimmermann@rim.com>
  34002. Reviewed by Andreas Kling.
  34003. RenderSVGTextPath lacks isSVGTextPath() method
  34004. https://bugs.webkit.org/show_bug.cgi?id=46888
  34005. Make RenderSVGTextPath objects easily detectable, using a isSVGTextPath() method, like all other SVG renderers have.
  34006. * rendering/RenderObject.h:
  34007. (WebCore::RenderObject::isSVGTextPath): Return false.
  34008. * rendering/RenderSVGTextPath.h: Changed indentation of whole file.
  34009. (WebCore::RenderSVGTextPath::isSVGTextPath): Return true.
  34010. (WebCore::RenderSVGTextPath::renderName):
  34011. (WebCore::toRenderSVGTextPath): Add helper casting methods.
  34012. 2010-09-30 Nikolas Zimmermann <nzimmermann@rim.com>
  34013. Reviewed by Dirk Schulze.
  34014. AffineTransform should expose methods calculating the x/y scale factors
  34015. https://bugs.webkit.org/show_bug.cgi?id=46887
  34016. Expose methods calculating the x/y scale factors for an AffineTransform.
  34017. * platform/graphics/transforms/AffineTransform.cpp:
  34018. (WebCore::affineTransformDecompose): Move xScale / yScale calculations in their own functions.
  34019. (WebCore::AffineTransform::xScale):
  34020. (WebCore::AffineTransform::yScale):
  34021. * platform/graphics/transforms/AffineTransform.h:
  34022. 2010-09-30 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
  34023. Reviewed by Simon Hausmann.
  34024. [Qt] Ensure that the media player backend does not leave any resources around
  34025. * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
  34026. (WebCore::MediaPlayerPrivateQt::~MediaPlayerPrivateQt):
  34027. 2010-09-30 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
  34028. Reviewed by Simon Hausmann.
  34029. Minor cleanup of MediaPlayerPrivateQt
  34030. * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
  34031. (WebCore::MediaPlayerPrivateQt::MediaPlayerPrivateQt):
  34032. (WebCore::MediaPlayerPrivateQt::currentTime):
  34033. (WebCore::MediaPlayerPrivateQt::positionChanged):
  34034. (WebCore::MediaPlayerPrivateQt::paint):
  34035. 2010-09-30 Jochen Eisinger <jochen@chromium.org>
  34036. Reviewed by Jeremy Orlow.
  34037. Mark unused parameters as such.
  34038. https://bugs.webkit.org/show_bug.cgi?id=46880
  34039. * inspector/InspectorDOMAgent.cpp:
  34040. * page/Geolocation.cpp:
  34041. (WebCore::Geolocation::clearWatch):
  34042. 2010-09-29 Pavel Podivilov <podivilov@chromium.org>
  34043. Reviewed by Pavel Feldman.
  34044. Web Inspector: extract Inspector Instrumentation API as a class.
  34045. https://bugs.webkit.org/show_bug.cgi?id=46614
  34046. * CMakeLists.txt:
  34047. * GNUmakefile.am:
  34048. * WebCore.gypi:
  34049. * WebCore.pro:
  34050. * WebCore.vcproj/WebCore.vcproj:
  34051. * WebCore.xcodeproj/project.pbxproj:
  34052. * bindings/js/JSXMLHttpRequestCustom.cpp:
  34053. (WebCore::JSXMLHttpRequest::send):
  34054. * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
  34055. (WebCore::V8XMLHttpRequest::sendCallback):
  34056. * dom/CharacterData.cpp:
  34057. (WebCore::CharacterData::dispatchModifiedEvent):
  34058. * dom/ContainerNode.cpp:
  34059. (WebCore::ContainerNode::insertBefore):
  34060. (WebCore::ContainerNode::parserInsertBefore):
  34061. (WebCore::ContainerNode::replaceChild):
  34062. (WebCore::ContainerNode::appendChild):
  34063. (WebCore::ContainerNode::parserAddChild):
  34064. (WebCore::notifyChildInserted):
  34065. (WebCore::dispatchChildRemovalEvents):
  34066. * dom/Element.cpp:
  34067. (WebCore::Element::setAttribute):
  34068. (WebCore::Element::removeAttribute):
  34069. * inspector/InspectorController.cpp:
  34070. (WebCore::InspectorController::InspectorController):
  34071. (WebCore::InspectorController::~InspectorController):
  34072. (WebCore::InspectorController::connectFrontend):
  34073. (WebCore::InspectorController::disconnectFrontend):
  34074. (WebCore::InspectorController::instrumentWillSendXMLHttpRequest):
  34075. * inspector/InspectorController.h:
  34076. * inspector/InspectorInstrumentation.cpp: Added.
  34077. (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
  34078. (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl):
  34079. (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
  34080. (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl):
  34081. (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
  34082. (WebCore::InspectorInstrumentation::didModifyDOMAttrImpl):
  34083. (WebCore::InspectorInstrumentation::characterDataModifiedImpl):
  34084. (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequestImpl):
  34085. * inspector/InspectorInstrumentation.h: Added.
  34086. (WebCore::InspectorInstrumentation::frontendCreated):
  34087. (WebCore::InspectorInstrumentation::frontendDeleted):
  34088. (WebCore::InspectorInstrumentation::hasFrontends):
  34089. (WebCore::InspectorInstrumentation::willInsertDOMNode):
  34090. (WebCore::InspectorInstrumentation::didInsertDOMNode):
  34091. (WebCore::InspectorInstrumentation::willRemoveDOMNode):
  34092. (WebCore::InspectorInstrumentation::willModifyDOMAttr):
  34093. (WebCore::InspectorInstrumentation::didModifyDOMAttr):
  34094. (WebCore::InspectorInstrumentation::characterDataModified):
  34095. (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequest):
  34096. (WebCore::InspectorInstrumentation::inspectorControllerForScriptExecutionContext):
  34097. (WebCore::InspectorInstrumentation::inspectorControllerForDocument):
  34098. (WebCore::InspectorInstrumentation::inspectorControllerForPage):
  34099. * workers/SharedWorker.cpp:
  34100. 2010-09-30 Kwang Yul Seo <skyul@company100.net>
  34101. Reviewed by Darin Adler.
  34102. Build fix: Add ENABLE(INSPECTOR) guard
  34103. https://bugs.webkit.org/show_bug.cgi?id=46852
  34104. Page does not have inspectorController() when ENABLE(INSPECTOR) is 0.
  34105. * inspector/InspectorController.h:
  34106. (WebCore::InspectorController::inspectorControllerForDocument):
  34107. 2010-09-30 Michael Nordman <michaeln@google.com>
  34108. Reviewed by David Levin.
  34109. Make it possible to copy platform specific data members of ResourceRequest and ResourceResponse
  34110. across threads and to compare platform specific data members of ResourceRequest.
  34111. - Added two instance methods to the platform specific subclasses: doPlatformAdopt and doPlatformCopyData.
  34112. - Also added a "shadowable" static method for platformCompare to ResourceRequestBase, a similar method
  34113. is already present on ResourceResponseBase.
  34114. - Converted the cross thread structs defined in ResourceRequest/ResponseBase.h to base
  34115. classes and extended those base classes in the platform specific headers to provide a place
  34116. to hold additional fields.
  34117. - Used this mechanism to have the chromium port's data members make the hop.
  34118. https://bugs.webkit.org/show_bug.cgi?id=46430
  34119. No new tests. Just plumbing.
  34120. * WebCore.exp.in: removed the symbol for the now inlined == operator
  34121. * WebCore.gypi: added chromium/ResourceResponse.cpp
  34122. * platform/network/ResourceRequestBase.cpp:
  34123. (WebCore::ResourceRequestBase::adopt):
  34124. (WebCore::ResourceRequestBase::copyData):
  34125. (WebCore::ResourceRequestBase::compare):
  34126. * platform/network/ResourceRequestBase.h:
  34127. (WebCore::ResourceRequestBase::platformCompare):
  34128. (WebCore::operator==):
  34129. (WebCore::operator!=):
  34130. * platform/network/ResourceResponseBase.cpp:
  34131. (WebCore::ResourceResponseBase::asResourceResponse):
  34132. (WebCore::ResourceResponseBase::adopt):
  34133. (WebCore::ResourceResponseBase::copyData):
  34134. * platform/network/ResourceResponseBase.h:
  34135. * platform/network/android/ResourceRequest.h:
  34136. (WebCore::ResourceRequest::doPlatformCopyData):
  34137. (WebCore::ResourceRequest::doPlatformAdopt):
  34138. * platform/network/android/ResourceResponse.h:
  34139. (WebCore::ResourceResponse::doPlatformCopyData):
  34140. (WebCore::ResourceResponse::doPlatformAdopt):
  34141. * platform/network/cf/ResourceRequest.h:
  34142. (WebCore::ResourceRequest::doPlatformCopyData):
  34143. (WebCore::ResourceRequest::doPlatformAdopt):
  34144. * platform/network/cf/ResourceResponse.h:
  34145. (WebCore::ResourceResponse::doPlatformCopyData):
  34146. (WebCore::ResourceResponse::doPlatformAdopt):
  34147. * platform/network/chromium/ResourceRequest.cpp:
  34148. (WebCore::ResourceRequest::doPlatformCopyData):
  34149. (WebCore::ResourceRequest::doPlatformAdopt):
  34150. * platform/network/chromium/ResourceRequest.h:
  34151. * platform/network/chromium/ResourceResponse.cpp: Added.
  34152. (WebCore::ResourceResponse::doPlatformCopyData):
  34153. (WebCore::ResourceResponse::doPlatformAdopt):
  34154. * platform/network/chromium/ResourceResponse.h:
  34155. * platform/network/curl/ResourceRequest.h:
  34156. (WebCore::ResourceRequest::doPlatformCopyData):
  34157. (WebCore::ResourceRequest::doPlatformAdopt):
  34158. * platform/network/curl/ResourceResponse.h:
  34159. (WebCore::ResourceResponse::doPlatformCopyData):
  34160. (WebCore::ResourceResponse::doPlatformAdopt):
  34161. * platform/network/mac/ResourceRequest.h:
  34162. (WebCore::ResourceRequest::doPlatformCopyData):
  34163. (WebCore::ResourceRequest::doPlatformAdopt):
  34164. * platform/network/mac/ResourceResponse.h:
  34165. (WebCore::ResourceResponse::doPlatformCopyData):
  34166. (WebCore::ResourceResponse::doPlatformAdopt):
  34167. * platform/network/qt/ResourceRequest.h:
  34168. (WebCore::ResourceRequest::doPlatformCopyData):
  34169. (WebCore::ResourceRequest::doPlatformAdopt):
  34170. * platform/network/qt/ResourceResponse.h:
  34171. (WebCore::ResourceResponse::doPlatformCopyData):
  34172. (WebCore::ResourceResponse::doPlatformAdopt):
  34173. * platform/network/soup/ResourceRequest.h:
  34174. (WebCore::ResourceRequest::doPlatformCopyData):
  34175. (WebCore::ResourceRequest::doPlatformAdopt):
  34176. * platform/network/soup/ResourceResponse.h:
  34177. (WebCore::ResourceResponse::doUpdateResourceResponse):
  34178. (WebCore::ResourceResponse::doPlatformCopyData):
  34179. (WebCore::ResourceResponse::doPlatformAdopt):
  34180. 2010-09-29 Chris Rogers <crogers@google.com>
  34181. Reviewed by Kenneth Russell.
  34182. Put default initialize() and uninitialize() methods in AudioNode
  34183. https://bugs.webkit.org/show_bug.cgi?id=46767
  34184. No new tests since audio API is not yet implemented.
  34185. * webaudio/AudioNode.cpp:
  34186. (WebCore::AudioNode::initialize):
  34187. (WebCore::AudioNode::uninitialize):
  34188. * webaudio/AudioNode.h:
  34189. 2010-09-29 Kent Tamura <tkent@chromium.org>
  34190. Reviewed by Dimitri Glazkov.
  34191. Refactor HTMLInputElement: Make DeprecatedInputType private.
  34192. https://bugs.webkit.org/show_bug.cgi?id=46791
  34193. No new tests because this doesn't change any behavior.
  34194. * html/HTMLInputElement.cpp:
  34195. (WebCore::HTMLInputElement::createTypeMap):
  34196. * html/HTMLInputElement.h:
  34197. Move DeprecatedInputType, deprecatedInputType() and
  34198. parseToDateComponents() to the private section, make
  34199. createTypeMap() a member function of HTMLInputElement.
  34200. (WebCore::HTMLInputElement::deprecatedInputType):
  34201. 2010-09-29 Mihai Parparita <mihaip@chromium.org>
  34202. Reviewed by Darin Fisher.
  34203. REGRESSION: page reload on back button after history.pushState with appearing/disappearing iframes
  34204. https://bugs.webkit.org/show_bug.cgi?id=46324
  34205. Revert same document check to the way it was before r66238 for history
  34206. entries created by pushState or fragment changes. Logic fror determining
  34207. if same document navigation should be used is moved to HistoryItem.
  34208. Tests: fast/history/same-document-iframes-changing-fragment.html
  34209. fast/history/same-document-iframes-changing-pushstate.html
  34210. * history/HistoryItem.cpp:
  34211. (WebCore::HistoryItem::shouldDoSameDocumentNavigationTo):
  34212. (WebCore::HistoryItem::hasSameDocumentTree):
  34213. (WebCore::HistoryItem::hasSameFrames):
  34214. * history/HistoryItem.h:
  34215. * loader/FrameLoader.cpp:
  34216. (WebCore::FrameLoader::loadItem):
  34217. * loader/FrameLoader.cpp:
  34218. (WebCore::FrameLoader::loadItem):
  34219. 2010-09-29 MORITA Hajime <morrita@google.com>
  34220. Unreviewed build fix.
  34221. WebCore::ESpeak causes missing symbol with no ENABLE_SVG
  34222. https://bugs.webkit.org/show_bug.cgi?id=46865
  34223. Moves ESpeak related function definitions outside ENABLE_SVG block.
  34224. * css/CSSPrimitiveValueMappings.h:
  34225. (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
  34226. (WebCore::CSSPrimitiveValue::operator ESpeak):
  34227. (WebCore::CSSPrimitiveValue::operator EVectorEffect):
  34228. 2010-09-29 Chris Rogers <crogers@google.com>
  34229. Reviewed by Kenneth Russell.
  34230. Add AudioChannelSplitter files
  34231. https://bugs.webkit.org/show_bug.cgi?id=46290
  34232. No new tests since audio API is not yet implemented.
  34233. * webaudio/AudioChannelSplitter.cpp: Added.
  34234. (WebCore::AudioChannelSplitter::AudioChannelSplitter):
  34235. (WebCore::AudioChannelSplitter::process):
  34236. (WebCore::AudioChannelSplitter::reset):
  34237. * webaudio/AudioChannelSplitter.h: Added.
  34238. (WebCore::AudioChannelSplitter::create):
  34239. * webaudio/AudioChannelSplitter.idl: Added.
  34240. 2010-09-29 Kinuko Yasuda <kinuko@chromium.org>
  34241. Reviewed by David Levin.
  34242. Fix DirectoryReader's behavior to trigger only one EntriesCallback per readEntries
  34243. https://bugs.webkit.org/show_bug.cgi?id=46563
  34244. Test: fast/filesystem/read-directory.html
  34245. * fileapi/DOMFileSystem.cpp:
  34246. (WebCore::DOMFileSystem::readDirectory): Changed to take DirectoryReader
  34247. as a parameter.
  34248. * fileapi/DOMFileSystem.h:
  34249. (WebCore::DOMFileSystem::scheduleCallback): Added.
  34250. * fileapi/DirectoryReader.cpp:
  34251. (WebCore::DirectoryReader::DirectoryReader): Added initializer for
  34252. m_hasMore flag.
  34253. (WebCore::DirectoryReader::readEntries): Changed to schedule
  34254. EntriesCallback with an empty array if m_hasMore flag is set false.
  34255. * fileapi/DirectoryReader.h:
  34256. (WebCore::DirectoryReader::filesystem): Added.
  34257. (WebCore::DirectoryReader::setHasMore): Added.
  34258. * fileapi/FileSystemCallbacks.cpp:
  34259. (WebCore::EntriesCallbacks::create):
  34260. (WebCore::EntriesCallbacks::EntriesCallbacks): Changed to take
  34261. DirectoryReader as a parameter.
  34262. (WebCore::EntriesCallbacks::didReadDirectoryEntry):
  34263. (WebCore::EntriesCallbacks::didReadDirectoryEntries): Changed 1) not to
  34264. trigger the second callback when hasMore is false, and 2) to update
  34265. the DirectoryReader's m_hasMore flag.
  34266. * fileapi/FileSystemCallbacks.h:
  34267. 2010-09-29 Chris Rogers <crogers@google.com>
  34268. Reviewed by Kenneth Russell.
  34269. Add AudioGainNode files
  34270. https://bugs.webkit.org/show_bug.cgi?id=46286
  34271. No new tests since audio API is not yet implemented.
  34272. * webaudio/AudioGainNode.cpp: Added.
  34273. (WebCore::AudioGainNode::AudioGainNode):
  34274. (WebCore::AudioGainNode::process):
  34275. (WebCore::AudioGainNode::reset):
  34276. (WebCore::AudioGainNode::checkNumberOfChannelsForInput):
  34277. * webaudio/AudioGainNode.h: Added.
  34278. (WebCore::AudioGainNode::create):
  34279. (WebCore::AudioGainNode::gain):
  34280. * webaudio/AudioGainNode.idl: Added.
  34281. 2010-09-29 Chris Rogers <crogers@google.com>
  34282. Reviewed by Kenneth Russell.
  34283. Add AudioChannelMerger files
  34284. https://bugs.webkit.org/show_bug.cgi?id=46291
  34285. No new tests since audio API is not yet implemented.
  34286. * webaudio/AudioChannelMerger.cpp: Added.
  34287. (WebCore::AudioChannelMerger::AudioChannelMerger):
  34288. (WebCore::AudioChannelMerger::process):
  34289. (WebCore::AudioChannelMerger::reset):
  34290. * webaudio/AudioChannelMerger.h: Added.
  34291. (WebCore::AudioChannelMerger::create):
  34292. * webaudio/AudioChannelMerger.idl: Added.
  34293. 2010-09-29 Chris Fleizach <cfleizach@apple.com>
  34294. No review. Missed file for patch.
  34295. AX: implement CSS3 Speech "speak"
  34296. https://bugs.webkit.org/show_bug.cgi?id=46827
  34297. * css/CSSParser.cpp:
  34298. (WebCore::CSSParser::parseValue):
  34299. 2010-09-29 Enrica Casucci <enrica@apple.com>
  34300. Reviewed by Darin Adler.
  34301. Crash at lineBreakExistsAtPosition + 125
  34302. <rdar://problem/7028809>
  34303. https://bugs.webkit.org/show_bug.cgi?id=46770
  34304. lineBreakExistsAtPosition is called from InsertTextCommand::input,
  34305. where we compute the downstream position of the endingSelection().
  34306. Downstream can return the original position, that comes from a VisibleSelection
  34307. but there is no guarantee that its renderer is still there. Everywhere we dereference
  34308. a renderer we check if it's null.
  34309. There is no regression test.
  34310. * editing/htmlediting.cpp:
  34311. (WebCore::lineBreakExistsAtPosition): Added check that the renderer is not null
  34312. before dereferencing it.
  34313. 2010-09-29 Sam Weinig <sam@webkit.org>
  34314. Reviewed by Darin Adler.
  34315. Add additional checks to StringBuilder.
  34316. <rdar://problem/7761248>
  34317. * platform/text/StringBuilder.cpp:
  34318. (WebCore::checkAppend):
  34319. (WebCore::StringBuilder::append):
  34320. (WebCore::StringBuilder::toString):
  34321. (WebCore::StringBuilder::clear):
  34322. (WebCore::StringBuilder::length):
  34323. * platform/text/StringBuilder.h:
  34324. (WebCore::StringBuilder::StringBuilder):
  34325. (WebCore::StringBuilder::setNonNull):
  34326. (WebCore::StringBuilder::isNull):
  34327. 2010-09-29 Anders Carlsson <andersca@apple.com>
  34328. Reviewed by Darin Adler.
  34329. plugins/npruntime/invoke-failure.html fails in WebKit2 due to slightly different exception being thrown
  34330. https://bugs.webkit.org/show_bug.cgi?id=46715
  34331. <rdar://problem/8485909>
  34332. Remove exclamation points from exceptions.
  34333. * bindings/v8/V8NPObject.cpp:
  34334. (WebCore::npObjectInvokeImpl):
  34335. * bridge/c/c_instance.cpp:
  34336. (JSC::Bindings::CInstance::invokeMethod):
  34337. (JSC::Bindings::CInstance::invokeDefaultMethod):
  34338. (JSC::Bindings::CInstance::invokeConstruct):
  34339. 2010-09-29 Anders Carlsson <andersca@apple.com>
  34340. Reviewed by Darin Adler.
  34341. Add additional check to Text::wholeText.
  34342. <rdar://problem/8304795>
  34343. * dom/Text.cpp:
  34344. (WebCore::Text::wholeText):
  34345. 2010-09-29 Brian Weinstein <bweinstein@apple.com>
  34346. Reviewed by Brady Eidson.
  34347. REGRESSION (r66129): Loading full-frame .swf file crashes with flash blocker extension enabled
  34348. <https://bugs.webkit.org/show_bug.cgi?id=46773>
  34349. <rdar://problem/8390975>
  34350. After r66129, start scripts were run on plugin documents, and cancelling the load of a plugin
  34351. document could cause Safari to crash.
  34352. If a plugin load on an initial document is cancelled, we cancel the main resource load (where the
  34353. main resource is the plugin), and if the load is restarted and allowed, we don't go through the manual
  34354. loading path like we do on the initial load of a plugin in a plugin document.
  34355. Tests: plugins/plugin-document-load-prevented-userscript.html
  34356. plugins/plugin-document-willSendRequest-null.html
  34357. * html/HTMLEmbedElement.cpp:
  34358. (WebCore::HTMLEmbedElement::updateWidget): If the plugin load was cancelled, and this is in a
  34359. plugin document, call a function on PluginDocument that cancels the main resource load, and
  34360. sets a plugin document flag.
  34361. * html/PluginDocument.cpp:
  34362. (WebCore::PluginDocumentParser::appendBytes): Null check the widget's renderer, because it could be
  34363. null if the load was cancelled.
  34364. (WebCore::PluginDocument::PluginDocument): Initialize the new variable.
  34365. (WebCore::PluginDocument::cancelManualPluginLoad): Cancel the main resource load of the plugin document
  34366. (which is a plugin in the case of a plugin document).
  34367. * html/PluginDocument.h:
  34368. (WebCore::PluginDocument::shouldLoadPluginManually): Returns whether or not we should load the plugin
  34369. manually.
  34370. (WebCore::PluginDocument::setShouldLoadPluginManually): Set whether or not we should load the plugin
  34371. manually.
  34372. (WebCore::toPluginDocument):
  34373. * loader/SubframeLoader.cpp:
  34374. (WebCore::SubframeLoader::loadPlugin): Check if we should load the plugin manually according to the plugin
  34375. document.
  34376. 2010-09-29 David Hyatt <hyatt@apple.com>
  34377. Reviewed by Sam Weinig.
  34378. https://bugs.webkit.org/show_bug.cgi?id=46844, make estimateLogicalTopPosition
  34379. block-flow-aware.
  34380. * rendering/RenderBlock.cpp:
  34381. (WebCore::RenderBlock::estimateLogicalTopPosition):
  34382. (WebCore::RenderBlock::collapsedMarginBeforeForChild):
  34383. (WebCore::RenderBlock::collapsedMarginAfterForChild):
  34384. * rendering/RenderBlock.h:
  34385. 2010-09-29 Chris Rogers <crogers@google.com>
  34386. Reviewed by Kenneth Russell.
  34387. Minor cleanup to AudioContext
  34388. https://bugs.webkit.org/show_bug.cgi?id=46843
  34389. No new tests since audio API is not yet implemented
  34390. * webaudio/AudioContext.cpp:
  34391. (WebCore::AudioContext::lock):
  34392. (WebCore::AudioContext::handleDeferredFinishDerefs):
  34393. 2010-09-29 MORITA Hajime <morrita@google.com>
  34394. Reviewed by Eric Seidel.
  34395. Assertion failed when accessing -webkit-margin-top-collapse via computed style.
  34396. https://bugs.webkit.org/show_bug.cgi?id=46798
  34397. There was a switch statement which missed enum entries in getPropertyCSSValue().
  34398. This change added these entries to prevent the leak.
  34399. It also added extra case statements to encourage the compiler's help.
  34400. Test: fast/css/getComputedStyle/margin-top-bottom-collapse-alias.html
  34401. * css/CSSComputedStyleDeclaration.cpp:
  34402. (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  34403. 2010-09-29 Chris Rogers <crogers@google.com>
  34404. Reviewed by Kenneth Russell.
  34405. Limit number of AudioNode deletions per render quantum in AudioContext
  34406. https://bugs.webkit.org/show_bug.cgi?id=46834
  34407. No new tests since audio API is not yet implemented.
  34408. * webaudio/AudioContext.cpp:
  34409. (WebCore::AudioContext::handlePostRenderTasks):
  34410. (WebCore::AudioContext::deleteMarkedNodes):
  34411. 2010-09-29 David Hyatt <hyatt@apple.com>
  34412. Reviewed by Simon Fraser.
  34413. https://bugs.webkit.org/show_bug.cgi?id=46838
  34414. Get rid of the marginXXXUsing/setMarginXXXUsing methods on RenderBox. I'm inverting the way these are called
  34415. and putting the methods on RenderBlock instead. The methods can be named better this way and the getters
  34416. can operate on RenderBoxModelObjects instead of just RenderBoxes.
  34417. * rendering/RenderBlock.cpp:
  34418. (WebCore::RenderBlock::layoutBlockChild):
  34419. (WebCore::RenderBlock::marginBeforeForChild):
  34420. (WebCore::RenderBlock::marginAfterForChild):
  34421. (WebCore::RenderBlock::marginStartForChild):
  34422. (WebCore::RenderBlock::marginEndForChild):
  34423. (WebCore::RenderBlock::setMarginStartForChild):
  34424. (WebCore::RenderBlock::setMarginEndForChild):
  34425. (WebCore::RenderBlock::setMarginBeforeForChild):
  34426. (WebCore::RenderBlock::setMarginAfterForChild):
  34427. * rendering/RenderBlock.h:
  34428. (WebCore::RenderBlock::logicalHeightForChild):
  34429. (WebCore::RenderBlock::logicalTopForChild):
  34430. * rendering/RenderBox.cpp:
  34431. (WebCore::RenderBox::marginBefore):
  34432. (WebCore::RenderBox::marginAfter):
  34433. (WebCore::RenderBox::marginStart):
  34434. (WebCore::RenderBox::marginEnd):
  34435. (WebCore::RenderBox::setMarginStart):
  34436. (WebCore::RenderBox::setMarginEnd):
  34437. (WebCore::RenderBox::setMarginBefore):
  34438. (WebCore::RenderBox::setMarginAfter):
  34439. (WebCore::RenderBox::computeLogicalWidth):
  34440. (WebCore::RenderBox::computeInlineDirectionMargins):
  34441. (WebCore::RenderBox::computeBlockDirectionMargins):
  34442. * rendering/RenderBox.h:
  34443. (WebCore::RenderBox::setMarginTop):
  34444. (WebCore::RenderBox::setMarginBottom):
  34445. (WebCore::RenderBox::setMarginLeft):
  34446. (WebCore::RenderBox::setMarginRight):
  34447. 2010-09-29 Dan Bernstein <mitz@apple.com>
  34448. Reviewed by Sam Weinig.
  34449. Removed input type site-specific quirk for mail.google.com
  34450. https://bugs.webkit.org/show_bug.cgi?id=46836
  34451. * bindings/js/JSHTMLInputElementCustom.cpp:
  34452. (WebCore::needsGmailQuirk): Removed.
  34453. (WebCore::JSHTMLInputElement::type): Removed this custom getter.
  34454. * html/HTMLInputElement.idl: Removed the JSCCustomGetter custom attribute
  34455. from the type attribute.
  34456. 2010-09-29 Joseph Pecoraro <joepeck@webkit.org>
  34457. Reviewed by Simon Fraser.
  34458. CRASH at WebCore::HTMLSourceElement::scheduleErrorEvent
  34459. https://bugs.webkit.org/show_bug.cgi?id=46777
  34460. It should not be possible to get to be in the LoadingFromSourceElement
  34461. state with a null current source node. This was a possible scenario
  34462. where the current source node was cleared but the load state was not
  34463. cleared as well. Tried and could not create a test case for this.
  34464. * html/HTMLMediaElement.cpp:
  34465. (WebCore::HTMLMediaElement::userCancelledLoad): clear the load state because we also clear the current source node.
  34466. 2010-09-29 David Hyatt <hyatt@apple.com>
  34467. Reviewed by Dan Bernstein.
  34468. https://bugs.webkit.org/show_bug.cgi?id=46835, patch a few more height/logicalHeights. Rename stretchesToViewHeight.
  34469. * page/FrameView.cpp:
  34470. (WebCore::FrameView::layout):
  34471. * rendering/RenderBlock.cpp:
  34472. (WebCore::RenderBlock::layoutBlock):
  34473. * rendering/RenderBlockLineLayout.cpp:
  34474. (WebCore::RenderBlock::layoutInlineChildren):
  34475. * rendering/RenderBox.cpp:
  34476. (WebCore::RenderBox::computeLogicalHeight):
  34477. * rendering/RenderBox.h:
  34478. (WebCore::RenderBox::stretchesToViewport):
  34479. * rendering/RenderBoxModelObject.cpp:
  34480. (WebCore::RenderBoxModelObject::relativePositionOffsetY):
  34481. 2010-09-29 Chris Fleizach <cfleizach@apple.com>
  34482. Reviewed by Darin Adler.
  34483. AX: implement CSS3 Speech "speak"
  34484. https://bugs.webkit.org/show_bug.cgi?id=46827
  34485. Support the "speak" style as defined in
  34486. http://www.w3.org/TR/css3-speech/#speak
  34487. This puts all the pieces in place for a platform to support this ability, but there's no platform implementation yet.
  34488. Test: platform/mac/accessibility/css-speech-speak.html
  34489. * accessibility/AccessibilityObject.h:
  34490. (WebCore::AccessibilityObject::speakProperty):
  34491. * accessibility/AccessibilityRenderObject.cpp:
  34492. (WebCore::AccessibilityRenderObject::speakProperty):
  34493. * accessibility/AccessibilityRenderObject.h:
  34494. * accessibility/mac/AccessibilityObjectWrapper.mm:
  34495. (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
  34496. * css/CSSComputedStyleDeclaration.cpp:
  34497. (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  34498. * css/CSSPrimitiveValueMappings.h:
  34499. (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
  34500. (WebCore::CSSPrimitiveValue::operator ESpeak):
  34501. * css/CSSPropertyNames.in:
  34502. * css/CSSStyleSelector.cpp:
  34503. (WebCore::CSSStyleSelector::applyProperty):
  34504. * css/CSSValueKeywords.in:
  34505. * rendering/style/RenderStyle.h:
  34506. (WebCore::InheritedFlags::speak):
  34507. (WebCore::InheritedFlags::setSpeak):
  34508. (WebCore::InheritedFlags::initialSpeak):
  34509. * rendering/style/RenderStyleConstants.h:
  34510. * rendering/style/StyleRareInheritedData.cpp:
  34511. (WebCore::StyleRareInheritedData::StyleRareInheritedData):
  34512. (WebCore::StyleRareInheritedData::operator==):
  34513. * rendering/style/StyleRareInheritedData.h:
  34514. 2010-09-29 João Paulo Rechi Vita <jprvita@profusion.mobi>
  34515. Reviewed by Antonio Gomes.
  34516. [Curl] Fix unused and unitialized warnings.
  34517. https://bugs.webkit.org/show_bug.cgi?id=46831
  34518. No new tests since no new funcionality has been added.
  34519. * platform/network/curl/ResourceHandleCurl.cpp:
  34520. (WebCore::allowsAnyHTTPSCertificateHosts):
  34521. * platform/network/curl/ResourceHandleManager.cpp:
  34522. (WebCore::ResourceHandleManager::ResourceHandleManager):
  34523. (WebCore::handleLocalReceiveResponse):
  34524. (WebCore::ResourceHandleManager::downloadTimerCallback):
  34525. (WebCore::ResourceHandleManager::initializeHandle):
  34526. 2010-09-29 David Hyatt <hyatt@apple.com>
  34527. Reviewed by Sam Weinig.
  34528. https://bugs.webkit.org/show_bug.cgi?id=46824
  34529. Convert layoutBlockChild (but not the functions it calls) to be block-flow-aware.
  34530. fast/blockflow/root-lr.html progresses as a result of this change.
  34531. * rendering/RenderBlock.cpp:
  34532. (WebCore::RenderBlock::estimateLogicalTopPosition):
  34533. (WebCore::RenderBlock::determineLogicalLeftPositionForChild):
  34534. (WebCore::RenderBlock::setLogicalTopForChild):
  34535. (WebCore::RenderBlock::layoutBlockChild):
  34536. * rendering/RenderBlock.h:
  34537. (WebCore::RenderBlock::logicalHeightForChild):
  34538. (WebCore::RenderBlock::logicalTopForChild):
  34539. * rendering/RenderBox.h:
  34540. 2010-09-29 Ryosuke Niwa <rniwa@webkit.org>
  34541. Reviewed by Antonio Gomes.
  34542. queryCommandValue "formatBlock" always returns false
  34543. https://bugs.webkit.org/show_bug.cgi?id=21305
  34544. Implemented queryCommandValue('formatBlock'). We match the Firefox's behavior exactly
  34545. because Firefox and Internet Explorer support the same set of elements
  34546. (address, h1, h2, h3, h4, h5, h6, and p) and Firefox's behavior is more compatible with Opera.
  34547. See the bug for the detailed discussion.
  34548. WebKit's implementation returns the local name of the lowest common ancestor
  34549. of the selection with the tag name address, h1, h2, h3, h4, h5, h6, or p.
  34550. It returns "" when there is no such an ancestor or there is no selection.
  34551. Test: editing/execCommand/query-format-block.html
  34552. * editing/Editor.cpp:
  34553. (WebCore::isElementForFormatBlockCommand):
  34554. (WebCore::Editor::elementForFormatBlockCommand):
  34555. * editing/Editor.h:
  34556. * editing/EditorCommand.cpp:
  34557. (WebCore::valueFormatBlock):
  34558. (WebCore::createCommandMap):
  34559. 2010-09-29 Matt Perry <mpcomplete@chromium.org>
  34560. Reviewed by Darin Fisher.
  34561. Remove obsolete registerExtension variants from chromium port.
  34562. https://bugs.webkit.org/show_bug.cgi?id=46683
  34563. * bindings/v8/V8DOMWindowShell.cpp:
  34564. (WebCore::V8DOMWindowShell::createNewContext):
  34565. * bindings/v8/V8Proxy.cpp:
  34566. (WebCore::V8Proxy::registeredExtensionWithV8):
  34567. (WebCore::V8Proxy::registerExtension):
  34568. * bindings/v8/V8Proxy.h:
  34569. 2010-09-29 Martin Robinson <mrobinson@igalia.com>
  34570. Reviewed by Chris Fleizach.
  34571. [GTK] editing/selection/selection-modify-crash.html crashes when run in Xvfb
  34572. https://bugs.webkit.org/show_bug.cgi?id=46822
  34573. When parentObjectUnignored returns null in objectAndOffsetUnignored consider that
  34574. a failure case. Handle this failure appropriately at all call sites.
  34575. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  34576. (webkit_accessible_text_get_caret_offset): Handle the failure of objectAndOffsetUnignored.
  34577. (objectAndOffsetUnignored): Always check the return value of parentObjectUnignored and
  34578. return 0 to indicate failure when that happens.
  34579. * editing/gtk/SelectionControllerGtk.cpp:
  34580. (WebCore::SelectionController::notifyAccessibilityForSelectionChange): Handle the failure
  34581. case of objectAndOffsetUnignored.
  34582. 2010-09-29 Sheriff Bot <webkit.review.bot@gmail.com>
  34583. Unreviewed, rolling out r68657.
  34584. http://trac.webkit.org/changeset/68657
  34585. https://bugs.webkit.org/show_bug.cgi?id=46820
  34586. reason "Breaks win debug build" (Requested by podivilov on
  34587. #webkit).
  34588. * CMakeLists.txt:
  34589. * GNUmakefile.am:
  34590. * WebCore.gypi:
  34591. * WebCore.pro:
  34592. * WebCore.xcodeproj/project.pbxproj:
  34593. * bindings/js/JSXMLHttpRequestCustom.cpp:
  34594. (WebCore::JSXMLHttpRequest::send):
  34595. * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
  34596. (WebCore::V8XMLHttpRequest::sendCallback):
  34597. * dom/CharacterData.cpp:
  34598. (WebCore::CharacterData::dispatchModifiedEvent):
  34599. * dom/ContainerNode.cpp:
  34600. (WebCore::ContainerNode::insertBefore):
  34601. (WebCore::ContainerNode::parserInsertBefore):
  34602. (WebCore::ContainerNode::replaceChild):
  34603. (WebCore::ContainerNode::appendChild):
  34604. (WebCore::ContainerNode::parserAddChild):
  34605. (WebCore::notifyChildInserted):
  34606. (WebCore::dispatchChildRemovalEvents):
  34607. * dom/Element.cpp:
  34608. (WebCore::Element::setAttribute):
  34609. (WebCore::Element::removeAttribute):
  34610. * inspector/InspectorController.cpp:
  34611. (WebCore::InspectorController::InspectorController):
  34612. (WebCore::InspectorController::~InspectorController):
  34613. (WebCore::InspectorController::connectFrontend):
  34614. (WebCore::InspectorController::disconnectFrontend):
  34615. (WebCore::InspectorController::willInsertDOMNodeImpl):
  34616. (WebCore::InspectorController::didInsertDOMNodeImpl):
  34617. (WebCore::InspectorController::willRemoveDOMNodeImpl):
  34618. (WebCore::InspectorController::didRemoveDOMNodeImpl):
  34619. (WebCore::InspectorController::willModifyDOMAttrImpl):
  34620. (WebCore::InspectorController::didModifyDOMAttrImpl):
  34621. (WebCore::InspectorController::characterDataModifiedImpl):
  34622. (WebCore::InspectorController::instrumentWillSendXMLHttpRequestImpl):
  34623. * inspector/InspectorController.h:
  34624. (WebCore::InspectorController::willInsertDOMNode):
  34625. (WebCore::InspectorController::didInsertDOMNode):
  34626. (WebCore::InspectorController::willRemoveDOMNode):
  34627. (WebCore::InspectorController::willModifyDOMAttr):
  34628. (WebCore::InspectorController::didModifyDOMAttr):
  34629. (WebCore::InspectorController::characterDataModified):
  34630. (WebCore::InspectorController::instrumentWillSendXMLHttpRequest):
  34631. (WebCore::InspectorController::inspectorControllerForScriptExecutionContext):
  34632. (WebCore::InspectorController::inspectorControllerForNode):
  34633. (WebCore::InspectorController::inspectorControllerForDocument):
  34634. * inspector/InspectorInstrumentation.cpp: Removed.
  34635. * inspector/InspectorInstrumentation.h: Removed.
  34636. * workers/SharedWorker.cpp:
  34637. 2010-09-29 Xiaomei Ji <xji@chromium.org>
  34638. Reviewed by David Levin.
  34639. Performance improvement for FontLinux.
  34640. https://bugs.webkit.org/show_bug.cgi?id=46374
  34641. Reduce new/delete operations by storing the maximum capacity of the glyph
  34642. array and use that value in subsequent HB_ShapeItem calls. (Note that a
  34643. call to HB_ShapeItem may reduce the value of m_item.num_glyphs below the
  34644. capacity.)
  34645. Also be consistent with zero'ing the glyph arrays before calling
  34646. HB_ShapeItem.
  34647. There is no functionality changes so no new tests are added.
  34648. * platform/graphics/chromium/FontLinux.cpp:
  34649. (WebCore::TextRunWalker::createGlyphArrays):
  34650. (WebCore::TextRunWalker::resetGlyphArrays):
  34651. (WebCore::TextRunWalker::shapeGlyphs):
  34652. 2010-09-29 Pavel Podivilov <podivilov@chromium.org>
  34653. Reviewed by Pavel Feldman.
  34654. Web Inspector: extract Inspector Instrumentation API as a class.
  34655. https://bugs.webkit.org/show_bug.cgi?id=46614
  34656. * CMakeLists.txt:
  34657. * GNUmakefile.am:
  34658. * WebCore.gypi:
  34659. * WebCore.pro:
  34660. * WebCore.xcodeproj/project.pbxproj:
  34661. * bindings/js/JSXMLHttpRequestCustom.cpp:
  34662. (WebCore::JSXMLHttpRequest::send):
  34663. * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
  34664. (WebCore::V8XMLHttpRequest::sendCallback):
  34665. * dom/CharacterData.cpp:
  34666. (WebCore::CharacterData::dispatchModifiedEvent):
  34667. * dom/ContainerNode.cpp:
  34668. (WebCore::ContainerNode::insertBefore):
  34669. (WebCore::ContainerNode::parserInsertBefore):
  34670. (WebCore::ContainerNode::replaceChild):
  34671. (WebCore::ContainerNode::appendChild):
  34672. (WebCore::ContainerNode::parserAddChild):
  34673. (WebCore::notifyChildInserted):
  34674. (WebCore::dispatchChildRemovalEvents):
  34675. * dom/Element.cpp:
  34676. (WebCore::Element::setAttribute):
  34677. (WebCore::Element::removeAttribute):
  34678. * inspector/InspectorController.cpp:
  34679. (WebCore::InspectorController::InspectorController):
  34680. (WebCore::InspectorController::~InspectorController):
  34681. (WebCore::InspectorController::connectFrontend):
  34682. (WebCore::InspectorController::disconnectFrontend):
  34683. (WebCore::InspectorController::instrumentWillSendXMLHttpRequest):
  34684. * inspector/InspectorController.h:
  34685. * inspector/InspectorInstrumentation.cpp: Added.
  34686. (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
  34687. (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl):
  34688. (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
  34689. (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl):
  34690. (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
  34691. (WebCore::InspectorInstrumentation::didModifyDOMAttrImpl):
  34692. (WebCore::InspectorInstrumentation::characterDataModifiedImpl):
  34693. (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequestImpl):
  34694. * inspector/InspectorInstrumentation.h: Added.
  34695. (WebCore::InspectorInstrumentation::frontendCreated):
  34696. (WebCore::InspectorInstrumentation::frontendDeleted):
  34697. (WebCore::InspectorInstrumentation::hasFrontends):
  34698. (WebCore::InspectorInstrumentation::willInsertDOMNode):
  34699. (WebCore::InspectorInstrumentation::didInsertDOMNode):
  34700. (WebCore::InspectorInstrumentation::willRemoveDOMNode):
  34701. (WebCore::InspectorInstrumentation::willModifyDOMAttr):
  34702. (WebCore::InspectorInstrumentation::didModifyDOMAttr):
  34703. (WebCore::InspectorInstrumentation::characterDataModified):
  34704. (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequest):
  34705. (WebCore::InspectorInstrumentation::inspectorControllerForScriptExecutionContext):
  34706. (WebCore::InspectorInstrumentation::inspectorControllerForDocument):
  34707. (WebCore::InspectorInstrumentation::inspectorControllerForPage):
  34708. 2010-09-29 David Hyatt <hyatt@apple.com>
  34709. Reviewed by Sam Weinig.
  34710. https://bugs.webkit.org/show_bug.cgi?id=46786, convert layoutBlockChild (but not any functions it calls)
  34711. to be block-flow-aware.
  34712. * rendering/RenderBlock.cpp:
  34713. (WebCore::RenderBlock::layoutBlock):
  34714. (WebCore::RenderBlock::handleAfterSideOfBlock):
  34715. (WebCore::RenderBlock::layoutBlockChildren):
  34716. * rendering/RenderBlock.h:
  34717. * rendering/RenderBox.h:
  34718. (WebCore::RenderBox::scrollbarLogicalHeight):
  34719. 2010-09-29 João Paulo Rechi Vita <jprvita@profusion.mobi>
  34720. Reviewed by Antonio Gomes.
  34721. [EFL] General small fixes.
  34722. https://bugs.webkit.org/show_bug.cgi?id=46813
  34723. This commit spots a comparison between signed and unsigned integer
  34724. expressions, a missing return and a never-called function.
  34725. No new tests since no new funcionality has been added.
  34726. * platform/efl/SharedBufferEfl.cpp:
  34727. (WebCore::SharedBuffer::createWithContentsOfFile):
  34728. 2010-09-29 Philippe Normand <pnormand@igalia.com>
  34729. Reviewed by Gustavo Noronha Silva.
  34730. build still broken since r68521
  34731. https://bugs.webkit.org/show_bug.cgi?id=46795
  34732. Call make-values.pl once only. It seems calling it multiple times
  34733. in the same build produces a wrong CSSValueKeywordsHash.h which
  34734. has a duplicate declaration of its valueList variable. The double
  34735. call is triggered by the double targets in the Makefile rules and
  34736. makevalues.pl generates one of them, which screws up the build. A
  34737. more proper fix should be done with the advices on
  34738. http://www.cmcrossroads.com/cm-basics/12905-rules-with-multiple-outputs-in-gnu-make
  34739. * GNUmakefile.am:
  34740. 2010-09-29 João Paulo Rechi Vita <jprvita@profusion.mobi>
  34741. Unreviewed build fix.
  34742. Fix CMake build for ENABLE_PROGRESS_TAG.
  34743. https://bugs.webkit.org/show_bug.cgi?id=46808
  34744. No new tests since it's a build fix.
  34745. * CMakeLists.txt:
  34746. 2010-09-29 Yury Semikhatsky <yurys@chromium.org>
  34747. Reviewed by Pavel Feldman.
  34748. [v8] Use generic mechanism to report exceptions in V8CustomVoidCallback
  34749. https://bugs.webkit.org/show_bug.cgi?id=46803
  34750. No new tests. It's covered by existing tests under LayoutTests/storage
  34751. * bindings/v8/custom/V8CustomVoidCallback.cpp:
  34752. (WebCore::invokeCallback):
  34753. 2010-09-29 Satish Sampath <satish@chromium.org>
  34754. Reviewed by Jeremy Orlow.
  34755. Rename the input element's @speech attribute to @webkitspeech since it is still experimental.
  34756. https://bugs.webkit.org/show_bug.cgi?id=46799
  34757. * bindings/generic/RuntimeEnabledFeatures.h:
  34758. (WebCore::RuntimeEnabledFeatures::webkitspeechEnabled): Rename the runtime feature flag getter.
  34759. * css/CSSPrimitiveValueMappings.h:
  34760. (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
  34761. * css/CSSValueKeywords.in: Rename the css style name.
  34762. * css/html.css: Rename the css style name.
  34763. (input::-webkit-input-speech-button):
  34764. * html/HTMLAttributeNames.in: Rename the @speech attribute.
  34765. * html/HTMLInputElement.cpp: Update code using the attribute.
  34766. (WebCore::HTMLInputElement::parseMappedAttribute):
  34767. (WebCore::HTMLInputElement::isSpeechEnabled):
  34768. * html/HTMLInputElement.idl: Rename the @speech attribute.
  34769. 2010-09-29 MORITA Hajime <morrita@google.com>
  34770. [Chromium] failed to build without ACCELERATED_COMPOSITING
  34771. https://bugs.webkit.org/show_bug.cgi?id=46793
  34772. Moved constant definitions from inside ACCELERATED_COMPOSITING to
  34773. outside of the condition.
  34774. * WebCore.gypi:
  34775. * platform/graphics/chromium/VideoFrameChromium.cpp: Added just for defining constants.
  34776. * platform/graphics/chromium/VideoLayerChromium.cpp:
  34777. 2010-09-28 Pavel Feldman <pfeldman@chromium.org>
  34778. Reviewed by Timothy Hatcher.
  34779. Web Inspector: [Resources panel] Need more visible "at a glance".
  34780. https://bugs.webkit.org/show_bug.cgi?id=45657
  34781. * WebCore.gypi:
  34782. * WebCore.vcproj/WebCore.vcproj:
  34783. * inspector/front-end/DataGrid.js:
  34784. (WebInspector.DataGrid):
  34785. (WebInspector.DataGrid.prototype.updateWidths):
  34786. (WebInspector.DataGrid.prototype.sortNodes):
  34787. (WebInspector.DataGrid.prototype._resizerDragging):
  34788. (WebInspector.DataGrid.prototype._endResizerDragging):
  34789. (WebInspector.DataGridNode.prototype.selectable.true.get element):
  34790. (WebInspector.DataGridNode.prototype.createCells):
  34791. (WebInspector.DataGridNode.prototype.refresh):
  34792. * inspector/front-end/Images/networkIcon.png: Copied from WebCore/inspector/front-end/Images/resourcesIcon.png.
  34793. * inspector/front-end/NetworkPanel.js: Added.
  34794. * inspector/front-end/Settings.js:
  34795. * inspector/front-end/WebKit.qrc:
  34796. * inspector/front-end/inspector.css:
  34797. (.toolbar-item.network .toolbar-icon):
  34798. (.data-grid .data-container):
  34799. * inspector/front-end/inspector.html:
  34800. * inspector/front-end/inspector.js:
  34801. (WebInspector._createPanels):
  34802. (WebInspector.updateResource):
  34803. * inspector/front-end/networkPanel.css: Added.
  34804. 2010-09-28 Ilya Tikhonovsky <loislo@chromium.org>
  34805. Reviewed by Yury Semikhatsky.
  34806. Web Inspector: move pauseOnExceptionState under control of InspectorState
  34807. It is Inspector Protocol cleanup activity.
  34808. The actual state of this flag can be obtained as a return value of setPauseOnExceptionState command
  34809. or as a value in InspectorState object.
  34810. https://bugs.webkit.org/show_bug.cgi?id=46724
  34811. * inspector/Inspector.idl:
  34812. * inspector/InspectorController.cpp:
  34813. (WebCore::InspectorController::getInspectorState):
  34814. (WebCore::InspectorController::populateScriptObjects):
  34815. * inspector/InspectorDebuggerAgent.cpp:
  34816. (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState):
  34817. (WebCore::InspectorDebuggerAgent::pauseOnExceptionsState):
  34818. * inspector/InspectorDebuggerAgent.h:
  34819. * inspector/front-end/ScriptsPanel.js:
  34820. (WebInspector.ScriptsPanel.prototype._togglePauseOnExceptions):
  34821. * inspector/front-end/inspector.js:
  34822. (WebInspector.doLoadedDone.populateInspectorState):
  34823. (WebInspector.doLoadedDone):
  34824. (WebInspector.reportProtocolError):
  34825. 2010-09-28 Philippe Normand <pnormand@igalia.com>
  34826. Reviewed by Martin Robinson.
  34827. check USE(GSTREAMER) instead of ENABLE(VIDEO) in gstreamer/ files
  34828. https://bugs.webkit.org/show_bug.cgi?id=46717
  34829. Guard the gstreamer/ files with USE(GSTREAMER), which is more
  34830. explicit than ENABLE(VIDEO).
  34831. * GNUmakefile.am: Define WTF_USE_GSTREAMER only if GStreamer
  34832. support is enabled.
  34833. * platform/graphics/gstreamer/DataSourceGStreamer.cpp:
  34834. * platform/graphics/gstreamer/DataSourceGStreamer.h:
  34835. * platform/graphics/gstreamer/GOwnPtrGStreamer.cpp:
  34836. * platform/graphics/gstreamer/GOwnPtrGStreamer.h:
  34837. * platform/graphics/gstreamer/GStreamerGWorld.cpp:
  34838. * platform/graphics/gstreamer/GStreamerGWorld.h:
  34839. * platform/graphics/gstreamer/ImageGStreamer.h:
  34840. * platform/graphics/gstreamer/ImageGStreamerCG.mm:
  34841. * platform/graphics/gstreamer/ImageGStreamerCairo.cpp:
  34842. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  34843. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
  34844. * platform/graphics/gstreamer/PlatformVideoWindow.h:
  34845. * platform/graphics/gstreamer/PlatformVideoWindowEfl.cpp:
  34846. * platform/graphics/gstreamer/PlatformVideoWindowGtk.cpp:
  34847. * platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
  34848. * platform/graphics/gstreamer/VideoSinkGStreamer.h:
  34849. * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
  34850. * platform/graphics/gstreamer/WebKitWebSourceGStreamer.h:
  34851. 2010-09-28 Kent Tamura <tkent@chromium.org>
  34852. Unreviewed, windows build fix for r68629.
  34853. * WebCore.vcproj/WebCore.vcproj: Add TimeInputType.{cpp,h}
  34854. 2010-09-28 Johnny Ding <jnd@chromium.org>
  34855. Reviewed by Adam Barth.
  34856. https://bugs.webkit.org/show_bug.cgi?id=41292
  34857. Pass the right popupAllowed flag to current execution frame,
  34858. so WebKit can get right gesture status for popups initiated
  34859. from plugins.
  34860. This also makes v8 binding's ScriptController::processingUserGesture
  34861. match what jsc version.
  34862. Test: plugins/plugin-initiate-popup-window.html
  34863. * bindings/v8/NPV8Object.cpp:
  34864. (_NPN_EvaluateHelper):
  34865. * bindings/v8/ScriptController.cpp:
  34866. (WebCore::ScriptController::ScriptController):
  34867. (WebCore::ScriptController::processingUserGesture):
  34868. * bindings/v8/ScriptController.h:
  34869. (WebCore::ScriptController::setAllowPopupsFromPlugin):
  34870. (WebCore::ScriptController::allowPopupsFromPlugin):
  34871. 2010-09-28 Kent Tamura <tkent@chromium.org>
  34872. Reviewed by Darin Adler.
  34873. Refactor HTMLInputElement: Introducing InputType class and classes
  34874. for each input element types.
  34875. https://bugs.webkit.org/show_bug.cgi?id=45872
  34876. No new tests because this doesn't change any behavior.
  34877. * Android.mk: Add new files.
  34878. * CMakeLists.txt: ditto.
  34879. * GNUmakefile.am: ditto.
  34880. * WebCore.gypi: ditto.
  34881. * WebCore.pro: ditto.
  34882. * WebCore.vcproj/WebCore.vcproj: ditto.
  34883. * WebCore.xcodeproj/project.pbxproj: ditto.
  34884. * html/BaseTextInputType.cpp: Added.
  34885. (WebCore::BaseTextInputType::isTextType):
  34886. (WebCore::BaseTextInputType::patternMismatch):
  34887. * html/BaseTextInputType.h: Added.
  34888. (WebCore::BaseTextInputType::BaseTextInputType):
  34889. * html/ButtonInputType.cpp: Added.
  34890. (WebCore::ButtonInputType::create):
  34891. (WebCore::ButtonInputType::formControlType):
  34892. * html/ButtonInputType.h: Added.
  34893. (WebCore::ButtonInputType::ButtonInputType):
  34894. * html/CheckboxInputType.cpp: Added.
  34895. (WebCore::CheckboxInputType::create):
  34896. (WebCore::CheckboxInputType::formControlType):
  34897. * html/CheckboxInputType.h: Added.
  34898. (WebCore::CheckboxInputType::CheckboxInputType):
  34899. * html/ColorInputType.cpp: Added.
  34900. (WebCore::ColorInputType::create):
  34901. (WebCore::ColorInputType::formControlType):
  34902. * html/ColorInputType.h: Added.
  34903. (WebCore::ColorInputType::ColorInputType):
  34904. * html/DateInputType.cpp: Added.
  34905. (WebCore::DateInputType::create):
  34906. (WebCore::DateInputType::formControlType):
  34907. * html/DateInputType.h: Added.
  34908. (WebCore::DateInputType::DateInputType):
  34909. * html/DateTimeInputType.cpp: Added.
  34910. (WebCore::DateTimeInputType::create):
  34911. (WebCore::DateTimeInputType::formControlType):
  34912. * html/DateTimeInputType.h: Added.
  34913. (WebCore::DateTimeInputType::DateTimeInputType):
  34914. * html/DateTimeLocalInputType.cpp: Added.
  34915. (WebCore::DateTimeLocalInputType::create):
  34916. (WebCore::DateTimeLocalInputType::formControlType):
  34917. * html/DateTimeLocalInputType.h: Added.
  34918. (WebCore::DateTimeLocalInputType::DateTimeLocalInputType):
  34919. * html/EmailInputType.cpp: Added.
  34920. (WebCore::EmailInputType::create):
  34921. (WebCore::EmailInputType::formControlType):
  34922. * html/EmailInputType.h: Added.
  34923. (WebCore::EmailInputType::EmailInputType):
  34924. * html/FileInputType.cpp: Added.
  34925. (WebCore::FileInputType::create):
  34926. (WebCore::FileInputType::formControlType):
  34927. * html/FileInputType.h: Added.
  34928. (WebCore::FileInputType::FileInputType):
  34929. * html/HTMLInputElement.cpp:
  34930. (WebCore::HTMLInputElement::HTMLInputElement): Initialize m_inputType.
  34931. (WebCore::HTMLInputElement::patternMismatch): Delegate to InputType.
  34932. (WebCore::HTMLInputElement::updateType): Update m_inputType with new type.
  34933. (WebCore::HTMLInputElement::formControlType): Delegate to InputType.
  34934. (WebCore::HTMLInputElement::isTextField): ditto.
  34935. (WebCore::HTMLInputElement::isTextType): ditto.
  34936. * html/HTMLInputElement.h:
  34937. * html/HiddenInputType.cpp: Added.
  34938. (WebCore::HiddenInputType::create):
  34939. (WebCore::HiddenInputType::formControlType):
  34940. * html/HiddenInputType.h: Added.
  34941. (WebCore::HiddenInputType::HiddenInputType):
  34942. * html/ImageInputType.cpp: Added.
  34943. (WebCore::ImageInputType::create):
  34944. (WebCore::ImageInputType::formControlType):
  34945. * html/ImageInputType.h: Added.
  34946. (WebCore::ImageInputType::ImageInputType):
  34947. * html/InputType.cpp: Added.
  34948. (WebCore::createInputTypeFactoryMap):
  34949. (WebCore::InputType::create):
  34950. (WebCore::InputType::createText):
  34951. (WebCore::InputType::~InputType):
  34952. (WebCore::InputType::isTextField):
  34953. (WebCore::InputType::isTextType):
  34954. (WebCore::InputType::patternMismatch):
  34955. (WebCore::InputTypeNames::button):
  34956. (WebCore::InputTypeNames::checkbox):
  34957. (WebCore::InputTypeNames::color):
  34958. (WebCore::InputTypeNames::date):
  34959. (WebCore::InputTypeNames::datetime):
  34960. (WebCore::InputTypeNames::datetimelocal):
  34961. (WebCore::InputTypeNames::email):
  34962. (WebCore::InputTypeNames::file):
  34963. (WebCore::InputTypeNames::hidden):
  34964. (WebCore::InputTypeNames::image):
  34965. (WebCore::InputTypeNames::isindex):
  34966. (WebCore::InputTypeNames::month):
  34967. (WebCore::InputTypeNames::number):
  34968. (WebCore::InputTypeNames::password):
  34969. (WebCore::InputTypeNames::radio):
  34970. (WebCore::InputTypeNames::range):
  34971. (WebCore::InputTypeNames::reset):
  34972. (WebCore::InputTypeNames::search):
  34973. (WebCore::InputTypeNames::submit):
  34974. (WebCore::InputTypeNames::telephone):
  34975. (WebCore::InputTypeNames::text):
  34976. (WebCore::InputTypeNames::time):
  34977. (WebCore::InputTypeNames::url):
  34978. (WebCore::InputTypeNames::week):
  34979. * html/InputType.h: Added.
  34980. (WebCore::InputType::InputType):
  34981. (WebCore::InputType::element):
  34982. * html/IsIndexInputType.cpp: Added.
  34983. (WebCore::IsIndexInputType::create):
  34984. (WebCore::IsIndexInputType::formControlType):
  34985. * html/IsIndexInputType.h: Added.
  34986. (WebCore::IsIndexInputType::IsIndexInputType):
  34987. * html/MonthInputType.cpp: Added.
  34988. (WebCore::MonthInputType::create):
  34989. (WebCore::MonthInputType::formControlType):
  34990. * html/MonthInputType.h: Added.
  34991. (WebCore::MonthInputType::MonthInputType):
  34992. * html/NumberInputType.cpp: Added.
  34993. (WebCore::NumberInputType::create):
  34994. (WebCore::NumberInputType::formControlType):
  34995. * html/NumberInputType.h: Added.
  34996. (WebCore::NumberInputType::NumberInputType):
  34997. * html/PasswordInputType.cpp: Added.
  34998. (WebCore::PasswordInputType::create):
  34999. (WebCore::PasswordInputType::formControlType):
  35000. * html/PasswordInputType.h: Added.
  35001. (WebCore::PasswordInputType::PasswordInputType):
  35002. * html/RadioInputType.cpp: Added.
  35003. (WebCore::RadioInputType::create):
  35004. (WebCore::RadioInputType::formControlType):
  35005. * html/RadioInputType.h: Added.
  35006. (WebCore::RadioInputType::RadioInputType):
  35007. * html/RangeInputType.cpp: Added.
  35008. (WebCore::RangeInputType::create):
  35009. (WebCore::RangeInputType::formControlType):
  35010. * html/RangeInputType.h: Added.
  35011. (WebCore::RangeInputType::RangeInputType):
  35012. * html/ResetInputType.cpp: Added.
  35013. (WebCore::ResetInputType::create):
  35014. (WebCore::ResetInputType::formControlType):
  35015. * html/ResetInputType.h: Added.
  35016. (WebCore::ResetInputType::ResetInputType):
  35017. * html/SearchInputType.cpp: Added.
  35018. (WebCore::SearchInputType::create):
  35019. (WebCore::SearchInputType::formControlType):
  35020. * html/SearchInputType.h: Added.
  35021. (WebCore::SearchInputType::SearchInputType):
  35022. * html/SubmitInputType.cpp: Added.
  35023. (WebCore::SubmitInputType::create):
  35024. (WebCore::SubmitInputType::formControlType):
  35025. * html/SubmitInputType.h: Added.
  35026. (WebCore::SubmitInputType::SubmitInputType):
  35027. * html/TelephoneInputType.cpp: Added.
  35028. (WebCore::TelephoneInputType::create):
  35029. (WebCore::TelephoneInputType::formControlType):
  35030. * html/TelephoneInputType.h: Added.
  35031. (WebCore::TelephoneInputType::TelephoneInputType):
  35032. * html/TextFieldInputType.cpp: Added.
  35033. (WebCore::TextFieldInputType::isTextField):
  35034. * html/TextFieldInputType.h: Added.
  35035. (WebCore::TextFieldInputType::TextFieldInputType):
  35036. * html/TextInputType.cpp: Added.
  35037. (WebCore::TextInputType::create):
  35038. (WebCore::TextInputType::formControlType):
  35039. * html/TextInputType.h: Added.
  35040. (WebCore::TextInputType::TextInputType):
  35041. * html/TimeInputType.cpp: Added.
  35042. (WebCore::TimeInputType::create):
  35043. (WebCore::TimeInputType::formControlType):
  35044. * html/TimeInputType.h: Added.
  35045. (WebCore::TimeInputType::TimeInputType):
  35046. * html/URLInputType.cpp: Added.
  35047. (WebCore::URLInputType::create):
  35048. (WebCore::URLInputType::formControlType):
  35049. * html/URLInputType.h: Added.
  35050. (WebCore::URLInputType::URLInputType):
  35051. * html/WeekInputType.cpp: Added.
  35052. (WebCore::WeekInputType::create):
  35053. (WebCore::WeekInputType::formControlType):
  35054. * html/WeekInputType.h: Added.
  35055. (WebCore::WeekInputType::WeekInputType):
  35056. 2010-09-28 David Hyatt <hyatt@apple.com>
  35057. Reviewed by Maciej Stachowiak.
  35058. https://bugs.webkit.org/show_bug.cgi?id=46782, rename the top and bottom margin quirk getters/setters.
  35059. Also do a bit of cleanup for block flow roots. Make sure they don't try to propagate overhanging floats out
  35060. to ancestors.
  35061. * rendering/RenderBlock.cpp:
  35062. (WebCore::RenderBlock::layoutBlock):
  35063. (WebCore::RenderBlock::collapseMargins):
  35064. (WebCore::RenderBlock::setCollapsedBottomMargin):
  35065. (WebCore::RenderBlock::addOverhangingFloats):
  35066. * rendering/RenderObject.cpp:
  35067. (WebCore::RenderObject::RenderObject):
  35068. * rendering/RenderObject.h:
  35069. (WebCore::RenderObject::isMarginBeforeQuirk):
  35070. (WebCore::RenderObject::isMarginAfterQuirk):
  35071. (WebCore::RenderObject::setMarginBeforeQuirk):
  35072. (WebCore::RenderObject::setMarginAfterQuirk):
  35073. 2010-09-28 David Hyatt <hyatt@apple.com>
  35074. Reviewed by Sam Weinig.
  35075. https://bugs.webkit.org/show_bug.cgi?id=46780
  35076. Rename the pos/neg/collapsed margin methods. Rename all the members of the RenderBlockRareData struct.
  35077. No logical changes. Just renames.
  35078. * editing/TextIterator.cpp:
  35079. (WebCore::shouldEmitExtraNewlineForNode):
  35080. * rendering/RenderBlock.cpp:
  35081. (WebCore::RenderBlock::MarginInfo::MarginInfo):
  35082. (WebCore::RenderBlock::layoutBlock):
  35083. (WebCore::RenderBlock::collapseMargins):
  35084. (WebCore::RenderBlock::clearFloatsIfNeeded):
  35085. (WebCore::RenderBlock::estimateVerticalPosition):
  35086. (WebCore::RenderBlock::setCollapsedBottomMargin):
  35087. (WebCore::RenderBlock::layoutBlockChild):
  35088. (WebCore::RenderBlock::paintChildren):
  35089. (WebCore::RenderBlock::lowestPosition):
  35090. (WebCore::RenderBlock::setMaxMarginBeforeValues):
  35091. (WebCore::RenderBlock::setMaxMarginAfterValues):
  35092. (WebCore::RenderBlock::absoluteRects):
  35093. (WebCore::RenderBlock::absoluteQuads):
  35094. (WebCore::RenderBlock::rectWithOutlineForRepaint):
  35095. (WebCore::RenderBlock::addFocusRingRects):
  35096. * rendering/RenderBlock.h:
  35097. (WebCore::RenderBlock::maxPosMarginBefore):
  35098. (WebCore::RenderBlock::maxNegMarginBefore):
  35099. (WebCore::RenderBlock::maxPosMarginAfter):
  35100. (WebCore::RenderBlock::maxNegMarginAfter):
  35101. (WebCore::RenderBlock::initMaxMarginValues):
  35102. (WebCore::RenderBlock::maxMarginBefore):
  35103. (WebCore::RenderBlock::maxMarginAfter):
  35104. (WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData):
  35105. (WebCore::RenderBlock::RenderBlockRareData::beforePosDefault):
  35106. (WebCore::RenderBlock::RenderBlockRareData::beforeNegDefault):
  35107. (WebCore::RenderBlock::RenderBlockRareData::afterPosDefault):
  35108. (WebCore::RenderBlock::RenderBlockRareData::afterNegDefault):
  35109. * rendering/RenderBox.cpp:
  35110. (WebCore::RenderBox::computeLogicalHeight):
  35111. * rendering/RenderBox.h:
  35112. (WebCore::RenderBox::collapsedMarginBefore):
  35113. (WebCore::RenderBox::collapsedMarginAfter):
  35114. (WebCore::RenderBox::maxMarginBefore):
  35115. (WebCore::RenderBox::maxMarginAfter):
  35116. * rendering/RenderFlexibleBox.cpp:
  35117. (WebCore::RenderFlexibleBox::layoutBlock):
  35118. 2010-09-28 Kevin Ollivier <kevino@theolliviers.com>
  35119. [wx] wxMSW build fix. Don't use multiple inheritance in PopupMenuWx to avoid debug build
  35120. compiler error about ambiguity over which new override (wx's or FastAllocBase's) to use.
  35121. * platform/wx/PopupMenuWx.cpp:
  35122. (WebCore::PopupMenuEventHandler::PopupMenuEventHandler):
  35123. (WebCore::PopupMenuEventHandler::OnMenuItemSelected):
  35124. (WebCore::PopupMenuWx::PopupMenuWx):
  35125. (WebCore::PopupMenuWx::show):
  35126. * platform/wx/PopupMenuWx.h:
  35127. 2010-09-28 Xiaomei Ji <xji@chromium.org>
  35128. Reviewed by NOBODY (revert unsquashed git commits)
  35129. Revert change sets 68583 to 68590, which are un-squashed git-commits: Performance improvement for FontLinux regarding issue 46374.
  35130. https://bugs.webkit.org/show_bug.cgi?id=46374
  35131. 2010-09-28 Marc-Antoine Ruel <maruel@chromium.org>
  35132. Reviewed by Tony Chang.
  35133. Split webcore_html off webcore_remaining.
  35134. webcore_remaining is still too large for certain 32 bits toolsets.
  35135. https://bugs.webkit.org/show_bug.cgi?id=46445
  35136. * WebCore.gyp/WebCore.gyp:
  35137. 2010-09-28 Jia Pu <jpu@apple.com>
  35138. Reviewed by Dan Bernstein.
  35139. Delete and forward delete shouldn't start autocorrection panel timer.
  35140. https://bugs.webkit.org/show_bug.cgi?id=46679
  35141. <rdar://problem/8463917>
  35142. * editing/TypingCommand.cpp:
  35143. (WebCore::TypingCommand::markMisspellingsAfterTyping): Only start correction panel timer
  35144. when the editing command is InsertText.
  35145. (WebCore::TypingCommand::typingAddedToOpenCommand): Add an argument to pass in command type.
  35146. * editing/TypingCommand.h: Add an argument to typingAddedToOpenCommand().
  35147. 2010-09-28 Mihai Parparita <mihaip@chromium.org>
  35148. Reviewed by Dimitri Glazkov.
  35149. No back/forward list entry added when submitting a form via an onclick handler inside a frame
  35150. https://bugs.webkit.org/show_bug.cgi?id=44140
  35151. Lock the back/forward list for JavaScript form submissions inside frames
  35152. only if they're not in response to user gestures.
  35153. Tests: fast/history/form-submit-in-frame-via-onclick.html
  35154. fast/history/form-submit-in-frame.html
  35155. * loader/RedirectScheduler.cpp:
  35156. (WebCore::RedirectScheduler::scheduleFormSubmission):
  35157. 2010-09-28 David Hyatt <hyatt@apple.com>
  35158. Reviewed by Sam Weinig.
  35159. Fix typo in previous checkin.
  35160. * rendering/RenderBlock.cpp:
  35161. (WebCore::RenderBlock::MarginInfo::MarginInfo):
  35162. 2010-09-28 Nat Duca <nduca@chromium.org>
  35163. Reviewed by James Robinson.
  35164. [chromium] invalidateRootLayerRect needs to schedule compositor
  35165. https://bugs.webkit.org/show_bug.cgi?id=46219
  35166. Update comments on LayerChromium commit/display functions to clarify
  35167. their limitations. Remove unused dirtying logic from
  35168. LayerRendererChromium.
  35169. * platform/graphics/chromium/LayerChromium.cpp:
  35170. (WebCore::LayerChromium::setNeedsCommit):
  35171. (WebCore::LayerChromium::setNeedsDisplay):
  35172. * platform/graphics/chromium/LayerRendererChromium.cpp:
  35173. (WebCore::LayerRendererChromium::LayerRendererChromium):
  35174. (WebCore::LayerRendererChromium::present):
  35175. * platform/graphics/chromium/LayerRendererChromium.h:
  35176. 2010-09-28 Jenn Braithwaite <jennb@chromium.org>
  35177. Reviewed by Dmitry Titov.
  35178. Added oldPage param to FrameLoaderClient::didTransferChildFrameToNewDocument.
  35179. https://bugs.webkit.org/show_bug.cgi?id=46663
  35180. No new tests. API addition only. Will be used in separate patch.
  35181. * loader/EmptyClients.h:
  35182. (WebCore::EmptyFrameLoaderClient::didTransferChildFrameToNewDocument):
  35183. * loader/FrameLoaderClient.h:
  35184. * page/Frame.cpp:
  35185. (WebCore::Frame::transferChildFrameToNewDocument):
  35186. Pass former page to didTransferChildFrameToNewDocument.
  35187. 2010-09-28 W. James MacLean <wjmaclean@chromium.org>
  35188. Reviewed by James Robinson.
  35189. Scaled Resized images are blurred when sent to Skia
  35190. https://bugs.webkit.org/show_bug.cgi?id=42370
  35191. This patch modifies ImageSkia.cpp to fix the calculation of resampled
  35192. bitmap sizes so as to include the transform matrix of the canvas.
  35193. Test: svg/custom/image-rescale.svg
  35194. * platform/graphics/skia/ImageSkia.cpp:
  35195. (WebCore::computeResamplingMode):
  35196. (WebCore::drawResampledBitmap):
  35197. 2010-09-28 James Robinson <jamesr@chromium.org>
  35198. [chromium] Decrease warning level on chromium linux temporarily. This is causing failures on some bots
  35199. * WebCore.gyp/WebCore.gyp:
  35200. 2010-09-27 James Robinson <jamesr@chromium.org>
  35201. Reviewed by Tony Chang.
  35202. [chromium] Increase warning level for chromium linux build
  35203. https://bugs.webkit.org/show_bug.cgi?id=46687
  35204. This sets the chromium_code gyp variable to 1 for the chromium
  35205. linux WebCore build and fixes the warnings that exposes. This
  35206. matches the chromium mac build's compiler settings more closely
  35207. and should cut down on the number of patches that break mac but
  35208. compile cleaning on linux.
  35209. * WebCore.gyp/WebCore.gyp:
  35210. * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
  35211. (WebCore::ScrollbarThemeChromiumLinux::paintButton):
  35212. * platform/graphics/chromium/FontLinux.cpp:
  35213. (WebCore::TextRunWalker::nextScriptRun):
  35214. (WebCore::TextRunWalker::getTextRun):
  35215. (WebCore::TextRunWalker::getNormalizedTextRun):
  35216. (WebCore::TextRunWalker::setGlyphXPositions):
  35217. (WebCore::glyphIndexForXPositionInScriptRun):
  35218. (WebCore::Font::offsetForPositionForComplexText):
  35219. (WebCore::Font::selectionRectForComplexText):
  35220. * platform/graphics/chromium/HarfbuzzSkia.cpp:
  35221. (WebCore::getOutlinePoint):
  35222. * platform/graphics/chromium/LayerRendererChromium.cpp:
  35223. (WebCore::LayerRendererChromium::updateRootLayerTextureRect):
  35224. * platform/graphics/gpu/Texture.cpp:
  35225. (WebCore::copySubRect):
  35226. * platform/graphics/skia/PlatformContextSkia.cpp:
  35227. (WebCore::PlatformContextSkia::readbackHardwareToSoftware):
  35228. * platform/image-decoders/gif/GIFImageDecoder.cpp:
  35229. (WebCore::GIFImageDecoder::setSize):
  35230. * platform/image-decoders/gif/GIFImageDecoder.h:
  35231. 2010-09-28 Stephen White <senorblanco@chromium.org>
  35232. Reviewed by Csaba Osztrogonác.
  35233. Fix for r68521 to build on VS2008/Release.
  35234. * html/DocTypeStrings.gperf:
  35235. Don't emit "#include <string.h>" here, since we're inside a namespace.
  35236. * make-hash-tools.pl:
  35237. Emit #include <string.h> manually where required.
  35238. * platform/ColorData.gperf:
  35239. Don't emit "#include <string.h>" here, since we're inside a namespace.
  35240. 2010-09-28 David Hyatt <hyatt@apple.com>
  35241. Reviewed by Sam Weinig.
  35242. Right now we have two properties named margin-top-collapse and margin-after-collapse. They are proprietary and only used by Safari RSS.
  35243. I am adding margin-before-collapse and margin-after-collapse and just aliasing the old properties to the new ones.
  35244. This way we have some names that are directionally independent.
  35245. Note that these properties aren't like other directional properties. They are about what to do with the before side and after side of
  35246. your block's margins when collapsing with adjacent blocks. The meaning of before/after depend on the block-flow directionality
  35247. of the containing block.
  35248. Computed style tests all changed and the remove-shorthand.html test covers manipulation of the shorthand.
  35249. * css/CSSComputedStyleDeclaration.cpp:
  35250. (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  35251. * css/CSSParser.cpp:
  35252. (WebCore::CSSParser::parseValue):
  35253. * css/CSSPropertyLonghand.cpp:
  35254. (WebCore::initShorthandMap):
  35255. * css/CSSPropertyNames.in:
  35256. * css/CSSStyleSelector.cpp:
  35257. (WebCore::CSSStyleSelector::applyProperty):
  35258. * rendering/RenderBlock.cpp:
  35259. (WebCore::RenderBlock::MarginInfo::MarginInfo):
  35260. (WebCore::RenderBlock::isSelfCollapsingBlock):
  35261. (WebCore::RenderBlock::collapseMargins):
  35262. (WebCore::RenderBlock::layoutBlockChild):
  35263. * rendering/style/RenderStyle.cpp:
  35264. (WebCore::RenderStyle::diff):
  35265. * rendering/style/RenderStyle.h:
  35266. (WebCore::InheritedFlags::marginBeforeCollapse):
  35267. (WebCore::InheritedFlags::marginAfterCollapse):
  35268. (WebCore::InheritedFlags::setMarginBeforeCollapse):
  35269. (WebCore::InheritedFlags::setMarginAfterCollapse):
  35270. (WebCore::InheritedFlags::initialMarginBeforeCollapse):
  35271. (WebCore::InheritedFlags::initialMarginAfterCollapse):
  35272. * rendering/style/StyleRareNonInheritedData.cpp:
  35273. (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
  35274. (WebCore::StyleRareNonInheritedData::operator==):
  35275. * rendering/style/StyleRareNonInheritedData.h:
  35276. 2010-09-28 Martin Robinson <mrobinson@igalia.com>
  35277. Reviewed by Gustavo Noronha Silva.
  35278. [Cairo] FreeType fonts should obey FontConfig hinting/anti-aliasing settings
  35279. https://bugs.webkit.org/show_bug.cgi?id=46740
  35280. When creating a font from a FontConfig pattern, use the FontConfig pattern's
  35281. hinting and anti-aliasing settings. This follows the Chromium Linux approach
  35282. of having FontConfig settings take precedence over GTK+ settings, as GTK+
  35283. settings cannot be configured per-font and per-font-size.
  35284. Test: platform/gtk/fonts/fontconfig-aliasing-settings.html
  35285. * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
  35286. (WebCore::convertFontConfigSubpixelOrder): Added this helper which converts
  35287. the FontConfig subpixel order into the cairo equivalent.
  35288. (WebCore::convertFontConfigHintStyle): Added this helper which converts the
  35289. FontConfig hint style into the cairo equivalent.
  35290. (WebCore::setCairoFontOptionsFromFontConfigPattern): Added this helper which
  35291. reads the font rendering settings from a pattern and translates them into the
  35292. appropriate cairo_font_options_t settings.
  35293. (WebCore::FontPlatformData::FontPlatformData): When creating a font from a
  35294. FontConfig pattern use setCairoFontOptionsFromFontConfigPattern to get the
  35295. appropriate rendering options for the font.
  35296. 2010-09-28 Sam Weinig <sam@webkit.org>
  35297. Reviewed by Darin Adler and Dave Hyatt.
  35298. Vertical scroll bar on apple.com is too short with WebKit2
  35299. <rdar://problem/8379230>
  35300. https://bugs.webkit.org/show_bug.cgi?id=46739
  35301. Adds a function to recalculate the scrollbars to take advantage of
  35302. a changed window re-sizer rect.
  35303. * WebCore.exp.in:
  35304. * platform/ScrollView.cpp:
  35305. (WebCore::ScrollView::windowResizerRectChanged):
  35306. * platform/ScrollView.h:
  35307. 2010-09-28 David Hyatt <hyatt@apple.com>
  35308. Reviewed by Sam Weinig.
  35309. https://bugs.webkit.org/show_bug.cgi?id=46750
  35310. Rename the MarginInfo members and functions to be block-flow independent.
  35311. * rendering/RenderBlock.cpp:
  35312. (WebCore::RenderBlock::MarginInfo::MarginInfo):
  35313. (WebCore::RenderBlock::adjustPositionedBlock):
  35314. (WebCore::RenderBlock::adjustFloatingBlock):
  35315. (WebCore::RenderBlock::collapseMargins):
  35316. (WebCore::RenderBlock::clearFloatsIfNeeded):
  35317. (WebCore::RenderBlock::estimateVerticalPosition):
  35318. (WebCore::RenderBlock::setCollapsedBottomMargin):
  35319. (WebCore::RenderBlock::handleBottomOfBlock):
  35320. (WebCore::RenderBlock::layoutBlockChild):
  35321. (WebCore::RenderBlock::applyAfterBreak):
  35322. * rendering/RenderBlock.h:
  35323. (WebCore::RenderBlock::MarginInfo::setAtBeforeSideOfBlock):
  35324. (WebCore::RenderBlock::MarginInfo::setAtAfterSideOfBlock):
  35325. (WebCore::RenderBlock::MarginInfo::setMarginBeforeQuirk):
  35326. (WebCore::RenderBlock::MarginInfo::setMarginAfterQuirk):
  35327. (WebCore::RenderBlock::MarginInfo::setDeterminedMarginBeforeQuirk):
  35328. (WebCore::RenderBlock::MarginInfo::atBeforeSideOfBlock):
  35329. (WebCore::RenderBlock::MarginInfo::canCollapseWithMarginBefore):
  35330. (WebCore::RenderBlock::MarginInfo::canCollapseWithMarginAfter):
  35331. (WebCore::RenderBlock::MarginInfo::canCollapseMarginBeforeWithChildren):
  35332. (WebCore::RenderBlock::MarginInfo::canCollapseMarginAfterWithChildren):
  35333. (WebCore::RenderBlock::MarginInfo::determinedMarginBeforeQuirk):
  35334. (WebCore::RenderBlock::MarginInfo::marginBeforeQuirk):
  35335. (WebCore::RenderBlock::MarginInfo::marginAfterQuirk):
  35336. 2010-09-28 Dan Bernstein <mitz@apple.com>
  35337. Reviewed by Darin Adler.
  35338. Improved the handling of soft hyphens in Copy and Find operations, addressing the following
  35339. bugs:
  35340. <rdar://problem/7938878> Soft hyphenation and the clipboard
  35341. https://bugs.webkit.org/show_bug.cgi?id=11154
  35342. window.getSelection().toString() breaks soft hyphen &shy;
  35343. https://bugs.webkit.org/show_bug.cgi?id=26774
  35344. <rdar://problem/5640505> soft hyphen breaks search function
  35345. https://bugs.webkit.org/show_bug.cgi?id=16675
  35346. Test: fast/text/find-soft-hyphen.html
  35347. Changed line layout code to not skip over soft hyphens but rather include them in the text
  35348. boxes. Changed font code to render the soft hyphen character as a zero width space, so that
  35349. the former change will not affect rendering of soft hyphens in the middle of the line. Also
  35350. changed line layout code to mark text boxes where hyphenation occurred due to a soft hyphen
  35351. as hyphenated, so that the hyphen string specified in CSS will be appended to them.
  35352. Not omitting the soft hyphens from the text boxes makes the text iterator emit them, which
  35353. solves the Copy and plain-text conversion issues. Previously, the iterator would emit a space
  35354. to account for non-rendered characters between adjacent boxes, which was wrong in this case.
  35355. To make Find work, soft hyphens are folded into 0, which is ignorable in the collation used
  35356. for Find.
  35357. * editing/TextIterator.cpp:
  35358. (WebCore::foldQuoteMarkOrSoftHyphen): Renamed foldQuoteMark() to this and added folding of
  35359. soft hyphen to 0.
  35360. (WebCore::foldQuoteMarksAndSoftHyphens): Renamed foldQuoteMarks() to thid and added folding
  35361. of soft hyphen to 0.
  35362. (WebCore::SearchBuffer::SearchBuffer): Updated for renames.
  35363. (WebCore::SearchBuffer::append): Ditto.
  35364. * platform/graphics/Font.h:
  35365. (WebCore::Font::treatAsSpace): Replaced number literal with name.
  35366. (WebCore::Font::treatAsZeroWidthSpace): Added softHyphen.
  35367. * platform/graphics/GlyphPageTreeNode.cpp:
  35368. (WebCore::GlyphPageTreeNode::initializePage): Get the zero width space glyph for soft hyphen.
  35369. * platform/graphics/mac/ComplexTextController.cpp:
  35370. (WebCore::ComplexTextController::collectComplexTextRuns): Removed special handling that made
  35371. a trailing soft hyphen render as hyphen-minus. All soft hyphens are now rendered as zero width
  35372. spaces, and where a line break actually occurs at a soft hyphen, rendering code appends the
  35373. CSS-specified hyphenate character to the text run that is passed to us here.
  35374. * rendering/RenderBlockLineLayout.cpp:
  35375. (WebCore::chopMidpointsAt): Removed this function, which was only used for skipping over soft
  35376. hyphens.
  35377. (WebCore::checkMidpoints): Removed code related to skipping over soft hyphens.
  35378. (WebCore::RenderBlock::findNextLineBreak): Removed code to skip over soft hyphens. Ignore
  35379. a line break opportunity at a soft hyphen if the style specifies 'hyphens: none'. Set
  35380. 'hyphenated' to true if a line break occurs at a soft hyphen.
  35381. * rendering/style/RenderStyle.cpp:
  35382. (WebCore::RenderStyle::hyphenString): Changed the assertion to allow querying for the hyphen
  35383. string for 'hyphens: manual'.
  35384. 2010-09-28 Martin Robinson <mrobinson@igalia.com>
  35385. More GTK+ build fixes after r68521.
  35386. * GNUmakefile.am: Added proper dependency tracking for some
  35387. new autogenerated files.
  35388. 2010-09-28 Andreas Kling <andreas.kling@nokia.com>
  35389. Reviewed by Kenneth Rohde Christiansen.
  35390. [Qt] Text drawing taints GraphicsContext's QPainter::pen()
  35391. https://bugs.webkit.org/show_bug.cgi?id=46744
  35392. Test: fast/canvas/canvas-style-intact-after-text.html
  35393. * platform/graphics/qt/FontQt.cpp:
  35394. (WebCore::drawTextCommon): Make sure the QPainter's pen is
  35395. restored after filling and/or stroking text.
  35396. 2010-09-28 Jia Pu <jpu@apple.com>
  35397. Reviewed by Dan Bernstein.
  35398. Autocorrection panel is shown at incorrect location when WebView is scrolled.
  35399. https://bugs.webkit.org/show_bug.cgi?id=46531
  35400. <rdar://problem/8455376>
  35401. * dom/Range.h: Make getBorderAndTextQuads() public so that it can be used by Editor.
  35402. * editing/Editor.cpp:
  35403. (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Replaced call to textQuads()
  35404. with getBorderAndTextQuads().
  35405. 2010-09-28 Andrei Popescu <andreip@google.com>
  35406. Reviewed by Jeremy Orlow.
  35407. IDBRequest should not have a method called abort.
  35408. https://bugs.webkit.org/show_bug.cgi?id=46720
  35409. IDBRequest::abort() was dropped from the spec following discussion in
  35410. http://www.w3.org/Bugs/Public/show_bug.cgi?id=10165
  35411. * storage/IDBRequest.cpp:
  35412. (WebCore::IDBRequest::IDBRequest):
  35413. (WebCore::IDBRequest::~IDBRequest):
  35414. (WebCore::IDBRequest::resetReadyState):
  35415. (WebCore::IDBRequest::timerFired):
  35416. (WebCore::IDBRequest::scheduleEvent):
  35417. * storage/IDBRequest.h:
  35418. * storage/IDBRequest.idl:
  35419. 2010-09-28 Chris Fleizach <cfleizach@apple.com>
  35420. Reviewed by Beth Dakin.
  35421. CrashTracer: 1,382 crashes in Safari at com.apple.WebCore: WebCore::VisiblePosition::canonicalPosition + 78
  35422. https://bugs.webkit.org/show_bug.cgi?id=45927
  35423. AXTextMarkers store pointers to Nodes without any retain or reference. If a Node is deallocated and then
  35424. a client tries to use a text marker that references that node, it leads to this crash.
  35425. The AXObjectCache instance now keeps a HashSet of Node's being used. When a node becomes deallocated, it removes itself
  35426. from the HashSet. When creating a VisiblePosition from an AXTextMarker, the cache can then check if the node is valid
  35427. before proceeding.
  35428. Test: platform/mac/accessibility/crash-invalid-text-marker-node.html
  35429. * accessibility/AXObjectCache.cpp:
  35430. (WebCore::AXObjectCache::visiblePositionForTextMarkerData):
  35431. (WebCore::AXObjectCache::textMarkerDataForVisiblePosition):
  35432. Modify to check whether a node is valid before proceeeding.
  35433. * accessibility/AXObjectCache.h:
  35434. (WebCore::AXObjectCache::setNodeInUse):
  35435. (WebCore::AXObjectCache::removeNodeForUse):
  35436. (WebCore::AXObjectCache::isNodeInUse):
  35437. Methods for managing whether a node is in use by text markers.
  35438. * accessibility/mac/AccessibilityObjectWrapper.mm:
  35439. (textMarkerForVisiblePosition):
  35440. (-[AccessibilityObjectWrapper textMarkerForVisiblePosition:]):
  35441. (visiblePositionForTextMarker):
  35442. (-[AccessibilityObjectWrapper visiblePositionForTextMarker:]):
  35443. (visiblePositionForStartOfTextMarkerRange):
  35444. (visiblePositionForEndOfTextMarkerRange):
  35445. (-[AccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]):
  35446. (textMarkerRangeFromVisiblePositions):
  35447. (-[AccessibilityObjectWrapper textMarkerRangeFromVisiblePositions:endPosition:]):
  35448. (-[AccessibilityObjectWrapper visiblePositionRangeForTextMarkerRange:]):
  35449. (-[AccessibilityObjectWrapper textMarkerRangeForSelection]):
  35450. (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
  35451. (-[AccessibilityObjectWrapper doAXAttributedStringForRange:]):
  35452. (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
  35453. Change these calls so that the axObjectCache() can be passed in to create the visible position.
  35454. * dom/Document.cpp:
  35455. (WebCore::Document::axObjectCacheExists):
  35456. * dom/Document.h:
  35457. * dom/Node.cpp:
  35458. (WebCore::Node::~Node):
  35459. If accessibility is enabled, inform the axObjectCache() that this node is disappearing.
  35460. 2010-09-28 Chris Rogers <crogers@google.com>
  35461. Reviewed by Kenneth Russell.
  35462. Add AudioDestinationNode files
  35463. https://bugs.webkit.org/show_bug.cgi?id=45009
  35464. No new tests since audio API is not yet implemented.
  35465. * webaudio/AudioDestinationNode.cpp: Added.
  35466. (WebCore::AudioDestinationNode::AudioDestinationNode):
  35467. (WebCore::AudioDestinationNode::~AudioDestinationNode):
  35468. (WebCore::AudioDestinationNode::initialize):
  35469. (WebCore::AudioDestinationNode::uninitialize):
  35470. (WebCore::AudioDestinationNode::provideInput):
  35471. * webaudio/AudioDestinationNode.h: Added.
  35472. (WebCore::AudioDestinationNode::create):
  35473. (WebCore::AudioDestinationNode::process):
  35474. (WebCore::AudioDestinationNode::reset):
  35475. (WebCore::AudioDestinationNode::currentTime):
  35476. (WebCore::AudioDestinationNode::sampleRate):
  35477. (WebCore::AudioDestinationNode::numberOfChannels):
  35478. * webaudio/AudioDestinationNode.idl: Added.
  35479. 2010-09-28 Chris Rogers <crogers@google.com>
  35480. Reviewed by Kenneth Russell.
  35481. audio engine: audio output classes
  35482. https://bugs.webkit.org/show_bug.cgi?id=34716
  35483. No new tests since audio API is not yet implemented.
  35484. * platform/audio/AudioDestination.h: Added.
  35485. (WebCore::AudioDestination::~AudioDestination):
  35486. * platform/audio/mac/AudioDestinationMac.cpp: Added.
  35487. (WebCore::AudioDestination::create):
  35488. (WebCore::AudioDestination::hardwareSampleRate):
  35489. (WebCore::AudioDestinationMac::AudioDestinationMac):
  35490. (WebCore::AudioDestinationMac::~AudioDestinationMac):
  35491. (WebCore::AudioDestinationMac::configure):
  35492. (WebCore::AudioDestinationMac::start):
  35493. (WebCore::AudioDestinationMac::stop):
  35494. (WebCore::AudioDestinationMac::render):
  35495. (WebCore::AudioDestinationMac::inputProc):
  35496. * platform/audio/mac/AudioDestinationMac.h: Added.
  35497. (WebCore::AudioDestinationMac::isPlaying):
  35498. (WebCore::AudioDestinationMac::sampleRate):
  35499. 2010-09-28 Chris Rogers <crogers@google.com>
  35500. Reviewed by Kenneth Russell.
  35501. Add AudioGain files
  35502. https://bugs.webkit.org/show_bug.cgi?id=46285
  35503. No new tests since audio API is not yet implemented.
  35504. * webaudio/AudioGain.h: Added.
  35505. (WebCore::AudioGain::create):
  35506. (WebCore::AudioGain::AudioGain):
  35507. * webaudio/AudioGain.idl: Added.
  35508. 2010-09-28 Chris Rogers <crogers@google.com>
  35509. Reviewed by Kenneth Russell.
  35510. Fix possible illegal float values in AudioParam
  35511. https://bugs.webkit.org/show_bug.cgi?id=46681
  35512. No new tests since audio API is not yet implemented.
  35513. * webaudio/AudioParam.h:
  35514. (WebCore::AudioParam::setValue):
  35515. 2010-09-28 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
  35516. Reviewed by Simon Hausmann.
  35517. [Qt] Rename member variable in MediaPlayerPrivateQt
  35518. * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
  35519. * platform/graphics/qt/MediaPlayerPrivateQt.h:
  35520. 2010-09-28 Andras Becsi <abecsi@webkit.org>
  35521. [Gtk] Build fix. Remove leftover trailing backslash.
  35522. * GNUmakefile.am:
  35523. 2010-09-28 Andras Becsi <abecsi@webkit.org>
  35524. Unreviewed.
  35525. [Gtk] Build fix after r68521
  35526. No new tests needed.
  35527. * GNUmakefile.am:
  35528. 2010-09-28 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
  35529. Reviewed by Andreas Kling.
  35530. [Qt] Rename MediaPlayerPrivate to MediaPlayerPrivateQt/Phonon
  35531. https://bugs.webkit.org/show_bug.cgi?id=36663
  35532. * platform/graphics/MediaPlayer.cpp:
  35533. * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
  35534. * platform/graphics/qt/MediaPlayerPrivateQt.h:
  35535. * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
  35536. * platform/graphics/qt/MediaPlayerPrivatePhonon.h:
  35537. 2010-09-28 Andras Becsi <abecsi@webkit.org>
  35538. Reviewed by Csaba Osztrogonác.
  35539. Undefined reference errors when linking due to gperf and inlining.
  35540. webkit.org/b/29244
  35541. EFL CMake changes by Leandro Pereira <leandro@profusion.mobi>
  35542. Refactor gperf code generation and usage to fix the debug build with gcc>4.4.
  35543. Hitherto gperf generated C code, these files were included in multiple C++ files across WebCore
  35544. to access the functionality provided. This resulted in debug build failure with newer gcc versions
  35545. because of a behaviour change of gcc, which disables C style inlining in debug mode.
  35546. The make-hash-tools.pl script lets gperf generate C++ code for all gperf files now, which are compiled
  35547. in their own compilation unit.
  35548. The functionality provided by the generated code is wrapped behind HashTools.h, so there is no need
  35549. for multiple inclusions of generated C files to access these functions.
  35550. No new tests needed.
  35551. * CMakeLists.txt:
  35552. * WebCore.gyp/WebCore.gyp:
  35553. * WebCore.pri:
  35554. * WebCore.vcproj/WebCore.vcproj:
  35555. * WebCore.xcodeproj/project.pbxproj:
  35556. * css/CSSParser.cpp:
  35557. * css/makeprop.pl:
  35558. * css/makevalues.pl:
  35559. * html/DocTypeStrings.gperf:
  35560. * html/HTMLDocument.cpp:
  35561. * make-hash-tools.pl:
  35562. * platform/ColorData.gperf:
  35563. * platform/graphics/Color.cpp:
  35564. 2010-09-28 Andreas Kling <andreas.kling@nokia.com>
  35565. Reviewed by Kenneth Rohde Christiansen.
  35566. Canvas: Crash when setting a font with size in 'ex' units
  35567. https://bugs.webkit.org/show_bug.cgi?id=46538
  35568. update() the style's font after setting the style's font description.
  35569. Needed because CSSPrimitiveValue::computeLengthDouble() later assumes
  35570. that the style's font is properly initialized (for xHeight().)
  35571. Fixes crash on IE test center's canvas-text-font-002 test.
  35572. * html/canvas/CanvasRenderingContext2D.cpp:
  35573. (WebCore::CanvasRenderingContext2D::setFont):
  35574. 2010-09-28 Benjamin Poulain <benjamin.poulain@nokia.com>
  35575. Reviewed by Kenneth Rohde Christiansen.
  35576. [Qt] Remove support for Qt 4.5
  35577. https://bugs.webkit.org/show_bug.cgi?id=46718
  35578. Remove the code for versions of Qt prior to 4.6.
  35579. * WebCore.pro:
  35580. * features.pri:
  35581. * platform/network/qt/QNetworkReplyHandler.cpp:
  35582. (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
  35583. (WebCore::QNetworkReplyHandler::start):
  35584. * platform/network/qt/ResourceRequestQt.cpp:
  35585. (WebCore::ResourceRequest::toNetworkRequest):
  35586. * platform/qt/QWebPageClient.h:
  35587. 2010-09-28 Kent Tamura <tkent@chromium.org>
  35588. Unreviewed, run sort-Xcode-project-file
  35589. * WebCore.xcodeproj/project.pbxproj:
  35590. 2010-09-28 Huahui Wu <mediadependent@gmail.com>
  35591. Reviewed by Steve Block.
  35592. Add multi-touch for Android.
  35593. https://bugs.webkit.org/show_bug.cgi?id=45221
  35594. The Android touch event used to take one point as the touch point,
  35595. it's now changed to a vector of points to support multi-touch.
  35596. Tests: fast/events/touch/basic-multi-touch-events-limited.html
  35597. fast/events/touch/touch-target-limited.html
  35598. * platform/PlatformTouchEvent.h:
  35599. * platform/PlatformTouchPoint.h:
  35600. * platform/android/PlatformTouchEventAndroid.cpp:
  35601. (WebCore::PlatformTouchEvent::PlatformTouchEvent):
  35602. * platform/android/PlatformTouchPointAndroid.cpp:
  35603. (WebCore::PlatformTouchPoint::PlatformTouchPoint):
  35604. 2010-09-27 Kent Tamura <tkent@chromium.org>
  35605. Reviewed by Alexey Proskuryakov.
  35606. Fix assertion failure in a case that the dirty flag of a textarea element is changed
  35607. https://bugs.webkit.org/show_bug.cgi?id=45681
  35608. We need to call setNeedsValidityCheck() after updating m_isDirty.
  35609. Test: fast/forms/textarea-checkValidity-crash.html
  35610. * html/HTMLTextAreaElement.cpp:
  35611. (WebCore::HTMLTextAreaElement::setValue):
  35612. (WebCore::HTMLTextAreaElement::setNonDirtyValue):
  35613. (WebCore::HTMLTextAreaElement::setValueCommon):
  35614. * html/HTMLTextAreaElement.h:
  35615. 2010-09-27 Abhishek Arya <inferno@chromium.org>
  35616. Reviewed by Dan Bernstein.
  35617. When the block RunIn is destroyed, its line box tree is not deleted. As a result, it
  35618. gets later used during dirtying of inline text boxes step where this deleted parent is
  35619. accessed. The fix is to delete the line box tree before destroying the runin block.
  35620. https://bugs.webkit.org/show_bug.cgi?id=46376
  35621. Test: fast/text/dirty-inline-textbox-crash.html
  35622. * rendering/RenderText.cpp:
  35623. (WebCore::RenderText::dirtyLineBoxes):
  35624. 2010-09-27 Eric Uhrhane <ericu@chromium.org>
  35625. Reviewed by David Levin.
  35626. Fix event sequencing in FileWriter
  35627. https://bugs.webkit.org/show_bug.cgi?id=46544
  35628. Only set readyState to DONE when we're about to send the last progress
  35629. event associated with an operation. Make sure all progress events come
  35630. from backend calls, and aren't ever fired synchronously in response to
  35631. user JS method calls.
  35632. No new tests, as none of this is fully implemented yet.
  35633. * fileapi/FileWriter.cpp:
  35634. (WebCore::FileWriter::write):
  35635. (WebCore::FileWriter::truncate):
  35636. (WebCore::FileWriter::abort):
  35637. (WebCore::FileWriter::didWrite):
  35638. (WebCore::FileWriter::didTruncate):
  35639. (WebCore::FileWriter::didFail):
  35640. 2010-09-27 Chris Rogers <crogers@google.com>
  35641. Reviewed by James Robinson.
  35642. Add HRTFDatabase files
  35643. https://bugs.webkit.org/show_bug.cgi?id=46233
  35644. No new tests since audio API is not yet implemented.
  35645. * platform/audio/HRTFDatabase.cpp: Added.
  35646. (WebCore::HRTFDatabase::create):
  35647. (WebCore::HRTFDatabase::HRTFDatabase):
  35648. (WebCore::HRTFDatabase::getKernelsFromAzimuthElevation):
  35649. (WebCore::HRTFDatabase::indexFromElevationAngle):
  35650. * platform/audio/HRTFDatabase.h: Added.
  35651. (WebCore::HRTFDatabase::numberOfAzimuths):
  35652. (WebCore::HRTFDatabase::sampleRate):
  35653. 2010-09-27 Alpha Lam <hclam@chromium.org>
  35654. Build fix. Not reviewed.
  35655. Move constant definitions to VideoLayerChromium.cpp.
  35656. A proper fix should come later.
  35657. * platform/graphics/chromium/VideoLayerChromium.cpp:
  35658. 2010-09-23 Antonio Gomes <agomes@rim.com>
  35659. Reviewed by Kenneth Rohde Christiansen.
  35660. Make Document::nodesFromRect more flexible
  35661. https://bugs.webkit.org/show_bug.cgi?id=46336
  35662. The patch changes the API for the Document::nodesFromRect() method as follows:
  35663. from
  35664. - RefPtf<NodeList> nodesFromRect(int x, int y, unsigned horizontalPadding, unsigned verticalPadding, bool ignoreClipping)
  35665. to
  35666. - RefPtf<NodeList> nodesFromRect(int x, int y, unsigned topPadding, unsigned rightPadding, unsigned bottomPadding,
  35667. unsigned leftPadding, bool ignoreClipping)
  35668. Previously the method was receiving as parameter horizontal and vertical padding values.
  35669. In practice, the horizontal padding was being used to expand a given center point in both
  35670. right and left directions, while vertical padding was expanding it to the top and bottom directions.
  35671. Although this design makes it possible to improve the touch experience on mobile devices
  35672. (Document::nodesFromRect exposes the rect based hit testing system), empirical experiments
  35673. showed that, specially in capacitive touch screens, users tend to tap below elements. So
  35674. for even more accurate results (which means here the possibility of pleasant tapping experience),
  35675. it makes sense to use a region that is offset more above the touch point, favoring elements
  35676. above the touch point.
  35677. The patch basically implements that, increasing the API flexible and power by making it possible
  35678. to specify different padding values for each direction in a given orientation.
  35679. Changes were made accordingly to the HitTestResult, RenderLayer, RenderImage and RenderLineBoxList
  35680. classes.
  35681. WebCore:
  35682. * WebCore.exp.in:
  35683. * dom/Document.h: API adjustment.
  35684. * dom/Document.idl: Ditto.
  35685. * dom/Document.cpp: API adjustment and method body implementation accordingly.
  35686. (WebCore::Document::nodesFromRect):
  35687. * page/EventHandler.cpp:
  35688. (WebCore::EventHandler::hitTestResultAtPoint): For simplicity, I did not change the signature
  35689. but the way the padding value passed in as parameter is being used to construct a HitTestResult.
  35690. * rendering/HitTestResult.cpp: Changed the rect-based bits from using IntSize (padding) to separated paddings for each direction.
  35691. (WebCore::HitTestResult::HitTestResult): Ditto.
  35692. (WebCore::HitTestResult::operator=): Ditto.
  35693. (WebCore::HitTestResult::rectFromPoint): Ditto.
  35694. * rendering/HitTestResult.h:
  35695. (WebCore::HitTestResult::topPadding): getter for the top padding.
  35696. (WebCore::HitTestResult::rightPadding): getter for the right padding.
  35697. (WebCore::HitTestResult::bottomPadding): getter for the bottom padding.
  35698. (WebCore::HitTestResult::leftPadding): getter for the left padding.
  35699. (WebCore::HitTestResult::rectFromPoint): Added a static method that given a center point and padding values for each direction,
  35700. returns the rect that is going to be used in WebCore's hit testing processing.
  35701. * rendering/RenderImage.cpp: Changed the rect-based bits from using IntSize (padding) to separated paddings for each direction.
  35702. (WebCore::RenderImage::nodeAtPoint): Ditto.
  35703. * rendering/RenderLayer.cpp: Ditto.
  35704. (WebCore::RenderLayer::hitTestLayer): Ditto.
  35705. (WebCore::RenderLayer::hitTestList): Ditto.
  35706. * rendering/RenderLineBoxList.cpp: Ditto.
  35707. (WebCore::RenderLineBoxList::hitTest): Ditto.
  35708. 2010-09-27 Chris Rogers <crogers@google.com>
  35709. Reviewed by James Robinson.
  35710. Add HRTFDatabaseLoader files
  35711. https://bugs.webkit.org/show_bug.cgi?id=46234
  35712. No new tests since audio API is not yet implemented.
  35713. * platform/audio/HRTFDatabaseLoader.cpp: Added.
  35714. (WebCore::HRTFDatabaseLoader::createAndLoadAsynchronouslyIfNecessary):
  35715. (WebCore::HRTFDatabaseLoader::HRTFDatabaseLoader):
  35716. (WebCore::HRTFDatabaseLoader::~HRTFDatabaseLoader):
  35717. (WebCore::databaseLoaderEntry):
  35718. (WebCore::HRTFDatabaseLoader::load):
  35719. (WebCore::HRTFDatabaseLoader::loadAsynchronously):
  35720. (WebCore::HRTFDatabaseLoader::isLoaded):
  35721. (WebCore::HRTFDatabaseLoader::defaultHRTFDatabase):
  35722. * platform/audio/HRTFDatabaseLoader.h: Added.
  35723. (WebCore::HRTFDatabaseLoader::database):
  35724. (WebCore::HRTFDatabaseLoader::databaseSampleRate):
  35725. 2010-09-27 Ryosuke Niwa <rniwa@webkit.org>
  35726. Reviewed by Darin Adler.
  35727. queryCommandState with justifyCenter, justifyLeft, and justifyRight always return false
  35728. https://bugs.webkit.org/show_bug.cgi?id=45910
  35729. Implemented queryCommandState for justifyCenter, justifyLeft, and justifyRight commands.
  35730. Added getTextAlignment to convert -webkit-center, -webkit-left, and -webkit-right to
  35731. center, left, and right respectively because they can be treated equally for editing purposes.
  35732. Test: editing/execCommand/query-text-alignment.html
  35733. * editing/ApplyStyleCommand.cpp:
  35734. (WebCore::getTextAlignment): Added.
  35735. (WebCore::getPropertiesNotIn): Uses getTextAlignment.
  35736. * editing/EditorCommand.cpp:
  35737. (WebCore::stateJustifyCenter): Added.
  35738. (WebCore::stateJustifyLeft): Added.
  35739. (WebCore::stateJustifyRight): Added.
  35740. (WebCore::createCommandMap): Refers to stateJustifyCenter, stateJustifyLeft, and stateJustifyRight.
  35741. 2010-09-27 Alpha Lam <hclam@chromium.org>
  35742. Unreviewed. Build fix.
  35743. Reorder member declarations and fix other warnings.
  35744. * platform/graphics/chromium/VideoLayerChromium.cpp:
  35745. (WebCore::VideoLayerChromium::VideoLayerChromium):
  35746. (WebCore::VideoLayerChromium::~VideoLayerChromium):
  35747. (WebCore::VideoLayerChromium::updateContents):
  35748. (WebCore::VideoLayerChromium::determineTextureFormat):
  35749. (WebCore::VideoLayerChromium::allocateTexturesIfNeeded):
  35750. * platform/graphics/chromium/VideoLayerChromium.h:
  35751. 2010-09-27 Kenneth Russell <kbr@google.com>
  35752. Unreviewed, Qt build fix. Stub out CanvasRenderingContext::checkOrigin(const HTMLVideoElement*)
  35753. on platforms that don't support video after r68460.
  35754. * html/canvas/CanvasRenderingContext.cpp:
  35755. (WebCore::CanvasRenderingContext::checkOrigin):
  35756. 2010-09-27 Chris Fleizach <cfleizach@apple.com>
  35757. Reviewed by Beth Dakin.
  35758. CrashTracer: 1,803 crashes in Safari at com.apple.WebCore: -[AccessibilityObjectWrapper accessibilityIsIgnored] + 56
  35759. https://bugs.webkit.org/show_bug.cgi?id=46662
  35760. Before calling updateBackingStore(), the wrapper object needs to be retained, lest it be invalidated during
  35761. the updateBackingStore call. This consolidates all calls to updateBackingStore().
  35762. Test: platform/mac/accessibility/removing-textarea-after-edit-crash.html
  35763. * accessibility/mac/AXObjectCacheMac.mm:
  35764. (WebCore::AXObjectCache::postPlatformNotification):
  35765. Use an ASSERT here to catch the crash because DRT won't cause AppKit to post notifications.
  35766. * accessibility/mac/AccessibilityObjectWrapper.mm:
  35767. (-[AccessibilityObjectWrapper prepareAccessibilityMethod]):
  35768. (-[AccessibilityObjectWrapper accessibilityActionNames]):
  35769. (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
  35770. (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
  35771. (-[AccessibilityObjectWrapper accessibilityFocusedUIElement]):
  35772. (-[AccessibilityObjectWrapper accessibilityHitTest:]):
  35773. (-[AccessibilityObjectWrapper accessibilityIsAttributeSettable:]):
  35774. (-[AccessibilityObjectWrapper accessibilityIsIgnored]):
  35775. (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
  35776. (-[AccessibilityObjectWrapper accessibilityPerformPressAction]):
  35777. (-[AccessibilityObjectWrapper accessibilityPerformIncrementAction]):
  35778. (-[AccessibilityObjectWrapper accessibilityPerformDecrementAction]):
  35779. (-[AccessibilityObjectWrapper accessibilityPerformAction:]):
  35780. (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
  35781. (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
  35782. (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]):
  35783. (-[AccessibilityObjectWrapper accessibilityArrayAttributeCount:]):
  35784. (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
  35785. 2010-09-27 Adrienne Walker <enne@google.com>
  35786. Reviewed by Adam Barth.
  35787. WebGL's readPixels doesn't respect origin-clean flag
  35788. Push CanvasRenderingContext2D checkOrigin logic into base class so it can be shared between different kinds of canvas contexts.
  35789. https://bugs.webkit.org/show_bug.cgi?id=45718
  35790. Test: LayoutTests/http/tests/canvas/webgl/origin-clean-conformance.html
  35791. * html/canvas/CanvasRenderingContext.cpp:
  35792. (WebCore::CanvasRenderingContext::checkOrigin):
  35793. * html/canvas/CanvasRenderingContext.h:
  35794. (WebCore::CanvasRenderingContext::~CanvasRenderingContext):
  35795. (WebCore::CanvasRenderingContext::canvas):
  35796. (WebCore::CanvasRenderingContext::is2d):
  35797. (WebCore::CanvasRenderingContext::is3d):
  35798. (WebCore::CanvasRenderingContext::isAccelerated):
  35799. (WebCore::CanvasRenderingContext::paintRenderingResultsToCanvas):
  35800. (WebCore::CanvasRenderingContext::paintsIntoCanvasBuffer):
  35801. (WebCore::CanvasRenderingContext::platformLayer):
  35802. * html/canvas/CanvasRenderingContext2D.cpp:
  35803. (WebCore::CanvasRenderingContext2D::setStrokeStyle):
  35804. (WebCore::CanvasRenderingContext2D::setFillStyle):
  35805. (WebCore::CanvasRenderingContext2D::drawImage):
  35806. (WebCore::CanvasRenderingContext2D::drawImageFromRect):
  35807. * html/canvas/CanvasRenderingContext2D.h:
  35808. * html/canvas/WebGLRenderingContext.cpp:
  35809. (WebCore::WebGLRenderingContext::readPixels):
  35810. (WebCore::WebGLRenderingContext::texImage2D):
  35811. (WebCore::WebGLRenderingContext::videoFrameToImage):
  35812. (WebCore::WebGLRenderingContext::texSubImage2D):
  35813. * html/canvas/WebGLRenderingContext.h:
  35814. * html/canvas/WebGLRenderingContext.idl:
  35815. 2010-09-27 Darin Adler <darin@apple.com>
  35816. Reviewed by Dan Bernstein.
  35817. REGRESSION (r68054): Buttons no longer render at correct sizes
  35818. https://bugs.webkit.org/show_bug.cgi?id=46513
  35819. Test: fast/forms/input-button-sizes.html
  35820. The setUpButtonCell function was running only once, but needed to run every time
  35821. through the button function.
  35822. * platform/mac/ThemeMac.mm:
  35823. (WebCore::leakButtonCell): Added. Separate one-time initialization code.
  35824. (WebCore::setUpButtonCell): Removed the first-time initialization part of this function.
  35825. (WebCore::button): Merged the three functions back into one.
  35826. 2010-09-27 Victoria Kirst <vrk@google.com>
  35827. Reviewed by James Robinson.
  35828. Modifies VideoLayerChromium to do YUV to RGB color conversion in the
  35829. GPU. Also adds support for RGBA video frame formats, though this code
  35830. path is currently never run because the video frames are in YV12
  35831. format.
  35832. https://bugs.webkit.org/show_bug.cgi?id=45069
  35833. * platform/graphics/chromium/LayerRendererChromium.cpp:
  35834. (WebCore::LayerRendererChromium::initializeSharedObjects):
  35835. (WebCore::LayerRendererChromium::cleanupSharedObjects):
  35836. * platform/graphics/chromium/LayerRendererChromium.h:
  35837. (WebCore::LayerRendererChromium::videoLayerSharedValues):
  35838. * platform/graphics/chromium/VideoLayerChromium.cpp:
  35839. (WebCore::VideoLayerChromium::SharedValues::SharedValues):
  35840. (WebCore::VideoLayerChromium::SharedValues::~SharedValues):
  35841. (WebCore::VideoLayerChromium::VideoLayerChromium):
  35842. (WebCore::VideoLayerChromium::~VideoLayerChromium):
  35843. (WebCore::VideoLayerChromium::updateContents):
  35844. (WebCore::VideoLayerChromium::updateYUVContents):
  35845. (WebCore::VideoLayerChromium::allocateYUVTextures):
  35846. (WebCore::VideoLayerChromium::updateYUVTextures):
  35847. (WebCore::VideoLayerChromium::updateRGBAContents):
  35848. (WebCore::VideoLayerChromium::allocateTexture):
  35849. (WebCore::VideoLayerChromium::updateTexture):
  35850. (WebCore::VideoLayerChromium::updateContentsCompleted):
  35851. (WebCore::VideoLayerChromium::draw):
  35852. (WebCore::VideoLayerChromium::drawYUV):
  35853. (WebCore::VideoLayerChromium::drawRGBA):
  35854. * platform/graphics/chromium/VideoLayerChromium.h:
  35855. (WebCore::VideoLayerChromium::drawsContent):
  35856. (WebCore::VideoLayerChromium::SharedValues::yuvShaderProgram):
  35857. (WebCore::VideoLayerChromium::SharedValues::rgbaShaderProgram):
  35858. (WebCore::VideoLayerChromium::SharedValues::yuvShaderMatrixLocation):
  35859. (WebCore::VideoLayerChromium::SharedValues::rgbaShaderMatrixLocation):
  35860. (WebCore::VideoLayerChromium::SharedValues::yuvWidthScaleFactorLocation):
  35861. (WebCore::VideoLayerChromium::SharedValues::rgbaWidthScaleFactorLocation):
  35862. (WebCore::VideoLayerChromium::SharedValues::yTextureLocation):
  35863. (WebCore::VideoLayerChromium::SharedValues::uTextureLocation):
  35864. (WebCore::VideoLayerChromium::SharedValues::vTextureLocation):
  35865. (WebCore::VideoLayerChromium::SharedValues::yuvAlphaLocation):
  35866. (WebCore::VideoLayerChromium::SharedValues::rgbaTextureLocation):
  35867. (WebCore::VideoLayerChromium::SharedValues::ccMatrixLocation):
  35868. (WebCore::VideoLayerChromium::SharedValues::initialized):
  35869. 2010-09-27 Peter Kasting <pkasting@google.com>
  35870. Reviewed by James Robinson.
  35871. ImageDecoderSkia.cpp needs to check for allocator failure when copying
  35872. bitmaps.
  35873. https://bugs.webkit.org/show_bug.cgi?id=46437
  35874. * manual-tests/large-size-image-crash.html: Added.
  35875. * manual-tests/resources/large-size-image-crash.gif: Added.
  35876. * platform/image-decoders/ImageDecoder.cpp:
  35877. (WebCore::RGBA32Buffer::copyBitmapData):
  35878. * platform/image-decoders/ImageDecoder.h:
  35879. * platform/image-decoders/gif/GIFImageDecoder.cpp:
  35880. (WebCore::GIFImageDecoder::initFrameBuffer):
  35881. * platform/image-decoders/qt/RGBA32BufferQt.cpp:
  35882. (WebCore::RGBA32Buffer::copyBitmapData):
  35883. * platform/image-decoders/skia/ImageDecoderSkia.cpp:
  35884. (WebCore::RGBA32Buffer::copyBitmapData):
  35885. 2010-09-27 James Robinson <jamesr@chromium.org>
  35886. Reviewed by Simon Fraser.
  35887. Revert r63307, it broke repainting dynamically changed SVG content
  35888. https://bugs.webkit.org/show_bug.cgi?id=46499
  35889. This patch reverts r63307 and adds a regression test for what broke.
  35890. Test: fast/repaint/repaint-svg-after-style-change.html
  35891. * rendering/RenderForeignObject.cpp:
  35892. (WebCore::RenderForeignObject::layout):
  35893. * rendering/RenderPath.cpp:
  35894. (WebCore::RenderPath::layout):
  35895. * rendering/RenderSVGContainer.cpp:
  35896. (WebCore::RenderSVGContainer::layout):
  35897. * rendering/RenderSVGImage.cpp:
  35898. (WebCore::RenderSVGImage::layout):
  35899. * rendering/RenderSVGRoot.cpp:
  35900. (WebCore::RenderSVGRoot::layout):
  35901. * rendering/RenderSVGText.cpp:
  35902. (WebCore::RenderSVGText::layout):
  35903. 2010-09-27 Vangelis Kokkevis <vangelis@chromium.org>
  35904. Reviewed by James Robinson.
  35905. [chromium] Making LayerChromium's destructor virtual so that the appropriate
  35906. derived class destructors get called when the layer tree is taken down.
  35907. ContentLayerChromium and its derived types (ImageLayerChromium for now) will
  35908. free up the texture allocated for their contents upon destruction. To avoid
  35909. having the LayerRendererChromium destructor getting called before the layers
  35910. are destroyed and thus leaving their textures orphaned, the layers now hold
  35911. a ref counted pointer to the renderer that uses them.
  35912. https://bugs.webkit.org/show_bug.cgi?id=46139
  35913. * platform/graphics/chromium/ContentLayerChromium.cpp:
  35914. (WebCore::ContentLayerChromium::~ContentLayerChromium):
  35915. (WebCore::ContentLayerChromium::setLayerRenderer):
  35916. (WebCore::ContentLayerChromium::cleanupResources):
  35917. * platform/graphics/chromium/ContentLayerChromium.h:
  35918. * platform/graphics/chromium/LayerChromium.cpp:
  35919. (WebCore::LayerChromium::setLayerRenderer):
  35920. * platform/graphics/chromium/LayerChromium.h:
  35921. (WebCore::LayerChromium::layerRenderer):
  35922. * platform/graphics/chromium/LayerRendererChromium.cpp:
  35923. (WebCore::LayerRendererChromium::create):
  35924. (WebCore::LayerRendererChromium::deleteLayerTexture):
  35925. (WebCore::LayerRendererChromium::cleanupSharedObjects):
  35926. * platform/graphics/chromium/LayerRendererChromium.h:
  35927. 2010-09-27 Erik Arvidsson <arv@chromium.org>
  35928. Reviewed by Darin Adler.
  35929. Implement HTML 5's HTMLElement.classList property
  35930. https://bugs.webkit.org/show_bug.cgi?id=20709
  35931. This adds a DOMTokenList class that is used for the classList property. DOMTokenList uses a SpaceSplitString for fast
  35932. contains check. In standards mode the existing classNames is used but in quirks mode we use an internal SpaceSplitString
  35933. because classList is always case sensitive.
  35934. Tests: fast/dom/HTMLElement/class-list-gc.html
  35935. fast/dom/HTMLElement/class-list-quirks.html
  35936. fast/dom/HTMLElement/class-list.html
  35937. perf/class-list-remove.html
  35938. * Android.derived.jscbindings.mk:
  35939. * Android.derived.v8bindings.mk:
  35940. * Android.jscbindings.mk:
  35941. * CMakeLists.txt:
  35942. * DerivedSources.cpp:
  35943. * DerivedSources.make:
  35944. * GNUmakefile.am:
  35945. * WebCore.gypi:
  35946. * WebCore.pri:
  35947. * WebCore.pro:
  35948. * WebCore.vcproj/WebCore.vcproj:
  35949. * WebCore.xcodeproj/project.pbxproj:
  35950. * bindings/gobject/GNUmakefile.am:
  35951. * bindings/js/JSElementCustom.cpp:
  35952. (WebCore::JSElement::markChildren): Make sure that we keep the wrapper while the element is alive.
  35953. * bindings/scripts/CodeGeneratorJS.pm: DOMTokenList has a string indexed getter.
  35954. * bindings/scripts/CodeGeneratorV8.pm:
  35955. * bindings/v8/custom/V8DOMTokenListCustom.cpp: Added.
  35956. (WebCore::toV8):
  35957. * dom/Element.cpp:
  35958. (WebCore::Element::classList):
  35959. (WebCore::Element::optionalClassList):
  35960. * dom/Element.h:
  35961. * dom/ElementRareData.h: This now has an OwnPtr to a ClassList if the Element::classList is ever called.
  35962. * dom/SpaceSplitString.h:
  35963. (WebCore::SpaceSplitString::isNull):
  35964. * dom/StyledElement.cpp:
  35965. (WebCore::StyledElement::classAttributeChanged): Update the classList if it exists.
  35966. * dom/StyledElement.h:
  35967. * html/DOMTokenList.cpp: Added.
  35968. (WebCore::validateToken):
  35969. (WebCore::DOMTokenList::DOMTokenList):
  35970. (WebCore::DOMTokenList::ref):
  35971. (WebCore::DOMTokenList::deref):
  35972. (WebCore::DOMTokenList::length):
  35973. (WebCore::DOMTokenList::item):
  35974. (WebCore::DOMTokenList::contains):
  35975. (WebCore::DOMTokenList::containsInternal): The internal methods do no validation of the token.
  35976. (WebCore::DOMTokenList::add):
  35977. (WebCore::DOMTokenList::addInternal):
  35978. (WebCore::DOMTokenList::remove):
  35979. (WebCore::DOMTokenList::removeInternal):
  35980. (WebCore::DOMTokenList::toggle):
  35981. (WebCore::DOMTokenList::toString):
  35982. (WebCore::DOMTokenList::reset):
  35983. (WebCore::DOMTokenList::classNames):
  35984. * html/DOMTokenList.h: Added.
  35985. (WebCore::DOMTokenList::create):
  35986. (WebCore::DOMTokenList::element):
  35987. * html/DOMTokenList.idl: Added.
  35988. * html/HTMLElement.idl:
  35989. * page/DOMWindow.cpp:
  35990. * page/DOMWindow.idl:
  35991. 2010-09-27 Kenneth Russell <kbr@google.com>
  35992. Reviewed by James Robinson.
  35993. Add local triangulation of cubic curve control points
  35994. https://bugs.webkit.org/show_bug.cgi?id=45252
  35995. (Re-landing; I neglected to actually add the new files in
  35996. http://trac.webkit.org/changeset/68045 .)
  35997. Adding a localized triangulation algorithm which takes as input
  35998. the four control points of a cubic curve segment and provides both
  35999. triangles as well as the ability to walk the interior edges. The
  36000. latter will be used later to fill the interior of shapes bounded
  36001. by these cubic curves, quadratic curves and line segments.
  36002. * platform/graphics/gpu/LoopBlinnLocalTriangulator.cpp: Added.
  36003. (WebCore::LoopBlinnLocalTriangulator::Triangle::contains):
  36004. (WebCore::LoopBlinnLocalTriangulator::Triangle::nextVertex):
  36005. (WebCore::LoopBlinnLocalTriangulator::Triangle::indexForVertex):
  36006. (WebCore::LoopBlinnLocalTriangulator::Triangle::makeCounterClockwise):
  36007. (WebCore::LoopBlinnLocalTriangulator::LoopBlinnLocalTriangulator):
  36008. (WebCore::LoopBlinnLocalTriangulator::reset):
  36009. (WebCore::LoopBlinnLocalTriangulator::triangulate):
  36010. (WebCore::LoopBlinnLocalTriangulator::triangulateHelper):
  36011. (WebCore::LoopBlinnLocalTriangulator::addTriangle):
  36012. (WebCore::LoopBlinnLocalTriangulator::addInteriorVertex):
  36013. (WebCore::LoopBlinnLocalTriangulator::isSharedEdge):
  36014. * platform/graphics/gpu/LoopBlinnLocalTriangulator.h: Added.
  36015. (WebCore::LoopBlinnLocalTriangulator::Vertex::Vertex):
  36016. (WebCore::LoopBlinnLocalTriangulator::Vertex::xyCoordinates):
  36017. (WebCore::LoopBlinnLocalTriangulator::Vertex::klmCoordinates):
  36018. (WebCore::LoopBlinnLocalTriangulator::Vertex::set):
  36019. (WebCore::LoopBlinnLocalTriangulator::Vertex::end):
  36020. (WebCore::LoopBlinnLocalTriangulator::Vertex::setEnd):
  36021. (WebCore::LoopBlinnLocalTriangulator::Vertex::marked):
  36022. (WebCore::LoopBlinnLocalTriangulator::Vertex::setMarked):
  36023. (WebCore::LoopBlinnLocalTriangulator::Vertex::interior):
  36024. (WebCore::LoopBlinnLocalTriangulator::Vertex::setInterior):
  36025. (WebCore::LoopBlinnLocalTriangulator::Vertex::resetFlags):
  36026. (WebCore::LoopBlinnLocalTriangulator::Triangle::Triangle):
  36027. (WebCore::LoopBlinnLocalTriangulator::Triangle::getVertex):
  36028. (WebCore::LoopBlinnLocalTriangulator::Triangle::setVertices):
  36029. (WebCore::LoopBlinnLocalTriangulator::getVertex):
  36030. (WebCore::LoopBlinnLocalTriangulator::numberOfTriangles):
  36031. (WebCore::LoopBlinnLocalTriangulator::getTriangle):
  36032. (WebCore::LoopBlinnLocalTriangulator::numberOfInteriorVertices):
  36033. (WebCore::LoopBlinnLocalTriangulator::getInteriorVertex):
  36034. 2010-09-27 Chris Rogers <crogers@google.com>
  36035. Reviewed by Kenneth Russell.
  36036. Add AudioNode files
  36037. https://bugs.webkit.org/show_bug.cgi?id=45571
  36038. No new tests since audio API is not yet implemented.
  36039. * webaudio/AudioNode.cpp: Added.
  36040. (WebCore::AudioNode::AudioNode):
  36041. (WebCore::AudioNode::~AudioNode):
  36042. (WebCore::AudioNode::setType):
  36043. (WebCore::AudioNode::lazyInitialize):
  36044. (WebCore::AudioNode::addInput):
  36045. (WebCore::AudioNode::addOutput):
  36046. (WebCore::AudioNode::input):
  36047. (WebCore::AudioNode::output):
  36048. (WebCore::AudioNode::connect):
  36049. (WebCore::AudioNode::disconnect):
  36050. (WebCore::AudioNode::processIfNecessary):
  36051. (WebCore::AudioNode::pullInputs):
  36052. (WebCore::AudioNode::ref):
  36053. (WebCore::AudioNode::deref):
  36054. (WebCore::AudioNode::finishDeref):
  36055. (WebCore::AudioNode::printNodeCounts):
  36056. * webaudio/AudioNode.h: Added.
  36057. (WebCore::AudioNode::context):
  36058. (WebCore::AudioNode::type):
  36059. (WebCore::AudioNode::isInitialized):
  36060. (WebCore::AudioNode::numberOfInputs):
  36061. (WebCore::AudioNode::numberOfOutputs):
  36062. (WebCore::AudioNode::sampleRate):
  36063. (WebCore::AudioNode::checkNumberOfChannelsForInput):
  36064. * webaudio/AudioNode.idl: Added.
  36065. 2010-09-27 David Hyatt <hyatt@apple.com>
  36066. Reviewed by Sam Weinig.
  36067. https://bugs.webkit.org/show_bug.cgi?id=46665
  36068. Patch RenderView's layout and computeLogicalWidth/Height methods to be block-flow-aware.
  36069. Added fast/root-lr-basic.html
  36070. * rendering/RenderView.cpp:
  36071. (WebCore::RenderView::computeLogicalHeight):
  36072. (WebCore::RenderView::computeLogicalWidth):
  36073. (WebCore::RenderView::layout):
  36074. * rendering/RenderView.h:
  36075. (WebCore::RenderView::viewLogicalWidth):
  36076. (WebCore::RenderView::viewLogicalHeight):
  36077. 2010-09-24 Zhenyao Mo <zmo@google.com>
  36078. Reviewed by Kenneth Russell.
  36079. Hook up ANGLE with chromium --in-process-webgl port
  36080. https://bugs.webkit.org/show_bug.cgi?id=44309
  36081. * platform/graphics/GraphicsContext3D.h: Move Angle stuff inside MAC only section.
  36082. 2010-09-27 David Hyatt <hyatt@apple.com>
  36083. Reviewed by Sam Weinig.
  36084. https://bugs.webkit.org/show_bug.cgi?id=46659
  36085. Patch the width/height/x/y calls in layoutBlock() to be their logical equivalents instead.
  36086. * rendering/RenderBlock.cpp:
  36087. (WebCore::RenderBlock::layoutBlock):
  36088. 2010-09-27 David Hyatt <hyatt@apple.com>
  36089. Reviewed by Sam Weinig.
  36090. https://bugs.webkit.org/show_bug.cgi?id=46649, fix failing layout tests.
  36091. The implementation of setting the before/after margins was wrong and poking the wrong margin values.
  36092. Once I made them set the correct values, it revealed that one of the new block flow tests wasn't
  36093. actually working. In order to fix it, I had to make the block direction margin computation actually
  36094. use the containing block's block-flow in order to return the right answer. This involved cleaning
  36095. up computeBlockDirectionMargins to be more like computeInlineDirectionMargins.
  36096. fast/css/logical-property-resolution.html also caught the bug. Its results are now correct.
  36097. * rendering/RenderBlock.cpp:
  36098. (WebCore::RenderBlock::adjustPositionedBlock):
  36099. (WebCore::RenderBlock::determineHorizontalPosition):
  36100. (WebCore::RenderBlock::layoutBlockChild):
  36101. (WebCore::RenderBlock::insertFloatingObject):
  36102. * rendering/RenderBox.cpp:
  36103. (WebCore::RenderBox::setMarginBeforeUsing):
  36104. (WebCore::RenderBox::setMarginAfterUsing):
  36105. (WebCore::RenderBox::computeLogicalWidth):
  36106. (WebCore::RenderBox::computeInlineDirectionMargins):
  36107. (WebCore::RenderBox::computeLogicalHeight):
  36108. (WebCore::RenderBox::computeBlockDirectionMargins):
  36109. * rendering/RenderBox.h:
  36110. * rendering/RenderFlexibleBox.cpp:
  36111. (WebCore::RenderFlexibleBox::layoutHorizontalBox):
  36112. (WebCore::RenderFlexibleBox::layoutVerticalBox):
  36113. * rendering/RenderObject.h:
  36114. * rendering/RenderTable.cpp:
  36115. (WebCore::RenderTable::computeLogicalWidth):
  36116. * rendering/RenderTableRow.cpp:
  36117. (WebCore::RenderTableRow::layout):
  36118. * rendering/style/RenderStyle.cpp:
  36119. (WebCore::RenderStyle::marginBeforeUsing):
  36120. (WebCore::RenderStyle::marginAfterUsing):
  36121. * rendering/style/RenderStyle.h:
  36122. 2010-09-14 Zhenyao Mo <zmo@google.com>
  36123. Reviewed by Kenneth Russell.
  36124. Textures and renderbuffers should be detached first before deletion if they are attached to framebuffers
  36125. https://bugs.webkit.org/show_bug.cgi?id=43942
  36126. Test: fast/canvas/webgl/object-deletion-behaviour.html
  36127. * html/canvas/WebGLBuffer.cpp:
  36128. (WebCore::WebGLBuffer::deleteObjectImpl): Delete the object only once.
  36129. * html/canvas/WebGLFramebuffer.cpp: Use RefPtr for attachment WebGLObjects.
  36130. (WebCore::WebGLFramebuffer::WebGLFramebuffer):
  36131. (WebCore::WebGLFramebuffer::removeAttachment): Remove an attachment data ref.
  36132. (WebCore::WebGLFramebuffer::onAttachedObjectChange):
  36133. (WebCore::WebGLFramebuffer::getColorBufferFormat):
  36134. (WebCore::WebGLFramebuffer::deleteObjectImpl):
  36135. (WebCore::WebGLFramebuffer::initializeRenderbuffers):
  36136. * html/canvas/WebGLFramebuffer.h: Declare removeAttachment().
  36137. * html/canvas/WebGLObject.cpp:
  36138. (WebCore::WebGLObject::setObject): Make it protected and can only be called when initializing.
  36139. * html/canvas/WebGLObject.h:
  36140. (WebCore::WebGLObject::onDetached): Fix a bug.
  36141. (WebCore::WebGLObject::isDeleted): Expose the delete flag.
  36142. * html/canvas/WebGLProgram.cpp:
  36143. (WebCore::WebGLProgram::deleteObjectImpl): Detach shaders when deleting a program.
  36144. * html/canvas/WebGLRenderbuffer.cpp:
  36145. (WebCore::WebGLRenderbuffer::deleteObjectImpl): Delete the object only once.
  36146. * html/canvas/WebGLRenderingContext.cpp:
  36147. (WebCore::WebGLRenderingContext::deleteFramebuffer): Bind to internal fbo when deleting the currently-bound fbo.
  36148. (WebCore::WebGLRenderingContext::deleteRenderbuffer): Remove renderbuffer from currently-bound fbo upon deletion.
  36149. (WebCore::WebGLRenderingContext::deleteTexture): Remove texture from currently-bound fbo upon deletion.
  36150. (WebCore::WebGLRenderingContext::useProgram): Fix a condition.
  36151. * html/canvas/WebGLShader.cpp:
  36152. (WebCore::WebGLShader::deleteObjectImpl): Delete the object only once.
  36153. * html/canvas/WebGLTexture.cpp:
  36154. (WebCore::WebGLTexture::deleteObjectImpl): Ditto.
  36155. 2010-09-27 Ryosuke Niwa <rniwa@webkit.org>
  36156. Reviewed by Antonio Gomes.
  36157. stateStyle (@EditorCommand.cpp) should ask EditingBehavior for platform specific behavior
  36158. https://bugs.webkit.org/show_bug.cgi?id=41989
  36159. queryCommandState returns true even when in the mixed state
  36160. https://bugs.webkit.org/show_bug.cgi?id=46382
  36161. Fixed stateStyle so that it calls selectionStartHasStyle when shouldToggleStyleBasedOnStartOfSelection
  36162. is true (Mac platforms) and calls selectionHasStyle otherwise (non-Mac platforms).
  36163. Also fixed queryCommandState so that it only returns true when the state is TrueTriState
  36164. as supposed to returning true whenever the state is not FalseTriState. New behavior matches that of
  36165. other browsers such as Firefox and Internet Explorer.
  36166. * dom/Document.cpp:
  36167. (WebCore::Document::queryCommandState):
  36168. * editing/EditorCommand.cpp:
  36169. (WebCore::executeToggleStyle):
  36170. (WebCore::stateStyle):
  36171. 2010-09-27 David Hyatt <hyatt@apple.com>
  36172. Reviewed by Dan Bernstein.
  36173. https://bugs.webkit.org/show_bug.cgi?id=46647, add getters/setters for the logical position of a box.
  36174. Also made all of the logicalWidth/Height getters/setters inline for performance.
  36175. * rendering/RenderBox.cpp:
  36176. * rendering/RenderBox.h:
  36177. (WebCore::RenderBox::logicalLeft):
  36178. (WebCore::RenderBox::logicalTop):
  36179. (WebCore::RenderBox::logicalWidth):
  36180. (WebCore::RenderBox::logicalHeight):
  36181. (WebCore::RenderBox::setLogicalLeft):
  36182. (WebCore::RenderBox::setLogicalTop):
  36183. (WebCore::RenderBox::setLogicalWidth):
  36184. (WebCore::RenderBox::setLogicalHeight):
  36185. (WebCore::RenderBox::setLogicalLocation):
  36186. 2010-09-27 David Hyatt <hyatt@apple.com>
  36187. Reviewed by Sam Weinig.
  36188. https://bugs.webkit.org/show_bug.cgi?id=46639, make computeLogicalHeight block-flow-aware.
  36189. This patch does the following:
  36190. (1) Makes computeLogicalHeight block-flow-aware (patching all helper functions as needed to make this work).
  36191. (2) Makes block flow roots (blocks whose parent has a different block-flow directionality) establish new block formatting contexts.
  36192. (This causes them to not collapse their margins with their children and to avoid floats).
  36193. (3) Patch all occurrences of setHeight in block and line layout to setLogicalHeight so that height doesn't get incorrectly
  36194. overwritten for lr/rl block-flow. This is necessary to write tests that examine the width/height of the blocks.
  36195. Added multiple new tests in fast/blockflow.
  36196. fast/css/logical-property-resolution gives the correct results now.
  36197. * rendering/RenderBlock.cpp:
  36198. (WebCore::RenderBlock::MarginInfo::MarginInfo):
  36199. (WebCore::RenderBlock::layoutBlock):
  36200. (WebCore::RenderBlock::expandsToEncloseOverhangingFloats):
  36201. (WebCore::RenderBlock::adjustFloatingBlock):
  36202. (WebCore::RenderBlock::collapseMargins):
  36203. (WebCore::RenderBlock::clearFloatsIfNeeded):
  36204. (WebCore::RenderBlock::determineHorizontalPosition):
  36205. (WebCore::RenderBlock::handleBottomOfBlock):
  36206. (WebCore::RenderBlock::layoutBlockChildren):
  36207. (WebCore::RenderBlock::layoutBlockChild):
  36208. (WebCore::RenderBlock::positionNewFloatOnLine):
  36209. (WebCore::RenderBlock::newLine):
  36210. (WebCore::RenderBlock::logicalLeftOffsetForLine):
  36211. (WebCore::RenderBlock::logicalRightOffsetForContent):
  36212. (WebCore::RenderBlock::logicalRightOffsetForLine):
  36213. (WebCore::RenderBlock::getClearDelta):
  36214. (WebCore::RenderBlock::layoutColumns):
  36215. * rendering/RenderBlock.h:
  36216. * rendering/RenderBlockLineLayout.cpp:
  36217. (WebCore::RenderBlock::computeBlockDirectionPositionsForLine):
  36218. (WebCore::RenderBlock::layoutInlineChildren):
  36219. (WebCore::RenderBlock::determineStartPosition):
  36220. (WebCore::RenderBlock::fitBelowFloats):
  36221. * rendering/RenderBox.cpp:
  36222. (WebCore::RenderBox::marginBefore):
  36223. (WebCore::RenderBox::marginBeforeUsing):
  36224. (WebCore::RenderBox::marginAfter):
  36225. (WebCore::RenderBox::marginAfterUsing):
  36226. (WebCore::RenderBox::setMarginBefore):
  36227. (WebCore::RenderBox::setMarginAfter):
  36228. (WebCore::RenderBox::setMarginBeforeUsing):
  36229. (WebCore::RenderBox::setMarginAfterUsing):
  36230. (WebCore::RenderBox::computeLogicalHeight):
  36231. (WebCore::RenderBox::computeLogicalHeightUsing):
  36232. (WebCore::RenderBox::computePercentageLogicalHeight):
  36233. (WebCore::RenderBox::computeReplacedHeightUsing):
  36234. (WebCore::RenderBox::availableLogicalHeight):
  36235. (WebCore::RenderBox::availableLogicalHeightUsing):
  36236. (WebCore::RenderBox::computeBlockDirectionMargins):
  36237. (WebCore::RenderBox::avoidsFloats):
  36238. * rendering/RenderBox.h:
  36239. (WebCore::RenderBox::contentLogicalWidth):
  36240. (WebCore::RenderBox::contentLogicalHeight):
  36241. (WebCore::RenderBox::stretchesToViewHeight):
  36242. (WebCore::RenderBox::availableLogicalWidth):
  36243. (WebCore::RenderBox::availableWidth):
  36244. (WebCore::RenderBox::availableHeight):
  36245. (WebCore::RenderBox::isBlockFlowRoot):
  36246. * rendering/RenderTable.cpp:
  36247. (WebCore::RenderTable::computeLogicalWidth):
  36248. 2010-09-27 Mario Sanchez Prada <msanchez@igalia.com>
  36249. Reviewed by Chris Fleizach.
  36250. [Gtk] Adjust atk_text_get_text_at_offset to account for bullets/numbers in list items
  36251. https://bugs.webkit.org/show_bug.cgi?id=45381
  36252. Ensure list markers are consistently used in the Atk wrapper.
  36253. This patch does two things (both needed to fix the bug): It
  36254. improves the way list items markers are exposed through the Atk
  36255. Wrapper (by exposing the exact text in the marker, including the
  36256. marker suffix, if any) and makes sure the marker is consistently
  36257. considered and treated in those methods of the AtkText interface
  36258. that would need it (like atk_text_get_character_count or
  36259. atk_text_get_run_attributes, for instance).
  36260. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  36261. (textForObject):
  36262. Append/prepend list marker when needed.
  36263. (webkit_accessible_text_get_text):
  36264. Use the new function markerTextWithSuffix() to expose a more
  36265. accurate value.
  36266. (accessibilityObjectLength):
  36267. Consider list items marker to return the length of an object,
  36268. if needed. Also, added some extra checks.
  36269. (webkit_accessible_text_get_character_count):
  36270. Just delegate on accessibilityObjectLength, to make it
  36271. cleaner and more consistent.
  36272. * rendering/RenderListItem.cpp:
  36273. (WebCore::RenderListItem::markerTextWithSuffix):
  36274. New public function to return a single string with the
  36275. marker associated to the item and its suffix, considering
  36276. text direction (LTR or RTL).
  36277. * rendering/RenderListItem.h:
  36278. * rendering/RenderListMarker.cpp:
  36279. (WebCore::RenderListMarker::suffix):
  36280. New public function to return a String with the suffix
  36281. associated to the marker.
  36282. * rendering/RenderListMarker.h:
  36283. 2010-09-27 Sheriff Bot <webkit.review.bot@gmail.com>
  36284. Unreviewed, rolling out r68389.
  36285. http://trac.webkit.org/changeset/68389
  36286. https://bugs.webkit.org/show_bug.cgi?id=46637
  36287. test_shell is crashing on chromium Win (Requested by loislo on
  36288. #webkit).
  36289. * inspector/InspectorTimelineAgent.cpp:
  36290. (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
  36291. (WebCore::InspectorTimelineAgent::pushGCEventRecords):
  36292. (WebCore::InspectorTimelineAgent::didGC):
  36293. (WebCore::InspectorTimelineAgent::~InspectorTimelineAgent):
  36294. (WebCore::InspectorTimelineAgent::willCallFunction):
  36295. (WebCore::InspectorTimelineAgent::didCallFunction):
  36296. (WebCore::InspectorTimelineAgent::willDispatchEvent):
  36297. (WebCore::InspectorTimelineAgent::didDispatchEvent):
  36298. (WebCore::InspectorTimelineAgent::willLayout):
  36299. (WebCore::InspectorTimelineAgent::didLayout):
  36300. (WebCore::InspectorTimelineAgent::willRecalculateStyle):
  36301. (WebCore::InspectorTimelineAgent::didRecalculateStyle):
  36302. (WebCore::InspectorTimelineAgent::willPaint):
  36303. (WebCore::InspectorTimelineAgent::didPaint):
  36304. (WebCore::InspectorTimelineAgent::willWriteHTML):
  36305. (WebCore::InspectorTimelineAgent::didWriteHTML):
  36306. (WebCore::InspectorTimelineAgent::didInstallTimer):
  36307. (WebCore::InspectorTimelineAgent::didRemoveTimer):
  36308. (WebCore::InspectorTimelineAgent::willFireTimer):
  36309. (WebCore::InspectorTimelineAgent::didFireTimer):
  36310. (WebCore::InspectorTimelineAgent::willChangeXHRReadyState):
  36311. (WebCore::InspectorTimelineAgent::didChangeXHRReadyState):
  36312. (WebCore::InspectorTimelineAgent::willLoadXHR):
  36313. (WebCore::InspectorTimelineAgent::didLoadXHR):
  36314. (WebCore::InspectorTimelineAgent::willEvaluateScript):
  36315. (WebCore::InspectorTimelineAgent::didEvaluateScript):
  36316. (WebCore::InspectorTimelineAgent::didScheduleResourceRequest):
  36317. (WebCore::InspectorTimelineAgent::willSendResourceRequest):
  36318. (WebCore::InspectorTimelineAgent::willReceiveResourceData):
  36319. (WebCore::InspectorTimelineAgent::didReceiveResourceData):
  36320. (WebCore::InspectorTimelineAgent::willReceiveResourceResponse):
  36321. (WebCore::InspectorTimelineAgent::didReceiveResourceResponse):
  36322. (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
  36323. (WebCore::InspectorTimelineAgent::didMarkTimeline):
  36324. (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
  36325. (WebCore::InspectorTimelineAgent::didMarkLoadEvent):
  36326. (WebCore::InspectorTimelineAgent::reset):
  36327. (WebCore::InspectorTimelineAgent::resetFrontendProxyObject):
  36328. (WebCore::InspectorTimelineAgent::addRecordToTimeline):
  36329. (WebCore::InspectorTimelineAgent::setHeapSizeStatistic):
  36330. (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
  36331. (WebCore::InspectorTimelineAgent::pushCurrentRecord):
  36332. * inspector/InspectorTimelineAgent.h:
  36333. (WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry):
  36334. (WebCore::InspectorTimelineAgent::GCEvent::GCEvent):
  36335. 2010-09-27 Kinuko Yasuda <kinuko@google.com>
  36336. Reviewed by Adam Barth.
  36337. [Cleanup] Add create method to FileSystemCallbacks to get rid of naked new's
  36338. https://bugs.webkit.org/show_bug.cgi?id=46561
  36339. Also cleanup the callbacks layering to pass AsyncFileSystemCallbacks
  36340. object to LocalFileSystem::requestFileSystem (rather than
  36341. FileSystemCallback and ErrorCallback) so that all the callbacks class
  36342. we pass from WebCore to WebKit/chromium/src will be
  36343. AsyncFileSystemCallbacks.
  36344. No new tests; this patch is only for cleanup and there should be no functionality changes.
  36345. * fileapi/DOMFileSystem.cpp:
  36346. (WebCore::DOMFileSystem::getMetadata):
  36347. (WebCore::DOMFileSystem::move):
  36348. (WebCore::DOMFileSystem::copy):
  36349. (WebCore::DOMFileSystem::remove):
  36350. (WebCore::DOMFileSystem::getParent):
  36351. (WebCore::DOMFileSystem::getFile):
  36352. (WebCore::DOMFileSystem::getDirectory):
  36353. (WebCore::DOMFileSystem::createWriter):
  36354. (WebCore::DOMFileSystem::readDirectory):
  36355. * fileapi/FileSystemCallbacks.cpp:
  36356. (WebCore::EntryCallbacks::create): Added.
  36357. (WebCore::EntriesCallbacks::create): Added.
  36358. (WebCore::FileSystemCallbacks::create): Added.
  36359. (WebCore::MetadataCallbacks::create): Added.
  36360. (WebCore::FileWriterCallbacks::create): Added.
  36361. (WebCore::VoidCallbacks::create): Added.
  36362. * fileapi/FileSystemCallbacks.h:
  36363. * fileapi/LocalFileSystem.cpp:
  36364. (WebCore::openFileSystem):
  36365. (WebCore::LocalFileSystem::requestFileSystem): Changed to take
  36366. AsyncFileSystemCallbacks as (a) callback argument(s).
  36367. * fileapi/LocalFileSystem.h:
  36368. * page/DOMWindow.cpp:
  36369. (WebCore::DOMWindow::requestFileSystem): Made a corresponding change
  36370. to LocalFileSystem::requestFileSystem.
  36371. * workers/WorkerContext.cpp:
  36372. (WebCore::WorkerContext::requestFileSystem): Made a corresponding change
  36373. to LocalFileSystem::requestFileSystem.
  36374. 2010-09-27 Abhishek Arya <inferno@chromium.org>
  36375. Reviewed by Dave Hyatt.
  36376. Fix memory safety issue during positioning list marker as a result of assuming
  36377. that list item's parent can always be casted to a RenderBox. The display of the parent
  36378. can be manipluated using css as Inline which causes a bad cast.
  36379. https://bugs.webkit.org/show_bug.cgi?id=46384
  36380. Test: fast/lists/parent-box-not-box-crash.html
  36381. * rendering/RenderListItem.cpp:
  36382. (WebCore::RenderListItem::positionListMarker):
  36383. * rendering/RenderListMarker.cpp:
  36384. (WebCore::RenderListMarker::layout):
  36385. 2010-09-19 Martin Robinson <mrobinson@igalia.com>
  36386. Reviewed by Gustavo Noronha Silva.
  36387. [GTK] Wrong font instantiated from an unknown font family
  36388. https://bugs.webkit.org/show_bug.cgi?id=36548
  36389. When FontConfig returns a match for a particular family name, ensure that
  36390. the family name matches the configured alias for the original pattern. This
  36391. should prevent selecting FontConfig fallbacks in situations where the next
  36392. font on the CSS fallback list should be used. This requires moving all FontConfig
  36393. matching logic into FontCacheFreeType and out of FontPlatformDataFreeType.
  36394. It should be there anyway.
  36395. Test: platform/gtk/fonts/font-family-fallback.html
  36396. * platform/graphics/cairo/FontCacheFreeType.cpp:
  36397. (WebCore::FontCache::platformInit): Simply call FcInit here instead of
  36398. deferring to FontPlatformData.
  36399. (WebCore::FontCache::getLastResortFallbackFont): The last resort font should
  36400. be a fallback font or else the new FontConfig logic may result in null font data
  36401. if it cannot find an appropriate match.
  36402. (WebCore::getFamilyNameStringFromFontDescriptionAndFamily): Added. Helper function
  36403. which converts WebCore fallback names into ones that FontConfig understands.
  36404. (WebCore::isFallbackFontAllowed): Added. Helper function that allows FontConfig
  36405. fallbacks to be used when generic family names are specified.
  36406. (WebCore::FontCache::createFontPlatformData): Move all FontConfig matching logic here
  36407. and prevent against the situation where FontConfig returns a different family name
  36408. than we asked for.
  36409. * platform/graphics/cairo/FontCustomPlatformData.cpp: Updated FontPlatformData constructor.
  36410. * platform/graphics/cairo/FontPlatformDataFreeType.cpp: Update the constructor to
  36411. take the FcPattern returned and the original FontDescription. We no longer need the other
  36412. arguments, because the selection is now done by FontCacheFreeType.
  36413. (WebCore::FontPlatformData::FontPlatformData): Remove the FontConfig selection logic from
  36414. this code.
  36415. * platform/graphics/cairo/FontPlatformDataFreeType.h: Updated method definitions.
  36416. * platform/graphics/cairo/GlyphPageTreeNodeCairo.cpp: Fixed includes.
  36417. * platform/graphics/cairo/PlatformRefPtrCairo.cpp: Added a PlatformRefPtr specialization
  36418. for cairo_font_face_t.
  36419. (WTF::refPlatformPtr): Added.
  36420. (WTF::derefPlatformPtr): Added.
  36421. * platform/graphics/cairo/PlatformRefPtrCairo.h: Updated method definitons.
  36422. * platform/graphics/cairo/SimpleFontDataCairo.cpp:
  36423. (WebCore::SimpleFontData::smallCapsFontData): Fixed FontPlatformData constructor.
  36424. 2010-09-27 Philippe Normand <pnormand@igalia.com>
  36425. Reviewed by Martin Robinson.
  36426. [GTK] Doesn't build with gtk+ 2.14
  36427. https://bugs.webkit.org/show_bug.cgi?id=46565
  36428. Fixed the build for GTK+ 2.14 by adding backward compatible
  36429. a backward-compatible function for gtk_menu_item_get_label and a
  36430. utility function to create a blank mouse cursor. Those functions
  36431. are used in the fullscreen video controller and in the DRT
  36432. EventSender.
  36433. * platform/gtk/GtkVersioning.c:
  36434. (gdk_window_get_root_coords):
  36435. (blankCursor):
  36436. (gtk_menu_item_get_label):
  36437. * platform/gtk/GtkVersioning.h:
  36438. 2010-09-23 Stephen White <senorblanco@chromium.org>
  36439. Reviewed by James Robinson.
  36440. [CHROMIUM] Fix for canvas clearRect() with clipping active, when
  36441. --enable-accelerated-2d-canvas is on.
  36442. https://bugs.webkit.org/show_bug.cgi?id=46412
  36443. Covered by layout test http://philip.html5.org/tests/canvas/suite/tests/2d.clearRect.clip.html.
  36444. * platform/graphics/skia/GraphicsContextSkia.cpp:
  36445. (WebCore::GraphicsContext::clearRect):
  36446. Check if a clip is active during clipRect(), and force to software
  36447. if so. Force a readback in this case, since clearRect() is not
  36448. compatible with mixed-mode rendering.
  36449. * platform/graphics/skia/PlatformContextSkia.cpp:
  36450. (WebCore::PlatformContextSkia::canvasClipApplied):
  36451. * platform/graphics/skia/PlatformContextSkia.h:
  36452. Implement accessor to check if a clip is active.
  36453. 2010-09-14 Zhenyao Mo <zmo@google.com>
  36454. Reviewed by Kenneth Russell.
  36455. drawElements with count=0 and offset = 0 should not generate GL error or crash
  36456. https://bugs.webkit.org/show_bug.cgi?id=45769
  36457. * html/canvas/WebGLRenderingContext.cpp: Deal with count=0 case.
  36458. (WebCore::WebGLRenderingContext::validateIndexArrayConservative):
  36459. (WebCore::WebGLRenderingContext::validateIndexArrayPrecise):
  36460. (WebCore::WebGLRenderingContext::drawElements):
  36461. 2010-09-16 Zhenyao Mo <zmo@google.com>
  36462. Reviewed by Kenneth Russell.
  36463. Fold getString into getParameter and implement new queries
  36464. https://bugs.webkit.org/show_bug.cgi?id=40321
  36465. Test: fast/canvas/webgl/gl-getstring.html
  36466. * html/canvas/WebGLRenderingContext.cpp: Merge getString enums into getParameter.
  36467. (WebCore::WebGLRenderingContext::getParameter):
  36468. * html/canvas/WebGLRenderingContext.h: Remove getString.
  36469. * html/canvas/WebGLRenderingContext.idl: Remove getString.
  36470. 2010-09-24 Zhenyao Mo <zmo@google.com>
  36471. Reviewed by Kenneth Russell.
  36472. gl-teximage fails on chrome mac bot
  36473. https://bugs.webkit.org/show_bug.cgi?id=45332
  36474. Add support for alpha first pixel formats.
  36475. * platform/graphics/GraphicsContext3D.cpp:
  36476. (WebCore::doPacking):
  36477. * platform/graphics/GraphicsContext3D.h:
  36478. * platform/graphics/cg/GraphicsContext3DCG.cpp:
  36479. (WebCore::GraphicsContext3D::getImageData):
  36480. 2010-09-17 Yury Semikhatsky <yurys@chromium.org>
  36481. Reviewed by Pavel Feldman.
  36482. Web Inspector: implement go-to-line feature
  36483. https://bugs.webkit.org/show_bug.cgi?id=45166
  36484. * English.lproj/localizedStrings.js:
  36485. * inspector/front-end/GoToLineDialog.js: Added.
  36486. (WebInspector.GoToLineDialog):
  36487. (WebInspector.GoToLineDialog.show):
  36488. (WebInspector.GoToLineDialog.prototype._hide):
  36489. (WebInspector.GoToLineDialog.prototype._onKeyDown):
  36490. (WebInspector.GoToLineDialog.prototype._onBlur):
  36491. * inspector/front-end/ScriptsPanel.js:
  36492. (WebInspector.ScriptsPanel.prototype._registerShortcuts):
  36493. (WebInspector.ScriptsPanel.prototype.jumpToPreviousSearchResult):
  36494. (WebInspector.ScriptsPanel.prototype.showGoToLineDialog):
  36495. * inspector/front-end/goToLineDialog.css: Added.
  36496. (.go-to-line-dialog):
  36497. * inspector/front-end/inspector.html:
  36498. 2010-09-24 Pavel Podivilov <podivilov@chromium.org>
  36499. Reviewed by Pavel Feldman.
  36500. Web Inspector: add XHR breakpoints sidebar pane to front-end
  36501. https://bugs.webkit.org/show_bug.cgi?id=46483
  36502. * English.lproj/localizedStrings.js:
  36503. * WebCore.gypi:
  36504. * inspector/InspectorController.cpp:
  36505. (WebCore::InspectorController::instrumentWillSendXMLHttpRequestImpl):
  36506. * inspector/InspectorTimelineAgent.h:
  36507. * inspector/front-end/BreakpointManager.js:
  36508. (WebInspector.BreakpointManager):
  36509. (WebInspector.BreakpointManager.prototype._setBreakpointOnBackend):
  36510. (WebInspector.BreakpointManager.prototype.createXHRBreakpoint):
  36511. (WebInspector.BreakpointManager.prototype._xhrBreakpointRemoved):
  36512. (WebInspector.Breakpoint.prototype.compareTo):
  36513. (WebInspector.XHRBreakpoint):
  36514. (WebInspector.XHRBreakpoint.prototype.get enabled):
  36515. (WebInspector.XHRBreakpoint.prototype.set enabled):
  36516. (WebInspector.XHRBreakpoint.prototype.get url):
  36517. (WebInspector.XHRBreakpoint.prototype.formatLabel):
  36518. (WebInspector.XHRBreakpoint.prototype.compareTo):
  36519. (WebInspector.XHRBreakpoint.prototype.remove):
  36520. (WebInspector.XHRBreakpoint.prototype._setOnBackend.didSet):
  36521. (WebInspector.XHRBreakpoint.prototype._setOnBackend):
  36522. (WebInspector.XHRBreakpoint.prototype._removeFromBackend):
  36523. * inspector/front-end/BreakpointsSidebarPane.js:
  36524. (WebInspector.XHRBreakpointsSidebarPane):
  36525. (WebInspector.XHRBreakpointsSidebarPane.prototype._showEditBreakpointDialog):
  36526. (WebInspector.XHRBreakpointsSidebarPane.prototype._hideEditBreakpointDialog):
  36527. (WebInspector.BreakpointItem.prototype.compareTo):
  36528. (WebInspector.BreakpointItem.prototype._checkboxClicked):
  36529. (WebInspector.BreakpointItem.prototype._enableChanged):
  36530. (WebInspector.BreakpointItem.prototype._breakpointClicked):
  36531. (WebInspector.XHRBreakpointItem):
  36532. * inspector/front-end/CallStackSidebarPane.js:
  36533. (WebInspector.CallStackSidebarPane.prototype.updateStatus.formatters.s):
  36534. (WebInspector.CallStackSidebarPane.prototype.updateStatus.append):
  36535. (WebInspector.CallStackSidebarPane.prototype.updateStatus):
  36536. * inspector/front-end/DOMAgent.js:
  36537. (WebInspector.DOMBreakpoint.prototype.compareTo):
  36538. * inspector/front-end/Images/paneAddButtons.png: Added.
  36539. * inspector/front-end/ScriptsPanel.js:
  36540. (WebInspector.ScriptsPanel):
  36541. (WebInspector.ScriptsPanel.prototype.reset):
  36542. * inspector/front-end/WebKit.qrc:
  36543. * inspector/front-end/inspector.css:
  36544. (.pane > .title > button.add):
  36545. (.pane > .title > button.add:hover):
  36546. (.pane > .title > button.add:active):
  36547. (.pane > .body .breakpoint-condition):
  36548. * inspector/front-end/inspector.js:
  36549. (WebInspector.createXHRBreakpointsSidebarPane.breakpointAdded):
  36550. (WebInspector.createXHRBreakpointsSidebarPane):
  36551. 2010-09-27 Pavel Feldman <pfeldman@chromium.org>
  36552. Reviewed by Timothy Hatcher.
  36553. Web Inspector: Merge AbstractTimelinePanel into ResourcesPanel.
  36554. https://bugs.webkit.org/show_bug.cgi?id=46612
  36555. I am refactoring resources panel and would like to merge abstract
  36556. one back in since it is not use anywhere else.
  36557. * WebCore.gypi:
  36558. * WebCore.vcproj/WebCore.vcproj:
  36559. * inspector/front-end/AbstractTimelinePanel.js: Removed.
  36560. * inspector/front-end/ResourceCategory.js:
  36561. (WebInspector.ResourceCategory):
  36562. (WebInspector.ResourceCategory.prototype.toString):
  36563. * inspector/front-end/ResourcesPanel.js:
  36564. (WebInspector.ResourcesPanel):
  36565. (WebInspector.ResourcesPanel.prototype.get items):
  36566. (WebInspector.ResourcesPanel.prototype.createInterface):
  36567. (WebInspector.ResourcesPanel.prototype.createFilterPanel.createFilterElement):
  36568. (WebInspector.ResourcesPanel.prototype.createFilterPanel):
  36569. (WebInspector.ResourcesPanel.prototype.showCategory):
  36570. (WebInspector.ResourcesPanel.prototype.hideCategory):
  36571. (WebInspector.ResourcesPanel.prototype.filter):
  36572. (WebInspector.ResourcesPanel.prototype._updateFilter):
  36573. (WebInspector.ResourcesPanel.prototype._updateDividersLabelBarPosition):
  36574. (WebInspector.ResourcesPanel.prototype.get needsRefresh):
  36575. (WebInspector.ResourcesPanel.prototype.set needsRefresh):
  36576. (WebInspector.ResourcesPanel.prototype.refreshIfNeeded):
  36577. (WebInspector.ResourcesPanel.prototype.resize):
  36578. (WebInspector.ResourcesPanel.prototype.invalidateAllItems):
  36579. (WebInspector.ResourcesPanel.prototype.get calculator):
  36580. (WebInspector.ResourcesPanel.prototype.set calculator):
  36581. (WebInspector.ResourcesPanel.prototype.addItem):
  36582. (WebInspector.ResourcesPanel.prototype.removeItem):
  36583. (WebInspector.ResourcesPanel.prototype.refreshItem):
  36584. (WebInspector.ResourcesPanel.prototype.revealAndSelectItem):
  36585. (WebInspector.ResourcesPanel.prototype.sortItems):
  36586. (WebInspector.ResourcesPanel.prototype.adjustScrollPosition):
  36587. (WebInspector.ResourcesPanel.prototype.addEventDivider):
  36588. (WebInspector.ResourcesPanel.prototype.hideEventDividers):
  36589. (WebInspector.ResourcesPanel.prototype.showEventDividers):
  36590. (WebInspector.ResourcesPanel.prototype.show):
  36591. (WebInspector.ResourcesPanel.prototype.refresh):
  36592. (WebInspector.ResourcesPanel.prototype.reset):
  36593. (WebInspector.ResourcesPanel.prototype.updateGraphDividersIfNeeded):
  36594. (WebInspector.ResourcesPanel.prototype.updateMainViewWidth):
  36595. (WebInspector.ResourceBaseCalculator):
  36596. (WebInspector.ResourceBaseCalculator.prototype.computeSummaryValues):
  36597. (WebInspector.ResourceBaseCalculator.prototype.computeBarGraphPercentages):
  36598. (WebInspector.ResourceBaseCalculator.prototype.computeBarGraphLabels):
  36599. (WebInspector.ResourceBaseCalculator.prototype.get boundarySpan):
  36600. (WebInspector.ResourceBaseCalculator.prototype.updateBoundaries):
  36601. (WebInspector.ResourceBaseCalculator.prototype.reset):
  36602. (WebInspector.ResourceBaseCalculator.prototype._value):
  36603. (WebInspector.ResourceBaseCalculator.prototype.formatValue):
  36604. (WebInspector.ResourceTimeCalculator):
  36605. (WebInspector.ResourceTransferSizeCalculator):
  36606. * inspector/front-end/WebKit.qrc:
  36607. * inspector/front-end/inspector.html:
  36608. 2010-09-27 Ragner Magalhaes <ragner.magalhaes@openbossa.org>
  36609. Reviewed by Kenneth Rohde Christiansen.
  36610. [Qt] New input style for Qt Mobile theme
  36611. https://bugs.webkit.org/show_bug.cgi?id=46461
  36612. Rename themeQtMaemo5.css to themeQtMobile.css since it is the theme for all Qt mobile platform.
  36613. Adjust new input style.
  36614. * WebCore.pri:
  36615. * css/themeQtMobile.css: Renamed from css/themeQtMaemo5.css
  36616. (select):
  36617. (select:disabled):
  36618. (select:active):
  36619. (select:active:disabled):
  36620. (textarea):
  36621. (textarea:disabled):
  36622. (textarea:active):
  36623. * platform/qt/RenderThemeQt.cpp:
  36624. (WebCore::RenderThemeQt::extraDefaultStyleSheet): Renamed themeQtMaemo5UserAgentStyleSheet to themeQtMobileUserAgentStyleSheet to match renamed file.
  36625. 2010-09-27 Girish Ramakrishnan <girish@forwardbias.in>
  36626. Reviewed by Antonio Gomes.
  36627. [Qt] Enable local rendering of NPAPI plugins on Maemo6.
  36628. https://bugs.webkit.org/show_bug.cgi?id=46618
  36629. * WebCore.pro:
  36630. * bridge/npapi.h:
  36631. * plugins/PluginView.cpp:
  36632. (WebCore::PluginView::setValue):
  36633. (WebCore::PluginView::PluginView):
  36634. * plugins/PluginView.h:
  36635. * plugins/qt/PluginViewQt.cpp:
  36636. (WebCore::PluginView::updatePluginWidget):
  36637. (WebCore::PluginView::paint):
  36638. (WebCore::PluginView::platformGetValueStatic):
  36639. 2010-09-27 Ilya Tikhonovsky <loislo@chromium.org>
  36640. Reviewed by Pavel Feldman.
  36641. Web Inspector: divide InspectorTimelineAgent into two parts.
  36642. We have an idea to split InspectorTimelineAgent into two parts.
  36643. The first part is an instrumentation API which can be used for DOM breakpoints too.
  36644. The other is the real Timeline agent which do a transformation of raw data into timeline data.
  36645. https://bugs.webkit.org/show_bug.cgi?id=46611
  36646. * inspector/InspectorTimelineAgent.cpp:
  36647. (WebCore::InspectorTimelineAgent2::TimelineRecordEntry::TimelineRecordEntry):
  36648. (WebCore::InspectorTimelineAgent2::GCEvent::GCEvent):
  36649. (WebCore::InspectorTimelineAgent2::InspectorTimelineAgent2):
  36650. (WebCore::InspectorTimelineAgent2::~InspectorTimelineAgent2):
  36651. (WebCore::InspectorTimelineAgent2::didGC):
  36652. (WebCore::InspectorTimelineAgent2::addRecordToTimeline):
  36653. (WebCore::InspectorTimelineAgent2::setHeapSizeStatistic):
  36654. (WebCore::InspectorTimelineAgent2::startNewRecord):
  36655. (WebCore::InspectorTimelineAgent2::completeCurrentRecord):
  36656. (WebCore::InspectorTimelineAgent2::asyncRecord):
  36657. (WebCore::InspectorTimelineAgent2::atomicRecord):
  36658. (WebCore::InspectorTimelineAgent2::getTopRecordData):
  36659. (WebCore::InspectorTimelineAgent2::reset):
  36660. (WebCore::InspectorTimelineAgent2::resetFrontendProxyObject):
  36661. (WebCore::InspectorTimelineAgent2::pushGCEventRecords):
  36662. (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
  36663. (WebCore::InspectorTimelineAgent::~InspectorTimelineAgent):
  36664. (WebCore::InspectorTimelineAgent::reset):
  36665. (WebCore::InspectorTimelineAgent::willCallFunction):
  36666. (WebCore::InspectorTimelineAgent::didCallFunction):
  36667. (WebCore::InspectorTimelineAgent::willDispatchEvent):
  36668. (WebCore::InspectorTimelineAgent::didDispatchEvent):
  36669. (WebCore::InspectorTimelineAgent::willLayout):
  36670. (WebCore::InspectorTimelineAgent::didLayout):
  36671. (WebCore::InspectorTimelineAgent::willRecalculateStyle):
  36672. (WebCore::InspectorTimelineAgent::didRecalculateStyle):
  36673. (WebCore::InspectorTimelineAgent::willPaint):
  36674. (WebCore::InspectorTimelineAgent::didPaint):
  36675. (WebCore::InspectorTimelineAgent::willWriteHTML):
  36676. (WebCore::InspectorTimelineAgent::didWriteHTML):
  36677. (WebCore::InspectorTimelineAgent::didInstallTimer):
  36678. (WebCore::InspectorTimelineAgent::didRemoveTimer):
  36679. (WebCore::InspectorTimelineAgent::willFireTimer):
  36680. (WebCore::InspectorTimelineAgent::didFireTimer):
  36681. (WebCore::InspectorTimelineAgent::willChangeXHRReadyState):
  36682. (WebCore::InspectorTimelineAgent::didChangeXHRReadyState):
  36683. (WebCore::InspectorTimelineAgent::willLoadXHR):
  36684. (WebCore::InspectorTimelineAgent::didLoadXHR):
  36685. (WebCore::InspectorTimelineAgent::willEvaluateScript):
  36686. (WebCore::InspectorTimelineAgent::didEvaluateScript):
  36687. (WebCore::InspectorTimelineAgent::didScheduleResourceRequest):
  36688. (WebCore::InspectorTimelineAgent::willSendResourceRequest):
  36689. (WebCore::InspectorTimelineAgent::willReceiveResourceData):
  36690. (WebCore::InspectorTimelineAgent::didReceiveResourceData):
  36691. (WebCore::InspectorTimelineAgent::willReceiveResourceResponse):
  36692. (WebCore::InspectorTimelineAgent::didReceiveResourceResponse):
  36693. (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
  36694. (WebCore::InspectorTimelineAgent::didMarkTimeline):
  36695. (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
  36696. (WebCore::InspectorTimelineAgent::didMarkLoadEvent):
  36697. (WebCore::InspectorTimelineAgent::resetFrontendProxyObject):
  36698. * inspector/InspectorTimelineAgent.h:
  36699. 2010-09-27 Alexander Pavlov <apavlov@chromium.org>
  36700. Reviewed by Sam Weinig.
  36701. Implement CSSStyleRule::setSelectorText()
  36702. This involves removing the "selectorText" "setter raises(DOMException)" clause from the IDL files,
  36703. since the setter no longer raises the exception, as per http://dev.w3.org/csswg/cssom/#dom-cssstylerule-selectortext
  36704. https://bugs.webkit.org/show_bug.cgi?id=46487
  36705. Test: fast/css/css-set-selector-text.html
  36706. * css/CSSPageRule.idl:
  36707. * css/CSSStyleRule.cpp:
  36708. (WebCore::CSSStyleRule::setSelectorText):
  36709. * css/CSSStyleRule.h:
  36710. * css/CSSStyleRule.idl:
  36711. 2010-09-27 Zoltan Herczeg <zherczeg@webkit.org>
  36712. Reviewed by Dirk Schulze.
  36713. Filter builder should be able to follow the filter object dependencies
  36714. https://bugs.webkit.org/show_bug.cgi?id=45812
  36715. To propagate the changes of a primitive object, a data structure
  36716. is needed which stores the dependent primitive objects. (Those
  36717. who use the resulting image.) This data structure is implemented
  36718. as a hash map, which contains primitive object and set of primitive
  36719. objects <key,value> pairs. The hash map is able to follow the
  36720. dynamic topology changes.
  36721. * rendering/RenderSVGResourceFilter.cpp:
  36722. (WebCore::RenderSVGResourceFilter::buildPrimitives):
  36723. * rendering/RenderSVGResourceFilterPrimitive.h:
  36724. (WebCore::RenderSVGResourceFilterPrimitive::renderName):
  36725. (WebCore::RenderSVGResourceFilterPrimitive::isSVGResourceFilterPrimitive):
  36726. * svg/graphics/filters/SVGFilterBuilder.cpp:
  36727. (WebCore::SVGFilterBuilder::SVGFilterBuilder):
  36728. (WebCore::SVGFilterBuilder::appendEffectToEffectReferences):
  36729. (WebCore::SVGFilterBuilder::clearEffects):
  36730. * svg/graphics/filters/SVGFilterBuilder.h:
  36731. (WebCore::SVGFilterBuilder::getEffectReferences):
  36732. (WebCore::SVGFilterBuilder::addBuiltinEffects):
  36733. 2010-09-27 Andreas Kling <andreas.kling@nokia.com>
  36734. Rubber-stamped by Kenneth Rohde Christiansen.
  36735. [Qt] 32-bit Flash crashes on repeated SetWindow calls
  36736. https://bugs.webkit.org/show_bug.cgi?id=46616
  36737. Re-enable PluginQuirkDontCallSetWindowMoreThanOnce for Qt on x86 Unix.
  36738. We incorrectly thought this was fixed in Flash 10, but it turns out it
  36739. was just never broken on 64-bit.
  36740. * plugins/PluginPackage.cpp:
  36741. (WebCore::PluginPackage::determineQuirks):
  36742. 2010-09-27 İsmail Dönmez <ismail@namtrac.org>
  36743. Reviewed by Andreas Kling.
  36744. Add PluginView::setJavaScriptPaused(bool) stub for WinCE.
  36745. * platform/qt/TemporaryLinkStubsQt.cpp:
  36746. (PluginView::setJavaScriptPaused):
  36747. 2010-09-27 Gyuyoung Kim <gyuyoung.kim@samsung.com>
  36748. Reviewed by Dirk Schulze.
  36749. Bug 46607 - [WML] Fix a build break when WML is enabled
  36750. Fix a build break when WML is enabled.
  36751. * wml/WMLElement.cpp: Include HTMLParserIdioms.h
  36752. (WebCore::WMLElement::parseMappedAttribute): Add additional parameter to invoke parseHTMLInteger() function.
  36753. 2010-09-26 Patrick Gansterer <paroga@webkit.org>
  36754. Reviewed by Adam Barth.
  36755. Remove dead code and fix header includes in ResourceHandleWin
  36756. https://bugs.webkit.org/show_bug.cgi?id=46479
  36757. Also add missing member varibale from r68167.
  36758. * platform/network/ResourceHandle.h:
  36759. * platform/network/ResourceHandleInternal.h:
  36760. (WebCore::ResourceHandleInternal::ResourceHandleInternal):
  36761. * platform/network/win/ResourceHandleWin.cpp:
  36762. (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
  36763. (WebCore::ResourceHandle::~ResourceHandle):
  36764. (WebCore::ResourceHandle::onRequestComplete):
  36765. * platform/network/win/ResourceHandleWin.h: Removed.
  36766. 2010-09-26 Patrick Gansterer <paroga@webkit.org>
  36767. Reviewed by Adam Barth.
  36768. Add WTF::StringHasher::createBlobHash
  36769. https://bugs.webkit.org/show_bug.cgi?id=46514
  36770. Add this function for hashing FormElementKey and QualifiedNameComponents.
  36771. * dom/Document.cpp:
  36772. (WebCore::FormElementKeyHash::hash):
  36773. * dom/QualifiedName.h:
  36774. (WebCore::hashComponents):
  36775. (WebCore::QualifiedNameHash::hash):
  36776. 2010-09-26 David Hyatt <hyatt@apple.com>
  36777. Reviewed by Sam Weinig.
  36778. https://bugs.webkit.org/show_bug.cgi?id=46519
  36779. Convert the implementation of computeLogicalWidth to work with block-flow.
  36780. * rendering/RenderBlock.cpp:
  36781. (WebCore::RenderBlock::determineHorizontalPosition):
  36782. Patched to call the new computeMarginsInContainingBlockInlineDirection. Eventually determineHorizontalPosition will
  36783. be placing children along the inline direction of the containing block, and those children may have mismatched
  36784. block flows. The new computeMarginsInContainingBlockInlineDirection function is designed to handle that.
  36785. * rendering/RenderBox.cpp:
  36786. (WebCore::RenderBox::marginStart):
  36787. (WebCore::RenderBox::marginStartUsing):
  36788. (WebCore::RenderBox::marginEnd):
  36789. (WebCore::RenderBox::marginEndUsing):
  36790. (WebCore::RenderBox::setMarginStart):
  36791. (WebCore::RenderBox::setMarginEnd):
  36792. (WebCore::RenderBox::setMarginStartUsing):
  36793. (WebCore::RenderBox::setMarginEndUsing):
  36794. Helpers that allow for marginStart/End access and that also allow for marginStart/End to be computed based off another
  36795. element's block-flow and direction (typically the containing block).
  36796. (WebCore::RenderBox::computeBorderBoxLogicalWidth):
  36797. (WebCore::RenderBox::computeBorderBoxLogicalHeight):
  36798. (WebCore::RenderBox::computeContentBoxLogicalWidth):
  36799. (WebCore::RenderBox::computeContentBoxLogicalHeight):
  36800. Patched to use logical border/padding widths and heights.
  36801. (WebCore::RenderBox::perpendicularContainingBlockLogicalHeight):
  36802. A function for returning the available logical height of a perpendicular containing block. If a child has vertical
  36803. text for example and its block-flow is "lr", its available logical width is determined by the logical
  36804. height of the containing block when that containing block is perpendicular, e.g. "tb".
  36805. (WebCore::RenderBox::computeLogicalWidth):
  36806. (WebCore::RenderBox::computeLogicalWidthUsing):
  36807. Patched to be block-flow-aware and to use logical width values everywhere.
  36808. (WebCore::RenderBox::sizesToIntrinsicLogicalWidth):
  36809. Patched to use logical widths.
  36810. (WebCore::RenderBox::computeMarginsInContainingBlockInlineDirection):
  36811. A new function that is directionally abstract and that can handle the computation of margins in the containing
  36812. block's inline direction. This function is written such that a perpendicular child block flow can still be
  36813. pushed to the center, left or right in the containing block's inline direction.
  36814. (WebCore::RenderBox::computePositionedLogicalWidth):
  36815. This function is still largely unpatched. A future patch will address positioend elements.
  36816. * rendering/RenderBox.h:
  36817. (WebCore::RenderBox::stretchesToMinIntrinsicLogicalWidth):
  36818. * rendering/RenderFieldset.h:
  36819. (WebCore::RenderFieldset::stretchesToMinIntrinsicLogicalWidth):
  36820. Renames.
  36821. * rendering/RenderTable.cpp:
  36822. (WebCore::RenderTable::computeLogicalWidth):
  36823. Renames, but not converted yet. Tables will happen in a future patch.
  36824. * rendering/style/RenderStyle.cpp:
  36825. (WebCore::RenderStyle::marginStartUsing):
  36826. (WebCore::RenderStyle::marginEndUsing):
  36827. * rendering/style/RenderStyle.h:
  36828. Added helpers for accessing marginStart and End using another style's direction and block flow (typically will
  36829. be the containing block's).
  36830. fast/block/basic/016.html changed, since centering now always awards the extra pixel for odd widths to the end margin
  36831. instead of the right margin. This is a progression.
  36832. fast/css/logical-property-values.html is now reporting garbage results, which is expected now that some of the core layout
  36833. functions have been patched.
  36834. Horizontal block flows are untestable still, since the normal layout process incorrectly blows away any computed height values.
  36835. 2010-09-26 Antonio Gomes <agomes@rim.comg>
  36836. Reviewed by Kenneth Rohde Christiansen.
  36837. DRT/Mac nodesFromRect support
  36838. [Mac][DRT] Implement LayoutTestController::nodesFromRect
  36839. https://bugs.webkit.org/show_bug.cgi?id=46580
  36840. Symbol files updated.
  36841. * WebCore.exp.in: Added symbols to Document::nodesFromRect and bits of JSDocument now
  36842. needed in WebKit/mac.
  36843. * WebCore.xcodeproj/project.pbxproj: Set both JSDocument.h and JSNodeList as private headers
  36844. now that they are referred in WebKit/mac.
  36845. 2010-09-26 Adam Barth <abarth@webkit.org>
  36846. Reviewed by Dimitri Glazkov.
  36847. Implement location.origin and HTMLAnchorElement.origin
  36848. https://bugs.webkit.org/show_bug.cgi?id=46558
  36849. These attributes are part of my proposed URL API:
  36850. https://docs.google.com/document/edit?id=1r_VTFKApVOaNIkocrg0z-t7lZgzisTuGTXkdzAk4gLU&hl=en
  36851. Hixie thought we should implement as much of this API as makes sense on
  36852. Location and HTMLAnchorElement as well. I'm starting with the origin
  36853. attribute, because that seems like the biggest bang for the buck.
  36854. Tests: fast/dom/anchor-origin.html
  36855. http/tests/misc/location-origin.html
  36856. * WebCore.xcodeproj/project.pbxproj:
  36857. * html/HTMLAnchorElement.cpp:
  36858. (WebCore::HTMLAnchorElement::origin):
  36859. * html/HTMLAnchorElement.h:
  36860. * html/HTMLAnchorElement.idl:
  36861. * page/Location.cpp:
  36862. (WebCore::Location::origin):
  36863. * page/Location.h:
  36864. * page/Location.idl:
  36865. 2010-09-26 Sheriff Bot <webkit.review.bot@gmail.com>
  36866. Unreviewed, rolling out r68343.
  36867. http://trac.webkit.org/changeset/68343
  36868. https://bugs.webkit.org/show_bug.cgi?id=46581
  36869. broke GTK+ (Requested by kling on #webkit).
  36870. * html/canvas/CanvasRenderingContext2D.cpp:
  36871. (WebCore::CanvasRenderingContext2D::setFont):
  36872. 2010-09-25 Antonio Gomes <agomes@rim.com>
  36873. Reviewed by Kenneth Christiansen and Andreas Kling.
  36874. document.nodesFromRect() needs to be removed from Document.idl
  36875. https://bugs.webkit.org/show_bug.cgi?id=46492
  36876. As discussed with Sam Weinig on IRC, it was decided to removed
  36877. nodesFromRect() from the Document.idl, and that way, not exposing
  36878. it to Web content.
  36879. Reason: there is no plan to make it standard at the moment, and at the
  36880. very least, the method should had been originally added with the "webkit"
  36881. prefix, which was not the case.
  36882. * dom/Document.idl:
  36883. 2010-09-26 Renata Hodovan <reni@inf.u-szeged.hu>
  36884. Reviewed by Dirk Schulze.
  36885. SVGFEBlendElement doesn't support dynamic invalidation, when attributes change.
  36886. https://bugs.webkit.org/show_bug.cgi?id=46464
  36887. Tests: svg/dynamic-updates/SVGFEBlendElement-dom-in-attr.html
  36888. svg/dynamic-updates/SVGFEBlendElement-dom-in2-attr.html
  36889. svg/dynamic-updates/SVGFEBlendElement-dom-mode-attr.html
  36890. svg/dynamic-updates/SVGFEBlendElement-svgdom-in-prop.html
  36891. svg/dynamic-updates/SVGFEBlendElement-svgdom-in2-prop.html
  36892. svg/dynamic-updates/SVGFEBlendElement-svgdom-mode-prop.html
  36893. * svg/SVGFEBlendElement.cpp:
  36894. (WebCore::SVGFEBlendElement::svgAttributeChanged):
  36895. * svg/SVGFEBlendElement.h:
  36896. 2010-09-26 Andreas Kling <andreas.kling@nokia.com>
  36897. Reviewed by Dan Bernstein.
  36898. Canvas: Crash when setting a font with size in 'ex' units
  36899. https://bugs.webkit.org/show_bug.cgi?id=46538
  36900. update() the style's font after setting the style's font description.
  36901. Needed because CSSPrimitiveValue::computeLengthDouble() later assumes
  36902. that the style's font is properly initialized (for xHeight().)
  36903. Fixes crash on IE test center's canvas-text-font-002 test.
  36904. * html/canvas/CanvasRenderingContext2D.cpp:
  36905. (WebCore::CanvasRenderingContext2D::setFont):
  36906. 2010-09-26 Kwang Yul Seo <skyul@company100.net>
  36907. Reviewed by Eric Seidel.
  36908. [BREWMP] Don't pass PassOwnPtr in makeAllDirectories
  36909. https://bugs.webkit.org/show_bug.cgi?id=42058
  36910. Change makeAllDirectories to take a raw FileMgr pointer
  36911. because it is not safe to pass PassOwnPtr recursively.
  36912. * platform/brew/FileSystemBrew.cpp:
  36913. (WebCore::makeAllDirectories):
  36914. 2010-09-26 Robert Hogan <robert@webkit.org>
  36915. Reviewed by Andreas Kling.
  36916. [Qt] fix http/tests/uri/escaped-entity.html
  36917. Replace invalid encodings with the appropriate escaped entity.
  36918. See also http://bugreports.qt.nokia.com/browse/QTBUG-13412
  36919. https://bugs.webkit.org/show_bug.cgi?id=45245
  36920. * platform/text/qt/TextCodecQt.cpp:
  36921. (WebCore::TextCodecQt::encode):
  36922. 2010-09-25 Abhishek Arya <inferno@chromium.org>
  36923. Reviewed by Nikolas Zimmermann.
  36924. Fix the macro to bail out after setting the SVG style to 'initial'. Check that color is
  36925. SVGColor before calling colorFromSVGColorCSSValue which makes sure we don't set invalid
  36926. color. Also, doing the static cast in the caller and keeping the function
  36927. colorFromSVGColorCSSValue clean to accept only take SVGColor objects.
  36928. https://bugs.webkit.org/show_bug.cgi?id=46471
  36929. Test: svg/css/invalid-color-crash.svg
  36930. * css/SVGCSSStyleSelector.cpp:
  36931. (WebCore::colorFromSVGColorCSSValue):
  36932. (WebCore::CSSStyleSelector::applySVGProperty):
  36933. 2010-09-25 Ryosuke Niwa <rniwa@webkit.org>
  36934. Reviewed by Tony Chang.
  36935. FormatBlockCommand's modifyRange and doApply should be merged
  36936. https://bugs.webkit.org/show_bug.cgi?id=46504
  36937. Isolated the code in doApply to insert and remove lists for single paragraph into doApplyForSingleParagraph.
  36938. Merged the code in modifyRange into doApply and cleaned up.
  36939. No new tests are added since this is a cleanup.
  36940. * editing/FormatBlockCommand.cpp:
  36941. (WebCore::FormatBlockCommand::doApply): Merged with modifyRange; calls doApplyForSingleParagraph.
  36942. (WebCore::FormatBlockCommand::doApplyForSingleParagraph): Added.
  36943. * editing/FormatBlockCommand.h:
  36944. 2010-09-25 Dan Bernstein <mitz@apple.com>
  36945. Reviewed by John Sullivan.
  36946. <rdar://problem/8478160> Null deref in InlineBox::height()
  36947. https://bugs.webkit.org/show_bug.cgi?id=45344
  36948. Test: fast/css/first-line-parent-style-different.html
  36949. * rendering/RenderObject.cpp:
  36950. (WebCore::RenderObject::firstLineStyleSlowCase): Set the pseudo style bit on the RenderStyle
  36951. which is going to supply the first-line style rather than on this object’s RenderStyle. The
  36952. styles may differ.
  36953. 2010-09-25 Dan Bernstein <mitz@apple.com>
  36954. Reviewed by John Sullivan.
  36955. <rdar://problem/8478182> Make canHyphenate() return false for unsupported locales
  36956. No change in functionality, hence no new test.
  36957. * platform/text/cf/HyphenationCF.cpp:
  36958. (WebCore::::createValueForKey): Return 0 if hyphenation is not available for the locale.
  36959. (WebCore::cfLocaleCache): Moved the definition of the cache from lastHyphenLocation() to
  36960. this new getter to allow canHyphenate() to share it.
  36961. (WebCore::canHyphenate): Now returns true only if hyphenation is available.
  36962. (WebCore::lastHyphenLocation): Added an assertion.
  36963. 2010-09-25 Andreas Kling <andreas.kling@nokia.com>
  36964. Reviewed by Kenneth Rohde Christiansen.
  36965. [Qt] GraphicsContext::setLineDash() should scale dashOffset to penWidth
  36966. https://bugs.webkit.org/show_bug.cgi?id=46548
  36967. Fixes incorrect rendering of <http://www.carto.net/svg/samples/animated_bustrack.shtml>
  36968. This is covered by existing layout tests which need to be rebaselined.
  36969. * platform/graphics/qt/GraphicsContextQt.cpp:
  36970. (WebCore::GraphicsContext::setLineDash):
  36971. 2010-09-24 Sam Weinig <sam@webkit.org>
  36972. Rubber-stamped by Dan Bernstein.
  36973. Fix accidental increase in the size of InlineBox by using a bit
  36974. field to indicate that a bool should only take up 1 bit.
  36975. * rendering/InlineBox.h:
  36976. 2010-09-24 Simon Fraser <simon.fraser@apple.com>
  36977. Reviewed by Sam Weinig.
  36978. Accelerated transitions do not suspend/resume properly.
  36979. https://bugs.webkit.org/show_bug.cgi?id=43792
  36980. (1) Fix regression from r68233, where if an animation affected two
  36981. properties, only one would animate. The testcase tests this.
  36982. (2) Fix a flash at the end of an animation or transition that has been
  36983. paused and resumed. The flash occurred because we used CAAnimation's
  36984. timeOffset when resuming to push the start of the animation into
  36985. the past. However, timeOffset does not play nicely with fill modes,
  36986. causing a single frame of animation with the element in its unanimated state.
  36987. Fixed this by offsetting the beginTime into the past, rather than setting
  36988. timeOffset. Normally we submit animations with beginTime == 0, and rely
  36989. on CA assigning a beginTime when the animation is committed. This beginTime
  36990. is then passed to AnimationController to sync hardware and software animations.
  36991. However, since the code now assigns beginTimes in the past (on resume),
  36992. we now have to denote whether we've done this, and send an appropriate
  36993. timestamp back to AnimationController.
  36994. (3) Finally, the patch removes PropertyAnimationPair and just uses LayerPropertyAnimation
  36995. instead. This is just cleanup.
  36996. Test: animations/opacity-transform-animation.html
  36997. * platform/graphics/mac/GraphicsLayerCA.h: Remove PropertyAnimationPair,
  36998. and change AnimationsMap to store a vector of LayerPropertyAnimation.
  36999. New method, animationDidStart(), is called from the -animationDidStart: callback.
  37000. * platform/graphics/mac/GraphicsLayerCA.mm:
  37001. (-[WebAnimationDelegate animationDidStart:]): Just call m_graphicsLayer->animationDidStart()
  37002. now.
  37003. (WebCore::animationIdentifier): We need to pass in the property, to fix (1)
  37004. (WebCore::GraphicsLayerCA::moveOrCopyAnimationsForProperty): Copy the WebKitAnimationBeginTimeSet
  37005. value, if present.
  37006. (WebCore::GraphicsLayerCA::animationDidStart): Call notifyAnimationStarted() on the client,
  37007. after testing if we set a non-zero beginTime on this particular animation.
  37008. (WebCore::GraphicsLayerCA::updateLayerAnimations): Change to use LayerPropertyAnimation.
  37009. (WebCore::GraphicsLayerCA::setCAAnimationOnLayer): Set value for WebKitAnimationBeginTimeSetKey
  37010. if we have a non-zero timeOffset. Make animationID an NSString, to avoid several conversions.
  37011. (WebCore::GraphicsLayerCA::removeCAAnimationFromLayer): Make animationID an NSString, to
  37012. avoid several conversions.
  37013. (WebCore::copyAnimationProperties): Copy WebKitAnimationBeginTimeSetKey if present.
  37014. (WebCore::GraphicsLayerCA::pauseCAAnimationOnLayer): Make animationID an NSString, to avoid
  37015. several conversions.
  37016. 2010-09-24 Andreas Kling <andreas.kling@nokia.com>
  37017. Reviewed by Kenneth Rohde Christiansen.
  37018. SVG: Avoid calling pow() in genericParseNumber() unless necessary
  37019. https://bugs.webkit.org/show_bug.cgi?id=46537
  37020. 0.4% speedup on <http://themaninblue.com/experiment/AnimationBenchmark/svg/>
  37021. * svg/SVGParserUtilities.cpp:
  37022. (WebCore::genericParseNumber): Only call pow() when we have an exponent.
  37023. 2010-09-24 Martin Robinson <mrobinson@igalia.com>
  37024. Reviewed by Gustavo Noronha Silva.
  37025. [GTK] opening local files on win32
  37026. https://bugs.webkit.org/show_bug.cgi?id=31066
  37027. This is tested by changes to the testmimehandling API test.
  37028. * platform/network/soup/ResourceHandleSoup.cpp: Properly convert the GContentType
  37029. of a file into a mime type. This is important for non-Unix platforms.
  37030. 2010-09-24 Pawel Hajdan <phajdan.jr@chromium.org>
  37031. Reviewed by Dumitru Daniliuc.
  37032. Move the implementation of chromium_vfs to webkit for POSIX.
  37033. This allows us to link Chrome with system-provided SQLite on Linux.
  37034. See also http://code.google.com/p/chromium/issues/detail?id=22208.
  37035. https://bugs.webkit.org/show_bug.cgi?id=45416
  37036. No new tests.
  37037. * platform/sql/chromium/SQLiteFileSystemChromiumPosix.cpp:
  37038. (sqliteErrorFromPosixError):
  37039. (releaseLockInfo):
  37040. (releaseOpenInfo):
  37041. (findLockInfo):
  37042. (chromiumCheckReservedLock):
  37043. (rangeLock):
  37044. (chromiumLock):
  37045. (closePendingFds):
  37046. (chromiumUnlock):
  37047. (chromiumCloseNoLock):
  37048. (chromiumClose):
  37049. (chromiumCheckReservedLockNoop):
  37050. (chromiumLockNoop):
  37051. (chromiumUnlockNoop):
  37052. (seekAndRead):
  37053. (chromiumRead):
  37054. (seekAndWrite):
  37055. (chromiumWrite):
  37056. (syncWrapper):
  37057. (chromiumSync):
  37058. (chromiumTruncate):
  37059. (chromiumFileSize):
  37060. (chromiumFileControl):
  37061. (chromiumSectorSize):
  37062. (chromiumDeviceCharacteristics):
  37063. (fillInChromiumFile):
  37064. (findReusableFd):
  37065. (chromiumOpen):
  37066. (chromiumDelete):
  37067. (chromiumAccess):
  37068. (chromiumFullPathname):
  37069. (chromiumDlOpen):
  37070. (chromiumDlError):
  37071. (chromiumDlSym):
  37072. (chromiumDlClose):
  37073. (chromiumRandomness):
  37074. (chromiumSleep):
  37075. (chromiumCurrentTime):
  37076. (chromiumGetLastError):
  37077. (WebCore::SQLiteFileSystem::registerSQLiteVFS):
  37078. 2010-09-24 Andreas Kling <andreas.kling@nokia.com>
  37079. Reviewed by Dirk Schulze.
  37080. SVG: Make SVGLength's stringToLengthType() stricter and faster
  37081. https://bugs.webkit.org/show_bug.cgi?id=46066
  37082. Only accept unit names immediately following the numeric value.
  37083. This behavior matches Gecko.
  37084. Also, using String::endsWith("foo") caused a temporary WTF::String to be created.
  37085. Avoid this by comparing characters directly.
  37086. 10.5% speedup on <http://data.xeoh.net/svg.benchmark/>
  37087. Test: svg/custom/invalid-length-units.html
  37088. * svg/SVGLength.cpp:
  37089. (WebCore::stringToLengthType):
  37090. (WebCore::SVGLength::setValueAsString):
  37091. 2010-09-24 Luiz Agostini <luiz.agostini@openbossa.org>
  37092. Reviewed by Kenneth Rohde Christiansen.
  37093. Keep viewport information in Document
  37094. https://bugs.webkit.org/show_bug.cgi?id=46385
  37095. The viewport meta data (layout viewport, scale) needs to be set again when bringing
  37096. back a page from the page cache. As the viewport metadata is only retrieved while parsing
  37097. the document, we need to store it in the Document class.
  37098. Test: fast/viewport/viewport-128.html
  37099. * WebCore.xcodeproj/project.pbxproj:
  37100. * dom/Document.cpp:
  37101. (WebCore::Document::processViewport):
  37102. (WebCore::Document::setInPageCache):
  37103. * dom/Document.h:
  37104. (WebCore::Document::viewportArguments):
  37105. 2010-09-24 David Hyatt <hyatt@apple.com>
  37106. Reviewed by Sam Weinig.
  37107. https://bugs.webkit.org/show_bug.cgi?id=46496, rename containingBlockWidthForContent to
  37108. containingBlockLogicalWidthForContent.
  37109. * rendering/RenderBlock.cpp:
  37110. (WebCore::RenderBlock::localCaretRect):
  37111. * rendering/RenderBox.cpp:
  37112. (WebCore::RenderBox::containingBlockLogicalWidthForContent):
  37113. (WebCore::RenderBox::computeLogicalWidth):
  37114. (WebCore::RenderBox::computeReplacedWidthUsing):
  37115. * rendering/RenderBox.h:
  37116. * rendering/RenderBoxModelObject.cpp:
  37117. (WebCore::RenderBoxModelObject::relativePositionOffsetX):
  37118. (WebCore::RenderBoxModelObject::containingBlockLogicalWidthForContent):
  37119. * rendering/RenderBoxModelObject.h:
  37120. 2010-09-24 David Hyatt <hyatt@apple.com>
  37121. Reviewed by Sam Weinig.
  37122. https://bugs.webkit.org/show_bug.cgi?id=46489, rename the lineWidth and left/RightOffset methods
  37123. to reflect that they will be logical.
  37124. * rendering/RenderBlock.cpp:
  37125. (WebCore::RenderBlock::determineHorizontalPosition):
  37126. (WebCore::RenderBlock::leftSelectionOffset):
  37127. (WebCore::RenderBlock::rightSelectionOffset):
  37128. (WebCore::RenderBlock::positionNewFloats):
  37129. (WebCore::RenderBlock::logicalLeftOffsetForContent):
  37130. (WebCore::RenderBlock::logicalLeftOffsetForLine):
  37131. (WebCore::RenderBlock::logicalRightOffsetForContent):
  37132. (WebCore::RenderBlock::logicalRightOffsetForLine):
  37133. (WebCore::RenderBlock::availableLogicalWidthForLine):
  37134. (WebCore::RenderBlock::getClearDelta):
  37135. * rendering/RenderBlock.h:
  37136. (WebCore::RenderBlock::logicalRightOffsetForLine):
  37137. (WebCore::RenderBlock::logicalLeftOffsetForLine):
  37138. * rendering/RenderBlockLineLayout.cpp:
  37139. (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
  37140. (WebCore::RenderBlock::layoutInlineChildren):
  37141. (WebCore::RenderBlock::skipTrailingWhitespace):
  37142. (WebCore::RenderBlock::skipLeadingWhitespace):
  37143. (WebCore::RenderBlock::fitBelowFloats):
  37144. (WebCore::RenderBlock::findNextLineBreak):
  37145. (WebCore::RenderBlock::checkLinesForTextOverflow):
  37146. * rendering/RenderBox.cpp:
  37147. (WebCore::RenderBox::containingBlockWidthForContent):
  37148. * rendering/RenderFlexibleBox.cpp:
  37149. (WebCore::RenderFlexibleBox::applyLineClamp):
  37150. * rendering/RenderListItem.cpp:
  37151. (WebCore::RenderListItem::positionListMarker):
  37152. * rendering/RenderTable.cpp:
  37153. (WebCore::RenderTable::computeLogicalWidth):
  37154. * rendering/RootInlineBox.cpp:
  37155. (WebCore::RootInlineBox::selectionTop):
  37156. 2010-09-24 Abhishek Arya <inferno@chromium.org>
  37157. Reviewed by Simon Fraser.
  37158. Comply with spec by generalizing container on which transforms can be applied.
  37159. https://bugs.webkit.org/show_bug.cgi?id=46485
  37160. Already covered by existing tests.
  37161. * rendering/RenderObject.cpp:
  37162. (WebCore::RenderObject::getTransformFromContainer):
  37163. 2010-09-24 David Hyatt <hyatt@apple.com>
  37164. Reviewed by Simon Fraser.
  37165. https://bugs.webkit.org/show_bug.cgi?id=46482, rename the various prefWidth functions to use
  37166. preferredLogicalWidth.
  37167. * rendering/AutoTableLayout.cpp:
  37168. (WebCore::AutoTableLayout::recalcColumn):
  37169. (WebCore::AutoTableLayout::computePreferredLogicalWidths):
  37170. (WebCore::AutoTableLayout::calcEffectiveWidth):
  37171. * rendering/AutoTableLayout.h:
  37172. * rendering/FixedTableLayout.cpp:
  37173. (WebCore::FixedTableLayout::calcWidthArray):
  37174. (WebCore::FixedTableLayout::computePreferredLogicalWidths):
  37175. * rendering/FixedTableLayout.h:
  37176. * rendering/RenderBlock.cpp:
  37177. (WebCore::RenderBlock::layoutBlockChildren):
  37178. (WebCore::RenderBlock::layoutPositionedObjects):
  37179. (WebCore::RenderBlock::getClearDelta):
  37180. (WebCore::RenderBlock::computePreferredLogicalWidths):
  37181. (WebCore::RenderBlock::computeInlinePreferredLogicalWidths):
  37182. (WebCore::RenderBlock::computeBlockPreferredLogicalWidths):
  37183. * rendering/RenderBlock.h:
  37184. * rendering/RenderBlockLineLayout.cpp:
  37185. (WebCore::dirtyLineBoxesForRenderer):
  37186. (WebCore::RenderBlock::layoutInlineChildren):
  37187. * rendering/RenderBox.cpp:
  37188. (WebCore::RenderBox::RenderBox):
  37189. (WebCore::RenderBox::minPreferredLogicalWidth):
  37190. (WebCore::RenderBox::maxPreferredLogicalWidth):
  37191. (WebCore::RenderBox::computeLogicalWidth):
  37192. (WebCore::RenderBox::computeLogicalWidthUsing):
  37193. (WebCore::RenderBox::computePositionedLogicalWidth):
  37194. (WebCore::RenderBox::computePositionedLogicalWidthUsing):
  37195. * rendering/RenderBox.h:
  37196. (WebCore::RenderBox::computePreferredLogicalWidths):
  37197. * rendering/RenderCounter.cpp:
  37198. (WebCore::RenderCounter::computePreferredLogicalWidths):
  37199. * rendering/RenderCounter.h:
  37200. * rendering/RenderDataGrid.cpp:
  37201. (WebCore::RenderDataGrid::computePreferredLogicalWidths):
  37202. * rendering/RenderDataGrid.h:
  37203. * rendering/RenderFieldset.cpp:
  37204. (WebCore::RenderFieldset::computePreferredLogicalWidths):
  37205. * rendering/RenderFieldset.h:
  37206. * rendering/RenderFileUploadControl.cpp:
  37207. (WebCore::RenderFileUploadControl::computePreferredLogicalWidths):
  37208. * rendering/RenderFileUploadControl.h:
  37209. * rendering/RenderFlexibleBox.cpp:
  37210. (WebCore::RenderFlexibleBox::calcHorizontalPrefWidths):
  37211. (WebCore::RenderFlexibleBox::calcVerticalPrefWidths):
  37212. (WebCore::RenderFlexibleBox::computePreferredLogicalWidths):
  37213. (WebCore::RenderFlexibleBox::allowedChildFlex):
  37214. * rendering/RenderFlexibleBox.h:
  37215. * rendering/RenderFrameBase.cpp:
  37216. (WebCore::RenderFrameBase::layoutWithFlattening):
  37217. * rendering/RenderHTMLCanvas.cpp:
  37218. (WebCore::RenderHTMLCanvas::canvasSizeChanged):
  37219. * rendering/RenderImage.cpp:
  37220. (WebCore::RenderImage::imageChanged):
  37221. * rendering/RenderListBox.cpp:
  37222. (WebCore::RenderListBox::computePreferredLogicalWidths):
  37223. * rendering/RenderListBox.h:
  37224. * rendering/RenderListItem.cpp:
  37225. (WebCore::RenderListItem::updateMarkerLocation):
  37226. (WebCore::RenderListItem::computePreferredLogicalWidths):
  37227. * rendering/RenderListItem.h:
  37228. * rendering/RenderListMarker.cpp:
  37229. (WebCore::RenderListMarker::layout):
  37230. (WebCore::RenderListMarker::computePreferredLogicalWidths):
  37231. (WebCore::RenderListMarker::updateMargins):
  37232. * rendering/RenderListMarker.h:
  37233. * rendering/RenderMenuList.cpp:
  37234. (WebCore::RenderMenuList::computePreferredLogicalWidths):
  37235. * rendering/RenderMenuList.h:
  37236. * rendering/RenderObject.cpp:
  37237. (WebCore::RenderObject::RenderObject):
  37238. (WebCore::RenderObject::setPreferredLogicalWidthsDirty):
  37239. (WebCore::RenderObject::invalidateContainerPreferredLogicalWidths):
  37240. * rendering/RenderObject.h:
  37241. (WebCore::RenderObject::preferredLogicalWidthsDirty):
  37242. (WebCore::RenderObject::setNeedsLayoutAndPrefWidthsRecalc):
  37243. (WebCore::RenderObject::minPreferredLogicalWidth):
  37244. (WebCore::RenderObject::maxPreferredLogicalWidth):
  37245. * rendering/RenderReplaced.cpp:
  37246. (WebCore::RenderReplaced::computePreferredLogicalWidths):
  37247. * rendering/RenderReplaced.h:
  37248. * rendering/RenderReplica.cpp:
  37249. (WebCore::RenderReplica::computePreferredLogicalWidths):
  37250. * rendering/RenderReplica.h:
  37251. * rendering/RenderSVGRoot.cpp:
  37252. (WebCore::RenderSVGRoot::computePreferredLogicalWidths):
  37253. * rendering/RenderSVGRoot.h:
  37254. * rendering/RenderScrollbarPart.cpp:
  37255. (WebCore::RenderScrollbarPart::computePreferredLogicalWidths):
  37256. * rendering/RenderScrollbarPart.h:
  37257. * rendering/RenderSlider.cpp:
  37258. (WebCore::RenderSlider::computePreferredLogicalWidths):
  37259. * rendering/RenderSlider.h:
  37260. * rendering/RenderTable.cpp:
  37261. (WebCore::RenderTable::computeLogicalWidth):
  37262. (WebCore::RenderTable::computePreferredLogicalWidths):
  37263. * rendering/RenderTable.h:
  37264. * rendering/RenderTableCell.cpp:
  37265. (WebCore::RenderTableCell::computePreferredLogicalWidths):
  37266. * rendering/RenderTableCell.h:
  37267. * rendering/RenderTableCol.cpp:
  37268. (WebCore::RenderTableCol::computePreferredLogicalWidths):
  37269. * rendering/RenderTableCol.h:
  37270. * rendering/RenderText.cpp:
  37271. (WebCore::RenderText::trimmedPrefWidths):
  37272. (WebCore::RenderText::minPreferredLogicalWidth):
  37273. (WebCore::RenderText::maxPreferredLogicalWidth):
  37274. (WebCore::RenderText::computePreferredLogicalWidths):
  37275. (WebCore::RenderText::width):
  37276. * rendering/RenderText.h:
  37277. * rendering/RenderTextControl.cpp:
  37278. (WebCore::RenderTextControl::computePreferredLogicalWidths):
  37279. * rendering/RenderTextControl.h:
  37280. * rendering/RenderTextControlSingleLine.cpp:
  37281. (WebCore::RenderTextControlSingleLine::preferredContentWidth):
  37282. (WebCore::RenderTextControlSingleLine::preferredDecorationWidthRight):
  37283. * rendering/RenderVideo.cpp:
  37284. (WebCore::RenderVideo::updateIntrinsicSize):
  37285. * rendering/RenderView.cpp:
  37286. (WebCore::RenderView::RenderView):
  37287. (WebCore::RenderView::computePreferredLogicalWidths):
  37288. (WebCore::RenderView::layout):
  37289. * rendering/RenderView.h:
  37290. * rendering/TableLayout.h:
  37291. 2010-09-24 Jian Li <jianli@chromium.org>
  37292. Reviewed by Alexey Proskuryakov.
  37293. DOMWindow::revokeBlobURL erroneously uses ParsedURLString.
  37294. https://bugs.webkit.org/show_bug.cgi?id=46434
  37295. Test: fast/files/revoke-blob-url.html
  37296. * page/DOMWindow.cpp:
  37297. (WebCore::DOMWindow::revokeBlobURL):
  37298. 2010-09-24 David Hyatt <hyatt@apple.com>
  37299. Reviewed by Sam Weinig.
  37300. https://bugs.webkit.org/show_bug.cgi?id=46474
  37301. Patch computeWidthUsing to be block-flow-aware. Rename the WidthType enum to LogicalWidthType. Make computeLogicalWidthUsing
  37302. query the style for logical width properties instead of width properties.
  37303. fast/css/logical-property-resolution.html now fails and gives bad results. This is expected. It will become correct
  37304. again as more layout code gets patched.
  37305. * rendering/RenderBox.cpp:
  37306. (WebCore::RenderBox::computeLogicalWidth):
  37307. (WebCore::RenderBox::computeLogicalWidthUsing):
  37308. (WebCore::RenderBox::sizesToIntrinsicWidth):
  37309. * rendering/RenderBox.h:
  37310. 2010-09-24 Andrey Kosyakov <caseq@chromium.org>
  37311. Reviewed by Pavel Feldman.
  37312. Web Inspector: Clicking "Select All" in audits panel has no effect when the checkbox is unchecked
  37313. Only add category event listeners to real categories, not to "Select All"
  37314. https://bugs.webkit.org/show_bug.cgi?id=46467
  37315. * inspector/front-end/AuditLauncherView.js:
  37316. (WebInspector.AuditLauncherView.prototype._createCategoryElement):
  37317. 2010-09-24 Hans Wennborg <hans@chromium.org>
  37318. Reviewed by Steve Block.
  37319. Remove unnecessary casts in DeviceOrientation V8 bindings
  37320. https://bugs.webkit.org/show_bug.cgi?id=46466
  37321. Remove unnecessary casts of v8::Value::NumberValue() to double from
  37322. the custom v8 bindings code for DeviceOrientation/Motion.
  37323. No new tests: just cleanup, no new functionality.
  37324. * bindings/v8/custom/V8DeviceMotionEventCustom.cpp:
  37325. (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback):
  37326. * bindings/v8/custom/V8DeviceOrientationEventCustom.cpp:
  37327. (WebCore::V8DeviceOrientationEvent::initDeviceOrientationEventCallback):
  37328. 2010-09-24 Ilya Tikhonovsky <loislo@chromium.org>
  37329. Reviewed by Pavel Feldman.
  37330. Web Inspector: move searchingForNode flag in InspectorController under control of InspectorCookies.
  37331. Four functions from Inspector IDL go away.
  37332. Searching for node feature of Inspector keeps alive even after navigation.
  37333. https://bugs.webkit.org/show_bug.cgi?id=46462
  37334. * inspector/Inspector.idl:
  37335. * inspector/InspectorController.cpp:
  37336. (WebCore::InspectorController::updateInspectorStateCookie):
  37337. (WebCore::InspectorController::restoreInspectorStateFromCookie):
  37338. (WebCore::InspectorController::setSearchingForNode):
  37339. (WebCore::InspectorController::populateScriptObjects):
  37340. * inspector/InspectorController.h:
  37341. * inspector/front-end/ElementsPanel.js:
  37342. (WebInspector.ElementsPanel.prototype.hide):
  37343. (WebInspector.ElementsPanel.prototype.updateFocusedNode):
  37344. (WebInspector.ElementsPanel.prototype._setSearchingForNode):
  37345. (WebInspector.ElementsPanel.prototype.setSearchingForNode):
  37346. (WebInspector.ElementsPanel.prototype.toggleSearchingForNode):
  37347. * inspector/front-end/inspector.js:
  37348. (WebInspector._updateFocusedNode):
  37349. 2010-09-24 Andrei Popescu <andreip@google.com>
  37350. Reviewed by Jeremy Orlow.
  37351. IDBTransactionCoordinator incorrectly assumes that aborted transactions must have been started or running.
  37352. https://bugs.webkit.org/show_bug.cgi?id=46459
  37353. No new tests, storage/indexeddb/transaction-basics.html covers this.
  37354. Also fixes http://code.google.com/p/chromium/issues/detail?id=56732
  37355. * storage/IDBTransactionCoordinator.cpp:
  37356. (WebCore::IDBTransactionCoordinator::didFinishTransaction):
  37357. 2010-09-24 Hans Wennborg <hans@chromium.org>
  37358. Reviewed by Steve Block.
  37359. Update DeviceMotionEvent to spec
  37360. https://bugs.webkit.org/show_bug.cgi?id=46344
  37361. The spec has changed: the DeviceMotionEvent attributes accelerationX,
  37362. accelerationY, etc. have been baked into an 'acceleration' attribute
  37363. which returns an object with x, y, and z values. Likewise for the
  37364. rotation rate. The 'accelerationIncludingGravity' attribute is new.
  37365. * WebCore.exp.in:
  37366. The DeviceMotionData::create member function has changed. Also export
  37367. create functions for DeviceMotionData::Acceleration and RotationRate.
  37368. * bindings/js/JSDeviceMotionEventCustom.cpp:
  37369. (WebCore::JSDeviceMotionEvent::acceleration):
  37370. (WebCore::JSDeviceMotionEvent::accelerationIncludingGravity):
  37371. (WebCore::JSDeviceMotionEvent::rotationRate):
  37372. (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent):
  37373. Manually create and return objects with the right attributes for
  37374. acceleration, accelerationIncludingGravity, and rotationRate.
  37375. When creating the DeviceMotionData object in initDeviceMotionEvent,
  37376. accept any input objects that have the right attributes.
  37377. * bindings/v8/custom/V8DeviceMotionEventCustom.cpp:
  37378. (WebCore::V8DeviceMotionEvent::accelerationAccessorGetter):
  37379. (WebCore::V8DeviceMotionEvent::accelerationIncludingGravityAccessorGetter):
  37380. (WebCore::V8DeviceMotionEvent::rotationRateAccessorGetter):
  37381. (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback):
  37382. V8 counterpart to the JSC code above.
  37383. * dom/DeviceMotionData.cpp:
  37384. (WebCore::DeviceMotionData::Acceleration::create):
  37385. (WebCore::DeviceMotionData::Acceleration::Acceleration):
  37386. (WebCore::DeviceMotionData::RotationRate::create):
  37387. (WebCore::DeviceMotionData::RotationRate::RotationRate):
  37388. (WebCore::DeviceMotionData::create):
  37389. (WebCore::DeviceMotionData::DeviceMotionData):
  37390. * dom/DeviceMotionData.h:
  37391. (WebCore::DeviceMotionData::Acceleration::canProvideX):
  37392. (WebCore::DeviceMotionData::Acceleration::canProvideY):
  37393. (WebCore::DeviceMotionData::Acceleration::canProvideZ):
  37394. (WebCore::DeviceMotionData::Acceleration::x):
  37395. (WebCore::DeviceMotionData::Acceleration::y):
  37396. (WebCore::DeviceMotionData::Acceleration::z):
  37397. (WebCore::DeviceMotionData::RotationRate::canProvideAlpha):
  37398. (WebCore::DeviceMotionData::RotationRate::canProvideBeta):
  37399. (WebCore::DeviceMotionData::RotationRate::canProvideGamma):
  37400. (WebCore::DeviceMotionData::RotationRate::alpha):
  37401. (WebCore::DeviceMotionData::RotationRate::beta):
  37402. (WebCore::DeviceMotionData::RotationRate::gamma):
  37403. (WebCore::DeviceMotionData::acceleration):
  37404. (WebCore::DeviceMotionData::accelerationIncludingGravity):
  37405. (WebCore::DeviceMotionData::rotationRate):
  37406. Add member classes Acceleration and RotationRate to DeviceMotionData.
  37407. * dom/DeviceMotionEvent.idl:
  37408. Update according to the spec. Acceleration and RotationRate need not
  37409. be backed by native classes.
  37410. 2010-09-24 Romain Pokrzywka <romain@kdab.com>
  37411. Reviewed by Simon Hausmann.
  37412. [Qt] Fix the Wince build.
  37413. * WebCore.pro: Apply msvc flags to wince, too.
  37414. 2010-09-24 Anders Bakken <agbakken@gmail.com>
  37415. Reviewed by Simon Hausmann.
  37416. [Qt] Enable building Qt/Webkit with debug symbols
  37417. With this patch one can configure with -webkit-debug to build Webkit
  37418. with debug symbols without having to manually edit WebCore.pro.
  37419. * WebCore.pro:
  37420. 2010-09-24 Yael Aharon <yael.aharon@nokia.com>
  37421. Reviewed by Kenneth Rohde Christiansen.
  37422. [Qt] Web Sockets are insecure with QtWebKit
  37423. https://bugs.webkit.org/show_bug.cgi?id=44769
  37424. Throw an error when the server certificate is not valid.
  37425. DRT currently does not support secure websocket connection,
  37426. so no new tests. This was tested with the server at
  37427. http://code.google.com/p/pywebsocket instead.
  37428. * platform/network/qt/SocketStreamHandleQt.cpp:
  37429. (WebCore::SocketStreamHandlePrivate::socketSslErrors):
  37430. 2010-09-24 Jia Pu <jpu@apple.com>
  37431. Reviewed by Shinichiro Hamaji.
  37432. Need to remove autocorrection underlines in current line when newline is entered.
  37433. https://bugs.webkit.org/show_bug.cgi?id=45709
  37434. <rdar://problem/8335576>
  37435. This change affects only Mac OSX build.
  37436. * dom/DocumentMarker.h: Added "CorrectionIndicator" to indicate the words on which we need
  37437. to draw autocorrection underline. We cannot use existing "Replacement" for this purpose,
  37438. since it is not meant to be removed once it is added. But we need to remove all autocorrection
  37439. underlines when a line break or paragraph separator is inserted, which is the behavior in
  37440. NSTextView. Hence we need a separate marker value for drawing autocorrection underline.
  37441. * editing/Editor.cpp:
  37442. (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Add "CorrectionIndicator" when
  37443. autocorrection takes place.
  37444. (WebCore::Editor::changeSelectionAfterCommand): Remove "CorrectionIndicator" markers if the
  37445. command results in inserting paragraph separator.
  37446. * rendering/InlineTextBox.cpp:
  37447. (WebCore::textCheckingLineStyleForMarkerType): Use "CorrectionIndicator" marker instead of
  37448. "Replacement" to draw autocorrection underline.
  37449. (WebCore::InlineTextBox::paintDocumentMarkers): Ditto.
  37450. 2010-09-24 Eric Uhrhane <ericu@chromium.org>
  37451. Reviewed by David Levin.
  37452. Remove unnecessary parameter from AsyncFileWriterClient::didTruncate
  37453. https://bugs.webkit.org/show_bug.cgi?id=46390
  37454. * fileapi/AsyncFileWriterClient.h:
  37455. Added state to FileWriter to replace the parameter.
  37456. * fileapi/FileWriter.h:
  37457. * fileapi/FileWriter.cpp:
  37458. (WebCore::FileWriter::truncate):
  37459. (WebCore::FileWriter::didTruncate):
  37460. 2010-09-24 Sheriff Bot <webkit.review.bot@gmail.com>
  37461. Unreviewed, rolling out r68236.
  37462. http://trac.webkit.org/changeset/68236
  37463. https://bugs.webkit.org/show_bug.cgi?id=46449
  37464. compile fix didn't work (Requested by dino___ on #webkit).
  37465. * WebCore.exp.in:
  37466. * bindings/js/JSDeviceMotionEventCustom.cpp:
  37467. (WebCore::JSDeviceMotionEvent::xAcceleration):
  37468. (WebCore::JSDeviceMotionEvent::yAcceleration):
  37469. (WebCore::JSDeviceMotionEvent::zAcceleration):
  37470. (WebCore::JSDeviceMotionEvent::xRotationRate):
  37471. (WebCore::JSDeviceMotionEvent::yRotationRate):
  37472. (WebCore::JSDeviceMotionEvent::zRotationRate):
  37473. (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent):
  37474. * bindings/v8/custom/V8DeviceMotionEventCustom.cpp:
  37475. (WebCore::V8DeviceMotionEvent::xAccelerationAccessorGetter):
  37476. (WebCore::V8DeviceMotionEvent::yAccelerationAccessorGetter):
  37477. (WebCore::V8DeviceMotionEvent::zAccelerationAccessorGetter):
  37478. (WebCore::V8DeviceMotionEvent::xRotationRateAccessorGetter):
  37479. (WebCore::V8DeviceMotionEvent::yRotationRateAccessorGetter):
  37480. (WebCore::V8DeviceMotionEvent::zRotationRateAccessorGetter):
  37481. (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback):
  37482. * dom/DeviceMotionData.cpp:
  37483. (WebCore::DeviceMotionData::create):
  37484. (WebCore::DeviceMotionData::DeviceMotionData):
  37485. * dom/DeviceMotionData.h:
  37486. (WebCore::DeviceMotionData::xAcceleration):
  37487. (WebCore::DeviceMotionData::yAcceleration):
  37488. (WebCore::DeviceMotionData::zAcceleration):
  37489. (WebCore::DeviceMotionData::xRotationRate):
  37490. (WebCore::DeviceMotionData::yRotationRate):
  37491. (WebCore::DeviceMotionData::zRotationRate):
  37492. (WebCore::DeviceMotionData::canProvideXAcceleration):
  37493. (WebCore::DeviceMotionData::canProvideYAcceleration):
  37494. (WebCore::DeviceMotionData::canProvideZAcceleration):
  37495. (WebCore::DeviceMotionData::canProvideXRotationRate):
  37496. (WebCore::DeviceMotionData::canProvideYRotationRate):
  37497. (WebCore::DeviceMotionData::canProvideZRotationRate):
  37498. * dom/DeviceMotionEvent.idl:
  37499. 2010-09-24 Chris Guillory <chris.guillory@google.com>
  37500. Reviewed by Chris Fleizach.
  37501. Send webkit accessibility notifications to Chromium.
  37502. https://bugs.webkit.org/show_bug.cgi?id=45156
  37503. * WebCore.gypi:
  37504. * accessibility/chromium/AXObjectCacheChromium.cpp:
  37505. (WebCore::AXObjectCache::postPlatformNotification):
  37506. (WebCore::AXObjectCache::handleFocusedUIElementChanged):
  37507. (WebCore::AXObjectCache::handleScrolledToAnchor):
  37508. * dom/Document.cpp:
  37509. (WebCore::Document::implicitClose):
  37510. (WebCore::Document::setFocusedNode):
  37511. * editing/SelectionController.h:
  37512. * page/ChromeClient.h:
  37513. (WebCore::ChromeClient::postAccessibilityNotification):
  37514. * page/FrameView.cpp:
  37515. (WebCore::FrameView::layout):
  37516. 2010-09-24 David Hyatt <hyatt@apple.com>
  37517. Reviewed by Maciej Stachowiak.
  37518. https://bugs.webkit.org/show_bug.cgi?id=46454, rename a bunch of the width and height calculation methods.
  37519. calcReplacedWidth -> computeReplacedWidth
  37520. calcHorizontalMargins -> computeInlineDirectionMargins
  37521. calcVerticalMargins -> computeBlockDirectionMargins
  37522. calcWidthUsing -> computeLogicalWidthUsing
  37523. calcHeightUsing -> computeLogicalHeightUsing
  37524. calcReplacedHeight/HeightUsing -> computeReplacedHeight/HeightUsing
  37525. calcAbsoluteHorizontalValues -> computePositionedLogicalWidthUsing
  37526. calcAbsoluteVerticalValues -> computePositionedLogicalHeightUsing
  37527. calcAbsoluteHorizontal -> computePositionedLogicalWIdth
  37528. calcAbsoluteVertical -> computePositionedLogicalHeight
  37529. calcAbsoluteHorizontalReplaced -> computePositionedLogicalWidthReplaced
  37530. calcAbsoluteVerticalReplaced -> computePositionedLogicalHeightReplaced
  37531. calcBorderBoxWidth/Height -> computeBorderBoxLogicalWidth/LogicalHeight
  37532. calcContentBoxWidth/Height -> computeContentBoxLogicalWidth/LogicalHeight
  37533. shouldCalculateSizeAsReplaced -> shouldComputeSizeAsReplaced
  37534. calcPercentageHeight -> computePercentageLogicalHeight
  37535. * rendering/AutoTableLayout.cpp:
  37536. (WebCore::AutoTableLayout::recalcColumn):
  37537. * rendering/RenderBlock.cpp:
  37538. (WebCore::RenderBlock::adjustPositionedBlock):
  37539. (WebCore::RenderBlock::determineHorizontalPosition):
  37540. (WebCore::RenderBlock::layoutBlockChild):
  37541. (WebCore::RenderBlock::insertFloatingObject):
  37542. (WebCore::RenderBlock::calcPrefWidths):
  37543. * rendering/RenderBox.cpp:
  37544. (WebCore::RenderBox::computeBorderBoxLogicalWidth):
  37545. (WebCore::RenderBox::computeBorderBoxLogicalHeight):
  37546. (WebCore::RenderBox::computeContentBoxLogicalWidth):
  37547. (WebCore::RenderBox::computeContentBoxLogicalHeight):
  37548. (WebCore::RenderBox::computeLogicalWidth):
  37549. (WebCore::RenderBox::computeLogicalWidthUsing):
  37550. (WebCore::RenderBox::computeInlineDirectionMargins):
  37551. (WebCore::RenderBox::computeLogicalHeight):
  37552. (WebCore::RenderBox::computeLogicalHeightUsing):
  37553. (WebCore::RenderBox::computePercentageLogicalHeight):
  37554. (WebCore::RenderBox::computeReplacedWidth):
  37555. (WebCore::RenderBox::computeReplacedWidthUsing):
  37556. (WebCore::RenderBox::computeReplacedHeight):
  37557. (WebCore::RenderBox::computeReplacedHeightUsing):
  37558. (WebCore::RenderBox::availableHeightUsing):
  37559. (WebCore::RenderBox::computeBlockDirectionMargins):
  37560. (WebCore::RenderBox::computePositionedLogicalWidth):
  37561. (WebCore::RenderBox::computePositionedLogicalWidthUsing):
  37562. (WebCore::RenderBox::computePositionedLogicalHeight):
  37563. (WebCore::RenderBox::computePositionedLogicalHeightUsing):
  37564. (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
  37565. (WebCore::RenderBox::computePositionedLogicalHeightReplaced):
  37566. * rendering/RenderBox.h:
  37567. (WebCore::RenderBox::shouldComputeSizeAsReplaced):
  37568. * rendering/RenderDataGrid.cpp:
  37569. (WebCore::RenderDataGrid::calcPrefWidths):
  37570. * rendering/RenderFileUploadControl.cpp:
  37571. (WebCore::RenderFileUploadControl::calcPrefWidths):
  37572. * rendering/RenderFlexibleBox.cpp:
  37573. (WebCore::RenderFlexibleBox::calcPrefWidths):
  37574. (WebCore::RenderFlexibleBox::layoutHorizontalBox):
  37575. (WebCore::RenderFlexibleBox::layoutVerticalBox):
  37576. * rendering/RenderImage.cpp:
  37577. (WebCore::RenderImage::computeReplacedWidth):
  37578. (WebCore::RenderImage::computeReplacedHeight):
  37579. (WebCore::RenderImage::calcAspectRatioWidth):
  37580. (WebCore::RenderImage::calcAspectRatioHeight):
  37581. * rendering/RenderImage.h:
  37582. * rendering/RenderListBox.cpp:
  37583. (WebCore::RenderListBox::calcPrefWidths):
  37584. * rendering/RenderMenuList.cpp:
  37585. (WebCore::RenderMenuList::calcPrefWidths):
  37586. * rendering/RenderObject.cpp:
  37587. (WebCore::RenderObject::container):
  37588. * rendering/RenderObject.h:
  37589. (WebCore::RenderObject::computeBlockDirectionMargins):
  37590. * rendering/RenderReplaced.cpp:
  37591. (WebCore::RenderReplaced::computeReplacedWidth):
  37592. (WebCore::RenderReplaced::computeReplacedHeight):
  37593. (WebCore::RenderReplaced::calcAspectRatioWidth):
  37594. (WebCore::RenderReplaced::calcAspectRatioHeight):
  37595. (WebCore::RenderReplaced::calcPrefWidths):
  37596. * rendering/RenderReplaced.h:
  37597. * rendering/RenderSVGRoot.cpp:
  37598. (WebCore::RenderSVGRoot::calcPrefWidths):
  37599. (WebCore::RenderSVGRoot::computeReplacedWidth):
  37600. (WebCore::RenderSVGRoot::computeReplacedHeight):
  37601. * rendering/RenderSVGRoot.h:
  37602. * rendering/RenderSlider.cpp:
  37603. (WebCore::RenderSlider::calcPrefWidths):
  37604. * rendering/RenderTable.cpp:
  37605. (WebCore::RenderTable::computeLogicalWidth):
  37606. (WebCore::RenderTable::layout):
  37607. * rendering/RenderTableRow.cpp:
  37608. (WebCore::RenderTableRow::layout):
  37609. * rendering/RenderTextControl.cpp:
  37610. (WebCore::RenderTextControl::calcPrefWidths):
  37611. * rendering/RenderVideo.cpp:
  37612. (WebCore::RenderVideo::computeReplacedWidth):
  37613. (WebCore::RenderVideo::computeReplacedHeight):
  37614. * rendering/RenderVideo.h:
  37615. 2010-09-23 David Hyatt <hyatt@apple.com>
  37616. Reviewed by Sam Weinig.
  37617. https://bugs.webkit.org/show_bug.cgi?id=46451
  37618. Rename calcWidth to computeLogicalWidth. Rename calcHeight to computeLogicalHeight.
  37619. * rendering/RenderApplet.cpp:
  37620. (WebCore::RenderApplet::layout):
  37621. * rendering/RenderBlock.cpp:
  37622. (WebCore::RenderBlock::layoutBlock):
  37623. (WebCore::RenderBlock::insertFloatingObject):
  37624. (WebCore::RenderBlock::getClearDelta):
  37625. * rendering/RenderBlockLineLayout.cpp:
  37626. (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
  37627. * rendering/RenderBox.cpp:
  37628. (WebCore::RenderBox::computeLogicalWidth):
  37629. (WebCore::RenderBox::computeLogicalHeight):
  37630. (WebCore::RenderBox::calcPercentageHeight):
  37631. (WebCore::RenderBox::calcReplacedHeightUsing):
  37632. (WebCore::RenderBox::availableHeightUsing):
  37633. (WebCore::RenderBox::calcAbsoluteHorizontal):
  37634. * rendering/RenderBox.h:
  37635. (WebCore::RenderBox::tryLayoutDoingPositionedMovementOnly):
  37636. * rendering/RenderEmbeddedObject.cpp:
  37637. (WebCore::RenderEmbeddedObject::layout):
  37638. * rendering/RenderFlexibleBox.cpp:
  37639. (WebCore::RenderFlexibleBox::layoutBlock):
  37640. (WebCore::RenderFlexibleBox::layoutHorizontalBox):
  37641. (WebCore::RenderFlexibleBox::layoutVerticalBox):
  37642. * rendering/RenderForeignObject.cpp:
  37643. (WebCore::RenderForeignObject::computeLogicalWidth):
  37644. (WebCore::RenderForeignObject::computeLogicalHeight):
  37645. * rendering/RenderForeignObject.h:
  37646. * rendering/RenderHTMLCanvas.cpp:
  37647. (WebCore::RenderHTMLCanvas::canvasSizeChanged):
  37648. * rendering/RenderIFrame.cpp:
  37649. (WebCore::RenderIFrame::computeLogicalHeight):
  37650. (WebCore::RenderIFrame::computeLogicalWidth):
  37651. (WebCore::RenderIFrame::layout):
  37652. * rendering/RenderIFrame.h:
  37653. * rendering/RenderImage.cpp:
  37654. (WebCore::RenderImage::imageChanged):
  37655. * rendering/RenderIndicator.cpp:
  37656. (WebCore::RenderIndicator::layout):
  37657. * rendering/RenderListBox.cpp:
  37658. (WebCore::RenderListBox::computeLogicalHeight):
  37659. * rendering/RenderListBox.h:
  37660. * rendering/RenderMeter.cpp:
  37661. (WebCore::RenderMeter::computeLogicalWidth):
  37662. (WebCore::RenderMeter::computeLogicalHeight):
  37663. * rendering/RenderMeter.h:
  37664. * rendering/RenderReplaced.cpp:
  37665. (WebCore::RenderReplaced::layout):
  37666. * rendering/RenderSVGRoot.cpp:
  37667. (WebCore::RenderSVGRoot::layout):
  37668. * rendering/RenderSlider.cpp:
  37669. (WebCore::RenderSlider::layout):
  37670. * rendering/RenderTable.cpp:
  37671. (WebCore::RenderTable::computeLogicalWidth):
  37672. (WebCore::RenderTable::layout):
  37673. * rendering/RenderTable.h:
  37674. * rendering/RenderTableCell.cpp:
  37675. (WebCore::RenderTableCell::computeLogicalWidth):
  37676. * rendering/RenderTableCell.h:
  37677. * rendering/RenderTextControl.cpp:
  37678. (WebCore::RenderTextControl::computeLogicalHeight):
  37679. * rendering/RenderTextControl.h:
  37680. * rendering/RenderTextControlSingleLine.cpp:
  37681. (WebCore::RenderTextControlSingleLine::layout):
  37682. (WebCore::RenderTextControlSingleLine::textBlockWidth):
  37683. (WebCore::RenderTextControlSingleLine::decorationWidthRight):
  37684. (WebCore::RenderTextControlSingleLine::preferredDecorationWidthRight):
  37685. (WebCore::RenderTextControlSingleLine::adjustControlHeightBasedOnLineHeight):
  37686. * rendering/RenderView.cpp:
  37687. (WebCore::RenderView::computeLogicalHeight):
  37688. (WebCore::RenderView::computeLogicalWidth):
  37689. * rendering/RenderView.h:
  37690. * svg/SVGSVGElement.cpp:
  37691. (WebCore::SVGSVGElement::svgAttributeChanged):
  37692. 2010-09-23 Hans Wennborg <hans@chromium.org>
  37693. Reviewed by Simon Fraser.
  37694. Update DeviceMotionEvent to spec
  37695. https://bugs.webkit.org/show_bug.cgi?id=46344
  37696. The spec has changed: the DeviceMotionEvent attributes accelerationX,
  37697. accelerationY, etc. have been baked into an 'acceleration' attribute
  37698. which returns an object with x, y, and z values. Likewise for the
  37699. rotation rate. The 'accelerationIncludingGravity' attribute is new.
  37700. * WebCore.exp.in:
  37701. The DeviceMotionData::create member function has changed. Also export
  37702. create functions for DeviceMotionData::Acceleration and RotationRate.
  37703. * bindings/js/JSDeviceMotionEventCustom.cpp:
  37704. (WebCore::JSDeviceMotionEvent::acceleration):
  37705. (WebCore::JSDeviceMotionEvent::accelerationIncludingGravity):
  37706. (WebCore::JSDeviceMotionEvent::rotationRate):
  37707. (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent):
  37708. Manually create and return objects with the right attributes for
  37709. acceleration, accelerationIncludingGravity, and rotationRate.
  37710. When creating the DeviceMotionData object in initDeviceMotionEvent,
  37711. accept any input objects that have the right attributes.
  37712. * bindings/v8/custom/V8DeviceMotionEventCustom.cpp:
  37713. (WebCore::V8DeviceMotionEvent::accelerationAccessorGetter):
  37714. (WebCore::V8DeviceMotionEvent::accelerationIncludingGravityAccessorGetter):
  37715. (WebCore::V8DeviceMotionEvent::rotationRateAccessorGetter):
  37716. (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback):
  37717. V8 counterpart to the JSC code above.
  37718. * dom/DeviceMotionData.cpp:
  37719. (WebCore::DeviceMotionData::Acceleration::create):
  37720. (WebCore::DeviceMotionData::Acceleration::Acceleration):
  37721. (WebCore::DeviceMotionData::RotationRate::create):
  37722. (WebCore::DeviceMotionData::RotationRate::RotationRate):
  37723. (WebCore::DeviceMotionData::create):
  37724. (WebCore::DeviceMotionData::DeviceMotionData):
  37725. * dom/DeviceMotionData.h:
  37726. (WebCore::DeviceMotionData::Acceleration::canProvideX):
  37727. (WebCore::DeviceMotionData::Acceleration::canProvideY):
  37728. (WebCore::DeviceMotionData::Acceleration::canProvideZ):
  37729. (WebCore::DeviceMotionData::Acceleration::x):
  37730. (WebCore::DeviceMotionData::Acceleration::y):
  37731. (WebCore::DeviceMotionData::Acceleration::z):
  37732. (WebCore::DeviceMotionData::RotationRate::canProvideAlpha):
  37733. (WebCore::DeviceMotionData::RotationRate::canProvideBeta):
  37734. (WebCore::DeviceMotionData::RotationRate::canProvideGamma):
  37735. (WebCore::DeviceMotionData::RotationRate::alpha):
  37736. (WebCore::DeviceMotionData::RotationRate::beta):
  37737. (WebCore::DeviceMotionData::RotationRate::gamma):
  37738. (WebCore::DeviceMotionData::acceleration):
  37739. (WebCore::DeviceMotionData::accelerationIncludingGravity):
  37740. (WebCore::DeviceMotionData::rotationRate):
  37741. Add member classes Acceleration and RotationRate to DeviceMotionData.
  37742. * dom/DeviceMotionEvent.idl:
  37743. Update according to the spec. Acceleration and RotationRate need not
  37744. be backed by native classes.
  37745. 2010-09-23 Simon Fraser <simon.fraser@apple.com>
  37746. Reviewed by Dan Bernstein.
  37747. Accelerated transitions do not suspend/resume properly.
  37748. https://bugs.webkit.org/show_bug.cgi?id=43792
  37749. Fix suspending of accelerated transitions.
  37750. GraphicsLayer changes unify the handling of transitions and animations
  37751. in GraphicsLayer. Both are now identified by name, so the code
  37752. now refers to "animationName" rather than "keyframesName". Transitions
  37753. use a dummy name which is not a valid keyframe identifier.
  37754. Tests: animations/suspend-transform-animation.html
  37755. transitions/suspend-transform-transition.html
  37756. * page/animation/ImplicitAnimation.h:
  37757. * page/animation/ImplicitAnimation.cpp:
  37758. (WebCore::ImplicitAnimation::pauseAnimation): Call down to the RenderLayerBacking
  37759. to tell it that an accelerated transition was paused.
  37760. * platform/graphics/GraphicsLayer.h:
  37761. * platform/graphics/GraphicsLayer.cpp:
  37762. (WebCore::GraphicsLayer::animationNameForTransition): Create a name
  37763. for the transition of the given property.
  37764. (WebCore::GraphicsLayer::addAnimation): Generalize "keyframe" to "animation" in the parameter names.
  37765. (WebCore::GraphicsLayer::pauseAnimation): ditto
  37766. (WebCore::GraphicsLayer::removeAnimation): ditto
  37767. * platform/graphics/mac/GraphicsLayerCA.h: Parameter renaming, and some method renames for clarity.
  37768. (WebCore::GraphicsLayerCA::animationIsRunning):
  37769. (WebCore::GraphicsLayerCA::LayerPropertyAnimation::LayerPropertyAnimation): struct rename for clarity.
  37770. * platform/graphics/mac/GraphicsLayerCA.mm:
  37771. (WebCore::animationIdentifier): the animationName already has the property baked in.
  37772. (WebCore::GraphicsLayerCA::moveOrCopyLayerAnimation): just deals with one animation now.
  37773. (WebCore::GraphicsLayerCA::moveOrCopyAnimationsForProperty): we have to trawl through
  37774. m_runningAnimations to get the identifiers for the animations that need to be copied.
  37775. (WebCore::GraphicsLayerCA::addAnimation): rename parameters.
  37776. (WebCore::GraphicsLayerCA::pauseAnimation): re-ordered methods here. member var renames.
  37777. (WebCore::GraphicsLayerCA::removeAnimation): ditto.
  37778. (WebCore::GraphicsLayerCA::updateLayerAnimations): no need to iterate over m_transitionPropertiesToRemove,
  37779. and no more divergence between transitions and animations.
  37780. (WebCore::GraphicsLayerCA::setCAAnimationOnLayer): renames for clarity.
  37781. (WebCore::GraphicsLayerCA::removeCAAnimationFromLayer): ditto
  37782. (WebCore::GraphicsLayerCA::pauseCAAnimationOnLayer): ditto
  37783. (WebCore::GraphicsLayerCA::createAnimationFromKeyframes): renames
  37784. (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes): renames
  37785. (WebCore::GraphicsLayerCA::suspendAnimations): whitespace.
  37786. * rendering/RenderLayerBacking.h: Group the transition and animation methods together.
  37787. * rendering/RenderLayerBacking.cpp:
  37788. (WebCore::RenderLayerBacking::animationPaused): Re-ordered methods for clarity.
  37789. (WebCore::RenderLayerBacking::animationFinished): ditto
  37790. (WebCore::RenderLayerBacking::startTransition): Use animationNameForTransition() to generate
  37791. the animation identifier.
  37792. (WebCore::RenderLayerBacking::transitionPaused): Call pauseAnimation, using animationNameForTransition()
  37793. to generate the animation identifier.
  37794. (WebCore::RenderLayerBacking::transitionFinished): Call removeAnimation, using animationNameForTransition()
  37795. to generate the animation identifier.
  37796. (WebCore::RenderLayerBacking::notifyAnimationStarted): Moved.
  37797. (WebCore::RenderLayerBacking::notifySyncRequired): Moved.
  37798. 2010-09-23 David Hyatt <hyatt@apple.com>
  37799. Reviewed by Sam Weinig.
  37800. https://bugs.webkit.org/show_bug.cgi?id=46442
  37801. Disallow the setting of block-flow to anything other than "tb" for all table-related display types
  37802. and flexible box display types. By disallowing block-flow on the subclasses of RenderBlock like tables
  37803. and flexible boxes, we ensure that alterations to the RenderBlock base class won't result in misrenderings
  37804. in tables and flexible boxes that try to specify other block flow values.
  37805. * css/CSSStyleSelector.cpp:
  37806. (WebCore::CSSStyleSelector::adjustRenderStyle):
  37807. 2010-09-23 Kinuko Yasuda <kinuko@chromium.org>
  37808. Reviewed by David Levin.
  37809. Add Worker support for FileSystem API
  37810. https://bugs.webkit.org/show_bug.cgi?id=45808
  37811. Exposed requestFileSystem and Flags constructor on worker contexts.
  37812. Also changed how to get the base path for Web file systems (in
  37813. non-chromium ports) so that it works for workers too.
  37814. This patch assumes each port calls
  37815. LocalFileSystem::initializeLocalFileSystem() in its initialization
  37816. phase.
  37817. No new tests; tests will be added when we have complete implementation.
  37818. * bindings/generic/RuntimeEnabledFeatures.cpp:
  37819. (WebCore::RuntimeEnabledFeatures::fileSystemEnabled): Changed to
  37820. reflect AsyncFileSystem::isAvailable
  37821. * bindings/generic/RuntimeEnabledFeatures.h: Moved the implementation
  37822. of fileSystemEnabled to .cpp.
  37823. * fileapi/LocalFileSystem.cpp:
  37824. (WebCore::LocalFileSystem::initializeLocalFileSystem): Added.
  37825. (WebCore::LocalFileSystem::localFileSystem): Added.
  37826. (WebCore::LocalFileSystem::fileSystemBasePath): Added.
  37827. * fileapi/LocalFileSystem.h:
  37828. (WebCore::LocalFileSystem::~LocalFileSystem): Removed. (As now it's
  37829. going to be used as a singleton.)
  37830. * page/DOMWindow.cpp:
  37831. (WebCore::DOMWindow::requestFileSystem): Changed to use a singleton
  37832. instance of LocalFileSystem.
  37833. * page/SecurityOrigin.h:
  37834. (WebCore::SecurityOrigin::canAccessFileSystem): Added.
  37835. * page/Settings.cpp: Removed fileSystemRootPath method.
  37836. * page/Settings.h: Removed fileSystemRootPath method.
  37837. * platform/AsyncFileSystem.cpp:
  37838. (WebCore::AsyncFileSystem::isAvailable): Added.
  37839. * workers/WorkerContext.cpp:
  37840. (WebCore::WorkerContext::requestFileSystem): Added to expose
  37841. requestFileSystem method in worker contexts.
  37842. (WebCore::WorkerContext::Observer): Added.
  37843. (WebCore::WorkerContext::registerObserver): Added.
  37844. (WebCore::WorkerContext::unregisterObserver): Added.
  37845. (WebCore::WorkerContext::notifyObserversOfStop): Added.
  37846. * workers/WorkerContext.h:
  37847. * workers/WorkerContext.idl:
  37848. * workers/WorkerThread.cpp:
  37849. (WebCore::WorkerThreadShutdownStartTask::performTask): Modified to
  37850. call workerContext->notifyObserversOfStop to notify worker observers
  37851. of the worker thread termination.
  37852. 2010-09-23 Matthew Delaney <mdelaney@apple.com>
  37853. Reviewed by Oliver Hunt.
  37854. Lower the default canvas interpolation quality for platforms that use CG
  37855. https://bugs.webkit.org/show_bug.cgi?id=45722
  37856. Lowered the default image interpolation quality for platforms that
  37857. use CG down to low since this is as good as if not better than
  37858. other graphics platforms defaults (being bilinear interpolation).
  37859. * html/HTMLCanvasElement.cpp:
  37860. (WebCore::HTMLCanvasElement::createImageBuffer):
  37861. * html/HTMLCanvasElement.h: Moved in macros for default canvas interp quality.
  37862. * platform/graphics/GraphicsContext.h: Moved out macros for default canvas interp quality. It makes more sense for them to be housed where they're used.
  37863. 2010-09-23 David Hyatt <hyatt@apple.com>
  37864. Reviewed by Adele Peterson.
  37865. https://bugs.webkit.org/show_bug.cgi?id=46414, rename line box methods that refer specifically to
  37866. "horizontal" and "vertical." Replace those terms with "inline direction" and "block direction."
  37867. * rendering/InlineFlowBox.cpp:
  37868. (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
  37869. (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
  37870. (WebCore::InlineFlowBox::computeBlockDirectionOverflow):
  37871. * rendering/InlineFlowBox.h:
  37872. (WebCore::InlineFlowBox::setInlineDirectionOverflowPositions):
  37873. (WebCore::InlineFlowBox::setBlockDirectionOverflowPositions):
  37874. * rendering/RenderBlock.h:
  37875. * rendering/RenderBlockLineLayout.cpp:
  37876. (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
  37877. (WebCore::RenderBlock::computeBlockDirectionPositionsForLine):
  37878. (WebCore::RenderBlock::layoutInlineChildren):
  37879. * rendering/RootInlineBox.cpp:
  37880. (WebCore::RootInlineBox::alignBoxesInBlockDirection):
  37881. * rendering/RootInlineBox.h:
  37882. 2010-09-23 Andrew Wilson <atwilson@chromium.org>
  37883. Unreviewed, rolling out r68197.
  37884. http://trac.webkit.org/changeset/68197
  37885. https://bugs.webkit.org/show_bug.cgi?id=46344
  37886. Breaks
  37887. * WebCore.exp.in:
  37888. * bindings/js/JSDeviceMotionEventCustom.cpp:
  37889. (WebCore::JSDeviceMotionEvent::xAcceleration):
  37890. (WebCore::JSDeviceMotionEvent::yAcceleration):
  37891. (WebCore::JSDeviceMotionEvent::zAcceleration):
  37892. (WebCore::JSDeviceMotionEvent::xRotationRate):
  37893. (WebCore::JSDeviceMotionEvent::yRotationRate):
  37894. (WebCore::JSDeviceMotionEvent::zRotationRate):
  37895. (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent):
  37896. * bindings/v8/custom/V8DeviceMotionEventCustom.cpp:
  37897. (WebCore::V8DeviceMotionEvent::xAccelerationAccessorGetter):
  37898. (WebCore::V8DeviceMotionEvent::yAccelerationAccessorGetter):
  37899. (WebCore::V8DeviceMotionEvent::zAccelerationAccessorGetter):
  37900. (WebCore::V8DeviceMotionEvent::xRotationRateAccessorGetter):
  37901. (WebCore::V8DeviceMotionEvent::yRotationRateAccessorGetter):
  37902. (WebCore::V8DeviceMotionEvent::zRotationRateAccessorGetter):
  37903. (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback):
  37904. * dom/DeviceMotionData.cpp:
  37905. (WebCore::DeviceMotionData::create):
  37906. (WebCore::DeviceMotionData::DeviceMotionData):
  37907. * dom/DeviceMotionData.h:
  37908. (WebCore::DeviceMotionData::xAcceleration):
  37909. (WebCore::DeviceMotionData::yAcceleration):
  37910. (WebCore::DeviceMotionData::zAcceleration):
  37911. (WebCore::DeviceMotionData::xRotationRate):
  37912. (WebCore::DeviceMotionData::yRotationRate):
  37913. (WebCore::DeviceMotionData::zRotationRate):
  37914. (WebCore::DeviceMotionData::canProvideXAcceleration):
  37915. (WebCore::DeviceMotionData::canProvideYAcceleration):
  37916. (WebCore::DeviceMotionData::canProvideZAcceleration):
  37917. (WebCore::DeviceMotionData::canProvideXRotationRate):
  37918. (WebCore::DeviceMotionData::canProvideYRotationRate):
  37919. (WebCore::DeviceMotionData::canProvideZRotationRate):
  37920. * dom/DeviceMotionEvent.idl:
  37921. 2010-09-23 David Hyatt <hyatt@apple.com>
  37922. Reviewed by Adele Peterson.
  37923. https://bugs.webkit.org/show_bug.cgi?id=46403, convert the margin/border/padding accessors
  37924. to be logical.
  37925. * rendering/InlineFlowBox.cpp:
  37926. (WebCore::InlineFlowBox::getFlowSpacingLogicalWidth):
  37927. (WebCore::InlineFlowBox::placeBoxesHorizontally):
  37928. (WebCore::InlineFlowBox::paintBoxShadow):
  37929. (WebCore::InlineFlowBox::paintBoxDecorations):
  37930. (WebCore::InlineFlowBox::paintTextDecorations):
  37931. * rendering/InlineFlowBox.h:
  37932. (WebCore::InlineFlowBox::InlineFlowBox):
  37933. (WebCore::InlineFlowBox::marginBorderPaddingLogicalLeft):
  37934. (WebCore::InlineFlowBox::marginBorderPaddingLogicalRight):
  37935. (WebCore::InlineFlowBox::marginLogicalLeft):
  37936. (WebCore::InlineFlowBox::marginLogicalRight):
  37937. (WebCore::InlineFlowBox::borderLogicalLeft):
  37938. (WebCore::InlineFlowBox::borderLogicalRight):
  37939. (WebCore::InlineFlowBox::paddingLogicalLeft):
  37940. (WebCore::InlineFlowBox::paddingLogicalRight):
  37941. (WebCore::InlineFlowBox::includeLogicalLeftEdge):
  37942. (WebCore::InlineFlowBox::includeLogicalRightEdge):
  37943. (WebCore::InlineFlowBox::setEdges):
  37944. * rendering/RenderBlockLineLayout.cpp:
  37945. (WebCore::RenderBlock::computeHorizontalPositionsForLine):
  37946. * rendering/RenderBox.cpp:
  37947. (WebCore::RenderBox::containingBlockWidthForPositioned):
  37948. (WebCore::RenderBox::calcAbsoluteHorizontalValues):
  37949. (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
  37950. * rendering/RenderBoxModelObject.cpp:
  37951. (WebCore::RenderBoxModelObject::paintFillLayerExtended):
  37952. 2010-09-23 Jeff Schiller <jeffschiller@google.com>
  37953. Reviewed by David Hyatt.
  37954. Ensure that SVG documents included by reference (object, iframe, embed) have transparent
  37955. backgrounds (not white). https://bugs.webkit.org/show_bug.cgi?id=10687
  37956. Test: svg/in-html/by-reference.html
  37957. * dom/Document.cpp:
  37958. (WebCore::Document::hasSVGRootNode):
  37959. * dom/Document.h:
  37960. (WebCore::Document::hasSVGRootNode):
  37961. * rendering/RenderBoxModelObject.cpp:
  37962. (WebCore::RenderBoxModelObject::paintFillLayerExtended):
  37963. 2010-09-23 Hans Wennborg <hans@chromium.org>
  37964. Reviewed by Simon Fraser.
  37965. Update DeviceMotionEvent to spec
  37966. https://bugs.webkit.org/show_bug.cgi?id=46344
  37967. The spec has changed: the DeviceMotionEvent attributes accelerationX,
  37968. accelerationY, etc. have been baked into an 'acceleration' attribute
  37969. which returns an object with x, y, and z values. Likewise for the
  37970. rotation rate. The 'accelerationIncludingGravity' attribute is new.
  37971. * WebCore.exp.in:
  37972. The DeviceMotionData::create member function has changed. Also export
  37973. create functions for DeviceMotionData::Acceleration and RotationRate.
  37974. * bindings/js/JSDeviceMotionEventCustom.cpp:
  37975. (WebCore::JSDeviceMotionEvent::acceleration):
  37976. (WebCore::JSDeviceMotionEvent::accelerationIncludingGravity):
  37977. (WebCore::JSDeviceMotionEvent::rotationRate):
  37978. (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent):
  37979. Manually create and return objects with the right attributes for
  37980. acceleration, accelerationIncludingGravity, and rotationRate.
  37981. When creating the DeviceMotionData object in initDeviceMotionEvent,
  37982. accept any input objects that have the right attributes.
  37983. * bindings/v8/custom/V8DeviceMotionEventCustom.cpp:
  37984. (WebCore::V8DeviceMotionEvent::accelerationAccessorGetter):
  37985. (WebCore::V8DeviceMotionEvent::accelerationIncludingGravityAccessorGetter):
  37986. (WebCore::V8DeviceMotionEvent::rotationRateAccessorGetter):
  37987. (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback):
  37988. V8 counterpart to the JSC code above.
  37989. * dom/DeviceMotionData.cpp:
  37990. (WebCore::DeviceMotionData::Acceleration::create):
  37991. (WebCore::DeviceMotionData::Acceleration::Acceleration):
  37992. (WebCore::DeviceMotionData::RotationRate::create):
  37993. (WebCore::DeviceMotionData::RotationRate::RotationRate):
  37994. (WebCore::DeviceMotionData::create):
  37995. (WebCore::DeviceMotionData::DeviceMotionData):
  37996. * dom/DeviceMotionData.h:
  37997. (WebCore::DeviceMotionData::Acceleration::canProvideX):
  37998. (WebCore::DeviceMotionData::Acceleration::canProvideY):
  37999. (WebCore::DeviceMotionData::Acceleration::canProvideZ):
  38000. (WebCore::DeviceMotionData::Acceleration::x):
  38001. (WebCore::DeviceMotionData::Acceleration::y):
  38002. (WebCore::DeviceMotionData::Acceleration::z):
  38003. (WebCore::DeviceMotionData::RotationRate::canProvideAlpha):
  38004. (WebCore::DeviceMotionData::RotationRate::canProvideBeta):
  38005. (WebCore::DeviceMotionData::RotationRate::canProvideGamma):
  38006. (WebCore::DeviceMotionData::RotationRate::alpha):
  38007. (WebCore::DeviceMotionData::RotationRate::beta):
  38008. (WebCore::DeviceMotionData::RotationRate::gamma):
  38009. (WebCore::DeviceMotionData::acceleration):
  38010. (WebCore::DeviceMotionData::accelerationIncludingGravity):
  38011. (WebCore::DeviceMotionData::rotationRate):
  38012. Add member classes Acceleration and RotationRate to DeviceMotionData.
  38013. * dom/DeviceMotionEvent.idl:
  38014. Update according to the spec. Acceleration and RotationRate need not
  38015. be backed by native classes.
  38016. 2010-09-23 Patrick Gansterer <paroga@webkit.org>
  38017. Reviewed by Adam Roben.
  38018. Set synchronous handle in ResourceHandleWin
  38019. https://bugs.webkit.org/show_bug.cgi?id=46395
  38020. When loading synchronous network resources, we need to use a synchronous internet handle.
  38021. * platform/network/ResourceHandle.h:
  38022. * platform/network/win/ResourceHandleWin.cpp:
  38023. (WebCore::ResourceHandle::loadResourceSynchronously):
  38024. (WebCore::ResourceHandle::setSynchronousInternetHandle):
  38025. 2010-09-23 Alexey Proskuryakov <ap@apple.com>
  38026. Reviewed by Darin Adler.
  38027. https://bugs.webkit.org/show_bug.cgi?id=46326
  38028. Crash when trying to create a NodeIterator rooted at a document-less DocumentType node
  38029. Test: fast/dom/node-iterator-with-doctype-root.html
  38030. * dom/Document.cpp: (WebCore::Document::detachNodeIterator): Added a comment explaining that
  38031. attach/detach may not always be paired.
  38032. * dom/NodeIterator.cpp:
  38033. (WebCore::NodeIterator::NodeIterator): Don't try to register with the document if there is none.
  38034. (WebCore::NodeIterator::~NodeIterator): Ditto.
  38035. (WebCore::NodeIterator::detach): Ditto.
  38036. (WebCore::NodeIterator::updateForNodeRemoval): There should be a document if we're getting a
  38037. notification.
  38038. 2010-09-23 Patrick Gansterer <paroga@webkit.org>
  38039. Reviewed by Adam Roben.
  38040. Add synchronous loading for local files to ResourceHandleWin
  38041. https://bugs.webkit.org/show_bug.cgi?id=46392
  38042. * platform/network/win/ResourceHandleWin.cpp:
  38043. (WebCore::ResourceHandle::start):
  38044. 2010-09-23 Patrick Gansterer <paroga@webkit.org>
  38045. Reviewed by Adam Roben.
  38046. Remove (has|set)ReceivedResponse() from public ResourceHandleWin API
  38047. https://bugs.webkit.org/show_bug.cgi?id=46391
  38048. There is no need for this functions to be public, so remove them.
  38049. * platform/network/ResourceHandle.h:
  38050. * platform/network/win/ResourceHandleWin.cpp:
  38051. (WebCore::ResourceHandle::onRequestComplete):
  38052. 2010-09-23 David Hyatt <hyatt@apple.com>
  38053. Reviewed by Adele Peterson.
  38054. https://bugs.webkit.org/show_bug.cgi?id=46400
  38055. Add logicalLeft/Top getter/setters to line boxes.
  38056. * rendering/InlineBox.h:
  38057. (WebCore::InlineBox::logicalLeft):
  38058. (WebCore::InlineBox::setLogicalLeft):
  38059. (WebCore::InlineBox::logicalTop):
  38060. (WebCore::InlineBox::setLogicalTop):
  38061. 2010-09-23 Matthew Delaney <mdelaney@apple.com>
  38062. Reviewed by Simon Fraser.
  38063. Reduce minimum DOMTimer interval
  38064. https://bugs.webkit.org/show_bug.cgi?id=45362
  38065. Since the setInterval call is meant to reflect a global change for
  38066. all pages' DOMTimers, it's misleading to have it be a method on a
  38067. given page's settings' object. Thus, this patch changes the call to be static.
  38068. This simple change to using a static call instead of the page's setting's
  38069. method doesn't warrant a test.
  38070. * page/Settings.h: Changed the setInterval call to be static.
  38071. 2010-09-23 David Hyatt <hyatt@apple.com>
  38072. Reviewed by Dan Bernstein.
  38073. https://bugs.webkit.org/show_bug.cgi?id=46386, give line boxes a vertical bit so that it's easy to know
  38074. the overall direction of the line without having to ask the containing block.
  38075. Also couldn't resist some cleanup. Tightened up the type of the renderobject passed to RootInlineBox's
  38076. constructor to be a RenderBlock. Moved all the virtual logical height stuff outside of the SVG ifdef
  38077. since TrailingFloatsRootInlineBox uses it and should work without SVG enabled.
  38078. * rendering/EllipsisBox.h:
  38079. (WebCore::EllipsisBox::EllipsisBox):
  38080. * rendering/InlineBox.h:
  38081. (WebCore::InlineBox::InlineBox):
  38082. (WebCore::InlineBox::isVertical):
  38083. (WebCore::InlineBox::setIsVertical):
  38084. * rendering/InlineFlowBox.cpp:
  38085. (WebCore::InlineFlowBox::addToLine):
  38086. * rendering/RootInlineBox.cpp:
  38087. (WebCore::RootInlineBox::RootInlineBox):
  38088. (WebCore::RootInlineBox::placeEllipsis):
  38089. * rendering/RootInlineBox.h:
  38090. * rendering/SVGRootInlineBox.h:
  38091. (WebCore::SVGRootInlineBox::SVGRootInlineBox):
  38092. * rendering/TrailingFloatsRootInlineBox.h:
  38093. (WebCore::TrailingFloatsRootInlineBox::TrailingFloatsRootInlineBox):
  38094. 2010-09-23 Patrick Gansterer <paroga@webkit.org>
  38095. Reviewed by Adam Roben.
  38096. Check for a valid ResourceHandleClient in ResourceHandleWin
  38097. https://bugs.webkit.org/show_bug.cgi?id=46389
  38098. * platform/network/win/ResourceHandleWin.cpp:
  38099. (WebCore::ResourceHandle::onRequestComplete): Add checks to ensure client() is not 0.
  38100. 2010-09-23 Patrick Gansterer <paroga@webkit.org>
  38101. Reviewed by Adam Roben.
  38102. Fix ResourceHandleWin::cancel() for network resources
  38103. https://bugs.webkit.org/show_bug.cgi?id=46383
  38104. * platform/network/win/ResourceHandleWin.cpp:
  38105. (WebCore::ResourceHandle::onRequestComplete): Check it requestHandle is not 0.
  38106. (WebCore::ResourceHandle::cancel): Set requestHandle to 0.
  38107. 2010-09-23 Patrick Gansterer <paroga@webkit.org>
  38108. Reviewed by Adam Roben.
  38109. Add handling for form data and additional HTTP headers in ResourceHandleWin
  38110. https://bugs.webkit.org/show_bug.cgi?id=46369
  38111. * platform/network/win/ResourceHandleWin.cpp:
  38112. (WebCore::ResourceHandle::start):
  38113. 2010-09-23 Eric Carlson <eric.carlson@apple.com>
  38114. Reviewed by Simon Fraser
  38115. 'seeking' event should always fire
  38116. https://bugs.webkit.org/show_bug.cgi?id=45694
  38117. Update seek algorithm to match current spec.
  38118. * html/HTMLMediaElement.cpp:
  38119. (WebCore::HTMLMediaElement::setReadyState): Don't need to fire 'seeking' event here.
  38120. (WebCore::HTMLMediaElement::seek): Always fire 'seeking'. Update comments.
  38121. (WebCore::HTMLMediaElement::finishSeek): Update comments.
  38122. (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Ditto.
  38123. 2010-09-23 Eric Uhrhane <ericu@chromium.org>
  38124. Reviewed by David Levin.
  38125. Rename FileWriterClient to AsyncFileWriterClient.
  38126. https://bugs.webkit.org/show_bug.cgi?id=46325
  38127. * GNUmakefile.am:
  38128. * WebCore.gypi:
  38129. * WebCore.vcproj/WebCore.vcproj:
  38130. * WebCore.xcodeproj/project.pbxproj:
  38131. * fileapi/AsyncFileWriter.h:
  38132. * fileapi/AsyncFileWriterClient.h: Copied from WebCore/fileapi/FileWriterClient.h.
  38133. * fileapi/FileWriter.h:
  38134. * fileapi/FileWriterClient.h: Removed.
  38135. * platform/AsyncFileSystem.h:
  38136. 2010-09-23 David Hyatt <hyatt@apple.com>
  38137. Reviewed by Dan Bernstein.
  38138. https://bugs.webkit.org/show_bug.cgi?id=46378, rename width/height on line boxes to logicalWidth/logicalHeight.
  38139. * editing/visible_units.cpp:
  38140. (WebCore::previousLinePosition):
  38141. (WebCore::nextLinePosition):
  38142. * rendering/EllipsisBox.cpp:
  38143. (WebCore::EllipsisBox::paint):
  38144. (WebCore::EllipsisBox::paintSelection):
  38145. (WebCore::EllipsisBox::nodeAtPoint):
  38146. * rendering/InlineBox.cpp:
  38147. (WebCore::InlineBox::logicalHeight):
  38148. (WebCore::InlineBox::canAccommodateEllipsis):
  38149. * rendering/InlineBox.h:
  38150. (WebCore::InlineBox::InlineBox):
  38151. (WebCore::InlineBox::hasVirtualLogicalHeight):
  38152. (WebCore::InlineBox::setHasVirtualLogicalHeight):
  38153. (WebCore::InlineBox::virtualLogicalHeight):
  38154. (WebCore::InlineBox::setLogicalWidth):
  38155. (WebCore::InlineBox::logicalWidth):
  38156. * rendering/InlineFlowBox.cpp:
  38157. (WebCore::InlineFlowBox::placeBoxesHorizontally):
  38158. (WebCore::InlineFlowBox::placeBoxesVertically):
  38159. (WebCore::InlineFlowBox::computeVerticalOverflow):
  38160. (WebCore::InlineFlowBox::nodeAtPoint):
  38161. (WebCore::InlineFlowBox::paintFillLayer):
  38162. (WebCore::InlineFlowBox::paintBoxDecorations):
  38163. (WebCore::InlineFlowBox::paintMask):
  38164. (WebCore::InlineFlowBox::paintTextDecorations):
  38165. (WebCore::InlineFlowBox::placeEllipsisBox):
  38166. * rendering/InlineFlowBox.h:
  38167. (WebCore::InlineFlowBox::visibleOverflowRect):
  38168. (WebCore::InlineFlowBox::bottomLayoutOverflow):
  38169. (WebCore::InlineFlowBox::rightLayoutOverflow):
  38170. (WebCore::InlineFlowBox::layoutOverflowRect):
  38171. (WebCore::InlineFlowBox::bottomVisualOverflow):
  38172. (WebCore::InlineFlowBox::rightVisualOverflow):
  38173. (WebCore::InlineFlowBox::visualOverflowRect):
  38174. (WebCore::InlineFlowBox::setHorizontalOverflowPositions):
  38175. (WebCore::InlineFlowBox::setVerticalOverflowPositions):
  38176. * rendering/InlineTextBox.cpp:
  38177. (WebCore::InlineTextBox::selectionRect):
  38178. (WebCore::InlineTextBox::placeEllipsisBox):
  38179. (WebCore::InlineTextBox::nodeAtPoint):
  38180. (WebCore::InlineTextBox::paint):
  38181. (WebCore::InlineTextBox::paintSelection):
  38182. (WebCore::InlineTextBox::paintCustomHighlight):
  38183. (WebCore::InlineTextBox::paintDecoration):
  38184. (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
  38185. (WebCore::InlineTextBox::paintTextMatchMarker):
  38186. (WebCore::InlineTextBox::paintCompositionUnderline):
  38187. * rendering/InlineTextBox.h:
  38188. (WebCore::InlineTextBox::calculateBoundaries):
  38189. (WebCore::InlineTextBox::setSpaceAdd):
  38190. * rendering/RenderBlock.cpp:
  38191. (WebCore::RenderBlock::paintEllipsisBoxes):
  38192. (WebCore::RenderBlock::rightmostPosition):
  38193. (WebCore::RenderBlock::adjustForBorderFit):
  38194. (WebCore::RenderBlock::addFocusRingRects):
  38195. * rendering/RenderBlockLineLayout.cpp:
  38196. (WebCore::RenderBlock::computeHorizontalPositionsForLine):
  38197. (WebCore::RenderBlock::checkLinesForTextOverflow):
  38198. * rendering/RenderBox.cpp:
  38199. (WebCore::RenderBox::paintCustomHighlight):
  38200. (WebCore::RenderBox::containingBlockWidthForPositioned):
  38201. * rendering/RenderFlexibleBox.cpp:
  38202. (WebCore::RenderFlexibleBox::applyLineClamp):
  38203. * rendering/RenderInline.cpp:
  38204. (WebCore::RenderInline::absoluteRects):
  38205. (WebCore::RenderInline::absoluteQuads):
  38206. (WebCore::RenderInline::linesBoundingBox):
  38207. (WebCore::RenderInline::addFocusRingRects):
  38208. (WebCore::RenderInline::paintOutline):
  38209. * rendering/RenderSVGInline.cpp:
  38210. (WebCore::RenderSVGInline::createInlineFlowBox):
  38211. (WebCore::RenderSVGInline::absoluteQuads):
  38212. * rendering/RenderSVGInlineText.cpp:
  38213. (WebCore::RenderSVGInlineText::createTextBox):
  38214. * rendering/RenderSVGText.cpp:
  38215. (WebCore::RenderSVGText::createRootInlineBox):
  38216. * rendering/RenderText.cpp:
  38217. (WebCore::RenderText::absoluteRects):
  38218. (WebCore::RenderText::absoluteRectsForRange):
  38219. (WebCore::RenderText::absoluteQuadsForRange):
  38220. (WebCore::RenderText::positionForPoint):
  38221. (WebCore::RenderText::localCaretRect):
  38222. (WebCore::RenderText::linesBoundingBox):
  38223. * rendering/RenderTreeAsText.cpp:
  38224. (WebCore::writeTextRun):
  38225. * rendering/RootInlineBox.cpp:
  38226. (WebCore::RootInlineBox::canAccommodateEllipsis):
  38227. (WebCore::RootInlineBox::placeEllipsis):
  38228. (WebCore::RootInlineBox::addHighlightOverflow):
  38229. (WebCore::RootInlineBox::paintCustomHighlight):
  38230. (WebCore::RootInlineBox::fillLineSelectionGap):
  38231. (WebCore::RootInlineBox::closestLeafChildForXPos):
  38232. * rendering/SVGInlineFlowBox.h:
  38233. (WebCore::SVGInlineFlowBox::SVGInlineFlowBox):
  38234. (WebCore::SVGInlineFlowBox::virtualLogicalHeight):
  38235. (WebCore::SVGInlineFlowBox::setLogicalHeight):
  38236. * rendering/SVGInlineTextBox.cpp:
  38237. (WebCore::SVGInlineTextBox::SVGInlineTextBox):
  38238. * rendering/SVGInlineTextBox.h:
  38239. (WebCore::SVGInlineTextBox::virtualLogicalHeight):
  38240. (WebCore::SVGInlineTextBox::setLogicalHeight):
  38241. (WebCore::SVGInlineTextBox::selectionHeight):
  38242. * rendering/SVGRenderTreeAsText.cpp:
  38243. (WebCore::writeRenderSVGTextBox):
  38244. * rendering/SVGRootInlineBox.cpp:
  38245. (WebCore::SVGRootInlineBox::layoutChildBoxes):
  38246. (WebCore::SVGRootInlineBox::layoutRootBox):
  38247. * rendering/SVGRootInlineBox.h:
  38248. (WebCore::SVGRootInlineBox::SVGRootInlineBox):
  38249. (WebCore::SVGRootInlineBox::virtualLogicalHeight):
  38250. (WebCore::SVGRootInlineBox::setLogicalHeight):
  38251. * rendering/TrailingFloatsRootInlineBox.h:
  38252. (WebCore::TrailingFloatsRootInlineBox::TrailingFloatsRootInlineBox):
  38253. (WebCore::TrailingFloatsRootInlineBox::virtualLogicalHeight):
  38254. 2010-09-23 Matthew Delaney <mdelaney@apple.com>
  38255. Reviewed by Oliver Hunt.
  38256. context.drawImage with (source rect's height) = -(input image's native height) draws nothing
  38257. https://bugs.webkit.org/show_bug.cgi?id=46243
  38258. This patch changes canvasrenderingcontext2d's drawImage with an image element to
  38259. normalize the source and dest rects to acheive the desired canvas spec behavior
  38260. of allowing negative widths and heights that don't cause flipping and fix the
  38261. adverse behavior of specifying a source rect height of negative the source image's height
  38262. Tests: canvas/philip/tests/2d.drawImage.negativeSourceHeight.html
  38263. canvas/philip/tests/2d.drawImage.negativeSourceHeight2.html
  38264. canvas/philip/tests/2d.drawImage.negativeSourceHeightAndWidth.html
  38265. * html/canvas/CanvasRenderingContext2D.cpp: Normalize rects in drawImage before calling
  38266. lower level draw calls.
  38267. 2010-09-23 Renata Hodovan <reni@inf.u-szeged.hu>
  38268. Reviewed by Dirk Schulze.
  38269. SVGFEMorphologyElement doesn't support dynamic invalidation, when attributes change.
  38270. https://bugs.webkit.org/show_bug.cgi?id=46363
  38271. The patch also implements the simple setRadius method.
  38272. Tests: svg/dynamic-updates/SVGFEMorphologyElement-dom-in-attr.html
  38273. svg/dynamic-updates/SVGFEMorphologyElement-dom-operator-attr.html
  38274. svg/dynamic-updates/SVGFEMorphologyElement-dom-radius-attr.html
  38275. svg/dynamic-updates/SVGFEMorphologyElement-svgdom-in-prop.html
  38276. svg/dynamic-updates/SVGFEMorphologyElement-svgdom-operator-prop.html
  38277. svg/dynamic-updates/SVGFEMorphologyElement-svgdom-radius-call.html
  38278. * svg/SVGFEMorphologyElement.cpp:
  38279. (WebCore::SVGFEMorphologyElement::setRadius):
  38280. (WebCore::SVGFEMorphologyElement::svgAttributeChanged):
  38281. * svg/SVGFEMorphologyElement.h:
  38282. 2010-09-23 Patrick Gansterer <paroga@webkit.org>
  38283. Reviewed by Adam Roben.
  38284. Add synchronous loading for network resources to ResourceHandleWin
  38285. https://bugs.webkit.org/show_bug.cgi?id=46364
  38286. Use return value of onRequestComplete() to indicate that an additional
  38287. call to it is required for receiving remaining network data.
  38288. * platform/network/ResourceHandle.h:
  38289. * platform/network/win/ResourceHandleWin.cpp:
  38290. (WebCore::ResourceHandle::onRequestComplete):
  38291. (WebCore::ResourceHandle::start):
  38292. 2010-09-23 Nate Chapin <japhet@chromium.org>
  38293. Reviewed by Darin Fisher.
  38294. Implement <a ping> (disabled by default).
  38295. https://bugs.webkit.org/show_bug.cgi?id=30458
  38296. Tests: http/tests/navigation/ping-cross-origin-from-https.html
  38297. http/tests/navigation/ping-cross-origin.html
  38298. http/tests/navigation/ping-same-origin.html
  38299. * html/HTMLAnchorElement.cpp:
  38300. (WebCore::HTMLAnchorElement::defaultEventHandler):
  38301. (WebCore::HTMLAnchorElement::sendPings):
  38302. * html/HTMLAnchorElement.h:
  38303. * html/HTMLAttributeNames.in:
  38304. * loader/PingLoader.cpp:
  38305. (WebCore::PingLoader::sendPing): Set ping-specific headers.
  38306. (WebCore::PingLoader::PingLoader):
  38307. * loader/PingLoader.h:
  38308. (WebCore::PingLoader::timeout): Ensure pings eventually timeout, since
  38309. the normal cancel mechanism can't stop them.
  38310. * page/Settings.cpp:
  38311. * page/Settings.h: Add hyperlinkAuditingEnabled.
  38312. 2010-09-23 Steve VanDeBogart <vandebo@chromium.org>
  38313. Reviewed by David Levin.
  38314. https://bugs.webkit.org/show_bug.cgi?id=46312
  38315. Use Skia's SkSafeRef/SkSafeUnref functions instead of safeRef/safeUnref.
  38316. * platform/graphics/chromium/FontLinux.cpp:
  38317. (WebCore::Font::drawGlyphs):
  38318. * platform/graphics/chromium/FontPlatformDataLinux.cpp:
  38319. (WebCore::FontPlatformData::FontPlatformData):
  38320. (WebCore::FontPlatformData::~FontPlatformData):
  38321. * platform/graphics/skia/GradientSkia.cpp:
  38322. (WebCore::Gradient::platformDestroy):
  38323. * platform/graphics/skia/PatternSkia.cpp:
  38324. (WebCore::Pattern::platformDestroy):
  38325. * platform/graphics/skia/PlatformContextSkia.cpp:
  38326. (WebCore::PlatformContextSkia::State::State):
  38327. (WebCore::PlatformContextSkia::State::~State):
  38328. (WebCore::PlatformContextSkia::drawRect):
  38329. (WebCore::PlatformContextSkia::setStrokeShader):
  38330. (WebCore::PlatformContextSkia::setFillShader):
  38331. (WebCore::PlatformContextSkia::setDashPathEffect):
  38332. * platform/graphics/skia/SkiaFontWin.cpp:
  38333. (WebCore::paintSkiaText):
  38334. 2010-09-23 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  38335. Reviewed by Csaba Osztrogonác.
  38336. Fix warnings regarding print format in 64 bits
  38337. https://bugs.webkit.org/show_bug.cgi?id=46357
  38338. Use inttypes.h in order to have portable print formats across 32 and
  38339. 64 bits.
  38340. * platform/sql/SQLiteFileSystem.cpp:
  38341. (WebCore::SQLiteFileSystem::getFileNameForNewDatabase):
  38342. 2010-09-23 Chris Rogers <crogers@google.com>
  38343. Reviewed by Kenneth Russell.
  38344. Add AudioContext files
  38345. https://bugs.webkit.org/show_bug.cgi?id=44890
  38346. No new tests since audio API is not yet implemented.
  38347. * webaudio/AudioContext.cpp: Added.
  38348. (WebCore::AudioContext::createAudioRequest):
  38349. (WebCore::AudioContext::create):
  38350. (WebCore::AudioContext::AudioContext):
  38351. (WebCore::AudioContext::~AudioContext):
  38352. (WebCore::AudioContext::lazyInitialize):
  38353. (WebCore::AudioContext::uninitialize):
  38354. (WebCore::AudioContext::isInitialized):
  38355. (WebCore::AudioContext::isRunnable):
  38356. (WebCore::AudioContext::stop):
  38357. (WebCore::AudioContext::document):
  38358. (WebCore::AudioContext::hasDocument):
  38359. (WebCore::AudioContext::refBuffer):
  38360. (WebCore::AudioContext::createBuffer):
  38361. (WebCore::AudioContext::createBufferSource):
  38362. (WebCore::AudioContext::createJavaScriptNode):
  38363. (WebCore::AudioContext::createLowPass2Filter):
  38364. (WebCore::AudioContext::createHighPass2Filter):
  38365. (WebCore::AudioContext::createPanner):
  38366. (WebCore::AudioContext::createConvolver):
  38367. (WebCore::AudioContext::createAnalyser):
  38368. (WebCore::AudioContext::createGainNode):
  38369. (WebCore::AudioContext::createDelayNode):
  38370. (WebCore::AudioContext::createChannelSplitter):
  38371. (WebCore::AudioContext::createChannelMerger):
  38372. (WebCore::AudioContext::notifyNodeFinishedProcessing):
  38373. (WebCore::AudioContext::derefFinishedSourceNodes):
  38374. (WebCore::AudioContext::refNode):
  38375. (WebCore::AudioContext::derefNode):
  38376. (WebCore::AudioContext::derefUnfinishedSourceNodes):
  38377. (WebCore::AudioContext::lock):
  38378. (WebCore::AudioContext::tryLock):
  38379. (WebCore::AudioContext::unlock):
  38380. (WebCore::AudioContext::isAudioThread):
  38381. (WebCore::AudioContext::isGraphOwner):
  38382. (WebCore::AudioContext::addDeferredFinishDeref):
  38383. (WebCore::AudioContext::handlePostRenderTasks):
  38384. (WebCore::AudioContext::handleDeferredFinishDerefs):
  38385. (WebCore::AudioContext::markForDeletion):
  38386. (WebCore::AudioContext::deleteMarkedNodes):
  38387. * webaudio/AudioContext.h: Added.
  38388. (WebCore::AudioContext::destination):
  38389. (WebCore::AudioContext::currentTime):
  38390. (WebCore::AudioContext::sampleRate):
  38391. (WebCore::AudioContext::listener):
  38392. (WebCore::AudioContext::temporaryMonoBus):
  38393. (WebCore::AudioContext::temporaryStereoBus):
  38394. (WebCore::AudioContext::incrementConnectionCount):
  38395. (WebCore::AudioContext::connectionCount):
  38396. (WebCore::AudioContext::setAudioThread):
  38397. (WebCore::AudioContext::audioThread):
  38398. (WebCore::AudioContext::isAudioThreadFinished):
  38399. (WebCore::AudioContext::AutoLocker::AutoLocker):
  38400. (WebCore::AudioContext::AutoLocker::~AutoLocker):
  38401. (WebCore::AudioContext::RefInfo::RefInfo):
  38402. * webaudio/AudioContext.idl: Added.
  38403. 2010-09-23 Jeremy Orlow <jorlow@chromium.org>
  38404. Reviewed by Steve Block.
  38405. IndexedDB shouldn't crash on invalid index names
  38406. https://bugs.webkit.org/show_bug.cgi?id=46362
  38407. For now, return null. In a later patch, we'll do proper exception raising.
  38408. * storage/IDBObjectStore.cpp:
  38409. (WebCore::IDBObjectStore::index):
  38410. 2010-09-23 Abhishek Arya <inferno@chromium.org>
  38411. Reviewed by Dave Hyatt.
  38412. Fix the memory safety issue by checking containerObject is a RenderBox
  38413. before doing the transforms.
  38414. https://bugs.webkit.org/show_bug.cgi?id=46365
  38415. Test: compositing/overflow/get-transform-from-non-box-container.html
  38416. * rendering/RenderObject.cpp:
  38417. (WebCore::RenderObject::getTransformFromContainer):
  38418. 2010-09-23 David Hyatt <hyatt@apple.com>
  38419. Reviewed by Simon Fraser.
  38420. https://bugs.webkit.org/show_bug.cgi?id=46314.
  38421. The RenderView's block-flow should match the root element's block-flow. When we create (or re-create) the style for the document, take
  38422. the block-flow from the document element's style and use it if it's available.
  38423. Also patch styleDidChange so that if the block-flow changes dynamically after we have already made the document style, we'll propagate
  38424. the change back up to the RenderView and have it do a relayout.
  38425. No tests possible yet, since you can't see the document's style anywhere, and block-flow isn't doing anything to affect layout
  38426. yet.
  38427. * css/CSSStyleSelector.cpp:
  38428. (WebCore::CSSStyleSelector::styleForDocument):
  38429. * rendering/RenderBox.cpp:
  38430. (WebCore::RenderBox::styleDidChange):
  38431. 2010-09-23 Pavel Podivilov <podivilov@chromium.org>
  38432. Reviewed by Yury Semikhatsky.
  38433. Web Inspector: source frame popups shouldn't disappear when hovered
  38434. https://bugs.webkit.org/show_bug.cgi?id=46358
  38435. * inspector/front-end/SourceFrame.js:
  38436. (WebInspector.SourceFrame.prototype._mouseMove):
  38437. 2010-09-23 Mario Sanchez Prada <msanchez@igalia.com>
  38438. Reviewed by Chris Fleizach.
  38439. [Regression][Gtk] Left and Right Arrows no longer function when caret browsing is enabled
  38440. https://bugs.webkit.org/show_bug.cgi?id=45375
  38441. Consider caret browsing for Move commands.
  38442. Test: platform/gtk/editing/selection/caret-mode-left-right-arrows.html
  38443. * editing/EditorCommand.cpp:
  38444. (WebCore::createCommandMap): Use "caret browsing aware functions"
  38445. as isEnabled() function for those commands moving the caret
  38446. forward and backward across characters, words, lines or paragraphs,
  38447. not just left and right, as it was the case so far.
  38448. 2010-09-23 Brad Moore <bradm@apple.com>
  38449. Reviewed by Dan Bernstein.
  38450. Address a remaining discrepancy in piecewise text measurement
  38451. https://bugs.webkit.org/show_bug.cgi?id=45796
  38452. Don't include always-integral space widths in the floating point accumulator designed
  38453. to minimize precision loss. This brings whole-string measurement in line with piecewise
  38454. text measurement when dealing with fonts with fractional advances.
  38455. * platform/graphics/WidthIterator.cpp:
  38456. (WebCore::WidthIterator::advance): Change the associativity of width addition to minimize precision loss.
  38457. 2010-09-23 Patrick Gansterer <paroga@webkit.org>
  38458. Reviewed by Adam Roben.
  38459. Cleanup network communication code in ResourceHandleWin
  38460. https://bugs.webkit.org/show_bug.cgi?id=46200
  38461. Add logic for request handling directly into ResourceHandle::start and fix style.
  38462. Use Unicode instead of ASCII Windows API functions.
  38463. * platform/network/ResourceHandleInternal.h:
  38464. (WebCore::ResourceHandleInternal::ResourceHandleInternal):
  38465. * platform/network/win/ResourceHandleWin.cpp:
  38466. (WebCore::ResourceHandle::onRequestComplete):
  38467. (WebCore::ResourceHandle::start):
  38468. 2010-09-23 Luiz Agostini <luiz.agostini@openbossa.org>
  38469. Reviewed by Andreas Kling.
  38470. Invalid assertion in ScriptCallback
  38471. https://bugs.webkit.org/show_bug.cgi?id=46348
  38472. Removing invalid ASSERT from method ScriptCallback::call().
  38473. * bindings/js/ScriptFunctionCall.cpp:
  38474. (WebCore::ScriptCallback::call):
  38475. 2010-09-23 Martin Robinson <mrobinson@igalia.com>
  38476. Reviewed by Ariya Hidayat.
  38477. [Cairo] Generalize ContextShadow from the Qt port and use it for shadow code
  38478. https://bugs.webkit.org/show_bug.cgi?id=45599
  38479. Make ContextShadow platform-independent and add a Cairo implementation. This is currently
  38480. disabled for Cairo, but will be enabled in a followup patch with new baselines.
  38481. No new tests as this does not change functionality.
  38482. * GNUmakefile.am: Update source lists.
  38483. * WebCore.pro: Update source lists.
  38484. * platform/graphics/ContextShadow.cpp: Added. A generalized version of Qt's ContextShadow.
  38485. (WebCore::ContextShadow::ContextShadow):
  38486. (WebCore::ContextShadow::clear):
  38487. (WebCore::ContextShadow::blurLayerImage):
  38488. (WebCore::ContextShadow::calculateMinimalLayerRect):
  38489. * platform/graphics/ContextShadow.h: Added.
  38490. (WebCore::ContextShadow::offset):
  38491. * platform/graphics/cairo/CairoUtilities.cpp: Added.
  38492. (WebCore::setSourceRGBAFromColor): A utility to set the source RGBA on a Cairo surface from a WebCore color.
  38493. * platform/graphics/cairo/CairoUtilities.h: Added.
  38494. * platform/graphics/cairo/ContextShadowCairo.cpp: Added.
  38495. (WebCore::purgeScratchBuffer): Static function to purge the shadow buffer.
  38496. (WebCore::PurgeScratchBufferTimer::fired): Timer callback.
  38497. (WebCore::scheduleScratchBufferPurge): Schedule's a WebCore timer to purge the shadow buffer.
  38498. (WebCore::getScratchBuffer): Create or reuse the scratch buffer.
  38499. (WebCore::ContextShadow::beginShadowLayer): Added.
  38500. (WebCore::ContextShadow::endShadowLayer): Added.
  38501. * platform/graphics/gtk/CairoUtilities.cpp: Removed.
  38502. * platform/graphics/gtk/CairoUtilities.h: Removed.
  38503. * platform/graphics/gtk/GdkCairoUtilities.cpp: Renamed from CairoUtilities.cpp.
  38504. (getCairoSurfacePixel):
  38505. (getGdkPixbufPixel):
  38506. (cairoImageSurfaceToGdkPixbuf):
  38507. * platform/graphics/gtk/GdkCairoUtilities.h: Added.
  38508. * platform/graphics/gtk/ImageBufferGtk.cpp:
  38509. * platform/graphics/gtk/ImageGtk.cpp:
  38510. * platform/graphics/qt/ContextShadow.cpp: Removed.
  38511. * platform/graphics/qt/ContextShadow.h: Removed.
  38512. * platform/graphics/qt/ContextShadowQt.cpp: Added. Adapted from code originally in ContextShadow.cpp.
  38513. (WebCore::ShadowBuffer::ShadowBuffer):
  38514. (WebCore::ShadowBuffer::scratchImage):
  38515. (WebCore::ShadowBuffer::schedulePurge):
  38516. (WebCore::ShadowBuffer::timerEvent):
  38517. (WebCore::ContextShadow::beginShadowLayer):
  38518. (WebCore::ContextShadow::endShadowLayer):
  38519. * platform/graphics/qt/FontQt.cpp:
  38520. (WebCore::drawTextCommon): Updated to reflect new ContextShadow members.
  38521. * platform/graphics/qt/GraphicsContextQt.cpp:
  38522. (WebCore::GraphicsContextPlatformPrivate::hasShadow): Updated to reflect new ContextShadow members.
  38523. (WebCore::GraphicsContext::strokeArc): Ditto.
  38524. (WebCore::GraphicsContext::drawConvexPolygon): Ditto.
  38525. (WebCore::GraphicsContext::fillPath): Ditto.
  38526. (WebCore::GraphicsContext::strokePath): Ditto.
  38527. (WebCore::GraphicsContext::fillRect): Ditto.
  38528. (WebCore::GraphicsContext::fillRoundedRect): Ditto.
  38529. (WebCore::GraphicsContext::setPlatformShadow): Ditto.
  38530. 2010-09-23 Patrick Gansterer <paroga@webkit.org>
  38531. Reviewed by Adam Roben.
  38532. Add internetStatusCallback to ResourceHandleWin.
  38533. https://bugs.webkit.org/show_bug.cgi?id=46187
  38534. Add callback for asynchronous network transfer.
  38535. * platform/network/ResourceHandle.h:
  38536. * platform/network/ResourceHandleInternal.h:
  38537. * platform/network/win/ResourceHandleWin.cpp:
  38538. (WebCore::callOnRedirect):
  38539. (WebCore::callOnRequestComplete):
  38540. (WebCore::ResourceHandle::internetStatusCallback):
  38541. (WebCore::ResourceHandle::onRedirect):
  38542. 2010-09-23 Andrei Popescu <andreip@google.com>
  38543. Reviewed by Jeremy Orlow.
  38544. IDBTransactionCoordinator contains a broken assertion.
  38545. https://bugs.webkit.org/show_bug.cgi?id=46356
  38546. Remove the broken assertion.
  38547. * storage/IDBTransactionCoordinator.cpp:
  38548. (WebCore::IDBTransactionCoordinator::processStartedTransactions):
  38549. 2010-09-23 Pavel Podivilov <podivilov@chromium.org>
  38550. Reviewed by Pavel Feldman.
  38551. Web Inspector: highlight DOM nodes when navigating the DOM with keyboard
  38552. https://bugs.webkit.org/show_bug.cgi?id=46346
  38553. * inspector/front-end/ElementsTreeOutline.js:
  38554. (WebInspector.ElementsTreeElement.prototype.onselect):
  38555. * inspector/front-end/treeoutline.js:
  38556. (TreeOutline.prototype._treeKeyDown):
  38557. (TreeElement.prototype.selectOnMouseDown):
  38558. (TreeElement.prototype.select):
  38559. 2010-09-23 Andrei Popescu <andreip@google.com>
  38560. Reviewed by Jeremy Orlow.
  38561. [Chromium] Build broken due to missing include in IDBTransactionBackendImpl.h
  38562. https://bugs.webkit.org/show_bug.cgi?id=46352
  38563. No new tests needed, build fix.
  38564. * storage/IDBTransaction.cpp:
  38565. (WebCore::IDBTransaction::objectStore):
  38566. * storage/IDBTransactionBackendImpl.h:
  38567. 2010-09-23 Andrei Popescu <andreip@google.com>
  38568. Reviewed by Jeremy Orlow.
  38569. IDBObjectStore::get should run in a transaction.
  38570. https://bugs.webkit.org/show_bug.cgi?id=44700
  38571. Implements logic for running IDBObjectStore::get() in a transaction.
  38572. Refactors the pending transaction monitor and the transaction coordinator
  38573. to use pointers instead of transaction IDs.
  38574. * bindings/v8/V8Proxy.cpp:
  38575. (WebCore::V8Proxy::didLeaveScriptContext):
  38576. * storage/IDBCursorBackendImpl.cpp:
  38577. * storage/IDBDatabase.cpp:
  38578. (WebCore::IDBDatabase::objectStore):
  38579. * storage/IDBDatabaseBackendImpl.cpp:
  38580. (WebCore::IDBDatabaseBackendImpl::objectStore):
  38581. * storage/IDBDatabaseBackendImpl.h:
  38582. (WebCore::IDBDatabaseBackendImpl::transactionCoordinator):
  38583. * storage/IDBFactoryBackendImpl.cpp:
  38584. * storage/IDBFactoryBackendImpl.h:
  38585. * storage/IDBFactoryBackendInterface.h:
  38586. * storage/IDBObjectStore.cpp:
  38587. (WebCore::IDBObjectStore::IDBObjectStore):
  38588. (WebCore::IDBObjectStore::get):
  38589. * storage/IDBObjectStore.h:
  38590. (WebCore::IDBObjectStore::create):
  38591. * storage/IDBObjectStoreBackendImpl.cpp:
  38592. (WebCore::IDBTask::IDBTask):
  38593. (WebCore::IDBTask::performTask):
  38594. (WebCore::createTask):
  38595. (WebCore::IDBObjectStoreBackendImpl::get):
  38596. (WebCore::IDBObjectStoreBackendImpl::getInternal):
  38597. * storage/IDBObjectStoreBackendImpl.h:
  38598. * storage/IDBObjectStoreBackendInterface.h:
  38599. * storage/IDBPendingTransactionMonitor.cpp:
  38600. (WebCore::IDBPendingTransactionMonitor::addPendingTransaction):
  38601. (WebCore::IDBPendingTransactionMonitor::removePendingTransaction):
  38602. (WebCore::IDBPendingTransactionMonitor::abortPendingTransactions):
  38603. * storage/IDBPendingTransactionMonitor.h:
  38604. * storage/IDBRequest.cpp:
  38605. (WebCore::IDBRequest::IDBRequest):
  38606. (WebCore::IDBRequest::~IDBRequest):
  38607. (WebCore::IDBRequest::onSuccess):
  38608. (WebCore::IDBRequest::timerFired):
  38609. * storage/IDBRequest.h:
  38610. (WebCore::IDBRequest::create):
  38611. * storage/IDBTransaction.cpp:
  38612. (WebCore::IDBTransaction::IDBTransaction):
  38613. (WebCore::IDBTransaction::objectStore):
  38614. * storage/IDBTransactionBackendImpl.cpp:
  38615. (WebCore::IDBTransactionBackendImpl::create):
  38616. (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
  38617. (WebCore::IDBTransactionBackendImpl::objectStore):
  38618. (WebCore::IDBTransactionBackendImpl::scheduleTask):
  38619. (WebCore::IDBTransactionBackendImpl::abort):
  38620. (WebCore::IDBTransactionBackendImpl::didCompleteTaskEvents):
  38621. (WebCore::IDBTransactionBackendImpl::run):
  38622. (WebCore::IDBTransactionBackendImpl::start):
  38623. (WebCore::IDBTransactionBackendImpl::commit):
  38624. (WebCore::IDBTransactionBackendImpl::timerFired):
  38625. * storage/IDBTransactionBackendImpl.h:
  38626. (WebCore::IDBTransactionBackendImpl::~IDBTransactionBackendImpl):
  38627. (WebCore::IDBTransactionBackendImpl::isFinished):
  38628. * storage/IDBTransactionBackendInterface.h:
  38629. * storage/IDBTransactionCoordinator.cpp:
  38630. (WebCore::IDBTransactionCoordinator::createTransaction):
  38631. (WebCore::IDBTransactionCoordinator::didStartTransaction):
  38632. (WebCore::IDBTransactionCoordinator::didFinishTransaction):
  38633. (WebCore::IDBTransactionCoordinator::processStartedTransactions):
  38634. * storage/IDBTransactionCoordinator.h:
  38635. 2010-09-23 Patrick Gansterer <paroga@webkit.org>
  38636. Reviewed by Adam Roben.
  38637. [WINCE] Remove usage of MemoryManager
  38638. https://bugs.webkit.org/show_bug.cgi?id=46206
  38639. MemoryManager does not provide any extra value, so remove it.
  38640. * page/wince/FrameWinCE.cpp:
  38641. (WebCore::imageFromSelection):
  38642. * platform/graphics/wince/PlatformPathWinCE.cpp:
  38643. (WebCore::drawPolygons):
  38644. 2010-09-23 Darin Adler <darin@apple.com>
  38645. Reviewed by Chris Fleizach.
  38646. media/video-controls-with-mutation-event-handler.html crashing
  38647. https://bugs.webkit.org/show_bug.cgi?id=46169
  38648. * rendering/MediaControlElements.cpp:
  38649. (WebCore::MediaControlInputElement::MediaControlInputElement): Don't take a type argument.
  38650. We can't set the type until after the element is created beacuse of reference counting rules.
  38651. (WebCore::MediaControlMuteButtonElement::MediaControlMuteButtonElement): Don't pass the type.
  38652. (WebCore::MediaControlMuteButtonElement::create): Set the type.
  38653. (WebCore::MediaControlPlayButtonElement::MediaControlPlayButtonElement): More of the same.
  38654. (WebCore::MediaControlPlayButtonElement::create): Ditto.
  38655. (WebCore::MediaControlSeekButtonElement::MediaControlSeekButtonElement): Ditto.
  38656. (WebCore::MediaControlSeekButtonElement::create): Ditto.
  38657. (WebCore::MediaControlRewindButtonElement::MediaControlRewindButtonElement): Ditto.
  38658. (WebCore::MediaControlRewindButtonElement::create): Ditto.
  38659. (WebCore::MediaControlReturnToRealtimeButtonElement::MediaControlReturnToRealtimeButtonElement): Ditto.
  38660. (WebCore::MediaControlReturnToRealtimeButtonElement::create): Ditto.
  38661. (WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement): Ditto.
  38662. (WebCore::MediaControlToggleClosedCaptionsButtonElement::create): Ditto.
  38663. (WebCore::MediaControlTimelineElement::MediaControlTimelineElement): Ditto.
  38664. (WebCore::MediaControlTimelineElement::create): Ditto.
  38665. (WebCore::MediaControlVolumeSliderElement::MediaControlVolumeSliderElement): Ditto.
  38666. (WebCore::MediaControlVolumeSliderElement::create): Ditto.
  38667. (WebCore::MediaControlFullscreenButtonElement::MediaControlFullscreenButtonElement): Ditto.
  38668. (WebCore::MediaControlFullscreenButtonElement::create): Ditto.
  38669. * rendering/MediaControlElements.h: Removed the type argument from the MediaControlInputElement
  38670. constructor.
  38671. 2010-09-22 Luke Macpherson <macpherson@chromium.org>
  38672. Reviewed by Alexey Proskuryakov.
  38673. Don't allow empty strings as tokens in xmlhttprequest, as per rfc2616 section 2.2.
  38674. XMLHttpRequest: setRequestHeader() does not throw SYNTAX_ERR exception if the header field name is empty
  38675. https://bugs.webkit.org/show_bug.cgi?id=46151
  38676. Test: http/tests/xmlhttprequest/xmlhttprequest-setrequestheader-no-name.html
  38677. * xml/XMLHttpRequest.cpp:
  38678. (WebCore::isValidToken):
  38679. 2010-09-22 Kwang Yul Seo <skyul@company100.net>
  38680. Reviewed by Adam Barth.
  38681. [BREWMP] Enable touch events
  38682. https://bugs.webkit.org/show_bug.cgi?id=46321
  38683. Enable TOUCH_EVENTS by porting PlatformTouchEvent and PlatformTouchPoint.
  38684. Brew MP does not support multi touch, so enable only single touch for now.
  38685. * platform/PlatformTouchEvent.h:
  38686. * platform/PlatformTouchPoint.h:
  38687. * platform/brew/PlatformTouchEventBrew.cpp: Added.
  38688. (WebCore::PlatformTouchEvent::PlatformTouchEvent):
  38689. * platform/brew/PlatformTouchPointBrew.cpp: Added.
  38690. (WebCore::PlatformTouchPoint::PlatformTouchPoint):
  38691. 2010-09-22 Andy Estes <aestes@apple.com>
  38692. Reviewed by Darin Adler.
  38693. REGRESSION (r61285): Microsoft Entourage 2008 does not invoke My Day window
  38694. https://bugs.webkit.org/show_bug.cgi?id=46334
  38695. * WebCore.exp.in: Export __ZN7WebCore27applicationIsMicrosoftMyDayEv.
  38696. * platform/mac/RuntimeApplicationChecks.h:
  38697. * platform/mac/RuntimeApplicationChecks.mm:
  38698. (WebCore::applicationIsMicrosoftMyDay): Determine if the embeddding
  38699. application is Microsoft My Day by checking the bundle identifier.
  38700. 2010-09-22 Andy Estes <aestes@apple.com>
  38701. Rubber-stamped by Darin Adler.
  38702. Fix a typo and correct an inaccurate phrase in a comment.
  38703. * html/parser/HTMLTreeBuilder.cpp:
  38704. (WebCore::HTMLTreeBuilder::processEndTag):
  38705. 2010-09-22 Andy Estes <aestes@apple.com>
  38706. Reviewed by Adam Barth.
  38707. REGRESSION (r61285): <script /> parses differently in HTML5
  38708. https://bugs.webkit.org/show_bug.cgi?id=42909
  38709. If pre-HTML5 parser quirks are enabled, the HTMLTreeBuilder should
  38710. handle self-closing script tags like the old parser did. Specifically,
  38711. "<script />" should be treated as "<script></script>".
  38712. * html/parser/HTMLDocumentParser.cpp:
  38713. (WebCore::HTMLDocumentParser::HTMLDocumentParser): Instantiate
  38714. HTMLTreeBuilder with the value of usePreHTML5ParserQuirks().
  38715. * html/parser/HTMLTreeBuilder.cpp:
  38716. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  38717. (WebCore::HTMLTreeBuilder::processEndTag): If the tokenizer is not
  38718. currently in DataState, this means that the current end token is fake
  38719. and was created by the tree builder to handle a self-closing script tag.
  38720. Assert that pre-HTML5 quirks are enabled and set the tokenizer's state
  38721. to DataState in this case.
  38722. (WebCore::HTMLTreeBuilder::processStartTagForInHead): If pre-HTML5
  38723. parser quirks are enabled and the script tag is self-closing, create and
  38724. procses a fake script end tag.
  38725. * html/parser/HTMLTreeBuilder.h:
  38726. (WebCore::HTMLTreeBuilder::create):
  38727. 2010-09-22 Mihai Parparita <mihaip@chromium.org>
  38728. Reviewed by Darin Fisher.
  38729. [Chromium] User style layout tests don't pass on Chromium
  38730. https://bugs.webkit.org/show_bug.cgi?id=46069
  38731. Instead of making resetUserStyleCacheInAllFrames be a no-op for
  38732. Chromium, have it be controlled by a UserStyleInjectionTime enum.
  38733. Also move the UserStyleSheet::Level enum to be inside
  38734. UserStyleSheetTypes for consistency.
  38735. * WebCore.exp.in:
  38736. * dom/Document.cpp:
  38737. (WebCore::Document::pageGroupUserSheets):
  38738. * page/PageGroup.cpp:
  38739. (WebCore::PageGroup::addUserStyleSheetToWorld):
  38740. * page/PageGroup.h:
  38741. * page/UserStyleSheet.h:
  38742. (WebCore::UserStyleSheet::UserStyleSheet):
  38743. (WebCore::UserStyleSheet::level):
  38744. * page/UserStyleSheetTypes.h:
  38745. 2010-09-22 Ruben <chromium@hybridsource.org>
  38746. Reviewed by Tony Chang.
  38747. [chromium] added ifdefs for FreeBSD support
  38748. https://bugs.webkit.org/show_bug.cgi?id=46316
  38749. * bindings/js/JSInspectorFrontendHostCustom.cpp:
  38750. (WebCore::JSInspectorFrontendHost::platform):
  38751. * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
  38752. (WebCore::V8InspectorFrontendHost::platformCallback):
  38753. * dom/SelectElement.cpp:
  38754. * loader/CachedFont.cpp:
  38755. * page/EventHandler.cpp:
  38756. * page/chromium/EventHandlerChromium.cpp:
  38757. * platform/Scrollbar.cpp:
  38758. * platform/chromium/ChromiumBridge.h:
  38759. * platform/graphics/chromium/FontPlatformData.h:
  38760. * platform/graphics/skia/FontCustomPlatformData.cpp:
  38761. (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
  38762. (WebCore::FontCustomPlatformData::fontPlatformData):
  38763. (WebCore::createFontCustomPlatformData):
  38764. * platform/graphics/skia/FontCustomPlatformData.h:
  38765. 2010-09-22 Rafael Antognolli <antognolli@profusion.mobi>
  38766. Unreviewed build fix.
  38767. [EFL] Fix build due to latest EFL (Edje) changes.
  38768. https://bugs.webkit.org/show_bug.cgi?id=46317
  38769. Make the change int -> Edje_Load_Error (enum).
  38770. No new functionality, so no new tests.
  38771. * platform/efl/RenderThemeEfl.cpp:
  38772. (WebCore::RenderThemeEfl::themePartCacheEntryReset):
  38773. (WebCore::RenderThemeEfl::createEdje):
  38774. (WebCore::RenderThemeEfl::applyPartDescriptions):
  38775. * platform/efl/ScrollbarEfl.cpp:
  38776. (ScrollbarEfl::setParent):
  38777. 2010-09-22 Chris Fleizach <cfleizach@apple.com>
  38778. Reviewed by Darin Adler.
  38779. AX: aria-hidden change doesn't update the ax tree
  38780. https://bugs.webkit.org/show_bug.cgi?id=45836
  38781. Test: accessibility/aria-hidden-update.html
  38782. * dom/Element.cpp:
  38783. (WebCore::Element::updateAfterAttributeChanged):
  38784. 2010-09-22 Kinuko Yasuda <kinuko@chromium.org>
  38785. Reviewed by Dumitru Daniliuc.
  38786. [FileSystem] Fix Flags handling in DirectoryEntry custom binding code
  38787. https://bugs.webkit.org/show_bug.cgi?id=46028
  38788. Do not use adoptRef to get RefPtr from a raw pointer that is already
  38789. adopted in toNative/toJS.
  38790. Test: fast/filesystem/flags-passing.html
  38791. * bindings/js/JSDirectoryEntryCustom.cpp:
  38792. (WebCore::JSDirectoryEntry::getFile):
  38793. (WebCore::JSDirectoryEntry::getDirectory):
  38794. * bindings/v8/custom/V8DirectoryEntryCustom.cpp:
  38795. (WebCore::V8DirectoryEntry::getDirectoryCallback):
  38796. (WebCore::V8DirectoryEntry::getFileCallback):
  38797. 2010-09-22 Jia Pu <jpu@apple.com>
  38798. Reviewed by Dan Bernstein.
  38799. Need to stop autocorrection panel timer when selection changes.
  38800. https://bugs.webkit.org/show_bug.cgi?id=46201
  38801. <rdar://problem/8441042>
  38802. * editing/Editor.cpp:
  38803. (WebCore::Editor::appliedEditing): Stop correction timer after editing.
  38804. (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): When text checking is done for
  38805. showing autocorrection panel, we suppress all corrections that are not at the end of
  38806. text checking range. So that we don't replace other words while showing correction panel
  38807. for the last word.
  38808. (WebCore::Editor::stopCorrectionPanelTimer): Stop correction timer.
  38809. * editing/Editor.h: Added stopCorrectionPanelTimer() method.
  38810. 2010-09-22 Eric Uhrhane <ericu@chromium.org>
  38811. Reviewed by Dumitru Daniliuc.
  38812. Add Chromium implementation for FileWriter
  38813. https://bugs.webkit.org/show_bug.cgi?id=44361
  38814. No new tests; the implementation's not yet far enough along for that.
  38815. This makes a chain of contruction-and-linking-up for various sorts of
  38816. FileWriter interfaces to call through to Chromium, and for various
  38817. sorts of FileWriterClients to call back, with object ownership always
  38818. pointing towards the Chromium API. That is, the DOM object owns an
  38819. AsyncFileWriter, which owns its implementation object, and the reverse
  38820. (client) direction is raw pointers.
  38821. File metadata is looked up before the FileWriter is returned, so that
  38822. we know the file exists and can cache its length.
  38823. The WebCore part of this is simple and generic enough to handle
  38824. Chromium, so it should be easy for me to put in a WebCore-only
  38825. implementation next.
  38826. * fileapi/AsyncFileWriter.h:
  38827. * fileapi/DOMFileSystem.cpp:
  38828. (WebCore::DOMFileSystem::createWriter):
  38829. * fileapi/DOMFileSystem.h:
  38830. * fileapi/FileSystemCallbacks.cpp:
  38831. (WebCore::FileSystemCallbacksBase::didCreateFileWriter):
  38832. (WebCore::FileWriterCallbacks::FileWriterCallbacks):
  38833. (WebCore::FileWriterCallbacks::didCreateFileWriter):
  38834. * fileapi/FileSystemCallbacks.h:
  38835. * platform/AsyncFileSystem.h:
  38836. * platform/AsyncFileSystemCallbacks.h:
  38837. 2010-09-22 Alexey Proskuryakov <ap@apple.com>
  38838. Reviewed by Adam Barth.
  38839. https://bugs.webkit.org/show_bug.cgi?id=46222
  38840. <rdar://problem/8461701> Document.getElementById() malfunctions if ID was changed via Attr node modification.
  38841. Test: fast/dom/Attr/change-id-via-attr-node-value.html
  38842. * dom/Attr.h:
  38843. * dom/Attr.cpp:
  38844. (WebCore::Attr::setValue): Separated a version callable from WebCore from one avaiable to JS.
  38845. Attr::setValue() can be called from Element::setAttribute(), and we don't want to update
  38846. m_elementsById (or to call attributeChanged()) twice in that case.
  38847. (WebCore::Attr::childrenChanged): If Attr's node children change, id changes.
  38848. * dom/Document.cpp: (WebCore::Document::removeElementById): Added an assertion that we are
  38849. not trying to remove something that isn't there. If we are, we probably failed to update
  38850. m_elementsById earlier.
  38851. * dom/Element.cpp: (WebCore::Element::setAttribute): If the attribute has an Attr node, its
  38852. children should be updated to match attribute value.
  38853. 2010-09-22 David Hyatt <hyatt@apple.com>
  38854. Reviewed by Dan Bernstein.
  38855. https://bugs.webkit.org/show_bug.cgi?id=46311, lock form controls and replaced elements to vertical block flow.
  38856. Patch form controls that don't use RenderReplaced by hand in html.css. Patch all RenderReplaced elements
  38857. with an override of setStyle that forces the new style to have a vertical block flow. We have to do something like
  38858. this to cover the CSS3 content: url(img) method of image replacement.
  38859. * css/html.css:
  38860. (input, textarea, keygen, select, button, isindex, meter, progress):
  38861. * rendering/RenderReplaced.cpp:
  38862. (WebCore::RenderReplaced::setStyle):
  38863. * rendering/RenderReplaced.h:
  38864. 2010-09-22 David Hyatt <hyatt@apple.com>
  38865. Reviewed by Dan Bernstein.
  38866. https://bugs.webkit.org/show_bug.cgi?id=46304
  38867. display:inline should become display:inline-block when an object's block flow does not match its parent's block flow.
  38868. Added fast/blockflow/display-mutation.html
  38869. * css/CSSStyleSelector.cpp:
  38870. (WebCore::CSSStyleSelector::styleForElement):
  38871. (WebCore::CSSStyleSelector::pseudoStyleForElement):
  38872. (WebCore::CSSStyleSelector::adjustRenderStyle):
  38873. * css/CSSStyleSelector.h:
  38874. 2010-09-22 Mario Sanchez Prada <msanchez@igalia.com>
  38875. Reviewed by Martin Robinson.
  38876. [Gtk] object:text-changed events should be emitted for entries and password text
  38877. https://bugs.webkit.org/show_bug.cgi?id=25898
  38878. Implement proper 'text-changed' signal emission for the GTK port
  38879. Call deleteTextFromNode() when needed while removing text nodes.
  38880. Do it even when removeNode() is going to be called afterwards, in
  38881. order to allow accessibility to get properly notified about the
  38882. text being removed alongside with that node.
  38883. * editing/DeleteSelectionCommand.cpp:
  38884. (WebCore::DeleteSelectionCommand::handleGeneralDelete):
  38885. New function in AXObjectCache to call when text changes in a node.
  38886. Added one new function to allow notifying something changed in a
  38887. text node through the associated RenderObject, making such a
  38888. function dependant on the platform-specific implementation,
  38889. provided through a protected function (provided a proper
  38890. implementation for the GTK port and a dummy one for the others).
  38891. * accessibility/AXObjectCache.cpp:
  38892. (WebCore::AXObjectCache::nodeTextChangeNotification): New
  38893. * accessibility/AXObjectCache.h:
  38894. (WebCore::AXObjectCache::AXTextChange): New enumeration
  38895. (WebCore::AXObjectCache::nodeTextChangeNotification): New
  38896. (WebCore::AXObjectCache::nodeTextChangePlatformNotification): New
  38897. * accessibility/AccessibilityRenderObject.h:
  38898. (WebCore::toAccessibilityRenderObject):
  38899. * accessibility/chromium/AXObjectCacheChromium.cpp:
  38900. (WebCore::AXObjectCache::nodeTextChangePlatformNotification): New
  38901. * accessibility/gtk/AXObjectCacheAtk.cpp:
  38902. (WebCore::emitTextChanged):
  38903. (WebCore::AXObjectCache::nodeTextChangePlatformNotification): New
  38904. * accessibility/mac/AXObjectCacheMac.mm:
  38905. (WebCore::AXObjectCache::nodeTextChangePlatformNotification): New
  38906. * accessibility/win/AXObjectCacheWin.cpp:
  38907. (WebCore::AXObjectCache::nodeTextChangePlatformNotification): New
  38908. Notify accessibility when something changes in a text node.
  38909. Call to AXObjectCache::nodeTextChangeNotification() to notify when
  38910. text was inserted/deleted when applying/unapplying a text edition
  38911. command, along with the offset in the original text where the
  38912. change took place and the number of characters that got affected.
  38913. * editing/AppendNodeCommand.cpp:
  38914. (WebCore::sendAXTextChangedIgnoringLineBreaks):
  38915. (WebCore::AppendNodeCommand::doApply):
  38916. (WebCore::AppendNodeCommand::doUnapply):
  38917. * editing/DeleteFromTextNodeCommand.cpp:
  38918. (WebCore::DeleteFromTextNodeCommand::doApply):
  38919. (WebCore::DeleteFromTextNodeCommand::doUnapply):
  38920. * editing/InsertIntoTextNodeCommand.cpp:
  38921. (WebCore::InsertIntoTextNodeCommand::doApply):
  38922. (WebCore::InsertIntoTextNodeCommand::doUnapply):
  38923. * editing/InsertNodeBeforeCommand.cpp:
  38924. (WebCore::InsertNodeBeforeCommand::doApply):
  38925. (WebCore::InsertNodeBeforeCommand::doUnapply):
  38926. (WebCore::DeleteSelectionCommand::handleGeneralDelete):
  38927. 2010-09-22 David Hyatt <hyatt@apple.com>
  38928. Reviewed by Dan Bernstein.
  38929. https://bugs.webkit.org/show_bug.cgi?id=46298, add logicalWidth/Height getters/setters to RenderBox.
  38930. * rendering/RenderBox.cpp:
  38931. (WebCore::RenderBox::logicalWidth):
  38932. (WebCore::RenderBox::logicalHeight):
  38933. (WebCore::RenderBox::setLogicalWidth):
  38934. (WebCore::RenderBox::setLogicalHeight):
  38935. * rendering/RenderBox.h:
  38936. 2010-09-22 Luiz Agostini <luiz.agostini@openbossa.org>
  38937. Reviewed by Oliver Hunt.
  38938. Script engine agnostic ScriptCallback class
  38939. https://bugs.webkit.org/show_bug.cgi?id=43216
  38940. Refactoring class ScriptFunctionCall to create a class (ScriptCallback) that
  38941. receives a script function as a ScriptValue and calls that function with provided parameters.
  38942. * bindings/js/ScriptFunctionCall.cpp:
  38943. (WebCore::ScriptCallArgumentHandler::appendArgument):
  38944. (WebCore::ScriptFunctionCall::ScriptFunctionCall):
  38945. (WebCore::ScriptCallback::ScriptCallback):
  38946. (WebCore::ScriptCallback::call):
  38947. * bindings/js/ScriptFunctionCall.h:
  38948. (WebCore::ScriptCallArgumentHandler::ScriptCallArgumentHandler):
  38949. * bindings/v8/ScriptFunctionCall.cpp:
  38950. (WebCore::ScriptCallArgumentHandler::appendArgument):
  38951. (WebCore::ScriptFunctionCall::ScriptFunctionCall):
  38952. (WebCore::ScriptCallback::ScriptCallback):
  38953. (WebCore::ScriptCallback::call):
  38954. * bindings/v8/ScriptFunctionCall.h:
  38955. (WebCore::ScriptCallArgumentHandler::ScriptCallArgumentHandler):
  38956. 2010-09-22 Brent Fulgham <bfulgham@webkit.org>
  38957. Unreviewed.
  38958. Build fix for invalid assertion after r68059.
  38959. * editing/ApplyStyleCommand.cpp:
  38960. (WebCore::getPropertiesNotIn): Correct assertion target after
  38961. name change.
  38962. 2010-09-22 David Hyatt <hyatt@apple.com>
  38963. Reviewed by Simon Fraser.
  38964. https://bugs.webkit.org/show_bug.cgi?id=45957, fix regression in column rules stacking test.
  38965. Rewrite how the pagination bit gets set in RenderLayers, since it was totally broken and not
  38966. accounting for whether or not the columns block was even in the layer's containing block
  38967. hierarchy.
  38968. * rendering/RenderLayer.cpp:
  38969. (WebCore::checkContainingBlockChainForPagination):
  38970. (WebCore::RenderLayer::updatePagination):
  38971. 2010-09-22 Brent Fulgham <bfulgham@webkit.org>
  38972. Unreviewed.
  38973. [WinCairo] Build fix for platform/cairo stuff after r67981.
  38974. * WebCore.vcproj/WebCore.vcproj: Add new files needed by all cairo
  38975. ports.
  38976. 2010-09-22 Erik Arvidsson <arv@chromium.org>
  38977. Reviewed by Nate Chapin.
  38978. [Chromium] Fix memory model for dataset
  38979. https://bugs.webkit.org/show_bug.cgi?id=46280
  38980. This is covered by existing tests.
  38981. * bindings/v8/custom/V8DOMStringMapCustom.cpp:
  38982. (WebCore::toV8):
  38983. 2010-09-22 Abhishek Arya <inferno@chromium.org>
  38984. Reviewed by Dave Hyatt.
  38985. Fix wrong casts for table cell since its parent is not a RenderBlock. Remove
  38986. the redundant destroy call for empty anonymous columns or column span block.
  38987. https://bugs.webkit.org/show_bug.cgi?id=46245
  38988. Tests: fast/table/table-anonymous-block-destroy-crash.html
  38989. fast/table/table-columns-blocks-calc-crash.html
  38990. * rendering/RenderBlock.cpp:
  38991. (WebCore::RenderBlock::addChildToAnonymousColumnBlocks):
  38992. (WebCore::RenderBlock::columnsBlockForSpanningElement):
  38993. (WebCore::RenderBlock::removeChild):
  38994. 2010-09-22 Matt Perry <mpcomplete@chromium.org>
  38995. Reviewed by Darin Fisher.
  38996. Trying to reland a version of r67749:
  38997. Have V8DOMWindowShell ask the embedder whether to run a V8 extension
  38998. in a particular script context.
  38999. https://bugs.webkit.org/show_bug.cgi?id=45721
  39000. * bindings/v8/V8DOMWindowShell.cpp:
  39001. (WebCore::V8DOMWindowShell::createNewContext):
  39002. * bindings/v8/V8Proxy.cpp:
  39003. (WebCore::V8Proxy::registerExtension):
  39004. * bindings/v8/V8Proxy.h:
  39005. * loader/EmptyClients.h:
  39006. (WebCore::EmptyFrameLoaderClient::allowScriptExtension):
  39007. * loader/FrameLoaderClient.h:
  39008. 2010-09-22 Ryosuke Niwa <rniwa@webkit.org>
  39009. Reviewed by Darin Adler.
  39010. queryCommandState returns false for Underline command when no selection is made
  39011. https://bugs.webkit.org/show_bug.cgi?id=17594
  39012. The bug was caused by selectionComputedStyle's adding -webkit-text-decorations-in-effect property
  39013. to a dummy span used to obtain the computed style when there is a typing style.
  39014. Since this property is for internal use only, the CSS parser always stripped the property.
  39015. As a result, we were always ignoring the text decorations set by the typing style.
  39016. Fixed the bug by making selectionComputedStyle directly merge the computed style of the current
  39017. caret position and the typing style. This also eliminates the need for a dummy span element.
  39018. Due to the merge, the return value of selectionComputedStyle had to be changed to CSSMutableStyleDeclaration
  39019. from CSSComputedStyleDeclaration.
  39020. Test: editing/execCommand/query-text-decoration-with-typing-style.html
  39021. * editing/ApplyStyleCommand.cpp:
  39022. (WebCore::StyleChange::init): Calls getPropertiesNotIn.
  39023. (WebCore::getPropertiesNotIn): Renamed from getPropertiesNotInComputedStyle since it takes
  39024. CSSStyleDeclaration* instead of CSSComputedStyleDeclaration* for the second argument.
  39025. (WebCore::ApplyStyleCommand::removeNonEditingProperties): Extracted from editingStyleAtPosition.
  39026. (WebCore::ApplyStyleCommand::editingStyleAtPosition): Calls removeNonEditingProperties.
  39027. * editing/ApplyStyleCommand.h:
  39028. * editing/Editor.cpp:
  39029. (WebCore::triStateOfStyle): Calls getPropertiesNotIn. Renamed from triStateOfStyleInComputedStyle
  39030. since it no longer takes CSSComputedStyleDeclaration.
  39031. (WebCore::Editor::selectionStartHasStyle): Calls selectionComputedStyle and triStateOfStyle.
  39032. (WebCore::Editor::selectionHasStyle): Ditto.
  39033. (WebCore::Editor::selectionStartCSSPropertyValue): Calls selectionComputedStyle.
  39034. (WebCore::Editor::selectionComputedStyle): See above.
  39035. * editing/Editor.h:
  39036. * editing/EditorCommand.cpp:
  39037. (WebCore::executeToggleStyleInList): Calls selectionComputedStyle.
  39038. 2010-09-22 Jamey Hicks <jamey.hicks@nokia.com>
  39039. Reviewed by Kenneth Rohde Christiansen.
  39040. [Qt] Web Inspector: Remote Web Inspector support for QtWebKit
  39041. https://bugs.webkit.org/show_bug.cgi?id=43988
  39042. Runs a web debug server on port specified by QtTestBrowser
  39043. argument -remote-inspector-port. Property
  39044. _q_webInspectorServerPort of the QWebPage instance will be set
  39045. according to the argument. All pages with that property set will
  39046. be remotely inspectable.
  39047. URL for remote inspection of first QWebPage is
  39048. http://localhost:9222/webkit/inspector/inspector.html?page=1
  39049. where 1 is the number of the QWebPage instance.
  39050. The base URL yields an index page with links to the individual inspectors:
  39051. http://localhost:9222/
  39052. * WebCore.pro
  39053. 2010-09-21 Darin Adler <darin@apple.com>
  39054. Reviewed by Anders Carlsson.
  39055. Fix some Objective-C GC problems and use RetainPtr instead of HardRetain/Release
  39056. https://bugs.webkit.org/show_bug.cgi?id=46220
  39057. * WebCore.exp.in: Updated.
  39058. * bindings/objc/ObjCEventListener.h: Use a RetainPtr for m_listener, since that
  39059. will do a CFRetain, which is right for GC rather than an -[NSObject retain],
  39060. which is not.
  39061. * bindings/objc/ObjCEventListener.mm:
  39062. (WebCore::ObjCEventListener::ObjCEventListener): Removed explicit retain.
  39063. (WebCore::ObjCEventListener::~ObjCEventListener): Removed explicit release and
  39064. added get().
  39065. (WebCore::ObjCEventListener::handleEvent): Added get();
  39066. * bridge/objc/objc_instance.mm:
  39067. (ObjcInstance::setGlobalException): Use copy/release instead of
  39068. HardRetain/HardRelease.
  39069. (ObjcInstance::moveGlobalExceptionToExecState): Ditto.
  39070. * platform/Cursor.h: Use RetainPtr for PlatformCursor on Mac.
  39071. * platform/Cursor.cpp:
  39072. (WebCore::Cursor::platformCursor): Moved this to CursorMac for the Mac.
  39073. * platform/Widget.cpp: Removed retain/releasePlatformWidget and made them
  39074. both inlines in the header file.
  39075. * platform/Widget.h: Fixed includes and added an include of RetainPtr.
  39076. Made platformWidget and setPlatformWidget non-inline on the Mac platform.
  39077. Made releasePlatformWidget and retainPlatformWidget empty inline functions
  39078. for non-GTK platforms.
  39079. * platform/graphics/mac/ImageMac.mm: Removed unneeded FoundationExtras.h
  39080. include.
  39081. * platform/mac/ClipboardMac.mm:
  39082. (WebCore::cocoaTypeFromHTMLClipboardType): use RetainPtr for the return type.
  39083. (WebCore::ClipboardMac::clearData): Use RetainPtr.
  39084. (WebCore::ClipboardMac::getData): Ditto.
  39085. (WebCore::ClipboardMac::setData): Ditto.
  39086. * platform/mac/CursorMac.mm:
  39087. (WebCore::createCustomCursor): Use RetainPtr for the return type.
  39088. (WebCore::Cursor::ensurePlatformCursor): Removed all the calls to HardRetain
  39089. since m_platformCursor is now a RetainPtr.
  39090. (WebCore::Cursor::Cursor): Ditto.
  39091. (WebCore::Cursor::operator=): Ditto. Also HardRelease.
  39092. (WebCore::Cursor::~Cursor): Ditto.
  39093. (WebCore::Cursor::platformCursor): Use get here.
  39094. * platform/mac/FoundationExtras.h: Removed all the functions except for
  39095. HardAutorelease. Later we can remove that one too.
  39096. * platform/mac/ThemeMac.mm:
  39097. (WebCore::setUpButtonCell): Changed this function to have a return value.
  39098. Otherwise we end up taking a pointer (actually a reference) to a global
  39099. variable, which does not do the right thing for GC.
  39100. (WebCore::nonDefaultButton): Added.
  39101. (WebCore::defaultButton): Added.
  39102. (WebCore::button): Changed to call two separate functions with two separate
  39103. global variables to avoid the problem with pointers to globals.
  39104. * platform/mac/WidgetMac.mm:
  39105. (WebCore::Widget::~Widget): Removed unneeded call to releasePlatformWidget.
  39106. (WebCore::Widget::platformWidget): Non-inline so we can comipile the header
  39107. plain non-Objective-C C++.
  39108. (WebCore::Widget::setPlatformWidget): Ditto.
  39109. * platform/network/mac/WebCoreURLResponse.mm:
  39110. (mimeTypeFromUTITree): Use RetainPtr for the return type.
  39111. (-[NSURLResponse adjustMIMETypeIfNecessary]): Use RetainPtr.
  39112. 2010-09-22 Martin Robinson <mrobinson@igalia.com>
  39113. Reviewed by Xan Lopez.
  39114. [GTK] r68027 caused many crashes on the bots
  39115. https://bugs.webkit.org/show_bug.cgi?id=46268
  39116. Add the appropriate OwnPtrCairo.h include which has the OwnPtr
  39117. specialization for Cairo paths. Without it, we will have memory
  39118. corruption.
  39119. * platform/graphics/cairo/PathCairo.cpp: Add OwnPtrCairo.h include.
  39120. 2010-09-22 Pavel Podivilov <podivilov@chromium.org>
  39121. Reviewed by Pavel Feldman.
  39122. Web Inspector: implement pausing on XHR
  39123. https://bugs.webkit.org/show_bug.cgi?id=46086
  39124. * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
  39125. (WebCore::V8XMLHttpRequest::sendCallback):
  39126. * inspector/Inspector.idl:
  39127. * inspector/InspectorController.cpp:
  39128. (WebCore::InspectorController::InspectorController):
  39129. (WebCore::InspectorController::setNativeBreakpoint):
  39130. (WebCore::InspectorController::removeNativeBreakpoint):
  39131. (WebCore::InspectorController::willInsertDOMNodeImpl):
  39132. (WebCore::InspectorController::willRemoveDOMNodeImpl):
  39133. (WebCore::InspectorController::willModifyDOMAttrImpl):
  39134. (WebCore::InspectorController::instrumentWillSendXMLHttpRequestImpl):
  39135. * inspector/InspectorController.h:
  39136. (WebCore::InspectorController::instrumentWillSendXMLHttpRequest):
  39137. (WebCore::InspectorController::inspectorControllerForScriptExecutionContext):
  39138. (WebCore::InspectorController::inspectorControllerForNode):
  39139. (WebCore::InspectorController::inspectorControllerForDocument):
  39140. * inspector/InspectorDebuggerAgent.cpp:
  39141. (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
  39142. (WebCore::InspectorDebuggerAgent::didPause):
  39143. (WebCore::InspectorDebuggerAgent::breakProgram):
  39144. * inspector/InspectorDebuggerAgent.h:
  39145. * inspector/InspectorTimelineAgent.h:
  39146. * inspector/front-end/CallStackSidebarPane.js:
  39147. (WebInspector.CallStackSidebarPane.prototype.updateStatus):
  39148. * inspector/front-end/ElementsPanel.js:
  39149. (WebInspector.ElementsPanel):
  39150. (WebInspector.ElementsPanel.prototype.reset):
  39151. * inspector/front-end/ElementsTreeOutline.js:
  39152. (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
  39153. * inspector/front-end/ScriptsPanel.js:
  39154. (WebInspector.ScriptsPanel):
  39155. (WebInspector.ScriptsPanel.prototype.debuggerPaused):
  39156. (WebInspector.ScriptsPanel.prototype.reset):
  39157. * inspector/front-end/Settings.js:
  39158. * xml/XMLHttpRequest.h:
  39159. (WebCore::XMLHttpRequest::url):
  39160. 2010-09-22 Kenneth Russell <kbr@google.com>
  39161. Reviewed by James Robinson.
  39162. Add local triangulation of cubic curve control points
  39163. https://bugs.webkit.org/show_bug.cgi?id=45252
  39164. Adding a localized triangulation algorithm which takes as input
  39165. the four control points of a cubic curve segment and provides both
  39166. triangles as well as the ability to walk the interior edges. The
  39167. latter will be used later to fill the interior of shapes bounded
  39168. by these cubic curves, quadratic curves and line segments.
  39169. * platform/graphics/gpu/LoopBlinnLocalTriangulator.cpp: Added.
  39170. (WebCore::LoopBlinnLocalTriangulator::Triangle::contains):
  39171. (WebCore::LoopBlinnLocalTriangulator::Triangle::nextVertex):
  39172. (WebCore::LoopBlinnLocalTriangulator::Triangle::indexForVertex):
  39173. (WebCore::LoopBlinnLocalTriangulator::Triangle::makeCounterClockwise):
  39174. (WebCore::LoopBlinnLocalTriangulator::LoopBlinnLocalTriangulator):
  39175. (WebCore::LoopBlinnLocalTriangulator::reset):
  39176. (WebCore::LoopBlinnLocalTriangulator::triangulate):
  39177. (WebCore::LoopBlinnLocalTriangulator::triangulateHelper):
  39178. (WebCore::LoopBlinnLocalTriangulator::addTriangle):
  39179. (WebCore::LoopBlinnLocalTriangulator::addInteriorVertex):
  39180. (WebCore::LoopBlinnLocalTriangulator::isSharedEdge):
  39181. * platform/graphics/gpu/LoopBlinnLocalTriangulator.h: Added.
  39182. (WebCore::LoopBlinnLocalTriangulator::Vertex::Vertex):
  39183. (WebCore::LoopBlinnLocalTriangulator::Vertex::xyCoordinates):
  39184. (WebCore::LoopBlinnLocalTriangulator::Vertex::klmCoordinates):
  39185. (WebCore::LoopBlinnLocalTriangulator::Vertex::set):
  39186. (WebCore::LoopBlinnLocalTriangulator::Vertex::end):
  39187. (WebCore::LoopBlinnLocalTriangulator::Vertex::setEnd):
  39188. (WebCore::LoopBlinnLocalTriangulator::Vertex::marked):
  39189. (WebCore::LoopBlinnLocalTriangulator::Vertex::setMarked):
  39190. (WebCore::LoopBlinnLocalTriangulator::Vertex::interior):
  39191. (WebCore::LoopBlinnLocalTriangulator::Vertex::setInterior):
  39192. (WebCore::LoopBlinnLocalTriangulator::Vertex::resetFlags):
  39193. (WebCore::LoopBlinnLocalTriangulator::Triangle::Triangle):
  39194. (WebCore::LoopBlinnLocalTriangulator::Triangle::getVertex):
  39195. (WebCore::LoopBlinnLocalTriangulator::Triangle::setVertices):
  39196. (WebCore::LoopBlinnLocalTriangulator::getVertex):
  39197. (WebCore::LoopBlinnLocalTriangulator::numberOfTriangles):
  39198. (WebCore::LoopBlinnLocalTriangulator::getTriangle):
  39199. (WebCore::LoopBlinnLocalTriangulator::numberOfInteriorVertices):
  39200. (WebCore::LoopBlinnLocalTriangulator::getInteriorVertex):
  39201. 2010-09-22 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  39202. Unreviewed, EFL build fix.
  39203. * CMakeListsEfl.txt:
  39204. * platform/efl/ClipboardEfl.cpp:
  39205. (WebCore::ClipboardEfl::ClipboardEfl):
  39206. 2010-09-22 İsmail Dönmez <ismail@namtrac.org>
  39207. Reviewed by Andreas Kling.
  39208. [Qt] Build fix for WinCE
  39209. Add two missing stubs:
  39210. - privateBrowsingStateChanged(bool)
  39211. - bindingInstance()
  39212. * platform/qt/TemporaryLinkStubsQt.cpp:
  39213. (PluginView::privateBrowsingStateChanged):
  39214. (PluginView::bindingInstance):
  39215. 2010-09-22 Martin Robinson <mrobinson@igalia.com>
  39216. Reviewed by Xan Lopez.
  39217. [GTK] FontCustomPlatformData.cpp leaks FT_Faces
  39218. https://bugs.webkit.org/show_bug.cgi?id=16941
  39219. Attach lifetime of the FontCustomPlatformData FT_Face to the resulting cairo_font_face_t.
  39220. This will free the memory associated with the FT_Face once the cairo_font_face_t is
  39221. destroyed.
  39222. No new tests as functionality should not change.
  39223. * platform/graphics/cairo/FontCustomPlatformData.cpp:
  39224. (WebCore::releaseCustomFontData): Moved this helper method to the top of the file
  39225. and gave it a more descriptive name.
  39226. (WebCore::FontCustomPlatformData::FontCustomPlatformData): Changed the constructor to
  39227. take the FT_Face and the buffer, so to better encapsulate the creation of the cairo
  39228. face.
  39229. (WebCore::FontCustomPlatformData::~FontCustomPlatformData): Added a comment about the
  39230. fate of the FT_Face to the destructor.
  39231. (WebCore::createFontCustomPlatformData): Cleaned up the code here and moved some of the
  39232. logic into the constructor.
  39233. * platform/graphics/cairo/FontCustomPlatformData.h: Updated method definitions.
  39234. 2010-09-22 Balazs Kelemen <kb@inf.u-szeged.hu>
  39235. Reviewed by Kenneth Rohde Christiansen.
  39236. PluginStrategy should satisfy the needs of Qt
  39237. https://bugs.webkit.org/show_bug.cgi?id=45857
  39238. No new functionality so no new tests.
  39239. * plugins/PluginData.cpp:
  39240. (WebCore::PluginData::initPlugins):
  39241. * plugins/PluginStrategy.h: Added a |const Page*| argument to getPluginInfo.
  39242. 2010-09-22 Pavel Feldman <pfeldman@chromium.org>
  39243. Reviewed by Yury Semikhatsky.
  39244. Web Inspector: Elements panel does not reflect changes to the text node values.
  39245. https://bugs.webkit.org/show_bug.cgi?id=46166
  39246. * dom/CharacterData.cpp:
  39247. (WebCore::CharacterData::dispatchModifiedEvent):
  39248. * inspector/Inspector.idl:
  39249. * inspector/InspectorController.cpp:
  39250. (WebCore::InspectorController::characterDataModifiedImpl):
  39251. * inspector/InspectorController.h:
  39252. (WebCore::InspectorController::characterDataModified):
  39253. * inspector/InspectorDOMAgent.cpp:
  39254. (WebCore::InspectorDOMAgent::characterDataModified):
  39255. * inspector/InspectorDOMAgent.h:
  39256. (WebCore::EventListenerInfo::EventListenerInfo):
  39257. (WebCore::InspectorDOMAgent::create):
  39258. (WebCore::InspectorDOMAgent::cast):
  39259. (WebCore::InspectorDOMAgent::cssStore):
  39260. * inspector/front-end/DOMAgent.js:
  39261. (WebInspector.DOMAgent.prototype._characterDataModified):
  39262. (WebInspector.characterDataModified):
  39263. * inspector/front-end/ElementsPanel.js:
  39264. (WebInspector.ElementsPanel.prototype._characterDataModified):
  39265. * inspector/front-end/ElementsTreeOutline.js:
  39266. (WebInspector.ElementsTreeElement.prototype._textNodeEditingCommitted):
  39267. 2010-09-21 Ragner Magalhaes <ragner.magalhaes@openbossa.org>
  39268. Reviewed by Kenneth Rohde Christiansen.
  39269. [Qt] On Maemo platform, web style is missing for some inputs
  39270. https://bugs.webkit.org/show_bug.cgi?id=46182
  39271. * css/themeQtMaemo5.css:
  39272. 2010-09-22 Patrick Gansterer <paroga@webkit.org>
  39273. Unreviewed.
  39274. [WINCE] Build fix for ResourceHandleWin after r67291.
  39275. * platform/network/win/ResourceHandleWin.cpp:
  39276. (WebCore::ResourceHandle::loadResourceSynchronously): Replace Frame* parameter with NetworkingContext*.
  39277. 2010-09-22 Chris Guillory <chris.guillory@google.com>
  39278. Reviewed by Chris Fleizach.
  39279. Crash due to bad cast in AXObjectCacheChromium.cpp.
  39280. https://bugs.webkit.org/show_bug.cgi?id=46237
  39281. * accessibility/chromium/AXObjectCacheChromium.cpp:
  39282. (WebCore::AXObjectCache::postPlatformNotification):
  39283. * page/ChromeClient.h:
  39284. (WebCore::ChromeClient::postAccessibilityNotification):
  39285. (WebCore::ChromeClient::didChangeAccessibilityObjectState):
  39286. (WebCore::ChromeClient::didChangeAccessibilityObjectChildren):
  39287. * page/chromium/ChromeClientChromium.h:
  39288. 2010-09-22 Chris Rogers <crogers@google.com>
  39289. Reviewed by James Robinson.
  39290. Add HRTFElevation files
  39291. https://bugs.webkit.org/show_bug.cgi?id=45864
  39292. No new tests since audio API is not yet implemented.
  39293. * platform/audio/HRTFElevation.cpp: Added.
  39294. (WebCore::HRTFElevation::calculateSymmetricKernelsForAzimuthElevation):
  39295. (WebCore::HRTFElevation::calculateKernelsForAzimuthElevation):
  39296. (WebCore::HRTFElevation::createForSubject):
  39297. (WebCore::HRTFElevation::createByInterpolatingSlices):
  39298. (WebCore::HRTFElevation::getKernelsFromAzimuth):
  39299. * platform/audio/HRTFElevation.h: Added.
  39300. (WebCore::HRTFElevation::kernelListL):
  39301. (WebCore::HRTFElevation::kernelListR):
  39302. (WebCore::HRTFElevation::elevationAngle):
  39303. (WebCore::HRTFElevation::numberOfAzimuths):
  39304. (WebCore::HRTFElevation::sampleRate):
  39305. (WebCore::HRTFElevation::HRTFElevation):
  39306. 2010-09-22 Alejandro G. Castro <alex@igalia.com>
  39307. Reviewed by Martin Robinson.
  39308. [gtk] Use the smart pointers to handle cairo_path_t
  39309. https://bugs.webkit.org/show_bug.cgi?id=46212
  39310. Modified the code to use smart pointers with cairo_path_t
  39311. variables.
  39312. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  39313. (WebCore::appendPathToCairoContext):
  39314. (WebCore::GraphicsContext::clip):
  39315. (WebCore::GraphicsContext::drawTiledShadow):
  39316. * platform/graphics/cairo/PathCairo.cpp:
  39317. (WebCore::Path::Path):
  39318. (WebCore::Path::operator=):
  39319. (WebCore::Path::apply):
  39320. (WebCore::Path::debugString):
  39321. 2010-09-22 Kwang Yul Seo <skyul@company100.net>
  39322. Reviewed by Kent Tamura.
  39323. [BREWMP] Implement Image::loadPlatformResource
  39324. https://bugs.webkit.org/show_bug.cgi?id=45873
  39325. Load images from the resource directory.
  39326. * platform/graphics/brew/ImageBrew.cpp: Added.
  39327. (WebCore::Image::loadPlatformResource):
  39328. 2010-09-22 Chris Rogers <crogers@google.com>
  39329. Reviewed by James Robinson.
  39330. Add HRTFKernel files
  39331. https://bugs.webkit.org/show_bug.cgi?id=45863
  39332. No new tests since audio API is not yet implemented.
  39333. * platform/audio/HRTFKernel.cpp: Added.
  39334. (WebCore::extractAverageGroupDelay):
  39335. (WebCore::HRTFKernel::HRTFKernel):
  39336. (WebCore::HRTFKernel::createImpulseResponse):
  39337. (WebCore::HRTFKernel::createInterpolatedKernel):
  39338. * platform/audio/HRTFKernel.h: Added.
  39339. (WebCore::HRTFKernel::create):
  39340. (WebCore::HRTFKernel::fftFrame):
  39341. (WebCore::HRTFKernel::fftSize):
  39342. (WebCore::HRTFKernel::frameDelay):
  39343. (WebCore::HRTFKernel::sampleRate):
  39344. (WebCore::HRTFKernel::nyquist):
  39345. (WebCore::HRTFKernel::HRTFKernel):
  39346. 2010-09-22 Kent Tamura <tkent@chromium.org>
  39347. Reviewed by Chris Fleizach.
  39348. Support keyboard operations for <input type=range>.
  39349. https://bugs.webkit.org/show_bug.cgi?id=45803
  39350. Increasing the value with Up/Right arrow keys by its step value,
  39351. and decreasing with Down/Left arrow keys. If an input element has
  39352. step=any attribute, increasing/decreasing by 1/100 of max-min.
  39353. Note: This change is not useful on Mac because users can't set
  39354. focus on range controls.
  39355. Test: fast/forms/range-keyoperation.html
  39356. * html/HTMLInputElement.cpp:
  39357. (WebCore::HTMLInputElement::defaultEventHandler):
  39358. Calls handleKeyEventForRange() for RANGE and key events.
  39359. (WebCore::HTMLInputElement::handleKeyEventForRange):
  39360. * html/HTMLInputElement.h: Add handleKeyEventForRange() declaration.
  39361. 2010-09-22 Mario Sanchez Prada <msanchez@igalia.com>
  39362. Reviewed by Chris Fleizach.
  39363. [Gtk] Incorrect exposure of list items whose children are elements
  39364. https://bugs.webkit.org/show_bug.cgi?id=45383
  39365. Set ATK_ROLE_LIST_ITEM looking for the role of the parent object
  39366. Test: platform/gtk/accessibility/list-items-always-exposed.html
  39367. * accessibility/gtk/AccessibilityObjectAtk.cpp:
  39368. (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
  39369. Always include objects with ListItemRole in accessibility for GTK.
  39370. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  39371. (getInterfaceMaskFromObject): Add some specific code to handle the
  39372. special case of list markers by implementing AtkText when needed.
  39373. 2010-09-22 Dirk Schulze <krit@webkit.org>
  39374. Reviewed by Nikolas Zimmermann.
  39375. Make FilterEffects independent of SVG
  39376. https://bugs.webkit.org/show_bug.cgi?id=46177
  39377. Moving all FilterEffects from svg/graphics/filters to platform/graphics/filters, now that they
  39378. are independent of SVG. Removed the SVG prefix of the files and updated the headers.
  39379. * Android.mk:
  39380. * CMakeLists.txt:
  39381. * GNUmakefile.am:
  39382. * WebCore.gypi:
  39383. * WebCore.pro:
  39384. * WebCore.vcproj/WebCore.vcproj:
  39385. * WebCore.xcodeproj/project.pbxproj:
  39386. * platform/graphics/filters/DistantLightSource.h: Copied from WebCore/svg/graphics/filters/SVGDistantLightSource.h.
  39387. * platform/graphics/filters/FEConvolveMatrix.cpp: Copied from WebCore/svg/graphics/filters/SVGFEConvolveMatrix.cpp.
  39388. * platform/graphics/filters/FEConvolveMatrix.h: Copied from WebCore/svg/graphics/filters/SVGFEConvolveMatrix.h.
  39389. * platform/graphics/filters/FEDiffuseLighting.cpp: Copied from WebCore/svg/graphics/filters/SVGFEDiffuseLighting.cpp.
  39390. * platform/graphics/filters/FEDiffuseLighting.h: Copied from WebCore/svg/graphics/filters/SVGFEDiffuseLighting.h.
  39391. * platform/graphics/filters/FEDisplacementMap.cpp: Copied from WebCore/svg/graphics/filters/SVGFEDisplacementMap.cpp.
  39392. * platform/graphics/filters/FEDisplacementMap.h: Copied from WebCore/svg/graphics/filters/SVGFEDisplacementMap.h.
  39393. * platform/graphics/filters/FEFlood.cpp: Copied from WebCore/svg/graphics/filters/SVGFEFlood.cpp.
  39394. * platform/graphics/filters/FEFlood.h: Copied from WebCore/svg/graphics/filters/SVGFEFlood.h.
  39395. * platform/graphics/filters/FELighting.cpp: Copied from WebCore/svg/graphics/filters/SVGFELighting.cpp.
  39396. * platform/graphics/filters/FELighting.h: Copied from WebCore/svg/graphics/filters/SVGFELighting.h.
  39397. * platform/graphics/filters/FEMerge.cpp: Copied from WebCore/svg/graphics/filters/SVGFEMerge.cpp.
  39398. * platform/graphics/filters/FEMerge.h: Copied from WebCore/svg/graphics/filters/SVGFEMerge.h.
  39399. * platform/graphics/filters/FEMorphology.cpp: Copied from WebCore/svg/graphics/filters/SVGFEMorphology.cpp.
  39400. * platform/graphics/filters/FEMorphology.h: Copied from WebCore/svg/graphics/filters/SVGFEMorphology.h.
  39401. * platform/graphics/filters/FEOffset.cpp: Copied from WebCore/svg/graphics/filters/SVGFEOffset.cpp.
  39402. * platform/graphics/filters/FEOffset.h: Copied from WebCore/svg/graphics/filters/SVGFEOffset.h.
  39403. * platform/graphics/filters/FESpecularLighting.cpp: Copied from WebCore/svg/graphics/filters/SVGFESpecularLighting.cpp.
  39404. * platform/graphics/filters/FESpecularLighting.h: Copied from WebCore/svg/graphics/filters/SVGFESpecularLighting.h.
  39405. * platform/graphics/filters/FETile.cpp: Copied from WebCore/svg/graphics/filters/SVGFETile.cpp.
  39406. * platform/graphics/filters/FETile.h: Copied from WebCore/svg/graphics/filters/SVGFETile.h.
  39407. * platform/graphics/filters/FETurbulence.cpp: Copied from WebCore/svg/graphics/filters/SVGFETurbulence.cpp.
  39408. * platform/graphics/filters/FETurbulence.h: Copied from WebCore/svg/graphics/filters/SVGFETurbulence.h.
  39409. * platform/graphics/filters/LightSource.cpp: Copied from WebCore/svg/graphics/filters/SVGLightSource.cpp.
  39410. * platform/graphics/filters/LightSource.h: Copied from WebCore/svg/graphics/filters/SVGLightSource.h.
  39411. * platform/graphics/filters/PointLightSource.h: Copied from WebCore/svg/graphics/filters/SVGPointLightSource.h.
  39412. * platform/graphics/filters/SpotLightSource.h: Copied from WebCore/svg/graphics/filters/SVGSpotLightSource.h.
  39413. * svg/SVGFEConvolveMatrixElement.h:
  39414. * svg/SVGFEDiffuseLightingElement.cpp:
  39415. * svg/SVGFEDisplacementMapElement.h:
  39416. * svg/SVGFEDistantLightElement.cpp:
  39417. * svg/SVGFEFloodElement.h:
  39418. * svg/SVGFELightElement.h:
  39419. * svg/SVGFEMergeElement.h:
  39420. * svg/SVGFEMorphologyElement.h:
  39421. * svg/SVGFEOffsetElement.h:
  39422. * svg/SVGFEPointLightElement.cpp:
  39423. * svg/SVGFESpecularLightingElement.h:
  39424. * svg/SVGFESpotLightElement.cpp:
  39425. * svg/SVGFETileElement.h:
  39426. * svg/SVGFETurbulenceElement.h:
  39427. * svg/graphics/filters/SVGDistantLightSource.h: Removed.
  39428. * svg/graphics/filters/SVGFEConvolveMatrix.cpp: Removed.
  39429. * svg/graphics/filters/SVGFEConvolveMatrix.h: Removed.
  39430. * svg/graphics/filters/SVGFEDiffuseLighting.cpp: Removed.
  39431. * svg/graphics/filters/SVGFEDiffuseLighting.h: Removed.
  39432. * svg/graphics/filters/SVGFEDisplacementMap.cpp: Removed.
  39433. * svg/graphics/filters/SVGFEDisplacementMap.h: Removed.
  39434. * svg/graphics/filters/SVGFEFlood.cpp: Removed.
  39435. * svg/graphics/filters/SVGFEFlood.h: Removed.
  39436. * svg/graphics/filters/SVGFELighting.cpp: Removed.
  39437. * svg/graphics/filters/SVGFELighting.h: Removed.
  39438. * svg/graphics/filters/SVGFEMerge.cpp: Removed.
  39439. * svg/graphics/filters/SVGFEMerge.h: Removed.
  39440. * svg/graphics/filters/SVGFEMorphology.cpp: Removed.
  39441. * svg/graphics/filters/SVGFEMorphology.h: Removed.
  39442. * svg/graphics/filters/SVGFEOffset.cpp: Removed.
  39443. * svg/graphics/filters/SVGFEOffset.h: Removed.
  39444. * svg/graphics/filters/SVGFESpecularLighting.cpp: Removed.
  39445. * svg/graphics/filters/SVGFESpecularLighting.h: Removed.
  39446. * svg/graphics/filters/SVGFETile.cpp: Removed.
  39447. * svg/graphics/filters/SVGFETile.h: Removed.
  39448. * svg/graphics/filters/SVGFETurbulence.cpp: Removed.
  39449. * svg/graphics/filters/SVGFETurbulence.h: Removed.
  39450. * svg/graphics/filters/SVGLightSource.cpp: Removed.
  39451. * svg/graphics/filters/SVGLightSource.h: Removed.
  39452. * svg/graphics/filters/SVGPointLightSource.h: Removed.
  39453. * svg/graphics/filters/SVGSpotLightSource.h: Removed.
  39454. 2010-09-22 Patrick Gansterer <paroga@webkit.org>
  39455. Reviewed by Adam Roben.
  39456. [WIN] Add internetHandle to WebCoreSynchronousLoader.
  39457. https://bugs.webkit.org/show_bug.cgi?id=46185
  39458. For loading content via network the WebCoreSynchronousLoader needs its own (synchronous) internetHandle.
  39459. This also adds asynchronousInternetHandle() to create a static asynchronous internetHandle.
  39460. * platform/network/win/ResourceHandleWin.cpp:
  39461. (WebCore::createInternetHandle):
  39462. (WebCore::asynchronousInternetHandle):
  39463. (WebCore::WebCoreSynchronousLoader::internetHandle):
  39464. (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader): Create synchronous internetHandle.
  39465. (WebCore::WebCoreSynchronousLoader::~WebCoreSynchronousLoader): Delete synchronous internetHandle.
  39466. 2010-09-22 Kwang Yul Seo <skyul@company100.net>
  39467. Reviewed by Chris Fleizach.
  39468. [chromium] Remove unused sys/types.h in VDMXParser.cpp
  39469. https://bugs.webkit.org/show_bug.cgi?id=46136
  39470. sys/types.h is not needed here.
  39471. * platform/graphics/chromium/VDMXParser.cpp:
  39472. 2010-09-22 Kwang Yul Seo <skyul@company100.net>
  39473. Reviewed by Kent Tamura.
  39474. [BREWMP] Change the home directory path to the WebKit module directory
  39475. https://bugs.webkit.org/show_bug.cgi?id=45895
  39476. AEEFS_HOME_DIR denotes the currently running application's directory.
  39477. Change it to fs:/~<clsid> to use the WebKit module directory as home.
  39478. * platform/brew/FileSystemBrew.cpp:
  39479. (WebCore::homeDirectoryPath):
  39480. 2010-09-22 Kwang Yul Seo <skyul@company100.net>
  39481. Reviewed by Kent Tamura.
  39482. [BREWMP] Add dummy Pasteboard
  39483. https://bugs.webkit.org/show_bug.cgi?id=46107
  39484. Pasteboard is not supported yet. Add dummy implementation to avoid link errors.
  39485. * platform/brew/PasteboardBrew.cpp: Added.
  39486. (WebCore::Pasteboard::generalPasteboard):
  39487. (WebCore::Pasteboard::Pasteboard):
  39488. (WebCore::Pasteboard::clear):
  39489. (WebCore::Pasteboard::writeSelection):
  39490. (WebCore::Pasteboard::writePlainText):
  39491. (WebCore::Pasteboard::writeURL):
  39492. (WebCore::Pasteboard::writeImage):
  39493. (WebCore::Pasteboard::canSmartReplace):
  39494. (WebCore::Pasteboard::plainText):
  39495. (WebCore::Pasteboard::documentFragment):
  39496. 2010-09-21 Ryosuke Niwa <rniwa@webkit.org>
  39497. Reviewed by Kent Tamura.
  39498. Each EntityMaskIn* needs explanation
  39499. https://bugs.webkit.org/show_bug.cgi?id=44833
  39500. Added a description as to why we escape nbsp when serializing HTML documents but not when serializing XML documents.
  39501. * editing/markup.cpp:
  39502. 2010-09-21 Ryosuke Niwa <rniwa@webkit.org>
  39503. Reviewed by Kent Tamura.
  39504. cleanup: removeInlineStyleFromElement and extractInlineStyleToPushDown should be merged
  39505. https://bugs.webkit.org/show_bug.cgi?id=46205
  39506. Cleanup required to fix the bug 27818. Added the style extraction mechanism to removeInlineStyleFromElement
  39507. and removeCSSStyle and replaced the call to extractInlineStyleToPushDown by a call to removeInlineStyleFromElement.
  39508. * editing/ApplyStyleCommand.cpp:
  39509. (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Added extractedStyle argument.
  39510. (WebCore::ApplyStyleCommand::removeCSSStyle): Added extractedStyle argument.
  39511. (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): Calls removeInlineStyleFromElement instead of
  39512. extractInlineStyleToPushDown which has been deleted.
  39513. * editing/ApplyStyleCommand.h:
  39514. 2010-09-21 Andrew Wilson <atwilson@chromium.org>
  39515. Unreviewed, rolling out r67982.
  39516. http://trac.webkit.org/changeset/67982
  39517. https://bugs.webkit.org/show_bug.cgi?id=45156
  39518. Causes crashes on chromium testshell
  39519. * WebCore.gypi:
  39520. * accessibility/chromium/AXObjectCacheChromium.cpp:
  39521. (WebCore::AXObjectCache::postPlatformNotification):
  39522. (WebCore::AXObjectCache::handleFocusedUIElementChanged):
  39523. (WebCore::AXObjectCache::handleScrolledToAnchor):
  39524. * dom/Document.cpp:
  39525. (WebCore::Document::implicitClose):
  39526. (WebCore::Document::setFocusedNode):
  39527. * editing/SelectionController.h:
  39528. * editing/chromium/SelectionControllerChromium.cpp: Removed.
  39529. * page/FrameView.cpp:
  39530. (WebCore::FrameView::layout):
  39531. * page/chromium/ChromeClientChromium.h:
  39532. 2010-09-21 Cosmin Truta <ctruta@chromium.org>
  39533. Reviewed by James Robinson.
  39534. RenderImage::intrinsicSizeChanged crashes when m_imageResource is missing
  39535. https://bugs.webkit.org/show_bug.cgi?id=46120
  39536. Avoid applying operator -> to m_imageResource when its underlying pointer is NULL.
  39537. * rendering/RenderImage.h:
  39538. (WebCore::RenderImage::intrinsicSizeChanged): Checked m_imageResource.
  39539. * html/HTMLImageElement.cpp:
  39540. (HTMLImageElement::createRenderer): Fixed indentation.
  39541. 2010-09-21 Kenneth Russell <kbr@google.com>
  39542. Reviewed by James Robinson.
  39543. [chromium] Remove GLES2Context and WebGLES2Context
  39544. https://bugs.webkit.org/show_bug.cgi?id=46131
  39545. Removed now-obsolete GLES2Context and WebGLES2Context classes, and
  39546. dependency on command buffer client code from WebCore. Built and
  39547. tested 3D CSS and WebGL content on Mac OS X to test.
  39548. * WebCore.gypi:
  39549. * platform/chromium/GLES2Context.h: Removed.
  39550. * platform/graphics/skia/ImageSkia.cpp:
  39551. 2010-09-21 Geoffrey Garen <ggaren@apple.com>
  39552. Try to fix the Windows build.
  39553. * loader/Cache.cpp:
  39554. (WebCore::Cache::makeResourcePurgeable):
  39555. (WebCore::Cache::evict): Cast to int before using unary '-', to avoid an
  39556. MSVC warning.
  39557. 2010-09-21 Pratik Solanki <psolanki@apple.com>
  39558. Reviewed by Geoffrey Garen and Darin Adler.
  39559. Use purgeable memory to keep more dead resources in cache
  39560. https://bugs.webkit.org/show_bug.cgi?id=44806
  39561. <rdar://problem/8350901>
  39562. This changes the behavior of dead resources in the WebCore cache to be the following if
  39563. shouldMakeResourcePurgeableOnEviction() returns true.
  39564. 1. Dead resources in the cache are kept in non-purgeable memory.
  39565. 2. When we prune dead resources, instead of freeing them, we mark their memory as purgeable
  39566. and keep the resources until the kernel reclaims the purgeable memory.
  39567. By leaving the in-cache dead resources in dirty resident memory, we decrease the likelihood
  39568. of the kernel claiming that memory and forcing us to refetch the resource (for example when
  39569. a user presses back).
  39570. And by having an unbounded number of resource objects using purgeable memory, we can use
  39571. as much memory as is available on the machine. The trade-off is that the CachedResource
  39572. object (and its member variables) are allocated in non-purgeable TC-malloc'd memory so
  39573. we would see slightly more memory use due to this.
  39574. * loader/Cache.cpp:
  39575. (WebCore::Cache::resourceForURL): Adjust sizes appropriately if we made resource memory
  39576. non-purgeable.
  39577. (WebCore::Cache::pruneDeadResources): When removing dead resources, try first to mark their
  39578. memory as purgeable. If not, evict the resource.
  39579. (WebCore::Cache::makeResourcePurgeable): Added. Try to mark resource
  39580. memory as purgeable. If successful, adjust the sizes so that we don't
  39581. factor this resources size in the Cache size calculation.
  39582. (WebCore::Cache::evict): Don't decrement size if we already did it in makeResourcePurgeable.
  39583. (WebCore::Cache::dumpLRULists): Extra debug logging.
  39584. * loader/Cache.h:
  39585. (WebCore::Cache::shouldMakeResourcePurgeableOnEviction): Added. Indicates if the new
  39586. behaviour is enabled.
  39587. * loader/CachedCSSStyleSheet.cpp:
  39588. (WebCore::CachedCSSStyleSheet::allClientsRemoved): Do not mark memory as purgeable. The
  39589. Cache class takes care of this.
  39590. * loader/CachedImage.cpp:
  39591. (WebCore::CachedImage::destroyDecodedData): Ditto.
  39592. * loader/CachedScript.cpp:
  39593. (WebCore::CachedScript::destroyDecodedData): Ditto.
  39594. 2010-09-21 Dan Bernstein <mitz@apple.com>
  39595. Reviewed by Darin Adler.
  39596. <rdar://problem/7729077> Extending the selection to sentence boundary after a line break may select extra character
  39597. https://bugs.webkit.org/show_bug.cgi?id=46232
  39598. Test: editing/selection/extend-by-sentence-002.html
  39599. * editing/visible_units.cpp:
  39600. (WebCore::nextBoundary): The text iterator’s range end can be the position after
  39601. the line break, in which case the next visible is actually after the first character
  39602. of the next sentence. Instead, advance the text iterator past the newline character
  39603. and return the beginning of its range, which is guaranteed to still be before the
  39604. next sentence.
  39605. 2010-09-21 Robert Hogan <robert@webkit.org>
  39606. Rubber-stamped by Ariya Hidayat.
  39607. [Qt] Build fix against qt trunk
  39608. * platform/graphics/qt/ContextShadow.cpp:
  39609. (WebCore::ContextShadow::beginShadowLayer):
  39610. 2010-09-21 Tony Chang <tony@chromium.org>
  39611. Unreviewed, QT build fix.
  39612. * platform/qt/ClipboardQt.cpp:
  39613. (WebCore::ClipboardQt::ClipboardQt):
  39614. 2010-09-21 Andy Estes <aestes@apple.com>
  39615. Reviewed by Darin Adler.
  39616. REGRESSION (r61285): AIM 2.1.296: Code rendered as text in Welcome screen
  39617. https://bugs.webkit.org/show_bug.cgi?id=46134
  39618. * WebCore.exp.in: Export __ZN7WebCore32applicationIsAOLInstantMessengerEv.
  39619. * platform/mac/RuntimeApplicationChecks.h:
  39620. * platform/mac/RuntimeApplicationChecks.mm:
  39621. (WebCore::applicationIsAOLInstantMessenger): Determine if the embedding
  39622. application is AOL Instant Messenger by checking the bundle identifier.
  39623. 2010-09-21 Chris Guillory <chris.guillory@google.com>
  39624. Reviewed by Chris Fleizach.
  39625. Send webkit accessibility notifications to Chromium.
  39626. https://bugs.webkit.org/show_bug.cgi?id=45156
  39627. * WebCore.gypi:
  39628. * accessibility/chromium/AXObjectCacheChromium.cpp:
  39629. (WebCore::AXObjectCache::postPlatformNotification):
  39630. (WebCore::AXObjectCache::handleFocusedUIElementChanged):
  39631. (WebCore::AXObjectCache::handleScrolledToAnchor):
  39632. * dom/Document.cpp:
  39633. (WebCore::Document::implicitClose):
  39634. (WebCore::Document::setFocusedNode):
  39635. * editing/SelectionController.h:
  39636. * editing/chromium/SelectionControllerChromium.cpp: Added.
  39637. (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
  39638. * page/FrameView.cpp:
  39639. (WebCore::FrameView::layout):
  39640. * page/chromium/ChromeClientChromium.h:
  39641. 2010-09-21 Alejandro G. Castro <alex@igalia.com>
  39642. Reviewed by Martin Robinson.
  39643. [gtk] Move copyContextProperties outside the GraphicsContextCairo
  39644. https://bugs.webkit.org/show_bug.cgi?id=46179.
  39645. Moved the copyContextProperties function to the CairoUtilities so
  39646. we can use it outside GraphicsContextCairo. We moved also the old
  39647. gtk CairoUtilities file to GdkCairoUtilities and added the new
  39648. file in the cairo directory.
  39649. * GNUmakefile.am:
  39650. * platform/graphics/cairo/CairoUtilities.cpp: Added.
  39651. (WebCore::copyContextProperties):
  39652. * platform/graphics/cairo/CairoUtilities.h: Added.
  39653. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  39654. * platform/graphics/gtk/CairoUtilities.cpp: Removed.
  39655. * platform/graphics/gtk/CairoUtilities.h: Removed.
  39656. * platform/graphics/gtk/GdkCairoUtilities.cpp: Added.
  39657. (getCairoSurfacePixel):
  39658. (getGdkPixbufPixel):
  39659. (cairoImageSurfaceToGdkPixbuf):
  39660. * platform/graphics/gtk/GdkCairoUtilities.h: Added.
  39661. * platform/graphics/gtk/ImageBufferGtk.cpp:
  39662. * platform/graphics/gtk/ImageGtk.cpp:
  39663. 2010-09-21 Vangelis Kokkevis <vangelis@chromium.org>
  39664. Reviewed by James Robinson.
  39665. [chromium] Cleaned up LayerRendererChromium::prepareToDrawLayers
  39666. logic to avoid unnecessary copy operations if the existing root layer
  39667. contents aren't useful for scrolling. Also removed call to updateLayersRecursive()
  39668. as the composited layer update is actually happening in the drawLayers() method.
  39669. https://bugs.webkit.org/show_bug.cgi?id=46199
  39670. * platform/graphics/chromium/LayerRendererChromium.cpp:
  39671. (WebCore::LayerRendererChromium::prepareToDrawLayers):
  39672. 2010-09-21 Daniel Cheng <dcheng@chromium.org>
  39673. Reviewed by Tony Chang.
  39674. Change Clipboard to use an enum instead of isForDragging = true/false
  39675. https://bugs.webkit.org/show_bug.cgi?id=46004
  39676. No new tests, since it's just a refactoring change.
  39677. * bindings/js/JSClipboardCustom.cpp:
  39678. (WebCore::JSClipboard::setDragImage):
  39679. * bindings/v8/custom/V8ClipboardCustom.cpp:
  39680. (WebCore::V8Clipboard::setDragImageCallback):
  39681. * dom/Clipboard.cpp:
  39682. (WebCore::Clipboard::Clipboard):
  39683. (WebCore::Clipboard::setDropEffect):
  39684. (WebCore::Clipboard::setEffectAllowed):
  39685. * dom/Clipboard.h:
  39686. (WebCore::Clipboard::isForCopyAndPaste):
  39687. (WebCore::Clipboard::isForDragAndDrop):
  39688. * editing/android/EditorAndroid.cpp:
  39689. (WebCore::Editor::newGeneralClipboard):
  39690. * editing/brew/EditorBrew.cpp:
  39691. (WebCore::Editor::newGeneralClipboard):
  39692. * editing/chromium/EditorChromium.cpp:
  39693. (WebCore::Editor::newGeneralClipboard):
  39694. * editing/haiku/EditorHaiku.cpp:
  39695. (WebCore::Editor::newGeneralClipboard):
  39696. * editing/mac/EditorMac.mm:
  39697. (WebCore::Editor::newGeneralClipboard):
  39698. * editing/wx/EditorWx.cpp:
  39699. (WebCore::Editor::newGeneralClipboard):
  39700. * page/chromium/EventHandlerChromium.cpp:
  39701. (WebCore::EventHandler::createDraggingClipboard):
  39702. * page/efl/EventHandlerEfl.cpp:
  39703. (WebCore::EventHandler::createDraggingClipboard):
  39704. * page/gtk/EventHandlerGtk.cpp:
  39705. (WebCore::EventHandler::createDraggingClipboard):
  39706. * page/haiku/EventHandlerHaiku.cpp:
  39707. (WebCore::EventHandler::createDraggingClipboard):
  39708. * page/mac/EventHandlerMac.mm:
  39709. (WebCore::EventHandler::createDraggingClipboard):
  39710. * page/qt/EventHandlerQt.cpp:
  39711. (WebCore::EventHandler::createDraggingClipboard):
  39712. * page/win/EventHandlerWin.cpp:
  39713. (WebCore::EventHandler::createDraggingClipboard):
  39714. * page/wx/EventHandlerWx.cpp:
  39715. (WebCore::EventHandler::createDraggingClipboard):
  39716. * platform/android/ClipboardAndroid.cpp:
  39717. (WebCore::ClipboardAndroid::ClipboardAndroid):
  39718. (WebCore::ClipboardAndroid::clearData):
  39719. (WebCore::ClipboardAndroid::clearAllData):
  39720. (WebCore::ClipboardAndroid::setData):
  39721. * platform/android/ClipboardAndroid.h:
  39722. * platform/brew/ClipboardBrew.cpp:
  39723. (WebCore::ClipboardBrew::ClipboardBrew):
  39724. (WebCore::ClipboardBrew::clearData):
  39725. (WebCore::ClipboardBrew::clearAllData):
  39726. (WebCore::ClipboardBrew::setData):
  39727. * platform/brew/ClipboardBrew.h:
  39728. * platform/chromium/ClipboardChromium.cpp:
  39729. (WebCore::Clipboard::create):
  39730. (WebCore::ClipboardChromium::ClipboardChromium):
  39731. (WebCore::ClipboardChromium::create):
  39732. (WebCore::ClipboardChromium::getData):
  39733. * platform/chromium/ClipboardChromium.h:
  39734. * platform/efl/ClipboardEfl.cpp:
  39735. (WebCore::Editor::newGeneralClipboard):
  39736. (WebCore::ClipboardEfl::ClipboardEfl):
  39737. * platform/efl/ClipboardEfl.h:
  39738. (WebCore::ClipboardEfl::create):
  39739. * platform/gtk/ClipboardGtk.cpp:
  39740. (WebCore::Editor::newGeneralClipboard):
  39741. (WebCore::Clipboard::create):
  39742. (WebCore::ClipboardGtk::ClipboardGtk):
  39743. (WebCore::dataObjectTypeFromHTMLClipboardType):
  39744. (WebCore::ClipboardGtk::clearData):
  39745. (WebCore::ClipboardGtk::getData):
  39746. (WebCore::ClipboardGtk::setData):
  39747. * platform/gtk/ClipboardGtk.h:
  39748. (WebCore::ClipboardGtk::create):
  39749. * platform/haiku/ClipboardHaiku.cpp:
  39750. (WebCore::Clipboard::create):
  39751. (WebCore::ClipboardHaiku::ClipboardHaiku):
  39752. * platform/haiku/ClipboardHaiku.h:
  39753. (WebCore::ClipboardHaiku::create):
  39754. * platform/mac/ClipboardMac.h:
  39755. (WebCore::ClipboardMac::create):
  39756. * platform/mac/ClipboardMac.mm:
  39757. (WebCore::Clipboard::create):
  39758. (WebCore::ClipboardMac::ClipboardMac):
  39759. * platform/qt/ClipboardQt.cpp:
  39760. (WebCore::ClipboardQt::ClipboardQt):
  39761. (WebCore::ClipboardQt::~ClipboardQt):
  39762. (WebCore::ClipboardQt::clearData):
  39763. (WebCore::ClipboardQt::clearAllData):
  39764. (WebCore::ClipboardQt::setData):
  39765. (WebCore::ClipboardQt::declareAndWriteDragImage):
  39766. (WebCore::ClipboardQt::writeURL):
  39767. (WebCore::ClipboardQt::writeRange):
  39768. (WebCore::ClipboardQt::writePlainText):
  39769. * platform/qt/ClipboardQt.h:
  39770. (WebCore::ClipboardQt::create):
  39771. * platform/win/ClipboardWin.cpp:
  39772. (WebCore::Clipboard::create):
  39773. (WebCore::ClipboardWin::ClipboardWin):
  39774. (WebCore::ClipboardWin::clearData):
  39775. (WebCore::ClipboardWin::clearAllData):
  39776. (WebCore::ClipboardWin::setData):
  39777. (WebCore::ClipboardWin::setExternalDataObject):
  39778. * platform/win/ClipboardWin.h:
  39779. (WebCore::ClipboardWin::create):
  39780. * platform/win/EditorWin.cpp:
  39781. (WebCore::Editor::newGeneralClipboard):
  39782. * platform/wx/ClipboardWx.cpp:
  39783. (WebCore::ClipboardWx::ClipboardWx):
  39784. * platform/wx/ClipboardWx.h:
  39785. (WebCore::ClipboardWx::create):
  39786. 2010-09-21 Abhishek Arya <inferno@chromium.org>
  39787. Reviewed by Dave Hyatt.
  39788. Take isValueList() checks out of the asserts for memory safety.
  39789. https://bugs.webkit.org/show_bug.cgi?id=46194
  39790. Test: editing/execCommand/apply-style-text-decoration-crash.html
  39791. * editing/ApplyStyleCommand.cpp:
  39792. (WebCore::StyleChange::extractTextStyles):
  39793. (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown):
  39794. 2010-09-21 Vangelis Kokkevis <vangelis@chromium.org>
  39795. Reviewed by Kenneth Russell.
  39796. [chromium] Fixing double translation of composited layers when scrolling.
  39797. The scrolling transform is now applied by a separate layer maintained in
  39798. the RenderLayerCompositor.
  39799. https://bugs.webkit.org/show_bug.cgi?id=46193
  39800. * platform/graphics/chromium/LayerRendererChromium.cpp:
  39801. (WebCore::LayerRendererChromium::drawLayers):
  39802. 2010-09-21 David Hyatt <hyatt@apple.com>
  39803. Reviewed by Dan Bernstein.
  39804. https://bugs.webkit.org/show_bug.cgi?id=46196, add marginStart/Before/End/After accessors to RenderBoxModelObject.
  39805. * rendering/RenderBox.cpp:
  39806. (WebCore::RenderBox::marginBefore):
  39807. (WebCore::RenderBox::marginAfter):
  39808. (WebCore::RenderBox::marginStart):
  39809. (WebCore::RenderBox::marginEnd):
  39810. * rendering/RenderBox.h:
  39811. * rendering/RenderBoxModelObject.h:
  39812. * rendering/RenderInline.cpp:
  39813. (WebCore::computeMargin):
  39814. (WebCore::RenderInline::marginLeft):
  39815. (WebCore::RenderInline::marginRight):
  39816. (WebCore::RenderInline::marginTop):
  39817. (WebCore::RenderInline::marginBottom):
  39818. (WebCore::RenderInline::marginStart):
  39819. (WebCore::RenderInline::marginEnd):
  39820. * rendering/RenderInline.h:
  39821. (WebCore::RenderInline::marginBefore):
  39822. (WebCore::RenderInline::marginAfter):
  39823. 2010-09-21 David Hyatt <hyatt@apple.com>
  39824. Reviewed by Dan Bernstein.
  39825. https://bugs.webkit.org/show_bug.cgi?id=46190, add borderStart/Before/End/After accessors to RenderBoxModelObject.
  39826. * rendering/RenderBoxModelObject.h:
  39827. (WebCore::RenderBoxModelObject::borderBefore):
  39828. (WebCore::RenderBoxModelObject::borderAfter):
  39829. (WebCore::RenderBoxModelObject::borderStart):
  39830. (WebCore::RenderBoxModelObject::borderEnd):
  39831. (WebCore::RenderBoxModelObject::borderAndPaddingLogicalHeight):
  39832. (WebCore::RenderBoxModelObject::borderAndPaddingLogicalWidth):
  39833. * rendering/RenderTableCell.cpp:
  39834. (WebCore::RenderTableCell::borderStart):
  39835. (WebCore::RenderTableCell::borderEnd):
  39836. (WebCore::RenderTableCell::borderBefore):
  39837. (WebCore::RenderTableCell::borderAfter):
  39838. * rendering/RenderTableCell.h:
  39839. 2010-09-21 Martin Robinson <mrobinson@igalia.com>
  39840. Reviewed by Xan Lopez.
  39841. [GTK] 'make dist' should be fixed in preparation for the next release
  39842. https://bugs.webkit.org/show_bug.cgi?id=46129
  39843. * GNUmakefile.am: Update the sources list to include missing headers.
  39844. 2010-09-21 David Hyatt <hyatt@apple.com>
  39845. Reviewed by John Sullivan.
  39846. https://bugs.webkit.org/show_bug.cgi?id=46188, make the cross-platform setPrinting method match the Mac version of the method.
  39847. Specifically don't pass the page size down to subframes of the one you're printing.
  39848. * page/Frame.cpp:
  39849. (WebCore::Frame::setPrinting):
  39850. 2010-09-21 Patrick Gansterer <paroga@webkit.org>
  39851. Reviewed by Adam Roben.
  39852. Use WTF::Vector for storing formData in ResourceHandleWin.
  39853. https://bugs.webkit.org/show_bug.cgi?id=46180
  39854. * platform/network/ResourceHandleInternal.h:
  39855. (WebCore::ResourceHandleInternal::ResourceHandleInternal):
  39856. * platform/network/win/ResourceHandleWin.cpp:
  39857. (WebCore::ResourceHandle::onHandleCreated):
  39858. (WebCore::ResourceHandle::onRequestComplete):
  39859. 2010-09-21 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
  39860. Reviewed by Andreas Kling.
  39861. [Qt] Check if the reply has been deleted before finishing a network request
  39862. https://bugs.webkit.org/show_bug.cgi?id=46174
  39863. A crash can happen with the following sequence:
  39864. 1. QNetworkReplyHandler::abort() emits reply->deleteLater()
  39865. 2. QNAM emits QNetworkReply::finished() -> calls QNetworkReplyHandler::finish()
  39866. 3. event loop would call reply->deleteLater()
  39867. However a crash occurs since m_reply == 0 on step 2.
  39868. * platform/network/qt/QNetworkReplyHandler.cpp:
  39869. (WebCore::QNetworkReplyHandler::finish):
  39870. 2010-09-21 Jochen Eisinger <jochen@chromium.org>
  39871. Reviewed by Jeremy Orlow.
  39872. Use @ to concatenate the database name and the database identifier when building
  39873. the filename to use for indexed databases. That character is valid for filenames
  39874. but cannot occur in a database identifier derived from a security origin.
  39875. https://bugs.webkit.org/show_bug.cgi?id=46178
  39876. * storage/IDBFactoryBackendImpl.cpp:
  39877. (WebCore::IDBFactoryBackendImpl::databaseFileName):
  39878. 2010-09-21 Steve Block <steveblock@google.com>
  39879. Reviewed by Jeremy Orlow.
  39880. DeviceOrientationClient and DeviceMotionClient should have controllerDestroyed() methods
  39881. https://bugs.webkit.org/show_bug.cgi?id=45891
  39882. Tested by existing DeviceOrientation tests.
  39883. * dom/DeviceMotionClient.h:
  39884. * dom/DeviceMotionController.cpp:
  39885. (WebCore::DeviceMotionController::~DeviceMotionController):
  39886. * dom/DeviceMotionController.h:
  39887. * dom/DeviceOrientationClient.h:
  39888. * dom/DeviceOrientationController.cpp:
  39889. (WebCore::DeviceOrientationController::~DeviceOrientationController):
  39890. * dom/DeviceOrientationController.h:
  39891. * loader/EmptyClients.h:
  39892. (WebCore::EmptyDeviceMotionClient::deviceOrientationControllerDestroyed):
  39893. (WebCore::EmptyDeviceOrientationClient::deviceOrientationControllerDestroyed):
  39894. * platform/mock/DeviceOrientationClientMock.h:
  39895. (WebCore::DeviceOrientationClientMock::deviceOrientationControllerDestroyed):
  39896. 2010-09-21 Jochen Eisinger <jochen@chromium.org>
  39897. Reviewed by Jeremy Orlow.
  39898. Factor out the file name used for a given indexed database to a static method.
  39899. https://bugs.webkit.org/show_bug.cgi?id=46090
  39900. * storage/IDBFactoryBackendImpl.cpp:
  39901. (WebCore::openSQLiteDatabase):
  39902. (WebCore::IDBFactoryBackendImpl::databaseFileName):
  39903. * storage/IDBFactoryBackendImpl.h:
  39904. 2010-09-21 Dirk Schulze <krit@webkit.org>
  39905. SVG Filter cleanup
  39906. https://bugs.webkit.org/show_bug.cgi?id=45612
  39907. Unreviewed change of epsilon back to a more tolerant value in RenderTreeAsText and made it a static const.
  39908. This should turn the bots green again.
  39909. * rendering/RenderTreeAsText.cpp:
  39910. (WebCore::hasFractions):
  39911. 2010-09-21 David Hyatt <hyatt@apple.com>
  39912. Reviewed by Dan Bernstein.
  39913. https://bugs.webkit.org/show_bug.cgi?id=46125, convert table cell intrinsic padding from top/bottom-based
  39914. to before/after-based. A vertical text table can have intrinsic padding built into the left/right
  39915. direction (and this allows the base class logical padding methods on RenderBoxModelObject to be safe to use).
  39916. * rendering/RenderTableCell.cpp:
  39917. (WebCore::RenderTableCell::RenderTableCell):
  39918. (WebCore::RenderTableCell::paddingTop):
  39919. (WebCore::RenderTableCell::paddingBottom):
  39920. (WebCore::RenderTableCell::paddingLeft):
  39921. (WebCore::RenderTableCell::paddingRight):
  39922. (WebCore::RenderTableCell::paddingBefore):
  39923. (WebCore::RenderTableCell::paddingAfter):
  39924. * rendering/RenderTableCell.h:
  39925. (WebCore::RenderTableCell::setIntrinsicPaddingBefore):
  39926. (WebCore::RenderTableCell::setIntrinsicPaddingAfter):
  39927. (WebCore::RenderTableCell::setIntrinsicPadding):
  39928. (WebCore::RenderTableCell::intrinsicPaddingBefore):
  39929. (WebCore::RenderTableCell::intrinsicPaddingAfter):
  39930. * rendering/RenderTableSection.cpp:
  39931. (WebCore::RenderTableSection::calcRowHeight):
  39932. (WebCore::RenderTableSection::layoutRows):
  39933. * rendering/RenderTreeAsText.cpp:
  39934. (WebCore::RenderTreeAsText::writeRenderObject):
  39935. (WebCore::writeTextRun):
  39936. 2010-09-21 Dirk Schulze <krit@webkit.org>
  39937. Reviewed by Nikolas Zimmermann.
  39938. SVG Filter cleanup
  39939. https://bugs.webkit.org/show_bug.cgi?id=45612
  39940. Second cleanup patch. Modified files to follow webkit style. Removed dependencies
  39941. to SVG of most of the filter effects and prepared them to move from WebCore/svg/graphics/filters
  39942. to WebCore/platform/graphics/filters/.
  39943. Renamed calculateDrawingIntRect and calculateDrawingRect to requestedRegionOfInputImageData and
  39944. drawingRegionOfInputImage to clarify the functionality and make both functions distinguishable.
  39945. * platform/graphics/filters/FEBlend.cpp:
  39946. (WebCore::FEBlend::apply):
  39947. * platform/graphics/filters/FEBlend.h:
  39948. * platform/graphics/filters/FEColorMatrix.cpp:
  39949. (WebCore::FEColorMatrix::apply):
  39950. * platform/graphics/filters/FEColorMatrix.h:
  39951. * platform/graphics/filters/FEComponentTransfer.cpp:
  39952. (WebCore::FEComponentTransfer::apply):
  39953. * platform/graphics/filters/FEComponentTransfer.h:
  39954. (WebCore::ComponentTransferFunction::ComponentTransferFunction):
  39955. * platform/graphics/filters/FEComposite.cpp:
  39956. (WebCore::FEComposite::apply):
  39957. * platform/graphics/filters/FEComposite.h:
  39958. * platform/graphics/filters/FEGaussianBlur.cpp:
  39959. (WebCore::FEGaussianBlur::apply):
  39960. * platform/graphics/filters/FEGaussianBlur.h:
  39961. * platform/graphics/filters/Filter.h:
  39962. * platform/graphics/filters/FilterEffect.cpp:
  39963. (WebCore::FilterEffect::requestedRegionOfInputImageData):
  39964. (WebCore::FilterEffect::drawingRegionOfInputImage):
  39965. (WebCore::FilterEffect::effectContext):
  39966. * platform/graphics/filters/FilterEffect.h:
  39967. * platform/graphics/filters/ImageBufferFilter.cpp:
  39968. * platform/graphics/filters/ImageBufferFilter.h:
  39969. * platform/graphics/filters/SourceAlpha.cpp:
  39970. (WebCore::SourceAlpha::apply):
  39971. * platform/graphics/filters/SourceAlpha.h:
  39972. (WebCore::SourceAlpha::isSourceInput):
  39973. (WebCore::SourceAlpha::SourceAlpha):
  39974. * platform/graphics/filters/SourceGraphic.cpp:
  39975. (WebCore::SourceGraphic::apply):
  39976. * platform/graphics/filters/SourceGraphic.h:
  39977. (WebCore::SourceGraphic::isSourceInput):
  39978. (WebCore::SourceGraphic::SourceGraphic):
  39979. * rendering/RenderTreeAsText.cpp:
  39980. (WebCore::hasFractions):
  39981. (WebCore::operator<<):
  39982. * rendering/RenderTreeAsText.h:
  39983. (WebCore::operator<<):
  39984. * rendering/SVGRenderTreeAsText.cpp:
  39985. * rendering/SVGRenderTreeAsText.h:
  39986. * svg/graphics/filters/SVGFEConvolveMatrix.cpp:
  39987. (WebCore::FEConvolveMatrix::apply):
  39988. * svg/graphics/filters/SVGFEConvolveMatrix.h:
  39989. * svg/graphics/filters/SVGFEDiffuseLighting.cpp:
  39990. * svg/graphics/filters/SVGFEDiffuseLighting.h:
  39991. * svg/graphics/filters/SVGFEDisplacementMap.cpp:
  39992. (WebCore::FEDisplacementMap::apply):
  39993. * svg/graphics/filters/SVGFEDisplacementMap.h:
  39994. * svg/graphics/filters/SVGFEFlood.cpp:
  39995. (WebCore::FEFlood::apply):
  39996. (WebCore::FEFlood::externalRepresentation):
  39997. * svg/graphics/filters/SVGFEFlood.h:
  39998. * svg/graphics/filters/SVGFEImage.cpp:
  39999. (WebCore::FEImage::apply):
  40000. * svg/graphics/filters/SVGFEImage.h:
  40001. * svg/graphics/filters/SVGFELighting.cpp:
  40002. (WebCore::FELighting::apply):
  40003. * svg/graphics/filters/SVGFELighting.h:
  40004. * svg/graphics/filters/SVGFEMerge.cpp:
  40005. (WebCore::FEMerge::apply):
  40006. * svg/graphics/filters/SVGFEMerge.h:
  40007. * svg/graphics/filters/SVGFEMorphology.cpp:
  40008. (WebCore::FEMorphology::apply):
  40009. * svg/graphics/filters/SVGFEMorphology.h:
  40010. * svg/graphics/filters/SVGFEOffset.cpp:
  40011. (WebCore::FEOffset::apply):
  40012. * svg/graphics/filters/SVGFEOffset.h:
  40013. * svg/graphics/filters/SVGFESpecularLighting.cpp:
  40014. * svg/graphics/filters/SVGFESpecularLighting.h:
  40015. * svg/graphics/filters/SVGFETile.cpp:
  40016. (WebCore::FETile::apply):
  40017. * svg/graphics/filters/SVGFETile.h:
  40018. * svg/graphics/filters/SVGFETurbulence.cpp:
  40019. (WebCore::FETurbulence::apply):
  40020. * svg/graphics/filters/SVGFETurbulence.h:
  40021. 2010-09-20 Philippe Normand <pnormand@igalia.com>
  40022. Reviewed by Eric Carlson.
  40023. [GTK] enhanced context menu for media elements
  40024. https://bugs.webkit.org/show_bug.cgi?id=45021
  40025. New items in the media Element context menu:
  40026. - play/pause
  40027. - mute/unmute
  40028. - controls display control
  40029. - switch to fullscreen (for video only)
  40030. - loop playback control
  40031. - copy media url to clipboard
  40032. - open in new window
  40033. Test: media/context-menu-actions.html
  40034. * page/ContextMenuController.cpp:
  40035. (WebCore::ContextMenuController::contextMenuItemSelected):
  40036. * platform/ContextMenu.cpp:
  40037. (WebCore::ContextMenu::populate):
  40038. (WebCore::ContextMenu::checkOrEnableIfNeeded):
  40039. * platform/ContextMenuItem.h:
  40040. * platform/LocalizationStrategy.h:
  40041. * platform/LocalizedStrings.cpp:
  40042. (WebCore::contextMenuItemTagOpenVideoInNewWindow):
  40043. (WebCore::contextMenuItemTagOpenAudioInNewWindow):
  40044. (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
  40045. (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
  40046. (WebCore::contextMenuItemTagToggleMediaControls):
  40047. (WebCore::contextMenuItemTagToggleMediaLoop):
  40048. (WebCore::contextMenuItemTagEnterVideoFullscreen):
  40049. (WebCore::contextMenuItemTagMediaPlay):
  40050. (WebCore::contextMenuItemTagMediaPause):
  40051. (WebCore::contextMenuItemTagMediaMute):
  40052. * platform/LocalizedStrings.h:
  40053. * platform/android/LocalizedStringsAndroid.cpp:
  40054. (WebCore::contextMenuItemTagOpenVideoInNewWindow):
  40055. (WebCore::contextMenuItemTagOpenAudioInNewWindow):
  40056. (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
  40057. (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
  40058. (WebCore::contextMenuItemTagToggleMediaControls):
  40059. (WebCore::contextMenuItemTagToggleMediaLoop):
  40060. (WebCore::contextMenuItemTagEnterVideoFullscreen):
  40061. (WebCore::contextMenuItemTagMediaPlay):
  40062. (WebCore::contextMenuItemTagMediaPause):
  40063. (WebCore::contextMenuItemTagMediaMute):
  40064. * platform/brew/LocalizedStringsBrew.cpp:
  40065. (WebCore::contextMenuItemTagOpenVideoInNewWindow):
  40066. (WebCore::contextMenuItemTagOpenAudioInNewWindow):
  40067. (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
  40068. (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
  40069. (WebCore::contextMenuItemTagToggleMediaControls):
  40070. (WebCore::contextMenuItemTagToggleMediaLoop):
  40071. (WebCore::contextMenuItemTagEnterVideoFullscreen):
  40072. (WebCore::contextMenuItemTagMediaPlay):
  40073. (WebCore::contextMenuItemTagMediaPause):
  40074. (WebCore::contextMenuItemTagMediaMute):
  40075. * platform/efl/LocalizedStringsEfl.cpp:
  40076. (WebCore::contextMenuItemTagOpenVideoInNewWindow):
  40077. (WebCore::contextMenuItemTagOpenAudioInNewWindow):
  40078. (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
  40079. (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
  40080. (WebCore::contextMenuItemTagToggleMediaControls):
  40081. (WebCore::contextMenuItemTagToggleMediaLoop):
  40082. (WebCore::contextMenuItemTagEnterVideoFullscreen):
  40083. (WebCore::contextMenuItemTagMediaPlay):
  40084. (WebCore::contextMenuItemTagMediaPause):
  40085. (WebCore::contextMenuItemTagMediaMute):
  40086. * platform/gtk/ContextMenuItemGtk.cpp:
  40087. (WebCore::gtkStockIDFromContextMenuAction):
  40088. * platform/gtk/LocalizedStringsGtk.cpp:
  40089. (WebCore::contextMenuItemTagOpenVideoInNewWindow):
  40090. (WebCore::contextMenuItemTagOpenAudioInNewWindow):
  40091. (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
  40092. (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
  40093. (WebCore::contextMenuItemTagToggleMediaControls):
  40094. (WebCore::contextMenuItemTagToggleMediaLoop):
  40095. (WebCore::contextMenuItemTagEnterVideoFullscreen):
  40096. (WebCore::contextMenuItemTagMediaPlay):
  40097. (WebCore::contextMenuItemTagMediaPause):
  40098. (WebCore::contextMenuItemTagMediaMute):
  40099. * platform/haiku/LocalizedStringsHaiku.cpp:
  40100. (WebCore::contextMenuItemTagOpenVideoInNewWindow):
  40101. (WebCore::contextMenuItemTagOpenAudioInNewWindow):
  40102. (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
  40103. (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
  40104. (WebCore::contextMenuItemTagToggleMediaControls):
  40105. (WebCore::contextMenuItemTagToggleMediaLoop):
  40106. (WebCore::contextMenuItemTagEnterVideoFullscreen):
  40107. (WebCore::contextMenuItemTagMediaPlay):
  40108. (WebCore::contextMenuItemTagMediaPause):
  40109. (WebCore::contextMenuItemTagMediaMute):
  40110. * platform/wx/LocalizedStringsWx.cpp:
  40111. (WebCore::contextMenuItemTagOpenVideoInNewWindow):
  40112. (WebCore::contextMenuItemTagOpenAudioInNewWindow):
  40113. (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
  40114. (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
  40115. (WebCore::contextMenuItemTagToggleMediaControls):
  40116. (WebCore::contextMenuItemTagToggleMediaLoop):
  40117. (WebCore::contextMenuItemTagEnterVideoFullscreen):
  40118. (WebCore::contextMenuItemTagMediaPlay):
  40119. (WebCore::contextMenuItemTagMediaPause):
  40120. (WebCore::contextMenuItemTagMediaMute):
  40121. * rendering/HitTestResult.cpp:
  40122. (WebCore::HitTestResult::absoluteMediaURL):
  40123. (WebCore::HitTestResult::mediaSupportsFullscreen):
  40124. (WebCore::HitTestResult::mediaElement):
  40125. (WebCore::HitTestResult::toggleMediaControlsDisplay):
  40126. (WebCore::HitTestResult::toggleMediaLoopPlayback):
  40127. (WebCore::HitTestResult::enterFullscreenForVideo):
  40128. (WebCore::HitTestResult::mediaControlsEnabled):
  40129. (WebCore::HitTestResult::mediaLoopEnabled):
  40130. (WebCore::HitTestResult::mediaPlaying):
  40131. (WebCore::HitTestResult::toggleMediaPlayState):
  40132. (WebCore::HitTestResult::mediaHasAudio):
  40133. (WebCore::HitTestResult::mediaMuted):
  40134. (WebCore::HitTestResult::toggleMediaMuteState):
  40135. * rendering/HitTestResult.h:
  40136. 2010-09-20 Kwang Yul Seo <skyul@company100.net>
  40137. Reviewed by Daniel Bates.
  40138. [BREWMP] Handle tab key
  40139. https://bugs.webkit.org/show_bug.cgi?id=46104
  40140. In Brew MP, AVK_FUNCTION is the key code for tab.
  40141. Process AVK_FUNCTION as tab in PlatformKeyboardEvent.
  40142. * platform/brew/PlatformKeyboardEventBrew.cpp:
  40143. (WebCore::keyIdentifierForBrewKeyCode):
  40144. (WebCore::windowsKeyCodeForKeyEvent):
  40145. 2010-09-20 Sheriff Bot <webkit.review.bot@gmail.com>
  40146. Unreviewed, rolling out r67918.
  40147. http://trac.webkit.org/changeset/67918
  40148. https://bugs.webkit.org/show_bug.cgi?id=46162
  40149. Broke chromium win compile (Requested by jamesr on #webkit).
  40150. * WebCore.gyp/WebCore.gyp:
  40151. * WebCore.gypi:
  40152. * platform/graphics/chromium/GlyphPageTreeNodeLinux.cpp: Renamed from WebCore/platform/graphics/skia/GlyphPageTreeNodeSkia.cpp.
  40153. (WebCore::GlyphPage::fill):
  40154. 2010-09-20 Daniel Bates <dbates@rim.com>
  40155. Reviewed by Dan Bernstein.
  40156. Cleanup: Extract common border radii expansion code in
  40157. RenderBoxModelObject::paintBoxShadow() into function
  40158. https://bugs.webkit.org/show_bug.cgi?id=45934
  40159. Extracted code for expanding and clamping the border radii
  40160. into common function to remove duplicate code.
  40161. No functionality was changed. So, no new tests.
  40162. * rendering/RenderBoxModelObject.cpp:
  40163. (WebCore::uniformlyExpandBorderRadii): Added.
  40164. (WebCore::RenderBoxModelObject::paintBoxShadow): Moved common code to uniformlyExpandBorderRadii().
  40165. 2010-09-20 Kwang Yul Seo <skyul@company100.net>
  40166. Reviewed by James Robinson.
  40167. Make sure skia is not Chromium specific
  40168. https://bugs.webkit.org/show_bug.cgi?id=39672
  40169. GGlyphPageTreeNodeLinux does not depend on Linux or Chromium.
  40170. Move GGlyphPageTreeNodeLinux to platform/graphics/skia and rename it to
  40171. GlyphPageTreeNodeSkia.cpp so that other ports can use it.
  40172. * WebCore.gyp/WebCore.gyp:
  40173. * WebCore.gypi:
  40174. * platform/graphics/chromium/GlyphPageTreeNodeLinux.cpp: Removed.
  40175. * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp: Added.
  40176. 2010-09-20 Kinuko Yasuda <kinuko@chromium.org>
  40177. Reviewed by David Levin.
  40178. Add NoStaticTables attributes to IDLs of FileSystem API for Worker support
  40179. https://bugs.webkit.org/show_bug.cgi?id=46021
  40180. Added NoStaticTables attributes to IDLs except for ones for Callbacks.
  40181. (As NoStaticTables only affects non-callback interfaces.)
  40182. * fileapi/DOMFileSystem.idl:
  40183. * fileapi/DirectoryEntry.idl:
  40184. * fileapi/DirectoryReader.idl:
  40185. * fileapi/Entry.idl:
  40186. * fileapi/EntryArray.idl:
  40187. * fileapi/FileEntry.idl:
  40188. * fileapi/Flags.idl:
  40189. * fileapi/Metadata.idl:
  40190. 2010-09-20 Nico Weber <thakis@chromium.org>
  40191. Reviewed by Adam Barth.
  40192. Fix "operands of ? are integers of different signs" clang warnings
  40193. https://bugs.webkit.org/show_bug.cgi?id=46157
  40194. * platform/graphics/mac/ComplexTextController.cpp:
  40195. (WebCore::ComplexTextController::advance):
  40196. * rendering/RenderBox.cpp:
  40197. (WebCore::RenderBox::calcHeight):
  40198. 2010-09-20 Vangelis Kokkevis <vangelis@chromium.org>
  40199. Unreviewed, rolling out r67906.
  40200. http://trac.webkit.org/changeset/67906
  40201. https://bugs.webkit.org/show_bug.cgi?id=46139
  40202. Change causes chromium to crash when switching pages
  40203. * platform/graphics/chromium/ContentLayerChromium.h:
  40204. * platform/graphics/chromium/LayerChromium.h:
  40205. 2010-09-19 Antonio Gomes <agomes@rim.com>
  40206. Reviewed by Ojan Vafai.
  40207. SelectionController::modify should ask EditingBehavior for platform specific behavior
  40208. https://bugs.webkit.org/show_bug.cgi?id=41975
  40209. As a follow up of the refactoring work in bug 39854, patch makes SelectionController::modify()
  40210. stop accessing EditingBehaviorType values directly, and replaces its use by the EditingBehavior
  40211. class.
  40212. Since the "Settings*" parameter of the private SelectionController::modify() method becomes unneeded
  40213. with this change (it was used to query the editingBehaviorType), patch merges two modify() methods.
  40214. No behavior change, so no new tests.
  40215. * editing/EditingBehavior.h:
  40216. (WebCore::EditingBehavior::shouldAlwaysGrowSelectionWhenExtendingToBoundary):
  40217. * editing/SelectionController.cpp:
  40218. (WebCore::SelectionController::modify):
  40219. * editing/SelectionController.h:
  40220. 2010-09-20 Vangelis Kokkevis <vangelis@chromium.org>
  40221. Reviewed by James Robinson.
  40222. [chromium] Making destructors of LayerChromium and ContentLayerChromium virtual
  40223. so that the derived class' destructor code gets called.
  40224. https://bugs.webkit.org/show_bug.cgi?id=46139
  40225. * platform/graphics/chromium/ContentLayerChromium.h:
  40226. * platform/graphics/chromium/LayerChromium.h:
  40227. 2010-09-20 Darin Adler <darin@apple.com>
  40228. Reviewed by James Robinson.
  40229. Deprecate the inputType function on HTMLInputElement
  40230. https://bugs.webkit.org/show_bug.cgi?id=46023
  40231. * html/HTMLInputElement.cpp:
  40232. (WebCore::HTMLInputElement::HTMLInputElement): Use m_deprecatedTypeNumber.
  40233. (WebCore::HTMLInputElement::isValidValue): Use deprecatedInputType.
  40234. (WebCore::HTMLInputElement::typeMismatch): Ditto.
  40235. (WebCore::HTMLInputElement::valueMissing): Ditto.
  40236. (WebCore::HTMLInputElement::rangeUnderflow): Ditto.
  40237. (WebCore::HTMLInputElement::rangeOverflow): Ditto.
  40238. (WebCore::HTMLInputElement::minimum): Ditto.
  40239. (WebCore::HTMLInputElement::maximum): Ditto.
  40240. (WebCore::HTMLInputElement::stepBase): Ditto.
  40241. (WebCore::HTMLInputElement::stepMismatch): Ditto.
  40242. (WebCore::HTMLInputElement::getStepParameters): Ditto.
  40243. (WebCore::HTMLInputElement::getAllowedValueStep): Ditto.
  40244. (WebCore::HTMLInputElement::isKeyboardFocusable): Ditto.
  40245. (WebCore::HTMLInputElement::shouldUseInputMethod): Ditto.
  40246. (WebCore::HTMLInputElement::handleBlurEvent): Ditto.
  40247. (WebCore::HTMLInputElement::setType): Added a comment.
  40248. (WebCore::HTMLInputElement::updateType): Replaced the setInputType function
  40249. with this. The type is always the type attribute value, so there is no value
  40250. in passing the type string in, and this is an internal implementation detail,
  40251. not a public function.
  40252. (WebCore::createFormControlTypes): Use deprecatedNumberOfTypes.
  40253. (WebCore::HTMLInputElement::formControlType): Use deprecatedInputType.
  40254. (WebCore::HTMLInputElement::saveFormControlState): Ditto.
  40255. (WebCore::HTMLInputElement::restoreFormControlState): Ditto.
  40256. (WebCore::HTMLInputElement::accessKeyAction): Ditto.
  40257. (WebCore::HTMLInputElement::mapToEntry): Ditto.
  40258. (WebCore::HTMLInputElement::parseMappedAttribute): Ditto.
  40259. (WebCore::HTMLInputElement::rendererIsNeeded): Ditto.
  40260. (WebCore::HTMLInputElement::createRenderer): Ditto.
  40261. (WebCore::HTMLInputElement::attach): Ditto.
  40262. (WebCore::HTMLInputElement::isSuccessfulSubmitButton): Ditto.
  40263. (WebCore::HTMLInputElement::appendFormData): Ditto.
  40264. (WebCore::HTMLInputElement::isTextField): Ditto.
  40265. (WebCore::HTMLInputElement::isTextType): Ditto.
  40266. (WebCore::HTMLInputElement::setChecked): Ditto.
  40267. (WebCore::HTMLInputElement::value): Ditto.
  40268. (WebCore::HTMLInputElement::valueWithDefault): Ditto.
  40269. (WebCore::HTMLInputElement::setSuggestedValue): Ditto.
  40270. (WebCore::HTMLInputElement::setValue): Ditto.
  40271. (WebCore::HTMLInputElement::parseToDouble): Ditto.
  40272. (WebCore::HTMLInputElement::valueAsDate): Ditto.
  40273. (WebCore::HTMLInputElement::setValueAsDate): Ditto.
  40274. (WebCore::HTMLInputElement::valueAsNumber): Ditto.
  40275. (WebCore::HTMLInputElement::setValueAsNumber): Ditto.
  40276. (WebCore::HTMLInputElement::serializeForDateTimeTypes): Ditto.
  40277. (WebCore::HTMLInputElement::serialize): Ditto.
  40278. (WebCore::HTMLInputElement::setValueFromRenderer): Ditto.
  40279. (WebCore::HTMLInputElement::storesValueSeparateFromAttribute): Ditto.
  40280. (WebCore::HTMLInputElement::preDispatchEventHandler): Ditto.
  40281. (WebCore::HTMLInputElement::postDispatchEventHandler): Ditto.
  40282. (WebCore::HTMLInputElement::defaultEventHandler): Ditto.
  40283. (WebCore::HTMLInputElement::handleBeforeTextInsertedEvent): Ditto.
  40284. (WebCore::HTMLInputElement::files): Ditto.
  40285. (WebCore::HTMLInputElement::isAcceptableValue): Ditto.
  40286. (WebCore::HTMLInputElement::sanitizeValue): Ditto.
  40287. (WebCore::HTMLInputElement::hasUnacceptableValue): Ditto.
  40288. (WebCore::HTMLInputElement::needsActivationCallback): Ditto.
  40289. (WebCore::HTMLInputElement::isRequiredFormControl): Ditto.
  40290. (WebCore::HTMLInputElement::recalcWillValidate): Ditto.
  40291. (WebCore::HTMLInputElement::parseToDateComponents): Ditto.
  40292. (WebCore::HTMLInputElement::dataList): Ditto.
  40293. (WebCore::HTMLInputElement::isSpeechEnabled): Ditto.
  40294. * html/HTMLInputElement.h: Renamed InputType to DeprecatedInputType since it
  40295. should not be used outside this class. Renamed numberOfTypes to
  40296. dprecatedNumberOfTypes for the same reason. Changed all code to use
  40297. deprecatedInputType function instead of m_type. Renamed inputType function
  40298. to deprecatedInputType. Replaced public setInputType function with private
  40299. updateType function. Renamed m_type data member to m_deprecatedTypeNumber.
  40300. * rendering/MediaControlElements.cpp:
  40301. (WebCore::MediaControlInputElement::MediaControlInputElement):
  40302. * rendering/RenderFileUploadControl.cpp:
  40303. (WebCore::RenderFileUploadControl::updateFromElement):
  40304. Use setType instead of setInputType.
  40305. 2010-09-20 Mihai Parparita <mihaip@chromium.org>
  40306. Unreviewed; an attempt to fix Windows build.
  40307. * WebCore.vcproj/WebCore.vcproj:
  40308. 2010-09-20 Simon Fraser <simon.fraser@apple.com>
  40309. Reviewed by Dan Bernstein.
  40310. When PDF image is directly composited, it does not display
  40311. https://bugs.webkit.org/show_bug.cgi?id=46144
  40312. In the "direct image compositing" code path, we set the image directly
  40313. as the contents of the GraphicsLayer. However, this only works with
  40314. bitmap images, so we have to check that the image is a bitmap image.
  40315. Test: compositing/images/direct-pdf-image.html
  40316. * rendering/RenderLayerBacking.cpp:
  40317. (WebCore::RenderLayerBacking::isDirectlyCompositedImage):
  40318. 2010-09-20 Simon Fraser <simon.fraser@apple.com>
  40319. Reviewed by Darin Adler.
  40320. Crash when div with content set to image gets composited (Vimeo).
  40321. https://bugs.webkit.org/show_bug.cgi?id=46140
  40322. When CSS specifies that the content of an element is an image, we make
  40323. a RenderImage, and setStyle() before setting the image resource. In this
  40324. case the compositing code can attempt to access the cached image, which
  40325. would crash with a null deref.
  40326. Fix by null-checking m_imageResource.
  40327. Test: compositing/images/content-image.html
  40328. * rendering/RenderImage.h:
  40329. (WebCore::RenderImage::cachedImage):
  40330. 2010-09-20 Mihai Parparita <mihaip@chromium.org>
  40331. Reviewed by Dimitri Glazkov.
  40332. Hashchange event is no longer a simple event, needs to be its own interface
  40333. https://bugs.webkit.org/show_bug.cgi?id=36335
  40334. Add HashChangeEvent.idl and supporting files/changes.
  40335. Test: fast/loader/hashchange-event-properties.html
  40336. The original version of this patch was written by
  40337. Steven Lai <s3lance@hotmail.com>.
  40338. * CMakeLists.txt:
  40339. * DerivedSources.cpp:
  40340. * DerivedSources.make:
  40341. * GNUmakefile.am:
  40342. * WebCore.gypi:
  40343. * WebCore.pri:
  40344. * WebCore.vcproj/WebCore.vcproj:
  40345. * WebCore.xcodeproj/project.pbxproj:
  40346. * bindings/js/JSEventCustom.cpp:
  40347. (WebCore::toJS):
  40348. * bindings/v8/custom/V8EventCustom.cpp:
  40349. (WebCore::toV8):
  40350. * dom/Document.cpp:
  40351. (WebCore::Document::enqueueHashchangeEvent):
  40352. * dom/Event.cpp:
  40353. (WebCore::Event::isHashChangeEvent):
  40354. * dom/Event.h:
  40355. * dom/HashChangeEvent.h: Added.
  40356. (WebCore::HashChangeEvent::isHashChangeEvent):
  40357. (WebCore::HashChangeEvent::create):
  40358. (WebCore::HashChangeEvent::initHashChangeEvent):
  40359. (WebCore::HashChangeEvent::oldURL):
  40360. (WebCore::HashChangeEvent::newURL):
  40361. (WebCore::HashChangeEvent::HashChangeEvent):
  40362. * dom/HashChangeEvent.idl: Added.
  40363. * page/DOMWindow.idl:
  40364. 2010-09-20 Andy Estes <aestes@apple.com>
  40365. Reviewed by Adam Barth.
  40366. REGRESSION (HTML5 Parser): Pages broken due to <tag<tag> parsing changes
  40367. https://bugs.webkit.org/show_bug.cgi?id=40961
  40368. Add an optional quirk to the HTML5 tokenizer that reverts it to WebKit's
  40369. legacy behavior when the start of a new token is encountered before the
  40370. current token is finished parsing. The legacy behavior is to emit the
  40371. current token as if it were properly closed and being parsing the new
  40372. token.
  40373. Test: fast/parser/pre-html5-parser-quirks.html
  40374. * html/parser/HTMLDocumentParser.cpp:
  40375. (WebCore::HTMLDocumentParser::HTMLDocumentParser): Instantiate
  40376. m_tokenizer with the value of Settings::usePreHTML5ParserQuirks().
  40377. (WebCore::usePreHTMLParserQuirks): Add a helper function to return the
  40378. value of Settings::usePreHTML5ParserQuirks() if Settings is non-NULL.
  40379. * html/parser/HTMLPreloadScanner.cpp:
  40380. (WebCore::HTMLPreloadScanner::HTMLPreloadScanner): Instantiate
  40381. m_tokenizer with the value of Settings::usePreHTML5ParserQuirks().
  40382. * html/parser/HTMLTokenizer.cpp:
  40383. (WebCore::HTMLTokenizer::HTMLTokenizer):
  40384. (WebCore::HTMLTokenizer::nextToken): If the quirk is enabled and an
  40385. unexpected '<' is encountered in certain states, emit the current token
  40386. and reprocess the '<' as the start of a new token.
  40387. * html/parser/HTMLTokenizer.h:
  40388. (WebCore::HTMLTokenizer::create):
  40389. * html/parser/HTMLViewSourceParser.cpp:
  40390. (WebCore::HTMLViewSourceParser::HTMLViewSourceParser): Instantiate
  40391. m_tokenizer with the value of Settings::usePreHTML5ParserQuirks().
  40392. * page/Settings.cpp:
  40393. (WebCore::Settings::Settings):
  40394. * page/Settings.h:
  40395. (WebCore::Settings::setUsePreHTML5ParserQuirks):
  40396. (WebCore::Settings::usePreHTML5ParserQuirks):
  40397. 2010-09-20 David Hyatt <hyatt@apple.com>
  40398. Reviewed by Dan Bernstein.
  40399. https://bugs.webkit.org/show_bug.cgi?id=46132, add an isVerticalBlockFlow() method to RenderStyle and
  40400. patch callers so that they don't have to check both top-to-bottom and bottom-to-top block flow.
  40401. * rendering/RenderBox.cpp:
  40402. (WebCore::RenderBox::availableLogicalWidth):
  40403. * rendering/style/RenderStyle.cpp:
  40404. (WebCore::RenderStyle::logicalWidth):
  40405. (WebCore::RenderStyle::logicalHeight):
  40406. (WebCore::RenderStyle::logicalMinWidth):
  40407. (WebCore::RenderStyle::logicalMaxWidth):
  40408. (WebCore::RenderStyle::logicalMinHeight):
  40409. (WebCore::RenderStyle::logicalMaxHeight):
  40410. (WebCore::RenderStyle::borderStartWidth):
  40411. (WebCore::RenderStyle::borderEndWidth):
  40412. (WebCore::RenderStyle::marginStart):
  40413. (WebCore::RenderStyle::marginEnd):
  40414. (WebCore::RenderStyle::paddingStart):
  40415. (WebCore::RenderStyle::paddingEnd):
  40416. * rendering/style/RenderStyle.h:
  40417. (WebCore::InheritedFlags::isVerticalBlockFlow):
  40418. 2010-09-20 David Hyatt <hyatt@apple.com>
  40419. Reviewed by Dan Bernstein.
  40420. https://bugs.webkit.org/show_bug.cgi?id=46124, add support for logical padding accessors to
  40421. RenderBoxModelObject.
  40422. Added fast/blockflow/percentage-padding.html even though it fails, so that when more of layout is patched
  40423. we can see it start passing.
  40424. * rendering/RenderBoxModelObject.cpp:
  40425. (WebCore::RenderBoxModelObject::paddingTop):
  40426. (WebCore::RenderBoxModelObject::paddingBottom):
  40427. (WebCore::RenderBoxModelObject::paddingLeft):
  40428. (WebCore::RenderBoxModelObject::paddingRight):
  40429. (WebCore::RenderBoxModelObject::paddingBefore):
  40430. (WebCore::RenderBoxModelObject::paddingAfter):
  40431. (WebCore::RenderBoxModelObject::paddingStart):
  40432. (WebCore::RenderBoxModelObject::paddingEnd):
  40433. * rendering/RenderBoxModelObject.h:
  40434. 2010-09-20 David Hyatt <hyatt@apple.com>
  40435. Reviewed by Dan Bernstein.
  40436. https://bugs.webkit.org/show_bug.cgi?id=46126, add availableLogicalWidth() to RenderBox.
  40437. * rendering/RenderBlock.cpp:
  40438. (WebCore::RenderBlock::availableWidth):
  40439. (WebCore::RenderBlock::availableLogicalWidth):
  40440. * rendering/RenderBlock.h:
  40441. * rendering/RenderBox.cpp:
  40442. (WebCore::RenderBox::availableLogicalWidth):
  40443. * rendering/RenderBox.h:
  40444. (WebCore::RenderBox::availableWidth):
  40445. 2010-09-20 Kenneth Russell <kbr@google.com>
  40446. Reviewed by James Robinson.
  40447. [chromium] Change compositor to use GraphicsContext3D rather than GLES2Context
  40448. https://bugs.webkit.org/show_bug.cgi?id=45912
  40449. Switched Chromium's compositor to use GraphicsContext3D to issue
  40450. its OpenGL rendering calls rather than the Chromium-specific
  40451. GLES2Context and command buffer OpenGL implementation.
  40452. The in-process software rendering path for GraphicsContext3D does
  40453. not yet work with the compositor, at least not on Mac OS X. This
  40454. will be worked on in subsequent bugs.
  40455. Tested manually with 3D CSS, WebGL and video content on Mac OS X
  40456. and Linux. No new tests.
  40457. * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
  40458. (WebCore::Canvas2DLayerChromium::~Canvas2DLayerChromium):
  40459. (WebCore::Canvas2DLayerChromium::updateContents):
  40460. * platform/graphics/chromium/CanvasLayerChromium.cpp:
  40461. (WebCore::CanvasLayerChromium::SharedValues::SharedValues):
  40462. (WebCore::CanvasLayerChromium::SharedValues::~SharedValues):
  40463. (WebCore::CanvasLayerChromium::draw):
  40464. * platform/graphics/chromium/CanvasLayerChromium.h:
  40465. * platform/graphics/chromium/ContentLayerChromium.cpp:
  40466. (WebCore::ContentLayerChromium::SharedValues::SharedValues):
  40467. (WebCore::ContentLayerChromium::SharedValues::~SharedValues):
  40468. (WebCore::ContentLayerChromium::~ContentLayerChromium):
  40469. (WebCore::ContentLayerChromium::updateTextureRect):
  40470. (WebCore::ContentLayerChromium::draw):
  40471. * platform/graphics/chromium/ContentLayerChromium.h:
  40472. * platform/graphics/chromium/DrawingBufferChromium.cpp:
  40473. (WebCore::DrawingBuffer::publishToPlatformLayer):
  40474. * platform/graphics/chromium/LayerChromium.cpp:
  40475. (WebCore::loadShader):
  40476. (WebCore::LayerChromium::SharedValues::SharedValues):
  40477. (WebCore::LayerChromium::SharedValues::~SharedValues):
  40478. (WebCore::LayerChromium::createShaderProgram):
  40479. (WebCore::LayerChromium::layerRendererContext):
  40480. (WebCore::LayerChromium::drawTexturedQuad):
  40481. (WebCore::LayerChromium::drawDebugBorder):
  40482. (WebCore::LayerChromium::drawAsMask):
  40483. (WebCore::LayerChromium::prepareForDraw):
  40484. * platform/graphics/chromium/LayerChromium.h:
  40485. (WebCore::LayerChromium::SharedValues::context):
  40486. * platform/graphics/chromium/LayerRendererChromium.cpp:
  40487. (WebCore::LayerRendererChromium::create):
  40488. (WebCore::LayerRendererChromium::LayerRendererChromium):
  40489. (WebCore::LayerRendererChromium::context):
  40490. (WebCore::LayerRendererChromium::debugGLCall):
  40491. (WebCore::LayerRendererChromium::useShader):
  40492. (WebCore::LayerRendererChromium::prepareToDrawLayers):
  40493. (WebCore::LayerRendererChromium::updateRootLayerTextureRect):
  40494. (WebCore::LayerRendererChromium::drawLayers):
  40495. (WebCore::LayerRendererChromium::finish):
  40496. (WebCore::LayerRendererChromium::present):
  40497. (WebCore::LayerRendererChromium::getFramebufferPixels):
  40498. (WebCore::LayerRendererChromium::createLayerTexture):
  40499. (WebCore::LayerRendererChromium::drawLayerIntoStencilBuffer):
  40500. (WebCore::LayerRendererChromium::drawLayersRecursive):
  40501. (WebCore::LayerRendererChromium::drawLayer):
  40502. (WebCore::LayerRendererChromium::scissorToRect):
  40503. (WebCore::LayerRendererChromium::makeContextCurrent):
  40504. (WebCore::LayerRendererChromium::resizeOnscreenContent):
  40505. (WebCore::LayerRendererChromium::initializeSharedObjects):
  40506. (WebCore::LayerRendererChromium::cleanupSharedObjects):
  40507. * platform/graphics/chromium/LayerRendererChromium.h:
  40508. * platform/graphics/chromium/VideoLayerChromium.cpp:
  40509. (WebCore::VideoLayerChromium::createTextureRect):
  40510. (WebCore::VideoLayerChromium::updateTextureRect):
  40511. * platform/graphics/chromium/WebGLLayerChromium.cpp:
  40512. (WebCore::WebGLLayerChromium::updateContents):
  40513. * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
  40514. (WebCore::SharedGraphicsContext3D::flush):
  40515. (WebCore::SharedGraphicsContext3D::supportsCopyTextureToParentTextureCHROMIUM):
  40516. (WebCore::SharedGraphicsContext3D::copyTextureToParentTextureCHROMIUM):
  40517. * platform/graphics/gpu/SharedGraphicsContext3D.h:
  40518. 2010-09-20 David Hyatt <hyatt@apple.com>
  40519. Reviewed by Dan Bernstein.
  40520. https://bugs.webkit.org/show_bug.cgi?id=46119, add logical accessors to RenderStyle. Not used by any RenderObjects yet, so no tests
  40521. until then.
  40522. * rendering/style/RenderStyle.cpp:
  40523. (WebCore::RenderStyle::logicalWidth):
  40524. (WebCore::RenderStyle::logicalHeight):
  40525. (WebCore::RenderStyle::logicalMinWidth):
  40526. (WebCore::RenderStyle::logicalMaxWidth):
  40527. (WebCore::RenderStyle::logicalMinHeight):
  40528. (WebCore::RenderStyle::logicalMaxHeight):
  40529. (WebCore::RenderStyle::borderBeforeWidth):
  40530. (WebCore::RenderStyle::borderAfterWidth):
  40531. (WebCore::RenderStyle::borderStartWidth):
  40532. (WebCore::RenderStyle::borderEndWidth):
  40533. (WebCore::RenderStyle::marginBefore):
  40534. (WebCore::RenderStyle::marginAfter):
  40535. (WebCore::RenderStyle::marginStart):
  40536. (WebCore::RenderStyle::marginEnd):
  40537. (WebCore::RenderStyle::paddingBefore):
  40538. (WebCore::RenderStyle::paddingAfter):
  40539. (WebCore::RenderStyle::paddingStart):
  40540. (WebCore::RenderStyle::paddingEnd):
  40541. * rendering/style/RenderStyle.h:
  40542. 2010-09-20 David Hyatt <hyatt@apple.com>
  40543. Reviewed by Dan Bernstein.
  40544. https://bugs.webkit.org/show_bug.cgi?id=46116, implement block-flow-aware logical properties.
  40545. This patch adds all the logical properties from the CSS3 Writing Mode draft for margins, padding, border,
  40546. width and height.
  40547. Added fast/css/logical-property-resolution.html
  40548. * css/CSSComputedStyleDeclaration.cpp:
  40549. (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  40550. * css/CSSParser.cpp:
  40551. (WebCore::CSSParser::parseValue):
  40552. * css/CSSProperty.cpp:
  40553. (WebCore::resolveToPhysicalProperty):
  40554. (WebCore::CSSProperty::resolveDirectionAwareProperty):
  40555. * css/CSSProperty.h:
  40556. * css/CSSPropertyNames.in:
  40557. * css/CSSStyleSelector.cpp:
  40558. (WebCore::CSSStyleSelector::applyDeclarations):
  40559. (WebCore::CSSStyleSelector::applyProperty):
  40560. 2010-09-20 David Hyatt <hyatt@apple.com>
  40561. Reviewed by Beth Dakin.
  40562. https://bugs.webkit.org/show_bug.cgi?id=46114, two tables repaint tests failing on bots.
  40563. Patch layoutRows to apply the layout delta when setting a new cell location prior to laying out the cell.
  40564. The layout delta is then removed after layout has happened when the repaint check is done. This change
  40565. makes cell layout match block child layout, and now the cells have the correct new location up front
  40566. when laying out (a necessity for pagination).
  40567. * rendering/RenderTableSection.cpp:
  40568. (WebCore::RenderTableSection::layoutRows):
  40569. 2010-09-20 Jacob Dinu <dinu.jacob@nokia.com>
  40570. Reviewed by Adam Barth.
  40571. When loading a cached page, dispatchDidCommitLoad is called after FrameLoader::open so
  40572. that all initialzations are done before calling client dispatchDidCommitLoad to avoid
  40573. client from accessing incorrect data.
  40574. https://bugs.webkit.org/show_bug.cgi?id=41155
  40575. * loader/FrameLoader.cpp:
  40576. (WebCore::FrameLoader::commitProvisionalLoad):
  40577. (WebCore::FrameLoader::transitionToCommitted):
  40578. 2010-09-20 Simon Fraser <simon.fraser@apple.com>
  40579. Reviewed by Adam Roben.
  40580. REGRESSION: alternating animation direction doesn't work on Windows
  40581. https://bugs.webkit.org/show_bug.cgi?id=46017
  40582. Animation-direction on Windows was broken because bitfields on
  40583. Windows are signed.
  40584. Fixed by making m_direction an unsigned in the bitfield, and
  40585. casting in the accessor.
  40586. Test: animations/animation-direction.html
  40587. * platform/animation/Animation.h:
  40588. (WebCore::Animation::direction):
  40589. 2010-09-20 Enrica Casucci <enrica@apple.com>
  40590. Reviewed by Sam Weinig.
  40591. Pasteboard doesn't work in WebKit2.
  40592. https://bugs.webkit.org/show_bug.cgi?id=42317
  40593. <rdar://problem/7660537>
  40594. * loader/EmptyClients.h:
  40595. (WebCore::EmptyEditorClient::documentFragmentFromAttributedString): Changed parameter to
  40596. be a Vector of RefPtr.
  40597. * page/EditorClient.h:
  40598. * platform/mac/PasteboardMac.mm:
  40599. (WebCore::Pasteboard::documentFragmentWithRtf): Stylistic changes.
  40600. 2010-09-20 Yong Li <yoli@rim.com>
  40601. Reviewed by Alexey Proskuryakov.
  40602. https://bugs.webkit.org/show_bug.cgi?id=39966
  40603. Make compareBorders() a consistent compare function which can beused by qsort().
  40604. New test case added: LayoutTests/tables/sort-collapsed-border-styles.html
  40605. * rendering/RenderTableCell.cpp:
  40606. (WebCore::compareBorders):
  40607. (WebCore::chooseBorder):
  40608. (WebCore::RenderTableCell::collapsedLeftBorder):
  40609. (WebCore::RenderTableCell::collapsedRightBorder):
  40610. (WebCore::RenderTableCell::collapsedTopBorder):
  40611. (WebCore::RenderTableCell::collapsedBottomBorder):
  40612. (WebCore::compareBorderStylesForQSort):
  40613. 2010-09-20 Patrick Gansterer <paroga@paroga.com>
  40614. Reviewed by Adam Roben.
  40615. [WINCE] Buildfix for PluginViewWin.cpp
  40616. https://bugs.webkit.org/show_bug.cgi?id=46033
  40617. * plugins/win/PluginViewWin.cpp:
  40618. (WebCore::PluginView::paintIntoTransformedContext):
  40619. (WebCore::PluginView::snapshot):
  40620. 2010-09-18 David Hyatt <hyatt@apple.com>
  40621. Reviewed by Sam Weinig.
  40622. https://bugs.webkit.org/show_bug.cgi?id=46030, aintitcool.com doesn't paginate correctly when printed.
  40623. This happens because the site always has a document width that will exceed the page width.
  40624. We incorrectly apply a double scale instead of clipping after the first scale still doesn't fit.
  40625. The fix for the issue is to cap the right layout overflow to the page width and to just clip out
  40626. any additional excess. This is the code in FrameView.cpp.
  40627. This patch also cleans up table cell invalidation to reduce the # of relayouts. This change is not
  40628. a correctness fix. It's just performance.
  40629. I'm not sure how to write a test for this, since the double scale is an artifact of how WebKit mac calls
  40630. back in when really printing.
  40631. * page/FrameView.cpp:
  40632. (WebCore::FrameView::forceLayoutForPagination):
  40633. * rendering/RenderBlock.cpp:
  40634. (WebCore::RenderBlock::layoutBlockChild):
  40635. (WebCore::RenderBlock::layoutPositionedObjects):
  40636. (WebCore::RenderBlock::positionNewFloats):
  40637. * rendering/RenderBlock.h:
  40638. (WebCore::RenderBlock::markForPaginationRelayout):
  40639. * rendering/RenderFlexibleBox.cpp:
  40640. (WebCore::RenderFlexibleBox::layoutHorizontalBox):
  40641. (WebCore::RenderFlexibleBox::layoutVerticalBox):
  40642. * rendering/RenderTableSection.cpp:
  40643. (WebCore::RenderTableSection::layoutRows):
  40644. 2010-09-20 Ilya Tikhonovsky <loislo@chromium.org>
  40645. Reviewed by Pavel Feldman.
  40646. Web Inspector: merge Inspector client runtime events into the serialized inspector state object.
  40647. Drive-by rename getBackendSettings -> getInspectorState to better reflect the nature of the data.
  40648. https://bugs.webkit.org/show_bug.cgi?id=45974
  40649. * inspector/Inspector.idl:
  40650. * inspector/InspectorClient.h:
  40651. (WebCore::InspectorClient::updateInspectorStateCookie):
  40652. * inspector/InspectorController.cpp:
  40653. (WebCore::InspectorController::saveApplicationSettings):
  40654. (WebCore::InspectorController::getInspectorState):
  40655. (WebCore::InspectorController::updateInspectorStateCookie):
  40656. (WebCore::InspectorController::restoreInspectorStateFromCookie):
  40657. (WebCore::InspectorController::getSettings):
  40658. (WebCore::InspectorController::setMonitoringXHREnabled):
  40659. (WebCore::InspectorController::restoreDebugger):
  40660. (WebCore::InspectorController::restoreProfiler):
  40661. (WebCore::InspectorController::setResourceTrackingEnabled):
  40662. (WebCore::InspectorController::ensureSettingsLoaded):
  40663. (WebCore::InspectorController::startTimelineProfiler):
  40664. (WebCore::InspectorController::stopTimelineProfiler):
  40665. (WebCore::InspectorController::enableProfiler):
  40666. (WebCore::InspectorController::disableProfiler):
  40667. (WebCore::InspectorController::enableDebuggerFromFrontend):
  40668. (WebCore::InspectorController::disableDebugger):
  40669. * inspector/InspectorController.h:
  40670. * inspector/front-end/ConsoleView.js:
  40671. (WebInspector.ConsoleView.prototype._handleContextMenuEvent):
  40672. * inspector/front-end/ResourcesPanel.js:
  40673. (WebInspector.ResourcesPanel.prototype._toggleResourceTracking):
  40674. * inspector/front-end/Settings.js:
  40675. (WebInspector.Settings.initialize):
  40676. * inspector/front-end/inspector.js:
  40677. (WebInspector.doLoadedDone.populateInspectorState):
  40678. (WebInspector.doLoadedDone):
  40679. 2010-09-20 Dirk Schulze <krit@webkit.org>
  40680. Reviewed by Nikolas Zimmermann.
  40681. SVG Filter cleanup
  40682. https://bugs.webkit.org/show_bug.cgi?id=45612
  40683. All effect inputs are stored in a Vector in FilterEffect instead of passing them via constructors to every effect type.
  40684. This simplifies the primitive subregion logic and centralizes it in determineFilterPrimitiveSubregion.
  40685. Just SourceGraphic, SourceAlpha and FETile still calculate filter primitive subregions on
  40686. their own. Working on it in a followup patch.
  40687. The subregions code is SVG specific and moving this calculation to FilterEffect is an
  40688. intermediate step before moving it to RenderSVGResourceFilterPrimitive in a following patch.
  40689. The new FilterEffectVector will also make it possible to add code to determine the
  40690. smallest used region of an effect and will help save memory and resources in the future.
  40691. subRegion got renamed to filterPrimitiveSubregion to match the name scheme. scaledSubRegion got
  40692. renamed to repaintRectInLocalCoordinates since this is its proper meaning.
  40693. Removed unnecessary member variables and functions from FilterEffect.
  40694. No new tests added since the functionality didn't change.
  40695. * platform/graphics/cairo/GraphicsContextCairo.cpp: scaledSubRegion was renamed to repaintRectInLocalCoordinates.
  40696. (WebCore::GraphicsContext::createShadowMask):
  40697. * platform/graphics/filters/FEBlend.cpp: Removed Filter effect inputs from constructor.
  40698. (WebCore::FEBlend::FEBlend):
  40699. (WebCore::FEBlend::create):
  40700. (WebCore::FEBlend::apply): Call inputFilterEffects to get input filter primitives.
  40701. (WebCore::FEBlend::externalRepresentation): Call inputFilterEffects to get input filter primitives.
  40702. * platform/graphics/filters/FEBlend.h:
  40703. * platform/graphics/filters/FEColorMatrix.cpp: Ditto.
  40704. (WebCore::FEColorMatrix::FEColorMatrix):
  40705. (WebCore::FEColorMatrix::create):
  40706. (WebCore::FEColorMatrix::apply):
  40707. (WebCore::FEColorMatrix::externalRepresentation):
  40708. * platform/graphics/filters/FEColorMatrix.h:
  40709. * platform/graphics/filters/FEComponentTransfer.cpp: Ditto.
  40710. (WebCore::FEComponentTransfer::FEComponentTransfer):
  40711. (WebCore::FEComponentTransfer::create):
  40712. (WebCore::FEComponentTransfer::apply):
  40713. (WebCore::FEComponentTransfer::externalRepresentation):
  40714. * platform/graphics/filters/FEComponentTransfer.h:
  40715. * platform/graphics/filters/FEComposite.cpp: Ditto.
  40716. (WebCore::FEComposite::FEComposite):
  40717. (WebCore::FEComposite::create):
  40718. (WebCore::FEComposite::apply):
  40719. (WebCore::FEComposite::externalRepresentation):
  40720. * platform/graphics/filters/FEComposite.h:
  40721. * platform/graphics/filters/FEGaussianBlur.cpp: Ditto.
  40722. (WebCore::FEGaussianBlur::FEGaussianBlur):
  40723. (WebCore::FEGaussianBlur::create):
  40724. (WebCore::FEGaussianBlur::apply):
  40725. (WebCore::FEGaussianBlur::externalRepresentation):
  40726. * platform/graphics/filters/FEGaussianBlur.h:
  40727. * platform/graphics/filters/Filter.h:
  40728. (WebCore::Filter::determineFilterPrimitiveSubregion): Renamed from calculateEffectSubRegion to match name scheme.
  40729. * platform/graphics/filters/FilterEffect.cpp:
  40730. (WebCore::FilterEffect::FilterEffect):
  40731. (WebCore::FilterEffect::determineFilterPrimitiveSubregion): The main place for subregion calculation.
  40732. (WebCore::FilterEffect::calculateDrawingIntRect): Takes repaintRectInLocalCoordinates now.
  40733. (WebCore::FilterEffect::calculateDrawingRect): ditto.
  40734. (WebCore::FilterEffect::getEffectContext): Check if ImageBuffer was created.
  40735. * platform/graphics/filters/FilterEffect.h: Changed names to match name scheme. Removed unnecessary member variables and functions.
  40736. Seperate SVG specific member variables and functions. Will get removed in followup patches.
  40737. (WebCore::FilterEffect::resultImage):
  40738. (WebCore::FilterEffect::setEffectBuffer):
  40739. (WebCore::FilterEffect::inputEffect):
  40740. (WebCore::FilterEffect::inputEffects):
  40741. (WebCore::FilterEffect::numberOfinputEffects):
  40742. (WebCore::FilterEffect::isAlphaImage):
  40743. (WebCore::FilterEffect::setIsAlphaImage):
  40744. (WebCore::FilterEffect::repaintRectInLocalCoordinates):
  40745. (WebCore::FilterEffect::setRepaintRectInLocalCoordinates):
  40746. (WebCore::FilterEffect::isSourceInput):
  40747. (WebCore::FilterEffect::hasX):
  40748. (WebCore::FilterEffect::setHasX):
  40749. (WebCore::FilterEffect::hasY):
  40750. (WebCore::FilterEffect::setHasY):
  40751. (WebCore::FilterEffect::hasWidth):
  40752. (WebCore::FilterEffect::setHasWidth):
  40753. (WebCore::FilterEffect::hasHeight):
  40754. (WebCore::FilterEffect::setHasHeight):
  40755. (WebCore::FilterEffect::filterPrimitiveSubregion):
  40756. (WebCore::FilterEffect::setFilterPrimitiveSubregion):
  40757. (WebCore::FilterEffect::effectBoundaries):
  40758. (WebCore::FilterEffect::setEffectBoundaries):
  40759. * platform/graphics/filters/SourceAlpha.cpp:
  40760. (WebCore::SourceAlpha::determineFilterPrimitiveSubregion): Renamed to match name scheme.
  40761. * platform/graphics/filters/SourceAlpha.h:
  40762. (WebCore::SourceAlpha::isSourceInput):
  40763. * platform/graphics/filters/SourceGraphic.cpp:
  40764. (WebCore::SourceGraphic::determineFilterPrimitiveSubregion): Ditto.
  40765. * platform/graphics/filters/SourceGraphic.h:
  40766. (WebCore::SourceGraphic::isSourceInput):
  40767. * rendering/RenderSVGResourceFilter.cpp: Adapt to renames in FilterEffect.
  40768. (WebCore::RenderSVGResourceFilter::applyResource):
  40769. (WebCore::RenderSVGResourceFilter::postApplyResource):
  40770. * svg/SVGFEBlendElement.cpp: Constructor of FEBlend doesn't take input effects. Adding them afterwards.
  40771. (WebCore::SVGFEBlendElement::build):
  40772. * svg/SVGFEColorMatrixElement.cpp: Ditto.
  40773. (WebCore::SVGFEColorMatrixElement::build):
  40774. * svg/SVGFEComponentTransferElement.cpp: Ditto.
  40775. (WebCore::SVGFEComponentTransferElement::build):
  40776. * svg/SVGFECompositeElement.cpp: Ditto.
  40777. (WebCore::SVGFECompositeElement::build):
  40778. * svg/SVGFEConvolveMatrixElement.cpp: Ditto.
  40779. (WebCore::SVGFEConvolveMatrixElement::build):
  40780. * svg/SVGFEDiffuseLightingElement.cpp: Ditto.
  40781. (WebCore::SVGFEDiffuseLightingElement::build):
  40782. * svg/SVGFEDisplacementMapElement.cpp: Ditto.
  40783. (WebCore::SVGFEDisplacementMapElement::build):
  40784. * svg/SVGFEGaussianBlurElement.cpp: Ditto.
  40785. (WebCore::SVGFEGaussianBlurElement::build):
  40786. * svg/SVGFEMergeElement.cpp: Ditto.
  40787. (WebCore::SVGFEMergeElement::build):
  40788. * svg/SVGFEMorphologyElement.cpp: Ditto.
  40789. (WebCore::SVGFEMorphologyElement::build):
  40790. * svg/SVGFEOffsetElement.cpp: Ditto.
  40791. (WebCore::SVGFEOffsetElement::build):
  40792. * svg/SVGFESpecularLightingElement.cpp: Ditto.
  40793. (WebCore::SVGFESpecularLightingElement::build):
  40794. * svg/SVGFETileElement.cpp: Ditto.
  40795. (WebCore::SVGFETileElement::build):
  40796. * svg/graphics/filters/SVGFEConvolveMatrix.cpp: Ditto.
  40797. (WebCore::FEConvolveMatrix::FEConvolveMatrix):
  40798. (WebCore::FEConvolveMatrix::create):
  40799. (WebCore::FEConvolveMatrix::apply):
  40800. (WebCore::FEConvolveMatrix::externalRepresentation):
  40801. * svg/graphics/filters/SVGFEConvolveMatrix.h:
  40802. * svg/graphics/filters/SVGFEDiffuseLighting.cpp: Ditto.
  40803. (WebCore::FEDiffuseLighting::FEDiffuseLighting):
  40804. (WebCore::FEDiffuseLighting::create):
  40805. (WebCore::FEDiffuseLighting::externalRepresentation):
  40806. * svg/graphics/filters/SVGFEDiffuseLighting.h:
  40807. * svg/graphics/filters/SVGFEDisplacementMap.cpp: Ditto.
  40808. (WebCore::FEDisplacementMap::FEDisplacementMap):
  40809. (WebCore::FEDisplacementMap::create):
  40810. (WebCore::FEDisplacementMap::apply):
  40811. (WebCore::FEDisplacementMap::externalRepresentation):
  40812. * svg/graphics/filters/SVGFEDisplacementMap.h:
  40813. * svg/graphics/filters/SVGFEFlood.cpp: Ditto.
  40814. (WebCore::FEFlood::apply):
  40815. * svg/graphics/filters/SVGFEImage.cpp: Ditto.
  40816. (WebCore::FEImage::apply):
  40817. * svg/graphics/filters/SVGFELighting.cpp: Ditto.
  40818. (WebCore::FELighting::FELighting):
  40819. (WebCore::FELighting::apply):
  40820. * svg/graphics/filters/SVGFELighting.h:
  40821. * svg/graphics/filters/SVGFEMerge.cpp: Ditto.
  40822. (WebCore::FEMerge::FEMerge):
  40823. (WebCore::FEMerge::create):
  40824. (WebCore::FEMerge::apply):
  40825. (WebCore::FEMerge::externalRepresentation):
  40826. * svg/graphics/filters/SVGFEMerge.h:
  40827. * svg/graphics/filters/SVGFEMorphology.cpp: Ditto.
  40828. (WebCore::FEMorphology::FEMorphology):
  40829. (WebCore::FEMorphology::create):
  40830. (WebCore::FEMorphology::apply):
  40831. (WebCore::FEMorphology::externalRepresentation):
  40832. * svg/graphics/filters/SVGFEMorphology.h:
  40833. * svg/graphics/filters/SVGFEOffset.cpp: Ditto.
  40834. (WebCore::FEOffset::FEOffset):
  40835. (WebCore::FEOffset::create):
  40836. (WebCore::FEOffset::apply):
  40837. (WebCore::FEOffset::externalRepresentation):
  40838. * svg/graphics/filters/SVGFEOffset.h:
  40839. * svg/graphics/filters/SVGFESpecularLighting.cpp: Ditto.
  40840. (WebCore::FESpecularLighting::FESpecularLighting):
  40841. (WebCore::FESpecularLighting::create):
  40842. (WebCore::FESpecularLighting::externalRepresentation):
  40843. * svg/graphics/filters/SVGFESpecularLighting.h:
  40844. * svg/graphics/filters/SVGFETile.cpp: Ditto.
  40845. (WebCore::FETile::FETile):
  40846. (WebCore::FETile::create):
  40847. (WebCore::FETile::determineFilterPrimitiveSubregion): Renamed to match name scheme.
  40848. (WebCore::FETile::apply):
  40849. (WebCore::FETile::externalRepresentation):
  40850. * svg/graphics/filters/SVGFETile.h:
  40851. * svg/graphics/filters/SVGFilter.cpp: Renamed itemBox to targetBoundingBox to match name scheme.
  40852. (WebCore::SVGFilter::SVGFilter):
  40853. (WebCore::SVGFilter::determineFilterPrimitiveSubregion): Renamed to match name scheme.
  40854. (WebCore::SVGFilter::create):
  40855. * svg/graphics/filters/SVGFilter.h:
  40856. (WebCore::SVGFilter::sourceImageRect):
  40857. 2010-09-20 Pavel Podivilov <podivilov@chromium.org>
  40858. Reviewed by Pavel Feldman.
  40859. Web Inspector: highlight DOM node when hover on link element or DOM breakpoint
  40860. https://bugs.webkit.org/show_bug.cgi?id=45897
  40861. * inspector/front-end/BreakpointsSidebarPane.js:
  40862. (WebInspector.BreakpointItem):
  40863. (WebInspector.JSBreakpointItem):
  40864. (WebInspector.DOMBreakpointItem):
  40865. (WebInspector.DOMBreakpointItem.prototype.compareTo):
  40866. (WebInspector.DOMBreakpointItem.prototype._breakpointClicked):
  40867. * inspector/front-end/ElementsPanel.js:
  40868. (WebInspector.ElementsPanel.prototype.hide):
  40869. (WebInspector.ElementsPanel.prototype.reset):
  40870. (WebInspector.ElementsPanel.prototype.setDocument.selectNode):
  40871. (WebInspector.ElementsPanel.prototype._mouseMovedInCrumbs):
  40872. (WebInspector.ElementsPanel.prototype._mouseMovedOutOfCrumbs):
  40873. (WebInspector.ElementsPanel.prototype.linkifyNodeReference):
  40874. * inspector/front-end/ElementsTreeOutline.js:
  40875. (WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode):
  40876. (WebInspector.ElementsTreeOutline.prototype._onmousemove):
  40877. (WebInspector.ElementsTreeOutline.prototype._onmouseout):
  40878. * inspector/front-end/inspector.js:
  40879. (WebInspector.highlightDOMNode):
  40880. (WebInspector.highlightDOMNodeForTwoSeconds):
  40881. (WebInspector.wireElementWithDOMNode):
  40882. (WebInspector._updateFocusedNode):
  40883. (WebInspector.reset):
  40884. (WebInspector.updateFocusedNode):
  40885. 2010-09-19 Sheriff Bot <webkit.review.bot@gmail.com>
  40886. Unreviewed, rolling out r67749.
  40887. http://trac.webkit.org/changeset/67749
  40888. https://bugs.webkit.org/show_bug.cgi?id=46068
  40889. breaking ToT chromium canary build (Requested by shans on
  40890. #webkit).
  40891. * bindings/v8/V8DOMWindowShell.cpp:
  40892. (WebCore::V8DOMWindowShell::createNewContext):
  40893. * bindings/v8/V8Proxy.cpp:
  40894. (WebCore::V8Proxy::registeredExtensionWithV8):
  40895. (WebCore::V8Proxy::registerExtension):
  40896. * bindings/v8/V8Proxy.h:
  40897. * loader/EmptyClients.h:
  40898. * loader/FrameLoaderClient.h:
  40899. 2010-09-19 Gavin Barraclough <barraclough@apple.com>
  40900. Reviewed by Oliver Hunt.
  40901. Bug 46065 - Unify implementation of ToInt32 and ToUInt32, don't use fmod.
  40902. These methods implement the same conversion (see discussion in the notes
  40903. of sections of 9.5 and 9.6 of the spec), only differing in how the result
  40904. is interpretted.
  40905. Removing JSValue::toInt32 (since this has weird, non-spec function).
  40906. A couple of places in the binding are using this method, so adding
  40907. finiteInt32Value to the bindings to maintain current behaviour.
  40908. Test: fast/js/toInt32UInt32.html
  40909. * bindings/js/JSDOMBinding.h:
  40910. (WebCore::finiteInt32Value):
  40911. * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
  40912. (WebCore::JSHTMLOptionsCollection::add):
  40913. * bindings/js/JSSQLResultSetRowListCustom.cpp:
  40914. (WebCore::JSSQLResultSetRowList::item):
  40915. * bindings/js/JSSVGPODListCustom.h:
  40916. (WebCore::JSSVGPODListCustom::getItem):
  40917. (WebCore::JSSVGPODListCustom::insertItemBefore):
  40918. (WebCore::JSSVGPODListCustom::replaceItem):
  40919. (WebCore::JSSVGPODListCustom::removeItem):
  40920. * bindings/js/JSSVGPathSegListCustom.cpp:
  40921. (WebCore::JSSVGPathSegList::getItem):
  40922. (WebCore::JSSVGPathSegList::insertItemBefore):
  40923. (WebCore::JSSVGPathSegList::replaceItem):
  40924. (WebCore::JSSVGPathSegList::removeItem):
  40925. 2010-09-19 Andreas Kling <andreas.kling@nokia.com>
  40926. Reviewed by Kenneth Rohde Christiansen.
  40927. [Qt] clipBoundingRect() should return rect relevant to current layer
  40928. https://bugs.webkit.org/show_bug.cgi?id=46059
  40929. r65791 inadvertently changed clipBoundingRect() to always use the GC painter
  40930. without checking the TransparencyLayer stack first.
  40931. * platform/graphics/qt/GraphicsContextQt.cpp:
  40932. (WebCore::GraphicsContextPlatformPrivate::p):
  40933. (WebCore::GraphicsContextPlatformPrivate::clipBoundingRect):
  40934. 2010-09-19 Sam Weinig <sam@webkit.org>
  40935. Reviewed by Anders Carlsson.
  40936. Replace WKBundleRangeRef with WKBundleRangeHandleRef.
  40937. https://bugs.webkit.org/show_bug.cgi?id=46054
  40938. * WebCore.exp.in:
  40939. * WebCore.xcodeproj/project.pbxproj:
  40940. 2010-09-19 Patrick Gansterer <paroga@paroga.com>
  40941. Unreviewed.
  40942. [WINCE] Buildfix for Gradient after r67801.
  40943. * platform/graphics/Gradient.h:
  40944. * platform/graphics/wince/GradientWinCE.cpp:
  40945. (WebCore::Gradient::getStops):
  40946. 2010-09-19 Kent Tamura <tkent@chromium.org>
  40947. Reviewed by Dimitri Glazkov.
  40948. [Chromium] Add is<input type>() functions to WebInputElement
  40949. https://bugs.webkit.org/show_bug.cgi?id=46035
  40950. * html/HTMLInputElement.h:
  40951. (WebCore::HTMLInputElement::isText): Added. It is used by WebKit/chromium.
  40952. 2010-09-18 Andreas Kling <andreas.kling@nokia.com>
  40953. Reviewed by Antonio Gomes.
  40954. [Qt] Path: Remove unused member variable
  40955. https://bugs.webkit.org/show_bug.cgi?id=46048
  40956. Path::m_lastMoveToIndex is not used for anything, so remove it.
  40957. * platform/graphics/Path.h:
  40958. * platform/graphics/qt/PathQt.cpp:
  40959. (WebCore::Path::Path):
  40960. (WebCore::Path::operator=):
  40961. (WebCore::Path::moveTo):
  40962. 2010-09-18 Patrick Gansterer <paroga@paroga.com>
  40963. Reviewed by Darin Adler.
  40964. Use AtomicString insted of String in XMLDocumentParser
  40965. https://bugs.webkit.org/show_bug.cgi?id=45990
  40966. Create AtomicString as early as possible.
  40967. This can avoid unnecessary memcpy of String content.
  40968. * dom/XMLDocumentParser.h:
  40969. * dom/XMLDocumentParserLibxml2.cpp:
  40970. (WebCore::toAtomicString):
  40971. (WebCore::handleElementNamespaces):
  40972. (WebCore::handleElementAttributes):
  40973. (WebCore::XMLDocumentParser::startElementNs):
  40974. 2010-09-18 Erik Arvidsson <arv@chromium.org>
  40975. Reviewed by Nate Chapin.
  40976. [Chromium] fast/dom/dataset-gc.html is failing
  40977. https://bugs.webkit.org/show_bug.cgi?id=45426
  40978. * bindings/scripts/CodeGeneratorV8.pm:
  40979. * bindings/v8/custom/V8DOMStringMapCustom.cpp:
  40980. (WebCore::toV8):
  40981. * dom/DOMStringMap.h:
  40982. * dom/DatasetDOMStringMap.h:
  40983. (WebCore::DatasetDOMStringMap::element):
  40984. 2010-09-18 Andreas Kling <andreas.kling@nokia.com>
  40985. Reviewed by Oliver Hunt.
  40986. Gradient: Fast-path for the ideal case in sortStopsIfNecessary()
  40987. https://bugs.webkit.org/show_bug.cgi?id=46045
  40988. Avoid calling std::stable_sort for 2-stop gradients that are already in order.
  40989. * platform/graphics/Gradient.cpp:
  40990. (WebCore::Gradient::sortStopsIfNecessary):
  40991. 2010-09-18 Kwang Yul Seo <skyul@company100.net>
  40992. Reviewed by Andreas Kling.
  40993. [BREWMP] Fix a typo in key code name
  40994. https://bugs.webkit.org/show_bug.cgi?id=46003
  40995. AVK_CLR is the right Brew MP key code name for VK_BACK.
  40996. * platform/brew/PlatformKeyboardEventBrew.cpp:
  40997. (WebCore::windowsKeyCodeForKeyEvent):
  40998. 2010-09-18 Andreas Kling <andreas.kling@nokia.com>
  40999. Reviewed by Oliver Hunt.
  41000. Gradient: Pre-reserve space for 2 color stops
  41001. https://bugs.webkit.org/show_bug.cgi?id=46044
  41002. Most gradients have only 2 color stops, pre-reserve space for these in m_stops
  41003. to avoid growing the vector dynamically in the common case.
  41004. * platform/graphics/Gradient.h:
  41005. 2010-09-18 Dimitri Glazkov <dglazkov@chromium.org>
  41006. Unreviewed, rolling out r67792.
  41007. http://trac.webkit.org/changeset/67792
  41008. https://bugs.webkit.org/show_bug.cgi?id=45976
  41009. Broke over a hundred SVG tests.
  41010. * platform/graphics/GraphicsContext.cpp:
  41011. (WebCore::GraphicsContext::drawImage):
  41012. (WebCore::GraphicsContext::drawImageBuffer):
  41013. * platform/graphics/GraphicsContext.h:
  41014. 2010-09-18 Mihai Parparita <mihaip@chromium.org>
  41015. Reviewed by Simon Fraser.
  41016. webkitAnimationEnd event doesn't fire when skipping over final iteration
  41017. https://bugs.webkit.org/show_bug.cgi?id=46010
  41018. It's possible for AnimationBase::fireAnimationEventsIfNeeded to decide
  41019. that the animation is ended while we're in the looping state, if the
  41020. animation timer never fires during an iteration. That then fails the
  41021. assert in AnimationBase::updateStateMachine (we don't expect
  41022. AnimationStateInputEndTimerFired while in the looping state). Jump the
  41023. state to AnimationStateEnding, which is more accurate.
  41024. Test: animations/animation-end-event-short-iterations.html
  41025. * page/animation/AnimationBase.cpp:
  41026. (WebCore::AnimationBase::fireAnimationEventsIfNeeded):
  41027. 2010-09-18 Kwang Yul Seo <skyul@company100.net>
  41028. Reviewed by Andreas Kling.
  41029. [BREWMP] Wrong key code type in keyIdentifierForBrewKeyCode
  41030. https://bugs.webkit.org/show_bug.cgi?id=46005
  41031. The type of key code in Brew MP is uint16. Take uint16 instead of int16 in keyIdentifierForBrewKeyCode.
  41032. * platform/brew/PlatformKeyboardEventBrew.cpp:
  41033. (WebCore::keyIdentifierForBrewKeyCode):
  41034. 2010-09-18 Matthew Delaney <mdelaney@apple.com>
  41035. Reviewed by Oliver Hunt.
  41036. Canvas drawImage with source or destination widths/heights of -1 renders incorrectly.
  41037. https://bugs.webkit.org/show_bug.cgi?id=45976
  41038. Specifying a -1 width or height for either the source or destination rectangle in drawImage
  41039. get improperly drawn with -1 replaced as the corresponding image width or height. This was because
  41040. the value -1 was being passed around to signal non-specified widths and heights and thus was
  41041. interpreted lower down in the drawImage implementation which disallowed any calls that actually
  41042. wanted to use -1 as the widths or heights. Fixed this by moving the default logic up and not using
  41043. -1 in-band signaling to denote default behavior.
  41044. Tests: canvas/philip/tests/2d.drawImage.negativeOneDest.html
  41045. canvas/philip/tests/2d.drawImage.negativeOneSource.html
  41046. * platform/graphics/GraphicsContext.cpp: Removed -1 in-band signals and replaced cascased calls to have
  41047. the desired replaces for unspecified widths and heights earlier on.
  41048. * platform/graphics/GraphicsContext.h: Removed faulty default value.
  41049. 2010-09-18 Ademar de Souza Reis Jr <ademar.reis@openbossa.org>
  41050. Reviewed by Kenneth Rohde Christiansen.
  41051. Enable Platform Strategies on Qt
  41052. [Qt] Turn on PLATFORM_STRATEGIES
  41053. https://bugs.webkit.org/show_bug.cgi?id=45831
  41054. * WebCore.pro: Adding/removing implementation files
  41055. * platform/qt/Language.cpp: Added, WebCore::defaultLanguage() was
  41056. moved from platform/qt/Localizations.cpp
  41057. (WebCore::defaultLanguage): Moved from Localizations.cpp
  41058. * platform/qt/Localizations.cpp: Removed (code is now inside
  41059. WebCoreSupport/WebPlatformStrategies.cpp)
  41060. * plugins/qt/PluginDataQt.cpp: Removed (idem)
  41061. 2010-09-18 Patrick Gansterer <paroga@paroga.com>
  41062. Reviewed by Darin Adler.
  41063. Rename Wince files to WinCE
  41064. https://bugs.webkit.org/show_bug.cgi?id=37287
  41065. * loader/icon/wince/IconDatabaseWinCE.cpp: Copied from WebCore/loader/icon/wince/IconDatabaseWince.cpp.
  41066. * loader/icon/wince/IconDatabaseWince.cpp: Removed.
  41067. * page/wince/FrameWinCE.cpp: Copied from WebCore/page/wince/FrameWince.cpp.
  41068. * page/wince/FrameWince.cpp: Removed.
  41069. * platform/graphics/MediaPlayer.cpp:
  41070. * platform/graphics/wince/ColorWinCE.cpp: Copied from WebCore/platform/graphics/wince/ColorWince.cpp.
  41071. * platform/graphics/wince/ColorWince.cpp: Removed.
  41072. * platform/graphics/wince/FontCacheWinCE.cpp: Copied from WebCore/platform/graphics/wince/FontCacheWince.cpp.
  41073. * platform/graphics/wince/FontCacheWince.cpp: Removed.
  41074. * platform/graphics/wince/FontWinCE.cpp: Copied from WebCore/platform/graphics/wince/FontWince.cpp.
  41075. * platform/graphics/wince/FontWince.cpp: Removed.
  41076. * platform/graphics/wince/GlyphPageTreeNodeWinCE.cpp: Copied from WebCore/platform/graphics/wince/GlyphPageTreeNodeWince.cpp.
  41077. * platform/graphics/wince/GlyphPageTreeNodeWince.cpp: Removed.
  41078. * platform/graphics/wince/GradientWinCE.cpp: Copied from WebCore/platform/graphics/wince/GradientWince.cpp.
  41079. * platform/graphics/wince/GradientWince.cpp: Removed.
  41080. * platform/graphics/wince/GraphicsContextWinCE.cpp: Copied from WebCore/platform/graphics/wince/GraphicsContextWince.cpp.
  41081. * platform/graphics/wince/GraphicsContextWince.cpp: Removed.
  41082. * platform/graphics/wince/ImageBufferWinCE.cpp: Copied from WebCore/platform/graphics/wince/ImageBufferWince.cpp.
  41083. * platform/graphics/wince/ImageBufferWince.cpp: Removed.
  41084. * platform/graphics/wince/MediaPlayerPrivateWinCE.h: Copied from WebCore/platform/graphics/wince/MediaPlayerPrivateWince.h.
  41085. * platform/graphics/wince/MediaPlayerPrivateWince.h: Removed.
  41086. * platform/graphics/wince/PathWinCE.cpp: Copied from WebCore/platform/graphics/wince/PathWince.cpp.
  41087. * platform/graphics/wince/PathWince.cpp: Removed.
  41088. * platform/graphics/wince/PlatformPathWinCE.cpp: Copied from WebCore/platform/graphics/wince/PlatformPathWince.cpp.
  41089. * platform/graphics/wince/PlatformPathWinCE.h: Copied from WebCore/platform/graphics/wince/PlatformPathWince.h.
  41090. * platform/graphics/wince/PlatformPathWince.cpp: Removed.
  41091. * platform/graphics/wince/PlatformPathWince.h: Removed.
  41092. * platform/graphics/wince/SimpleFontDataWinCE.cpp: Copied from WebCore/platform/graphics/wince/SimpleFontDataWince.cpp.
  41093. * platform/graphics/wince/SimpleFontDataWince.cpp: Removed.
  41094. * platform/graphics/wince/WinCEGraphicsExtras.h: Copied from WebCore/platform/graphics/wince/WinceGraphicsExtras.h.
  41095. * platform/graphics/wince/WinceGraphicsExtras.h: Removed.
  41096. * platform/text/wince/TextBoundariesWinCE.cpp: Copied from WebCore/platform/text/wince/TextBoundariesWince.cpp.
  41097. * platform/text/wince/TextBoundariesWince.cpp: Removed.
  41098. * platform/text/wince/TextBreakIteratorWinCE.cpp: Copied from WebCore/platform/text/wince/TextBreakIteratorWince.cpp.
  41099. * platform/text/wince/TextBreakIteratorWince.cpp: Removed.
  41100. * platform/wince/CursorWinCE.cpp: Copied from WebCore/platform/wince/CursorWince.cpp.
  41101. * platform/wince/CursorWince.cpp: Removed.
  41102. * platform/wince/DragDataWinCE.cpp: Copied from WebCore/platform/wince/DragDataWince.cpp.
  41103. * platform/wince/DragDataWince.cpp: Removed.
  41104. * platform/wince/DragImageWinCE.cpp: Copied from WebCore/platform/wince/DragImageWince.cpp.
  41105. * platform/wince/DragImageWince.cpp: Removed.
  41106. * platform/wince/EditorWinCE.cpp: Copied from WebCore/platform/wince/EditorWince.cpp.
  41107. (WebCore::Editor::newGeneralClipboard):
  41108. * platform/wince/EditorWince.cpp: Removed.
  41109. * platform/wince/FileChooserWinCE.cpp: Copied from WebCore/platform/wince/FileChooserWince.cpp.
  41110. * platform/wince/FileChooserWince.cpp: Removed.
  41111. * platform/wince/FileSystemWinCE.cpp: Copied from WebCore/platform/wince/FileSystemWince.cpp.
  41112. * platform/wince/FileSystemWince.cpp: Removed.
  41113. * platform/wince/KURLWinCE.cpp: Copied from WebCore/platform/wince/KURLWince.cpp.
  41114. * platform/wince/KURLWince.cpp: Removed.
  41115. * platform/wince/KeygenWinCE.cpp: Copied from WebCore/platform/wince/KeygenWince.cpp.
  41116. * platform/wince/KeygenWince.cpp: Removed.
  41117. * platform/wince/MIMETypeRegistryWinCE.cpp: Copied from WebCore/platform/wince/MIMETypeRegistryWince.cpp.
  41118. * platform/wince/MIMETypeRegistryWince.cpp: Removed.
  41119. * platform/wince/PasteboardWinCE.cpp: Copied from WebCore/platform/wince/PasteboardWince.cpp.
  41120. * platform/wince/PasteboardWince.cpp: Removed.
  41121. * platform/wince/SearchPopupMenuWinCE.cpp: Copied from WebCore/platform/wince/SearchPopupMenuWince.cpp.
  41122. * platform/wince/SearchPopupMenuWince.cpp: Removed.
  41123. * platform/wince/SharedTimerWinCE.cpp: Copied from WebCore/platform/wince/SharedTimerWince.cpp.
  41124. * platform/wince/SharedTimerWince.cpp: Removed.
  41125. * rendering/RenderThemeWinCE.cpp: Copied from WebCore/rendering/RenderThemeWince.cpp.
  41126. (WebCore::RenderThemeWinCE::create):
  41127. (WebCore::RenderTheme::themeForPage):
  41128. (WebCore::RenderThemeWinCE::RenderThemeWinCE):
  41129. (WebCore::RenderThemeWinCE::~RenderThemeWinCE):
  41130. (WebCore::RenderThemeWinCE::platformActiveSelectionBackgroundColor):
  41131. (WebCore::RenderThemeWinCE::platformInactiveSelectionBackgroundColor):
  41132. (WebCore::RenderThemeWinCE::platformActiveSelectionForegroundColor):
  41133. (WebCore::RenderThemeWinCE::platformInactiveSelectionForegroundColor):
  41134. (WebCore::RenderThemeWinCE::supportsFocus):
  41135. (WebCore::RenderThemeWinCE::supportsFocusRing):
  41136. (WebCore::RenderThemeWinCE::determineClassicState):
  41137. (WebCore::RenderThemeWinCE::getThemeData):
  41138. (WebCore::RenderThemeWinCE::paintButton):
  41139. (WebCore::RenderThemeWinCE::setCheckboxSize):
  41140. (WebCore::RenderThemeWinCE::paintTextField):
  41141. (WebCore::RenderThemeWinCE::adjustMenuListStyle):
  41142. (WebCore::RenderThemeWinCE::paintMenuList):
  41143. (WebCore::RenderThemeWinCE::paintMenuListButton):
  41144. (WebCore::RenderThemeWinCE::systemFont):
  41145. (WebCore::RenderThemeWinCE::themeChanged):
  41146. (WebCore::RenderThemeWinCE::extraDefaultStyleSheet):
  41147. (WebCore::RenderThemeWinCE::extraQuirksStyleSheet):
  41148. (WebCore::RenderThemeWinCE::supportsHover):
  41149. (WebCore::RenderThemeWinCE::systemColor):
  41150. (WebCore::RenderThemeWinCE::adjustSliderThumbSize):
  41151. (WebCore::RenderThemeWinCE::adjustButtonInnerStyle):
  41152. (WebCore::RenderThemeWinCE::adjustSearchFieldStyle):
  41153. (WebCore::RenderThemeWinCE::paintSearchField):
  41154. (WebCore::RenderThemeWinCE::paintSearchFieldCancelButton):
  41155. (WebCore::RenderThemeWinCE::adjustSearchFieldCancelButtonStyle):
  41156. (WebCore::RenderThemeWinCE::adjustSearchFieldDecorationStyle):
  41157. (WebCore::RenderThemeWinCE::adjustSearchFieldResultsDecorationStyle):
  41158. (WebCore::RenderThemeWinCE::paintSearchFieldResultsDecoration):
  41159. (WebCore::RenderThemeWinCE::adjustSearchFieldResultsButtonStyle):
  41160. (WebCore::RenderThemeWinCE::paintSearchFieldResultsButton):
  41161. (WebCore::RenderThemeWinCE::adjustMenuListButtonStyle):
  41162. (WebCore::RenderThemeWinCE::paintSliderTrack):
  41163. (WebCore::RenderThemeWinCE::paintSliderThumb):
  41164. (WebCore::RenderThemeWinCE::paintMediaFullscreenButton):
  41165. (WebCore::RenderThemeWinCE::paintMediaMuteButton):
  41166. (WebCore::RenderThemeWinCE::paintMediaPlayButton):
  41167. (WebCore::RenderThemeWinCE::paintMediaSeekBackButton):
  41168. (WebCore::RenderThemeWinCE::paintMediaSeekForwardButton):
  41169. (WebCore::RenderThemeWinCE::paintMediaSliderTrack):
  41170. (WebCore::RenderThemeWinCE::paintMediaSliderThumb):
  41171. * rendering/RenderThemeWinCE.h: Copied from WebCore/rendering/RenderThemeWince.h.
  41172. * rendering/RenderThemeWince.cpp: Removed.
  41173. * rendering/RenderThemeWince.h: Removed.
  41174. * storage/wince/DatabaseThreadWinCE.cpp: Copied from WebCore/storage/wince/DatabaseThreadWince.cpp.
  41175. * storage/wince/DatabaseThreadWinCE.h: Copied from WebCore/storage/wince/DatabaseThreadWince.h.
  41176. * storage/wince/DatabaseThreadWince.cpp: Removed.
  41177. * storage/wince/DatabaseThreadWince.h: Removed.
  41178. * storage/wince/LocalStorageThreadWinCE.cpp: Copied from WebCore/storage/wince/LocalStorageThreadWince.cpp.
  41179. * storage/wince/LocalStorageThreadWinCE.h: Copied from WebCore/storage/wince/LocalStorageThreadWince.h.
  41180. * storage/wince/LocalStorageThreadWince.cpp: Removed.
  41181. * storage/wince/LocalStorageThreadWince.h: Removed.
  41182. 2010-09-18 Patrick Gansterer <paroga@paroga.com>
  41183. Reviewed by Eric Seidel.
  41184. Move Plugin*None.cpp from CMakeLists.txt into CMakeListsEfl.txt
  41185. https://bugs.webkit.org/show_bug.cgi?id=45900
  41186. PluginDataNone.cpp and PluginViewNone.cpp are not used by all port.
  41187. Move them into plaform sepcific build system.
  41188. * CMakeLists.txt:
  41189. * CMakeListsEfl.txt:
  41190. 2010-09-18 Andreas Kling <andreas.kling@nokia.com>
  41191. Reviewed by Simon Hausmann.
  41192. [Qt] Don't copy clip path to TransparencyLayer
  41193. https://bugs.webkit.org/show_bug.cgi?id=45965
  41194. We don't need to copy the GC's clip path to the TransparencyLayer since it will
  41195. clip anyway when ending the layer.
  41196. * platform/graphics/qt/TransparencyLayer.h:
  41197. (WebCore::TransparencyLayer::TransparencyLayer):
  41198. 2010-09-18 Patrick Gansterer <paroga@paroga.com>
  41199. Unreviewed.
  41200. [WINCE] Buildfix for FrameWince.cpp after r51353, r67762 and r67771.
  41201. * page/wince/FrameWince.cpp:
  41202. (WebCore::computePageRectsForFrame):
  41203. (WebCore::imageFromSelection):
  41204. 2010-09-18 Kent Tamura <tkent@chromium.org>
  41205. Unreviewed, a trivial change.
  41206. Run sort-Xcode-project-file.
  41207. * WebCore.xcodeproj/project.pbxproj:
  41208. 2010-09-18 Dan Bernstein <mitz@apple.com>
  41209. Reviewed by Eric Seidel.
  41210. REGRESSION (r67762): Over 160 layout tests failing due to incorrect zoom factors in subframes
  41211. https://bugs.webkit.org/show_bug.cgi?id=46031
  41212. * page/Frame.cpp:
  41213. (WebCore::parentPageZoomFactor): Return the zoom factor of the parent frame.
  41214. (WebCore::parentTextZoomFactor): Ditto.
  41215. 2010-09-17 Sam Weinig <sam@webkit.org>
  41216. Reviewed by Jon Honeycutt.
  41217. Need a way to load data (as plain text) in a WKPage
  41218. <rdar://problem/8424239>
  41219. * WebCore.exp.in:
  41220. 2010-09-17 David Hyatt <hyatt@apple.com>
  41221. Reviewed by Sam Weinig.
  41222. https://bugs.webkit.org/show_bug.cgi?id=46027, image on gamespot.com paginates without bringing its enclosing border along.
  41223. Make sure that unsplittable objects like replaced elements propagate their pagination strut outward to the parent block
  41224. when appropriate. An image on a line did this, but a block-level image did not.
  41225. Added fast/multicol/image-inside-nested-blocks-with-border.html
  41226. * rendering/RenderBlock.cpp:
  41227. (WebCore::RenderBlock::layoutBlockChild):
  41228. 2010-09-17 Dimitri Glazkov <dglazkov@chromium.org>
  41229. Unreviewed, build fix.
  41230. Move calls from frameView->pageZoomFactor() to frame->pageZoomFactor().
  41231. * page/EventHandler.cpp:
  41232. (WebCore::EventHandler::handleTouchEvent): Removed a helper function,
  41233. added direct calls to frame->pageZoomFactor().
  41234. 2010-09-17 David Hyatt <hyatt@apple.com>
  41235. Reviewed by Simon Fraser.
  41236. https://bugs.webkit.org/show_bug.cgi?id=45993, convert printing to the new pagination model.
  41237. Make printing store the page height in the RenderView and push that into the layout state to
  41238. use the new pagination model. The old pagination model is retained because it is still used
  41239. for embedded WebViews.
  41240. * page/FrameView.cpp:
  41241. (WebCore::FrameView::reset):
  41242. (WebCore::FrameView::layout):
  41243. (WebCore::FrameView::forceLayout):
  41244. (WebCore::FrameView::forceLayoutForPagination):
  41245. (WebCore::FrameView::adjustPageHeight):
  41246. * page/FrameView.h:
  41247. * page/PrintContext.cpp:
  41248. (WebCore::PrintContext::computePageRectsWithPageSizeInternal):
  41249. * rendering/RenderBlock.cpp:
  41250. (WebCore::RenderBlock::paintChildren):
  41251. * rendering/RenderBox.cpp:
  41252. (WebCore::RenderBox::calcHeight):
  41253. * rendering/RenderImage.cpp:
  41254. (WebCore::RenderImage::paintReplaced):
  41255. * rendering/RenderLineBoxList.cpp:
  41256. (WebCore::RenderLineBoxList::paint):
  41257. * rendering/RenderVideo.cpp:
  41258. (WebCore::RenderVideo::paintReplaced):
  41259. * rendering/RenderView.cpp:
  41260. (WebCore::RenderView::RenderView):
  41261. (WebCore::RenderView::layout):
  41262. (WebCore::RenderView::paint):
  41263. (WebCore::RenderView::setBestTruncatedAt):
  41264. * rendering/RenderView.h:
  41265. (WebCore::RenderView::popLayoutState):
  41266. (WebCore::RenderView::pageHeight):
  41267. (WebCore::RenderView::setPageHeight):
  41268. (WebCore::RenderView::bestTruncatedAt):
  41269. (WebCore::RenderView::truncatedAt):
  41270. (WebCore::RenderView::setTruncatedAt):
  41271. (WebCore::RenderView::printRect):
  41272. (WebCore::RenderView::setPrintRect):
  41273. (WebCore::RenderView::pushLayoutState):
  41274. (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
  41275. (WebCore::LayoutStateMaintainer::push):
  41276. (WebCore::LayoutStateMaintainer::pop):
  41277. 2010-09-17 Dan Bernstein <mitz@apple.com>
  41278. Reviewed by Simon Fraser.
  41279. Canvas sizing ignores intrinsic size
  41280. https://bugs.webkit.org/show_bug.cgi?id=46024
  41281. Updated fast/replaced/table-percent-height.html
  41282. * rendering/RenderEmbeddedObject.cpp:
  41283. (WebCore::RenderEmbeddedObject::RenderEmbeddedObject): If this is used as a proxy
  41284. for <video>, behave like it has an intrinsic size (e.g. preserve aspect ratio when
  41285. width is auto and height is specified).
  41286. * rendering/RenderImage.cpp:
  41287. (WebCore::RenderImage::calcAspectRatioWidth): Changed to explicitly invoke
  41288. RenderBox::calcReplacedHeight(), now that RenderReplaced has its own implementation
  41289. which we don’t want.
  41290. (WebCore::RenderImage::calcAspectRatioHeight): Similarly with calcReplacedWidth().
  41291. * rendering/RenderImage.h:
  41292. * rendering/RenderReplaced.cpp:
  41293. (WebCore::RenderReplaced::RenderReplaced): Initialize m_hasIntrinsicSize.
  41294. (WebCore::lengthIsSpecified): Added this helper function, based on RenderImage’s
  41295. is{Width,Height}Specified().
  41296. (WebCore::RenderReplaced::calcReplacedWidth): Moved from RenderVideo all the way
  41297. up here so other replaced objects could use this logic.
  41298. (WebCore::RenderReplaced::calcReplacedHeight): Ditto.
  41299. (WebCore::RenderReplaced::calcAspectRatioWidth): Ditto.
  41300. (WebCore::RenderReplaced::calcAspectRatioHeight): Ditto.
  41301. (WebCore::RenderReplaced::calcPrefWidths): Replaced with the RenderImage version
  41302. of the logic.
  41303. (WebCore::RenderReplaced::setIntrinsicSize): Added an assertion.
  41304. * rendering/RenderReplaced.h:
  41305. (WebCore::RenderReplaced::minimumReplacedHeight): Promoted from private to protected
  41306. to allow RenderVideo to call through.
  41307. (WebCore::RenderReplaced::setHasIntrinsicSize): Added this setter.
  41308. * rendering/RenderVideo.cpp:
  41309. (WebCore::RenderVideo::updateIntrinsicSize): Factor zoom into the intrinsic size,
  41310. the way other RenderReplaced objects do.
  41311. (WebCore::RenderVideo::calcReplacedWidth): Invoke the RenderReplaced implementation,
  41312. which matches what used to be here, skipping over the RenderImage implementation.
  41313. (WebCore::RenderVideo::calcReplacedHeight): Ditto.
  41314. (WebCore::RenderVideo::minimumReplacedHeight): Ditto.
  41315. * rendering/RenderVideo.h:
  41316. 2010-09-17 Darin Adler <darin@apple.com>
  41317. Build fix for platforms that compile Touch.
  41318. * dom/Touch.cpp:
  41319. (WebCore::contentsX):
  41320. (WebCore::contentsY):
  41321. Get zoom factor from Frame rather than FrameView.
  41322. 2010-09-17 Darin Adler <darin@apple.com>
  41323. Reviewed by Sam Weinig.
  41324. REGRESSION (r60104): Zoom level is unexpectedly reset on page reload
  41325. https://bugs.webkit.org/show_bug.cgi?id=42863
  41326. Moved zoom level back from FrameView to Frame.
  41327. I had forgotten that FrameView's lifetime is much shorter than
  41328. Frame's, and until that is fixed it's best to leave this on Frame.
  41329. * WebCore.exp.in: Updated.
  41330. * css/CSSStyleSelector.cpp:
  41331. (WebCore::CSSStyleSelector::styleForDocument):
  41332. (WebCore::CSSStyleSelector::applyProperty):
  41333. (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize):
  41334. * dom/Document.cpp:
  41335. (WebCore::Document::nodesFromRect):
  41336. (WebCore::Document::elementFromPoint):
  41337. (WebCore::Document::caretRangeFromPoint):
  41338. * dom/MouseRelatedEvent.cpp:
  41339. (WebCore::contentsX):
  41340. (WebCore::contentsY):
  41341. (WebCore::pageZoomFactor):
  41342. * dom/Node.cpp:
  41343. (WebCore::Node::dispatchMouseEvent):
  41344. (WebCore::Node::dispatchWheelEvent):
  41345. * html/HTMLBodyElement.cpp:
  41346. (WebCore::adjustForZoom):
  41347. (WebCore::HTMLBodyElement::scrollLeft):
  41348. (WebCore::HTMLBodyElement::setScrollLeft):
  41349. (WebCore::HTMLBodyElement::scrollTop):
  41350. (WebCore::HTMLBodyElement::setScrollTop):
  41351. (WebCore::HTMLBodyElement::scrollHeight):
  41352. (WebCore::HTMLBodyElement::scrollWidth):
  41353. * html/ImageDocument.cpp:
  41354. (WebCore::pageZoomFactor):
  41355. (WebCore::ImageDocument::scale):
  41356. (WebCore::ImageDocument::imageFitsInWindow):
  41357. * page/DOMWindow.cpp:
  41358. (WebCore::DOMWindow::innerHeight):
  41359. (WebCore::DOMWindow::innerWidth):
  41360. (WebCore::DOMWindow::scrollX):
  41361. (WebCore::DOMWindow::scrollY):
  41362. (WebCore::DOMWindow::scrollTo):
  41363. * page/DragController.cpp:
  41364. (WebCore::elementUnderMouse):
  41365. * rendering/RenderView.cpp:
  41366. (WebCore::RenderView::zoomFactor):
  41367. * svg/SVGSVGElement.cpp:
  41368. (WebCore::SVGSVGElement::currentScale):
  41369. (WebCore::SVGSVGElement::setCurrentScale):
  41370. Get zoom factor from Frame rather than FrameView.
  41371. * page/Frame.cpp:
  41372. (WebCore::parentPageZoomFactor): Moved back here from FrameView.
  41373. (WebCore::parentTextZoomFactor): Ditto.
  41374. (WebCore::Frame::Frame): Ditto.
  41375. (WebCore::Frame::setPageZoomFactor): Ditto.
  41376. (WebCore::Frame::setTextZoomFactor): Ditto.
  41377. (WebCore::Frame::setPageAndTextZoomFactors): Ditto.
  41378. * page/Frame.h: Moved functions and data for zooming back here
  41379. from FrameView.
  41380. * page/FrameView.cpp:
  41381. (WebCore::FrameView::FrameView):
  41382. * page/FrameView.h:
  41383. Removed code from here.
  41384. 2010-09-17 Matthew Delaney <mdelaney@apple.com>
  41385. Reviewed by Simon Fraser.
  41386. Reduce minimum DOMTimer interval
  41387. https://bugs.webkit.org/show_bug.cgi?id=45362
  41388. Reduced the minimum allowed DOMTimer interval to 4ms. This has us matching Chrome,
  41389. which hasn't had any problem with 4ms in the past 2 years, as well as increasing our
  41390. performance on perf tests that have tight frequent loops such as canvas "animation"
  41391. performance tests.
  41392. No new tests added. Can't reliably instrument a test in javascript to verify that
  41393. the minimum clamped interval time is in fact 4ms.
  41394. * WebCore.exp.in:
  41395. * page/DOMTimer.cpp: Removed old comments.
  41396. * page/DOMTimer.h: Removed old comments.
  41397. * page/Settings.cpp: Exposted new method to set minimum DOMTimer interval.
  41398. * page/Settings.h:
  41399. 2010-09-17 Marc-Antoine Ruel <maruel@chromium.org>
  41400. Reviewed by Dimitri Glazkov.
  41401. [Chromium] Split webcore_platform off webcore_remaining
  41402. Further reduce webcore_remaining size by moving platform/ code in its
  41403. own static libary.
  41404. https://bugs.webkit.org/show_bug.cgi?id=45915
  41405. * WebCore.gyp/WebCore.gyp:
  41406. 2010-09-13 Matt Perry <mpcomplete@chromium.org>
  41407. Reviewed by Darin Fisher.
  41408. Have V8DOMWindowShell ask the embedder whether to run a V8 extension
  41409. in a particular script context.
  41410. https://bugs.webkit.org/show_bug.cgi?id=45721
  41411. * bindings/v8/V8DOMWindowShell.cpp:
  41412. (WebCore::V8DOMWindowShell::createNewContext):
  41413. * bindings/v8/V8Proxy.cpp:
  41414. (WebCore::V8Proxy::registeredExtensionWithV8):
  41415. (WebCore::V8Proxy::registerExtension):
  41416. * bindings/v8/V8Proxy.h:
  41417. * loader/EmptyClients.h:
  41418. (WebCore::EmptyFrameLoaderClient::allowScriptExtension):
  41419. * loader/FrameLoaderClient.h:
  41420. 2010-09-17 Anders Carlsson <andersca@apple.com>
  41421. Reviewed by Sam Weinig.
  41422. REGRESSION (r66711): Plug-in replacement text is never shown
  41423. https://bugs.webkit.org/show_bug.cgi?id=45997
  41424. <rdar://problem/8446766>
  41425. Don't return when the plug-in has replacement text.
  41426. * rendering/RenderEmbeddedObject.cpp:
  41427. (WebCore::RenderEmbeddedObject::paintReplaced):
  41428. 2010-09-17 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  41429. Unreviewed, build fix. Add files missed in r67704.
  41430. * CMakeLists.txt:
  41431. 2010-09-17 Simon Fraser <simon.fraser@apple.com>
  41432. Reviewed by Chris Marrin.
  41433. Remove scroll and clip layers for WKCACFLayerRenderer
  41434. https://bugs.webkit.org/show_bug.cgi?id=45922
  41435. WKCACFLayerRenderer no longer needs its own layers for managing scrolling
  41436. and clipping, because RenderLayerCompositor provides this functionality.
  41437. * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp:
  41438. (WebCore::MediaPlayerPrivateFullscreenWindow::setRootChildLayer): Remove call to setScrollFrame().
  41439. (WebCore::MediaPlayerPrivateFullscreenWindow::wndProc): Ditto.
  41440. * platform/graphics/win/WKCACFLayerRenderer.cpp: Remove references to scroll and clip layers
  41441. (WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer):
  41442. (WebCore::WKCACFLayerRenderer::setRootChildLayer):
  41443. (WebCore::WKCACFLayerRenderer::destroyRenderer):
  41444. (WebCore::WKCACFLayerRenderer::resize):
  41445. * platform/graphics/win/WKCACFLayerRenderer.h:
  41446. * rendering/RenderLayerCompositor.cpp:
  41447. (WebCore::RenderLayerCompositor::layerTreeAsText): Dump the layers from the root platform layer.
  41448. (WebCore::RenderLayerCompositor::requiresScrollLayer): On Windows,
  41449. always say yes.
  41450. 2010-09-17 Jian Li <jianli@chromium.org>
  41451. Reviewed by Dmitry Titov.
  41452. createBlobURL with no argument causes crash.
  41453. https://bugs.webkit.org/show_bug.cgi?id=45880
  41454. The fix is to check if the passing blob argument is NULL or not.
  41455. Test: fast/files/create-blob-url-crash.html
  41456. * dom/ScriptExecutionContext.cpp:
  41457. (WebCore::ScriptExecutionContext::createPublicBlobURL):
  41458. * page/DOMWindow.idl: Add attribute to convert null string to undefined.
  41459. 2010-09-17 Chris Marrin <cmarrin@apple.com>
  41460. Reviewed by Simon Fraser.
  41461. Add WebKitAccelerated2dCanvasEnabled flag to WebKit for Mac
  41462. https://bugs.webkit.org/show_bug.cgi?id=45911
  41463. * WebCore.exp.in:
  41464. 2010-09-17 Tony Gentilcore <tonyg@chromium.org>
  41465. Reviewed by Adam Barth.
  41466. ASSERTION FAILED: m_loadEventDelayCount
  41467. https://bugs.webkit.org/show_bug.cgi?id=45790
  41468. * dom/AsyncScriptRunner.cpp:
  41469. (WebCore::AsyncScriptRunner::timerFired): Protect document before we go running scripts.
  41470. 2010-09-17 Stephen White <senorblanco@chromium.org>
  41471. Reviewed by Kenneth Russell.
  41472. [CHROMIUM] GPU-accelerated canvas should work in test_shell.
  41473. https://bugs.webkit.org/show_bug.cgi?id=45968
  41474. In order for the shaders in GPU-accelerated canvas to work in both the
  41475. GraphicsContext3D / GLES2 path as well as chromium's test_shell (which
  41476. passes them to the Mesa backend unmodified), the precision specifiers
  41477. in the fragment shader have to be wrapped in #if GL_ES.
  41478. Soon to be covered by many layout tests.
  41479. * platform/graphics/gpu/SolidFillShader.cpp:
  41480. (WebCore::SolidFillShader::create):
  41481. * platform/graphics/gpu/TexShader.cpp:
  41482. (WebCore::TexShader::create):
  41483. 2010-09-17 Martin Robinson <mrobinson@igalia.com>
  41484. Reviewed by Xan Lopez.
  41485. [GTK] [REGRESSION] Listbox rendering is incorrect
  41486. https://bugs.webkit.org/show_bug.cgi?id=45941
  41487. Only apply the shadow tiling optimization to a layer if the GraphicsContext
  41488. has a shadow.
  41489. This is covered by manual-tests/select-element-type-select.html.
  41490. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  41491. (WebCore::drawBorderlessRectShadow): Before applying the tiled shadow optimization
  41492. first check to see if the context has a shadow at all.
  41493. 2010-09-17 Martin Robinson <mrobinson@igalia.com>
  41494. Reviewed by Oliver Hunt.
  41495. [GTK] FontPlatformDataFreeType should use smart pointers to hold its members
  41496. https://bugs.webkit.org/show_bug.cgi?id=45917
  41497. Have FontPlatformDataFreeType use smart pointers to hold its reference-counted
  41498. members. Also move the FcPattern specialization from OwnPtrCairo to PlatformRefPtrCairo
  41499. as this type is reference-counted.
  41500. No new tests as this should not introduce any functionality changes.
  41501. * platform/graphics/cairo/FontCacheFreeType.cpp:
  41502. (WebCore::FontCache::getFontDataForCharacters): Updated to reflect smart pointer changes.
  41503. (WebCore::FontCache::createFontPlatformData): Ditto.
  41504. * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
  41505. (WebCore::FontPlatformData::FontPlatformData): Ditto.
  41506. (WebCore::FontPlatformData::operator=): Ditto.
  41507. (WebCore::FontPlatformData::~FontPlatformData): Ditto.
  41508. (WebCore::FontPlatformData::isFixedPitch): Ditto.
  41509. (WebCore::FontPlatformData::operator==): Ditto.
  41510. * platform/graphics/cairo/FontPlatformDataFreeType.h:
  41511. (WebCore::FontPlatformData::FontPlatformData): Ditto.
  41512. (WebCore::FontPlatformData::scaledFont): Ditto.
  41513. (WebCore::FontPlatformData::hash): Ditto.
  41514. (WebCore::FontPlatformData::isHashTableDeletedValue): Ditto.
  41515. * platform/graphics/cairo/GlyphPageTreeNodeCairo.cpp:
  41516. (WebCore::GlyphPage::fill): Ditto.
  41517. * platform/graphics/cairo/OwnPtrCairo.cpp: Removed FcPattern specialization.
  41518. * platform/graphics/cairo/OwnPtrCairo.h: Ditto.
  41519. * platform/graphics/cairo/PlatformRefPtrCairo.cpp: Added FcPattern and cairo_scaled_font_t specializations.
  41520. (WTF::refPlatformPtr): Ditto.
  41521. (WTF::derefPlatformPtr): Ditto.
  41522. * platform/graphics/cairo/PlatformRefPtrCairo.h: Ditto.
  41523. * platform/graphics/cairo/SimpleFontDataCairo.cpp:
  41524. (WebCore::SimpleFontData::platformInit): Updated to reflect smart pointer changes.
  41525. (WebCore::SimpleFontData::containsCharacters): Ditto.
  41526. (WebCore::SimpleFontData::platformWidthForGlyph): Ditto.
  41527. * platform/graphics/gtk/FontGtk.cpp:
  41528. (WebCore::setPangoAttributes): Ditto.
  41529. 2010-09-14 Pavel Podivilov <podivilov@chromium.org>
  41530. Reviewed by Pavel Feldman.
  41531. Web Inspector: show status message below call stack when debugger is paused on DOM breakpoint
  41532. https://bugs.webkit.org/show_bug.cgi?id=45114
  41533. * English.lproj/localizedStrings.js:
  41534. * inspector/InspectorDOMAgent.cpp:
  41535. (WebCore::InspectorDOMAgent::performSearch):
  41536. (WebCore::InspectorDOMAgent::shouldBreakOnNodeInsertion):
  41537. (WebCore::InspectorDOMAgent::shouldBreakOnNodeRemoval):
  41538. (WebCore::InspectorDOMAgent::shouldBreakOnAttributeModification):
  41539. (WebCore::InspectorDOMAgent::descriptionForDOMEvent):
  41540. * inspector/InspectorDOMAgent.h:
  41541. * inspector/InspectorDebuggerAgent.cpp:
  41542. (WebCore::InspectorDebuggerAgent::didPause):
  41543. * inspector/front-end/CallStackSidebarPane.js:
  41544. (WebInspector.CallStackSidebarPane):
  41545. (WebInspector.CallStackSidebarPane.prototype.updateStatus.formatters.s):
  41546. (WebInspector.CallStackSidebarPane.prototype.updateStatus.append):
  41547. (WebInspector.CallStackSidebarPane.prototype.updateStatus):
  41548. * inspector/front-end/ElementsPanel.js:
  41549. (WebInspector.ElementsPanel.prototype.linkifyNodeById):
  41550. * inspector/front-end/ScriptsPanel.js:
  41551. (WebInspector.ScriptsPanel.prototype.debuggerPaused):
  41552. * inspector/front-end/inspector.css:
  41553. (.pane > .body .placard + .info):
  41554. * inspector/front-end/inspector.js:
  41555. (WebInspector.pausedScript):
  41556. (WebInspector.formatLocalized):
  41557. 2010-09-17 Johnny Ding <jnd@chromium.org>
  41558. Reviewed by Adam Barth.
  41559. Stop history reload navigation to bypass WebKit's popup blocker.
  41560. Now history reload can only navigate the page in self frame, no matter
  41561. what target frame is defined in <base> and no new window can be created.
  41562. https://bugs.webkit.org/show_bug.cgi?id=45369
  41563. Test: fast/events/popup-blocked-from-history-reload.html
  41564. * loader/RedirectScheduler.cpp:
  41565. (WebCore::ScheduledNavigation::ScheduledNavigation):
  41566. (WebCore::ScheduledNavigation::wasUserGesture):
  41567. Move the m_wasUserGesture to base class ScheduledNavigation. Then all
  41568. asynchronous navigation situations can restore the correct gesture state
  41569. during the real navigation process.
  41570. (WebCore::ScheduledURLNavigation::ScheduledURLNavigation):
  41571. (WebCore::ScheduledURLNavigation::fire):
  41572. (WebCore::ScheduledURLNavigation::referrer):
  41573. (WebCore::ScheduledHistoryNavigation::ScheduledHistoryNavigation):
  41574. (WebCore::ScheduledHistoryNavigation::fire):
  41575. (WebCore::ScheduledFormSubmission::ScheduledFormSubmission):
  41576. (WebCore::ScheduledFormSubmission::fire):
  41577. (WebCore::RedirectScheduler::scheduleHistoryNavigation):
  41578. 2010-09-16 Vangelis Kokkevis <vangelis@chromium.org>
  41579. Reviewed by James Robinson.
  41580. [chromium] Clip the update region of an ImageLayerChromium to actual size
  41581. of the image bitmap to prevent uninitialized memory access when uploading
  41582. the dirty region to the texture.
  41583. https://bugs.webkit.org/show_bug.cgi?id=45937
  41584. * platform/graphics/chromium/ImageLayerChromium.cpp:
  41585. (WebCore::ImageLayerChromium::updateContents):
  41586. 2010-09-17 Dimitri Glazkov <dglazkov@chromium.org>
  41587. Reviewed by David Hyatt.
  41588. Remove extraneous RenderObject traversal.
  41589. https://bugs.webkit.org/show_bug.cgi?id=45821
  41590. This code always exits in the first iteration of the loop,
  41591. because in the context of this call, node->renderer()->node() != 0
  41592. is always true.
  41593. No behavior change, covered by existing tests.
  41594. * page/EventHandler.cpp:
  41595. (WebCore::EventHandler::canMouseDownStartSelect): Removed the loop.
  41596. (WebCore::EventHandler::canMouseDragExtendSelect): Ditto.
  41597. 2010-09-17 Pavel Feldman <pfeldman@chromium.org>
  41598. Reviewed by Yury Semikhatsky.
  41599. Web Inspector: FrameLoader::loadedResourceFromMemoryCache reports
  41600. resource as not cached to InspectorController.
  41601. https://bugs.webkit.org/show_bug.cgi?id=45961
  41602. Web Inspector: FrameLoader::loadedResourceFromMemoryCache reports
  41603. resource as not cached to InspectorController.
  41604. There is one path in control flow that leads to resources being
  41605. reported as not cached. Patch to follow.
  41606. * inspector/InspectorController.cpp:
  41607. (WebCore::InspectorController::markResourceAsCached):
  41608. * inspector/InspectorController.h:
  41609. * inspector/InspectorResource.cpp:
  41610. (WebCore::InspectorResource::markAsCached):
  41611. (WebCore::InspectorResource::updateResponse):
  41612. * inspector/InspectorResource.h:
  41613. * loader/FrameLoader.cpp:
  41614. (WebCore::FrameLoader::loadedResourceFromMemoryCache):
  41615. 2010-09-17 Alexander Pavlov <apavlov@chromium.org>
  41616. Unreviewed, build fix. Add files missed in the previous commit.
  41617. * GNUmakefile.am:
  41618. * css/CSSPropertySourceData.cpp: Added.
  41619. (WebCore::SourceRange::SourceRange):
  41620. (WebCore::SourceRange::operator=):
  41621. (WebCore::CSSPropertySourceData::CSSPropertySourceData):
  41622. (WebCore::CSSPropertySourceData::operator=):
  41623. (WebCore::CSSPropertySourceData::toString):
  41624. (WebCore::CSSPropertySourceData::hash):
  41625. (WebCore::CSSPropertySourceData::init):
  41626. * css/CSSPropertySourceData.h: Added.
  41627. (WebCore::CSSPropertySourceData::~CSSPropertySourceData):
  41628. (WebCore::CSSStyleSourceData::create):
  41629. 2010-09-15 Alexander Pavlov <apavlov@chromium.org>
  41630. Reviewed by Pavel Feldman.
  41631. Provide source-based properties for style declarations to CSSParser clients
  41632. This change:
  41633. - Enables InspectorCSSStore to extract CSS stylesheet text for all source-based stylesheets,
  41634. even with the resource tracking turned off.
  41635. - Adds to CSSParser a capability of source-related style declaration data extraction:
  41636. * Start/end source offsets for a declaration, relative to the parent stylesheet start or the "style" attribute value.
  41637. * Start/end source offsets for CSS properties, relative to the declaration start.
  41638. * CSS property data: name, value, priority, WebCore parsability (i.e. if the property is understood by WebCore).
  41639. - Provides the extracted data to the WebInspector frontend via InspectorDOMAgent::getStyleSourceData().
  41640. https://bugs.webkit.org/show_bug.cgi?id=44949
  41641. * WebCore.gypi:
  41642. * WebCore.pro:
  41643. * WebCore.vcproj/WebCore.vcproj:
  41644. * WebCore.xcodeproj/project.pbxproj:
  41645. * css/CSSGrammar.y:
  41646. * css/CSSMutableStyleDeclaration.h:
  41647. (WebCore::CSSMutableStyleDeclaration::node):
  41648. * css/CSSParser.cpp:
  41649. (WebCore::CSSParser::CSSParser):
  41650. (WebCore::CSSParser::parseSheet):
  41651. (WebCore::CSSParser::parseDeclaration):
  41652. (WebCore::CSSParser::createStyleRule):
  41653. (WebCore::CSSParser::markRuleBodyStart):
  41654. (WebCore::CSSParser::markPropertyStart):
  41655. (WebCore::CSSParser::markPropertyEnd):
  41656. * css/CSSParser.h:
  41657. (WebCore::CSSParser::resetPropertyMarks):
  41658. * css/CSSPropertySourceData.cpp: Added.
  41659. (WebCore::SourceRange::SourceRange):
  41660. (WebCore::SourceRange::operator=):
  41661. (WebCore::CSSPropertySourceData::CSSPropertySourceData):
  41662. (WebCore::CSSPropertySourceData::operator=):
  41663. (WebCore::CSSPropertySourceData::toString):
  41664. (WebCore::CSSPropertySourceData::hash):
  41665. (WebCore::CSSPropertySourceData::init):
  41666. * css/CSSPropertySourceData.h: Added.
  41667. (WebCore::CSSPropertySourceData::~CSSPropertySourceData):
  41668. (WebCore::CSSStyleSourceData::create):
  41669. * inspector/Inspector.idl:
  41670. * inspector/InspectorCSSStore.cpp:
  41671. (WebCore::InspectorCSSStore::reset):
  41672. (WebCore::InspectorCSSStore::styleSheetText):
  41673. (WebCore::InspectorCSSStore::resourceStyleSheetText):
  41674. (WebCore::InspectorCSSStore::inlineStyleSheetText):
  41675. (WebCore::InspectorCSSStore::getStyleSourceData):
  41676. (WebCore::InspectorCSSStore::extractRanges):
  41677. (WebCore::InspectorCSSStore::getStyleAttributeRanges):
  41678. (WebCore::InspectorCSSStore::getParentStyleSheet):
  41679. (WebCore::InspectorCSSStore::inlineStyleElement):
  41680. * inspector/InspectorCSSStore.h:
  41681. * inspector/InspectorController.cpp:
  41682. (WebCore::InspectorController::resourceContentForURL):
  41683. * inspector/InspectorController.h:
  41684. * inspector/InspectorDOMAgent.cpp:
  41685. (WebCore::InspectorDOMAgent::getStyleSourceData):
  41686. (WebCore::InspectorDOMAgent::buildObjectForStyle):
  41687. * inspector/InspectorDOMAgent.h:
  41688. 2010-09-17 Alexander Pavlov <apavlov@chromium.org>
  41689. Reviewed by Pavel Feldman.
  41690. Web Inspector: Show node description in inspector highlight
  41691. https://bugs.webkit.org/show_bug.cgi?id=20930
  41692. * inspector/InspectorController.cpp:
  41693. (WebCore::InspectorController::drawNodeHighlight):
  41694. (WebCore::InspectorController::drawElementTitle):
  41695. * inspector/InspectorController.h:
  41696. 2010-09-16 takano takumi <takano1@asia.apple.com>
  41697. Reviewed by Kent Tamura.
  41698. https://bugs.webkit.org/show_bug.cgi?id=45020
  41699. Support "block-flow" and "writing-mode": interpret properties into RenderStyle
  41700. Fixed a regression in SVG test introduced by my previous change.
  41701. * css/CSSPrimitiveValueMappings.h:
  41702. (WebCore::CSSPrimitiveValue::operator EWritingMode):
  41703. * css/SVGCSSParser.cpp:
  41704. (WebCore::CSSParser::parseSVGValue):
  41705. 2010-09-16 Kenneth Russell <kbr@google.com>
  41706. Reviewed by James Robinson.
  41707. Add entry points to GraphicsContext3D needed for Chromium compositor port
  41708. https://bugs.webkit.org/show_bug.cgi?id=45939
  41709. Added entry points for two Chromium-specific extensions, and added
  41710. a flag to the GraphicsContext3D constructor, currently unsupported
  41711. by all ports (including Chromium), indicating whether the context
  41712. should render directly to the passed HostWindow or off-screen per
  41713. the current semantics. The switch to use GraphicsContext3D in
  41714. Chromium's compositor will follow in a subsequent patch.
  41715. No new tests; functionality is unchanged. Built and tested
  41716. Chromium and WebKit on Mac OS X.
  41717. * platform/graphics/GraphicsContext3D.cpp:
  41718. (WebCore::GraphicsContext3D::supportsMapSubCHROMIUM):
  41719. (WebCore::GraphicsContext3D::mapBufferSubDataCHROMIUM):
  41720. (WebCore::GraphicsContext3D::unmapBufferSubDataCHROMIUM):
  41721. (WebCore::GraphicsContext3D::mapTexSubImage2DCHROMIUM):
  41722. (WebCore::GraphicsContext3D::unmapTexSubImage2DCHROMIUM):
  41723. (WebCore::GraphicsContext3D::supportsCopyTextureToParentTextureCHROMIUM):
  41724. (WebCore::GraphicsContext3D::copyTextureToParentTextureCHROMIUM):
  41725. * platform/graphics/GraphicsContext3D.h:
  41726. * platform/graphics/mac/GraphicsContext3DMac.mm:
  41727. (WebCore::GraphicsContext3D::create):
  41728. (WebCore::GraphicsContext3D::GraphicsContext3D):
  41729. * platform/graphics/qt/GraphicsContext3DQt.cpp:
  41730. (WebCore::GraphicsContext3D::create):
  41731. (WebCore::GraphicsContext3D::GraphicsContext3D):
  41732. 2010-09-16 Simon Fraser <simon.fraser@apple.com>
  41733. Reviewed by James Robinson.
  41734. In layerTreeAsText output, avoid printing properties which have their default values
  41735. https://bugs.webkit.org/show_bug.cgi?id=45931
  41736. Don't dump properties that have their default values to simplify output.
  41737. * platform/graphics/GraphicsLayer.cpp:
  41738. (WebCore::GraphicsLayer::dumpProperties):
  41739. 2010-09-16 Andreas Kling <andreas.kling@nokia.com>
  41740. Reviewed by Ariya Hidayat.
  41741. [Qt] GraphicsContext: Remove unused variable
  41742. GraphicsContextPlatformPrivate::redirect wasn't used for anything.
  41743. * platform/graphics/qt/GraphicsContextQt.cpp:
  41744. (WebCore::GraphicsContextPlatformPrivate::p):
  41745. (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
  41746. 2010-09-16 Andreas Kling <andreas.kling@nokia.com>
  41747. Reviewed by Ariya Hidayat.
  41748. [Qt] Remove unnecessary QPainter::clipPath() call in TransparencyLayer()
  41749. https://bugs.webkit.org/show_bug.cgi?id=45923
  41750. QPainter::clipPath() can be very expensive, so use QPainter::hasClipping()
  41751. instead of QPainter::clipPath().isEmpty().
  41752. * platform/graphics/qt/TransparencyLayer.h:
  41753. (WebCore::TransparencyLayer::TransparencyLayer):
  41754. 2010-09-16 David Hyatt <hyatt@apple.com>
  41755. Reviewed by Eric Seidel.
  41756. Fix for regression from my previous check-in. Make sure not to move the LayoutRepainter line
  41757. below the setHeight(0) call. This meant it snagged the wrong rectangle and we ended up repainting
  41758. the world.
  41759. * rendering/RenderBlock.cpp:
  41760. (WebCore::RenderBlock::layoutBlock):
  41761. 2010-09-16 takano takumi <takano1@asia.apple.com>
  41762. Reviewed by Dave Hyatt.
  41763. https://bugs.webkit.org/show_bug.cgi?id=45020
  41764. Support "block-flow" and "writing-mode": interpret properties into RenderStyle
  41765. Added code that interprets "block-flow" property and "writing-mode" property settings
  41766. into a RenderStyle object.
  41767. Test: fast/text/international/block-flow-parser-test.html
  41768. * css/CSSComputedStyleDeclaration.cpp:
  41769. (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  41770. * css/CSSParser.cpp:
  41771. (WebCore::CSSParser::parseValue):
  41772. * css/CSSPrimitiveValueMappings.h:
  41773. (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
  41774. (WebCore::CSSPrimitiveValue::operator EBlockFlowDirection):
  41775. * css/CSSPropertyNames.in:
  41776. * css/CSSStyleSelector.cpp:
  41777. (WebCore::CSSStyleSelector::applyProperty):
  41778. * css/CSSValueKeywords.in:
  41779. * css/SVGCSSValueKeywords.in:
  41780. * rendering/style/RenderStyle.cpp:
  41781. (WebCore::RenderStyle::diff):
  41782. * rendering/style/RenderStyle.h:
  41783. (WebCore::InheritedFlags::setBitDefaults):
  41784. (WebCore::InheritedFlags::blockFlow):
  41785. (WebCore::InheritedFlags::setBlockFlow):
  41786. (WebCore::InheritedFlags::initialBlockFlow):
  41787. * rendering/style/RenderStyleConstants.h:
  41788. 2010-09-16 Martin Robinson <mrobinson@igalia.com>
  41789. Reviewed by Xan Lopez.
  41790. [GTK] Implement dissolveDragImageToFraction
  41791. https://bugs.webkit.org/show_bug.cgi?id=45826
  41792. Convert the drag image from a GdkPixbuf to a Cairo surface. Not only
  41793. might this allow code to be shared between Cairo ports it prevents a
  41794. full data copy when the image is not resized and makes the implementation
  41795. of dissolveDragImageToFraction more straight-forward.
  41796. This feature is covered by manual-tests/drag-image.html.
  41797. * page/gtk/DragControllerGtk.cpp:
  41798. (WebCore::DragController::maxDragImageSize): Make the maximum size of the drag
  41799. image a little smaller.
  41800. * platform/DragImage.h: Changed the drag image type to be a cairo_surface_t*.
  41801. * platform/gtk/DragImageGtk.cpp:
  41802. (WebCore::dragImageSize): Reimplemented to reflect new drag image type.
  41803. (WebCore::deleteDragImage): Ditto.
  41804. (WebCore::scaleDragImage): Ditto.
  41805. (WebCore::dissolveDragImageToFraction): Filled the stub of this function.
  41806. (WebCore::createDragImageFromImage): Reimplemented to reflect new drag image type.
  41807. * platform/gtk/GtkVersioning.h: Added definition for gtk_widget_get_realized for older GTK+s.
  41808. 2010-09-15 David Hyatt <hyatt@apple.com>
  41809. Reviewed by Darin Adler.
  41810. https://bugs.webkit.org/show_bug.cgi?id=38402, paginate columns at layout time rather than at paint time.
  41811. This patch adds support for column breaking at layout time rather than at paint time. New variables have been
  41812. added to LayoutState and to ColumnInfo to track column information while laying out.
  41813. The basic idea behind this patch is to retain the columns' paint-time hackery of transforming one long vertical strip
  41814. into multiple columns. Now, however, layout is aware of the columns and will move objects up and down vertically in order
  41815. to ensure they don't intersect a break.
  41816. Many new tests added in fast/multicol and new results added for existing fast/multicol tests.
  41817. * rendering/ColumnInfo.h:
  41818. (WebCore::ColumnInfo::ColumnInfo):
  41819. (WebCore::ColumnInfo::columnCount):
  41820. (WebCore::ColumnInfo::columnHeight):
  41821. (WebCore::ColumnInfo::setColumnCountAndHeight):
  41822. (WebCore::ColumnInfo::setColumnHeight):
  41823. (WebCore::ColumnInfo::updateMinimumColumnHeight):
  41824. (WebCore::ColumnInfo::minimumColumnHeight):
  41825. (WebCore::ColumnInfo::forcedBreaks):
  41826. (WebCore::ColumnInfo::forcedBreakOffset):
  41827. (WebCore::ColumnInfo::maximumDistanceBetweenForcedBreaks):
  41828. (WebCore::ColumnInfo::clearForcedBreaks):
  41829. (WebCore::ColumnInfo::addForcedBreak):
  41830. * rendering/LayoutState.cpp:
  41831. (WebCore::LayoutState::LayoutState):
  41832. (WebCore::LayoutState::clearPaginationInformation):
  41833. (WebCore::LayoutState::pageY):
  41834. (WebCore::LayoutState::addForcedColumnBreak):
  41835. * rendering/LayoutState.h:
  41836. (WebCore::LayoutState::LayoutState):
  41837. (WebCore::LayoutState::paginatingColumns):
  41838. (WebCore::LayoutState::paginated):
  41839. * rendering/RenderBlock.cpp:
  41840. (WebCore::RenderBlock::RenderBlock):
  41841. (WebCore::RenderBlock::~RenderBlock):
  41842. (WebCore::RenderBlock::layoutBlock):
  41843. (WebCore::RenderBlock::collapseMargins):
  41844. (WebCore::RenderBlock::estimateVerticalPosition):
  41845. (WebCore::RenderBlock::layoutBlockChild):
  41846. (WebCore::RenderBlock::layoutPositionedObjects):
  41847. (WebCore::RenderBlock::paintColumnRules):
  41848. (WebCore::RenderBlock::paintColumnContents):
  41849. (WebCore::RenderBlock::paintChildren):
  41850. (WebCore::RenderBlock::insertFloatingObject):
  41851. (WebCore::RenderBlock::removeFloatingObjects):
  41852. (WebCore::RenderBlock::positionNewFloats):
  41853. (WebCore::RenderBlock::positionNewFloatOnLine):
  41854. (WebCore::RenderBlock::lowestPosition):
  41855. (WebCore::RenderBlock::rightmostPosition):
  41856. (WebCore::RenderBlock::leftmostPosition):
  41857. (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
  41858. (WebCore::RenderBlock::markDescendantBlocksAndLinesForLayout):
  41859. (WebCore::RenderBlock::hitTestColumns):
  41860. (WebCore::RenderBlock::setDesiredColumnCountAndWidth):
  41861. (WebCore::RenderBlock::columnCount):
  41862. (WebCore::RenderBlock::columnRectAt):
  41863. (WebCore::RenderBlock::layoutColumns):
  41864. (WebCore::RenderBlock::adjustPointToColumnContents):
  41865. (WebCore::RenderBlock::adjustRectForColumns):
  41866. (WebCore::RenderBlock::adjustForColumns):
  41867. (WebCore::RenderBlock::setMaxTopMargins):
  41868. (WebCore::RenderBlock::setMaxBottomMargins):
  41869. (WebCore::RenderBlock::setPaginationStrut):
  41870. (WebCore::RenderBlock::setPageY):
  41871. (WebCore::RenderBlock::nextPageTop):
  41872. (WebCore::inNormalFlow):
  41873. (WebCore::RenderBlock::applyBeforeBreak):
  41874. (WebCore::RenderBlock::applyAfterBreak):
  41875. (WebCore::RenderBlock::adjustForUnsplittableChild):
  41876. (WebCore::RenderBlock::adjustLinePositionForPagination):
  41877. * rendering/RenderBlock.h:
  41878. (WebCore::RenderBlock::paginationStrut):
  41879. (WebCore::RenderBlock::pageY):
  41880. (WebCore::RenderBlock::maxTopPosMargin):
  41881. (WebCore::RenderBlock::maxTopNegMargin):
  41882. (WebCore::RenderBlock::maxBottomPosMargin):
  41883. (WebCore::RenderBlock::maxBottomNegMargin):
  41884. (WebCore::RenderBlock::initMaxMarginValues):
  41885. (WebCore::RenderBlock::FloatingObject::FloatingObject):
  41886. (WebCore::RenderBlock::FloatingObject::type):
  41887. (WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData):
  41888. * rendering/RenderBlockLineLayout.cpp:
  41889. (WebCore::RenderBlock::layoutInlineChildren):
  41890. (WebCore::RenderBlock::determineStartPosition):
  41891. (WebCore::RenderBlock::skipLeadingWhitespace):
  41892. (WebCore::RenderBlock::findNextLineBreak):
  41893. * rendering/RenderBox.cpp:
  41894. (WebCore::RenderBox::mapLocalToContainer):
  41895. (WebCore::RenderBox::computeRectForRepaint):
  41896. (WebCore::RenderBox::markDescendantBlocksAndLinesForLayout):
  41897. * rendering/RenderBox.h:
  41898. * rendering/RenderFlexibleBox.cpp:
  41899. (WebCore::RenderFlexibleBox::layoutBlock):
  41900. (WebCore::RenderFlexibleBox::layoutHorizontalBox):
  41901. (WebCore::RenderFlexibleBox::layoutVerticalBox):
  41902. * rendering/RenderFlexibleBox.h:
  41903. * rendering/RenderInline.cpp:
  41904. (WebCore::RenderInline::computeRectForRepaint):
  41905. (WebCore::RenderInline::mapLocalToContainer):
  41906. * rendering/RenderLayer.cpp:
  41907. (WebCore::RenderLayer::updatePagination):
  41908. (WebCore::RenderLayer::paintChildLayerIntoColumns):
  41909. (WebCore::RenderLayer::hitTestChildLayerColumns):
  41910. * rendering/RenderLineBoxList.cpp:
  41911. (WebCore::RenderLineBoxList::paint):
  41912. * rendering/RenderTable.cpp:
  41913. (WebCore::RenderTable::RenderTable):
  41914. (WebCore::RenderTable::layout):
  41915. * rendering/RenderTable.h:
  41916. * rendering/RenderTableRow.cpp:
  41917. (WebCore::RenderTableRow::layout):
  41918. * rendering/RenderTableSection.cpp:
  41919. (WebCore::RenderTableSection::layoutRows):
  41920. * rendering/RenderView.cpp:
  41921. (WebCore::RenderView::RenderView):
  41922. (WebCore::RenderView::pushLayoutState):
  41923. * rendering/RenderView.h:
  41924. (WebCore::RenderView::setTruncatedAt):
  41925. (WebCore::RenderView::pushLayoutState):
  41926. (WebCore::RenderView::popLayoutState):
  41927. (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
  41928. (WebCore::LayoutStateMaintainer::push):
  41929. * rendering/RootInlineBox.h:
  41930. (WebCore::RootInlineBox::RootInlineBox):
  41931. (WebCore::RootInlineBox::paginationStrut):
  41932. (WebCore::RootInlineBox::setPaginationStrut):
  41933. 2010-09-16 Pavel Podivilov <podivilov@chromium.org>
  41934. Reviewed by Dimitri Glazkov.
  41935. Fix debug crash in HTMLFrameOwnerElement caused by content frame being used after destruction.
  41936. https://bugs.webkit.org/show_bug.cgi?id=45737
  41937. Test: fast/frames/frame-limit.html
  41938. * html/HTMLFrameOwnerElement.cpp:
  41939. (WebCore::HTMLFrameOwnerElement::willRemove):
  41940. 2010-09-16 Thomas Zander <t.zander@nokia.com>
  41941. Reviewed by Andreas Kling.
  41942. https://bugs.webkit.org/show_bug.cgi?id=45878
  41943. [Qt] Fixed incorrect Symbian scoping.
  41944. The missing install functionality is only true for mmp based systems.
  41945. * WebCore.pro: limit functionality to mmp systems.
  41946. 2010-09-16 Anders Carlsson <andersca@apple.com>
  41947. Fix clang build.
  41948. * page/animation/AnimationBase.h:
  41949. Fix struct/class mismatch.
  41950. 2010-09-16 Darin Adler <darin@apple.com>
  41951. Reviewed by Andreas Kling.
  41952. Reduce use of HTMLInputElement::inputType so we can remove it later
  41953. https://bugs.webkit.org/show_bug.cgi?id=45903
  41954. * accessibility/AccessibilityRenderObject.cpp:
  41955. (WebCore::AccessibilityRenderObject::isFileUploadButton): Use isFileUpload.
  41956. (WebCore::AccessibilityRenderObject::isInputImage): Use isImageButton.
  41957. (WebCore::AccessibilityRenderObject::determineAccessibilityRole): Use
  41958. isCheckbox and isRadioButton.
  41959. * css/CSSStyleSelector.cpp:
  41960. (WebCore::CSSStyleSelector::adjustRenderStyle): Use isImageButton.
  41961. * editing/Editor.cpp:
  41962. (WebCore::Editor::setBaseWritingDirection): Use isTextField.
  41963. * editing/ReplaceSelectionCommand.cpp:
  41964. (WebCore::ReplaceSelectionCommand::doApply): Use isPasswordField.
  41965. * editing/SelectionController.cpp:
  41966. (WebCore::SelectionController::isInPasswordField): Use isPasswordField.
  41967. * html/HTMLInputElement.h: Added isFileUpload, isImageButton, and isSubmitButton.
  41968. * page/Chrome.cpp:
  41969. (WebCore::Chrome::setToolTip): Use isSubmitButton and isFileUpload.
  41970. * page/DragController.cpp:
  41971. (WebCore::asFileInput): Use isFileUpload.
  41972. * page/EventHandler.cpp:
  41973. (WebCore::isSubmitImage): Use isImageButton.
  41974. * rendering/RenderFileUploadControl.cpp:
  41975. (WebCore::RenderFileUploadControl::updateFromElement): Use isFileUpload.
  41976. 2010-09-16 Pavel Podivilov <podivilov@chromium.org>
  41977. Reviewed by Pavel Feldman.
  41978. Web Inspector: quick fix for crash in InspectorController::loadBreakpoints caused by empty main resource
  41979. https://bugs.webkit.org/show_bug.cgi?id=45901
  41980. * inspector/InspectorController.cpp:
  41981. (WebCore::InspectorController::breakpointsSettingKey):
  41982. 2010-09-16 Pavel Feldman <pfeldman@chromium.org>
  41983. Reviewed by Yury Semikhatsky.
  41984. Web Inspector: Prevent responseReceivedTime from being > endTime in case mixture of WebCore and Network stack info is used.
  41985. https://bugs.webkit.org/show_bug.cgi?id=45892
  41986. * inspector/InspectorResource.cpp:
  41987. (WebCore::InspectorResource::endTiming):
  41988. 2010-09-16 Ilya Tikhonovsky <loislo@chromium.org>
  41989. Reviewed by Yury Semikhatsky.
  41990. Web Inspector: move resourceTracking flag under control of BackendSettings.
  41991. Four Inspector API methods about resourceTracking flag were removed.
  41992. Actual state of the flag is transfered as the response of setResourceTracking request.
  41993. Initial state of the flag on the frontend side is obtained from settings.backend.
  41994. https://bugs.webkit.org/show_bug.cgi?id=45887
  41995. * inspector/Inspector.idl:
  41996. * inspector/InspectorController.cpp:
  41997. (WebCore::InspectorController::getBackendSettings):
  41998. (WebCore::InspectorController::populateScriptObjects):
  41999. (WebCore::InspectorController::setResourceTracking):
  42000. * inspector/InspectorController.h:
  42001. * inspector/front-end/ResourcesPanel.js:
  42002. (WebInspector.ResourcesPanel.prototype._toggleResourceTracking):
  42003. * inspector/front-end/Settings.js:
  42004. (WebInspector.Settings.initialize.populateBackendSettings):
  42005. (WebInspector.Settings.initialize):
  42006. * inspector/front-end/inspector.js:
  42007. 2010-09-16 Jian Li <jianli@chromium.org>
  42008. Reviewed by David Levin.
  42009. BlobData should be copied for it to be used cross-thread in ThreadableBlobRegistry.
  42010. https://bugs.webkit.org/show_bug.cgi?id=45909
  42011. * fileapi/ThreadableBlobRegistry.cpp:
  42012. (WebCore::BlobRegistryContext::BlobRegistryContext):
  42013. 2010-09-16 Daniel Cheng <dcheng@chromium.org>
  42014. Reviewed by Simon Fraser.
  42015. [chromium] Fix incorrect drag node/selection painting.
  42016. https://bugs.webkit.org/show_bug.cgi?id=45573
  42017. Drag selections were being incorrectly clipped when dragging a selection
  42018. near the bottom of a page that was taller than the viewport. To fix
  42019. this, we use paintContents() instead of paint().
  42020. * page/chromium/FrameChromium.cpp:
  42021. (WebCore::Frame::nodeImage):
  42022. (WebCore::Frame::dragImageForSelection):
  42023. 2010-09-16 Daniel Cheng <dcheng@chromium.org>
  42024. Reviewed by Tony Chang.
  42025. Fix incorrect usage of dissolveDragImageToFraction().
  42026. https://bugs.webkit.org/show_bug.cgi?id=45835
  42027. createDragImageForSelection() was ignoring the return value of
  42028. dissolveDragImageToFraction(). This didn't happen to crash on most
  42029. platforms, since most implementations simply modified the image that was
  42030. passed in. However, Chromium Mac's implementation actually creates a new
  42031. image and returns that instead. This caused us to crash when copying the
  42032. image from the renderer to the browser process, since the memory had
  42033. already been freed.
  42034. * manual-tests/selection-drag-crash.html: Added.
  42035. * platform/DragImage.cpp:
  42036. (WebCore::createDragImageForSelection):
  42037. 2010-09-16 Sheriff Bot <webkit.review.bot@gmail.com>
  42038. Unreviewed, rolling out r67628.
  42039. http://trac.webkit.org/changeset/67628
  42040. https://bugs.webkit.org/show_bug.cgi?id=45904
  42041. broke the build (Requested by eric_carlson on #webkit).
  42042. * page/ContextMenuController.cpp:
  42043. (WebCore::ContextMenuController::contextMenuItemSelected):
  42044. * platform/ContextMenu.cpp:
  42045. (WebCore::ContextMenu::populate):
  42046. (WebCore::ContextMenu::checkOrEnableIfNeeded):
  42047. * platform/ContextMenuItem.h:
  42048. * platform/LocalizationStrategy.h:
  42049. * platform/LocalizedStrings.cpp:
  42050. * platform/LocalizedStrings.h:
  42051. * platform/android/LocalizedStringsAndroid.cpp:
  42052. * platform/brew/LocalizedStringsBrew.cpp:
  42053. * platform/efl/LocalizedStringsEfl.cpp:
  42054. * platform/gtk/ContextMenuItemGtk.cpp:
  42055. (WebCore::gtkStockIDFromContextMenuAction):
  42056. * platform/gtk/LocalizedStringsGtk.cpp:
  42057. * platform/haiku/LocalizedStringsHaiku.cpp:
  42058. * platform/wx/LocalizedStringsWx.cpp:
  42059. * rendering/HitTestResult.cpp:
  42060. (WebCore::HitTestResult::absoluteMediaURL):
  42061. * rendering/HitTestResult.h:
  42062. 2010-09-16 Andreas Kling <andreas.kling@nokia.com>
  42063. Reviewed by Simon Fraser.
  42064. CSS: Fix crash in getTimingFunctionValue()
  42065. https://bugs.webkit.org/show_bug.cgi?id=45896
  42066. Use a RefPtr to avoid deleting the TimingFunction prematurely.
  42067. This is covered by existing tests, e.g transitions/inherit-other-props.html
  42068. but will only actually crash on picky platforms (or in valgrind.)
  42069. * css/CSSComputedStyleDeclaration.cpp:
  42070. (WebCore::getTimingFunctionValue):
  42071. 2010-09-16 Pavel Feldman <pfeldman@chromium.org>
  42072. Reviewed by Yury Semikhatsky.
  42073. Web Inspector: prevent resource timing popover from having scrollers.
  42074. https://bugs.webkit.org/show_bug.cgi?id=45883
  42075. * inspector/front-end/ResourcesPanel.js:
  42076. (WebInspector.ResourcesPanel.prototype._showPopover):
  42077. 2010-09-15 Philippe Normand <pnormand@igalia.com>
  42078. Reviewed by Eric Carlson.
  42079. [GTK] enhanced context menu for media elements
  42080. https://bugs.webkit.org/show_bug.cgi?id=45021
  42081. New items in the media Element context menu:
  42082. - play/pause
  42083. - mute/unmute
  42084. - controls display control
  42085. - switch to fullscreen (for video only)
  42086. - loop playback control
  42087. - copy media url to clipboard
  42088. - open in new window
  42089. Test: media/context-menu-actions.html
  42090. * page/ContextMenuController.cpp:
  42091. (WebCore::ContextMenuController::contextMenuItemSelected):
  42092. * platform/ContextMenu.cpp:
  42093. (WebCore::ContextMenu::populate):
  42094. (WebCore::ContextMenu::checkOrEnableIfNeeded):
  42095. * platform/ContextMenuItem.h:
  42096. * platform/LocalizationStrategy.h:
  42097. * platform/LocalizedStrings.cpp:
  42098. (WebCore::contextMenuItemTagOpenMediaInNewWindow):
  42099. (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
  42100. (WebCore::contextMenuItemTagToggleMediaControls):
  42101. (WebCore::contextMenuItemTagToggleMediaLoop):
  42102. (WebCore::contextMenuItemTagEnterVideoFullscreen):
  42103. (WebCore::contextMenuItemTagMediaPlay):
  42104. (WebCore::contextMenuItemTagMediaPause):
  42105. (WebCore::contextMenuItemTagMediaMute):
  42106. (WebCore::contextMenuItemTagMediaUnMute):
  42107. * platform/LocalizedStrings.h:
  42108. * platform/android/LocalizedStringsAndroid.cpp:
  42109. (WebCore::contextMenuItemTagOpenMediaInNewWindow):
  42110. (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
  42111. (WebCore::contextMenuItemTagToggleMediaControls):
  42112. (WebCore::contextMenuItemTagToggleMediaLoop):
  42113. (WebCore::contextMenuItemTagEnterVideoFullscreen):
  42114. (WebCore::contextMenuItemTagMediaPlay):
  42115. (WebCore::contextMenuItemTagMediaPause):
  42116. (WebCore::contextMenuItemTagMediaMute):
  42117. (WebCore::contextMenuItemTagMediaUnMute):
  42118. * platform/brew/LocalizedStringsBrew.cpp:
  42119. (WebCore::contextMenuItemTagOpenMediaInNewWindow):
  42120. (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
  42121. (WebCore::contextMenuItemTagToggleMediaControls):
  42122. (WebCore::contextMenuItemTagToggleMediaLoop):
  42123. (WebCore::contextMenuItemTagEnterVideoFullscreen):
  42124. (WebCore::contextMenuItemTagMediaPlay):
  42125. (WebCore::contextMenuItemTagMediaPause):
  42126. (WebCore::contextMenuItemTagMediaMute):
  42127. (WebCore::contextMenuItemTagMediaUnMute):
  42128. * platform/efl/LocalizedStringsEfl.cpp:
  42129. (WebCore::contextMenuItemTagOpenMediaInNewWindow):
  42130. (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
  42131. (WebCore::contextMenuItemTagToggleMediaControls):
  42132. (WebCore::contextMenuItemTagToggleMediaLoop):
  42133. (WebCore::contextMenuItemTagEnterVideoFullscreen):
  42134. (WebCore::contextMenuItemTagMediaPlay):
  42135. (WebCore::contextMenuItemTagMediaPause):
  42136. (WebCore::contextMenuItemTagMediaMute):
  42137. (WebCore::contextMenuItemTagMediaUnMute):
  42138. * platform/gtk/ContextMenuItemGtk.cpp:
  42139. (WebCore::gtkStockIDFromContextMenuAction):
  42140. * platform/gtk/LocalizedStringsGtk.cpp:
  42141. (WebCore::contextMenuItemTagOpenMediaInNewWindow):
  42142. (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
  42143. (WebCore::contextMenuItemTagToggleMediaControls):
  42144. (WebCore::contextMenuItemTagToggleMediaLoop):
  42145. (WebCore::contextMenuItemTagEnterVideoFullscreen):
  42146. (WebCore::contextMenuItemTagMediaPlay):
  42147. (WebCore::contextMenuItemTagMediaPause):
  42148. (WebCore::contextMenuItemTagMediaMute):
  42149. (WebCore::contextMenuItemTagMediaUnMute):
  42150. * platform/haiku/LocalizedStringsHaiku.cpp:
  42151. (WebCore::contextMenuItemTagOpenMediaInNewWindow):
  42152. (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
  42153. (WebCore::contextMenuItemTagToggleMediaControls):
  42154. (WebCore::contextMenuItemTagToggleMediaLoop):
  42155. (WebCore::contextMenuItemTagEnterVideoFullscreen):
  42156. (WebCore::contextMenuItemTagMediaPlay):
  42157. (WebCore::contextMenuItemTagMediaPause):
  42158. (WebCore::contextMenuItemTagMediaMute):
  42159. (WebCore::contextMenuItemTagMediaUnMute):
  42160. * platform/wx/LocalizedStringsWx.cpp:
  42161. (WebCore::contextMenuItemTagOpenMediaInNewWindow):
  42162. (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
  42163. (WebCore::contextMenuItemTagToggleMediaControls):
  42164. (WebCore::contextMenuItemTagToggleMediaLoop):
  42165. (WebCore::contextMenuItemTagEnterVideoFullscreen):
  42166. (WebCore::contextMenuItemTagMediaPlay):
  42167. (WebCore::contextMenuItemTagMediaPause):
  42168. (WebCore::contextMenuItemTagMediaMute):
  42169. (WebCore::contextMenuItemTagMediaUnMute):
  42170. * rendering/HitTestResult.cpp:
  42171. (WebCore::HitTestResult::absoluteMediaURL):
  42172. (WebCore::HitTestResult::mediaSupportsFullscreen):
  42173. (WebCore::HitTestResult::mediaElement):
  42174. (WebCore::HitTestResult::toggleMediaControlsDisplay):
  42175. (WebCore::HitTestResult::toggleMediaLoopPlayback):
  42176. (WebCore::HitTestResult::enterFullscreenForVideo):
  42177. (WebCore::HitTestResult::mediaControlsEnabled):
  42178. (WebCore::HitTestResult::mediaLoopEnabled):
  42179. (WebCore::HitTestResult::mediaPlaying):
  42180. (WebCore::HitTestResult::toggleMediaPlayState):
  42181. (WebCore::HitTestResult::mediaHasAudio):
  42182. (WebCore::HitTestResult::mediaMuted):
  42183. (WebCore::HitTestResult::toggleMediaMuteState):
  42184. * rendering/HitTestResult.h:
  42185. 2010-09-16 Tony Gentilcore <tonyg@chromium.org>
  42186. Reviewed by Adam Barth.
  42187. Crash in WebCore::FrameLoader::shouldInterruptLoadForXFrameOptions
  42188. https://bugs.webkit.org/show_bug.cgi?id=45833
  42189. Test: fast/parser/x-frame-options-detached-document-crash.html
  42190. * dom/Document.cpp:
  42191. (WebCore::Document::processHttpEquiv): Other branches in this method already test for a null frame. So it seems to make sense to test that here as well.
  42192. 2010-09-16 Vangelis Kokkevis <vangelis@chromium.org>
  42193. Reviewed by Darin Fisher.
  42194. [chromium] ImageLayerChromium needs to keep a ref to the Image it uses
  42195. so that it never tries to access an already destroyed Image.
  42196. https://bugs.webkit.org/show_bug.cgi?id=45869
  42197. * platform/graphics/chromium/GraphicsLayerChromium.cpp:
  42198. (WebCore::GraphicsLayerChromium::setContentsToImage):
  42199. * platform/graphics/chromium/ImageLayerChromium.cpp:
  42200. (WebCore::ImageLayerChromium::setContents):
  42201. (WebCore::ImageLayerChromium::updateContents):
  42202. * platform/graphics/chromium/ImageLayerChromium.h:
  42203. 2010-09-16 Patrick Gansterer <paroga@paroga.com>
  42204. Reviewed by Adam Roben.
  42205. [WINCE] Add platform-specific Image methods
  42206. https://bugs.webkit.org/show_bug.cgi?id=28272
  42207. * platform/graphics/wince/ImageWinCE.cpp: Added.
  42208. (WebCore::RGBA32Buffer::asNewNativeImage):
  42209. (WebCore::FrameData::clear):
  42210. (WebCore::BitmapImage::getHBITMAPOfSize):
  42211. (WebCore::BitmapImage::drawFrameMatchingSourceSize):
  42212. (WebCore::BitmapImage::draw):
  42213. (WebCore::Image::drawPattern):
  42214. (WebCore::BitmapImage::drawPattern):
  42215. (WebCore::BitmapImage::checkForSolidColor):
  42216. 2010-09-16 Yury Semikhatsky <yurys@chromium.org>
  42217. Reviewed by Pavel Feldman.
  42218. Web Inspector: [REGRESSION] Scripts disappear from scripts panel after navigation
  42219. https://bugs.webkit.org/show_bug.cgi?id=45890
  42220. * inspector/InspectorController.cpp:
  42221. (WebCore::InspectorController::populateScriptObjects):
  42222. (WebCore::InspectorController::restoreDebugger):
  42223. (WebCore::InspectorController::restoreProfiler):
  42224. * inspector/InspectorController.h:
  42225. 2010-09-16 Satish Sampath <satish@chromium.org>
  42226. Unreviewed, fixing a build break with VS 2008.
  42227. Fix build break, add the namespace in a friend declaration to get MSVC recognize it properly.
  42228. https://bugs.webkit.org/show_bug.cgi?id=45893
  42229. * fileapi/FileWriter.h:
  42230. 2010-09-15 Philippe Normand <pnormand@igalia.com>
  42231. Reviewed by Martin Robinson.
  42232. [GStreamer] XOverlay API changes break the build
  42233. https://bugs.webkit.org/show_bug.cgi?id=45810
  42234. Cope with the GStreamer XOverlay API change for the upcoming
  42235. 0.10.31 version.
  42236. No new tests, build fix only.
  42237. * platform/graphics/gstreamer/GStreamerGWorld.cpp:
  42238. (WebCore::GStreamerGWorld::setWindowOverlay):
  42239. 2010-09-16 Andreas Kling <andreas.kling@nokia.com>
  42240. Reviewed by Tor Arne Vestbø.
  42241. [Qt] V8 port: Fix debug build
  42242. Add missing inclusion of <wtf/text/CString.h> where necessary for debug builds.
  42243. * history/PageCache.cpp:
  42244. * html/HTMLElement.cpp:
  42245. * html/HTMLMediaElement.cpp:
  42246. * loader/DocumentLoader.cpp:
  42247. * loader/icon/IconDatabase.cpp:
  42248. * loader/icon/IconLoader.cpp:
  42249. * storage/AbstractDatabase.cpp:
  42250. * storage/Database.cpp:
  42251. * storage/DatabaseSync.cpp:
  42252. * storage/DatabaseTracker.cpp:
  42253. 2010-09-16 Alexey Proskuryakov <ap@apple.com>
  42254. Reviewed by Adam Barth.
  42255. https://bugs.webkit.org/show_bug.cgi?id=45852
  42256. Range::selectNode and selectNodeContents misbehave when argument is in another document
  42257. Test: fast/dom/Range/select-node-different-document.html
  42258. There is nothing in DOM Traversal spec that says this shouldn't work, and it does work in
  42259. Firefox.
  42260. * dom/Range.cpp:
  42261. (WebCore::Range::setDocument):
  42262. (WebCore::Range::selectNode):
  42263. (WebCore::Range::selectNodeContents):
  42264. * dom/Range.h:
  42265. 2010-09-16 Andrey Kosyakov <caseq@chromium.org>
  42266. Reviewed by Pavel Feldman.
  42267. Web Inspector: [Resources panel] [HAR] Need a way to save timing data.
  42268. Added support to export HAR to file from Resources panel (conditional on Preferences)
  42269. Added support for HARLog (a higher-level aggregate than HAREntry)
  42270. https://bugs.webkit.org/show_bug.cgi?id=45663
  42271. * English.lproj/localizedStrings.js:
  42272. * inspector/front-end/HAREntry.js:
  42273. (WebInspector.HAREntry.prototype.build):
  42274. (WebInspector.HAREntry.prototype._buildTimings):
  42275. (WebInspector.HAREntry._toMilliseconds):
  42276. (WebInspector.HARLog):
  42277. (WebInspector.HARLog.prototype.build):
  42278. (WebInspector.HARLog.prototype._buildPages):
  42279. (WebInspector.HARLog.prototype._buildMainResourceTimings):
  42280. (WebInspector.HARLog.prototype._convertResource):
  42281. * inspector/front-end/ResourcesPanel.js:
  42282. (WebInspector.ResourcesPanel):
  42283. (WebInspector.ResourcesPanel.prototype.hide):
  42284. (WebInspector.ResourcesPanel.prototype._contextMenu):
  42285. (WebInspector.ResourcesPanel.prototype._exportAll):
  42286. (WebInspector.ResourcesPanel.prototype._exportResource):
  42287. * inspector/front-end/Settings.js:
  42288. * inspector/front-end/utilities.js:
  42289. ():
  42290. 2010-09-16 Eric Uhrhane <ericu@chromium.org>
  42291. Reviewed by Jian Li.
  42292. Unify FILE_SYSTEM and FILE_WRITER enables under the name FILE_SYSTEM.
  42293. https://bugs.webkit.org/show_bug.cgi?id=45798
  42294. * CMakeLists.txt:
  42295. * Configurations/FeatureDefines.xcconfig:
  42296. * GNUmakefile.am:
  42297. * WebCore.pro:
  42298. * dom/EventTarget.cpp:
  42299. * dom/EventTarget.h:
  42300. * dom/ExceptionCode.h:
  42301. * dom/ScriptExecutionContext.cpp:
  42302. (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
  42303. * dom/ScriptExecutionContext.h:
  42304. * fileapi/AsyncFileWriter.h:
  42305. * fileapi/FileEntry.cpp:
  42306. * fileapi/FileEntry.h:
  42307. * fileapi/FileEntry.idl:
  42308. * fileapi/FileError.h:
  42309. * fileapi/FileError.idl:
  42310. * fileapi/FileException.h:
  42311. * fileapi/FileException.idl:
  42312. * fileapi/FileStreamProxy.cpp:
  42313. * fileapi/FileStreamProxy.h:
  42314. * fileapi/FileThread.cpp:
  42315. * fileapi/FileThread.h:
  42316. * fileapi/FileWriter.cpp:
  42317. * fileapi/FileWriter.h:
  42318. * fileapi/FileWriter.idl:
  42319. * fileapi/FileWriterCallback.h:
  42320. * fileapi/FileWriterCallback.idl:
  42321. * fileapi/FileWriterClient.h:
  42322. * page/DOMWindow.idl:
  42323. * platform/AsyncFileStream.h:
  42324. * platform/FileStream.cpp:
  42325. * platform/FileStream.h:
  42326. * platform/FileStreamClient.h:
  42327. 2010-09-16 Marc-Antoine Ruel <maruel@chromium.org>
  42328. Reviewed by Dimitri Glazkov.
  42329. Convert WebCore.gyp to use regexp to excludes files instead of listing them in sources!.
  42330. This is necessary because sources! is processed before sources/. This makes
  42331. applying broader pattern in sources/ more difficult since it overrides the files
  42332. listed in sources!. Having all them in sources/ permits controlling the ordering
  42333. of the regexp, thus the final list of included files.
  42334. Fix Harfbuzz and VDMX source files includes in WebCore.gypi and WebCore.gyp
  42335. https://bugs.webkit.org/show_bug.cgi?id=45823
  42336. * WebCore.gyp/WebCore.gyp:
  42337. * WebCore.gypi:
  42338. 2010-09-16 Nat Duca <nduca@chromium.org>
  42339. Reviewed by Darin Fisher.
  42340. [chromium] Make compositor obey finish flag
  42341. https://bugs.webkit.org/show_bug.cgi?id=45552
  42342. The compositor should obey the finish flag on doComposite. This
  42343. flag causes the compositor to finish rendering before returning,
  42344. which is needed when resizing the window to avoid flashes of green.
  42345. * platform/graphics/chromium/LayerRendererChromium.cpp:
  42346. (WebCore::LayerRendererChromium::finish):
  42347. * platform/graphics/chromium/LayerRendererChromium.h:
  42348. 2010-09-16 Alejandro G. Castro <alex@igalia.com>
  42349. Reviewed by Xan Lopez.
  42350. GTK+ 3.x. updates, gtk_widget_size_request is deprecated and
  42351. "activate-slider" style property for scrollbars is gone.
  42352. * platform/gtk/PopupMenuGtk.cpp:
  42353. (WebCore::PopupMenuGtk::show):
  42354. * platform/gtk/gtk2drawing.c:
  42355. (moz_gtk_scrollbar_thumb_paint):
  42356. (moz_gtk_combo_box_paint):
  42357. 2010-09-16 Diego Gonzalez <diegohcg@webkit.org>
  42358. Reviewed by Kenneth Rohde Christiansen.
  42359. [Qt] Remove FrameLoaderClientQt::webFrame() to use NetworkingContext to get the WebFrame to avoid layering violations
  42360. https://bugs.webkit.org/show_bug.cgi?id=42293
  42361. * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
  42362. (WebCore::MediaPlayerPrivate::commitLoad):
  42363. 2010-09-16 Ryuan Choi <ryuan.choi@samsung.com>
  42364. Unreviewed build fix for EFL
  42365. [EFL] REGRESSION(67567) FontCacheCairo was removed
  42366. https://bugs.webkit.org/show_bug.cgi?id=45858
  42367. * CMakeListsEfl.txt:
  42368. 2010-09-16 Yong Li <yoli@rim.com>
  42369. Reviewed by George Staikos.
  42370. https://bugs.webkit.org/show_bug.cgi?id=37117
  42371. Add platform-independent JPEG/PNG image encoders that
  42372. work with big endian RGBA source data.
  42373. There's no layout test because this patch does't make
  42374. any port start using the encoders.
  42375. * platform/image-encoders/JPEGImageEncoder.cpp: Added.
  42376. * platform/image-encoders/JPEGImageEncoder.h: Added.
  42377. * platform/image-encoders/PNGImageEncoder.cpp: Added.
  42378. * platform/image-encoders/PNGImageEncoder.h: Added.
  42379. 2010-09-15 Jeremy Orlow <jorlow@chromium.org>
  42380. Reviewed by Steve Block.
  42381. Allow the embedder to specify the base path for IndexedDB.
  42382. https://bugs.webkit.org/show_bug.cgi?id=45815
  42383. Existing tests provide coverage. Use the indexedDBPath parameter that's
  42384. already on the group settings object. Pass this parameter into the backend
  42385. which will use it rather than a hard coded tmp directory location. If
  42386. nothing is specified, assume it should be an in-memory temporary database.
  42387. (This is useful for bringup and Chromium's incognito mode.)
  42388. * storage/IDBFactory.cpp:
  42389. (WebCore::IDBFactory::open):
  42390. * storage/IDBFactoryBackendImpl.cpp:
  42391. (WebCore::openSQLiteDatabase):
  42392. (WebCore::createTables):
  42393. (WebCore::IDBFactoryBackendImpl::open):
  42394. * storage/IDBFactoryBackendImpl.h:
  42395. * storage/IDBFactoryBackendInterface.h:
  42396. 2010-09-16 Yong Li <yoli@rim.com>
  42397. Reviewed by George Staikos.
  42398. Fix the bug that GIF image down sampling can miss some lines.
  42399. https://bugs.webkit.org/show_bug.cgi?id=45322
  42400. Test: fast/images/gif-large-checkerboard.html
  42401. * platform/image-decoders/gif/GIFImageDecoder.cpp:
  42402. (WebCore::GIFImageDecoder::haveDecodedRow):
  42403. 2010-09-16 Philippe Normand <pnormand@igalia.com>
  42404. Reviewed by Andreas Kling.
  42405. [GStreamer] un-needed header includes in MediaPlayerPrivate
  42406. https://bugs.webkit.org/show_bug.cgi?id=45877
  42407. Include only the headers we need.
  42408. No new tests, #includes cleanup only.
  42409. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  42410. 2010-09-16 Pavel Feldman <pfeldman@chromium.org>
  42411. Reviewed by Yury Semikhatsky.
  42412. Web Inspector: console.group(object) does not allow object to be expanded.
  42413. https://bugs.webkit.org/show_bug.cgi?id=45806
  42414. * inspector/front-end/ConsoleView.js:
  42415. (WebInspector.ConsoleGroup.prototype.addMessage):
  42416. * inspector/front-end/treeoutline.js:
  42417. (TreeElement.treeElementToggled):
  42418. 2010-09-08 Jeremy Orlow <jorlow@chromium.org>
  42419. Reviewed by Steve Block.
  42420. Complete index support for IndexedDB
  42421. https://bugs.webkit.org/show_bug.cgi?id=45386
  42422. Add the rest of the index related API for IndexedDB. This
  42423. includes cursor suport. A bunch of code was also refactored
  42424. since it is shared between indexes and objectStores.
  42425. Tests: storage/indexeddb/index-basics.html
  42426. storage/indexeddb/index-cursor.html
  42427. + additions to others.
  42428. * storage/IDBAny.cpp:
  42429. (WebCore::IDBAny::set):
  42430. * storage/IDBCursor.cpp:
  42431. (WebCore::IDBCursor::value):
  42432. * storage/IDBCursorBackendImpl.cpp:
  42433. (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):
  42434. (WebCore::IDBCursorBackendImpl::value):
  42435. (WebCore::IDBCursorBackendImpl::update):
  42436. (WebCore::IDBCursorBackendImpl::continueFunction):
  42437. (WebCore::IDBCursorBackendImpl::remove):
  42438. (WebCore::IDBCursorBackendImpl::loadCurrentRow):
  42439. (WebCore::IDBCursorBackendImpl::database):
  42440. * storage/IDBCursorBackendImpl.h:
  42441. (WebCore::IDBCursorBackendImpl::create):
  42442. * storage/IDBCursorBackendInterface.h:
  42443. * storage/IDBFactoryBackendImpl.cpp:
  42444. (WebCore::createTables):
  42445. * storage/IDBIndex.cpp:
  42446. (WebCore::IDBIndex::openObjectCursor):
  42447. (WebCore::IDBIndex::openCursor):
  42448. (WebCore::IDBIndex::getObject):
  42449. (WebCore::IDBIndex::get):
  42450. * storage/IDBIndex.h:
  42451. (WebCore::IDBIndex::storeName):
  42452. * storage/IDBIndex.idl:
  42453. * storage/IDBIndexBackendImpl.cpp:
  42454. (WebCore::IDBIndexBackendImpl::storeName):
  42455. (WebCore::openCursorInternal):
  42456. (WebCore::IDBIndexBackendImpl::openObjectCursor):
  42457. (WebCore::IDBIndexBackendImpl::openCursor):
  42458. (WebCore::getInternal):
  42459. (WebCore::IDBIndexBackendImpl::getObject):
  42460. (WebCore::IDBIndexBackendImpl::get):
  42461. * storage/IDBIndexBackendImpl.h:
  42462. (WebCore::IDBIndexBackendImpl::objectStore):
  42463. * storage/IDBIndexBackendInterface.h:
  42464. * storage/IDBKey.cpp:
  42465. (WebCore::IDBKey::fromQuery):
  42466. (WebCore::IDBKey::whereSyntax):
  42467. (WebCore::IDBKey::leftCursorWhereFragment):
  42468. (WebCore::IDBKey::rightCursorWhereFragment):
  42469. * storage/IDBKey.h:
  42470. * storage/IDBKeyRange.cpp:
  42471. (WebCore::IDBKeyRange::leftWhereClauseComparisonOperator):
  42472. (WebCore::IDBKeyRange::rightWhereClauseComparisonOperator):
  42473. * storage/IDBKeyRange.h:
  42474. * storage/IDBObjectStoreBackendImpl.cpp:
  42475. (WebCore::IDBObjectStoreBackendImpl::openCursor):
  42476. * storage/IDBRequest.cpp:
  42477. (WebCore::IDBRequest::timerFired):
  42478. 2010-09-15 Simon Fraser <simon.fraser@apple.com>
  42479. Fix chromium build.
  42480. * platform/graphics/chromium/GraphicsLayerChromium.cpp:
  42481. 2010-09-15 Simon Fraser <simon.fraser@apple.com>
  42482. Reviewed by Adam Roben.
  42483. https://bugs.webkit.org/show_bug.cgi?id=44715
  42484. maps.google.com flips upside down when zooming map using trackpad in WebKit2 on Mac
  42485. Remove the concept of geometry flipping from GraphicsLayer; geometry flipping will
  42486. be taken care of in platform code without the need to complicate the GraphicsLayer API.
  42487. RenderLayerCompositor no longer sets the geometry orientation for the root
  42488. platform layer; platform-specific code does this instead.
  42489. This fixes flipped layers in WebKit2, since WebKit2 was already flipping
  42490. geometry, and then RenderLayerCompositor was doing an additional flip.
  42491. * platform/graphics/GraphicsLayer.cpp:
  42492. (WebCore::GraphicsLayer::GraphicsLayer):
  42493. * platform/graphics/GraphicsLayer.h:
  42494. * platform/graphics/chromium/GraphicsLayerChromium.cpp:
  42495. * platform/graphics/chromium/GraphicsLayerChromium.h:
  42496. * platform/graphics/mac/GraphicsLayerCA.h:
  42497. * platform/graphics/mac/GraphicsLayerCA.mm:
  42498. (WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers):
  42499. (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
  42500. (WebCore::GraphicsLayerCA::defaultContentsOrientation):
  42501. * platform/graphics/qt/GraphicsLayerQt.cpp:
  42502. (WebCore::GraphicsLayerQtImpl::flushChanges):
  42503. * platform/graphics/qt/GraphicsLayerQt.h:
  42504. * platform/graphics/win/GraphicsLayerCACF.cpp:
  42505. (WebCore::GraphicsLayerCACF::swapFromOrToTiledLayer):
  42506. * platform/graphics/win/GraphicsLayerCACF.h:
  42507. * platform/graphics/win/WKCACFLayerRenderer.cpp:
  42508. (WebCore::WKCACFLayerRenderer::setRootChildLayer):
  42509. * rendering/RenderLayerCompositor.cpp:
  42510. (WebCore::RenderLayerCompositor::ensureRootPlatformLayer):
  42511. 2010-09-15 Julien Chaffraix <jchaffraix@codeaurora.org>
  42512. Unreviewed.
  42513. Reverting my changes as it is breaking several tests on Gtk and Qt.
  42514. * css/CSSParser.cpp:
  42515. (WebCore::CSSParser::parseColor):
  42516. * css/CSSParser.h:
  42517. * html/canvas/CanvasRenderingContext2D.cpp:
  42518. (WebCore::CanvasRenderingContext2D::setStrokeColor):
  42519. (WebCore::CanvasRenderingContext2D::setFillColor):
  42520. * html/canvas/CanvasStyle.cpp:
  42521. (WebCore::CanvasStyle::createFromString):
  42522. * html/canvas/CanvasStyle.h:
  42523. 2010-09-15 Julien Chaffraix <jchaffraix@codeaurora.org>
  42524. Reviewed by Andreas Kling.
  42525. Parse system colors in the HTML5 canvas context.
  42526. https://bugs.webkit.org/show_bug.cgi?id=39168
  42527. Test: fast/css/test-setting-canvas-color.html
  42528. Based on previous work by Jan Erik Hanssen <jhanssen@codeaurora.org>
  42529. * css/CSSParser.cpp:
  42530. (WebCore::CSSParser::parseColor): Changed the function to better match our
  42531. early return policy. Also we now return false when we don't parse the color.
  42532. This is needed for createFromString to fallback to using parseSystemColor.
  42533. (WebCore::CSSParser::parseSystemColor): Made use of the RenderTheme to get
  42534. the system colors.
  42535. * css/CSSParser.h: Added the new parseSystemColor method.
  42536. * html/canvas/CanvasRenderingContext2D.cpp:
  42537. (WebCore::CanvasRenderingContext2D::setStrokeColor): Pass the document to createFromString.
  42538. (WebCore::CanvasRenderingContext2D::setFillColor): Ditto.
  42539. * html/canvas/CanvasStyle.cpp:
  42540. (WebCore::CanvasStyle::createFromString): Try to parse the color using CSSParser::parseColor
  42541. and fall back to parseSystemColor if it did not work.
  42542. * html/canvas/CanvasStyle.h: Added the new Document* parameter to createFromString.
  42543. 2010-09-14 Erik Arvidsson <arv@chromium.org>
  42544. Reviewed by Darin Adler.
  42545. getComputedStyle() returns different values for different zoom levels
  42546. https://bugs.webkit.org/show_bug.cgi?id=32230
  42547. Test: fast/css/getComputedStyle/computed-style-with-zoom.html
  42548. * css/CSSComputedStyleDeclaration.cpp:
  42549. (WebCore::zoomAdjustedPixelValue):
  42550. (WebCore::zoomAdjustedNumberValue):
  42551. (WebCore::valueForReflection):
  42552. (WebCore::getPositionOffsetValue):
  42553. (WebCore::getBorderRadiusCornerValue):
  42554. (WebCore::computedTransform):
  42555. (WebCore::CSSComputedStyleDeclaration::getFontSizeCSSValuePreferringKeyword):
  42556. (WebCore::CSSComputedStyleDeclaration::valueForShadow):
  42557. (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  42558. * css/CSSComputedStyleDeclaration.h:
  42559. * css/SVGCSSComputedStyleDeclaration.cpp:
  42560. (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue):
  42561. * rendering/RenderObject.h:
  42562. (WebCore::adjustForAbsoluteZoom):
  42563. * rendering/style/RenderStyle.h:
  42564. (WebCore::adjustForAbsoluteZoom):
  42565. 2010-09-14 Martin Robinson <mrobinson@igalia.com>
  42566. Reviewed by Xan Lopez.
  42567. [GTK] Fully separate Pango and FreeType font backends
  42568. https://bugs.webkit.org/show_bug.cgi?id=27442
  42569. Split FontPlatformData.h into separate versions for Pango, FreeType and WinCairo.
  42570. Include the correct file via #ifdef'd includes, like the Chromium port. Also split
  42571. FontCacheCairo.cpp into Pango and FreeType versions, as they had almost no code in
  42572. common. Finally, rename FontPlatformDataCairo to FontPlatformDataFreeType, as this
  42573. compilation unit is used only by the FreeType backend. This change is important to
  42574. prevent upcoming fixes to the FreeType backend from affecting other backends.
  42575. No new tests as functionality has not changed.
  42576. * CMakeListsEfl.txt: Update source lists.
  42577. * GNUmakefile.am: Update source lists.
  42578. * platform/graphics/cairo/FontCacheCairo.cpp: Removed.
  42579. * platform/graphics/cairo/FontCacheFreeType.cpp: Added.
  42580. (WebCore::FontCache::platformInit):
  42581. (WebCore::FontCache::getFontDataForCharacters):
  42582. (WebCore::FontCache::getSimilarFontPlatformData):
  42583. (WebCore::FontCache::getLastResortFallbackFont):
  42584. (WebCore::FontCache::getTraitsInFamily):
  42585. (WebCore::isWellKnownFontName):
  42586. (WebCore::FontCache::createFontPlatformData):
  42587. * platform/graphics/cairo/FontPlatformData.h:
  42588. * platform/graphics/cairo/FontPlatformDataFreeType.cpp: Renamed from WebCore/platform/graphics/cairo/FontPlatformDataCairo.cpp.
  42589. (WebCore::FontPlatformData::FontPlatformData):
  42590. (WebCore::FontPlatformData::operator=):
  42591. (WebCore::FontPlatformData::init):
  42592. (WebCore::FontPlatformData::~FontPlatformData):
  42593. (WebCore::FontPlatformData::isFixedPitch):
  42594. (WebCore::FontPlatformData::operator==):
  42595. (WebCore::FontPlatformData::description):
  42596. * platform/graphics/cairo/FontPlatformDataFreeType.h: Added.
  42597. (WebCore::FontPlatformData::FontPlatformData):
  42598. (WebCore::FontPlatformData::size):
  42599. (WebCore::FontPlatformData::setSize):
  42600. (WebCore::FontPlatformData::syntheticBold):
  42601. (WebCore::FontPlatformData::syntheticOblique):
  42602. (WebCore::FontPlatformData::scaledFont):
  42603. (WebCore::FontPlatformData::hash):
  42604. (WebCore::FontPlatformData::isHashTableDeletedValue):
  42605. (WebCore::FontPlatformData::hashTableDeletedFontValue):
  42606. * platform/graphics/gtk/FontCachePango.cpp: Added.
  42607. (WebCore::FontCache::platformInit):
  42608. (WebCore::FontCache::getFontDataForCharacters):
  42609. (WebCore::FontCache::getSimilarFontPlatformData):
  42610. (WebCore::FontCache::getLastResortFallbackFont):
  42611. (WebCore::FontCache::getTraitsInFamily):
  42612. (WebCore::FontCache::createFontPlatformData):
  42613. * platform/graphics/gtk/FontPlatformDataPango.h: Added.
  42614. (WebCore::FontPlatformData::FontPlatformData):
  42615. (WebCore::FontPlatformData::size):
  42616. (WebCore::FontPlatformData::setSize):
  42617. (WebCore::FontPlatformData::syntheticBold):
  42618. (WebCore::FontPlatformData::syntheticOblique):
  42619. (WebCore::FontPlatformData::scaledFont):
  42620. (WebCore::FontPlatformData::hash):
  42621. (WebCore::FontPlatformData::isHashTableDeletedValue):
  42622. (WebCore::FontPlatformData::hashTableDeletedFontValue):
  42623. * platform/graphics/win/FontPlatformDataCairoWin.h: Added.
  42624. (WebCore::FontPlatformData::FontPlatformData):
  42625. (WebCore::FontPlatformData::hfont):
  42626. (WebCore::FontPlatformData::useGDI):
  42627. (WebCore::FontPlatformData::fontFace):
  42628. (WebCore::FontPlatformData::size):
  42629. (WebCore::FontPlatformData::setSize):
  42630. (WebCore::FontPlatformData::syntheticBold):
  42631. (WebCore::FontPlatformData::syntheticOblique):
  42632. (WebCore::FontPlatformData::scaledFont):
  42633. (WebCore::FontPlatformData::hash):
  42634. (WebCore::FontPlatformData::isHashTableDeletedValue):
  42635. 2010-09-15 Chris Fleizach <cfleizach@apple.com>
  42636. Reviewed by Simon Fraser.
  42637. AX: when text is auto-truncated, accessibility bounds are wrong
  42638. https://bugs.webkit.org/show_bug.cgi?id=45793
  42639. Allow accessibility to retrieve the absoluteQuads of a text node that
  42640. clips to the ellipsis.
  42641. Test: accessibility/ellipsis-text.html
  42642. * accessibility/AccessibilityRenderObject.cpp:
  42643. (WebCore::AccessibilityRenderObject::boundingBoxRect):
  42644. * rendering/RenderText.cpp:
  42645. (WebCore::ellipsisRectForBox):
  42646. Make a common method to retrieve the ellipsis rect.
  42647. (WebCore::RenderText::absoluteQuads):
  42648. Default into the absoluteQuads method that allows for ellipsis clipping.
  42649. (WebCore::RenderText::selectionRectForRepaint):
  42650. Use the common method for retrieving the ellipsis.
  42651. * rendering/RenderText.h:
  42652. 2010-09-15 Ariya Hidayat <ariya@sencha.com>
  42653. [Qt] Improve the speed of blur shadow
  42654. https://bugs.webkit.org/show_bug.cgi?id=44222
  42655. Rewrite the shadow blur function with loop unrolls and sliding step
  42656. unification for both horizontal and vertical directions.
  42657. This gives significant performance improvement on most cases.
  42658. * platform/graphics/qt/ContextShadow.cpp:
  42659. (WebCore::shadowBlur):
  42660. 2010-09-14 Pavel Feldman <pfeldman@chromium.org>
  42661. Reviewed by Yury Semikhatsky.
  42662. (Take 2). Web Inspector: Provide network-based load timing.
  42663. Before this change, inspector used timers taken from
  42664. within WebCore notifications (that are by definition
  42665. synchronous and serialized). As a result, timing was
  42666. affected by the routines running on the main thread
  42667. (JavaScript and such).
  42668. https://bugs.webkit.org/show_bug.cgi?id=45664
  42669. * inspector/InspectorController.cpp:
  42670. (WebCore::InspectorController::willSendRequest):
  42671. (WebCore::InspectorController::didFinishLoading):
  42672. (WebCore::InspectorController::didFailLoading):
  42673. * inspector/InspectorController.h:
  42674. * inspector/InspectorResource.cpp:
  42675. (WebCore::InspectorResource::endTiming):
  42676. * inspector/InspectorResource.h:
  42677. * loader/PingLoader.h:
  42678. (WebCore::PingLoader::didFinishLoading):
  42679. * loader/ResourceLoadNotifier.cpp:
  42680. (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
  42681. * loader/ResourceLoader.cpp:
  42682. (WebCore::ResourceLoader::didFinishLoading):
  42683. * loader/ResourceLoader.h:
  42684. * loader/appcache/ApplicationCacheGroup.cpp:
  42685. (WebCore::ApplicationCacheGroup::didFinishLoading):
  42686. * loader/appcache/ApplicationCacheGroup.h:
  42687. * loader/icon/IconFetcher.cpp:
  42688. (WebCore::IconFetcher::didFinishLoading):
  42689. * loader/icon/IconFetcher.h:
  42690. * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
  42691. (StreamingClient::didFinishLoading):
  42692. * platform/network/BlobResourceHandle.cpp:
  42693. (WebCore::BlobResourceHandle::notifyFinish):
  42694. * platform/network/ResourceHandleClient.h:
  42695. (WebCore::ResourceHandleClient::didFinishLoading):
  42696. * platform/network/ResourceLoadTiming.h:
  42697. (WebCore::ResourceLoadTiming::deepCopy):
  42698. (WebCore::ResourceLoadTiming::operator==):
  42699. (WebCore::ResourceLoadTiming::ResourceLoadTiming):
  42700. * platform/network/cf/ResourceHandleCFNet.cpp:
  42701. (WebCore::didFinishLoading):
  42702. * platform/network/curl/ResourceHandleCurl.cpp:
  42703. (WebCore::WebCoreSynchronousLoader::didFinishLoading):
  42704. * platform/network/curl/ResourceHandleManager.cpp:
  42705. (WebCore::ResourceHandleManager::downloadTimerCallback):
  42706. (WebCore::parseDataUrl):
  42707. * platform/network/mac/ResourceHandleMac.mm:
  42708. (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
  42709. (WebCoreSynchronousLoaderClient::didFinishLoading):
  42710. * platform/network/qt/QNetworkReplyHandler.cpp:
  42711. (WebCore::QNetworkReplyHandler::finish):
  42712. * platform/network/qt/ResourceHandleQt.cpp:
  42713. (WebCore::WebCoreSynchronousLoader::didFinishLoading):
  42714. * platform/network/soup/ResourceHandleSoup.cpp:
  42715. (WebCore::WebCoreSynchronousLoader::didFinishLoading):
  42716. (WebCore::WebCoreSynchronousLoader::didFail):
  42717. * platform/network/win/ResourceHandleWin.cpp:
  42718. (WebCore::WebCoreSynchronousLoader::didFinishLoading):
  42719. (WebCore::ResourceHandle::onRequestComplete):
  42720. (WebCore::ResourceHandle::fileLoadTimer):
  42721. (WebCore::ResourceHandle::cancel):
  42722. 2010-09-15 Sheriff Bot <webkit.review.bot@gmail.com>
  42723. Unreviewed, rolling out r67551.
  42724. http://trac.webkit.org/changeset/67551
  42725. https://bugs.webkit.org/show_bug.cgi?id=45816
  42726. "Plugin tests fail" (Requested by yurys on #webkit).
  42727. * inspector/InspectorController.cpp:
  42728. (WebCore::InspectorController::willSendRequest):
  42729. (WebCore::InspectorController::didFinishLoading):
  42730. (WebCore::InspectorController::didFailLoading):
  42731. (WebCore::InspectorController::didCloseWebSocket):
  42732. * inspector/InspectorController.h:
  42733. * inspector/InspectorResource.cpp:
  42734. (WebCore::InspectorResource::endTiming):
  42735. * inspector/InspectorResource.h:
  42736. * loader/DocumentLoader.cpp:
  42737. (WebCore::DocumentLoader::substituteResourceDeliveryTimerFired):
  42738. * loader/MainResourceLoader.cpp:
  42739. (WebCore::MainResourceLoader::continueAfterContentPolicy):
  42740. (WebCore::MainResourceLoader::didFinishLoading):
  42741. * loader/MainResourceLoader.h:
  42742. * loader/NetscapePlugInStreamLoader.cpp:
  42743. (WebCore::NetscapePlugInStreamLoader::didFinishLoading):
  42744. * loader/PingLoader.h:
  42745. (WebCore::PingLoader::didFinishLoading):
  42746. * loader/ResourceLoadNotifier.cpp:
  42747. (WebCore::ResourceLoadNotifier::didFinishLoad):
  42748. (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
  42749. (WebCore::ResourceLoadNotifier::sendRemainingDelegateMessages):
  42750. * loader/ResourceLoadNotifier.h:
  42751. * loader/ResourceLoader.cpp:
  42752. (WebCore::ResourceLoader::didFinishLoading):
  42753. (WebCore::ResourceLoader::didFinishLoadingOnePart):
  42754. * loader/ResourceLoader.h:
  42755. * loader/SubresourceLoader.cpp:
  42756. (WebCore::SubresourceLoader::didReceiveResponse):
  42757. (WebCore::SubresourceLoader::didFinishLoading):
  42758. * loader/SubresourceLoader.h:
  42759. * loader/appcache/ApplicationCacheGroup.cpp:
  42760. (WebCore::ApplicationCacheGroup::didFinishLoading):
  42761. * loader/appcache/ApplicationCacheGroup.h:
  42762. * loader/icon/IconFetcher.cpp:
  42763. (WebCore::IconFetcher::didFinishLoading):
  42764. * loader/icon/IconFetcher.h:
  42765. * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
  42766. (StreamingClient::didFinishLoading):
  42767. * platform/network/BlobResourceHandle.cpp:
  42768. (WebCore::BlobResourceHandle::notifyFinish):
  42769. * platform/network/ResourceHandleClient.h:
  42770. (WebCore::ResourceHandleClient::didFinishLoading):
  42771. * platform/network/cf/ResourceHandleCFNet.cpp:
  42772. (WebCore::didFinishLoading):
  42773. (WebCore::WebCoreSynchronousLoaderClient::didFinishLoading):
  42774. * platform/network/curl/ResourceHandleCurl.cpp:
  42775. (WebCore::WebCoreSynchronousLoader::didFinishLoading):
  42776. * platform/network/curl/ResourceHandleManager.cpp:
  42777. (WebCore::ResourceHandleManager::downloadTimerCallback):
  42778. (WebCore::parseDataUrl):
  42779. * platform/network/mac/ResourceHandleMac.mm:
  42780. (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
  42781. (WebCoreSynchronousLoaderClient::didFinishLoading):
  42782. * platform/network/qt/QNetworkReplyHandler.cpp:
  42783. (WebCore::QNetworkReplyHandler::finish):
  42784. * platform/network/qt/ResourceHandleQt.cpp:
  42785. (WebCore::WebCoreSynchronousLoader::didFinishLoading):
  42786. * platform/network/soup/ResourceHandleSoup.cpp:
  42787. (WebCore::WebCoreSynchronousLoader::didFinishLoading):
  42788. (WebCore::WebCoreSynchronousLoader::didFail):
  42789. (WebCore::finishedCallback):
  42790. (WebCore::parseDataUrl):
  42791. * platform/network/win/ResourceHandleWin.cpp:
  42792. (WebCore::WebCoreSynchronousLoader::didFinishLoading):
  42793. (WebCore::ResourceHandle::onRequestComplete):
  42794. (WebCore::ResourceHandle::fileLoadTimer):
  42795. (WebCore::ResourceHandle::cancel):
  42796. 2010-09-14 Pavel Feldman <pfeldman@chromium.org>
  42797. Reviewed by Yury Semikhatsky.
  42798. Web Inspector: Provide network-based load timing.
  42799. Before this change, inspector used timers taken from
  42800. within WebCore notifications (that are by definition
  42801. synchronous and serialized). As a result, timing was
  42802. affected by the routines running on the main thread
  42803. (JavaScript and such).
  42804. https://bugs.webkit.org/show_bug.cgi?id=45664
  42805. * inspector/InspectorController.cpp:
  42806. (WebCore::InspectorController::willSendRequest):
  42807. (WebCore::InspectorController::didFinishLoading):
  42808. (WebCore::InspectorController::didFailLoading):
  42809. * inspector/InspectorController.h:
  42810. * inspector/InspectorResource.cpp:
  42811. (WebCore::InspectorResource::endTiming):
  42812. * inspector/InspectorResource.h:
  42813. * loader/PingLoader.h:
  42814. (WebCore::PingLoader::didFinishLoading):
  42815. * loader/ResourceLoadNotifier.cpp:
  42816. (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
  42817. * loader/ResourceLoader.cpp:
  42818. (WebCore::ResourceLoader::didFinishLoading):
  42819. * loader/ResourceLoader.h:
  42820. * loader/appcache/ApplicationCacheGroup.cpp:
  42821. (WebCore::ApplicationCacheGroup::didFinishLoading):
  42822. * loader/appcache/ApplicationCacheGroup.h:
  42823. * loader/icon/IconFetcher.cpp:
  42824. (WebCore::IconFetcher::didFinishLoading):
  42825. * loader/icon/IconFetcher.h:
  42826. * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
  42827. (StreamingClient::didFinishLoading):
  42828. * platform/network/BlobResourceHandle.cpp:
  42829. (WebCore::BlobResourceHandle::notifyFinish):
  42830. * platform/network/ResourceHandleClient.h:
  42831. (WebCore::ResourceHandleClient::didFinishLoading):
  42832. * platform/network/ResourceLoadTiming.h:
  42833. (WebCore::ResourceLoadTiming::deepCopy):
  42834. (WebCore::ResourceLoadTiming::operator==):
  42835. (WebCore::ResourceLoadTiming::ResourceLoadTiming):
  42836. * platform/network/cf/ResourceHandleCFNet.cpp:
  42837. (WebCore::didFinishLoading):
  42838. * platform/network/curl/ResourceHandleCurl.cpp:
  42839. (WebCore::WebCoreSynchronousLoader::didFinishLoading):
  42840. * platform/network/curl/ResourceHandleManager.cpp:
  42841. (WebCore::ResourceHandleManager::downloadTimerCallback):
  42842. (WebCore::parseDataUrl):
  42843. * platform/network/mac/ResourceHandleMac.mm:
  42844. (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
  42845. (WebCoreSynchronousLoaderClient::didFinishLoading):
  42846. * platform/network/qt/QNetworkReplyHandler.cpp:
  42847. (WebCore::QNetworkReplyHandler::finish):
  42848. * platform/network/qt/ResourceHandleQt.cpp:
  42849. (WebCore::WebCoreSynchronousLoader::didFinishLoading):
  42850. * platform/network/soup/ResourceHandleSoup.cpp:
  42851. (WebCore::WebCoreSynchronousLoader::didFinishLoading):
  42852. (WebCore::WebCoreSynchronousLoader::didFail):
  42853. * platform/network/win/ResourceHandleWin.cpp:
  42854. (WebCore::WebCoreSynchronousLoader::didFinishLoading):
  42855. (WebCore::ResourceHandle::onRequestComplete):
  42856. (WebCore::ResourceHandle::fileLoadTimer):
  42857. (WebCore::ResourceHandle::cancel):
  42858. 2010-09-14 Ilya Tikhonovsky <loislo@chromium.org>
  42859. Reviewed by Yury Semikhatsky.
  42860. WebInspector: small refactoring for monitorXHR backend property.
  42861. Our Inspector API is quite big and can be simplified a bit.
  42862. As example for single backend property like monitoringXHR we
  42863. have 4 functions in the API. Two functions for frontend
  42864. enableMonitoringXHR/disableMonitoringXHR and
  42865. two functions for backend monitoringXHRWasEnabled and
  42866. monitoringXHRWasDisabled. These functions can be replaced by
  42867. one setMonitoringXHR with one 'in' and one 'out' argument.
  42868. The initial state of the flag can be gathered from backend
  42869. with help of getSettings call where additional section was
  42870. added for backend state information.
  42871. https://bugs.webkit.org/show_bug.cgi?id=45759
  42872. * inspector/Inspector.idl:
  42873. * inspector/InspectorController.cpp:
  42874. * inspector/InspectorController.h:
  42875. * inspector/front-end/ConsoleView.js:
  42876. * inspector/front-end/Settings.js:
  42877. * inspector/front-end/inspector.js:
  42878. 2010-09-15 Pavel Feldman <pfeldman@chromium.org>
  42879. Reviewed by Yury Semikhatsky.
  42880. Web Inspector: Multiline console does not work on Windows / Linux.
  42881. https://bugs.webkit.org/show_bug.cgi?id=45807
  42882. * inspector/front-end/ConsoleView.js:
  42883. 2010-09-15 Renata Hodovan <reni@inf.u-szeged.hu>
  42884. Reviewed by Dirk Schulze.
  42885. SVGFETurbulenceElement doesn't support dynamic invalidation, when attributes change.
  42886. A typo (noStich instead of nostitch) is also fixed in this patch.
  42887. https://bugs.webkit.org/show_bug.cgi?id=45809
  42888. Tests: svg/dynamic-updates/SVGFETurbulenceElement-dom-baseFrequency-attr.html
  42889. svg/dynamic-updates/SVGFETurbulenceElement-dom-numOctaves-attr.html
  42890. svg/dynamic-updates/SVGFETurbulenceElement-dom-seed-attr.html
  42891. svg/dynamic-updates/SVGFETurbulenceElement-dom-stitchTiles-attr.html
  42892. svg/dynamic-updates/SVGFETurbulenceElement-dom-type-attr.html
  42893. svg/dynamic-updates/SVGFETurbulenceElement-svgdom-baseFrequency-prop.html
  42894. svg/dynamic-updates/SVGFETurbulenceElement-svgdom-numOctaves-prop.html
  42895. svg/dynamic-updates/SVGFETurbulenceElement-svgdom-seed-prop.html
  42896. svg/dynamic-updates/SVGFETurbulenceElement-svgdom-stitchTiles-prop.html
  42897. svg/dynamic-updates/SVGFETurbulenceElement-svgdom-type-prop.html
  42898. * svg/SVGFETurbulenceElement.cpp:
  42899. (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
  42900. (WebCore::SVGFETurbulenceElement::svgAttributeChanged):
  42901. * svg/SVGFETurbulenceElement.h:
  42902. 2010-09-15 Patrick Gansterer <paroga@paroga.com>
  42903. Reviewed by Kenneth Rohde Christiansen.
  42904. [WINCE] Avoid memcpy in TextCodecWinCE::encode
  42905. https://bugs.webkit.org/show_bug.cgi?id=45468
  42906. * platform/text/wince/TextCodecWinCE.cpp:
  42907. (WebCore::TextCodecWinCE::encode):
  42908. 2010-09-14 Kinuko Yasuda <kinuko@chromium.org>
  42909. Reviewed by Dumitru Daniliuc.
  42910. Add custom binding code for DirectoryEntry to allow JSON parameters for Flags
  42911. https://bugs.webkit.org/show_bug.cgi?id=45724
  42912. No new tests; tests will be added later.
  42913. * CMakeLists.txt:
  42914. * GNUmakefile.am:
  42915. * WebCore.gypi:
  42916. * WebCore.pro:
  42917. * WebCore.vcproj/WebCore.vcproj:
  42918. * WebCore.xcodeproj/project.pbxproj:
  42919. * bindings/js/JSDirectoryEntryCustom.cpp: Added.
  42920. (WebCore::JSDirectoryEntry::getFile):
  42921. (WebCore::JSDirectoryEntry::getDirectory):
  42922. * bindings/v8/custom/V8DirectoryEntryCustom.cpp: Added.
  42923. (WebCore::V8DirectoryEntry::getDirectoryCallback):
  42924. (WebCore::V8DirectoryEntry::getFileCallback):
  42925. * fileapi/DirectoryEntry.h:
  42926. * fileapi/DirectoryEntry.idl:
  42927. 2010-09-14 Jia Pu <jpu@apple.com>
  42928. Reviewed by Dan Bernstein.
  42929. Only intercept ESC key press when autocorrection UI is visible.
  42930. https://bugs.webkit.org/show_bug.cgi?id=45071
  42931. Only intercept ESC key when autocorrection panel is shown. Otherwise pressing
  42932. ESC will cancel current loading like usual.
  42933. * editing/Editor.cpp:
  42934. (WebCore::Editor::isShowingCorrectionPanel): Query editor client whether autocorrection
  42935. panel is shown.
  42936. * editing/Editor.h: Added declaration of isShowingCorrectionPanel().
  42937. * editing/EditorCommand.cpp:
  42938. (WebCore::supportedDismissCorrectionPanel): Only support executeCancelOperation()
  42939. when autocorrection panel is shown.
  42940. (WebCore::createCommandMap): Replaced isSupported function pointer for
  42941. executeCancelOperation() command with supportedDismissCorrectionPanel().
  42942. * loader/EmptyClients.h:
  42943. (WebCore::EmptyEditorClient::isShowingCorrectionPanel): Dummy implementation of
  42944. new member method declared in base class.
  42945. * page/EditorClient.h: Declared new member method isShowingCorrectionPanel().
  42946. 2010-09-14 Sheriff Bot <webkit.review.bot@gmail.com>
  42947. Unreviewed, rolling out r67503.
  42948. http://trac.webkit.org/changeset/67503
  42949. https://bugs.webkit.org/show_bug.cgi?id=45802
  42950. This patch broke GTK builds (Requested by jianli_ on #webkit).
  42951. * fileapi/ThreadableBlobRegistry.cpp:
  42952. (WebCore::BlobRegistryContext::BlobRegistryContext):
  42953. * loader/ResourceLoader.cpp:
  42954. (WebCore::ResourceLoader::resourceData):
  42955. (WebCore::ResourceLoader::addData):
  42956. * platform/network/BlobResourceHandle.cpp:
  42957. * platform/network/BlobResourceHandle.h:
  42958. * platform/network/ResourceHandle.h:
  42959. * platform/network/mac/ResourceHandleMac.mm:
  42960. (WebCore::ResourceHandle::bufferedData):
  42961. 2010-09-14 Luiz Agostini <luiz.agostini@openbossa.org>
  42962. Reviewed by Kenneth Rohde Christiansen.
  42963. [Qt] Zoom factor for checkboxes and radios.
  42964. https://bugs.webkit.org/show_bug.cgi?id=45776
  42965. RenderThemeQt does not consider RenderStyle::effectiveZoom when calculating sizes of
  42966. checkboxes and radios.
  42967. Even with this change the used QStyle must support different sizes for radios and checkboxes.
  42968. QWindowStyle and QMacStyle, for example, do not.
  42969. * platform/qt/RenderThemeQt.cpp:
  42970. (WebCore::RenderThemeQt::computeSizeBasedOnStyle):
  42971. 2010-09-14 Chris Rogers <crogers@google.com>
  42972. Reviewed by Kenneth Russell.
  42973. audio engine: add AudioFileReader files (Mac implementation)
  42974. https://bugs.webkit.org/show_bug.cgi?id=36475
  42975. No new tests since audio API is not yet implemented.
  42976. * platform/audio/AudioFileReader.h: Added.
  42977. * platform/audio/mac/AudioFileReaderMac.cpp: Added.
  42978. (WebCore::createAudioBufferList):
  42979. (WebCore::destroyAudioBufferList):
  42980. (WebCore::AudioFileReader::AudioFileReader):
  42981. (WebCore::AudioFileReader::~AudioFileReader):
  42982. (WebCore::AudioFileReader::readProc):
  42983. (WebCore::AudioFileReader::getSizeProc):
  42984. (WebCore::AudioFileReader::createBus):
  42985. (WebCore::createBusFromAudioFile):
  42986. (WebCore::createBusFromInMemoryAudioFile):
  42987. * platform/audio/mac/AudioFileReaderMac.h: Added.
  42988. (WebCore::AudioFileReader::data):
  42989. (WebCore::AudioFileReader::dataSize):
  42990. 2010-09-14 Simon Fraser <simon.fraser@apple.com>
  42991. Reviewed by Oliver Hunt.
  42992. Drawing an image outside the bounds of a canvas still causes repaints
  42993. https://bugs.webkit.org/show_bug.cgi?id=45792
  42994. Some canvas examples, such as http://www.phoboslab.org/biolab/, draw
  42995. images outide the bounds of the canvas. If the canvas already had a
  42996. non-empty m_dirtyRect, such draws would cause us to do a repaint of
  42997. m_dirtyRect again (which goes through the platform-specific invalidation
  42998. machinery, which can be slow).
  42999. Optimize this by avoiding extra invalidation when the dirty rect
  43000. does not intersect the canvas bounds.
  43001. Not testable because this avoids additional repaints of m_dirtyRect, but
  43002. m_dirtyRect has to be non-empty for this to benefit.
  43003. * html/HTMLCanvasElement.cpp:
  43004. (WebCore::HTMLCanvasElement::didDraw):
  43005. 2010-09-14 Yury Semikhatsky <yurys@chromium.org>
  43006. Reviewed by Pavel Feldman.
  43007. Web Inspector: Links from "Profiles" don't lead to "Scripts"
  43008. https://bugs.webkit.org/show_bug.cgi?id=45756
  43009. * inspector/front-end/ProfileDataGridTree.js:
  43010. (WebInspector.ProfileDataGridNode.prototype.createCell): use standard routine to create resource link
  43011. * inspector/front-end/inspector.js: code cleanup: removed no-op method
  43012. (WebInspector.addMainEventListeners):
  43013. 2010-09-14 Patrick Gansterer <paroga@paroga.com>
  43014. Reviewed by Adam Roben.
  43015. [WINCE] Use codePage instead of TextEncoding
  43016. https://bugs.webkit.org/show_bug.cgi?id=45466
  43017. Use codePage as member variable to avoid repeated lookup.
  43018. * platform/text/wince/TextCodecWinCE.cpp:
  43019. (WebCore::newTextCodecWinCE):
  43020. (WebCore::TextCodecWinCE::TextCodecWinCE):
  43021. (WebCore::decode):
  43022. (WebCore::TextCodecWinCE::decode):
  43023. (WebCore::TextCodecWinCE::encode):
  43024. * platform/text/wince/TextCodecWinCE.h:
  43025. 2010-09-14 Adam Barth <abarth@webkit.org>
  43026. Attempted Chromium build fix. The compiler can't tell that
  43027. ASSERT_NOT_REACHED is not reached and so it demands an initialization
  43028. of this variable.
  43029. * html/HTMLFontElement.cpp:
  43030. (WebCore::HTMLFontElement::parseMappedAttribute):
  43031. 2010-09-14 Andreas Kling <andreas.kling@nokia.com>
  43032. Reviewed by Ariya Hidayat.
  43033. [Qt] Wheeling over windowed plugins sometimes cause them to disappear
  43034. * plugins/qt/PluginContainerQt.cpp:
  43035. (PluginClientWrapper::x11Event): Pass on captured mouse wheel events
  43036. to the effective native window rather than the grandparent widget.
  43037. We were calling QWidget::winId() which caused a new X11 window to be
  43038. created for the grandparent widget and generally mess things up.
  43039. 2010-09-14 Kevin Ollivier <kevino@theolliviers.com>
  43040. [wx] Build fix after move of selectedText() method.
  43041. * platform/wx/PasteboardWx.cpp:
  43042. (WebCore::Pasteboard::writeSelection):
  43043. 2010-09-14 Adam Barth <abarth@webkit.org>
  43044. Reviewed by Darin Adler.
  43045. Handle <font size=0> as <font size=1> like any other browser
  43046. https://bugs.webkit.org/show_bug.cgi?id=39148
  43047. Update font size parser to match HTML5 spec. The main difference here
  43048. is the handling of 0, which now maps to 1 instead of 3.
  43049. * html/HTMLFontElement.cpp:
  43050. (WebCore::parseFontSize):
  43051. (WebCore::HTMLFontElement::cssValueFromFontSizeNumber):
  43052. 2010-09-14 Adam Barth <abarth@webkit.org>
  43053. Reviewed by Darin Adler.
  43054. document.lastModified gives no output if the response doesn't have a Last-Modified header
  43055. https://bugs.webkit.org/show_bug.cgi?id=8475
  43056. Implement document.lastModified as per HTML5.
  43057. Tests: http/tests/misc/last-modified-parsing.html
  43058. http/tests/misc/no-last-modified.html
  43059. * dom/Document.cpp:
  43060. (WebCore::Document::lastModified):
  43061. 2010-09-14 Adam Barth <abarth@webkit.org>
  43062. Reviewed by Eric Seidel.
  43063. `document.compatMode` is `undefined` when using `application/xhtml+xml`
  43064. https://bugs.webkit.org/show_bug.cgi?id=44422
  43065. Moving the compatMode IDL attribute from HTMLDocument.idl to
  43066. Document.idl fixes this bug and improve compliance with HTML5.
  43067. Test: fast/parser/compatMode-in-xhtml.xhtml
  43068. * dom/Document.cpp:
  43069. (WebCore::Document::compatMode):
  43070. * dom/Document.h:
  43071. * dom/Document.idl:
  43072. * html/HTMLDocument.cpp:
  43073. * html/HTMLDocument.h:
  43074. 2010-09-14 Adam Barth <abarth@webkit.org>
  43075. Reviewed by Nate Chapin.
  43076. V8 security checks don't account for shadowing named frames
  43077. https://bugs.webkit.org/show_bug.cgi?id=45700
  43078. Test: http/tests/security/xss-DENIED-frame-name.html
  43079. * bindings/v8/custom/V8DOMWindowCustom.cpp:
  43080. (WebCore::V8DOMWindow::namedSecurityCheck):
  43081. - If the property name exists on the object, it will shadow the
  43082. named property lookup on the window object. That means we need
  43083. to block access if there's shadowing going on.
  43084. (WebCore::V8DOMWindow::indexedSecurityCheck):
  43085. - I made the corresponding change to this function too, but I don't
  43086. think this one can actually be triggered because JavaScript
  43087. variable names need to start with a non-digit.
  43088. 2010-09-14 Adam Barth <abarth@webkit.org>
  43089. Reviewed by Eric Seidel.
  43090. incorrect tabindex parsing
  43091. https://bugs.webkit.org/show_bug.cgi?id=21076
  43092. Updated our integer parsing for tabindex to use the algorithm from the
  43093. HTML5 spec.
  43094. Test: fast/parser/tabindex-parsing-2.html
  43095. * html/HTMLElement.cpp:
  43096. (WebCore::HTMLElement::parseMappedAttribute):
  43097. * html/parser/HTMLParserIdioms.cpp:
  43098. (WebCore::parseHTMLInteger):
  43099. * html/parser/HTMLParserIdioms.h:
  43100. 2010-09-14 Brent Fulgham <bfulgham@webkit.org>
  43101. Build correction, no review.
  43102. * WebCore.vcproj/WebCore.vcproj: Exclude OwnPtrCairo.cpp from
  43103. non-Cairo based builds.
  43104. 2010-09-14 Jian Li <jianli@chromium.org>
  43105. Reviewed by David Levin.
  43106. fast/files/apply-blob-url-to-img.html timeout on Leopard
  43107. https://bugs.webkit.org/show_bug.cgi?id=45576
  43108. The failure on Leopard is caused by the static method
  43109. ResourceHandle::supportsBufferedData that returns true to indicate that
  43110. the buffered data support is enabled for blob resource. However,
  43111. BlobResourceHandle does not support this and we need to override this.
  43112. The fix is to change supportsBufferedData method from static to virtual
  43113. so that we can override the default behavior in BlobResourceHandle.
  43114. * fileapi/ThreadableBlobRegistry.cpp: Copy BlobData to make it cross-thread.
  43115. (WebCore::BlobRegistryContext::BlobRegistryContext):
  43116. * loader/ResourceLoader.cpp:
  43117. (WebCore::ResourceLoader::resourceData):
  43118. (WebCore::ResourceLoader::addData):
  43119. * platform/network/BlobResourceHandle.cpp:
  43120. (WebCore::BlobResourceHandle::supportsBufferedData): Override the default
  43121. behavior.
  43122. * platform/network/BlobResourceHandle.h:
  43123. * platform/network/ResourceHandle.h: Made supportsBufferedData virtual.
  43124. * platform/network/mac/ResourceHandleMac.mm:
  43125. (WebCore::ResourceHandle::bufferedData):
  43126. 2010-09-14 Brent Fulgham <bfulgham@webkit.org>
  43127. Build correction, no review.
  43128. * WebCore.vcproj/WebCore.vcproj: Add missing OwnPtrCairo.cpp
  43129. implementation file.
  43130. * platform/graphics/cairo/OwnPtrCairo.cpp: Add missing include
  43131. for <cairo.h>
  43132. 2010-09-14 Chris Guillory <chris.guillory@google.com>
  43133. Reviewed by Chris Fleizach.
  43134. Send all accessibility notifications to Chromium.
  43135. https://bugs.webkit.org/show_bug.cgi?id=45156
  43136. Use postAccessibilityNotification to pass accessibility notifications
  43137. to chromium.
  43138. Tests: platform/chromium/accessibility/post-notification-ActiveDescendantChanged.html
  43139. platform/chromium/accessibility/post-notification-CheckedStateChanged.html
  43140. platform/chromium/accessibility/post-notification-ChildrenChanged.html
  43141. platform/chromium/accessibility/post-notification-FocusedUIElementChanged.html
  43142. platform/chromium/accessibility/post-notification-LayoutComplete.html
  43143. platform/chromium/accessibility/post-notification-LiveRegionChanged.html
  43144. platform/chromium/accessibility/post-notification-LoadComplete.html
  43145. platform/chromium/accessibility/post-notification-MenuListValueChanged.html
  43146. platform/chromium/accessibility/post-notification-RowCollapsed.html
  43147. platform/chromium/accessibility/post-notification-RowCountChanged.html
  43148. platform/chromium/accessibility/post-notification-RowExpanded.html
  43149. platform/chromium/accessibility/post-notification-ScrolledToAnchor.html
  43150. platform/chromium/accessibility/post-notification-SelectedChildrenChanged.html
  43151. platform/chromium/accessibility/post-notification-SelectedTextChanged.html
  43152. platform/chromium/accessibility/post-notification-ValueChanged.html
  43153. * accessibility/chromium/AXObjectCacheChromium.cpp:
  43154. (WebCore::AXObjectCache::postPlatformNotification):
  43155. * page/chromium/ChromeClientChromium.h:
  43156. 2010-09-14 Darin Adler <darin@apple.com>
  43157. Reviewed by Geoffrey Garen.
  43158. Hang processing href attribute containing a million slashes
  43159. https://bugs.webkit.org/show_bug.cgi?id=45767
  43160. Test: fast/css/visited-link-hang.html
  43161. * platform/LinkHash.cpp:
  43162. (WebCore::findSlashDotDotSlash): Added a start position argument and
  43163. changed types to use size_t consistently instead of a mix.
  43164. (WebCore::findSlashSlash): Ditto.
  43165. (WebCore::findSlashDotSlash): Ditto.
  43166. (WebCore::squeezeOutNullCharacters): Added.
  43167. (WebCore::cleanSlashDotDotSlashes): Added. Factored out part
  43168. of cleanPath (see below).
  43169. (WebCore::mergeDoubleSlashes): Ditto.
  43170. (WebCore::cleanSlashDotSlashes): Ditto.
  43171. (WebCore::cleanPath): Changed algorithm to not remove as we go to
  43172. avoid N^2 behavior; instead replace with null characters and then
  43173. do a squeeze operation after the fact. Also moved the body of the
  43174. function out of line since we normally don't have to do any cleaning.
  43175. This whole thing should go at some point -- it's not the right
  43176. algorithm -- but this should eliminate the performance problems
  43177. without changing behavior.
  43178. 2010-09-14 Nico Weber <thakis@chromium.org>
  43179. Reviewed by Kenneth Russell.
  43180. [chromium]: On Mac, let image layer data row order match skia.
  43181. https://bugs.webkit.org/show_bug.cgi?id=45400
  43182. Make CoreGraphics texture row order match skia's row order, remove all
  43183. code that worked around this difference. This also fixes a problem where
  43184. image layers would be drawn upside down.
  43185. Covered by existing layout tests, but we don't run these with
  43186. compositing yet.
  43187. * platform/graphics/chromium/ContentLayerChromium.cpp:
  43188. (WebCore::ContentLayerChromium::SharedValues::SharedValues):
  43189. (WebCore::ContentLayerChromium::updateContents):
  43190. (WebCore::ContentLayerChromium::updateTextureRect):
  43191. * platform/graphics/chromium/LayerRendererChromium.cpp:
  43192. (WebCore::LayerRendererChromium::setRootLayerCanvasSize):
  43193. (WebCore::LayerRendererChromium::drawLayers):
  43194. 2010-09-14 Ryosuke Niwa <rniwa@webkit.org>
  43195. Reviewed by Tony Chang.
  43196. applyInlineStyleToNodeRange does not extend run properly
  43197. https://bugs.webkit.org/show_bug.cgi?id=45616
  43198. The bug was caused by applyInlineStyleToNodeRange's skipping a node whenever it has children.
  43199. Fixed the bug by only skipping a node that contains the past end node, contains non-editable region,
  43200. or has a non-editable parent node. Also fixed a bug that applyInlineStyleToNodeRange does not remove
  43201. styled elements in a run that are identical to the one added. addInlineStyleIfNeeded now removes
  43202. all styled elements in a run using removeStyleFromRunBeforeApplyingStyle before calling addInlineStyleIfNeeded.
  43203. Test: editing/style/inline-style-extend-run.html
  43204. * editing/ApplyStyleCommand.cpp:
  43205. (WebCore::containsNonEditableRegion): Added.
  43206. (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange): See above.
  43207. (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle): Added, see above.
  43208. (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Added support for RemoveAlways.
  43209. (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Replaced RemoveAttributesAndElements by RemoveIfNeeded.
  43210. (WebCore::ApplyStyleCommand::extractInlineStyleToPushDown): Replaced RemoveAttributesAndElements by RemoveIfNeeded.
  43211. * editing/ApplyStyleCommand.h:
  43212. 2010-09-14 Andreas Kling <andreas.kling@nokia.com>
  43213. Reviewed by Kenneth Rohde Christiansen.
  43214. [Qt] V8 port: Get inspector up and running
  43215. https://bugs.webkit.org/show_bug.cgi?id=45771
  43216. * inspector/front-end/WebKit.qrc: Add DebuggerScript.js
  43217. 2010-09-14 Oliver Hunt <oliver@apple.com>
  43218. PPC Build fix.
  43219. * bindings/js/SerializedScriptValue.cpp:
  43220. (WebCore::CloneDeserializer::readFile):
  43221. (WebCore::CloneDeserializer::readTerminal):
  43222. 2010-09-14 Kwang Yul Seo <skyul@company100.net>
  43223. Reviewed by Andreas Kling.
  43224. [chromium] Remove unused ICU headers
  43225. https://bugs.webkit.org/show_bug.cgi?id=45698
  43226. Remove unused headers.
  43227. * platform/graphics/chromium/FontCacheLinux.cpp:
  43228. 2010-09-14 Andreas Kling <andreas.kling@nokia.com>
  43229. Reviewed by Antonio Gomes.
  43230. [Qt] Numpad Enter key returns keyCode 0 instead of 13
  43231. https://bugs.webkit.org/show_bug.cgi?id=45014
  43232. Original patch by Jarred Nicholls <jarred.nicholls@gmail.com>
  43233. There is a missing case statement in the PlatformKeyboardEventQt.cpp
  43234. file to handle the Enter button on the number pad. Because it is not
  43235. handled, the keyCode returned in a JavaScript event is 0 rather than 13.
  43236. Test: manual-tests/qt/numpad-enter-key.html
  43237. * manual-tests/qt/numpad-enter-key.html: Added.
  43238. * platform/qt/PlatformKeyboardEventQt.cpp:
  43239. (WebCore::windowsKeyCodeForKeyEvent):
  43240. 2010-09-14 Evan Martin <evan@chromium.org>
  43241. Reviewed by Darin Fisher.
  43242. [chromium] building without debug syms broke after recent refactoring
  43243. https://bugs.webkit.org/show_bug.cgi?id=45720
  43244. Now that we build WebCore as multiple libraries, we need to adjust the
  43245. flags to turn off debug symbols for all of these libraries.
  43246. No new tests; should only affect an uncommon build flag.
  43247. * WebCore.gyp/WebCore.gyp:
  43248. 2010-09-14 Tony Chang <tony@chromium.org>
  43249. Unreviewed, fix chromium compile.
  43250. * platform/graphics/chromium/ImageLayerChromium.h:
  43251. 2010-09-14 Nico Weber <thakis@chromium.org>
  43252. Reviewed by Darin Fisher.
  43253. [chromium]: crash less in compositor mode on mac
  43254. https://bugs.webkit.org/show_bug.cgi?id=45714
  43255. The contents image can go away when the dom is updated. Since the
  43256. layer tree is updated asynchronously, it needs to ref the native image,
  43257. else it will hold on to a stale object.
  43258. This still needs to be done for skia, too.
  43259. * platform/graphics/chromium/ImageLayerChromium.h:
  43260. * platform/graphics/chromium/ImageLayerChromium.cpp:
  43261. 2010-09-14 Andrey Kosyakov <caseq@chromium.org>
  43262. Reviewed by Yury Semikhatsky.
  43263. Web Inspector: [Resources panel] [HAR] Need a way to save timing data.
  43264. Added support for resource timings to HAREntry.
  43265. https://bugs.webkit.org/show_bug.cgi?id=45663
  43266. * inspector/front-end/HAREntry.js:
  43267. (WebInspector.HAREntry.prototype._buildTimings):
  43268. (WebInspector.HAREntry.prototype._toMilliseconds):
  43269. (WebInspector.HAREntry.prototype._interval):
  43270. 2010-09-14 Kwang Yul Seo <skyul@company100.net>
  43271. Reviewed by Kent Tamura.
  43272. [BREWMP] Always set LeftButton in PlatformMouseEvent
  43273. https://bugs.webkit.org/show_bug.cgi?id=45705
  43274. AEE_POINTER_GET_MOUSE_MODIFIERS always returns 0, so it is impossible to know
  43275. which button is pressed or released. The current code erroneously sets NoButton.
  43276. Set LeftButton unconditionally because Brew MP usually runs on touch device.
  43277. * platform/brew/PlatformMouseEventBrew.cpp:
  43278. (WebCore::PlatformMouseEvent::PlatformMouseEvent):
  43279. 2010-09-14 Yury Semikhatsky <yurys@chromium.org>
  43280. Reviewed by Andreas Kling.
  43281. Move DebuggerScript.js from WebKit/chromium/src/js to WebCore/bindings/v8
  43282. https://bugs.webkit.org/show_bug.cgi?id=45739
  43283. * bindings/v8/DebuggerScript.js: Added.
  43284. 2010-09-10 Alexander Pavlov <apavlov@chromium.org>
  43285. Reviewed by Pavel Feldman.
  43286. Web Inspector: Implement on-demand reporting of empty CSS rules matched for a node by WebCore
  43287. https://bugs.webkit.org/show_bug.cgi?id=45530
  43288. * css/CSSStyleSelector.cpp:
  43289. (WebCore::CSSStyleSelector::matchRules):
  43290. (WebCore::CSSStyleSelector::matchRulesForList):
  43291. (WebCore::CSSStyleSelector::matchUARules):
  43292. (WebCore::CSSStyleSelector::styleForElement):
  43293. (WebCore::CSSStyleSelector::pseudoStyleForElement):
  43294. (WebCore::CSSStyleSelector::styleRulesForElement):
  43295. (WebCore::CSSStyleSelector::pseudoStyleRulesForElement):
  43296. * css/CSSStyleSelector.h:
  43297. * inspector/InspectorDOMAgent.cpp:
  43298. (WebCore::InspectorDOMAgent::getStyles):
  43299. (WebCore::InspectorDOMAgent::buildArrayForPseudoElements):
  43300. 2010-09-14 Hyung Song <beergun@company100.net>
  43301. Reviewed by Darin Adler.
  43302. [BREWMP] Set m_size in SharedBuffer::createWithContentsOfFile();
  43303. https://bugs.webkit.org/show_bug.cgi?id=45701
  43304. SharedBuffer::createWithContentsOfFile() reads file content and saves to
  43305. result.m_buffer directly, leaving result.m_size unchanged.
  43306. * platform/brew/SharedBufferBrew.cpp:
  43307. (WebCore::SharedBuffer::createWithContentsOfFile):
  43308. 2010-09-14 Adam Barth <abarth@webkit.org>
  43309. Reviewed by Darin Adler.
  43310. Move adjustLexerState to the HTMLTokenizer
  43311. https://bugs.webkit.org/show_bug.cgi?id=45649
  43312. This function used let us share code between the tree builder and the
  43313. two other users of the HTMLTokenizer. However, now that the tree
  43314. builder is all grown up, it can't use this code anymore. The other
  43315. users would much rather this code lived on HTMLTokenizer and understood
  43316. <script>. This patch attempts to make them happy.
  43317. * html/parser/HTMLPreloadScanner.cpp:
  43318. (WebCore::HTMLPreloadScanner::processToken):
  43319. * html/parser/HTMLTokenizer.cpp:
  43320. (WebCore::HTMLTokenizer::updateStateFor):
  43321. * html/parser/HTMLTokenizer.h:
  43322. * html/parser/HTMLTreeBuilder.cpp:
  43323. (WebCore::HTMLTreeBuilder::scriptEnabled):
  43324. * html/parser/HTMLTreeBuilder.h:
  43325. * html/parser/HTMLViewSourceParser.cpp:
  43326. (WebCore::HTMLViewSourceParser::updateTokenizerState):
  43327. 2010-09-14 Pierre-Antoine LaFayette <plafayet@codeaurora.org>
  43328. Reviewed by Darin Adler.
  43329. REGRESSION (r52839): Incomplete repaint of IMG with text-align:center
  43330. https://bugs.webkit.org/show_bug.cgi?id=40142
  43331. http://trac.webkit.org/changeset/52839 didn't really deal with the inline replaced element case. This just generalizes to all inline content.
  43332. Patch by: Dave Hyatt
  43333. Tests: fast/repaint/block-layout-inline-children-float-positioned.html
  43334. fast/repaint/block-layout-inline-children-replaced.html
  43335. * rendering/RenderBlockLineLayout.cpp:
  43336. (WebCore::RenderBlock::layoutInlineChildren):
  43337. 2010-09-14 Balazs Kelemen <kb@inf.u-szeged.hu>
  43338. Reviewed by Andreas Kling.
  43339. [Qt] Cookie operations should use NetworkingContext
  43340. https://bugs.webkit.org/show_bug.cgi?id=45745
  43341. No new functionality so no new tests.
  43342. * platform/qt/CookieJarQt.cpp:
  43343. (WebCore::cookieJar): Use the NetworkingContext for obtaining the QNetworkAccessManager
  43344. instead of directly accessing the FrameLoaderClient.
  43345. 2010-09-14 Sheriff Bot <webkit.review.bot@gmail.com>
  43346. Unreviewed, rolling out r67449.
  43347. http://trac.webkit.org/changeset/67449
  43348. https://bugs.webkit.org/show_bug.cgi?id=45746
  43349. This change makes tree red. (Requested by pfeldman on
  43350. #webkit).
  43351. * editing/ApplyStyleCommand.cpp:
  43352. (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
  43353. (WebCore::ApplyStyleCommand::removeInlineStyleFromElement):
  43354. (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement):
  43355. (WebCore::ApplyStyleCommand::extractInlineStyleToPushDown):
  43356. * editing/ApplyStyleCommand.h:
  43357. 2010-09-14 Eric Seidel <eric@webkit.org>
  43358. Unreviewed, reverting changes r67451 and r67451.
  43359. Broke lots of builders.
  43360. Only intercept ESC key press when autocorrection UI is visible.
  43361. https://bugs.webkit.org/show_bug.cgi?id=45071
  43362. * editing/Editor.cpp:
  43363. * editing/Editor.h:
  43364. * editing/EditorCommand.cpp:
  43365. (WebCore::createCommandMap):
  43366. * loader/EmptyClients.h:
  43367. * page/EditorClient.h:
  43368. 2010-09-14 Kinuko Yasuda <kinuko@chromium.org>
  43369. Unreviewed; an attempt to fix Chromium Windows build.
  43370. * fileapi/FileEntry.cpp:
  43371. 2010-09-13 Andrey Kosyakov <caseq@chromium.org>
  43372. Reviewed by Pavel Feldman.
  43373. Web Inspector: provide support for opening external navigation for links within certain elements
  43374. Use default handling for clicks on links that have target="_blank".
  43375. Add option for external navigation to URL audit formatter.
  43376. https://bugs.webkit.org/show_bug.cgi?id=45671
  43377. * inspector/front-end/AuditFormatters.js:
  43378. (WebInspector.AuditFormatters.url):
  43379. * inspector/front-end/inspector.js:
  43380. 2010-09-14 Dan Bernstein <mitz@apple.com>
  43381. Build fix.
  43382. * editing/EditorCommand.cpp:
  43383. 2010-09-14 Jia Pu <jpu@apple.com>
  43384. Reviewed by Dan Bernstein.
  43385. Only intercept ESC key press when autocorrection UI is visible.
  43386. https://bugs.webkit.org/show_bug.cgi?id=45071
  43387. Only intercept ESC key when autocorrection panel is shown. Otherwise pressing
  43388. ESC will cancel current loading like usual.
  43389. * editing/Editor.cpp:
  43390. (WebCore::Editor::isShowingCorrectionPanel): Query editor client whether autocorrection
  43391. panel is shown.
  43392. * editing/Editor.h: Added declaration of isShowingCorrectionPanel().
  43393. * editing/EditorCommand.cpp:
  43394. (WebCore::supportedDismissCorrectionPanel): Only support executeCancelOperation()
  43395. when autocorrection panel is shown.
  43396. (WebCore::createCommandMap): Replaced isSupported function pointer for
  43397. executeCancelOperation() command with supportedDismissCorrectionPanel().
  43398. * loader/EmptyClients.h:
  43399. (WebCore::EmptyEditorClient::isShowingCorrectionPanel): Dummy implementation of
  43400. new member method declared in base class.
  43401. * page/EditorClient.h: Declared new member method isShowingCorrectionPanel().
  43402. 2010-09-14 Kwang Yul Seo <skyul@company100.net>
  43403. Reviewed by Kent Tamura.
  43404. [BREWMP] Remove TextBreakIteratorInternalICUBrew.cpp
  43405. https://bugs.webkit.org/show_bug.cgi?id=45691
  43406. Brew MP no longer depends on ICU for internationalization.
  43407. Remove TextBreakIteratorInternalICUBrew.cpp.
  43408. * platform/text/brew/TextBreakIteratorInternalICUBrew.cpp: Removed.
  43409. 2010-09-14 Ryosuke Niwa <rniwa@webkit.org>
  43410. Reviewed by Tony Chang.
  43411. applyInlineStyleToNodeRange does not extend run properly
  43412. https://bugs.webkit.org/show_bug.cgi?id=45616
  43413. The bug was caused by applyInlineStyleToNodeRange's skipping a node whenever it has children.
  43414. Fixed the bug by only skipping a node that contains the past end node, contains non-editable region,
  43415. or has a non-editable parent node. Also fixed a bug that applyInlineStyleToNodeRange does not remove
  43416. styled elements in a run that are identical to the one added. addInlineStyleIfNeeded now removes
  43417. all styled elements in a run using removeStyleFromRunBeforeApplyingStyle before calling addInlineStyleIfNeeded.
  43418. Test: editing/style/inline-style-extend-run.html
  43419. * editing/ApplyStyleCommand.cpp:
  43420. (WebCore::containsNonEditableRegion): Added.
  43421. (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange): See above.
  43422. (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle): Added, see above.
  43423. (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Added support for RemoveAlways.
  43424. (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Replaced RemoveAttributesAndElements by RemoveIfNeeded.
  43425. (WebCore::ApplyStyleCommand::extractInlineStyleToPushDown): Replaced RemoveAttributesAndElements by RemoveIfNeeded.
  43426. * editing/ApplyStyleCommand.h:
  43427. 2010-09-13 Yuta Kitamura <yutak@chromium.org>
  43428. Reviewed by Kent Tamura.
  43429. Add one #if guard block to fix Qt builds.
  43430. Web Inspector: WebSocket in Resources tab
  43431. https://bugs.webkit.org/show_bug.cgi?id=40768
  43432. * inspector/InspectorResource.cpp:
  43433. 2010-09-13 Yuta Kitamura <yutak@chromium.org>
  43434. Reviewed by Pavel Feldman.
  43435. Add WebSocket resource type to Web Inspector.
  43436. When a new WebSocket connection is established, a line for that connection
  43437. will appear in Web Inspector's Resources tab. If the resource name is
  43438. clicked, the details of handshake request and response will be shown.
  43439. Web Inspector: WebSocket in Resources tab
  43440. https://bugs.webkit.org/show_bug.cgi?id=40768
  43441. * inspector/InspectorController.cpp:
  43442. (WebCore::InspectorController::addResource): WebSocket resource does not
  43443. have an associated loader, thus frame might be null. Need to check it.
  43444. (WebCore::InspectorController::removeResource): Ditto.
  43445. (WebCore::InspectorController::didCreateWebSocket):
  43446. (WebCore::InspectorController::willSendWebSocketHandshakeRequest):
  43447. (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse):
  43448. (WebCore::InspectorController::didCloseWebSocket):
  43449. * inspector/InspectorController.h:
  43450. * inspector/InspectorResource.cpp: Add null checks of m_loader and m_frame,
  43451. because WebSocket does not have a loader and we need to allow null for
  43452. these variables.
  43453. (WebCore::createReadableStringFromBinary):
  43454. (WebCore::InspectorResource::InspectorResource):
  43455. (WebCore::InspectorResource::create): Factory function of
  43456. regular (non-WebSocket) resources.
  43457. (WebCore::InspectorResource::createWebSocket): Factory function of
  43458. WebSocket resources.
  43459. (WebCore::InspectorResource::updateWebSocketRequest):
  43460. (WebCore::InspectorResource::updateWebSocketResponse):
  43461. (WebCore::InspectorResource::updateScriptObject): m_frame->document() becomes
  43462. available when Frame::setDocument() is called. We cannot obtain documentURL
  43463. during the constructor or updateRequest() function, because m_frame->document()
  43464. is not available yet at that point and documentURL will contain a wrong URL.
  43465. As far as I know, updateScriptObject() is the only place where we can safely
  43466. obtain documentURL.
  43467. (WebCore::InspectorResource::cachedResource):
  43468. (WebCore::InspectorResource::type):
  43469. (WebCore::InspectorResource::resourceData):
  43470. * inspector/InspectorResource.h:
  43471. (WebCore::InspectorResource::):
  43472. (WebCore::InspectorResource::markWebSocket):
  43473. * inspector/front-end/Resource.js:
  43474. (WebInspector.Resource.Type.toString):
  43475. (WebInspector.Resource.prototype.set type):
  43476. (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType):
  43477. * inspector/front-end/ResourceView.js:
  43478. (WebInspector.ResourceView.prototype._refreshRequestHeaders):
  43479. (WebInspector.ResourceView.prototype._refreshResponseHeaders):
  43480. (WebInspector.ResourceView.prototype._refreshHeaders):
  43481. * inspector/front-end/inspector.css:
  43482. (.resources-category-websockets, .resources-category-other):
  43483. (.resources-category-websockets .resources-graph-bar):
  43484. (.resources-category-websockets.resource-cached .resources-graph-bar):
  43485. * inspector/front-end/inspector.js:
  43486. (WebInspector.loaded):
  43487. (WebInspector.updateResource):
  43488. * websockets/WebSocketChannel.cpp:
  43489. (WebCore::WebSocketChannel::WebSocketChannel):
  43490. (WebCore::WebSocketChannel::disconnect):
  43491. (WebCore::WebSocketChannel::didOpen):
  43492. (WebCore::WebSocketChannel::didClose):
  43493. (WebCore::WebSocketChannel::processBuffer):
  43494. (WebCore::WebSocketChannel::identifier):
  43495. * websockets/WebSocketChannel.h:
  43496. 2010-09-13 W. James MacLean <wjmaclean@google.com>
  43497. Reviewed by Darin Fisher.
  43498. [chromium] Thumbnails not generated for GPU Rendered Pages
  43499. https://bugs.webkit.org/show_bug.cgi?id=44127
  43500. Replicates existing functionality, use existing tests.
  43501. Adds pixel-readback for GPU composited pages to allow for thumbnailing,
  43502. printing and other services to work with GPU rendered pages.
  43503. * platform/graphics/chromium/LayerRendererChromium.cpp:
  43504. (WebCore::LayerRendererChromium::getFramebufferPixels):
  43505. * platform/graphics/chromium/LayerRendererChromium.h:
  43506. (WebCore::LayerRendererChromium::rootLayerTextureSize):
  43507. 2010-09-13 Kinuko Yasuda <kinuko@chromium.org>
  43508. Unreviewed, build fix for Gtk.
  43509. * bindings/js/JSEntryCustom.cpp:
  43510. 2010-09-13 Kinuko Yasuda <kinuko@chromium.org>
  43511. Reviewed by Adam Barth.
  43512. Make FileEntry and DirectoryEntry methods accessible via Entry instance
  43513. https://bugs.webkit.org/show_bug.cgi?id=45553
  43514. FileEntry- and DirectoryEntry- specific methods must be available on Entry object based on its internal type.
  43515. Added custom toJS/toV8 implementation to Entry interface.
  43516. No new tests; test will be added later when we have complete implementation for the API.
  43517. * CMakeLists.txt:
  43518. * GNUmakefile.am:
  43519. * WebCore.gypi:
  43520. * WebCore.pro:
  43521. * WebCore.vcproj/WebCore.vcproj:
  43522. * WebCore.xcodeproj/project.pbxproj:
  43523. * bindings/js/JSEntryCustom.cpp: Added.
  43524. (WebCore::toJS):
  43525. * bindings/v8/custom/V8EntryCustom.cpp: Added.
  43526. (WebCore::toV8):
  43527. * fileapi/DirectoryEntry.h: Nits fix.
  43528. * fileapi/DirectoryEntry.idl: Added ConvertUndefinedOrNullToString to path parameter.
  43529. * fileapi/Entry.idl: Added CustomToJS attribute.
  43530. * fileapi/FileEntry.cpp:
  43531. (WebCore::FileEntry::createWriter):
  43532. (WebCore::FileEntry::file):
  43533. * fileapi/FileEntry.h:
  43534. * fileapi/FileEntry.idl:
  43535. 2010-09-13 Ryosuke Niwa <rniwa@webkit.org>
  43536. Reviewed by Darin Adler.
  43537. REGRESSION: In Gmail, a crash occurs at getDoubleValue() when applying a text color to a new line
  43538. https://bugs.webkit.org/show_bug.cgi?id=45632
  43539. Test: editing/execCommand/query-font-size-with-typing-style.html
  43540. The crash was caused by selectionStartCSSPropertyValue's deleting nodeToRemove before
  43541. retrieving the font-size property. Fixed the bug by moving the removal code to the end of the function.
  43542. * editing/Editor.cpp:
  43543. (WebCore::Editor::selectionStartCSSPropertyValue):
  43544. 2010-09-13 Kwang Yul Seo <skyul@company100.net>
  43545. Reviewed by Darin Adler.
  43546. [BREWMP] Remove WebCore namespace in SSLKeyGeneratorBrew.cpp
  43547. https://bugs.webkit.org/show_bug.cgi?id=45690
  43548. WebCore namespace is not required because getSupportedKeySizes and signedPublicKeyAndChallengeString are already
  43549. in namespace WebCore block.
  43550. * platform/brew/SSLKeyGeneratorBrew.cpp:
  43551. (WebCore::getSupportedKeySizes):
  43552. (WebCore::signedPublicKeyAndChallengeString):
  43553. 2010-09-13 Mario Sanchez Prada <msanchez@igalia.com>
  43554. Reviewed by Martin Robinson.
  43555. [GTK] Code simplification needed in Atk Wrapper
  43556. https://bugs.webkit.org/show_bug.cgi?id=45687
  43557. Use TextIterator::rangeLength() to calculate endOffset
  43558. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  43559. (getSelectionOffsetsForObject): Don't manually iterate over a
  43560. artificial new range but just call TextIterator::rangeLength on
  43561. the range created between the start and end positions.
  43562. 2010-09-13 Sam Weinig <sam@webkit.org>
  43563. Reviewed by Alice Liu.
  43564. Clean up xcode project.
  43565. * WebCore.xcodeproj/project.pbxproj:
  43566. 2010-09-13 Eric Carlson <eric.carlson@apple.com>
  43567. Reviewed by Geoff Garen.
  43568. JavaScript dialog should not deactivate media element
  43569. https://bugs.webkit.org/show_bug.cgi?id=45688
  43570. Test: http/tests/media/reload-after-dialog.html
  43571. * bindings/generic/ActiveDOMCallback.cpp:
  43572. (WebCore::ActiveDOMObjectCallbackImpl::suspend): Add ReasonForSuspension parameter.
  43573. * bindings/js/ScriptDebugServer.cpp:
  43574. (WebCore::ScriptDebugServer::setJavaScriptPaused): Pass new parameter to suspendActiveDOMObjects.
  43575. * dom/ActiveDOMObject.cpp:
  43576. (WebCore::ActiveDOMObject::suspend): Add ReasonForSuspension parameter.
  43577. * dom/ActiveDOMObject.h:
  43578. * dom/ScriptExecutionContext.cpp:
  43579. (WebCore::ScriptExecutionContext::suspendActiveDOMObjects): Ditto.
  43580. * dom/ScriptExecutionContext.h:
  43581. * history/CachedFrame.cpp:
  43582. (WebCore::CachedFrame::CachedFrame): Pass new parameter to suspendActiveDOMObjects.
  43583. * html/HTMLMarqueeElement.cpp:
  43584. (WebCore::HTMLMarqueeElement::suspend): Add ReasonForSuspension parameter.
  43585. * html/HTMLMarqueeElement.h:
  43586. * html/HTMLMediaElement.cpp:
  43587. (WebCore::HTMLMediaElement::stop): Deal with element being suspended.
  43588. (WebCore::HTMLMediaElement::suspend): Do nothing unless reason for suspension is document
  43589. becoming inactive.
  43590. * html/HTMLMediaElement.h:
  43591. * page/PageGroupLoadDeferrer.cpp:
  43592. (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer): Pass WillShowDialog to suspendActiveDOMObjects.
  43593. * page/SuspendableTimer.cpp:
  43594. (WebCore::SuspendableTimer::suspend): Add ReasonForSuspension parameter.
  43595. * page/SuspendableTimer.h:
  43596. * websockets/WebSocket.cpp:
  43597. (WebCore::WebSocket::suspend): Ditto.
  43598. * websockets/WebSocket.h:
  43599. * xml/XMLHttpRequest.cpp:
  43600. (WebCore::XMLHttpRequest::suspend): Ditto.
  43601. * xml/XMLHttpRequest.h:
  43602. 2010-09-13 Sam Weinig <sam@webkit.org>
  43603. Fix the mac build.
  43604. * page/mac/EventHandlerMac.mm:
  43605. (WebCore::EventHandler::passMousePressEventToSubframe):
  43606. 2010-09-13 Sam Weinig <sam@webkit.org>
  43607. Reviewed by Anders Carlsson.
  43608. Can't scroll on Bugzilla patch review pages on Mac with WebKit2
  43609. https://bugs.webkit.org/show_bug.cgi?id=43555
  43610. <rdar://problem/8421386> WebKit2: gmail.com is completely unresponsive to clicks
  43611. <rdar://problem/8276298> Can't scroll on Bugzilla patch review pages on Mac with WebKit2 (43555)
  43612. * page/mac/EventHandlerMac.mm:
  43613. (WebCore::EventHandler::passWheelEventToWidget):
  43614. (WebCore::frameHasPlatformWidget):
  43615. (WebCore::EventHandler::passMousePressEventToSubframe):
  43616. (WebCore::EventHandler::passMouseMoveEventToSubframe):
  43617. (WebCore::EventHandler::passMouseReleaseEventToSubframe):
  43618. Add WebKit2 mode for these functions based on the presence of a platform widget for a
  43619. FrameView.
  43620. 2010-09-13 Patrick Gansterer <paroga@paroga.com>
  43621. Reviewed by Kenneth Rohde Christiansen.
  43622. [WINCE] Buildfix for ViewportArguments.cpp
  43623. https://bugs.webkit.org/show_bug.cgi?id=45678
  43624. Use fabs() instead of abs().
  43625. This patch also fixes the return value, when
  43626. the value is between -1 and 1.
  43627. * dom/ViewportArguments.cpp:
  43628. (WebCore::findUserScalableValue):
  43629. 2010-09-13 Darin Adler <darin@apple.com>
  43630. Reviewed by Adam Barth.
  43631. Preparation for eliminating deprecatedParseURL
  43632. https://bugs.webkit.org/show_bug.cgi?id=45695
  43633. Added new HTMLParserIdioms source file, with a name inspired by the HTML
  43634. specification, which has a section defining things like "space character"
  43635. that talks about common parser idioms. These are idioms for the main HTML
  43636. parser and for parsers for various microlanguages as well.
  43637. * Android.mk:
  43638. * CMakeLists.txt:
  43639. * GNUmakefile.am:
  43640. * WebCore.gypi:
  43641. * WebCore.pro:
  43642. * WebCore.vcproj/WebCore.vcproj:
  43643. * WebCore.xcodeproj/project.pbxproj:
  43644. Added HTMLParserIdioms.
  43645. * css/CSSHelper.h: Fixed indentation and comments here. Point to the new
  43646. stripLeadingAndTrailingHTMLSpaces function.
  43647. * html/parser/HTMLParserIdioms.cpp: Added.
  43648. * html/parser/HTMLParserIdioms.h: Added.
  43649. * html/parser/HTMLTreeBuilder.cpp:
  43650. (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::skipLeadingWhitespace):
  43651. (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeLeadingWhitespace):
  43652. (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeLeadingNonWhitespace):
  43653. (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeRemainingWhitespace):
  43654. Updated for name changes.
  43655. * html/parser/HTMLTreeBuilder.h: Moved functions to HTMLParserIdioms.h.
  43656. * html/HTMLInputElement.cpp:
  43657. * html/HTMLMeterElement.cpp:
  43658. * html/HTMLProgressElement.cpp:
  43659. * html/StepRange.cpp:
  43660. * rendering/RenderSlider.cpp:
  43661. Updated includes.
  43662. * svg/SVGImageLoader.cpp:
  43663. (WebCore::SVGImageLoader::sourceURI): Fixed incorrect use of deprecatedParseURL.
  43664. This is for use on the attribute value before building the URL, not on the URL
  43665. after building it. I did not add a test case; this is an obscure corner and soon
  43666. we will be moving to stripLeadingAndTrailingHTMLSpaces anyway.
  43667. * wml/WMLImageLoader.cpp:
  43668. (WebCore::WMLImageLoader::sourceURI): Ditto.
  43669. 2010-09-13 Chris Fleizach <cfleizach@apple.com>
  43670. Reviewed by Darin Adler.
  43671. AX: REGRESSION: WebKit does not report label of web popup buttons
  43672. https://bugs.webkit.org/show_bug.cgi?id=45715
  43673. Test: platform/mac/accessibility/popup-button-title.html
  43674. * WebCore.xcodeproj/project.pbxproj:
  43675. * accessibility/AccessibilityRenderObject.cpp:
  43676. (WebCore::AccessibilityRenderObject::title):
  43677. 2010-09-13 Kinuko Yasuda <kinuko@chromium.org>
  43678. Reviewed by Dumitru Daniliuc.
  43679. Expose Flags constructor if FileSystem API is Enabled
  43680. https://bugs.webkit.org/show_bug.cgi?id=45165
  43681. This change also includes:
  43682. - Changed Flags' attribute names from UPPERCASE to camelCase to reflect the recent spec change.
  43683. http://dev.w3.org/2009/dap/file-system/file-dir-sys.html#the-flags-interface
  43684. - Enhanced EnabledAtRuntime attribute to take parameter that is used to generate a RuntimeEnabledFeatures method name.
  43685. No new tests; tests will be added when we fully expose the interface.
  43686. * bindings/v8/V8DOMWindowCustom.cpp: Added custom getter for FlagsConstructor.
  43687. * fileapi/Flags.idl: Changed attribute names to camelCase.
  43688. * page/DOMWindow.idl: Exposed Flags constructor.
  43689. * bindings/scripts/CodeGenerator.pm: Updated the WK_lcfirst hack to work around getter method for 'create' (create() should be avoided as it's widely used to instantiate an object).
  43690. * bindings/scripts/CodeGeneratorV8.pm: Added EnabledAtRuntime=FeatureName support.
  43691. * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
  43692. (WebDOMTestObj::create):
  43693. (WebDOMTestObj::setCreate):
  43694. * bindings/scripts/test/CPP/WebDOMTestObj.h:
  43695. * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  43696. (webkit_dom_test_obj_set_property):
  43697. (webkit_dom_test_obj_get_property):
  43698. (webkit_dom_test_obj_class_init):
  43699. * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  43700. * bindings/scripts/test/JS/JSTestObj.cpp:
  43701. * bindings/scripts/test/ObjC/DOMTestObj.h:
  43702. * bindings/scripts/test/ObjC/DOMTestObj.mm:
  43703. * bindings/scripts/test/TestObj.idl:
  43704. * bindings/scripts/test/V8/V8TestObj.cpp:
  43705. (WebCore::TestObjInternal::createAttrGetter):
  43706. (WebCore::TestObjInternal::createAttrSetter):
  43707. (WebCore::TestObjInternal::enabledAtRuntimeAttr1AttrGetter):
  43708. (WebCore::TestObjInternal::enabledAtRuntimeAttr1AttrSetter):
  43709. (WebCore::TestObjInternal::enabledAtRuntimeAttr2AttrGetter):
  43710. (WebCore::TestObjInternal::enabledAtRuntimeAttr2AttrSetter):
  43711. (WebCore::TestObjInternal::enabledAtRuntimeMethod1Callback):
  43712. (WebCore::TestObjInternal::enabledAtRuntimeMethod2Callback):
  43713. (WebCore::ConfigureV8TestObjTemplate):
  43714. 2010-09-13 Adam Barth <abarth@webkit.org>
  43715. Reviewed by Darin Adler.
  43716. "Implement" EOF processing in AfterBodyMode and AfterAfterBodyMode
  43717. https://bugs.webkit.org/show_bug.cgi?id=45647
  43718. Implements the notImplemented by doing nothing, which is the proper
  43719. behavior according to the spec.
  43720. * html/parser/HTMLTreeBuilder.cpp:
  43721. (WebCore::HTMLTreeBuilder::processEndOfFile):
  43722. 2010-09-13 Adam Barth <abarth@webkit.org>
  43723. Reviewed by Darin Adler.
  43724. More trivial EOF handling in tree builder
  43725. https://bugs.webkit.org/show_bug.cgi?id=45648
  43726. The spec says to treat these modes like the InBodyMode, which is what
  43727. this patch does. Doing so is indistinguishable from our current
  43728. behavior, which is why we didn't catch this based on tests.
  43729. * html/parser/HTMLTreeBuilder.cpp:
  43730. (WebCore::HTMLTreeBuilder::processEndOfFile):
  43731. 2010-09-13 James Robinson <jamesr@chromium.org>
  43732. Reviewed by Kenneth Russell.
  43733. SharedGraphicsContext3D's texture cache holds on to images after free
  43734. https://bugs.webkit.org/show_bug.cgi?id=45706
  43735. Each SharedGraphicsContext3D keeps a cache of uploaded textures keyed by NativeImagePtrs.
  43736. Whenever the backing native image is deleted it needs to let the SharedGraphicsContext3D know
  43737. so that the cache entry and associated texture can also be removed.
  43738. * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
  43739. (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
  43740. (WebCore::SharedGraphicsContext3D::~SharedGraphicsContext3D):
  43741. (WebCore::SharedGraphicsContext3D::removeTextureFor):
  43742. (WebCore::SharedGraphicsContext3D::removeTexturesFor):
  43743. (WebCore::SharedGraphicsContext3D::allContexts):
  43744. * platform/graphics/gpu/SharedGraphicsContext3D.h:
  43745. * platform/graphics/skia/NativeImageSkia.cpp:
  43746. (WebCore::NativeImageSkia::~NativeImageSkia):
  43747. * platform/graphics/skia/NativeImageSkia.h:
  43748. 2010-09-13 Chris Fleizach <cfleizach@apple.com>
  43749. Reviewed by David Kilzer.
  43750. AX: accessibilityIsIgnored is returning nil when return value expects a BOOL
  43751. https://bugs.webkit.org/show_bug.cgi?id=45548
  43752. Test: platform/mac/accessibility/element-is-ignored.html
  43753. * accessibility/mac/AccessibilityObjectWrapper.mm:
  43754. (-[AccessibilityObjectWrapper accessibilityIsIgnored]):
  43755. 2010-09-13 Chris Fleizach <cfleizach@apple.com>
  43756. Reviewed by Darin Adler.
  43757. CrashTracer: 874 crashes in Safari at com.apple.WebCore: WebCore::AccessibilityTable::isTableExposableThroughAccessibility + 663
  43758. https://bugs.webkit.org/show_bug.cgi?id=45697
  43759. Inside of AccessibilityTableRow, parentTable() should not use getOrCreate() on the parent table, because the render table may
  43760. be in a bad state and accessing internal variables can lead to a crash.
  43761. Test: platform/mac/accessibility/updating-attribute-in-table-row-crash.html
  43762. * accessibility/AccessibilityTableRow.cpp:
  43763. (WebCore::AccessibilityTableRow::parentTable):
  43764. 2010-09-13 Adam Barth <abarth@webkit.org>
  43765. Reviewed by Eric Seidel.
  43766. Implement EOF handling in TextMode
  43767. https://bugs.webkit.org/show_bug.cgi?id=45644
  43768. This patch is actually covered by a bunch of tests. We were just
  43769. magically passing the tests before because of some nutty code in
  43770. Document.cpp.
  43771. * dom/Document.cpp:
  43772. (WebCore::Document::implicitClose):
  43773. - This code was masking the notImplemented in the tree builder.
  43774. I also removed the use of the setting because it wasn't working
  43775. properly anyway. I'll implement a working version shortly.
  43776. * html/parser/HTMLTreeBuilder.cpp:
  43777. (WebCore::HTMLTreeBuilder::processEndOfFile):
  43778. - Implement per the spec.
  43779. 2010-09-13 Enrica Casucci <enrica@apple.com>
  43780. Reviewed by Sam Weining.
  43781. Paste should be implemented in WebCore like Copy and Cut for Mac also.
  43782. https://bugs.webkit.org/show_bug.cgi?id=45494
  43783. <rdar://problem/7660537>
  43784. On the Mac platform, the implementation of the paste operation is all done
  43785. at the WebKit level. In order to support it on WebKit2 it is necessary to
  43786. refactor the code and move this functionality at the level of WebCore like
  43787. we already have on Windows.
  43788. The original code relies on some in AppKit functions that call back into
  43789. WebKit causing problems in WebKit2. All this functionality has been moved
  43790. at the level of the editor client where it can be dealt with appropriately.
  43791. * editing/Editor.cpp:
  43792. (WebCore::Editor::shouldInsertFragment):
  43793. * editing/mac/EditorMac.mm: extended to support Mail specific scenarios.
  43794. (WebCore::Editor::pasteWithPasteboard):
  43795. * loader/EmptyClients.h:
  43796. (WebCore::EmptyFrameLoaderClient::canShowMIMETypeAsHTML): Added.
  43797. (WebCore::EmptyEditorClient::documentFragmentFromAttributedString): Added.
  43798. (WebCore::EmptyEditorClient::setInsertionPasteboard): Added to support Mail.
  43799. * loader/FrameLoaderClient.h:
  43800. * page/EditorClient.h:
  43801. * platform/Pasteboard.h:
  43802. * platform/mac/PasteboardMac.mm:
  43803. (WebCore::Pasteboard::writeSelection): replaced call to Appkit with one that
  43804. doesn't calll back into WebKit.
  43805. (WebCore::Pasteboard::documentFragmentWithImageResource): Re-implemented at the
  43806. WebCore level.
  43807. (WebCore::Pasteboard::documentFragmentWithRtf): Re-implemented at the
  43808. WebCore level.
  43809. (WebCore::uniqueURLWithRelativePart): Added.
  43810. (WebCore::Pasteboard::documentFragment): Extended to include all the functionality
  43811. provided in documentFragmentFromPasteboard in WebHTMLView.mm.
  43812. 2010-09-13 Alejandro G. Castro <alex@igalia.com>
  43813. Reviewed by Kenneth Rohde Christiansen.
  43814. [Gtk] Reduce the size of the shadow buffer in the paths using the clip region
  43815. https://bugs.webkit.org/show_bug.cgi?id=44699
  43816. Intersect the clip bounding rect with the path that we are going
  43817. to use to create the shadow in order to reduce the region we have
  43818. to blur.
  43819. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  43820. (WebCore::drawPathShadow):
  43821. 210-09-13 Darin Fisher <darin@chromium.org>
  43822. Reviewed by David Levin.
  43823. Add option to conditionally compile smooth scrolling support.
  43824. https://bugs.webkit.org/show_bug.cgi?id=45689
  43825. The OS(WINDOWS) conditional becomes unnecessary since
  43826. ENABLE(SMOOTH_SCROLLING) should only be specified on
  43827. platforms that have a smooth scrolling implementation.
  43828. * platform/ScrollAnimator.cpp:
  43829. * platform/ScrollAnimatorWin.cpp:
  43830. * platform/ScrollAnimatorWin.h:
  43831. 2010-09-13 Ryosuke Niwa <rniwa@webkit.org>
  43832. Reviewed by Kent Tamura.
  43833. Move functions of StyledMarkupAccumulator below that of MarkupAccumulator
  43834. https://bugs.webkit.org/show_bug.cgi?id=45624
  43835. Moved the declaration of StyledMarkupAccumulator and the definitions of its member functions
  43836. to below the definitions of MarkupAccumulator's member functions.
  43837. No new tests are added since this is a cleanup.
  43838. * editing/markup.cpp:
  43839. (WebCore::StyledMarkupAccumulator::StyledMarkupAccumulator):
  43840. (WebCore::StyledMarkupAccumulator::appendElement):
  43841. (WebCore::StyledMarkupAccumulator::shouldAnnotate):
  43842. (WebCore::StyledMarkupAccumulator::wrapWithNode):
  43843. (WebCore::StyledMarkupAccumulator::wrapWithStyleNode):
  43844. (WebCore::StyledMarkupAccumulator::takeResults):
  43845. (WebCore::StyledMarkupAccumulator::appendText):
  43846. (WebCore::StyledMarkupAccumulator::renderedText):
  43847. (WebCore::StyledMarkupAccumulator::stringValueForRange):
  43848. (WebCore::styleFromMatchedRulesForElement):
  43849. (WebCore::StyledMarkupAccumulator::removeExteriorStyles):
  43850. (WebCore::needInterchangeNewlineAfter):
  43851. (WebCore::styleFromMatchedRulesAndInlineDecl):
  43852. (WebCore::removeEnclosingMailBlockquoteStyle):
  43853. (WebCore::removeDefaultStyles):
  43854. 2010-09-13 Alejandro G. Castro <alex@igalia.com>
  43855. Reviewed by Martin Robinson.
  43856. [GTK] Leak in the GraphicsContextCairo drawPathShadow
  43857. https://bugs.webkit.org/show_bug.cgi?id=44959
  43858. Fix a leak of the cairo_path.
  43859. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  43860. (WebCore::drawPathShadow):
  43861. * platform/graphics/cairo/OwnPtrCairo.cpp:
  43862. (WTF::cairo_path_t):
  43863. * platform/graphics/cairo/OwnPtrCairo.h:
  43864. 2010-09-13 Adam Barth <abarth@webkit.org>
  43865. Reviewed by Darin Adler.
  43866. Fix </sarcasm>
  43867. https://bugs.webkit.org/show_bug.cgi?id=45645
  43868. Umm... Yeah.
  43869. * html/parser/HTMLTreeBuilder.cpp:
  43870. (WebCore::HTMLTreeBuilder::processEndTagForInBody):
  43871. 2010-09-13 Gyuyoung Kim <gyuyoung.kim@samsung.com>
  43872. Reviewed by Darin Adler.
  43873. [WML] Fix build breaks when WML is enabled
  43874. https://bugs.webkit.org/show_bug.cgi?id=45628
  43875. There are build breaks by Bug 22382 when WML is enabled. The handleLinkClick() has an event parameter.
  43876. So, we need to set an event when wml invoke the handleLinkClick(). And, doTextFieldCommandFromEvent()
  43877. was moved to editor. So, we need to mofidy the invocation in WMLInputElement.cpp
  43878. * wml/WMLAElement.cpp:
  43879. (WebCore::WMLAElement::defaultEventHandler):
  43880. * wml/WMLInputElement.cpp:
  43881. (WebCore::WMLInputElement::defaultEventHandler):
  43882. 2010-09-13 Martin Robinson <mrobinson@igalia.com>
  43883. Reviewed by Xan Lopez.
  43884. [GTK] When a feature is disabled by default, the source necessary to build it are not included in the distribution
  43885. https://bugs.webkit.org/show_bug.cgi?id=45230
  43886. No new tests as this is just a build change.
  43887. * GNUmakefile.am: Move as many sources as possible to the SOURCES primary.
  43888. Others should be moved over time as we solve issues with them.
  43889. 2010-09-13 Chris Fleizach <cfleizach@apple.com>
  43890. Reviewed by Darin Adler.
  43891. REGRESSION (r64816-r64889): Crash in WebCore::AccessibilityRenderObject
  43892. https://bugs.webkit.org/show_bug.cgi?id=43807
  43893. Ensure that visiblePositionForPoint can handle non RenderBoxModelObject types.
  43894. Test: platform/mac/accessibility/visible-position-crash-for-text-node.html
  43895. * accessibility/AccessibilityRenderObject.cpp:
  43896. (WebCore::AccessibilityRenderObject::visiblePositionForPoint):
  43897. 2010-09-13 Martin Robinson <mrobinson@igalia.com>
  43898. Reviewed by Andreas Kling.
  43899. [Qt] DOM listeners get wrong keycodes for some keys
  43900. https://bugs.webkit.org/show_bug.cgi?id=43365
  43901. Produce the proper keycodes for the print screen key as well as the
  43902. keypad insert and delete keys.
  43903. * platform/qt/PlatformKeyboardEventQt.cpp:
  43904. (WebCore::windowsKeyCodeForKeyEvent): Fix keycode translation for the mentioned keys.
  43905. 2010-09-13 Jonathan Dixon <joth@chromium.org>
  43906. Reviewed by Steve Block.
  43907. [chromium] Port test shell geolocation fixes to DRT
  43908. https://bugs.webkit.org/show_bug.cgi?id=45313
  43909. Also re-apply rolled out patch http://trac.webkit.org/changeset/66886 :-
  43910. Add missing virtual destructor to the abstract base class.
  43911. * platform/chromium/GeolocationServiceChromium.cpp:
  43912. (WebCore::GeolocationServiceBridge::~GeolocationServiceBridge):
  43913. * platform/chromium/GeolocationServiceChromium.h:
  43914. 2010-09-13 Yury Semikhatsky <yurys@chromium.org>
  43915. Reviewed by Pavel Feldman.
  43916. Web Inspector: upstream testExpandScope debugger test
  43917. https://bugs.webkit.org/show_bug.cgi?id=45260
  43918. Test: inspector/debugger-expand-scope.html
  43919. * inspector/front-end/InjectedScript.js: return "Arguments" as class name for arguments variable in v8.
  43920. (injectedScriptConstructor.):
  43921. 2010-09-13 Mario Sanchez Prada <msanchez@igalia.com>
  43922. Reviewed by Martin Robinson.
  43923. [GTK] ATs should be able to select/unselect text
  43924. https://bugs.webkit.org/show_bug.cgi?id=25673
  43925. Implement AtkText's setSelection and removeSelection functions
  43926. * accessibility/AccessibilityObject.cpp:
  43927. (WebCore::AccessibilityObject::visiblePositionRangeForRange):
  43928. Moved some GTK specific code from a ifdef-endif region to
  43929. AccessibilityObjectAtk.cpp
  43930. * accessibility/AccessibilityObject.h:
  43931. * accessibility/gtk/AccessibilityObjectAtk.cpp:
  43932. (WebCore::AccessibilityObject::getLengthForTextRange): New.
  43933. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  43934. (webkit_accessible_text_remove_selection): Implemented following
  43935. the lead of GAIL's implementation of the AtkText interface.
  43936. (webkit_accessible_text_set_selection): Implemented following
  43937. the lead of GAIL's implementation of the AtkText interface.
  43938. (webkit_accessible_text_set_caret_offset): Changed to directly use
  43939. visiblePositionRangeForRange now that there's no longer a problem
  43940. with that, as it was in the past (only worked for text controls).
  43941. 2010-08-27 Kenneth Rohde Christiansen <kenneth@webkit.org>
  43942. Reviewed by Antti Koivisto.
  43943. Update support for the viewport meta tag algorithm, to
  43944. match the following draft spec:
  43945. http://people.opera.com/rune/TR/ED-css-viewport-20100806/
  43946. Add common handling of viewport meta tag based on new Opera spec
  43947. https://bugs.webkit.org/show_bug.cgi?id=44201
  43948. Tests: fast/viewport/viewport-1.html
  43949. fast/viewport/viewport-10.html
  43950. fast/viewport/viewport-100.html
  43951. fast/viewport/viewport-101.html
  43952. fast/viewport/viewport-102.html
  43953. fast/viewport/viewport-103.html
  43954. fast/viewport/viewport-104.html
  43955. fast/viewport/viewport-105.html
  43956. fast/viewport/viewport-106.html
  43957. fast/viewport/viewport-107.html
  43958. fast/viewport/viewport-108.html
  43959. fast/viewport/viewport-109.html
  43960. fast/viewport/viewport-11.html
  43961. fast/viewport/viewport-110.html
  43962. fast/viewport/viewport-111.html
  43963. fast/viewport/viewport-112.html
  43964. fast/viewport/viewport-113.html
  43965. fast/viewport/viewport-114.html
  43966. fast/viewport/viewport-115.html
  43967. fast/viewport/viewport-116.html
  43968. fast/viewport/viewport-117.html
  43969. fast/viewport/viewport-118.html
  43970. fast/viewport/viewport-119.html
  43971. fast/viewport/viewport-12.html
  43972. fast/viewport/viewport-120.html
  43973. fast/viewport/viewport-121.html
  43974. fast/viewport/viewport-122.html
  43975. fast/viewport/viewport-123.html
  43976. fast/viewport/viewport-124.html
  43977. fast/viewport/viewport-125.html
  43978. fast/viewport/viewport-126.html
  43979. fast/viewport/viewport-127.html
  43980. fast/viewport/viewport-13.html
  43981. fast/viewport/viewport-14.html
  43982. fast/viewport/viewport-15.html
  43983. fast/viewport/viewport-16.html
  43984. fast/viewport/viewport-17.html
  43985. fast/viewport/viewport-18.html
  43986. fast/viewport/viewport-19.html
  43987. fast/viewport/viewport-2.html
  43988. fast/viewport/viewport-20.html
  43989. fast/viewport/viewport-21.html
  43990. fast/viewport/viewport-22.html
  43991. fast/viewport/viewport-23.html
  43992. fast/viewport/viewport-24.html
  43993. fast/viewport/viewport-25.html
  43994. fast/viewport/viewport-26.html
  43995. fast/viewport/viewport-27.html
  43996. fast/viewport/viewport-28.html
  43997. fast/viewport/viewport-29.html
  43998. fast/viewport/viewport-3.html
  43999. fast/viewport/viewport-30.html
  44000. fast/viewport/viewport-31.html
  44001. fast/viewport/viewport-32.html
  44002. fast/viewport/viewport-33.html
  44003. fast/viewport/viewport-34.html
  44004. fast/viewport/viewport-35.html
  44005. fast/viewport/viewport-36.html
  44006. fast/viewport/viewport-37.html
  44007. fast/viewport/viewport-38.html
  44008. fast/viewport/viewport-39.html
  44009. fast/viewport/viewport-4.html
  44010. fast/viewport/viewport-40.html
  44011. fast/viewport/viewport-41.html
  44012. fast/viewport/viewport-42.html
  44013. fast/viewport/viewport-43.html
  44014. fast/viewport/viewport-44.html
  44015. fast/viewport/viewport-45.html
  44016. fast/viewport/viewport-46.html
  44017. fast/viewport/viewport-47.html
  44018. fast/viewport/viewport-48.html
  44019. fast/viewport/viewport-49.html
  44020. fast/viewport/viewport-5.html
  44021. fast/viewport/viewport-50.html
  44022. fast/viewport/viewport-51.html
  44023. fast/viewport/viewport-52.html
  44024. fast/viewport/viewport-53.html
  44025. fast/viewport/viewport-54.html
  44026. fast/viewport/viewport-55.html
  44027. fast/viewport/viewport-56.html
  44028. fast/viewport/viewport-57.html
  44029. fast/viewport/viewport-58.html
  44030. fast/viewport/viewport-59.html
  44031. fast/viewport/viewport-6.html
  44032. fast/viewport/viewport-60.html
  44033. fast/viewport/viewport-61.html
  44034. fast/viewport/viewport-62.html
  44035. fast/viewport/viewport-63.html
  44036. fast/viewport/viewport-64.html
  44037. fast/viewport/viewport-65.html
  44038. fast/viewport/viewport-66.html
  44039. fast/viewport/viewport-67.html
  44040. fast/viewport/viewport-68.html
  44041. fast/viewport/viewport-69.html
  44042. fast/viewport/viewport-7.html
  44043. fast/viewport/viewport-70.html
  44044. fast/viewport/viewport-71.html
  44045. fast/viewport/viewport-72.html
  44046. fast/viewport/viewport-73.html
  44047. fast/viewport/viewport-74.html
  44048. fast/viewport/viewport-75.html
  44049. fast/viewport/viewport-76.html
  44050. fast/viewport/viewport-77.html
  44051. fast/viewport/viewport-78.html
  44052. fast/viewport/viewport-79.html
  44053. fast/viewport/viewport-8.html
  44054. fast/viewport/viewport-80.html
  44055. fast/viewport/viewport-81.html
  44056. fast/viewport/viewport-82.html
  44057. fast/viewport/viewport-83.html
  44058. fast/viewport/viewport-84.html
  44059. fast/viewport/viewport-85.html
  44060. fast/viewport/viewport-86.html
  44061. fast/viewport/viewport-87.html
  44062. fast/viewport/viewport-88.html
  44063. fast/viewport/viewport-9.html
  44064. fast/viewport/viewport-90.html
  44065. * dom/ViewportArguments.cpp:
  44066. (WebCore::findConfigurationForViewportData):
  44067. (WebCore::findSizeValue):
  44068. (WebCore::findScaleValue):
  44069. (WebCore::findUserScalableValue):
  44070. (WebCore::findTargetDensityDPIValue):
  44071. (WebCore::setViewportFeature):
  44072. * dom/ViewportArguments.h:
  44073. (WebCore::ViewportArguments::):
  44074. (WebCore::ViewportArguments::ViewportArguments):
  44075. (WebCore::ViewportArguments::hasCustomArgument):
  44076. 2010-09-13 Andreas Kling <andreas.kling@nokia.com>
  44077. Reviewed by Kenneth Rohde Christiansen.
  44078. [Qt] Don't add empty strings to list of supported image MIME types
  44079. https://bugs.webkit.org/show_bug.cgi?id=45643
  44080. After <http://trac.webkit.org/changeset/67355> getMIMETypeForExtension()
  44081. returns an empty string instead of "application/octet-stream" for unsupported
  44082. extensions. Don't add these to the list of supported types, and clean out
  44083. the logic that removed "application/octet-stream" from supported types.
  44084. Fixes crash in initializeMIMETypeRegistry() due to inserting String() into
  44085. a HashSet<String>.
  44086. * platform/MIMETypeRegistry.cpp:
  44087. (WebCore::initializeSupportedImageMIMETypes):
  44088. (WebCore::initializeSupportedImageMIMETypesForEncoding):
  44089. 2010-09-13 Adam Barth <abarth@webkit.org>
  44090. Attempted Qt build fix.
  44091. * html/parser/HTMLElementStack.cpp:
  44092. 2010-09-13 Adam Barth <abarth@webkit.org>
  44093. Reviewed by Eric Seidel.
  44094. Apply spec changes to InForeignContentMode
  44095. https://bugs.webkit.org/show_bug.cgi?id=45636
  44096. Now breaking out of foreign content doesn't always bring you back to
  44097. HTML. If you have a foreign content element that can contain HTML, you
  44098. just get brought back to that element.
  44099. * html/parser/HTMLElementStack.cpp:
  44100. (WebCore::HTMLNames::isForeignContentScopeMarker):
  44101. (WebCore::HTMLElementStack::popUntilForeignContentScopeMarker):
  44102. * html/parser/HTMLElementStack.h:
  44103. * html/parser/HTMLTreeBuilder.cpp:
  44104. (WebCore::HTMLTreeBuilder::processStartTag):
  44105. (WebCore::HTMLTreeBuilder::processEndOfFile):
  44106. 2010-09-13 Adam Barth <abarth@webkit.org>
  44107. Reviewed by Eric Seidel.
  44108. Convert notImplemented() to ASSERT_NOT_REACHED
  44109. https://bugs.webkit.org/show_bug.cgi?id=45639
  44110. The reason we never implemented this state is because it's not actually
  44111. reachable.
  44112. * html/parser/HTMLTreeBuilder.cpp:
  44113. (WebCore::HTMLTreeBuilder::processStartTag):
  44114. 2010-09-13 Patrick Gansterer <paroga@paroga.com>
  44115. Reviewed by Kenneth Rohde Christiansen.
  44116. [WINCE] Buildfix for ScrollAnimatorWin
  44117. https://bugs.webkit.org/show_bug.cgi?id=45595
  44118. Use fabs() instead of abs().
  44119. * platform/ScrollAnimatorWin.cpp:
  44120. (WebCore::ScrollAnimatorWin::scroll):
  44121. (WebCore::ScrollAnimatorWin::animateScroll):
  44122. 2010-09-13 Adam Barth <abarth@webkit.org>
  44123. Reviewed by Eric Seidel.
  44124. Remove fixed FIXME
  44125. https://bugs.webkit.org/show_bug.cgi?id=45637
  44126. The spec made assertions that were false. Hixie fixed the spec by
  44127. removing the assertions. There's no need to keep these FIXMEs in the
  44128. code.
  44129. * html/parser/HTMLTreeBuilder.cpp:
  44130. (WebCore::HTMLTreeBuilder::processEndTagForInCell):
  44131. 2010-09-12 Adam Barth <abarth@webkit.org>
  44132. Reviewed by Eric Seidel.
  44133. Remove FIXME now that the HTML5 spec has been updated
  44134. https://bugs.webkit.org/show_bug.cgi?id=45634
  44135. The spec changed to say what we do here so this FIXME isn't needed
  44136. anymore.
  44137. Tests: fast/parser/form-pointer-1.html
  44138. fast/parser/form-pointer-2.html
  44139. fast/parser/form-pointer-3.html
  44140. fast/parser/form-pointer-4.html
  44141. * html/parser/HTMLTreeBuilder.cpp:
  44142. (WebCore::HTMLTreeBuilder::processStartTagForInTable):
  44143. 2010-09-12 Robin Qiu <robin.qiu@torchmobile.com.cn>
  44144. Reviewed by Antonio Gomes.
  44145. https://bugs.webkit.org/show_bug.cgi?id=18768
  44146. Fixed a bug in scroll flow. When we don't have scrollbars, we need to
  44147. repaintFixedElementsAfterScrolling(), sendScrollEvent() ... as well as
  44148. scrollContents();
  44149. Tests: scrollbars/scrollevent-iframe-no-scrolling-wheel.html
  44150. scrollbars/scrollevent-iframe-no-scrolling.html
  44151. * page/FrameView.cpp:
  44152. (WebCore::FrameView::valueChanged): Added.
  44153. * page/FrameView.h: Added a new method.
  44154. * platform/ScrollView.cpp:
  44155. (WebCore::ScrollView::valueChanged): Added.
  44156. (WebCore::ScrollView::updateScrollbars):
  44157. * platform/ScrollView.h: Added a new method.
  44158. 2010-09-10 MORITA Hajime <morrita@google.com>
  44159. Reviewed by Tony Chang.
  44160. [Chromium] Implement textInputController.hasSpellingMarker() for Chromium
  44161. https://bugs.webkit.org/show_bug.cgi?id=45441
  44162. Added an API for testing marker state.
  44163. We locate this here instead of DRT for sharing the logic between
  44164. multiple ports.
  44165. * WebCore.exp.in:
  44166. * editing/Editor.cpp:
  44167. (WebCore::Editor::selectionStartHasSpellingMarkerFor):
  44168. * editing/Editor.h:
  44169. 2010-09-12 Adam Barth <abarth@webkit.org>
  44170. Reviewed by Eric Seidel.
  44171. Adoption agency should use takeAllChildrenFrom
  44172. https://bugs.webkit.org/show_bug.cgi?id=45570
  44173. Before this patch, we were using an unsafe pattern of walking the
  44174. sibling list without grabbing references. Instead, we should use the
  44175. shiny new takeAllChildrenFrom method that shoves the children into a
  44176. vector first. Also, update takeAllChildrenFrom to handle the case
  44177. where the old parent is attached.
  44178. * dom/ContainerNode.cpp:
  44179. (WebCore::ContainerNode::takeAllChildrenFrom):
  44180. * html/parser/HTMLTreeBuilder.cpp:
  44181. (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
  44182. * html/parser/HTMLTreeBuilder.h:
  44183. 2010-09-12 Adam Barth <abarth@webkit.org>
  44184. Reviewed by Eric Seidel.
  44185. isParsingFragment assert hit in new treebuilder
  44186. https://bugs.webkit.org/show_bug.cgi?id=45621
  44187. Update our list of special tags to match the spec.
  44188. * html/parser/HTMLTreeBuilder.cpp:
  44189. 2010-09-12 Robert Hogan <robert@webkit.org>
  44190. Reviewed by Andreas Kling.
  44191. [Qt] Fix http/tests/navigation/reload-subframe-object.html
  44192. We need to bring our use of getMimeTypeForPath() and
  44193. getMimeTypeForExtension() into line with WebCore expectations.
  44194. We should use MIMETypeRegistry::getMIMETypeForExtension() for cases
  44195. where an empty mimetype should be returned if no match is found, and
  44196. MIMETypeRegistry::getMIMETypeForPath() for cases where
  44197. 'application/octet-stream' should be returned if no match is found.
  44198. Fixes http/tests/navigation/reload-subframe-object.html
  44199. Based on findings in webkit.org/b/31398 and webkit.org/b/15554.
  44200. https://bugs.webkit.org/show_bug.cgi?id=45613
  44201. * platform/network/qt/QNetworkReplyHandler.cpp:
  44202. (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
  44203. * platform/qt/MIMETypeRegistryQt.cpp:
  44204. (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
  44205. 2010-09-12 Dan Bernstein <mitz@apple.com>
  44206. Reviewed by Adele Peterson.
  44207. Neglect unlikely hyphenation opportunities
  44208. https://bugs.webkit.org/show_bug.cgi?id=45606
  44209. Avoid looking for hyphenation points in about 40% of the cases at the cost of missing about
  44210. 3% of the hyphenation opportunities.
  44211. * rendering/RenderBlockLineLayout.cpp:
  44212. (WebCore::tryHyphenating): Bail out if the widest the prefix before the hyphen can be is no more
  44213. than 5/4 the font size.
  44214. 2010-09-12 Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
  44215. Reviewed by Simon Hausmann.
  44216. [Qt] fix qt_webkit_version.pri install for in-Qt builds
  44217. Always add the target, even if building inside Qt - as opposed to the
  44218. headers and libraries, there are no rules for that coming from
  44219. qbase.pri.
  44220. Task-number: QTBUG-13306
  44221. * WebCore.pro:
  44222. 2010-09-12 Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
  44223. Reviewed by Simon Hausmann.
  44224. [Qt] Let QtWebKit inject itself into the qt configuration
  44225. i.e., don't explicitly deal with qt_webkit_version.pri outside of the
  44226. webkit source directory.
  44227. Task-number: QTBUG-12379
  44228. * WebCore.pro:
  44229. 2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
  44230. [Qt] Build fix.
  44231. * WebCore.pro: Re-add erroneously removed sources.
  44232. 2010-09-12 Andreas Kling <andreas.kling@nokia.com>
  44233. Reviewed by Kenneth Rohde Christiansen.
  44234. [Qt] Remove Path::closeSubpath() workaround for broken miter joins
  44235. https://bugs.webkit.org/show_bug.cgi?id=45618
  44236. Removed Path::closeCanvasSubpath() and share the logic between Canvas and SVG
  44237. paths. The problem was actually in Qt's path stroker and has been fixed for Qt 4.7.1.
  44238. * html/canvas/CanvasRenderingContext2D.cpp:
  44239. (WebCore::CanvasRenderingContext2D::closePath):
  44240. * platform/graphics/Path.h:
  44241. * platform/graphics/qt/PathQt.cpp:
  44242. 2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
  44243. Fix the Gtk and minimal builds.
  44244. * plugins/PluginView.cpp:
  44245. (WebCore::PluginView::npObject): Correct the #ifdefs.
  44246. (WebCore::PluginView::bindingInstance): Moved npErr variable
  44247. into npObject() function where it is used.
  44248. 2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
  44249. [Qt] Prospective build fix for minimal build.
  44250. * plugins/PluginView.cpp: Guard newly added function
  44251. by ENABLE_NETSCAPE_PLUGIN feature.
  44252. (WebCore::PluginView::npObject):
  44253. * plugins/PluginView.h:
  44254. 2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
  44255. Reviewed by Andreas Kling.
  44256. [Qt] Add support for binding QtWebKit to a QScriptEngine.
  44257. The ScriptController owns the V8 context, and this patch
  44258. for the Qt build also gives it a QScriptEngine, that has
  44259. been instructed to adopt the V8 context.
  44260. This is the enabler for the QObject bindings, used in
  44261. the API and DRT.
  44262. * WebCore.pro:
  44263. * bindings/v8/ScriptController.cpp: Include QScriptEngine
  44264. for the Qt build, to let the ~ScriptController destructor
  44265. find the QScriptEngine destructor (via OwnPtr).
  44266. * bindings/v8/ScriptController.h: Declare getters.
  44267. * bindings/v8/ScriptControllerQt.cpp: Added.
  44268. (WebCore::ScriptController::qtScriptEngine): Implement
  44269. engine adoption.
  44270. 2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
  44271. Reviewed by Andreas Kling.
  44272. [Qt] Last bits and pieces for a V8 build.
  44273. When building with V8, get it from QtScript.
  44274. * WebCore.pro: Use QtScript, removed non-existant
  44275. bridge files from the build.
  44276. 2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
  44277. Reviewed by Andreas Kling.
  44278. [Qt] Add PlatformBridge for V8 build.
  44279. Add the minimalisting platform bridge with the two
  44280. methods needed by NPV8Object.cpp.
  44281. * WebCore.pro:
  44282. * platform/qt/PlatformBridge.h: Added.
  44283. * platform/qt/PlatformBridgeQt.cpp: Added.
  44284. (WebCore::PlatformBridge::popupsAllowed):
  44285. (WebCore::PlatformBridge::pluginScriptableObject):
  44286. * plugins/PluginView.cpp: Refactor the plugin object
  44287. retrieval code into a separate function, called by
  44288. bindingInstance() and PlatformBridge.
  44289. (WebCore::PluginView::npObject):
  44290. (WebCore::PluginView::bindingInstance):
  44291. * plugins/PluginView.h:
  44292. 2010-09-11 Jer Noble <jer.noble@apple.com>
  44293. Reviewed by Eric Carlson.
  44294. http/tests/media/text-served-as-text.html failing on Windows (Debug+Release)
  44295. https://bugs.webkit.org/show_bug.cgi?id=45603
  44296. Disable the eat/text components under Windows the same way as we do on the Mac.
  44297. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
  44298. * platform/graphics/win/QTMovie.cpp:
  44299. * platform/graphics/win/QTMovie.h:
  44300. 2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
  44301. Reviewed by Andreas Kling.
  44302. Fix compilation of the V8 bindings on X11 with Qt.
  44303. This changes brings the file in sync with its copy in bridge/,
  44304. adding additional conflicting X11 keywords to undef. This is
  44305. a temporary fix until the file is removed altogether, which is
  44306. tracked in https://bugs.webkit.org/show_bug.cgi?id=45617
  44307. * bindings/v8/npruntime_internal.h:
  44308. 2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
  44309. Reviewed by Andreas Kling.
  44310. Fix compilation of the V8 bindings on X11 with Qt.
  44311. These headers include npruntime, which drag on X11Resources.h, which
  44312. among other things #define's None and Boolean. Later on v8.h is included,
  44313. which declares these in enums and therefore conflicts. npruntime_internal.h
  44314. was introduced exactly to address this problem by including npruntime.h
  44315. and undeff'ing the offending constants.
  44316. * bindings/v8/V8Helpers.h:
  44317. * bindings/v8/V8NPObject.h:
  44318. * bindings/v8/V8NPUtils.h:
  44319. 2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
  44320. Gtk build fix.
  44321. Use false instead of False after
  44322. http://trac.webkit.org/changeset/67323
  44323. * plugins/gtk/PluginViewGtk.cpp:
  44324. (WebCore::PluginView::updatePluginWidget):
  44325. (WebCore::PluginView::paint):
  44326. 2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
  44327. Reviewed by Andreas Kling.
  44328. [Qt] Fix the compilation of V8Binding.cpp when compiling with Qt.
  44329. * bindings/v8/V8Binding.cpp:
  44330. (WebCore::WebCoreStringResource::WebCoreStringResource): In this
  44331. line an AtomicString should be converted to a WTF::String. The former
  44332. has a conversion operator to the latter, to be able to call the
  44333. WTF::String copy constructor. When compiling with Qt, then AtomicString
  44334. also has a conversion operator to QString _and_ WTF::String has an
  44335. implicit constructor that takes a QString. Therefore the compiler is
  44336. confused and not sure which conversion to prefer, the one that isn't
  44337. actually a conversion - going to WTF::String - or the conversion from
  44338. AtomicString to QString and then constructing the WTF::String from
  44339. a QString. To resolve this ambiguity we explicitly call the string()
  44340. helper function on the AtomicString, which is equivalent to the
  44341. operator WTF::String().
  44342. 2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
  44343. Reviewed by Andreas Kling.
  44344. Fix the build without JSC.
  44345. Complement http://trac.webkit.org/changeset/59826 and
  44346. add missing JSC guards.
  44347. * plugins/PluginView.cpp:
  44348. (WebCore::PluginView::bindingInstance):
  44349. (WebCore::PluginView::privateBrowsingStateChanged):
  44350. * plugins/qt/PluginViewQt.cpp:
  44351. (WebCore::PluginView::dispatchNPEvent):
  44352. (WebCore::PluginView::setNPWindowIfNeeded):
  44353. (WebCore::PluginView::platformStart):
  44354. 2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
  44355. Reviewed by Andreas Kling.
  44356. Fix compilation with V8 and XPath enabled.
  44357. V8XPathNSResolver.cpp includes V8XPathNSResolver.h,
  44358. which includes V8DOMWrapper.h as its first header.
  44359. V8DOMWrapper.h then uses V8XPathNSResolver in an inline
  44360. function, and gcc doesn't seem to like this, because
  44361. at this point the type isn't known ("V8XPathNSResolver
  44362. has not been declared"). Forward declaring the type
  44363. doesn't help unfortunately: "incomplete type
  44364. 'WebCore::V8XPathNSResolver' used in nested name
  44365. specifier".
  44366. To resolve this circular dependency, this patch moves
  44367. the inline function into the .cpp file.
  44368. * bindings/v8/V8DOMWrapper.cpp:
  44369. (WebCore::V8DOMWrapper::getXPathNSResolver):
  44370. * bindings/v8/V8DOMWrapper.h:
  44371. 2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
  44372. Reviewed by Andreas Kling.
  44373. [Qt][X11] Fix build with V8 against X11 headers.
  44374. Added "True" and "False" to the list of words
  44375. we free from the X11 macro jail.
  44376. * bridge/npruntime_internal.h:
  44377. * config.h: The V8 bindings end up indirectly pulling
  44378. in X11 headers and they use True/False. There's no
  44379. central header apart from this one, so include the
  44380. x11 fixing header here for Qt/X11/V8.
  44381. * plugins/qt/PluginViewQt.cpp:
  44382. (WebCore::PluginView::paint): Use false instead of False
  44383. since False isn't available anymore.
  44384. 2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
  44385. Reviewed by Andreas Kling.
  44386. [Qt] Fix compilation with V8 and Qt.
  44387. Use WebKit's page cache for ScriptCachedFrameData.
  44388. * bindings/v8/ScriptCachedFrameData.h:
  44389. 2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
  44390. Reviewed by Andreas Kling.
  44391. Fix compiler warning.
  44392. NPClass has 13 members, the last one (NPConstructFunctionPtr construct) wasn't
  44393. initialized explicitly.
  44394. * bindings/v8/NPV8Object.cpp:
  44395. 2010-09-12 Mario Sanchez Prada <msanchez@igalia.com>
  44396. Reviewed by Martin Robinson.
  44397. [Gtk] get_n_selections and get_selection fail when selecting text across object boundaries
  44398. https://bugs.webkit.org/show_bug.cgi?id=26991
  44399. Fix AtkText getNSelections() and getSelection() to work properly
  44400. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  44401. (selectionBelongsToObject): Check that both the selection intersects
  44402. the node AND that the selection is not just "touching" one of the
  44403. boundaries for the selected node. We want to check whether the
  44404. node is actually inside the region, at least partially
  44405. (getSelectionOffsetsForObject): New function to get the start and
  44406. end offsets of a selection for a given accessible object.
  44407. (webkit_accessible_text_get_selection): Return zero when both
  44408. start and end offsets are equal, following the lead of GAIL.
  44409. 2010-09-11 Adam Barth <abarth@webkit.org>
  44410. Reviewed by Sam Weinig.
  44411. Make SecurityOrigin::canDisplay an instance function
  44412. https://bugs.webkit.org/show_bug.cgi?id=45219
  44413. This function was secretly an instance function because callers needed
  44414. to pass in a document (which owns a SecurityOrigin). Only the
  44415. FrameLoader actually needs the method to be static.
  44416. * WebCore.exp.in:
  44417. * html/HTMLMediaElement.cpp:
  44418. (WebCore::HTMLMediaElement::isSafeToLoadURL):
  44419. * loader/Cache.cpp:
  44420. (WebCore::Cache::requestResource):
  44421. - Notice that DocLoader::doc() can never be 0.
  44422. * loader/FrameLoader.cpp:
  44423. (WebCore::FrameLoader::loadFrameRequest):
  44424. * loader/PingLoader.cpp:
  44425. (WebCore::PingLoader::loadImage):
  44426. * loader/SubframeLoader.cpp:
  44427. (WebCore::SubframeLoader::loadMediaPlayerProxyPlugin):
  44428. (WebCore::SubframeLoader::createJavaAppletWidget):
  44429. (WebCore::SubframeLoader::loadSubframe):
  44430. (WebCore::SubframeLoader::loadPlugin):
  44431. * loader/SubresourceLoader.cpp:
  44432. (WebCore::SubresourceLoader::create):
  44433. * page/SecurityOrigin.cpp:
  44434. (WebCore::SecurityOrigin::canDisplay):
  44435. (WebCore::SecurityOrigin::deprecatedCanDisplay):
  44436. * page/SecurityOrigin.h:
  44437. * plugins/PluginView.cpp:
  44438. (WebCore::PluginView::load):
  44439. 2010-09-11 Adam Barth <abarth@webkit.org>
  44440. Reviewed by Sam Weinig.
  44441. Make SecurityOrigin::canDisplay an instance function
  44442. https://bugs.webkit.org/show_bug.cgi?id=45219
  44443. This function was secretly an instance function because callers needed
  44444. to pass in a document (which owns a SecurityOrigin). Only the
  44445. FrameLoader actually needs the method to be static.
  44446. * WebCore.exp.in:
  44447. * html/HTMLMediaElement.cpp:
  44448. (WebCore::HTMLMediaElement::isSafeToLoadURL):
  44449. * loader/Cache.cpp:
  44450. (WebCore::Cache::requestResource):
  44451. - Notice that DocLoader::doc() can never be 0.
  44452. * loader/FrameLoader.cpp:
  44453. (WebCore::FrameLoader::loadFrameRequest):
  44454. * loader/PingLoader.cpp:
  44455. (WebCore::PingLoader::loadImage):
  44456. * loader/SubframeLoader.cpp:
  44457. (WebCore::SubframeLoader::loadMediaPlayerProxyPlugin):
  44458. (WebCore::SubframeLoader::createJavaAppletWidget):
  44459. (WebCore::SubframeLoader::loadSubframe):
  44460. (WebCore::SubframeLoader::loadPlugin):
  44461. * loader/SubresourceLoader.cpp:
  44462. (WebCore::SubresourceLoader::create):
  44463. * page/SecurityOrigin.cpp:
  44464. (WebCore::SecurityOrigin::canDisplay):
  44465. (WebCore::SecurityOrigin::deprecatedCanDisplay):
  44466. * page/SecurityOrigin.h:
  44467. * plugins/PluginView.cpp:
  44468. (WebCore::PluginView::load):
  44469. 2010-09-11 Simon Hausmann <simon.hausmann@nokia.com>
  44470. Unreviewed.
  44471. [Qt] Trivial V8 build fix.
  44472. * WebCore.pri: Add storage, workers and css to the include paths for the
  44473. JS code generator.
  44474. 2010-09-11 Andreas Kling <andreas.kling@nokia.com>
  44475. Reviewed by Simon Hausmann.
  44476. [Qt] V8 port: Fix "WTF::String::utf8" returns incomplete type WTF::CString
  44477. https://bugs.webkit.org/show_bug.cgi?id=45157
  44478. Include CString.h where necessary. Chromium builds would get it from
  44479. KURLGooglePrivate.h so this is only an issue for Qt + V8.
  44480. * bindings/v8/V8Proxy.cpp:
  44481. * inspector/InspectorDebuggerAgent.cpp:
  44482. * inspector/InspectorProfilerAgent.cpp:
  44483. * plugins/PluginDatabase.cpp:
  44484. 2010-09-11 Simon Hausmann <simon.hausmann@nokia.com>
  44485. Reviewed by Andreas Kling.
  44486. [Qt] V8 port: webkit project files changes
  44487. https://bugs.webkit.org/show_bug.cgi?id=45140
  44488. * WebCore.pro: Removed unecessary common.pri inclusion from earlier patch.
  44489. 2010-09-03 Vlad Burlik <volodimir.burlik@nokia.com>, Simon Hausmann <simon.hausmann@nokia.com>
  44490. Reviewed by Andreas Kling.
  44491. [Qt] V8 port: webcore project files changes
  44492. https://bugs.webkit.org/show_bug.cgi?id=45141
  44493. Modify webcore project files to include V8 javascript engine. By default disabled.
  44494. * WebCore.pri:
  44495. * WebCore.pro:
  44496. * features.pri:
  44497. 2010-09-11 Andreas Kling <andreas.kling@nokia.com>
  44498. Reviewed by Simon Hausmann.
  44499. Web Inspector: Include CString.h in generated files
  44500. This is necessary for generated code that uses the CString
  44501. returned by String::utf8() (from generateBackendDispatcher)
  44502. Chromium builds already get CString.h from KURLGooglePrivate.h
  44503. so this issue only occurs when building Qt against V8.
  44504. * inspector/CodeGeneratorInspector.pm:
  44505. 2010-09-11 Adele Peterson <adele@apple.com>
  44506. Reviewed by Sam Weinig.
  44507. Fix for https://bugs.webkit.org/show_bug.cgi?id=45587
  44508. Move line clamp code to its own function.
  44509. * rendering/RenderFlexibleBox.cpp:
  44510. (WebCore::RenderFlexibleBox::layoutVerticalBox):
  44511. (WebCore::RenderFlexibleBox::applyLineClamp):
  44512. * rendering/RenderFlexibleBox.h:
  44513. 2010-09-11 Mihai Parparita <mihaip@chromium.org>
  44514. Reviewed by Adam Barth.
  44515. URIs in styles created via innerHTML are not resolved against the document's base URI
  44516. https://bugs.webkit.org/show_bug.cgi?id=45565
  44517. The dummy document used for fragment parsing created by
  44518. FragmentParsingContext should use the base URI of the fragment's
  44519. document. Since (HTML)Document doesn't expose a setter for the base URI
  44520. (and shouldn't), we allow it to be set by the constructor/create
  44521. function.
  44522. Also remove some obsolete code that references the legacy tree builder
  44523. from HTMLElement that I happened to notice.
  44524. Test: fast/innerHTML/innerHTML-uri-resolution.html
  44525. * dom/Document.cpp:
  44526. (WebCore::Document::Document):
  44527. * dom/Document.h:
  44528. * html/HTMLDocument.cpp:
  44529. (WebCore::HTMLDocument::HTMLDocument):
  44530. * html/HTMLDocument.h:
  44531. (WebCore::HTMLDocument::create):
  44532. * html/HTMLElement.cpp:
  44533. (WebCore::createFragmentFromSource):
  44534. (WebCore::HTMLElement::setInnerHTML):
  44535. * html/parser/HTMLTreeBuilder.cpp:
  44536. (WebCore::HTMLTreeBuilder::FragmentParsingContext::FragmentParsingContext):
  44537. 2010-09-10 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org>
  44538. Reviewed by Darin Adler.
  44539. Add NetworkingContext to avoid layer violations
  44540. https://bugs.webkit.org/show_bug.cgi?id=42292
  44541. Activate NetworkingContext:
  44542. Since the ResourceHandle::create, ResourceHandle::start and
  44543. ResourceHandle::loadResourceSynchronously API's were modified,
  44544. having their Frame* parameter substituted by a NetworkingContext*,
  44545. all implementations of them were also modified.
  44546. This patch also modifies all functions that were calling the above
  44547. ones.
  44548. * loader/FrameLoader.cpp:
  44549. (WebCore::FrameLoader::loadResourceSynchronously):
  44550. * loader/FrameLoader.h:
  44551. * loader/MainResourceLoader.cpp:
  44552. (WebCore::MainResourceLoader::loadNow):
  44553. * loader/PingLoader.cpp:
  44554. (WebCore::PingLoader::PingLoader):
  44555. * loader/ResourceLoader.cpp:
  44556. (WebCore::ResourceLoader::load):
  44557. * loader/appcache/ApplicationCacheGroup.cpp:
  44558. (WebCore::ApplicationCacheGroup::createResourceHandle):
  44559. * loader/icon/IconFetcher.cpp:
  44560. (WebCore::IconFetcher::loadEntry):
  44561. * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
  44562. (webKitWebSrcStart):
  44563. * platform/network/ResourceHandle.cpp:
  44564. (WebCore::ResourceHandle::create):
  44565. * platform/network/ResourceHandle.h:
  44566. * platform/network/ResourceHandleInternal.h:
  44567. (WebCore::ResourceHandleInternal::ResourceHandleInternal):
  44568. * platform/network/cf/ResourceHandleCFNet.cpp:
  44569. (WebCore::ResourceHandle::start):
  44570. (WebCore::ResourceHandle::loadResourceSynchronously):
  44571. * platform/network/curl/ResourceHandleCurl.cpp:
  44572. (WebCore::ResourceHandle::start):
  44573. (WebCore::ResourceHandle::loadResourceSynchronously):
  44574. * platform/network/mac/ResourceHandleMac.mm:
  44575. (WebCore::ResourceHandle::start):
  44576. (WebCore::ResourceHandle::loadResourceSynchronously):
  44577. * platform/network/qt/QNetworkReplyHandler.cpp:
  44578. (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
  44579. (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
  44580. (WebCore::QNetworkReplyHandler::start):
  44581. * platform/network/qt/ResourceHandleQt.cpp:
  44582. (WebCore::ResourceHandle::start):
  44583. (WebCore::ResourceHandle::willLoadFromCache):
  44584. (WebCore::ResourceHandle::loadResourceSynchronously):
  44585. * platform/network/soup/ResourceHandleSoup.cpp:
  44586. * platform/network/win/ResourceHandleWin.cpp:
  44587. (WebCore::ResourceHandle::start):
  44588. 2010-09-10 Jer Noble <jer.noble@apple.com>
  44589. No review; build fix only.
  44590. <CoreGraphics/CGAffineTransform.h> isn't on the build bots either. Wrap
  44591. all references to m_movieTransform in #if USE(ACCELERATED_COMPOSITING) guards.
  44592. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
  44593. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::MediaPlayerPrivateQuickTimeVisualContext):
  44594. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::naturalSize):
  44595. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::retrieveAndResetMovieTransform):
  44596. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
  44597. 2010-09-10 Jer Noble <jer.noble@apple.com>
  44598. No review; build fix only.
  44599. <CoreGraphics/CGFloat.h> does not exist on the build bots. Replace
  44600. instances of CGFAbs() with abs().
  44601. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
  44602. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::naturalSize):
  44603. 2010-09-10 Dan Bernstein <mitz@apple.com>
  44604. Reviewed by Darin Adler.
  44605. <rdar://problem/8414282> Can’t dynamically change first-letter to/from floating
  44606. Test: fast/dynamic/first-letter-display-change.html
  44607. * rendering/RenderBlock.cpp:
  44608. (WebCore::styleForFirstLetter): Factored this helper function out.
  44609. (WebCore::RenderBlock::updateFirstLetter): Renamed variables so that the
  44610. “update style” and “create new” branches use the same terminology. In the
  44611. update case, if the style change requires a new renderer, handle it.
  44612. * rendering/RenderTextFragment.h:
  44613. (WebCore::toRenderTextFragment): Added.
  44614. 2010-09-10 Sam Weinig <sam@webkit.org>
  44615. Reviewed by Darin Adler.
  44616. Remove unnecessary constraint in WebCore of choosing either text zoom or full page zoom.
  44617. Precursor to <rdar://problem/7660657>
  44618. https://bugs.webkit.org/show_bug.cgi?id=45522
  44619. * GNUmakefile.am:
  44620. * WebCore.exp.in:
  44621. * WebCore.gypi:
  44622. * WebCore.pro:
  44623. * WebCore.vcproj/WebCore.vcproj:
  44624. * WebCore.xcodeproj/project.pbxproj:
  44625. Remove ZoomMode.h
  44626. * css/CSSStyleSelector.cpp:
  44627. (WebCore::CSSStyleSelector::applyProperty):
  44628. (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize):
  44629. Remove uses of shouldApplyTextZoom(), it had turned into just a compare to 1.0f.
  44630. * html/HTMLBodyElement.cpp:
  44631. (WebCore::adjustForZoom):
  44632. (WebCore::HTMLBodyElement::setScrollLeft):
  44633. (WebCore::HTMLBodyElement::setScrollTop):
  44634. Convert these to use the explicit pageZoomFactor() function, it made no sense for text zoom
  44635. anyway.
  44636. * page/Frame.h:
  44637. Remove include of ZoomMode.h
  44638. * page/FrameView.cpp:
  44639. (WebCore::parentPageZoomFactor):
  44640. (WebCore::parentTextZoomFactor):
  44641. (WebCore::FrameView::FrameView):
  44642. (WebCore::FrameView::setPageZoomFactor):
  44643. (WebCore::FrameView::setTextZoomFactor):
  44644. (WebCore::FrameView::setPageAndTextZoomFactors):
  44645. * page/FrameView.h:
  44646. (WebCore::FrameView::pageZoomFactor):
  44647. (WebCore::FrameView::textZoomFactor):
  44648. Change FrameView to store two values for zoom, one for page zoom and one for text zoom.
  44649. * page/Settings.cpp:
  44650. (WebCore::Settings::Settings):
  44651. * page/Settings.h:
  44652. Removed zoom mode.
  44653. * page/ZoomMode.h: Removed.
  44654. * rendering/RenderView.cpp:
  44655. (WebCore::RenderView::zoomFactor):
  44656. Remove now unnecessary call to shouldApplyPageZoom since it will be 1 if it should
  44657. be ignored.
  44658. * svg/SVGSVGElement.cpp:
  44659. (WebCore::SVGSVGElement::setCurrentScale):
  44660. Use explicit setPageZoomFactor function.
  44661. 2010-09-10 Ryuan Choi <ryuan.choi@samsung.com>
  44662. Unreviewed build fix for EFL.
  44663. [EFL] REGRESSION(67167) build break because of newly added JSBindingState.cpp
  44664. https://bugs.webkit.org/show_bug.cgi?id=45537
  44665. * CMakeLists.txt:
  44666. 2010-09-10 Darin Adler <darin@apple.com>
  44667. Reviewed by Sam Weinig.
  44668. Move some Dashboard stuff from WebCore to WebKit along with a bit more FrameMac cleanup
  44669. https://bugs.webkit.org/show_bug.cgi?id=45582
  44670. * WebCore.exp.in: Updated.
  44671. * WebCore.xcodeproj/project.pbxproj: Removed WebDashboardRegion.h/m.
  44672. * page/mac/WebDashboardRegion.h: Removed.
  44673. * page/mac/WebDashboardRegion.m: Removed.
  44674. * page/Frame.h: Removed unneeded #if. Removed dashboardRegionsDictionary function, now
  44675. handled in WebKit. Removed searchForNSLabelsAboveCell function, which had become dead code.
  44676. * page/mac/FrameMac.mm: Ditto. Also tweaked a place that said "int unsigned".
  44677. 2010-09-10 Peter Kasting <pkasting@google.com>
  44678. Reviewed by Darin Adler.
  44679. Make middle clicks not fire DOM onclick events.
  44680. https://bugs.webkit.org/show_bug.cgi?id=22382
  44681. * html/HTMLAnchorElement.cpp: Explicitly include middle-clicks in the
  44682. computation of what constitutes a link click, since they're no longer
  44683. implicitly included.
  44684. (WebCore::isLinkClick):
  44685. * html/HTMLInputElement.cpp: Removed unneeded checks that click events
  44686. are coming from the left mouse button, since they all are now.
  44687. (WebCore::HTMLInputElement::preDispatchEventHandler):
  44688. (WebCore::HTMLInputElement::postDispatchEventHandler):
  44689. (WebCore::HTMLInputElement::defaultEventHandler):
  44690. * page/EventHandler.cpp: Changed logic to send a click event only for
  44691. the left button.
  44692. (WebCore::EventHandler::handleMouseDoubleClickEvent):
  44693. (WebCore::EventHandler::handleMouseReleaseEvent):
  44694. 2010-09-10 Adam Barth <abarth@webkit.org>
  44695. Attempted build fix for Qt Minimal.
  44696. * dom/Element.cpp:
  44697. (WebCore::Element::getBoundingClientRect):
  44698. 2010-09-10 Dan Bernstein <mitz@apple.com>
  44699. Reviewed by Anders Carlsson.
  44700. Pseudostyle resolution corrupts cached child index values
  44701. https://bugs.webkit.org/show_bug.cgi?id=45574
  44702. Covered by fast/dom/firstline-fixed-crash.html and fast/dom/firstletter-tablecell-crash.html.
  44703. RenderBlock::updateFirstLetter() calls getCachedPseudoStyle() passing as the parent style the
  44704. style of the parent of the first letter, which is not always the parent of the element for
  44705. which we are getting :first-letter style. As a result, style resolution caches childIndex values
  44706. in the wrong element’s style.
  44707. * css/CSSStyleSelector.cpp:
  44708. (WebCore::CSSStyleSelector::pseudoStyleForElement): Create the new style and inherit from
  44709. the parent style before matching rules, to avoid corrupting the parent style itself.
  44710. (WebCore::CSSStyleSelector::checkSelector): Always pass the element’s parent style as
  44711. the parent style here.
  44712. * rendering/RenderBlock.cpp:
  44713. (WebCore::RenderBlock::updateFirstLetter): Removed the null check that was added
  44714. in r67183.
  44715. * rendering/RenderBlockLineLayout.cpp:
  44716. (WebCore::RenderBlock::findNextLineBreak): Removed the null check that was added
  44717. in r67184.
  44718. 2010-09-10 Jer Noble <jer.noble@apple.com>
  44719. Reviewed by Simon Fraser.
  44720. Movies with track or movie matrices don't display in <video> elements (Safari 5/Windows)
  44721. https://bugs.webkit.org/show_bug.cgi?id=45333
  44722. rdar://problem/81333126
  44723. QuickTime will refuse to decode video frames for movies whose movie and track matrices
  44724. are non-identity. To work around this problem, extract the movie and track matrices
  44725. from the movie, and set that matrix on the video layer instead.
  44726. * WebCore.vcproj/QTMovieWin.vcproj:
  44727. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
  44728. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayoutClient::LayoutClient): Added.
  44729. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayoutClient::layoutSublayersOfLayer):
  44730. Layout the video layer according to its superlayer's size.
  44731. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::MediaPlayerPrivateQuickTimeVisualContext):
  44732. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::platformLayer):
  44733. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::naturalSize):
  44734. Apply the m_movieTransform to the size reported by QTMovie.
  44735. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::retrieveAndResetMovieTransform):
  44736. Calculate m_movieTransform and reset the movie and track matrices in the movie.
  44737. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::createLayerForMovie):
  44738. Create two nested layers instead of one.
  44739. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::destroyLayerForMovie):
  44740. Make sure to remove m_qtVideoLayer from any superlayer before dereferencing it.
  44741. * platform/graphics/win/QTMovie.cpp:
  44742. (QTMovie::videoTracks): Added.
  44743. (QTMovie::getTransform): Added.
  44744. (QTMovie::setTransform): Added.
  44745. (QTMovie::resetTransform): Added.
  44746. * platform/graphics/win/QTMovie.h:
  44747. * platform/graphics/win/QTTrack.cpp: Added.
  44748. * platform/graphics/win/QTTrack.h: Added.
  44749. * platform/graphics/win/WKCACFLayer.cpp:
  44750. (WebCore::WKCACFLayer::setBounds): Call setNeedsLayout() if a layoutClient is present.
  44751. (WebCore::WKCACFLayer::setFrame): Call setNeedsLayout() if a layoutClient is present.
  44752. 2010-09-10 Jer Noble <jer.noble@apple.com>
  44753. No review; build fix only.
  44754. Touch mediaControlsQuickTime in order to trigger the UserAgentStyleSheet.h to be rebuilt.
  44755. * css/mediaControlsQuickTime.css:
  44756. (audio::-webkit-media-controls-volume-slider-mute-button, video::-webkit-media-controls-volume-slider-mute-button):
  44757. 2010-09-10 Adam Barth <abarth@webkit.org>
  44758. Reviewed by Darin Fisher.
  44759. Move code from WebKit-layer to DocumentLoader
  44760. https://bugs.webkit.org/show_bug.cgi?id=45569
  44761. There's a bunch of code that's copy/pasted (poorly) across all the
  44762. ports that really belongs in WebCore. This patch moves that logic into
  44763. DocumentLoader. This patch is a step on the path to having
  44764. DocumentLoader own DocumentWriter.
  44765. * WebCore.exp.in:
  44766. * loader/DocumentLoader.cpp:
  44767. (WebCore::DocumentLoader::commitData):
  44768. * loader/DocumentLoader.h:
  44769. * loader/FrameLoader.cpp:
  44770. (WebCore::FrameLoader::finishedLoadingDocument):
  44771. 2010-09-10 Cosmin Truta <ctruta@chromium.org>
  44772. Reviewed by Nikolas Zimmermann.
  44773. getBoundingClientRect Broken for SVG Elements
  44774. https://bugs.webkit.org/show_bug.cgi?id=42815
  44775. Use getBBox to retrieve the bounding rectangle for SVG elements.
  44776. Test: svg/dom/getBoundingClientRect.xhtml
  44777. * dom/Element.cpp:
  44778. (Element::getBoundingClientRect):
  44779. 2010-09-09 Jer Noble <jer.noble@apple.com>
  44780. Reviewed by Eric Carlson.
  44781. Adopt shared control drawing for <video> controls on Windows
  44782. https://bugs.webkit.org/show_bug.cgi?id=45490
  44783. * DerivedSources.make: Remove the OS check around mediaControlsQuickTime.css.
  44784. * rendering/RenderMediaControls.cpp:
  44785. (WebCore::determineState): Use WKMediaControllerThemeState flags instead of SafariTheme ones.
  44786. (WebCore::getUnzoomedRectAndAdjustCurrentContext): Added. Copied verbatim from RenderMediaMac.mm.
  44787. (WebCore::RenderMediaControls::adjustMediaSliderThumbSize): Use wkMeasureMediaUIPart to adjust the thumb size.
  44788. (WebCore::RenderMediaControls::paintMediaControlsPart): Use wkDrawMediaUIPart instead of paintThemePart.
  44789. (WebCore::RenderMediaControls::volumeSliderOffsetFromMuteButton): Added. Copied verbatim from RenderMediaMac.mm.
  44790. * rendering/RenderMediaControls.h:
  44791. * rendering/RenderThemeWin.cpp:
  44792. (WebCore::RenderThemeWin::adjustSliderThumbSize): Adjust both sliders and volume sliders.
  44793. (WebCore::RenderThemeWin::extraMediaControlsStyleSheet): Added. Returns the mediaControlsQuickTime sheet.
  44794. (WebCore::RenderThemeWin::paintMediaRewindButton): Added. Pass through to RenderMediaControls.
  44795. (WebCore::RenderThemeWin::paintMediaControlsBackground): Added. Pass through to RenderMediaControls.
  44796. (WebCore::RenderThemeWin::paintMediaVolumeSliderContainer): Added. Pass through to RenderMediaControls.
  44797. (WebCore::RenderThemeWin::paintMediaVolumeSliderTrack): Added. Pass through to RenderMediaControls.
  44798. (WebCore::RenderThemeWin::paintMediaVolumeSliderThumb): Added. Pass through to RenderMediaControls.
  44799. (WebCore::RenderThemeWin::volumeSliderOffsetFromMuteButton): Added. Pass through to RenderMediaControls.
  44800. * rendering/RenderThemeWin.h:
  44801. 2010-09-10 Peter Kasting <pkasting@google.com>
  44802. Reviewed by Darin Adler.
  44803. Cleanup and simplification in advance of making middle clicks not send a
  44804. click event.
  44805. https://bugs.webkit.org/show_bug.cgi?id=22382
  44806. * editing/DeleteButton.cpp:
  44807. (WebCore::DeleteButton::defaultEventHandler): Removed unneeded code to
  44808. check if the event is a MouseEvent. Any click event will do.
  44809. * html/HTMLAnchorElement.cpp:
  44810. (WebCore::appendServerMapMousePosition): Added. Factors out the
  44811. modifications to the URL to add the mouse position to make the default
  44812. event handler function easier to read.
  44813. (WebCore::HTMLAnchorElement::defaultEventHandler): Reorganized to make
  44814. the enter key logic separate from the link clicking logic and simplify
  44815. the function. This makes minor functional changes like not calling
  44816. FrameLoader::urlSelected() for fake "keydown" events constructed from
  44817. JavaScript.
  44818. (WebCore::HTMLAnchorElement::isLiveLink): Refactored to use new shared
  44819. implementation in treatLinkAsLiveForEventType().
  44820. (WebCore::eventType): Factors out event type calculation (for
  44821. treatLinkAsLiveForEventType()) from the default event handler to make it
  44822. easier to read.
  44823. (WebCore::HTMLAnchorElement::treatLinkAsLiveForEventType):
  44824. Implementation of the portions of isLiveLink() that are common with the
  44825. checks defaultEventHandler() wants to do.
  44826. (WebCore::isEnterKeyKeydownEvent): Added. Shared by the default
  44827. event handlers for all three anchor elements.
  44828. (WebCore::isMiddleMouseButtonEvent): Added. Shared by the isLinkClick
  44829. function below and some code in SVG. Later we can make this private to
  44830. this source file once we remove the unneeded SVG code.
  44831. (WebCore::isLinkClick): Added. Shared by the default event handlers for
  44832. all three anchor elements.
  44833. (WebCore::handleLinkClick): Ditto.
  44834. * html/HTMLAnchorElement.h: Added the new functions.
  44835. * svg/SVGAElement.cpp:
  44836. (WebCore::SVGAElement::defaultEventHandler): Removed lots of unneeded
  44837. logic and streamlined the code to more closely match the
  44838. HTMLAnchorElement code and share functions with it.
  44839. * wml/WMLAElement.cpp:
  44840. (WebCore::WMLAElement::defaultEventHandler): Ditto.
  44841. 2010-09-10 Tony Gentilcore <tonyg@chromium.org>
  44842. Reviewed by Eric Seidel.
  44843. Implement HTML5 definition of script for-event neutering
  44844. https://bugs.webkit.org/show_bug.cgi?id=45493
  44845. * dom/ScriptElement.cpp:
  44846. (WebCore::ScriptElementData::shouldExecuteAsJavaScript): Same behavior, but reads more like the spec. Removed obsolete comments about supporting for-event.
  44847. * html/parser/HTMLScriptRunner.cpp:
  44848. (WebCore::HTMLScriptRunner::executeScript): Moved to runScript.
  44849. (WebCore::HTMLScriptRunner::runScript): Checking shouldExecuteAsJavaScript() here means that external scripts which fail the check will never be requested.
  44850. 2010-09-10 Nat Duca <nduca@chromium.org>
  44851. Reviewed by Darin Fisher.
  44852. [chromium] Accelerated Compositing: screen garbage when scrolling
  44853. https://bugs.webkit.org/show_bug.cgi?id=45092
  44854. Split LayerRenderChromium::drawLayers into several different
  44855. functions, responsible for preparing the backbuffer, updating the
  44856. root texture, compositing and performing the final
  44857. swapbuffers. This are then used by the new
  44858. WebViewImpl::composite rendering path.
  44859. * platform/graphics/chromium/LayerChromium.cpp:
  44860. (WebCore::LayerChromium::setBounds):
  44861. (WebCore::LayerChromium::setFrame):
  44862. (WebCore::LayerChromium::setNeedsDisplay):
  44863. (WebCore::LayerChromium::resetNeedsDisplay):
  44864. * platform/graphics/chromium/LayerChromium.h:
  44865. (WebCore::LayerChromium::dirtyRect):
  44866. * platform/graphics/chromium/LayerRendererChromium.cpp:
  44867. (WebCore::LayerRendererChromium::prepareToDrawLayers):
  44868. (WebCore::LayerRendererChromium::updateRootLayerTextureRect):
  44869. (WebCore::LayerRendererChromium::drawLayers):
  44870. (WebCore::LayerRendererChromium::present):
  44871. * platform/graphics/chromium/LayerRendererChromium.h:
  44872. 2010-09-10 David Holloway <dhollowa@chromium.org>
  44873. Reviewed by Adam Barth.
  44874. Replace WebCore::HTMLFormElement::submissionTrigger with WebCore::HTMLFormElement::submittedByUserGesture.
  44875. Chromium AutoFill feature semantics changed with respect to what we mean by "user submitted" form. A
  44876. more accurate measure of the user manually submitting a form is via user gesture.
  44877. https://bugs.webkit.org/show_bug.cgi?id=45128
  44878. No new tests as this is only used by the Chromium WebKit API.
  44879. * html/HTMLFormElement.cpp:
  44880. (WebCore::HTMLFormElement::HTMLFormElement):
  44881. (WebCore::HTMLFormElement::prepareSubmit):
  44882. (WebCore::HTMLFormElement::submit):
  44883. (WebCore::HTMLFormElement::submittedByUserGesture):
  44884. * html/HTMLFormElement.h:
  44885. 2010-09-10 Adam Barth <abarth@webkit.org>
  44886. Reviewed by Eric Seidel.
  44887. Remove mention of "part" from Document.cpp
  44888. https://bugs.webkit.org/show_bug.cgi?id=45566
  44889. This is an old KHTML name that's lingering around.
  44890. * dom/Document.cpp:
  44891. (WebCore::Document::parentDocument):
  44892. 2010-09-09 Darin Adler <darin@apple.com>
  44893. Reviewed by Adam Barth.
  44894. Move functions from Frame to SelectionController as planned
  44895. https://bugs.webkit.org/show_bug.cgi?id=45508
  44896. Also removed Frame::dragCaretController since it just called Page::dragCaretController.
  44897. * editing/SelectionController.cpp:
  44898. (WebCore::SelectionController::setSelection):
  44899. (WebCore::SelectionController::modify):
  44900. (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
  44901. (WebCore::SelectionController::selectAll):
  44902. (WebCore::SelectionController::focusedOrActiveStateChanged):
  44903. (WebCore::SelectionController::notifyRendererOfSelectionChange):
  44904. (WebCore::isFrameElement):
  44905. (WebCore::SelectionController::setFocusedNodeIfNeeded):
  44906. (WebCore::SelectionController::paintDragCaret):
  44907. (WebCore::SelectionController::shouldDeleteSelection):
  44908. (WebCore::SelectionController::selectionBounds):
  44909. (WebCore::SelectionController::selectionTextRects):
  44910. (WebCore::scanForForm):
  44911. (WebCore::SelectionController::currentForm):
  44912. (WebCore::SelectionController::revealSelection):
  44913. (WebCore::SelectionController::setSelectionFromNone):
  44914. (WebCore::SelectionController::shouldChangeSelection):
  44915. * editing/SelectionController.h:
  44916. Moved functions here from Frame.
  44917. * page/Frame.cpp:
  44918. * page/Frame.h:
  44919. Moved functions to SelectionController.
  44920. Reorganized header to be easier to read and a bit more logical.
  44921. * WebCore.exp.in: Updated.
  44922. * dom/Document.cpp:
  44923. (WebCore::Document::nodeChildrenWillBeRemoved):
  44924. (WebCore::Document::nodeWillBeRemoved):
  44925. Call Page::dragCaretController directly.
  44926. * dom/Element.cpp:
  44927. (WebCore::Element::updateFocusAppearance):
  44928. * dom/InputElement.cpp:
  44929. (WebCore::InputElement::updateFocusAppearance):
  44930. * editing/ApplyStyleCommand.cpp:
  44931. (WebCore::ApplyStyleCommand::editingStyleAtPosition):
  44932. * editing/DeleteSelectionCommand.cpp:
  44933. (WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete):
  44934. * editing/Editor.cpp:
  44935. (WebCore::Editor::canSmartCopyOrDelete):
  44936. (WebCore::Editor::textDirectionForSelection):
  44937. (WebCore::Editor::appliedEditing):
  44938. (WebCore::Editor::insertTextWithoutSendingTextEvent):
  44939. (WebCore::Editor::advanceToNextMisspelling):
  44940. (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
  44941. (WebCore::Editor::revealSelectionAfterEditingOperation):
  44942. (WebCore::Editor::transpose):
  44943. (WebCore::Editor::changeSelectionAfterCommand):
  44944. (WebCore::Editor::computeAndSetTypingStyle):
  44945. (WebCore::Editor::selectionComputedStyle):
  44946. (WebCore::Editor::styleForSelectionStart):
  44947. (WebCore::Editor::findString):
  44948. * editing/EditorCommand.cpp:
  44949. (WebCore::executeDelete):
  44950. * editing/InsertLineBreakCommand.cpp:
  44951. (WebCore::InsertLineBreakCommand::doApply):
  44952. * editing/InsertTextCommand.cpp:
  44953. (WebCore::InsertTextCommand::input):
  44954. * editing/RemoveFormatCommand.cpp:
  44955. (WebCore::RemoveFormatCommand::doApply):
  44956. * editing/ReplaceSelectionCommand.cpp:
  44957. (WebCore::ReplaceSelectionCommand::doApply):
  44958. * editing/TypingCommand.cpp:
  44959. (WebCore::TypingCommand::insertTextRunWithoutNewlines):
  44960. (WebCore::TypingCommand::deleteKeyPressed):
  44961. (WebCore::TypingCommand::forwardDeleteKeyPressed):
  44962. * html/HTMLTextAreaElement.cpp:
  44963. (WebCore::HTMLTextAreaElement::updateFocusAppearance):
  44964. * page/ContextMenuController.cpp:
  44965. (WebCore::ContextMenuController::contextMenuItemSelected):
  44966. * page/DragController.cpp:
  44967. (WebCore::DragController::concludeEditDrag):
  44968. (WebCore::dragLocForSelectionDrag):
  44969. * page/EventHandler.cpp:
  44970. (WebCore::EventHandler::selectClosestWordFromMouseEvent):
  44971. (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent):
  44972. (WebCore::EventHandler::handleMousePressEventTripleClick):
  44973. (WebCore::EventHandler::handleMousePressEventSingleClick):
  44974. (WebCore::EventHandler::updateSelectionForMouseDrag):
  44975. (WebCore::EventHandler::handleMouseReleaseEvent):
  44976. * page/FocusController.cpp:
  44977. (WebCore::FocusController::advanceFocusInDocumentOrder):
  44978. * page/chromium/EventHandlerChromium.cpp:
  44979. (WebCore::EventHandler::passMousePressEventToSubframe):
  44980. * page/chromium/FrameChromium.cpp:
  44981. (WebCore::Frame::dragImageForSelection):
  44982. * page/mac/FrameMac.mm:
  44983. (WebCore::Frame::selectionImage):
  44984. * platform/mac/ClipboardMac.mm:
  44985. (WebCore::ClipboardMac::writeRange):
  44986. * rendering/RenderBlock.cpp:
  44987. (WebCore::RenderBlock::paintCaret):
  44988. Call functions on selection().
  44989. 2010-09-10 Justin Schuh <jschuh@chromium.org>
  44990. Reviewed by Darin Adler.
  44991. SVGGElement::rendererIsNeeded should return false when parent isn't SVG
  44992. https://bugs.webkit.org/show_bug.cgi?id=45562
  44993. Test: svg/custom/g-outside-svg.html
  44994. * svg/SVGGElement.cpp:
  44995. (WebCore::SVGGElement::rendererIsNeeded):
  44996. * svg/SVGGElement.h:
  44997. 2010-09-10 Adam Barth <abarth@webkit.org>
  44998. Reviewed by Darin Adler.
  44999. REGRESSION (HTML Parser): CNN's Money site is not formatted correctly with AdBlock installed
  45000. https://bugs.webkit.org/show_bug.cgi?id=41371
  45001. Drop support for closing comments with "-- >". This was an attempt to
  45002. be more IE-like in comment parsing, but it turns out to cause problems
  45003. for some high-profile sites. Firefox 4 is dropping support as well.
  45004. We expect the spec to change soon too.
  45005. * html/parser/HTMLTokenizer.cpp:
  45006. (WebCore::HTMLTokenizer::nextToken):
  45007. * html/parser/HTMLTokenizer.h:
  45008. 2010-09-10 Chris Marrin <cmarrin@apple.com>
  45009. Unreviewed.
  45010. Adding file that should have been in http://trac.webkit.org/changeset/67226 but
  45011. I forgot to svn add.
  45012. * platform/graphics/opengl: Added.
  45013. * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp: Copied from platform/graphics/mac/GraphicsContext3DMac.mm.
  45014. 2010-09-10 Paul Sawaya <psawaya@apple.com>
  45015. Reviewed by Chris Marrin.
  45016. Refactored non-Mac specific code into GraphicsContext3DOpenGL.
  45017. Moving this file into platform/graphics/opengl and only building on Mac for now.
  45018. https://bugs.webkit.org/show_bug.cgi?id=30625
  45019. * WebCore.xcodeproj/project.pbxproj:
  45020. * platform/graphics/mac/GraphicsContext3DMac.mm:
  45021. (WebCore::GraphicsContext3D::makeContextCurrent):
  45022. (WebCore::GraphicsContext3D::isErrorGeneratedOnOutOfBoundsAccesses):
  45023. * platform/graphics/opengl: Added.
  45024. * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp: Copied from platform/graphics/mac/GraphicsContext3DMac.mm.
  45025. (WebCore::GraphicsContext3D::prepareTexture):
  45026. (WebCore::GraphicsContext3D::activeTexture):
  45027. (WebCore::GraphicsContext3D::attachShader):
  45028. (WebCore::GraphicsContext3D::bindAttribLocation):
  45029. (WebCore::GraphicsContext3D::bindBuffer):
  45030. (WebCore::GraphicsContext3D::bindFramebuffer):
  45031. (WebCore::GraphicsContext3D::bindRenderbuffer):
  45032. (WebCore::GraphicsContext3D::bindTexture):
  45033. (WebCore::GraphicsContext3D::blendColor):
  45034. (WebCore::GraphicsContext3D::blendEquation):
  45035. (WebCore::GraphicsContext3D::blendEquationSeparate):
  45036. (WebCore::GraphicsContext3D::blendFunc):
  45037. (WebCore::GraphicsContext3D::blendFuncSeparate):
  45038. (WebCore::GraphicsContext3D::bufferData):
  45039. (WebCore::GraphicsContext3D::bufferSubData):
  45040. (WebCore::GraphicsContext3D::checkFramebufferStatus):
  45041. (WebCore::GraphicsContext3D::clearColor):
  45042. (WebCore::GraphicsContext3D::clear):
  45043. (WebCore::GraphicsContext3D::clearDepth):
  45044. (WebCore::GraphicsContext3D::clearStencil):
  45045. (WebCore::GraphicsContext3D::colorMask):
  45046. (WebCore::GraphicsContext3D::compileShader):
  45047. (WebCore::GraphicsContext3D::copyTexImage2D):
  45048. (WebCore::GraphicsContext3D::copyTexSubImage2D):
  45049. (WebCore::GraphicsContext3D::cullFace):
  45050. (WebCore::GraphicsContext3D::depthFunc):
  45051. (WebCore::GraphicsContext3D::depthMask):
  45052. (WebCore::GraphicsContext3D::depthRange):
  45053. (WebCore::GraphicsContext3D::detachShader):
  45054. (WebCore::GraphicsContext3D::disable):
  45055. (WebCore::GraphicsContext3D::disableVertexAttribArray):
  45056. (WebCore::GraphicsContext3D::drawArrays):
  45057. (WebCore::GraphicsContext3D::drawElements):
  45058. (WebCore::GraphicsContext3D::enable):
  45059. (WebCore::GraphicsContext3D::enableVertexAttribArray):
  45060. (WebCore::GraphicsContext3D::finish):
  45061. (WebCore::GraphicsContext3D::flush):
  45062. (WebCore::GraphicsContext3D::framebufferRenderbuffer):
  45063. (WebCore::GraphicsContext3D::framebufferTexture2D):
  45064. (WebCore::GraphicsContext3D::frontFace):
  45065. (WebCore::GraphicsContext3D::generateMipmap):
  45066. (WebCore::GraphicsContext3D::getActiveAttrib):
  45067. (WebCore::GraphicsContext3D::getActiveUniform):
  45068. (WebCore::GraphicsContext3D::getAttachedShaders):
  45069. (WebCore::GraphicsContext3D::getAttribLocation):
  45070. (WebCore::GraphicsContext3D::getError):
  45071. (WebCore::GraphicsContext3D::getString):
  45072. (WebCore::GraphicsContext3D::hint):
  45073. (WebCore::GraphicsContext3D::isBuffer):
  45074. (WebCore::GraphicsContext3D::isEnabled):
  45075. (WebCore::GraphicsContext3D::isFramebuffer):
  45076. (WebCore::GraphicsContext3D::isProgram):
  45077. (WebCore::GraphicsContext3D::isRenderbuffer):
  45078. (WebCore::GraphicsContext3D::isShader):
  45079. (WebCore::GraphicsContext3D::isTexture):
  45080. (WebCore::GraphicsContext3D::lineWidth):
  45081. (WebCore::GraphicsContext3D::linkProgram):
  45082. (WebCore::GraphicsContext3D::pixelStorei):
  45083. (WebCore::GraphicsContext3D::polygonOffset):
  45084. (WebCore::GraphicsContext3D::readPixels):
  45085. (WebCore::GraphicsContext3D::releaseShaderCompiler):
  45086. (WebCore::GraphicsContext3D::renderbufferStorage):
  45087. (WebCore::GraphicsContext3D::sampleCoverage):
  45088. (WebCore::GraphicsContext3D::scissor):
  45089. (WebCore::GraphicsContext3D::shaderSource):
  45090. (WebCore::GraphicsContext3D::stencilFunc):
  45091. (WebCore::GraphicsContext3D::stencilFuncSeparate):
  45092. (WebCore::GraphicsContext3D::stencilMask):
  45093. (WebCore::GraphicsContext3D::stencilMaskSeparate):
  45094. (WebCore::GraphicsContext3D::stencilOp):
  45095. (WebCore::GraphicsContext3D::stencilOpSeparate):
  45096. (WebCore::GraphicsContext3D::texParameterf):
  45097. (WebCore::GraphicsContext3D::texParameteri):
  45098. (WebCore::GraphicsContext3D::uniform1f):
  45099. (WebCore::GraphicsContext3D::uniform1fv):
  45100. (WebCore::GraphicsContext3D::uniform2f):
  45101. (WebCore::GraphicsContext3D::uniform2fv):
  45102. (WebCore::GraphicsContext3D::uniform3f):
  45103. (WebCore::GraphicsContext3D::uniform3fv):
  45104. (WebCore::GraphicsContext3D::uniform4f):
  45105. (WebCore::GraphicsContext3D::uniform4fv):
  45106. (WebCore::GraphicsContext3D::uniform1i):
  45107. (WebCore::GraphicsContext3D::uniform1iv):
  45108. (WebCore::GraphicsContext3D::uniform2i):
  45109. (WebCore::GraphicsContext3D::uniform2iv):
  45110. (WebCore::GraphicsContext3D::uniform3i):
  45111. (WebCore::GraphicsContext3D::uniform3iv):
  45112. (WebCore::GraphicsContext3D::uniform4i):
  45113. (WebCore::GraphicsContext3D::uniform4iv):
  45114. (WebCore::GraphicsContext3D::uniformMatrix2fv):
  45115. (WebCore::GraphicsContext3D::uniformMatrix3fv):
  45116. (WebCore::GraphicsContext3D::uniformMatrix4fv):
  45117. (WebCore::GraphicsContext3D::useProgram):
  45118. (WebCore::GraphicsContext3D::validateProgram):
  45119. (WebCore::GraphicsContext3D::vertexAttrib1f):
  45120. (WebCore::GraphicsContext3D::vertexAttrib1fv):
  45121. (WebCore::GraphicsContext3D::vertexAttrib2f):
  45122. (WebCore::GraphicsContext3D::vertexAttrib2fv):
  45123. (WebCore::GraphicsContext3D::vertexAttrib3f):
  45124. (WebCore::GraphicsContext3D::vertexAttrib3fv):
  45125. (WebCore::GraphicsContext3D::vertexAttrib4f):
  45126. (WebCore::GraphicsContext3D::vertexAttrib4fv):
  45127. (WebCore::GraphicsContext3D::vertexAttribPointer):
  45128. (WebCore::GraphicsContext3D::viewport):
  45129. (WebCore::GraphicsContext3D::getBooleanv):
  45130. (WebCore::GraphicsContext3D::getBufferParameteriv):
  45131. (WebCore::GraphicsContext3D::getFloatv):
  45132. (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv):
  45133. (WebCore::GraphicsContext3D::getIntegerv):
  45134. (WebCore::GraphicsContext3D::getProgramiv):
  45135. (WebCore::GraphicsContext3D::getProgramInfoLog):
  45136. (WebCore::GraphicsContext3D::getRenderbufferParameteriv):
  45137. (WebCore::GraphicsContext3D::getShaderiv):
  45138. (WebCore::GraphicsContext3D::getShaderInfoLog):
  45139. (WebCore::GraphicsContext3D::getShaderSource):
  45140. (WebCore::GraphicsContext3D::getTexParameterfv):
  45141. (WebCore::GraphicsContext3D::getTexParameteriv):
  45142. (WebCore::GraphicsContext3D::getUniformfv):
  45143. (WebCore::GraphicsContext3D::getUniformiv):
  45144. (WebCore::GraphicsContext3D::getUniformLocation):
  45145. (WebCore::GraphicsContext3D::getVertexAttribfv):
  45146. (WebCore::GraphicsContext3D::getVertexAttribiv):
  45147. (WebCore::GraphicsContext3D::getVertexAttribOffset):
  45148. (WebCore::GraphicsContext3D::texImage2D):
  45149. (WebCore::GraphicsContext3D::texSubImage2D):
  45150. (WebCore::GraphicsContext3D::createBuffer):
  45151. (WebCore::GraphicsContext3D::createFramebuffer):
  45152. (WebCore::GraphicsContext3D::createProgram):
  45153. (WebCore::GraphicsContext3D::createRenderbuffer):
  45154. (WebCore::GraphicsContext3D::createShader):
  45155. (WebCore::GraphicsContext3D::createTexture):
  45156. (WebCore::GraphicsContext3D::deleteBuffer):
  45157. (WebCore::GraphicsContext3D::deleteFramebuffer):
  45158. (WebCore::GraphicsContext3D::deleteProgram):
  45159. (WebCore::GraphicsContext3D::deleteRenderbuffer):
  45160. (WebCore::GraphicsContext3D::deleteShader):
  45161. (WebCore::GraphicsContext3D::deleteTexture):
  45162. 2010-09-10 Oliver Hunt <oliver@apple.com>
  45163. Qt build fix.
  45164. * bindings/js/SerializedScriptValue.cpp:
  45165. (WebCore::CloneDeserializer::deserialize):
  45166. 2010-09-10 Adam Barth <abarth@webkit.org>
  45167. Reviewed by Darin Adler.
  45168. Remove useless FrameLoader method
  45169. https://bugs.webkit.org/show_bug.cgi?id=45492
  45170. This method has one caller, and that caller already has a more direct
  45171. way of accessing the correct DocumentLoader.
  45172. * loader/FrameLoader.cpp:
  45173. * loader/FrameLoader.h:
  45174. * loader/MainResourceLoader.cpp:
  45175. (WebCore::MainResourceLoader::addData):
  45176. 2010-09-10 Adam Barth <abarth@webkit.org>
  45177. Reviewed by Eric Seidel.
  45178. Main resource bytes shouldn't bounce through FrameLoader
  45179. https://bugs.webkit.org/show_bug.cgi?id=45496
  45180. After the MainResourceLoader hands the bytes for the main resource to
  45181. the DocumentLoader, the DocumentLoader hands the bytes to the
  45182. FrameLoaderClient. The FrameLoaderClient, in turn, returns the bytes
  45183. to WebCore. Prior to this patch, the FrameLoaderClient returned the
  45184. bytes to the FrameLoader. However, the FrameLoader was actually adding
  45185. any value.
  45186. In this patch, we change the FrameLoaderClient to return the bytes to
  45187. the DocumentLoader directly. In a future patch, we'll cut out the
  45188. FrameLoaderClient middleman and handle the bytes internally in the
  45189. DocumentLoader.
  45190. * WebCore.exp.in:
  45191. * loader/DocumentLoader.cpp:
  45192. (WebCore::DocumentLoader::addData):
  45193. * loader/DocumentLoader.h:
  45194. * loader/FrameLoader.cpp:
  45195. (WebCore::FrameLoader::finishedLoadingDocument):
  45196. * loader/FrameLoader.h:
  45197. 2010-09-10 Oliver Hunt <oliver@apple.com>
  45198. Reviewed by Darin Adler.
  45199. Speed up deserialisation of strings
  45200. https://bugs.webkit.org/show_bug.cgi?id=45555
  45201. Rather than building a list of Identifiers for the string pool
  45202. we now build a list of a tuple of UString and JSString*. This
  45203. doesn't hurt the property name case as ustring->identifier conversion
  45204. is essentially free if the ustring has already been converted to
  45205. an Identifier, but saves an unnecessary Identifier creation for
  45206. strings we only ever use to create JSStrings. We also reduce
  45207. GC pressure for duplicate strings by caching the JSStrings.
  45208. * bindings/js/SerializedScriptValue.cpp:
  45209. (WebCore::CloneDeserializer::CachedString::CachedString):
  45210. (WebCore::CloneDeserializer::CachedString::jsString):
  45211. (WebCore::CloneDeserializer::CachedString::ustring):
  45212. (WebCore::CloneDeserializer::readStringData):
  45213. (WebCore::CloneDeserializer::putProperty):
  45214. (WebCore::CloneDeserializer::readFile):
  45215. (WebCore::CloneDeserializer::readTerminal):
  45216. (WebCore::CloneDeserializer::deserialize):
  45217. 2010-09-10 Ryosuke Niwa <rniwa@webkit.org>
  45218. Reviewed by Antonio Gomes.
  45219. REGRESSION(r67176): editing/selection/doubleclick-inline-first-last-contenteditable.html crashes
  45220. https://bugs.webkit.org/show_bug.cgi?id=45525
  45221. The crash was caused by ancestorToRetainStructureAndAppearance not taking into consideration
  45222. the case where there is no common block ancestor. Fixed this by adding a null check.
  45223. Test: editing/pasteboard/copy-without-common-block-crash.html
  45224. * editing/markup.cpp:
  45225. (WebCore::ancestorToRetainStructureAndAppearance): Added a null check.
  45226. 2010-09-09 Kinuko Yasuda <kinuko@chromium.org>
  45227. Reviewed by Dumitru Daniliuc.
  45228. [FileSystem] Do not call EntriesCallback more than once if there're no entries.
  45229. https://bugs.webkit.org/show_bug.cgi?id=45498
  45230. No new tests, layout-tests that confirm the behavior will be added in later patches.
  45231. * fileapi/FileSystemCallbacks.cpp:
  45232. (WebCore::EntriesCallbacks::EntriesCallbacks):
  45233. (WebCore::EntriesCallbacks::didReadDirectoryEntry):
  45234. (WebCore::EntriesCallbacks::didReadDirectoryEntries):
  45235. 2010-09-10 Patrick Gansterer <paroga@paroga.com>
  45236. Reviewed by Darin Adler.
  45237. Use String::fromUTF8 instead of UTF8Encoding().decode
  45238. in the libxml XMLDocumentParser
  45239. https://bugs.webkit.org/show_bug.cgi?id=45488
  45240. * dom/XMLDocumentParserLibxml2.cpp:
  45241. (WebCore::toString):
  45242. 2010-09-10 Chris Fleizach <cfleizach@apple.com>
  45243. Reviewed by David Kilzer.
  45244. AX: accessibility not returning strings when visibility is hidden
  45245. https://bugs.webkit.org/show_bug.cgi?id=45116
  45246. AX code uses plainText() in TextIterator to get the text for a node.
  45247. However, when that node is not visible, no text is returned because TextIterator ignores
  45248. clipped nodes and other hidden elements.
  45249. Solution is to add a new text iterator behavior for ignoring style visiblity. This allows
  45250. for text to allows be returned for accessibility purposes.
  45251. Test: platform/mac/accessibility/clipped-text-under-element.html
  45252. * WebCore.exp.in:
  45253. * accessibility/AccessibilityRenderObject.cpp:
  45254. (WebCore::AccessibilityRenderObject::textUnderElement):
  45255. (WebCore::AccessibilityRenderObject::stringValue):
  45256. Use the new flag for plainText
  45257. * editing/TextIterator.cpp:
  45258. (WebCore::TextIterator::TextIterator):
  45259. (WebCore::TextIterator::handleTextNode):
  45260. (WebCore::TextIterator::handleTextBox):
  45261. (WebCore::TextIterator::handleTextNodeFirstLetter):
  45262. (WebCore::TextIterator::handleReplacedElement):
  45263. Use the new flag to NOT skip hidden elements.
  45264. (WebCore::plainTextToMallocAllocatedBuffer):
  45265. (WebCore::plainText):
  45266. * editing/TextIterator.h:
  45267. Add the new text iterator behavior.
  45268. 2010-09-10 Chris Fleizach <cfleizach@apple.com>
  45269. Reviewed by David Kilzer.
  45270. Mail crashes with searching for next misspelled word with VoiceOver
  45271. https://bugs.webkit.org/show_bug.cgi?id=45501
  45272. Test: platform/mac/accessibility/crash-in-element-for-text-marker.html
  45273. * accessibility/mac/AccessibilityObjectWrapper.mm:
  45274. (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
  45275. Check that the AX object is not nil before asking for the wrapper().
  45276. 2010-09-10 Michael Nordman <michaeln@google.com>
  45277. Reviewed by Dumitru Daniliuc.
  45278. Decouple Blob from ScriptExecutionContext.
  45279. https://bugs.webkit.org/show_bug.cgi?id=45410
  45280. - Removed ScriptExecutionContext pointers from Blob and File constructors.
  45281. - Removed ScriptExecutionContext's collection of Blobs instance in that context.
  45282. - Refactored BlobURL to make a distinction between 'public' blob urls and 'internal'
  45283. urls that are used solely as identifiers. The former requires a SecurityOrigin to
  45284. to manufacture, the latter does not.
  45285. - Added a constant and accessor for the blob protocol scheme on the BlobURL class.
  45286. No new tests are added since this is a cleanup.
  45287. * bindings/js/SerializedScriptValue.cpp:
  45288. (WebCore::CloneDeserializer::readFile):
  45289. (WebCore::CloneDeserializer::readTerminal):
  45290. * bindings/v8/SerializedScriptValue.cpp:
  45291. (WebCore::ZigZag::Reader::readBlob):
  45292. (WebCore::ZigZag::Reader::readFile):
  45293. (WebCore::ZigZag::Reader::readFileList):
  45294. * dom/ScriptExecutionContext.cpp:
  45295. (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
  45296. (WebCore::ScriptExecutionContext::createPublicBlobURL):
  45297. (WebCore::ScriptExecutionContext::revokePublicBlobURL):
  45298. * dom/ScriptExecutionContext.h:
  45299. * fileapi/Blob.cpp:
  45300. (WebCore::Blob::Blob):
  45301. (WebCore::Blob::~Blob):
  45302. (WebCore::Blob::slice):
  45303. * fileapi/Blob.h:
  45304. (WebCore::Blob::create):
  45305. (WebCore::Blob::url):
  45306. * fileapi/Blob.idl:
  45307. * fileapi/BlobBuilder.cpp:
  45308. (WebCore::BlobBuilder::getBlob):
  45309. * fileapi/BlobBuilder.h:
  45310. * fileapi/BlobBuilder.idl:
  45311. * fileapi/BlobURL.cpp:
  45312. (WebCore::BlobURL::createPublicURL):
  45313. (WebCore::BlobURL::createInternalURL):
  45314. (WebCore::BlobURL::getOrigin):
  45315. (WebCore::BlobURL::getIdentifier):
  45316. (WebCore::BlobURL::createBlobURL):
  45317. * fileapi/BlobURL.h:
  45318. (WebCore::BlobURL::blobProtocol):
  45319. (WebCore::BlobURL::BlobURL):
  45320. * fileapi/File.cpp:
  45321. (WebCore::File::File):
  45322. * fileapi/File.h:
  45323. (WebCore::File::create):
  45324. * fileapi/FileReader.cpp: Register a public url to perform the read.
  45325. (WebCore::FileReader::cleanup):
  45326. (WebCore::FileReader::start):
  45327. (WebCore::FileReader::didFinishLoading):
  45328. (WebCore::FileReader::failed):
  45329. * fileapi/FileReader.h: Added m_urlForReading data member.
  45330. * fileapi/FileReaderSync.cpp:
  45331. (WebCore::FileReaderSync::read): Register a public url to perform the read.
  45332. * fileapi/ThreadableBlobRegistry.cpp:
  45333. (WebCore::ThreadableBlobRegistry::registerBlobURL):
  45334. (WebCore::ThreadableBlobRegistry::unregisterBlobURL):
  45335. * fileapi/ThreadableBlobRegistry.h:
  45336. * html/HTMLInputElement.cpp:
  45337. (WebCore::HTMLInputElement::appendFormData):
  45338. (WebCore::HTMLInputElement::setFileListFromRenderer):
  45339. * page/SecurityOrigin.cpp: Use BlobURL.blobProtocol().
  45340. (WebCore::SecurityOrigin::create):
  45341. (WebCore::SecurityOrigin::canRequest):
  45342. (WebCore::SecurityOrigin::canDisplay):
  45343. * platform/chromium/ClipboardChromium.cpp:
  45344. (WebCore::ClipboardChromium::files):
  45345. * platform/gtk/ClipboardGtk.cpp:
  45346. (WebCore::ClipboardGtk::files):
  45347. * platform/mac/ClipboardMac.mm:
  45348. (WebCore::ClipboardMac::files):
  45349. * platform/win/ClipboardWin.cpp:
  45350. (WebCore::ClipboardWin::files):
  45351. 2010-09-10 Xan Lopez <xlopez@igalia.com>
  45352. Reviewed by Martin Robinson.
  45353. GDK_DISPLAY was removed in GTK+ 3.x, re-declare it when built
  45354. against that.
  45355. * platform/gtk/GtkVersioning.h:
  45356. 2010-09-10 Xan Lopez <xlopez@igalia.com>
  45357. Reviewed by Martin Robinson.
  45358. Fix compilation with GTK+ 3.x.
  45359. GDK key macros were renamed from GDK_FOO to GDK_KEY_FOO, we need
  45360. to include the compat header provided if we want to keep using the
  45361. old names.
  45362. * platform/gtk/GtkVersioning.h: add the compatibility header.
  45363. * platform/gtk/KeyEventGtk.cpp: include GtkVersioning.h
  45364. 2010-09-09 Tony Gentilcore <tonyg@chromium.org>
  45365. Reviewed by Eric Seidel.
  45366. Factor out the NestingLevelIncrementer
  45367. https://bugs.webkit.org/show_bug.cgi?id=45471
  45368. No new tests because no new functionality.
  45369. * GNUmakefile.am:
  45370. * WebCore.gypi:
  45371. * WebCore.vcproj/WebCore.vcproj:
  45372. * WebCore.xcodeproj/project.pbxproj:
  45373. * html/parser/HTMLDocumentParser.cpp:
  45374. * html/parser/HTMLDocumentParser.h:
  45375. * html/parser/HTMLScriptRunner.cpp:
  45376. * html/parser/NestingLevelIncrementer.h: Added.
  45377. (WebCore::NestingLevelIncrementer::NestingLevelIncrementer):
  45378. (WebCore::NestingLevelIncrementer::~NestingLevelIncrementer):
  45379. 2010-09-10 Nikolas Zimmermann <nzimmermann@rim.com>
  45380. Reviewed by Dirk Schulze.
  45381. SVG text chunk concept needs to be integrated in the InlineBox structure
  45382. https://bugs.webkit.org/show_bug.cgi?id=45533
  45383. Begin rewriting the SVG text layout code. As first step move the text chunk concept right into the inline box structure.
  45384. This obsoletes the whole text chunk part concept (see SVGTextChunkLayoutInfo.h for details), and will soon simplify the
  45385. whole layout code a lot. Previously we hacked around the fact that a single InlineTextBox could contain multiple text chunks
  45386. For example: <text x="20 30 40">ABC</text> only led to the creation of one InlineTextBox containing three chunks. When
  45387. painting such an InlineTextBox, we had to do nasty hacks (same for text selection etc.)
  45388. This is finally fixed by incorporating the knownledge about text chunks into the line layout algorithm.
  45389. Note, this has no impact on HTML at all, no worries.
  45390. It's even required to do it this way as BiDi reordering shouldn't happen across text chunks.
  45391. These are only the first bits, and currently slows down text layouting. Follow-up patches will remove the old layout
  45392. algorithm, and will rely on the stored SVGTextLayoutAttributes in the RenerSVGInlineText renderers (instead of computing again).
  45393. * Android.mk: Add rendering/svg/SVGTextLayoutAttributes.* & rendering/svg/SVGTextLayoutBuilder.* to build.
  45394. * CMakeLists.txt: Ditto.
  45395. * GNUmakefile.am: Ditto.
  45396. * WebCore.gyp/WebCore.gyp: Ditto.
  45397. * WebCore.gypi: Ditto.
  45398. * WebCore.pro: Ditto.
  45399. * WebCore.vcproj/WebCore.vcproj: Ditto.
  45400. * WebCore.vcproj/WebCoreCommon.vsprops: Ditto. (Recognize new rendering/svg directory.)
  45401. * WebCore.vcproj/copyForwardingHeaders.cmd: Ditto. (Copy forwarding headers from rendering/svg directory.)
  45402. * WebCore.xcodeproj/project.pbxproj: Ditto.
  45403. * rendering/RenderBlockLineLayout.cpp: This is the key of the new concept, take text chunks into account when building the InlineBox structure.
  45404. (WebCore::RenderBlock::findNextLineBreak): Split midpointState, if we encounter the beginning of a new text chunk.
  45405. * rendering/RenderObject.h:
  45406. (WebCore::RenderObject::isSVGInline): New method, which will be used to identify RenderSVGInline objects.
  45407. * rendering/RenderSVGInline.h:
  45408. (WebCore::RenderSVGInline::isSVGInline): Return true.
  45409. * rendering/RenderSVGInlineText.cpp:
  45410. (WebCore::RenderSVGInlineText::linesBoundingBox): Overriden, to simplify the calculations for SVG.
  45411. (WebCore::RenderSVGInlineText::characterStartsNewTextChunk): Determines wheter the given position starts a new text chunk.
  45412. * rendering/RenderSVGInlineText.h:
  45413. (WebCore::RenderSVGInlineText::storeLayoutAttributes): Stores the layout attributes calculated in the text layout process (will be used everywhere in follow-up patches).
  45414. * rendering/RenderSVGText.cpp:
  45415. (WebCore::RenderSVGText::layout): Invoke SVGTextLayoutBuilder before creating the inline box tree, so we can decide which characters start new text chunks.
  45416. * rendering/RenderText.h: Made linesBoundingBox() virtual so RenderSVGInlineText can override it.
  45417. * rendering/svg: Added.
  45418. * rendering/svg/SVGTextLayoutAttributes.cpp: Added. Holds x/y/dx/dy/rotate values and all kerning/ligature information used during layout.
  45419. * rendering/svg/SVGTextLayoutAttributes.h: Added.
  45420. * rendering/svg/SVGTextLayoutBuilder.cpp: Added.
  45421. * rendering/svg/SVGTextLayoutBuilder.h: Added.
  45422. 2010-09-10 Csaba Osztrogonác <ossy@webkit.org>
  45423. Unreviewed fix after r67085.
  45424. * WebCore.pro: Fix previously moved filenames.
  45425. 2010-09-10 Adam Barth <abarth@webkit.org>
  45426. Reviewed by Eric Seidel.
  45427. Inline FrameLoader::committedLoad into its one caller
  45428. https://bugs.webkit.org/show_bug.cgi?id=45481
  45429. This saves one round-trip through the FrameLoader when loading
  45430. documents.
  45431. * loader/DocumentLoader.cpp:
  45432. (WebCore::DocumentLoader::commitLoad):
  45433. * loader/FrameLoader.cpp:
  45434. * loader/FrameLoader.h:
  45435. 2010-09-10 Patrick Gansterer <paroga@paroga.com>
  45436. Reviewed by Adam Roben.
  45437. [WINCE] Remove ImageBuffer::toDataURL implementation
  45438. https://bugs.webkit.org/show_bug.cgi?id=45478
  45439. At the moment ImageBuffer::toDataURL uses JPEGEncoder.h and PNGEncoder.h.
  45440. Both files are not in the repository. So remove the implementation for now.
  45441. * platform/graphics/wince/ImageBufferWince.cpp:
  45442. (WebCore::ImageBuffer::toDataURL):
  45443. 2010-09-10 Andreas Kling <andreas.kling@nokia.com>
  45444. Reviewed by Antonio Gomes.
  45445. WebGL: Fix GCC warnings about suggested parentheses around && within ||
  45446. https://bugs.webkit.org/show_bug.cgi?id=45534
  45447. * html/canvas/WebGLRenderingContext.cpp:
  45448. (WebCore::WebGLRenderingContext::getVertexAttrib):
  45449. (WebCore::WebGLRenderingContext::readPixels):
  45450. (WebCore::WebGLRenderingContext::texParameter):
  45451. (WebCore::WebGLRenderingContext::handleNPOTTextures):
  45452. 2010-09-09 Alexander Pavlov <apavlov@chromium.org>
  45453. Reviewed by Yury Semikhatsky.
  45454. Web Inspector: Add navigation items into the Elements panel context menu.
  45455. For all anchors that have the class of "webkit-html-resource-link" or "webkit-html-external-link",
  45456. a custom context menu with the items "Open Link in New Window" (invokes InspectorBackend.openInInspectedWindow() with
  45457. the related URL) and "Open Link in Resources Panel" (opens the related resource in the Resources panel) is shown
  45458. (the latter item is displayed only if the corresponding resource is known to the Web Inspector).
  45459. https://bugs.webkit.org/show_bug.cgi?id=34250
  45460. * English.lproj/localizedStrings.js:
  45461. * inspector/front-end/ElementsPanel.js:
  45462. (WebInspector.ElementsPanel.prototype.populateHrefContextMenu):
  45463. * inspector/front-end/ElementsTreeOutline.js:
  45464. (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired):
  45465. (WebInspector.ElementsTreeElement.prototype._attributeHTML):
  45466. * inspector/front-end/StylesSidebarPane.js:
  45467. (WebInspector.StylesSidebarPane.prototype._contextMenuEventFired):
  45468. * inspector/front-end/inspector.js:
  45469. (WebInspector.openResource):
  45470. (WebInspector.resourceURLForRelatedNode):
  45471. 2010-09-10 Kwang Yul Seo <skyul@company100.net>
  45472. Reviewed by James Robinson.
  45473. Make sure skia is not Chromium specific
  45474. https://bugs.webkit.org/show_bug.cgi?id=39672
  45475. Move Image::loadPlatformResource to platform/graphics/chromium/ImageChromium.cpp.
  45476. Other ports can use ImageSkia.cpp.
  45477. No new tests because this is pure refacotring.
  45478. * WebCore.gyp/WebCore.gyp:
  45479. * WebCore.gypi:
  45480. * platform/graphics/chromium/ImageChromium.cpp: Added.
  45481. (WebCore::Image::loadPlatformResource):
  45482. * platform/graphics/skia/ImageSkia.cpp:
  45483. 2010-09-09 Ilya Tikhonovsky <loislo@chromium.org>
  45484. Reviewed by Joseph Pecoraro.
  45485. WebInspector: Selecting 'inspect element' always shows body in inspector instead of clicked element.
  45486. 1. Open any page
  45487. 2. Right-click on any element, select "Inspect Element"
  45488. 3. Web Inspector is opened but the <body> element (for HTML) is focused rather than the selected element
  45489. 4. Inspect the Web Inspector. An error message is logged in the console.
  45490. The regression was introduced in http://trac.webkit.org/changeset/66012 - focusNode() is invoked in
  45491. InspectorController::populateScriptObjects() before the main document is set for the InspectorDOMAgent
  45492. instance (which makes focusNode() bail out prematurely).
  45493. https://bugs.webkit.org/show_bug.cgi?id=45374
  45494. * inspector/InspectorController.cpp:
  45495. (WebCore::InspectorController::populateScriptObjects):
  45496. 2010-09-10 Cris Neckar <cdn@chromium.org>
  45497. Reviewed by Chris Fleizach.
  45498. Null deref in RenderBlock::updateFirstLetter(). Check for null psuedo style.
  45499. https://bugs.webkit.org/show_bug.cgi?id=45404
  45500. Test: fast/dom/firstletter-tablecell-crash.html
  45501. * rendering/RenderBlock.cpp:
  45502. (WebCore::RenderBlock::updateFirstLetter):
  45503. 2010-09-10 Cris Neckar <cdn@chromium.org>
  45504. Reviewed by Chris Fleizach.
  45505. Null deref in RenderBlock::findNextLineBreak(). Check for null style with
  45506. first-line style and fixed position.
  45507. https://bugs.webkit.org/show_bug.cgi?id=45350
  45508. Test: fast/dom/firstline-fixed-crash.html
  45509. * rendering/RenderBlockLineLayout.cpp:
  45510. (WebCore::RenderBlock::findNextLineBreak):
  45511. 2010-09-10 Eric Seidel <eric@webkit.org>
  45512. Reviewed by Dimitri Glazkov.
  45513. Remove support for non-lazy attach and fix frames to load from insertedIntoDocument instead of attach
  45514. https://bugs.webkit.org/show_bug.cgi?id=45365
  45515. This change is the last piece of the puzzle which was preventing us from
  45516. removing all eager-attach logic and moving WebCore to using an entirely
  45517. recalcStyle-driven, on-demand renderer creation system, instead of every
  45518. element being synchronously attached during parsing, regardless of whether
  45519. it was ever going to be displayed or not.
  45520. This does not change the places we call lazyAttach vs. attach. This only
  45521. changes the behavior of frame/plugin elements when lazyAttach is called.
  45522. Previously lazyAttach would eager-attach those elements (and their ancestors)
  45523. because they were marked as canLazyAttach() { return false; }.
  45524. This is a very tricky change, please review carefully.
  45525. Mostly I'm moving logic which used to be in attach() into
  45526. insertedIntoDocument. Once it was there, there was no longer any reason
  45527. why frame elements couldn't lazyAttach, thus removing the need
  45528. for the non-lazy attach code path entirely.
  45529. We've not yet converted all callsites over to using lazyAttach() instead
  45530. of attach() however.
  45531. In order to move frame loading logic into insertedIntoDocument
  45532. instead of attach, I needed to make sure that any javascript calls
  45533. during the load would see an attached element. Thus I needed to mark
  45534. the element as needing style resolve so that it would attach itself
  45535. if needed.
  45536. I was not able to just call lazyAttach() from insertedIntoDocument directly
  45537. due to two conflicting assumptions in the rendering tree:
  45538. 1. ContainerNode::attach() assumes its "safe" to call attach on all children
  45539. without checking first if the child is already attached. This seems sane
  45540. since its strange to think of a subtree as being attached w/o ancestors
  45541. already being attached. Although it is a hard rule that subtrees may not
  45542. have renderers w/o ancestors also having renderers, I do not believe it's
  45543. a hard rule that subtrees may not be attached. Remember, attached() does
  45544. not imply renderer()! It's possible ContainerNode::attach()'s assumption is wrong here.
  45545. 2. Node::attach() asserts !attached(). This makes sense and I would not
  45546. want to remove this assert, however it means that if insertedIntoDocument
  45547. were to call lazyAttach() (thus marking the element as attached()) then
  45548. all callers would need to check if the element was already attached after
  45549. insertedIntoDocument (called by appendChild, parserAppendChild, etc.)
  45550. before calling attach or lazyAttach(). The following example:
  45551. element.innerHTML = "<span><iframe></span>" is one case where this
  45552. ASSERT would be hit if insertedIntoDocument called lazyAttach, since
  45553. ContainerNode::attach() (called on the span by in appendChild(DocumentFragment) code)
  45554. does not check if iframe is already attached.
  45555. Note: One subtle change here is that synchronous javascript which results
  45556. from javascript: or beforeload is now run as part of insertedIntoDocument
  45557. (thus any insert/append call *even* parserAddChild) instead of being
  45558. run during attach (technically in the post-attach callbacks).
  45559. This is covered by numerous layout tests.
  45560. * dom/ContainerNode.cpp:
  45561. (WebCore::willRemoveChild):
  45562. (WebCore::willRemoveChildren):
  45563. - Since insertedIntoDocument starts a load and yet does not mark the
  45564. element as attached, we need to always call willRemove().
  45565. See note above as to why we don't just mark attached() in insertedIntoDocument.
  45566. * dom/Node.cpp:
  45567. (WebCore::Node::markAncestorsWithChildNeedsStyleRecalc):
  45568. - Share some code between lazyAttach and setNeedsStyleRecalc.
  45569. (WebCore::Node::setNeedsStyleRecalc):
  45570. - Use the new markAncestorsWithChildNeedsStyleRecalc
  45571. (WebCore::Node::lazyAttach):
  45572. - Remove the non-lazy code path, and use markAncestorsWithChildNeedsStyleRecalc.
  45573. - Add an option to lazyAttach without marking attached(), used by HTMLFrameElementBase::insertedIntoDocument.
  45574. * dom/Node.h:
  45575. * html/HTMLFrameElementBase.cpp:
  45576. - m_shouldOpenURLAfterAttach is no longer needed, yay!
  45577. - m_checkAttachedTimer no longer has anything to do with attached(), so renamed it.
  45578. I also documented that the newly named m_checkInDocumentTimer is all about the
  45579. "magic iframe" performance quirk. (Which is actually speced in HTML5).
  45580. I was initially baffled by this code, so I documented it.
  45581. (WebCore::HTMLFrameElementBase::HTMLFrameElementBase)
  45582. (WebCore::HTMLFrameElementBase::insertedIntoDocument):
  45583. - This is the meat of this change, see discussion above.
  45584. (WebCore::HTMLFrameElementBase::attach):
  45585. - Code deleted or moved to insertedIntoDocument.
  45586. (WebCore::HTMLFrameElementBase::width):
  45587. - Fixed a bug in height()/width() which was probably causing crashes
  45588. and was causing incorrect behavior after this change.
  45589. renderBox() is not necessarily valid unless layout is up to date.
  45590. Updating layout, can cause renderBox() to go invalid, thus this
  45591. could have been a null-pointer crash.
  45592. (WebCore::HTMLFrameElementBase::height): see width()
  45593. (WebCore::HTMLFrameElementBase::setRemainsAliveOnRemovalFromTree): Timer rename.
  45594. (WebCore::HTMLFrameElementBase::checkInDocumentTimerFired): Timer rename.
  45595. * html/HTMLFrameElementBase.h:
  45596. * html/HTMLFrameOwnerElement.cpp:
  45597. (WebCore::HTMLFrameOwnerElement::willRemove):
  45598. - Disconnecting the owner element removes the frame from the frame tree.
  45599. frameDetached() calls Page::frameCount which expects that the frame is
  45600. already gone at this point and asserts when it's not. It's unclear how
  45601. this worked before, except that the frame removal was likely done in the
  45602. post-attach callback, so the frameCount was wrong (too high) during
  45603. frameDetached(), but was fixed up in the post-detach callback.
  45604. * html/parser/HTMLConstructionSite.cpp:
  45605. (WebCore::HTMLConstructionSite::attachAtSite):
  45606. - Simplified this code, and added a check for the case when the node was already removed.
  45607. Since the load logic is now run during insertedIntoDocument instead of attach(),
  45608. synchronous javascript is now running during insertedIntoDocument and we need to
  45609. make sure that the child is still in the tree.
  45610. 2010-09-10 Dirk Pranke <dpranke@chromium.org>
  45611. Unreviewed, rolling out r67178.
  45612. http://trac.webkit.org/changeset/67178
  45613. https://bugs.webkit.org/show_bug.cgi?id=45524
  45614. re-roll-out patch to put original changes back in
  45615. * html/HTMLObjectElement.cpp:
  45616. (WebCore::HTMLObjectElement::parametersForPlugin):
  45617. (WebCore::HTMLObjectElement::updateWidget):
  45618. * loader/SubframeLoader.cpp:
  45619. (WebCore::SubframeLoader::resourceWillUsePlugin):
  45620. * loader/SubframeLoader.h:
  45621. 2010-09-10 Dirk Pranke <dpranke@chromium.org>
  45622. Reviewed by Kent Tamura.
  45623. roll out r66992 and r66997 - possibly introduced a perf slowdown in chromium tests
  45624. https://bugs.webkit.org/show_bug.cgi?id=45524
  45625. * html/HTMLObjectElement.cpp:
  45626. (WebCore::HTMLObjectElement::parametersForPlugin):
  45627. (WebCore::HTMLObjectElement::updateWidget):
  45628. * loader/SubframeLoader.cpp:
  45629. (WebCore::SubframeLoader::requestFrame):
  45630. * loader/SubframeLoader.h:
  45631. 2010-09-10 Ryosuke Niwa <rniwa@webkit.org>
  45632. Reviewed by Tony Chang.
  45633. Extract the code to find special ancestors in createMarkup into a function
  45634. https://bugs.webkit.org/show_bug.cgi?id=45449
  45635. Extracted the code to find special common ancestors in createMarkup as highestAncestorToWrapMarkup.
  45636. Also isolated the code to find ancestors required to retain structure and appearance into
  45637. ancestorToRetainStructureAndAppearance.
  45638. No new tests are added since this is a cleanup.
  45639. * editing/markup.cpp:
  45640. (WebCore::ancestorToRetainStructureAndAppearance): Added.
  45641. (WebCore::propertyMissingOrEqualToNone): Moved.
  45642. (WebCore::isElementPresentational): Moved.
  45643. (WebCore::shouldIncludeWrapperForFullySelectedRoot): Added. isSpecialAncestorBlock is merged into this function.
  45644. (WebCore::highestAncestorToWrapMarkup): Extracted from createMarkup.
  45645. (WebCore::createMarkup): Calls highestAncestorToWrapMarkup.
  45646. 2010-09-09 Adam Barth <abarth@webkit.org>
  45647. Reviewed by Dimitri Glazkov.
  45648. Spurious null check in MediaDocumentParser
  45649. https://bugs.webkit.org/show_bug.cgi?id=45461
  45650. Trivial change. FrameLoader can never be null.
  45651. * html/MediaDocument.cpp:
  45652. (WebCore::MediaDocumentParser::createDocumentStructure):
  45653. 2010-09-09 Ryosuke Niwa <rniwa@webkit.org>
  45654. Reviewed by Eric Seidel.
  45655. REGRESSION: applying new font size causes font-size outside selection to change
  45656. https://bugs.webkit.org/show_bug.cgi?id=45026
  45657. The regression was caused by removeImplicitlyStyledElement not converting font size to CSS value properly.
  45658. Namely, it was treating font size as a pixel value for font-size property. Fixed this by adding fontSizeToCSSValue
  45659. which uses HTMLFontElement::cssValueFromFontSizeNumber and deployed it in removeImplicitlyStyledElement
  45660. Also fixed a bug in StyleChange::extractTextStyles that it ignores font-size property when the values were
  45661. relative terms such as x-small and -webkit-xxx-large. And replaced the logic to convert from pixel font size
  45662. to legacy font size by CSSStyleSelector::legacyFontSize.
  45663. Test: editing/style/push-down-font-styles.html
  45664. * editing/ApplyStyleCommand.cpp:
  45665. (WebCore::StyleChange::extractTextStyles): Fixed a bug. See above.
  45666. (WebCore::stringToCSSValue): Converts string to CSSValue.
  45667. (WebCore::fontSizeToCSSValue): Converts font size number (String) to CSSPrimitiveValue.
  45668. (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Calls stringToCSSValue and fontSizeToCSSValue.
  45669. * css/CSSStyleSelector.h: Made fontSizeForKeyword public.
  45670. 2010-09-09 Kent Tamura <tkent@chromium.org>
  45671. Unreviewed, build fix for Qt.
  45672. * css/CSSStyleSelector.cpp:
  45673. (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
  45674. 2010-09-09 Dominic Cooney <dominicc@google.com>
  45675. Reviewed by Kent Tamura.
  45676. Moves location.replace bindings logic into bindings/generic and
  45677. instantiates it for JSC and V8.
  45678. https://bugs.webkit.org/show_bug.cgi?id=44891
  45679. Covered by existing location.replace tests.
  45680. * GNUmakefile.am:
  45681. * WebCore.gypi:
  45682. * WebCore.pro:
  45683. * WebCore.vcproj/WebCore.vcproj:
  45684. * WebCore.vcproj/WebCoreCommon.vsprops:
  45685. * WebCore.xcodeproj/project.pbxproj:
  45686. * bindings/generic/BindingDOMWindow.h:
  45687. * bindings/generic/BindingFrame.h: Added.
  45688. (WebCore::::navigateIfAllowed):
  45689. * bindings/generic/BindingLocation.h: Added.
  45690. (WebCore::::replace):
  45691. * bindings/generic/GenericBinding.h:
  45692. (WebCore::completeURL):
  45693. * bindings/js/JSBinding.h: Added.
  45694. * bindings/js/JSBindingsAllInOne.cpp:
  45695. * bindings/js/JSDOMBinding.cpp:
  45696. (WebCore::shouldAllowNavigation):
  45697. (WebCore::toLexicalFrame):
  45698. (WebCore::toDynamicFrame):
  45699. (WebCore::processingUserGesture):
  45700. (WebCore::completeURL):
  45701. * bindings/js/JSLocationCustom.cpp:
  45702. (WebCore::navigateIfAllowed):
  45703. (WebCore::JSLocation::replace):
  45704. * bindings/js/specialization/JSBindingState.cpp: Added.
  45705. (WebCore::::getActiveFrame):
  45706. (WebCore::::getFirstFrame):
  45707. (WebCore::::processingUserGesture):
  45708. (WebCore::::allowsAccessFromFrame):
  45709. * bindings/js/specialization/JSBindingState.h: Added.
  45710. * bindings/v8/V8Binding.h:
  45711. * bindings/v8/V8Utilities.cpp:
  45712. (WebCore::completeURL):
  45713. (WebCore::navigateIfAllowed):
  45714. * bindings/v8/custom/V8LocationCustom.cpp:
  45715. (WebCore::V8Location::replaceCallback):
  45716. * bindings/v8/specialization/V8BindingState.cpp:
  45717. (WebCore::::allowsAccessFromFrame):
  45718. * bindings/v8/specialization/V8BindingState.h:
  45719. 2010-09-09 Kent Tamura <tkent@chromium.org>
  45720. Reviewed by Dimitri Glazkov.
  45721. Apply :invalid CSS class to <input type=number> with an unacceptable value
  45722. https://bugs.webkit.org/show_bug.cgi?id=45376
  45723. Apply :invalid CSS class to <input type=number> elements with an
  45724. unacceptable value in order to tell users that a value is not
  45725. valid.
  45726. Introducing Element::hasUnaccceptableValue(), and CSSStyleSelector
  45727. applies :invalid to not only elements with !isValidFormControlElement()
  45728. but also elements with hasUnaccceptableValue().
  45729. HTMLInputElement and RenderTextControlSingleLine need some changes
  45730. to update style and to avoid updating renderer value during style
  45731. update.
  45732. Test: fast/forms/input-number-unacceptable-style.html
  45733. * css/CSSStyleSelector.cpp:
  45734. (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
  45735. * dom/Element.h:
  45736. (WebCore::Element::hasUnacceptableValue):
  45737. * html/HTMLInputElement.cpp:
  45738. (WebCore::HTMLInputElement::handleBlurEvent):
  45739. (WebCore::HTMLInputElement::hasUnacceptableValue):
  45740. * html/HTMLInputElement.h:
  45741. * rendering/RenderTextControlSingleLine.cpp:
  45742. (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
  45743. (WebCore::RenderTextControlSingleLine::updateFromElement):
  45744. 2010-09-09 Kent Tamura <tkent@chromium.org>
  45745. Reviewed by Dimitri Glazkov.
  45746. <input type=number> should not have an invalid number as its value
  45747. https://bugs.webkit.org/show_bug.cgi?id=43973
  45748. This change implements the value sanitization algorithm for
  45749. type=number, and remove validity.typeMismatch support for
  45750. type=number in order to improve HTML5 conformance.
  45751. HTMLInputElement::value for type=number always has a valid number
  45752. string or an empty string. However, the input field for it, a
  45753. RenderTextControlSingleLine, can have a non-number string. For
  45754. example, '-' is a non-number string, but a user needs to type
  45755. '-'. So, the string in the input field has never been committed to
  45756. HTMLInputElement until the string becomes a valid number string.
  45757. This change is also a preparation of supporting localized
  45758. numbers. A localized string in the input field would not be
  45759. matched with HTMLInputElement::value.
  45760. Test: fast/forms/input-number-commit-valid-only.html
  45761. * dom/InputElement.h: Add isAcceptableValue()
  45762. * html/HTMLInputElement.cpp:
  45763. (WebCore::HTMLInputElement::handleBlurEvent):
  45764. Set formControlValueMatchesRenderer false to clean an invalid value in the renderer.
  45765. (WebCore::HTMLInputElement::isAcceptableValue):
  45766. (WebCore::HTMLInputElement::sanitizeValue):
  45767. * html/HTMLInputElement.h:
  45768. * html/ValidityState.cpp:
  45769. (WebCore::ValidityState::typeMismatch): Always returns false for type=number.
  45770. * rendering/RenderTextControlSingleLine.cpp:
  45771. (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
  45772. * wml/WMLInputElement.h:
  45773. (WebCore::WMLInputElement::isAcceptableValue):
  45774. 2010-09-09 Tony Gentilcore <tonyg@chromium.org>
  45775. Reviewed by Adam Barth.
  45776. Support <script async> as specified by HTML5
  45777. https://bugs.webkit.org/show_bug.cgi?id=45310
  45778. Tests: fast/dom/HTMLScriptElement/async-inline-script.html
  45779. fast/dom/HTMLScriptElement/async-onbeforeload.html
  45780. fast/dom/HTMLScriptElement/async-write.html
  45781. http/tests/misc/async-and-defer-script.html
  45782. http/tests/misc/script-async.html
  45783. * dom/AsyncScriptRunner.cpp:
  45784. (WebCore::AsyncScriptRunner::AsyncScriptRunner):
  45785. (WebCore::AsyncScriptRunner::~AsyncScriptRunner):
  45786. (WebCore::AsyncScriptRunner::executeScriptSoon): Increment the delay count when a task to execute scripts is queued up.
  45787. (WebCore::AsyncScriptRunner::timerFired): decrementLoadEventDelayCount handles calling checkCompleted().
  45788. * dom/AsyncScriptRunner.h:
  45789. (WebCore::AsyncScriptRunner::create):
  45790. * dom/Document.cpp:
  45791. (WebCore::Document::Document):
  45792. * dom/ScriptElement.cpp:
  45793. (WebCore::ScriptElement::insertedIntoDocument): Treats async scripts just like a dynamically inserted script element rather than a parser inserted one.
  45794. * html/parser/HTMLScriptRunner.cpp:
  45795. (WebCore::HTMLScriptRunner::runScript):
  45796. 2010-09-09 Alexey Marinichev <amarinichev@chromium.org>
  45797. Reviewed by James Robinson.
  45798. [chromium] Disable subpixel rendering in Linux when GPU compositor is active
  45799. https://bugs.webkit.org/show_bug.cgi?id=45087
  45800. This extends windows-only logic to chromium linux as well.
  45801. * platform/graphics/chromium/ContentLayerChromium.cpp:
  45802. (WebCore::ContentLayerChromium::updateContents):
  45803. * platform/graphics/chromium/FontLinux.cpp:
  45804. (WebCore::adjustTextRenderMode): Added a check to see if the compositor is active.
  45805. (WebCore::Font::drawGlyphs):
  45806. (WebCore::Font::drawComplexText):
  45807. * platform/graphics/chromium/LayerRendererChromium.cpp:
  45808. (WebCore::LayerRendererChromium::setRootLayerCanvasSize):
  45809. * platform/graphics/chromium/VideoLayerChromium.cpp:
  45810. (WebCore::VideoLayerChromium::updateContents):
  45811. * platform/graphics/skia/ImageBufferSkia.cpp:
  45812. (WebCore::ImageBuffer::ImageBuffer):
  45813. (WebCore::ImageBuffer::clip):
  45814. * platform/graphics/skia/PlatformContextSkia.cpp:
  45815. Made setDrawingToImageBuffer and isDrawingToImageBuffer available to
  45816. Linux; removed all #if OS(WINDOWS) || OS(LINUX).
  45817. (WebCore::PlatformContextSkia::State::State):
  45818. (WebCore::PlatformContextSkia::PlatformContextSkia):
  45819. (WebCore::PlatformContextSkia::isDrawingToImageBuffer):
  45820. (WebCore::PlatformContextSkia::save):
  45821. (WebCore::PlatformContextSkia::beginLayerClippedToImage):
  45822. (WebCore::PlatformContextSkia::restore):
  45823. (WebCore::PlatformContextSkia::applyClipFromImage):
  45824. * platform/graphics/skia/PlatformContextSkia.h:
  45825. 2010-09-09 Kinuko Yasuda <kinuko@chromium.org>
  45826. Unreviewed, Windows build fix.
  45827. * WebCore.vcproj/WebCore.vcproj:
  45828. 2010-09-09 Kinuko Yasuda <kinuko@chromium.org>
  45829. Reviewed by Jian Li.
  45830. [FileSystem] Add File and FileWriter accessor methods in FileEntry
  45831. https://bugs.webkit.org/show_bug.cgi?id=45440
  45832. Adding file() and createWrite() methods in FileEntry.
  45833. http://dev.w3.org/2009/dap/file-system/file-dir-sys.html#the-fileentry-interface
  45834. No new tests; this patch doesn't have implementation yet.
  45835. * CMakeLists.txt:
  45836. * DerivedSources.cpp:
  45837. * DerivedSources.make:
  45838. * GNUmakefile.am:
  45839. * WebCore.gypi:
  45840. * WebCore.pri:
  45841. * WebCore.pro:
  45842. * WebCore.vcproj/WebCore.vcproj:
  45843. * WebCore.xcodeproj/project.pbxproj:
  45844. * fileapi/FileEntry.cpp:
  45845. (WebCore::FileEntry::createWriter): Added.
  45846. (WebCore::FileEntry::file): Added.
  45847. * fileapi/FileEntry.h:
  45848. * fileapi/FileEntry.idl:
  45849. * fileapi/FileCallback.h: Added.
  45850. * fileapi/FileCallback.idl: Added.
  45851. * fileapi/FileWriterCallback.h: Added.
  45852. * fileapi/FileWriterCallback.idl: Added.
  45853. 2010-09-09 Yuzo Fujishima <yuzo@google.com>
  45854. Reviewed by Darin Adler.
  45855. Fix for Bug 24742 - CSS tokenizer allows color in 6 hex digit notation to be followed by the next token without separation
  45856. Stop checking in the flex definition the number of hexadecimal digits for a hex color.
  45857. Instead, rely on the checking in Color::parseHexColor().
  45858. The resultant grammar is actually more close to the one in http://www.w3.org/TR/CSS21/grammar.html .
  45859. https://bugs.webkit.org/show_bug.cgi?id=24742
  45860. Test: fast/css/invalid-hex-color.html
  45861. * css/tokenizer.flex:
  45862. 2010-09-09 Chris Rogers <crogers@google.com>
  45863. Reviewed by Kenneth Russell.
  45864. Add AudioSourceNode files
  45865. https://bugs.webkit.org/show_bug.cgi?id=45010
  45866. No new tests since audio API is not yet implemented.
  45867. * webaudio/AudioSourceNode.h: Added.
  45868. (WebCore::AudioSourceNode::AudioSourceNode):
  45869. * webaudio/AudioSourceNode.idl: Added.
  45870. 2010-09-09 James Robinson <jamesr@chromium.org>
  45871. Reviewed by Kenneth Russell.
  45872. [chromium] Don't call deleteTexture on a texture attached to an FBO that is not currently bound
  45873. https://bugs.webkit.org/show_bug.cgi?id=45504
  45874. The OpenGL semantics for glDeleteTextures() are that if one of the specified texture is attached
  45875. to the currently bound FBO, that FBO's color attachment is removed. However, if the specified
  45876. texture is attached to a non-current FBO then OpenGL states explicitly that that FBO's color
  45877. attachment is not cleared and that the texture stays alive even though its ID is no longer
  45878. valid to use. This is not the behavior we want in DrawingBuffer - we actually want the
  45879. texture to be immediately deleted. This patch makes sure the DrawingBuffer's FBO is bound
  45880. before deleting its color attachment texture.
  45881. * platform/graphics/chromium/DrawingBufferChromium.cpp:
  45882. (WebCore::DrawingBuffer::~DrawingBuffer):
  45883. (WebCore::DrawingBuffer::reset):
  45884. 2010-09-09 James Robinson <jamesr@chromium.org>
  45885. Reviewed by Kenneth Russell.
  45886. [chromium] Chromium mac build should exclude all Skia files in platform/graphics/skia/, not just some
  45887. https://bugs.webkit.org/show_bug.cgi?id=45516
  45888. This excludes platform/graphics/skia/*Skia.(h|cpp) by pattern instead of individual files.
  45889. None of these files should be compiled into the Chromium mac build and the old file list had
  45890. both omissions and stale entries.
  45891. * WebCore.gyp/WebCore.gyp:
  45892. 2010-09-09 Dirk Pranke <dpranke@chromium.org>
  45893. Unreviewed, rolling out r67145.
  45894. http://trac.webkit.org/changeset/67145
  45895. https://bugs.webkit.org/show_bug.cgi?id=45431
  45896. broke editing/inserting/5994480-2.html on Chromium Linux
  45897. * css/CSSStyleSelector.h:
  45898. * editing/ApplyStyleCommand.cpp:
  45899. (WebCore::StyleChange::init):
  45900. (WebCore::StyleChange::extractTextStyles):
  45901. (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement):
  45902. 2010-09-09 Dumitru Daniliuc <dumi@chromium.org>
  45903. Reviewed by Alexey Proskuryakov.
  45904. Removing an obsolete comment.
  45905. https://bugs.webkit.org/show_bug.cgi?id=40112
  45906. * bindings/generic/ActiveDOMCallback.cpp:
  45907. 2010-09-09 James Robinson <jamesr@chromium.org>
  45908. Reviewed by Kenneth Russell.
  45909. [chromium] Clear only the uploaded portion of the software backing store when in mixed mode
  45910. https://bugs.webkit.org/show_bug.cgi?id=45503
  45911. This clears out only the dirty region of the software backing store when uploading results
  45912. to hardware rather than clearing out the entire software backing store. This is a significant
  45913. performance improvement when the dirty rects are small relative to the whole canvas.
  45914. This also implements the non-swizzle path of copySubRect() using memcpy() to copy the rows, which
  45915. is another respectable performance increase.
  45916. * html/canvas/CanvasRenderingContext2D.cpp:
  45917. * platform/graphics/gpu/Texture.cpp:
  45918. (WebCore::copySubRect):
  45919. * platform/graphics/skia/PlatformContextSkia.cpp:
  45920. (WebCore::PlatformContextSkia::prepareForSoftwareDraw):
  45921. (WebCore::PlatformContextSkia::uploadSoftwareToHardware):
  45922. (WebCore::PlatformContextSkia::readbackHardwareToSoftware):
  45923. 2010-09-09 Kenneth Russell <kbr@google.com>
  45924. Reviewed by James Robinson.
  45925. Add math utilities for cubic curve processing
  45926. https://bugs.webkit.org/show_bug.cgi?id=45251
  45927. Adding mathematic utilities needed for the GPU accelerated path
  45928. rendering algorithm from GPU Gems 3. No tests yet; will be tested
  45929. in conjunction with later code.
  45930. * platform/graphics/gpu/LoopBlinnMathUtils.cpp: Added.
  45931. (WebCore::LoopBlinnMathUtils::roundToZero):
  45932. (WebCore::LoopBlinnMathUtils::approxEqual):
  45933. (WebCore::LoopBlinnMathUtils::linesIntersect):
  45934. (WebCore::LoopBlinnMathUtils::pointInTriangle):
  45935. (WebCore::LoopBlinnMathUtils::trianglesOverlap):
  45936. (WebCore::LoopBlinnMathUtils::chopCubicAt):
  45937. (WebCore::LoopBlinnMathUtils::xRayCrossesLine):
  45938. (WebCore::LoopBlinnMathUtils::numXRayCrossingsForCubic):
  45939. * platform/graphics/gpu/LoopBlinnMathUtils.h: Added.
  45940. 2010-09-09 Kinuko Yasuda <kinuko@chromium.org>
  45941. Reviewed by Dumitru Daniliuc.
  45942. Add Entry.getMetadata for FileSystem API
  45943. https://bugs.webkit.org/show_bug.cgi?id=45403
  45944. Add getMetadata to Entry.idl (I had missed to include this
  45945. in my previous Entry.idl patch.)
  45946. Also make some minor cleanups and nits fixes.
  45947. No new tests; layout test is going be added later.
  45948. * fileapi/DOMFileSystem.cpp: Bug fix.
  45949. * fileapi/MetadataCallback.h: Nits fix.
  45950. * fileapi/Entry.idl: Added getMetadata.
  45951. * fileapi/ErrorCallback.h: Nits fix.
  45952. 2010-09-09 Ryosuke Niwa <rniwa@webkit.org>
  45953. Reviewed by Eric Seidel.
  45954. REGRESSION: applying new font size causes font-size outside selection to change
  45955. https://bugs.webkit.org/show_bug.cgi?id=45026
  45956. The regression was caused by removeImplicitlyStyledElement not converting font size to CSS value properly.
  45957. Namely, it was treating font size as a pixel value for font-size property. Fixed this by adding fontSizeToCSSValue
  45958. which uses HTMLFontElement::cssValueFromFontSizeNumber and deployed it in removeImplicitlyStyledElement
  45959. Also fixed a bug in StyleChange::extractTextStyles that it ignores font-size property when the values were
  45960. relative terms such as x-small and -webkit-xxx-large. And replaced the logic to convert from pixel font size
  45961. to legacy font size by CSSStyleSelector::legacyFontSize.
  45962. Test: editing/style/push-down-font-styles.html
  45963. * editing/ApplyStyleCommand.cpp:
  45964. (WebCore::StyleChange::extractTextStyles): Fixed a bug. See above.
  45965. (WebCore::stringToCSSValue): Converts string to CSSValue.
  45966. (WebCore::fontSizeToCSSValue): Converts font size number (String) to CSSPrimitiveValue.
  45967. (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Calls stringToCSSValue and fontSizeToCSSValue.
  45968. * css/CSSStyleSelector.h: Made fontSizeForKeyword public.
  45969. 2010-09-09 Sheriff Bot <webkit.review.bot@gmail.com>
  45970. Unreviewed, rolling out r67126.
  45971. http://trac.webkit.org/changeset/67126
  45972. https://bugs.webkit.org/show_bug.cgi?id=45510
  45973. broke chromium mac compile, it also uses PlatformContextSkia
  45974. (Requested by jamesr on #webkit).
  45975. * platform/graphics/chromium/ContentLayerChromium.cpp:
  45976. (WebCore::ContentLayerChromium::updateContents):
  45977. * platform/graphics/chromium/FontLinux.cpp:
  45978. (WebCore::adjustTextRenderMode):
  45979. (WebCore::Font::drawGlyphs):
  45980. (WebCore::Font::drawComplexText):
  45981. * platform/graphics/chromium/LayerRendererChromium.cpp:
  45982. (WebCore::LayerRendererChromium::setRootLayerCanvasSize):
  45983. * platform/graphics/chromium/VideoLayerChromium.cpp:
  45984. (WebCore::VideoLayerChromium::updateContents):
  45985. * platform/graphics/skia/ImageBufferSkia.cpp:
  45986. (WebCore::ImageBuffer::ImageBuffer):
  45987. (WebCore::ImageBuffer::clip):
  45988. * platform/graphics/skia/PlatformContextSkia.cpp:
  45989. (WebCore::PlatformContextSkia::State::State):
  45990. (WebCore::PlatformContextSkia::PlatformContextSkia):
  45991. (WebCore::PlatformContextSkia::save):
  45992. (WebCore::PlatformContextSkia::restore):
  45993. * platform/graphics/skia/PlatformContextSkia.h:
  45994. 2010-09-09 Simon Fraser <simon.fraser@apple.com>
  45995. Attempt to fix Qt build.
  45996. * WebCore.pro:
  45997. 2010-09-09 Simon Fraser <simon.fraser@apple.com>
  45998. Reviewed by Darin Adler.
  45999. https://bugs.webkit.org/show_bug.cgi?id=45509
  46000. <rdar://problem/8142166> REGRESSION: WebView setDrawsBackground:NO no
  46001. longer works without setBackgroundColor:clearColor
  46002. r61215 caused RenderView to paint the viewport background when the
  46003. document element's renderer is known to not fill opaquely paint
  46004. the entire viewport, i.e. more often than it did before.
  46005. This exposed a latent, long-standing bug which was introduced
  46006. in r14638 (the RenderCanvas -> RenderView rename), where a call
  46007. to view()->isTransparent() was not converted to frameView()->isTransparent(),
  46008. yet happened to still compile because of RenderObject::isTransparent().
  46009. This resulted in us painting the viewport background, even when
  46010. WebView clients explicitly said that they wanted a transparent
  46011. WebView.
  46012. Fixed by calling frameView()->isTransparent(), as intended.
  46013. * rendering/RenderView.cpp:
  46014. (WebCore::RenderView::paintBoxDecorations):
  46015. 2010-09-09 Chris Rogers <crogers@google.com>
  46016. Reviewed by Kenneth Russell.
  46017. audio engine: add Biquad files
  46018. https://bugs.webkit.org/show_bug.cgi?id=44795
  46019. No new tests since audio API is not yet implemented.
  46020. * platform/audio/Biquad.cpp: Added.
  46021. (WebCore::Biquad::Biquad):
  46022. (WebCore::Biquad::process):
  46023. (WebCore::Biquad::processFast):
  46024. (WebCore::Biquad::processSliceFast):
  46025. (WebCore::Biquad::reset):
  46026. (WebCore::Biquad::setLowpassParams):
  46027. (WebCore::Biquad::setHighpassParams):
  46028. (WebCore::Biquad::setLowShelfParams):
  46029. (WebCore::Biquad::setZeroPolePairs):
  46030. (WebCore::Biquad::setAllpassPole):
  46031. * platform/audio/Biquad.h: Added.
  46032. (WebCore::Biquad::~Biquad):
  46033. 2010-09-09 Chris Rogers <crogers@google.com>
  46034. Reviewed by Kenneth Russell.
  46035. Add AudioBuffer files
  46036. https://bugs.webkit.org/show_bug.cgi?id=45003
  46037. No new tests since audio API is not yet implemented.
  46038. * webaudio/AudioBuffer.cpp: Added.
  46039. (WebCore::AudioBuffer::create):
  46040. (WebCore::AudioBuffer::createFromAudioFileData):
  46041. (WebCore::AudioBuffer::AudioBuffer):
  46042. (WebCore::AudioBuffer::releaseMemory):
  46043. (WebCore::AudioBuffer::getChannelData):
  46044. (WebCore::AudioBuffer::zero):
  46045. * webaudio/AudioBuffer.h: Added.
  46046. (WebCore::AudioBuffer::length):
  46047. (WebCore::AudioBuffer::duration):
  46048. (WebCore::AudioBuffer::sampleRate):
  46049. (WebCore::AudioBuffer::numberOfChannels):
  46050. (WebCore::AudioBuffer::gain):
  46051. (WebCore::AudioBuffer::setGain):
  46052. * webaudio/AudioBuffer.idl: Added.
  46053. 2010-09-09 Alexey Marinichev <amarinichev@chromium.org>
  46054. Reviewed by James Robinson.
  46055. [chromium] Disable subpixel rendering in Linux when GPU compositor is active
  46056. https://bugs.webkit.org/show_bug.cgi?id=45087
  46057. Covered by all tests that activate the compositor and contain text.
  46058. * platform/graphics/chromium/ContentLayerChromium.cpp:
  46059. (WebCore::ContentLayerChromium::updateContents):
  46060. * platform/graphics/chromium/FontLinux.cpp:
  46061. (WebCore::adjustTextRenderMode): Added a check to see if the compositor is active.
  46062. (WebCore::Font::drawGlyphs):
  46063. (WebCore::Font::drawComplexText):
  46064. * platform/graphics/chromium/LayerRendererChromium.cpp:
  46065. (WebCore::LayerRendererChromium::setRootLayerCanvasSize):
  46066. * platform/graphics/chromium/VideoLayerChromium.cpp:
  46067. (WebCore::VideoLayerChromium::updateContents):
  46068. * platform/graphics/skia/ImageBufferSkia.cpp:
  46069. (WebCore::ImageBuffer::ImageBuffer):
  46070. (WebCore::ImageBuffer::clip):
  46071. * platform/graphics/skia/PlatformContextSkia.cpp:
  46072. Made setDrawingToImageBuffer and isDrawingToImageBuffer available to
  46073. Linux; removed all #if OS(WINDOWS) || OS(LINUX).
  46074. (WebCore::PlatformContextSkia::State::State):
  46075. (WebCore::PlatformContextSkia::PlatformContextSkia):
  46076. (WebCore::PlatformContextSkia::isDrawingToImageBuffer):
  46077. (WebCore::PlatformContextSkia::save):
  46078. (WebCore::PlatformContextSkia::beginLayerClippedToImage):
  46079. (WebCore::PlatformContextSkia::restore):
  46080. (WebCore::PlatformContextSkia::applyClipFromImage):
  46081. * platform/graphics/skia/PlatformContextSkia.h:
  46082. 2010-09-09 Simon Fraser <simon.fraser@apple.com>
  46083. Fix windows build by adding missing file.
  46084. * platform/graphics/win/LocalWindowsContext.h: Added.
  46085. (WebCore::LocalWindowsContext::LocalWindowsContext):
  46086. (WebCore::LocalWindowsContext::~LocalWindowsContext):
  46087. (WebCore::LocalWindowsContext::hdc):
  46088. 2010-09-09 Simon Fraser <simon.fraser@apple.com>
  46089. Reviewed by Adam Roben.
  46090. Scrollbars fail to render in composited iframes.
  46091. https://bugs.webkit.org/show_bug.cgi?id=45335
  46092. Add a stack-based class, LocalWindowsContext, which does a getWindowsContext/
  46093. releaseWindowsContext automatically.
  46094. Also fix getWindowsContext to create a bitmap context if mayCreateBitmap
  46095. is true, and if the context's HDC is null. This fixes scrollbar rendering
  46096. in compositing layers.
  46097. Use LocalWindowsContext in places where we had bare getWindowsContext() calls.
  46098. * platform/graphics/win/LocalWindowsContext.h
  46099. (WebCore::LocalWindowsContext::LocalWindowsContext):
  46100. (WebCore::LocalWindowsContext::~LocalWindowsContext):
  46101. (WebCore::LocalWindowsContext::hdc):
  46102. * platform/graphics/win/GraphicsContextCGWin.cpp:
  46103. (WebCore::GraphicsContext::releaseWindowsContext):
  46104. * platform/graphics/win/GraphicsContextWin.cpp:
  46105. (WebCore::GraphicsContext::getWindowsContext):
  46106. * platform/graphics/win/IconWin.cpp:
  46107. (WebCore::Icon::paint):
  46108. * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
  46109. (WebCore::MediaPlayerPrivate::paint):
  46110. * platform/win/ScrollbarThemeWin.cpp:
  46111. (WebCore::ScrollbarThemeWin::paintTrackPiece):
  46112. (WebCore::ScrollbarThemeWin::paintButton):
  46113. * plugins/win/PluginViewWin.cpp:
  46114. (WebCore::PluginView::paintWindowedPluginIntoContext):
  46115. (WebCore::PluginView::paint):
  46116. * rendering/RenderThemeWin.cpp:
  46117. (WebCore::drawControl):
  46118. 2010-09-09 Vincent Scheib <scheib@chromium.org>
  46119. Reviewed by James Robinson.
  46120. [Chromium] Minimize uploads in canvas 2d mixed mode rendering
  46121. https://bugs.webkit.org/show_bug.cgi?id=45476
  46122. No new tests - change is for performance, logic fixes only apparent when running hardware acceleration.
  46123. - Enumeration values fixed, "CavasWillDraw" -> "CanvasDidDraw".
  46124. - markDirtyRect() plumbed through GraphicsContext to PlatformContextSkia.
  46125. - Texture::updateSubRect() added to allow uploading only a dirty rect.
  46126. - Logic fix in ImageBuffer::draw(), caused canvas to canvas copies to be incorrect.
  46127. * html/canvas/CanvasRenderingContext2D.cpp:
  46128. (WebCore::CanvasRenderingContext2D::setAllAttributesToDefault):
  46129. (WebCore::CanvasRenderingContext2D::strokeRect):
  46130. (WebCore::CanvasRenderingContext2D::drawImage):
  46131. (WebCore::CanvasRenderingContext2D::didDraw):
  46132. - Logic fix for drawingContext()->markDirtyRect() call.
  46133. (WebCore::CanvasRenderingContext2D::putImageData):
  46134. (WebCore::CanvasRenderingContext2D::drawTextInternal):
  46135. - Logic fix for calls to "didDraw()", use peer method first.
  46136. * html/canvas/CanvasRenderingContext2D.h:
  46137. * platform/graphics/GraphicsContext.cpp:
  46138. (WebCore::GraphicsContext::drawImageBuffer):
  46139. (WebCore::GraphicsContext::markDirtyRect):
  46140. * platform/graphics/GraphicsContext.h:
  46141. * platform/graphics/gpu/Texture.cpp:
  46142. (WebCore::Texture::create):
  46143. (WebCore::Texture::load):
  46144. (WebCore::Texture::updateSubRect):
  46145. * platform/graphics/gpu/Texture.h:
  46146. * platform/graphics/gpu/TilingData.h:
  46147. (WebCore::TilingData::borderTexels):
  46148. * platform/graphics/skia/GraphicsContextSkia.cpp:
  46149. (WebCore::GraphicsContext::clipConvexPolygon):
  46150. (WebCore::GraphicsContext::markDirtyRect):
  46151. * platform/graphics/skia/ImageBufferSkia.cpp:
  46152. (WebCore::ImageBuffer::draw):
  46153. * platform/graphics/skia/PlatformContextSkia.cpp:
  46154. (WebCore::PlatformContextSkia::State::cloneInheritedProperties):
  46155. (WebCore::PlatformContextSkia::drawRect):
  46156. (WebCore::PlatformContextSkia::setFillColor):
  46157. (WebCore::PlatformContextSkia::setStrokeColor):
  46158. (WebCore::PlatformContextSkia::markDirtyRect):
  46159. (WebCore::PlatformContextSkia::uploadSoftwareToHardware):
  46160. * platform/graphics/skia/PlatformContextSkia.h:
  46161. 2010-09-08 Darin Adler <darin@apple.com>
  46162. Reviewed by Adam Barth.
  46163. Move functions from Frame to Editor as planned
  46164. https://bugs.webkit.org/show_bug.cgi?id=45218
  46165. Just executing the plan that has long been described in Frame.h
  46166. to move a bunch of functions to Editor.
  46167. * WebCore.exp.in: Updated.
  46168. * editing/Editor.cpp:
  46169. (WebCore::Editor::fontForSelection):
  46170. (WebCore::Editor::textDirectionForSelection):
  46171. (WebCore::Editor::applyStyle):
  46172. (WebCore::Editor::selectionStartHasStyle):
  46173. (WebCore::Editor::selectionHasStyle):
  46174. (WebCore::Editor::selectionStartCSSPropertyValue):
  46175. (WebCore::Editor::Editor):
  46176. (WebCore::Editor::cut):
  46177. (WebCore::Editor::copy):
  46178. (WebCore::Editor::ignoreSpelling):
  46179. (WebCore::Editor::learnSpelling):
  46180. (WebCore::Editor::isSelectionMisspelled):
  46181. (WebCore::Editor::guessesForMisspelledSelection):
  46182. (WebCore::Editor::selectedText):
  46183. (WebCore::Editor::firstRectForRange):
  46184. (WebCore::Editor::shouldChangeSelection):
  46185. (WebCore::Editor::computeAndSetTypingStyle):
  46186. (WebCore::Editor::selectionComputedStyle):
  46187. (WebCore::Editor::textFieldDidBeginEditing):
  46188. (WebCore::Editor::textFieldDidEndEditing):
  46189. (WebCore::Editor::textDidChangeInTextField):
  46190. (WebCore::Editor::doTextFieldCommandFromEvent):
  46191. (WebCore::Editor::textWillBeDeletedInTextField):
  46192. (WebCore::Editor::textDidChangeInTextArea):
  46193. (WebCore::Editor::applyEditingStyleToBodyElement):
  46194. (WebCore::Editor::applyEditingStyleToElement):
  46195. (WebCore::Editor::styleForSelectionStart):
  46196. (WebCore::Editor::findString):
  46197. (WebCore::Editor::countMatchesForText):
  46198. (WebCore::Editor::setMarkedTextMatchesAreHighlighted):
  46199. (WebCore::Editor::respondToChangedSelection):
  46200. * editing/Editor.h:
  46201. * editing/mac/EditorMac.mm:
  46202. (WebCore::Editor::fontAttributesForSelectionStart):
  46203. (WebCore::Editor::baseWritingDirectionForSelectionStart):
  46204. Moved functions here.
  46205. * page/Frame.cpp:
  46206. (WebCore::Frame::Frame):
  46207. (WebCore::Frame::shouldChangeSelection):
  46208. * page/Frame.h:
  46209. * page/mac/FrameMac.mm:
  46210. Moved functions out of here.
  46211. * dom/InputElement.cpp:
  46212. (WebCore::InputElement::dispatchBlurEvent):
  46213. (WebCore::InputElement::aboutToUnload):
  46214. * editing/DeleteSelectionCommand.cpp:
  46215. (WebCore::DeleteSelectionCommand::doApply):
  46216. * editing/EditorCommand.cpp:
  46217. (WebCore::executeToggleStyleInList):
  46218. (WebCore::executeDeleteToMark):
  46219. (WebCore::executeFindString):
  46220. (WebCore::executeSelectToMark):
  46221. (WebCore::executeSetMark):
  46222. (WebCore::executeSwapWithMark):
  46223. (WebCore::enabledVisibleSelectionAndMark):
  46224. * editing/SelectionController.cpp:
  46225. (WebCore::SelectionController::setSelection):
  46226. * html/HTMLInputElement.cpp:
  46227. (WebCore::HTMLInputElement::defaultEventHandler):
  46228. * page/ContextMenuController.cpp:
  46229. (WebCore::ContextMenuController::contextMenuItemSelected):
  46230. * page/DOMWindow.cpp:
  46231. (WebCore::DOMWindow::find):
  46232. * page/DragController.cpp:
  46233. (WebCore::DragController::startDrag):
  46234. * page/EventHandler.cpp:
  46235. (WebCore::EventHandler::sendContextMenuEventForKey):
  46236. * page/Page.cpp:
  46237. (WebCore::Page::findString):
  46238. (WebCore::Page::markAllMatchesForText):
  46239. * rendering/InlineTextBox.cpp:
  46240. (WebCore::InlineTextBox::paintTextMatchMarker):
  46241. * rendering/RenderTextControlMultiLine.cpp:
  46242. (WebCore::RenderTextControlMultiLine::subtreeHasChanged):
  46243. * rendering/RenderTextControlSingleLine.cpp:
  46244. (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
  46245. Changed call sites to use editor().
  46246. 2010-09-09 Chris Rogers <crogers@google.com>
  46247. Reviewed by Kenneth Russell.
  46248. Add AudioDSPKernelProcessor files
  46249. https://bugs.webkit.org/show_bug.cgi?id=45211
  46250. No new tests since audio API is not yet implemented.
  46251. * platform/audio/AudioDSPKernelProcessor.cpp: Added.
  46252. (WebCore::AudioDSPKernelProcessor::AudioDSPKernelProcessor):
  46253. (WebCore::AudioDSPKernelProcessor::initialize):
  46254. (WebCore::AudioDSPKernelProcessor::uninitialize):
  46255. (WebCore::AudioDSPKernelProcessor::process):
  46256. (WebCore::AudioDSPKernelProcessor::reset):
  46257. (WebCore::AudioDSPKernelProcessor::setNumberOfChannels):
  46258. * platform/audio/AudioDSPKernelProcessor.h: Added.
  46259. (WebCore::AudioDSPKernelProcessor::numberOfChannels):
  46260. 2010-09-09 Chris Rogers <crogers@google.com>
  46261. Reviewed by Kenneth Russell.
  46262. Add setRange() and zeroRange() methods to TypedArrayBase
  46263. https://bugs.webkit.org/show_bug.cgi?id=45419
  46264. No new tests since adding new methods which are not yet called anywhere.
  46265. * html/canvas/ArrayBufferView.cpp:
  46266. (WebCore::ArrayBufferView::setRangeImpl):
  46267. (WebCore::ArrayBufferView::zeroRangeImpl):
  46268. * html/canvas/ArrayBufferView.h:
  46269. * html/canvas/TypedArrayBase.h:
  46270. (WebCore::TypedArrayBase::setRange):
  46271. (WebCore::TypedArrayBase::zeroRange):
  46272. 2010-09-09 Robert Hogan <robert@webkit.org>
  46273. Reviewed by Andreas Kling.
  46274. [Qt] always send an Accept header
  46275. Ensure QtWebKit always sends an Accept header. This is required
  46276. for compatibility with sites that expect the header in requests
  46277. for subresources.
  46278. See https://bugs.webkit.org/show_bug.cgi?id=33242 for more.
  46279. https://bugs.webkit.org/show_bug.cgi?id=45458
  46280. * platform/network/qt/ResourceRequestQt.cpp:
  46281. (WebCore::ResourceRequest::toNetworkRequest):
  46282. 2010-09-09 Eric Carlson <eric.carlson@apple.com>
  46283. Reviewed by Chris Marrin.
  46284. Add media element logging
  46285. https://bugs.webkit.org/show_bug.cgi?id=45469
  46286. Add logging at interesting points in a media element's lifecycle.
  46287. * html/HTMLMediaElement.cpp:
  46288. (WebCore::urlForLogging):
  46289. (WebCore::boolString):
  46290. (WebCore::HTMLMediaElement::scheduleEvent):
  46291. (WebCore::HTMLMediaElement::asyncEventTimerFired):
  46292. (WebCore::HTMLMediaElement::canPlayType):
  46293. (WebCore::HTMLMediaElement::load):
  46294. (WebCore::HTMLMediaElement::prepareForLoad):
  46295. (WebCore::HTMLMediaElement::selectMediaResource):
  46296. (WebCore::HTMLMediaElement::loadResource):
  46297. (WebCore::HTMLMediaElement::isSafeToLoadURL):
  46298. (WebCore::HTMLMediaElement::waitForSourceChange):
  46299. (WebCore::HTMLMediaElement::noneSupported):
  46300. (WebCore::HTMLMediaElement::mediaEngineError):
  46301. (WebCore::HTMLMediaElement::cancelPendingEventsAndCallbacks):
  46302. (WebCore::HTMLMediaElement::setNetworkState):
  46303. (WebCore::HTMLMediaElement::setReadyState):
  46304. (WebCore::HTMLMediaElement::rewind):
  46305. (WebCore::HTMLMediaElement::returnToRealtime):
  46306. (WebCore::HTMLMediaElement::addPlayedRange):
  46307. (WebCore::HTMLMediaElement::seek):
  46308. (WebCore::HTMLMediaElement::finishSeek):
  46309. (WebCore::HTMLMediaElement::setPlaybackRate):
  46310. (WebCore::HTMLMediaElement::setWebkitPreservesPitch):
  46311. (WebCore::HTMLMediaElement::setAutoplay):
  46312. (WebCore::HTMLMediaElement::setPreload):
  46313. (WebCore::HTMLMediaElement::play):
  46314. (WebCore::HTMLMediaElement::playInternal):
  46315. (WebCore::HTMLMediaElement::pause):
  46316. (WebCore::HTMLMediaElement::pauseInternal):
  46317. (WebCore::HTMLMediaElement::setLoop):
  46318. (WebCore::HTMLMediaElement::setControls):
  46319. (WebCore::HTMLMediaElement::setVolume):
  46320. (WebCore::HTMLMediaElement::setMuted):
  46321. (WebCore::HTMLMediaElement::togglePlayState):
  46322. (WebCore::HTMLMediaElement::beginScrubbing):
  46323. (WebCore::HTMLMediaElement::endScrubbing):
  46324. (WebCore::HTMLMediaElement::selectNextSourceChild):
  46325. (WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
  46326. (WebCore::HTMLMediaElement::mediaPlayerVolumeChanged):
  46327. (WebCore::HTMLMediaElement::mediaPlayerMuteChanged):
  46328. (WebCore::HTMLMediaElement::mediaPlayerDurationChanged):
  46329. (WebCore::HTMLMediaElement::mediaPlayerRateChanged):
  46330. (WebCore::HTMLMediaElement::mediaPlayerPlaybackStateChanged):
  46331. (WebCore::HTMLMediaElement::mediaPlayerSawUnsupportedTracks):
  46332. (WebCore::HTMLMediaElement::mediaPlayerSizeChanged):
  46333. (WebCore::HTMLMediaElement::mediaPlayerRenderingModeChanged):
  46334. (WebCore::HTMLMediaElement::updatePlayState):
  46335. (WebCore::HTMLMediaElement::userCancelledLoad):
  46336. (WebCore::HTMLMediaElement::stop):
  46337. (WebCore::HTMLMediaElement::suspend):
  46338. (WebCore::HTMLMediaElement::resume):
  46339. (WebCore::HTMLMediaElement::hasPendingActivity):
  46340. (WebCore::HTMLMediaElement::mediaVolumeDidChange):
  46341. (WebCore::HTMLMediaElement::createMediaPlayerProxy):
  46342. (WebCore::HTMLMediaElement::enterFullscreen):
  46343. (WebCore::HTMLMediaElement::exitFullscreen):
  46344. (WebCore::HTMLMediaElement::setClosedCaptionsVisible):
  46345. (WebCore::HTMLMediaElement::mediaCanStart):
  46346. (WebCore::HTMLMediaElement::setShouldDelayLoadEvent):
  46347. 2010-09-09 Anton Muhin <antonm@chromium.org>
  46348. Reviewed by Adam Barth.
  46349. [v8] bypass caches when query memory usage from post GC and in crash handler.
  46350. https://bugs.webkit.org/show_bug.cgi?id=45036
  46351. Second part of the whole change: now use API introduced in
  46352. http://trac.webkit.org/changeset/66818 and now backed by Chromium.
  46353. * bindings/v8/V8DOMWindowShell.cpp:
  46354. (WebCore::reportFatalErrorInV8):
  46355. * bindings/v8/V8GCController.cpp:
  46356. (WebCore::V8GCController::gcEpilogue):
  46357. 2010-09-09 Kwang Yul Seo <skyul@company100.net>
  46358. Reviewed by James Robinson.
  46359. Make sure skia is not Chromium specific
  46360. https://bugs.webkit.org/show_bug.cgi?id=39672
  46361. FontCustomPlatformData is not Chromium-specific. Move it to platform/skia.
  46362. No new tests because this is pure refactoring.
  46363. * WebCore.gyp/WebCore.gyp:
  46364. * WebCore.gypi:
  46365. * platform/graphics/chromium/FontCustomPlatformData.cpp: Removed.
  46366. * platform/graphics/chromium/FontCustomPlatformData.h: Removed.
  46367. * platform/graphics/skia/FontCustomPlatformData.cpp: Copied from WebCore/platform/graphics/chromium/FontCustomPlatformData.cpp.
  46368. * platform/graphics/skia/FontCustomPlatformData.h: Copied from WebCore/platform/graphics/chromium/FontCustomPlatformData.h.
  46369. 2010-09-09 Chris Rogers <crogers@google.com>
  46370. Reviewed by Chris Fleizach.
  46371. Add AudioDSPKernel files
  46372. https://bugs.webkit.org/show_bug.cgi?id=45319
  46373. No new tests since audio API is not yet implemented.
  46374. * platform/audio/AudioDSPKernel.h: Added.
  46375. (WebCore::AudioDSPKernel::AudioDSPKernel):
  46376. (WebCore::AudioDSPKernel::~AudioDSPKernel):
  46377. (WebCore::AudioDSPKernel::sampleRate):
  46378. (WebCore::AudioDSPKernel::nyquist):
  46379. (WebCore::AudioDSPKernel::processor):
  46380. 2010-09-09 Chris Rogers <crogers@google.com>
  46381. Reviewed by Chris Fleizach.
  46382. Add AudioProcessor.h
  46383. https://bugs.webkit.org/show_bug.cgi?id=45206
  46384. No new tests since audio API is not yet implemented.
  46385. * platform/audio/AudioProcessor.h: Added.
  46386. (WebCore::AudioProcessor::AudioProcessor):
  46387. (WebCore::AudioProcessor::~AudioProcessor):
  46388. (WebCore::AudioProcessor::isInitialized):
  46389. (WebCore::AudioProcessor::sampleRate):
  46390. 2010-09-09 Kenneth Russell <kbr@google.com>
  46391. Reviewed by James Robinson.
  46392. Add cubic texture coordinate computation
  46393. https://bugs.webkit.org/show_bug.cgi?id=45250
  46394. Adding the texture coordinate computation for cubic curves per the
  46395. GPU Gems 3 chapter. No tests yet; will be tested in conjunction
  46396. with later code.
  46397. * platform/graphics/gpu/LoopBlinnConstants.h: Added.
  46398. * platform/graphics/gpu/LoopBlinnTextureCoords.cpp: Added.
  46399. (WebCore::LoopBlinnTextureCoords::compute):
  46400. * platform/graphics/gpu/LoopBlinnTextureCoords.h: Added.
  46401. (WebCore::LoopBlinnTextureCoords::Result::Result):
  46402. (WebCore::LoopBlinnTextureCoords::LoopBlinnTextureCoords):
  46403. 2010-09-09 Kenneth Russell <kbr@google.com>
  46404. Reviewed by James Robinson.
  46405. Add cubic curve classifier
  46406. https://bugs.webkit.org/show_bug.cgi?id=45249
  46407. Adding the cubic curve classification algorithm per the GPU Gems 3
  46408. chapter. No tests yet; will be tested in conjunction with later code.
  46409. * platform/graphics/gpu/LoopBlinnClassifier.cpp: Added.
  46410. (WebCore::LoopBlinnClassifier::classify):
  46411. * platform/graphics/gpu/LoopBlinnClassifier.h: Added.
  46412. (WebCore::LoopBlinnClassifier::Result::Result):
  46413. (WebCore::LoopBlinnClassifier::LoopBlinnClassifier):
  46414. 2010-09-09 Ryosuke Niwa <rniwa@webkit.org>
  46415. Reviewed by Darin Adler.
  46416. QueryCommandValue('FontSize') returns pixel values instead of IE font numbers
  46417. https://bugs.webkit.org/show_bug.cgi?id=21033
  46418. Modified selectionStartCSSPropertyValue to return legacy font size instead of pixel size.
  46419. To implement the conversion between pixel font size and legacy font size,
  46420. added legacyFontSize to CSSStyleSelector with a helper static function findNearestLegacyFontSize.
  46421. Fixed a bug in selectionComputedStyle where it obtains the style of the previous editing position
  46422. even when the selection is a range. This change revealed a crash in executeToggleStyleInList,
  46423. which was also fixed.
  46424. Test: editing/execCommand/query-font-size.html
  46425. * css/CSSComputedStyleDeclaration.cpp:
  46426. (WebCore::CSSComputedStyleDeclaration::getFontSizeCSSValuePreferringKeyword): Corrected style.
  46427. (WebCore::CSSComputedStyleDeclaration::useFixedFontDefaultSize): Added.
  46428. * css/CSSComputedStyleDeclaration.h:
  46429. * css/CSSStyleSelector.cpp:
  46430. (WebCore::CSSStyleSelector::fontSizeForKeyword): Renamed fixed/monospace to shouldUseFixedDefaultSize.
  46431. (WebCore::findNearestLegacyFontSize): Added, a helper for legacyFontSize.
  46432. (WebCore::CSSStyleSelector::legacyFontSize): Added.
  46433. * css/CSSStyleSelector.h:
  46434. * editing/Editor.cpp:
  46435. (WebCore::Editor::selectionStartCSSPropertyValue): Added a conversion from pixel to legacy font size.
  46436. * editing/EditorCommand.cpp:
  46437. (WebCore::executeToggleStyleInList): Crash fix.
  46438. * page/Frame.cpp:
  46439. (WebCore::Frame::selectionComputedStyle): See above.
  46440. 2010-09-09 Robert Hogan <robert@webkit.org>
  46441. Reviewed by Adam Barth.
  46442. Give WebKit clients a way to replace window.screen
  46443. to foil attempts to track users with it.
  46444. This allows clients to overload the values returned by the
  46445. Screen object through the JSC manipulation API (such as
  46446. QWebFrame::addToJavaScriptWindowObject() in Qt). Clients will
  46447. want to do this when they do not want to reveal too much
  46448. explicit information about the user's desktop configuration.
  46449. https://bugs.webkit.org/show_bug.cgi?id=41802
  46450. * page/DOMWindow.idl:
  46451. 2010-09-09 Kenneth Russell <kbr@google.com>
  46452. Reviewed by James Robinson.
  46453. Memory leak in red/black tree
  46454. https://bugs.webkit.org/show_bug.cgi?id=45472
  46455. Fixed memory leak in red/black tree where it was using operator
  46456. new directly to allocate its internal nodes rather than the arena
  46457. with which it was configured. Added allocateObject variant to
  46458. arena supporting single-argument constructors. Added test to
  46459. red/black tree unit tests to cover this functionality, and
  46460. refactored TrackedAllocator into helper file to share between
  46461. arena and red/black tree tests.
  46462. * platform/graphics/gpu/PODArena.h:
  46463. (WebCore::PODArena::allocateObject):
  46464. (WebCore::PODArena::allocateBase):
  46465. * platform/graphics/gpu/PODIntervalTree.h:
  46466. (WebCore::PODIntervalTree::PODIntervalTree):
  46467. * platform/graphics/gpu/PODRedBlackTree.h:
  46468. (WebCore::PODRedBlackTree::add):
  46469. 2010-09-09 Dean Jackson <dino@apple.com>
  46470. Reviewed by Simon Fraser.
  46471. Fill mode is broken with multiple keyframes
  46472. https://bugs.webkit.org/show_bug.cgi?id=41209
  46473. With a forward fill mode the animation would tick after
  46474. the end of the animation, causing the fractional
  46475. duration of the animation to wrap. This meant the last
  46476. style update would happen using the incorrect keyframes.
  46477. The solution was to put clamps in for the elapsed time
  46478. and current iteration count.
  46479. Tests: animations/fill-mode-missing-from-to-keyframes.html
  46480. animations/fill-mode-multiple-keyframes.html
  46481. * page/animation/KeyframeAnimation.cpp:
  46482. (WebCore::KeyframeAnimation::fetchIntervalEndpointsForProperty):
  46483. 2010-09-09 Chris Fleizach <cfleizach@apple.com>
  46484. Reviewed by David Kilzer.
  46485. AX: Support AccessibilityTextMarkers in DRT
  46486. https://bugs.webkit.org/show_bug.cgi?id=44778
  46487. Provide support in DRT for accessing and manipulating the text marker system that AX exposes.
  46488. This will allow future bug fixes in the text marker system to be adequately tested.
  46489. Tests: platform/mac/accessibility/element-for-text-marker.html
  46490. platform/mac/accessibility/text-marker-length.html
  46491. * accessibility/mac/AccessibilityObjectWrapper.mm:
  46492. (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
  46493. 2010-09-09 Simon Fraser <simon.fraser@apple.com>
  46494. Reviewed by Dan Bernstein.
  46495. REGRESSION(r58875-r59046): Scrollable content drawn in wrong layer with Flash 10.1
  46496. https://bugs.webkit.org/show_bug.cgi?id=40743
  46497. We can't do partial compositing layer updates on scrolling if we have to look
  46498. for overlap, because the overlap map needs to be populated by traversing the
  46499. compositing layer hierarchy from the root.
  46500. Test: compositing/layer-creation/scroll-partial-update.html
  46501. * rendering/RenderLayerCompositor.cpp:
  46502. (WebCore::RenderLayerCompositor::updateCompositingLayers):
  46503. 2010-09-09 Philippe Normand <pnormand@igalia.com>
  46504. Reviewed by Martin Robinson.
  46505. [GTK] testmimehandling falsely succeeds testing Ogg mime type
  46506. https://bugs.webkit.org/show_bug.cgi?id=45349
  46507. Advertize audio/x-vorbis+ogg so MediaDocuments loading local ogg
  46508. files work as well.
  46509. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  46510. (WebCore::mimeTypeCache):
  46511. 2010-09-09 Adam Barth <abarth@webkit.org>
  46512. Move FTPDirectoryDocument, ImageDocument, MediaDocument, and
  46513. PluginDocument from WebCore/loader to WebCore/html. These classes are
  46514. subclasses of HTMLDocument. They don't belong in the loader. Further
  46515. cleanup patches to follow.
  46516. * Android.mk:
  46517. * CMakeLists.txt:
  46518. * GNUmakefile.am:
  46519. * WebCore.gypi:
  46520. * WebCore.pro:
  46521. * WebCore.vcproj/WebCore.vcproj:
  46522. * WebCore.xcodeproj/project.pbxproj:
  46523. * html/FTPDirectoryDocument.cpp: Copied from WebCore/loader/FTPDirectoryDocument.cpp.
  46524. * html/FTPDirectoryDocument.h: Copied from WebCore/loader/FTPDirectoryDocument.h.
  46525. * html/ImageDocument.cpp: Copied from WebCore/loader/ImageDocument.cpp.
  46526. * html/ImageDocument.h: Copied from WebCore/loader/ImageDocument.h.
  46527. * html/MediaDocument.cpp: Copied from WebCore/loader/MediaDocument.cpp.
  46528. * html/MediaDocument.h: Copied from WebCore/loader/MediaDocument.h.
  46529. * html/PluginDocument.cpp: Copied from WebCore/loader/PluginDocument.cpp.
  46530. * html/PluginDocument.h: Copied from WebCore/loader/PluginDocument.h.
  46531. * loader/FTPDirectoryDocument.cpp: Removed.
  46532. * loader/FTPDirectoryDocument.h: Removed.
  46533. * loader/ImageDocument.cpp: Removed.
  46534. * loader/ImageDocument.h: Removed.
  46535. * loader/MediaDocument.cpp: Removed.
  46536. * loader/MediaDocument.h: Removed.
  46537. * loader/PluginDocument.cpp: Removed.
  46538. * loader/PluginDocument.h: Removed.
  46539. 2010-09-09 Andrey Kosyakov <caseq@chromium.org>
  46540. Reviewed by Yury Semikhatsky.
  46541. Web Inspector: use string representation of resource type in extension API
  46542. Fixed Resoruce.Type.toString() to handle Resource.Type.Media.
  46543. https://bugs.webkit.org/show_bug.cgi?id=45286
  46544. Test: inspector/extensions-resources.html
  46545. * English.lproj/localizedStrings.js: Added "media".
  46546. * inspector/front-end/ExtensionServer.js: Added webInspector.resources.Types. Return resource types as strings.
  46547. (WebInspector.ExtensionServer.prototype._convertResource):
  46548. (WebInspector.ExtensionServer.prototype._buildExtensionAPIInjectedScript):
  46549. * inspector/front-end/Resource.js: Added toUIString(), changed toString() to return locale-independent representation.
  46550. (WebInspector.Resource.Type.toUIString):
  46551. (WebInspector.Resource.Type.toString):
  46552. 2010-09-09 Kristian Amlie <kristian.amlie@nokia.com>
  46553. Reviewed by Andreas Kling.
  46554. [Qt] Fixed incorrect Symbian scoping.
  46555. The missing install functionality is only true for mmp based systems.
  46556. https://bugs.webkit.org/show_bug.cgi?id=45268
  46557. * WebCore.pro:
  46558. 2010-09-09 Gyuyoung Kim <gyuyoung.kim@samsung.com>
  46559. Reviewed by Dirk Schulze.
  46560. [WML] Add a parameter to fix build break.
  46561. https://bugs.webkit.org/show_bug.cgi?id=45437
  46562. In WMLSelectElement.h, the setSelectedIndexByUser() needs to have one more parameter.
  46563. Because, parent class's setSelectedIndexByUser() has one more param.
  46564. * wml/WMLSelectElement.h:
  46565. 2010-09-09 Ryuan Choi <ryuan.choi@samsung.com>
  46566. Unreviewed attempt to fix EFL build after r67001.
  46567. [EFL] Regression (67001) Build break
  46568. https://bugs.webkit.org/show_bug.cgi?id=45422
  46569. * platform/efl/ScrollbarEfl.cpp:
  46570. (scrollbarEflEdjeMessage):
  46571. 2010-09-08 Ryosuke Niwa <rniwa@webkit.org>
  46572. Reviewed by Tony Chang.
  46573. MarkupAccumulator should be broken down into two classes
  46574. https://bugs.webkit.org/show_bug.cgi?id=44854
  46575. Extracted wrapWithNode, wrapWithStyleNode, stringValueForRange, renderedText, removeExteriorStyles,
  46576. shouldAnnotate, m_shouldAnnotate, and m_reversedPrecedingMarkup from MarkupAccumulator to create
  46577. StyledMarkupAccumulator in order to isolate annotation related code and prepending of text.
  46578. Isolating MarkupAccumulator as a separate class has two advantages:
  46579. 1. Isolated serialization code is easier to understand and easier to security-review.
  46580. 2. Embedder can use MarkupAccumulator to implement "Save as" feature.
  46581. Also made takeResults, appendText, and appendElement in MarkupAccumulator virtual to override in
  46582. StyledMarkupAccumulator because prepending text requires overriding takeResults, appendText needs
  46583. to append only rendered text when shouldAnnotate() is true, and appendElement requires a different
  46584. behavior when shouldAnnotate() is true or when called inside wrapWithNode with convertBlocksToInlines = true.
  46585. No new tests are added since this is a cleanup.
  46586. * editing/markup.cpp:
  46587. (WebCore::MarkupAccumulator::MarkupAccumulator): Removed shouldAnnotate from argument.
  46588. (WebCore::MarkupAccumulator::~MarkupAccumulator): Added.
  46589. (WebCore::StyledMarkupAccumulator::): Added.
  46590. (WebCore::StyledMarkupAccumulator::StyledMarkupAccumulator): Added.
  46591. (WebCore::StyledMarkupAccumulator::appendElement): Added to support annotation.
  46592. (WebCore::StyledMarkupAccumulator::shouldAnnotate): Moved from MarkupAccumulator.
  46593. (WebCore::MarkupAccumulator::appendStartTag): No longer takes convertBlocksToInlines and RangeFullySelectsNode.
  46594. (WebCore::StyledMarkupAccumulator::wrapWithStyleNode): Moved from MarkupAccumulator.
  46595. (WebCore::MarkupAccumulator::takeResults): No longer accumulates prepended text, and made virtual.
  46596. (WebCore::StyledMarkupAccumulator::takeResults): Added to support prepended text.
  46597. (WebCore::MarkupAccumulator::shouldAddNamespaceAttribute): Takes a reference to Attribute instead of a pointer.
  46598. (WebCore::MarkupAccumulator::entityMaskForText): Extracted from appendText.
  46599. (WebCore::MarkupAccumulator::appendText): No longer deals with annotation.
  46600. (WebCore::StyledMarkupAccumulator::appendText): Added to support annotation.
  46601. (WebCore::StyledMarkupAccumulator::stringValueForRange): Moved from MarkupAccumulator.
  46602. (WebCore::StyledMarkupAccumulator::renderedText): Moved from MarkupAccumulator.
  46603. (WebCore::MarkupAccumulator::appendElement): No longer deals with annotation.
  46604. (WebCore::StyledMarkupAccumulator::wrapWithNode): Moved from MarkupAccumulator.
  46605. (WebCore::StyledMarkupAccumulator::removeExteriorStyles): Moved from MarkupAccumulator.
  46606. (WebCore::MarkupAccumulator::appendOpenTag): Added.
  46607. (WebCore::MarkupAccumulator::appendCloseTag): Added.
  46608. (WebCore::MarkupAccumulator::appendAttribute): Added.
  46609. (WebCore::MarkupAccumulator::appendStartMarkup): No longer takes convertBlocksToInlines and RangeFullySelectsNode.
  46610. (WebCore::serializeNodes): Takes StyledMarkupAccumulator.
  46611. (WebCore::createMarkup): Range version uses StyledMarkupAccumulator and node version uses MarkupAccumulator.
  46612. 2010-09-08 Peter Kasting <pkasting@google.com>
  46613. Not reviewed, layout test fix.
  46614. Fix flaky layout test results caused by not initializing members correctly.
  46615. https://bugs.webkit.org/show_bug.cgi?id=45411
  46616. * platform/ScrollAnimator.cpp:
  46617. (WebCore::ScrollAnimator::ScrollAnimator):
  46618. (WebCore::ScrollAnimator::~ScrollAnimator):
  46619. * platform/ScrollAnimator.h:
  46620. 2010-09-08 MORITA Hajime <morrita@google.com>
  46621. Reviewed by Tony Chang.
  46622. spelling underline gets lost on backspace
  46623. https://bugs.webkit.org/show_bug.cgi?id=41423
  46624. moveParagraphs() did make a DOM range by serializing source range
  46625. and deserializing it back, and markers are gone during the process.
  46626. This change marks that DOM range again.
  46627. Test: editing/spelling/spelling-backspace-between-lines.html
  46628. * editing/CompositeEditCommand.cpp:
  46629. (WebCore::CompositeEditCommand::moveParagraphs):
  46630. * editing/Editor.cpp:
  46631. (WebCore::Editor::clearMisspellingsAndBadGrammar): Added.
  46632. (WebCore::Editor::markMisspellingsAndBadGrammar): Added.
  46633. * editing/Editor.h:
  46634. 2010-09-08 Adam Barth <abarth@webkit.org>
  46635. Reviewed by Eric Seidel.
  46636. text/plain documents that start with \n trigger ASSERT
  46637. https://bugs.webkit.org/show_bug.cgi?id=45409
  46638. Because the TextDocumentParser uses a <pre> element to show the text,
  46639. it ran into a requirement from HTML5 to skip any initial \n character
  46640. tokens inside a <pre> element. We don't want the behavior for
  46641. TextDocuments, so I've loosened our ASSERTs and added a comment and a
  46642. test to document the correct behavior.
  46643. Test: fast/tokenizer/text-plain.html
  46644. * html/parser/HTMLTokenizer.cpp:
  46645. (WebCore::HTMLTokenizer::nextToken):
  46646. 2010-09-08 James Robinson <jamesr@chromium.org>
  46647. Reviewed by Kenneth Russell.
  46648. [chromium] Always do 2d canvas clearRect() in hardware
  46649. https://bugs.webkit.org/show_bug.cgi?id=45415
  46650. r67003 forced Canvas 2d's clearRect() to happen in software if a gradient/shadow/etc was
  46651. active. This is subtly wrong for mixed mode rendering since it results in only the
  46652. software backing store being cleared and not the hardware. This forces clearRect() to
  46653. happen in hardware. Since we upload mixed mode results before doing any hardware draw
  46654. this means we always clear everything.
  46655. * platform/graphics/skia/GraphicsContextSkia.cpp:
  46656. (WebCore::GraphicsContext::clearRect):
  46657. 2010-09-08 Dean Jackson <dino@apple.com>
  46658. Unreviewed attempt to fix the Mac builds.
  46659. * css/CSSParser.cpp:
  46660. (WebCore::CSSParser::parseAnimationTimingFunction):
  46661. 2010-09-08 Dean Jackson <dino@apple.com>
  46662. Unreviewed attempt to fix QT build.
  46663. * platform/graphics/qt/GraphicsLayerQt.cpp:
  46664. (WebCore::solveStepsFunction):
  46665. (WebCore::applyTimingFunction):
  46666. 2010-09-08 Dean Jackson <dino@apple.com>
  46667. Reviewed by Simon Fraser.
  46668. Implement steps() timing function for animations
  46669. https://bugs.webkit.org/show_bug.cgi?id=44541
  46670. Tests: animations/timing-functions.html
  46671. transitions/steps-timing-function.html
  46672. * css/CSSComputedStyleDeclaration.cpp:
  46673. (WebCore::getTimingFunctionValue):
  46674. - when creating computed style we now test what
  46675. type of timing function it being used
  46676. * css/CSSParser.cpp:
  46677. (WebCore::CSSParser::parseCubicBezierTimingFunctionValue):
  46678. - rename this method from parseTimingFunctionValue
  46679. (WebCore::CSSParser::parseAnimationTimingFunction):
  46680. - support parsing the steps() function
  46681. * css/CSSParser.h:
  46682. - method rename
  46683. * css/CSSStyleSelector.cpp:
  46684. (WebCore::CSSStyleSelector::mapAnimationTimingFunction):
  46685. - handle 'step-start' and 'step-end' identifiers. Also
  46686. now use ::create when constructing objects
  46687. * css/CSSTimingFunctionValue.cpp:
  46688. (WebCore::CSSLinearTimingFunctionValue::cssText):
  46689. (WebCore::CSSCubicBezierTimingFunctionValue::cssText):
  46690. (WebCore::CSSStepsTimingFunctionValue::cssText):
  46691. - new text output for computed style. We now produce
  46692. the text 'linear' when appropriate.
  46693. * css/CSSTimingFunctionValue.h:
  46694. (WebCore::CSSTimingFunctionValue::isLinearTimingFunctionValue):
  46695. (WebCore::CSSTimingFunctionValue::isCubicBezierTimingFunctionValue):
  46696. (WebCore::CSSTimingFunctionValue::isStepsTimingFunctionValue):
  46697. (WebCore::CSSTimingFunctionValue::CSSTimingFunctionValue):
  46698. (WebCore::CSSTimingFunctionValue::isTimingFunctionValue):
  46699. (WebCore::CSSLinearTimingFunctionValue::create):
  46700. (WebCore::CSSLinearTimingFunctionValue::isLinearTimingFunctionValue):
  46701. (WebCore::CSSLinearTimingFunctionValue::CSSLinearTimingFunctionValue):
  46702. (WebCore::CSSCubicBezierTimingFunctionValue::create):
  46703. (WebCore::CSSCubicBezierTimingFunctionValue::isCubicBezierTimingFunctionValue):
  46704. (WebCore::CSSCubicBezierTimingFunctionValue::CSSCubicBezierTimingFunctionValue):
  46705. (WebCore::CSSStepsTimingFunctionValue::create):
  46706. (WebCore::CSSStepsTimingFunctionValue::numberOfSteps):
  46707. (WebCore::CSSStepsTimingFunctionValue::stepAtStart):
  46708. (WebCore::CSSStepsTimingFunctionValue::isStepsTimingFunctionValue):
  46709. (WebCore::CSSStepsTimingFunctionValue::CSSStepsTimingFunctionValue):
  46710. - CSSTimingFunction is now a pure virtual ref-counted base class, with
  46711. subclasses for each of the three supported timing functions.
  46712. * css/CSSValueKeywords.in:
  46713. - new keywords step-start and step-end
  46714. * page/animation/AnimationBase.cpp:
  46715. (WebCore::solveStepsFunction):
  46716. - produces the output value from a stepping function
  46717. (WebCore::AnimationBase::progress):
  46718. - now has to switch based on timing function type
  46719. * page/animation/KeyframeAnimation.cpp:
  46720. (WebCore::KeyframeAnimation::fetchIntervalEndpointsForProperty):
  46721. - use ref-counted access
  46722. * platform/animation/Animation.cpp:
  46723. (WebCore::Animation::animationsMatch):
  46724. - change timing function comparison for operator==
  46725. * platform/animation/Animation.h:
  46726. (WebCore::Animation::timingFunction):
  46727. (WebCore::Animation::setTimingFunction):
  46728. (WebCore::Animation::initialAnimationTimingFunction):
  46729. - move to ref-counted timing function class
  46730. * platform/animation/TimingFunction.h:
  46731. (WebCore::TimingFunction::~TimingFunction):
  46732. (WebCore::TimingFunction::isLinearTimingFunction):
  46733. (WebCore::TimingFunction::isCubicBezierTimingFunction):
  46734. (WebCore::TimingFunction::isStepsTimingFunction):
  46735. (WebCore::TimingFunction::TimingFunction):
  46736. (WebCore::LinearTimingFunction::create):
  46737. (WebCore::LinearTimingFunction::~LinearTimingFunction):
  46738. (WebCore::LinearTimingFunction::operator==):
  46739. (WebCore::LinearTimingFunction::LinearTimingFunction):
  46740. (WebCore::CubicBezierTimingFunction::create):
  46741. (WebCore::CubicBezierTimingFunction::~CubicBezierTimingFunction):
  46742. (WebCore::CubicBezierTimingFunction::operator==):
  46743. (WebCore::CubicBezierTimingFunction::CubicBezierTimingFunction):
  46744. (WebCore::StepsTimingFunction::create):
  46745. (WebCore::StepsTimingFunction::~StepsTimingFunction):
  46746. (WebCore::StepsTimingFunction::operator==):
  46747. (WebCore::StepsTimingFunction::numberOfSteps):
  46748. (WebCore::StepsTimingFunction::stepAtStart):
  46749. (WebCore::StepsTimingFunction::StepsTimingFunction):
  46750. - TimingFunction is now a ref-counted pure virtual base class,
  46751. with three subclasses representing the types of timing functions
  46752. that are supported.
  46753. * platform/graphics/GraphicsLayer.h:
  46754. (WebCore::AnimationValue::AnimationValue):
  46755. (WebCore::FloatAnimationValue::FloatAnimationValue):
  46756. (WebCore::TransformAnimationValue::TransformAnimationValue):
  46757. - use PassRefPtr in function parameters
  46758. * platform/graphics/qt/GraphicsLayerQt.cpp:
  46759. (WebCore::solveStepsFunction):
  46760. (WebCore::applyTimingFunction):
  46761. (WebCore::AnimationQt::AnimationQt):
  46762. (WebCore::AnimationQt::updateCurrentTime):
  46763. - implement the timing function switch for QT
  46764. * platform/graphics/mac/GraphicsLayerCA.mm:
  46765. (WebCore::getCAMediaTimingFunction):
  46766. - update for new timing function interface
  46767. (WebCore::animationHasStepsTimingFunction):
  46768. - new method to make sure animations with steps() functions
  46769. never try to execute in Core Animation
  46770. (WebCore::GraphicsLayerCA::addAnimation):
  46771. - test for steps() timing function
  46772. (WebCore::GraphicsLayerCA::timingFunctionForAnimationValue):
  46773. * rendering/style/RenderStyleConstants.h:
  46774. - remove old RenderStyle enum for timing function types
  46775. 2010-09-08 Csaba Osztrogonác <ossy@webkit.org>
  46776. Unreviewed trivial fix after r66960.
  46777. * WebCore.pro: loader/TextDocument.h renamed to html/TextDocument.h
  46778. 2010-09-08 Adam Barth <abarth@webkit.org>
  46779. Reviewed by Eric Seidel.
  46780. move-during-parse-parent.html crashes
  46781. https://bugs.webkit.org/show_bug.cgi?id=45210
  46782. When inserting elements into the tree, they need to be associated with
  46783. their parent's document, not the document for which the parser is
  46784. running. These two are different when the parent has been moved to a
  46785. different document during parsing.
  46786. Test: fast/parser/move-during-parsing.html
  46787. * html/parser/HTMLConstructionSite.cpp:
  46788. (WebCore::HTMLConstructionSite::insertComment):
  46789. (WebCore::HTMLConstructionSite::insertCommentOnHTMLHtmlElement):
  46790. (WebCore::HTMLConstructionSite::insertScriptElement):
  46791. (WebCore::HTMLConstructionSite::insertTextNode):
  46792. (WebCore::HTMLConstructionSite::createElement):
  46793. (WebCore::HTMLConstructionSite::createHTMLElement):
  46794. 2010-09-08 Gabor Loki <loki@webkit.org>
  46795. Reviewed by Andreas Kling.
  46796. Fix increases required alignment of target type warning on ARM
  46797. https://bugs.webkit.org/show_bug.cgi?id=45301
  46798. No new tests needed.
  46799. * bindings/js/SerializedScriptValue.cpp:
  46800. (WebCore::CloneDeserializer::readLittleEndian):
  46801. (WebCore::CloneDeserializer::readString):
  46802. * plugins/PluginDatabase.cpp:
  46803. (WebCore::readTime):
  46804. 2010-09-08 Antonio Gomes <agomes@rim.com>
  46805. Reviewed by Daniel Bates.
  46806. Make FocusController::focusedOrMainFrame method const
  46807. https://bugs.webkit.org/show_bug.cgi?id=45406
  46808. No new tests.
  46809. * page/FocusController.cpp:
  46810. (WebCore::FocusController::focusedOrMainFrame):
  46811. * page/FocusController.h:
  46812. 2010-09-08 Jian Li <jianli@chromium.org>
  46813. Reviewed by Darin Adler.
  46814. Fix a problem in createCanonicalUUIDString that causes the last digit
  46815. missing on Linux.
  46816. https://bugs.webkit.org/show_bug.cgi?id=45412
  46817. This is caused by not including the final null character into the count
  46818. that is provided to fgets.
  46819. This is covered by the existing test: send-form-data-with-sliced-file.html.
  46820. * platform/UUID.cpp:
  46821. (WebCore::createCanonicalUUIDString):
  46822. 2010-09-08 Nico Weber <thakis@chromium.org>
  46823. Reviewed by Dimitri Glazkov.
  46824. chromium/mac: Fix overrelease in ImageLayerChromium
  46825. https://bugs.webkit.org/show_bug.cgi?id=45360
  46826. Only release colorSpace if we created it.
  46827. * platform/graphics/chromium/ImageLayerChromium.cpp:
  46828. (WebCore::ImageLayerChromium::updateContents):
  46829. 2010-09-08 Robert Hogan <robert@webkit.org>
  46830. Reviewed by Antonio Gomes.
  46831. Remove some unnecessary duplicate calls to string functions
  46832. https://bugs.webkit.org/show_bug.cgi?id=45314
  46833. * platform/network/curl/ResourceHandleManager.cpp:
  46834. (WebCore::parseDataUrl):
  46835. * websockets/WebSocketChannel.cpp:
  46836. (WebCore::WebSocketChannel::send):
  46837. 2010-09-08 Peter Kasting <pkasting@google.com>
  46838. Not reviewed, fallout from http://trac.webkit.org/changeset/67001
  46839. Fix compile failures and add svn:eol-style on two new files.
  46840. * platform/ScrollAnimator.h: Added property svn:eol-style.
  46841. * platform/ScrollAnimatorWin.cpp: Added property svn:eol-style.
  46842. * platform/win/PopupMenuWin.cpp: Fix compile errors.
  46843. (WebCore::PopupMenuWin::scrollToRevealSelection):
  46844. (WebCore::PopupMenuWin::scrollSize):
  46845. 2010-09-08 James Robinson <jamesr@chromium.org>
  46846. Reviewed by Kenneth Russell.
  46847. [chromium] Force canvas 2d draw calls to happen in software if a gradient, pattern, shadow, or clip are active
  46848. https://bugs.webkit.org/show_bug.cgi?id=45405
  46849. This forces all draw calls to happen in software instead of hardware if there is a fill pattern, gradient,
  46850. shadow, or clip applied; at least until we can handle these in hardware. Otherwise the pattern/gradient/etc
  46851. is completely ignored by the hardware drawing routine and we render incorrectly.
  46852. The test is slightly convervative - for example it will force drawImage() calls to happen in software if a
  46853. fill gradient is set even though it's irrelevant. This doesn't seem to be an issue in practice and we
  46854. can tighten the checks later if needed.
  46855. Tested by fast/canvas/canvas-incremental-repaint.html.
  46856. * platform/graphics/skia/GraphicsContextSkia.cpp:
  46857. (WebCore::GraphicsContext::canvasClip):
  46858. (WebCore::GraphicsContext::fillRect):
  46859. * platform/graphics/skia/ImageBufferSkia.cpp:
  46860. (WebCore::ImageBuffer::draw):
  46861. * platform/graphics/skia/ImageSkia.cpp:
  46862. (WebCore::BitmapImage::draw):
  46863. (WebCore::BitmapImageSingleFrameSkia::draw):
  46864. * platform/graphics/skia/PlatformContextSkia.cpp:
  46865. (WebCore::PlatformContextSkia::State::State):
  46866. (WebCore::PlatformContextSkia::canvasClipPath):
  46867. (WebCore::PlatformContextSkia::canAccelerate):
  46868. * platform/graphics/skia/PlatformContextSkia.h:
  46869. 2010-09-08 Peter Kasting <pkasting@google.com>
  46870. Reviewed by David Hyatt.
  46871. Add smooth scrolling framework, and a Windows implementation.
  46872. https://bugs.webkit.org/show_bug.cgi?id=32356
  46873. * CMakeLists.txt: Add ScrollAnimator.
  46874. * GNUmakefile.am: Add ScrollAnimator.
  46875. * WebCore.gyp/WebCore.gyp: Add Windows ScrollAnimator.
  46876. * WebCore.gypi: Add ScrollAnimator.
  46877. * WebCore.pro: Add ScrollAnimator.
  46878. * WebCore.vcproj/WebCore.vcproj: Add ScrollAnimator.
  46879. * WebCore.xcodeproj/project.pbxproj: Add ScrollAnimator.
  46880. * platform/ScrollAnimator.cpp: Added base implementation that does no animation.
  46881. (WebCore::ScrollAnimator::create):
  46882. (WebCore::ScrollAnimator::scroll):
  46883. (WebCore::ScrollAnimator::setScrollPositionAndStopAnimation):
  46884. * platform/ScrollAnimator.h: Added base implementation that does no animation.
  46885. (WebCore::ScrollAnimator::ScrollAnimator):
  46886. (WebCore::ScrollAnimator::~ScrollAnimator):
  46887. * platform/ScrollAnimatorWin.cpp: Added Windows subclass that animates scrolls.
  46888. (WebCore::ScrollAnimator::create):
  46889. (WebCore::ScrollAnimatorWin::PerAxisData::PerAxisData):
  46890. (WebCore::ScrollAnimatorWin::ScrollAnimatorWin):
  46891. (WebCore::ScrollAnimatorWin::~ScrollAnimatorWin):
  46892. (WebCore::ScrollAnimatorWin::scroll):
  46893. (WebCore::ScrollAnimatorWin::setScrollPositionAndStopAnimation):
  46894. (WebCore::ScrollAnimatorWin::accelerationTime):
  46895. (WebCore::ScrollAnimatorWin::animationTimerFired):
  46896. (WebCore::ScrollAnimatorWin::stopAnimationTimerIfNeeded):
  46897. (WebCore::ScrollAnimatorWin::animateScroll):
  46898. * platform/ScrollAnimatorWin.h: Added Windows subclass that animates scrolls.
  46899. * platform/ScrollView.cpp: Implement new ScrollbarClient functions. Allow wheel scrolls to be animated.
  46900. (WebCore::ScrollView::scrollSize):
  46901. (WebCore::ScrollView::setScrollOffsetFromAnimation):
  46902. (WebCore::ScrollView::updateScrollbars):
  46903. (WebCore::ScrollView::wheelEvent):
  46904. * platform/ScrollView.h: Implement new ScrollbarClient functions.
  46905. * platform/Scrollbar.cpp: Allow ScrollAnimator to handle scrolls if present.
  46906. (WebCore::Scrollbar::setValue):
  46907. (WebCore::Scrollbar::scroll):
  46908. (WebCore::Scrollbar::moveThumb):
  46909. (WebCore::Scrollbar::setCurrentPos):
  46910. (WebCore::Scrollbar::mouseMoved):
  46911. * platform/Scrollbar.h:
  46912. * platform/ScrollbarClient.cpp: Added to avoid having to make ScrollAnimator.h non-private.
  46913. (WebCore::ScrollbarClient::ScrollbarClient):
  46914. (WebCore::ScrollbarClient::~ScrollbarClient):
  46915. (WebCore::ScrollbarClient::scroll):
  46916. (WebCore::ScrollbarClient::setScrollPositionAndStopAnimation):
  46917. * platform/ScrollbarClient.h: Add hooks for ScrollAnimator.
  46918. (WebCore::ScrollbarClient::convertFromScrollbarToContainingView):
  46919. (WebCore::ScrollbarClient::convertFromContainingViewToScrollbar):
  46920. * platform/gtk/MainFrameScrollbarGtk.cpp:
  46921. (MainFrameScrollbarGtk::gtkValueChanged):
  46922. * platform/qt/ScrollbarQt.cpp: Use scroll() in preference to setValue().
  46923. (WebCore::Scrollbar::contextMenu):
  46924. * platform/win/PopupMenuWin.cpp: Implement new ScrollbarClient functions.
  46925. (WebCore::PopupMenuWin::scrollSize):
  46926. (WebCore::PopupMenuWin::setScrollOffsetFromAnimation):
  46927. * platform/win/PopupMenuWin.h: Implement new ScrollbarClient functions.
  46928. * rendering/RenderDataGrid.cpp: Implement new ScrollbarClient functions.
  46929. (WebCore::RenderDataGrid::scrollSize):
  46930. (WebCore::RenderDataGrid::setScrollOffsetFromAnimation):
  46931. * rendering/RenderDataGrid.h: Implement new ScrollbarClient functions.
  46932. * rendering/RenderLayer.cpp: Implement new ScrollbarClient functions.
  46933. (WebCore::RenderLayer::scrollToOffset):
  46934. (WebCore::RenderLayer::scrollSize):
  46935. (WebCore::RenderLayer::setScrollOffsetFromAnimation):
  46936. (WebCore::RenderLayer::updateScrollInfoAfterLayout):
  46937. * rendering/RenderLayer.h: Implement new ScrollbarClient functions.
  46938. * rendering/RenderListBox.cpp: Implement new ScrollbarClient functions.
  46939. (WebCore::RenderListBox::scrollToRevealElementAtListIndex):
  46940. (WebCore::RenderListBox::scrollSize):
  46941. (WebCore::RenderListBox::setScrollOffsetFromAnimation):
  46942. (WebCore::RenderListBox::setScrollTop):
  46943. * rendering/RenderListBox.h: Implement new ScrollbarClient functions.
  46944. 2010-09-08 Ryosuke Niwa <rniwa@webkit.org>
  46945. Reviewed by Tony Chang.
  46946. applyInlineStyleToRange needs cleanup
  46947. https://bugs.webkit.org/show_bug.cgi?id=45008
  46948. Removed rangeIsEmpty and extracted the entire loop into applyInlineStyleToNodeRange.
  46949. applyInlineStyleToRange is now a wrapper that fixes range and passes it on to applyInlineStyleToNodeRange.
  46950. No new tests are added since this is a cleanup.
  46951. * editing/ApplyStyleCommand.cpp:
  46952. (WebCore::ApplyStyleCommand::applyInlineStyleToRange): Cleaned up.
  46953. (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange): Extracted from applyInlineStyleToRange.
  46954. * editing/ApplyStyleCommand.h:
  46955. 2010-09-08 Andy Estes <aestes@apple.com>
  46956. Rubber-stamped by Darin Adler.
  46957. Incorporate additional feedback from
  46958. https://bugs.webkit.org/show_bug.cgi?id=45364.
  46959. * html/HTMLObjectElement.cpp:
  46960. (WebCore::HTMLObjectElement::parametersForPlugin): Rename urlParam to
  46961. urlParameter.
  46962. * loader/SubframeLoader.h: Add argument names to the definition of
  46963. SubframeLoader::resourceWillUsePlugin().
  46964. 2010-09-07 Oliver Hunt <oliver@apple.com>
  46965. Reviewed by Anders Carlsson.
  46966. Support SerializedScriptValue in WebKit2
  46967. https://bugs.webkit.org/show_bug.cgi?id=45340
  46968. Add a new constructor that allows WebKit2 to create a SerializedScriptValue
  46969. directly from serialized data.
  46970. * WebCore.exp.in:
  46971. * bindings/js/SerializedScriptValue.h:
  46972. (WebCore::SerializedScriptValue::adopt):
  46973. (WebCore::SerializedScriptValue::data):
  46974. 2010-09-08 Andy Estes <aestes@apple.com>
  46975. Reviewed by Eric Carlson.
  46976. Fallback content should be rendered when an <object> doesn't specify a
  46977. data, type or classid attribute.
  46978. https://bugs.webkit.org/show_bug.cgi?id=45364
  46979. <rdar://problem/8375816>
  46980. HTML5 says that if no data or type attribute is specified on an <object>,
  46981. fallback content should be rendered. However, WebKit has traditionally
  46982. supported specifying a URL and MIME type in <param> elements.
  46983. To more closely match the spec while maintaining compatibility with
  46984. content that relied on our old behavior, we will continue to load
  46985. a resource specified by <param> elements if we can determine a priori
  46986. that it will be handled by a plug-in.
  46987. If we can't make this determination, and the <object> element has no
  46988. "data" or "type" attribute, the <param> elements will be ignored and
  46989. fallback content will be rendered. Otherwise, there is no change in
  46990. behavior.
  46991. * html/HTMLObjectElement.cpp:
  46992. (WebCore::HTMLObjectElement::parametersForPlugin): If an empty url is
  46993. passed to this function and a <param> exists that specifies a url that
  46994. references a plug-in resource, set it to url, making it the url that
  46995. will be loaded by the <object> element.
  46996. (WebCore::HTMLObjectElement::updateWidget): If no type attribute was
  46997. specified, but there is a classid attribute, try to map the classid to
  46998. a MIME type. This needs to be done before calling
  46999. HTMLObjectElement::parametersForPlugin().
  47000. * loader/SubframeLoader.cpp:
  47001. (WebCore::SubframeLoader::resourceWillUsePlugin): Make a public method
  47002. that determines if a resource will load a plug-in based on its url and
  47003. MIME type. This is equivalent to calling
  47004. SubframeLoader::shouldUsePlugin(), but does not burden the caller with
  47005. the details of fallback content.
  47006. * loader/SubframeLoader.h:
  47007. 2010-09-08 Pavel Podivilov <podivilov@chromium.org>
  47008. Reviewed by Yury Semikhatsky.
  47009. Web Inspector: add breakpoints to source frame after content is loaded.
  47010. https://bugs.webkit.org/show_bug.cgi?id=43056
  47011. * inspector/front-end/ScriptsPanel.js:
  47012. (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished):
  47013. (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
  47014. * inspector/front-end/SourceView.js:
  47015. (WebInspector.SourceView.prototype._contentLoaded):
  47016. 2010-09-08 Andreas Kling <andreas.kling@nokia.com>
  47017. Reviewed by Kenneth Rohde Christiansen.
  47018. Canvas: Remove unnecessary null-check of canvas() in getImageData()
  47019. https://bugs.webkit.org/show_bug.cgi?id=45394
  47020. canvas() is already dereferenced earlier in the function so there is
  47021. no use in checking it for null later.
  47022. * html/canvas/CanvasRenderingContext2D.cpp:
  47023. (WebCore::CanvasRenderingContext2D::getImageData):
  47024. 2010-09-08 Philippe Normand <pnormand@igalia.com>
  47025. Reviewed by Eric Carlson.
  47026. [GStreamer] cache media duration in READY instead of PLAYING
  47027. https://bugs.webkit.org/show_bug.cgi?id=39053
  47028. New cacheDuration private method used to in updateStates() and
  47029. durationChanged().
  47030. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  47031. (WebCore::MediaPlayerPrivateGStreamer::updateStates):
  47032. (WebCore::MediaPlayerPrivateGStreamer::cacheDuration):
  47033. (WebCore::MediaPlayerPrivateGStreamer::durationChanged):
  47034. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
  47035. 2010-09-08 Martin Robinson <mrobinson@igalia.com>
  47036. Reviewed by Xan Lopez.
  47037. [GTK] Need a WebSocket implementation
  47038. https://bugs.webkit.org/show_bug.cgi?id=45197
  47039. Add a GIO-based WebSocket implementation. This does not yet support
  47040. SSL sockets or proxies, but these should be possible to add as support
  47041. arrives in GLib/GIO for them.
  47042. * platform/network/soup/SocketStreamHandle.h:
  47043. * platform/network/soup/SocketStreamHandleSoup.cpp: Add a GIO-based WebSocket implementation.
  47044. (WebCore::isActiveHandle): Added.
  47045. (WebCore::deactivateHandle): Added.
  47046. (WebCore::SocketStreamHandle::SocketStreamHandle): Filled out stub.
  47047. (WebCore::SocketStreamHandle::~SocketStreamHandle): Ditto.
  47048. (WebCore::SocketStreamHandle::connected): Added.
  47049. (WebCore::SocketStreamHandle::readBytes): Added.
  47050. (WebCore::SocketStreamHandle::writeReady): Added.
  47051. (WebCore::SocketStreamHandle::platformSend): Filled out stub.
  47052. (WebCore::SocketStreamHandle::platformClose): Filled out stub.
  47053. (WebCore::SocketStreamHandle::beginWaitingForSocketWritability): Added.
  47054. (WebCore::SocketStreamHandle::stopWaitingForSocketWritability):
  47055. (WebCore::connectedCallback): Added.
  47056. (WebCore::readReadyCallback): Added.
  47057. (WebCore::writeReadyCallback): Added.
  47058. 2010-09-07 Martin Robinson <mrobinson@igalia.com>
  47059. Reviewed by Dirk Schulze.
  47060. [Cairo] Actually use the antialias parameter of GraphicsContext::clipConvexPolygon
  47061. https://bugs.webkit.org/show_bug.cgi?id=45355
  47062. r63864 added an additional boolean parameter to GraphicsContext::clipConvexPolygon,
  47063. which determines whether or not to render the render the clip with anti-aliasing
  47064. or not. The Cairo implementation now uses that parameter to determine the argument
  47065. to pass to cairo_set_antialias(...) when clipping.
  47066. Test: This is tested by many tests in fast/borders.
  47067. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  47068. (WebCore::GraphicsContext::clipConvexPolygon): Actually use the boolean antialias parameter.
  47069. 2010-09-08 Gyuyoung Kim <gyuyoung.kim@samsung.com>
  47070. Reviewed by Kenneth Rohde Christiansen.
  47071. [EFL] Support to enable HTML5's Video based on gstreamer in WebKit-EFL
  47072. https://bugs.webkit.org/show_bug.cgi?id=44098
  47073. To support video of HTML5 based on gstreamer, add files regarding gstreamer to
  47074. CMakeListsEfl.txt.
  47075. * CMakeListsEfl.txt:
  47076. 2010-09-08 Jan E Hanssen <jhanssen@sencha.com>
  47077. Reviewed by Dirk Schulze.
  47078. [Qt] PathQt should use the QPainterPath functionality for calculations
  47079. https://bugs.webkit.org/show_bug.cgi?id=43837
  47080. Change PathQt to use the built-in functionality of QPainterPath for
  47081. calculating length(), pointAtLength() and normalAngleAtLength().
  47082. * platform/graphics/Path.cpp:
  47083. * platform/graphics/qt/PathQt.cpp:
  47084. (WebCore::Path::length):
  47085. (WebCore::Path::pointAtLength):
  47086. (WebCore::Path::normalAngleAtLength):
  47087. 2010-09-08 Gyuyoung Kim <gyuyoung.kim@samsung.com>
  47088. Reviewed by Dirk Schulze.
  47089. [WML] Remove create() function in WMLTaskElement because of build break.
  47090. https://bugs.webkit.org/show_bug.cgi?id=44954
  47091. Remove create() function in WMLTaskElement.cpp because of build breaks.
  47092. * wml/WMLTaskElement.cpp:
  47093. * wml/WMLTaskElement.h:
  47094. 2010-09-08 Gyuyoung Kim <gyuyoung.kim@samsung.com>
  47095. Reviewed by Dirk Schulze.
  47096. [WML] Add create functions to WML.
  47097. https://bugs.webkit.org/show_bug.cgi?id=44950
  47098. There are missing definitions of create function in WML area.
  47099. So, there are build breaks when enabling WML. The create functions and the construction
  47100. are added. In addition, a style error and duplicated adoptRef usage are fixed.
  47101. * wml/WMLDocument.h:
  47102. (WebCore::WMLDocument::create):
  47103. * wml/WMLFormControlElement.h:
  47104. * wml/WMLIntrinsicEvent.cpp:
  47105. (WebCore::WMLIntrinsicEvent::WMLIntrinsicEvent):
  47106. * wml/WMLIntrinsicEvent.h:
  47107. 2010-09-08 Nico Weber <thakis@chromium.org>
  47108. Reviewed by Kenneth Russell.
  47109. chromium/mac: Fix crash with compositor due to missing current NSGraphicsContext
  47110. https://bugs.webkit.org/show_bug.cgi?id=45354
  47111. * platform/graphics/chromium/ContentLayerChromium.cpp:
  47112. (WebCore::ContentLayerChromium::updateContents): Set a current local context.
  47113. 2010-09-08 Justin Schuh <jschuh@chromium.org>
  47114. Reviewed by Nikolas Zimmermann.
  47115. NULL deref when use target is reset, then set to display:none
  47116. https://bugs.webkit.org/show_bug.cgi?id=45345
  47117. Move the NULL check on shadowRoot earlier in SVGUseElement::recalcStyle
  47118. Test: svg/custom/use-display-none.svg
  47119. * svg/SVGUseElement.cpp:
  47120. (WebCore::SVGUseElement::recalcStyle):
  47121. 2010-08-30 Maciej Stachowiak <mjs@apple.com>
  47122. Reviewed by Darin Adler.
  47123. Handle MediaQueryExp memory management exclusively with smart pointers
  47124. https://bugs.webkit.org/show_bug.cgi?id=44874
  47125. Gace MediaQueryExp a create function, made the constructor private, and followed
  47126. the implications. The one tricky bit was using a non-copying sort to sort
  47127. the Vector<OwnPtr<MediaQueryExp> > in the MediaQuery constructor.
  47128. * ForwardingHeaders/wtf/NonCopyingSort.h: Added.
  47129. * css/CSSGrammar.y:
  47130. * css/CSSParser.cpp:
  47131. (WebCore::CSSParser::~CSSParser):
  47132. (WebCore::CSSParser::createFloatingMediaQueryExp):
  47133. (WebCore::CSSParser::createFloatingMediaQueryExpList):
  47134. (WebCore::CSSParser::sinkFloatingMediaQueryExpList):
  47135. (WebCore::CSSParser::createFloatingMediaQuery):
  47136. * css/CSSParser.h:
  47137. * css/MediaList.cpp:
  47138. * css/MediaQuery.cpp:
  47139. (WebCore::expressionCompare):
  47140. (WebCore::MediaQuery::MediaQuery):
  47141. (WebCore::MediaQuery::~MediaQuery):
  47142. * css/MediaQuery.h:
  47143. (WebCore::MediaQuery::expressions):
  47144. * css/MediaQueryEvaluator.cpp:
  47145. (WebCore::MediaQueryEvaluator::eval):
  47146. * css/MediaQueryExp.h:
  47147. (WebCore::MediaQueryExp::create):
  47148. 2010-09-08 Adam Barth <abarth@webkit.org>
  47149. Reviewed by Maciej Stachowiak.
  47150. Remove unused member variable from DecodedDocumentParser
  47151. https://bugs.webkit.org/show_bug.cgi?id=45379
  47152. This member variable isn't used because of the recent split of
  47153. TextDocumentParser and TextViewSourceParser.
  47154. * dom/DecodedDataDocumentParser.cpp:
  47155. (WebCore::DecodedDataDocumentParser::DecodedDataDocumentParser):
  47156. * dom/DecodedDataDocumentParser.h:
  47157. * dom/ScriptableDocumentParser.cpp:
  47158. (WebCore::ScriptableDocumentParser::ScriptableDocumentParser):
  47159. * dom/ScriptableDocumentParser.h:
  47160. 2010-09-08 Csaba Osztrogonác <ossy@webkit.org>
  47161. Reviewed by Andreas Kling.
  47162. Fix warning in rendering/RenderBlock.cpp.
  47163. https://bugs.webkit.org/show_bug.cgi?id=45373
  47164. * rendering/RenderBlock.cpp:
  47165. (WebCore::RenderBlock::hitTestColumns): Suggested parentheses added around && within ||
  47166. 2010-09-08 Mario Sanchez Prada <msanchez@igalia.com>
  47167. Reviewed by Martin Robinson.
  47168. [Gtk] A list item's number/bullet should not be a child of that list item
  47169. https://bugs.webkit.org/show_bug.cgi?id=45190
  47170. Ignore list markers and prefix them to the text for the item
  47171. * accessibility/gtk/AccessibilityObjectAtk.cpp:
  47172. (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
  47173. Make list markers ignore accessibility for the GTK port.
  47174. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  47175. (webkit_accessible_text_get_text): Prefix the text of a marker
  47176. along with the accessible text for its list item's AtkObject
  47177. 2010-09-08 Adam Barth <abarth@webkit.org>
  47178. Rubber-stamped by Eric Seidel.
  47179. Rename DocLoader to CachedResourceLoader because that's what it does.
  47180. * Android.mk:
  47181. * CMakeLists.txt:
  47182. * GNUmakefile.am:
  47183. * WebCore.gypi:
  47184. * WebCore.pro:
  47185. * WebCore.vcproj/WebCore.vcproj:
  47186. * WebCore.xcodeproj/project.pbxproj:
  47187. * css/CSSCursorImageValue.cpp:
  47188. (WebCore::CSSCursorImageValue::cachedImage):
  47189. * css/CSSCursorImageValue.h:
  47190. * css/CSSFontFaceSource.cpp:
  47191. (WebCore::CSSFontFaceSource::getFontData):
  47192. * css/CSSFontSelector.cpp:
  47193. (WebCore::CSSFontSelector::cachedResourceLoader):
  47194. (WebCore::CSSFontSelector::addFontFaceRule):
  47195. * css/CSSFontSelector.h:
  47196. * css/CSSImageValue.cpp:
  47197. (WebCore::CSSImageValue::cachedImage):
  47198. * css/CSSImageValue.h:
  47199. * css/CSSImportRule.cpp:
  47200. (WebCore::CSSImportRule::insertedIntoParent):
  47201. * css/CSSStyleSelector.cpp:
  47202. (WebCore::CSSStyleSelector::loadPendingImages):
  47203. * css/CSSStyleSheet.h:
  47204. * dom/Document.cpp:
  47205. (WebCore::Document::Document):
  47206. (WebCore::Document::~Document):
  47207. (WebCore::Document::implicitClose):
  47208. * dom/Document.h:
  47209. (WebCore::Document::cachedResourceLoader):
  47210. * dom/ProcessingInstruction.cpp:
  47211. (WebCore::ProcessingInstruction::checkStyleSheet):
  47212. * dom/ScriptElement.cpp:
  47213. (WebCore::ScriptElementData::requestScript):
  47214. * dom/XMLDocumentParser.cpp:
  47215. * dom/XMLDocumentParser.h:
  47216. * dom/XMLDocumentParserLibxml2.cpp:
  47217. (WebCore::matchFunc):
  47218. (WebCore::shouldAllowExternalLoad):
  47219. (WebCore::openFunc):
  47220. (WebCore::XMLDocumentParser::doWrite):
  47221. (WebCore::XMLDocumentParser::endElementNs):
  47222. (WebCore::XMLDocumentParser::initializeParserContext):
  47223. (WebCore::XMLDocumentParser::doEnd):
  47224. (WebCore::xmlDocPtrForString):
  47225. * dom/XMLDocumentParserQt.cpp:
  47226. (WebCore::XMLDocumentParser::parseEndElement):
  47227. * dom/XMLDocumentParserScope.cpp:
  47228. (WebCore::XMLDocumentParserScope::XMLDocumentParserScope):
  47229. (WebCore::XMLDocumentParserScope::~XMLDocumentParserScope):
  47230. * dom/XMLDocumentParserScope.h:
  47231. * editing/Editor.cpp:
  47232. (WebCore::Editor::paste):
  47233. * editing/mac/EditorMac.mm:
  47234. (WebCore::Editor::paste):
  47235. * html/HTMLLinkElement.cpp:
  47236. (WebCore::HTMLLinkElement::process):
  47237. * html/parser/CSSPreloadScanner.cpp:
  47238. (WebCore::CSSPreloadScanner::emitRule):
  47239. * html/parser/HTMLPreloadScanner.cpp:
  47240. (WebCore::HTMLNames::PreloadTask::preload):
  47241. * html/parser/HTMLScriptRunner.cpp:
  47242. (WebCore::HTMLScriptRunner::requestPendingScript):
  47243. * inspector/InspectorResource.cpp:
  47244. (WebCore::InspectorResource::cachedResource):
  47245. * loader/Cache.cpp:
  47246. (WebCore::Cache::requestResource):
  47247. (WebCore::Cache::requestUserCSSStyleSheet):
  47248. (WebCore::Cache::revalidateResource):
  47249. (WebCore::Cache::addCachedResourceLoader):
  47250. (WebCore::Cache::removeCachedResourceLoader):
  47251. * loader/Cache.h:
  47252. * loader/CachedCSSStyleSheet.h:
  47253. * loader/CachedFont.cpp:
  47254. (WebCore::CachedFont::load):
  47255. (WebCore::CachedFont::beginLoadIfNeeded):
  47256. * loader/CachedFont.h:
  47257. * loader/CachedImage.cpp:
  47258. (WebCore::CachedImage::load):
  47259. (WebCore::CachedImage::maximumDecodedImageSize):
  47260. * loader/CachedImage.h:
  47261. * loader/CachedResource.cpp:
  47262. (WebCore::CachedResource::CachedResource):
  47263. (WebCore::CachedResource::~CachedResource):
  47264. (WebCore::CachedResource::load):
  47265. * loader/CachedResource.h:
  47266. (WebCore::CachedResource::load):
  47267. (WebCore::CachedResource::setCachedResourceLoader):
  47268. * loader/CachedResourceLoader.cpp: Copied from WebCore/loader/DocLoader.cpp.
  47269. (WebCore::CachedResourceLoader::CachedResourceLoader):
  47270. (WebCore::CachedResourceLoader::~CachedResourceLoader):
  47271. (WebCore::CachedResourceLoader::frame):
  47272. (WebCore::CachedResourceLoader::checkForReload):
  47273. (WebCore::CachedResourceLoader::requestImage):
  47274. (WebCore::CachedResourceLoader::requestFont):
  47275. (WebCore::CachedResourceLoader::requestCSSStyleSheet):
  47276. (WebCore::CachedResourceLoader::requestUserCSSStyleSheet):
  47277. (WebCore::CachedResourceLoader::requestScript):
  47278. (WebCore::CachedResourceLoader::requestXSLStyleSheet):
  47279. (WebCore::CachedResourceLoader::requestLinkPrefetch):
  47280. (WebCore::CachedResourceLoader::canRequest):
  47281. (WebCore::CachedResourceLoader::requestResource):
  47282. (WebCore::CachedResourceLoader::printAccessDeniedMessage):
  47283. (WebCore::CachedResourceLoader::setAutoLoadImages):
  47284. (WebCore::CachedResourceLoader::cachePolicy):
  47285. (WebCore::CachedResourceLoader::removeCachedResource):
  47286. (WebCore::CachedResourceLoader::setLoadInProgress):
  47287. (WebCore::CachedResourceLoader::checkCacheObjectStatus):
  47288. (WebCore::CachedResourceLoader::incrementRequestCount):
  47289. (WebCore::CachedResourceLoader::decrementRequestCount):
  47290. (WebCore::CachedResourceLoader::requestCount):
  47291. (WebCore::CachedResourceLoader::preload):
  47292. (WebCore::CachedResourceLoader::checkForPendingPreloads):
  47293. (WebCore::CachedResourceLoader::requestPreload):
  47294. (WebCore::CachedResourceLoader::clearPreloads):
  47295. (WebCore::CachedResourceLoader::clearPendingPreloads):
  47296. (WebCore::CachedResourceLoader::printPreloadStats):
  47297. * loader/CachedResourceLoader.h: Copied from WebCore/loader/DocLoader.h.
  47298. * loader/CachedScript.h:
  47299. * loader/CachedXSLStyleSheet.h:
  47300. * loader/DocLoader.cpp: Removed.
  47301. * loader/DocLoader.h: Removed.
  47302. * loader/DocumentLoader.cpp:
  47303. (WebCore::DocumentLoader::isLoadingInAPISense):
  47304. (WebCore::DocumentLoader::subresource):
  47305. (WebCore::DocumentLoader::getSubresources):
  47306. * loader/FrameLoader.cpp:
  47307. (WebCore::numRequests):
  47308. (WebCore::FrameLoader::stopLoading):
  47309. (WebCore::FrameLoader::didBeginDocument):
  47310. * loader/HistoryController.cpp:
  47311. (WebCore::HistoryController::createItem):
  47312. * loader/ImageLoader.cpp:
  47313. (WebCore::ImageLoader::updateFromElement):
  47314. * loader/Request.cpp:
  47315. (WebCore::Request::Request):
  47316. * loader/Request.h:
  47317. (WebCore::Request::cachedResourceLoader):
  47318. * loader/loader.cpp:
  47319. (WebCore::Loader::load):
  47320. (WebCore::Loader::cancelRequests):
  47321. (WebCore::Loader::Host::servePendingRequests):
  47322. (WebCore::Loader::Host::didFinishLoading):
  47323. (WebCore::Loader::Host::didFail):
  47324. (WebCore::Loader::Host::didReceiveResponse):
  47325. (WebCore::Loader::Host::cancelPendingRequests):
  47326. (WebCore::Loader::Host::cancelRequests):
  47327. * loader/loader.h:
  47328. * page/DragController.cpp:
  47329. (WebCore::DragController::concludeEditDrag):
  47330. * page/Frame.cpp:
  47331. * page/FrameView.cpp:
  47332. (WebCore::FrameView::checkStopDelayingDeferredRepaints):
  47333. (WebCore::FrameView::updateDeferredRepaintDelay):
  47334. * page/Settings.cpp:
  47335. (WebCore::setLoadsImagesAutomaticallyInAllFrames):
  47336. * platform/android/TemporaryLinkStubs.cpp:
  47337. (WebCore::CheckCacheObjectStatus):
  47338. * platform/network/android/ResourceHandleAndroid.cpp:
  47339. (WebCore::ResourceHandle::start):
  47340. * platform/network/cf/ResourceHandleCFNet.cpp:
  47341. * platform/network/curl/ResourceHandleCurl.cpp:
  47342. * platform/network/mac/ResourceHandleMac.mm:
  47343. * platform/network/qt/ResourceHandleQt.cpp:
  47344. * platform/network/soup/ResourceHandleSoup.cpp:
  47345. * platform/network/win/ResourceHandleWin.cpp:
  47346. * svg/SVGFEImageElement.cpp:
  47347. (WebCore::SVGFEImageElement::requestImageResource):
  47348. * svg/SVGFontFaceUriElement.cpp:
  47349. (WebCore::SVGFontFaceUriElement::loadFont):
  47350. * workers/Worker.cpp:
  47351. * xml/XSLImportRule.cpp:
  47352. (WebCore::XSLImportRule::loadSheet):
  47353. * xml/XSLStyleSheet.h:
  47354. * xml/XSLStyleSheetLibxslt.cpp:
  47355. (WebCore::XSLStyleSheet::cachedResourceLoader):
  47356. (WebCore::XSLStyleSheet::parseString):
  47357. * xml/XSLStyleSheetQt.cpp:
  47358. (WebCore::XSLStyleSheet::cachedResourceLoader):
  47359. * xml/XSLTProcessor.cpp:
  47360. * xml/XSLTProcessorLibxslt.cpp:
  47361. (WebCore::docLoaderFunc):
  47362. (WebCore::setXSLTLoadCallBack):
  47363. (WebCore::xmlDocPtrFromNode):
  47364. (WebCore::XSLTProcessor::transformToString):
  47365. 2010-09-06 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
  47366. Reviewed by Eric Carlson.
  47367. Add mediaPlayerPlaybackStateChanged to MediaPlayerClient
  47368. https://bugs.webkit.org/show_bug.cgi?id=45263
  47369. The platform backend may change state, for example as a result
  47370. of an external plugin controlling the backend, so we need to
  47371. react to this situation by syncing up the WebCore state with the
  47372. platform backend.
  47373. We call playInternal()/pauseInternal() depending on the backend
  47374. state, to trigger the corresponding DOM events to match the state.
  47375. updatePlayState() is then refactored to take into account the
  47376. situation where the backend is already in the correct state but
  47377. WebCore is not, so that we update the playback progress timer
  47378. and set m_playing correctly.
  47379. updatePlayState() changes Should be covered by existing tests.
  47380. * html/HTMLMediaElement.cpp:
  47381. (WebCore::HTMLMediaElement::mediaPlayerPlaybackStateChanged):
  47382. (WebCore::HTMLMediaElement::updatePlayState):
  47383. * html/HTMLMediaElement.h:
  47384. * platform/graphics/MediaPlayer.cpp:
  47385. (WebCore::MediaPlayer::playbackStateChanged):
  47386. * platform/graphics/MediaPlayer.h:
  47387. (WebCore::MediaPlayerClient::mediaPlayerPlaybackStateChanged):
  47388. 2010-09-08 Adam Barth <abarth@webkit.org>
  47389. Reviewed by Eric Seidel.
  47390. TextDocument doesn't belong in WebCore/loader
  47391. https://bugs.webkit.org/show_bug.cgi?id=45346
  47392. TextDocument has nothing to do with loading. It turns out that it
  47393. should be in WebCore/html because TextDocument is actually a subclass
  47394. of HTMLDocument (in quirks mode, no less).
  47395. * Android.mk:
  47396. * CMakeLists.txt:
  47397. * GNUmakefile.am:
  47398. * WebCore.gypi:
  47399. * WebCore.pro:
  47400. * WebCore.vcproj/WebCore.vcproj:
  47401. * WebCore.xcodeproj/project.pbxproj:
  47402. * html/TextDocument.cpp: Renamed from WebCore/loader/TextDocument.cpp.
  47403. (WebCore::TextDocument::TextDocument):
  47404. (WebCore::TextDocument::createParser):
  47405. * html/TextDocument.h: Renamed from WebCore/loader/TextDocument.h.
  47406. (WebCore::TextDocument::create):
  47407. 2010-09-08 Adam Barth <abarth@webkit.org>
  47408. Reviewed by Eric Seidel.
  47409. Create TextViewSourceParser
  47410. https://bugs.webkit.org/show_bug.cgi?id=45343
  47411. Rather than have the view source document set a flag on
  47412. HTMLViewSourceParser to indicate whether we're parsing a text document,
  47413. this patch creates a TextViewSourceParser for parsing text documents in
  47414. view-source mode. Like the TextDocumentParser, the
  47415. TextViewSourceParser implements this functionality by subclassing its
  47416. HTML counterpart.
  47417. * Android.mk:
  47418. * CMakeLists.txt:
  47419. * GNUmakefile.am:
  47420. * WebCore.gypi:
  47421. * WebCore.pro:
  47422. * WebCore.vcproj/WebCore.vcproj:
  47423. * WebCore.xcodeproj/project.pbxproj:
  47424. * html/HTMLViewSourceDocument.cpp:
  47425. (WebCore::HTMLViewSourceDocument::createParser):
  47426. * html/parser/HTMLViewSourceParser.cpp:
  47427. * html/parser/HTMLViewSourceParser.h:
  47428. (WebCore::HTMLViewSourceParser::tokenizer):
  47429. * html/parser/TextViewSourceParser.cpp: Added.
  47430. (WebCore::TextViewSourceParser::TextViewSourceParser):
  47431. (WebCore::TextViewSourceParser::~TextViewSourceParser):
  47432. * html/parser/TextViewSourceParser.h: Added.
  47433. (WebCore::TextViewSourceParser::create):
  47434. 2010-09-08 Adam Barth <abarth@webkit.org>
  47435. Reviewed by Darin Adler.
  47436. Move HTMLInputStream to WebCore/html/parser
  47437. https://bugs.webkit.org/show_bug.cgi?id=45339
  47438. I forgot to move this file before.
  47439. * GNUmakefile.am:
  47440. * WebCore.gypi:
  47441. * WebCore.vcproj/WebCore.vcproj:
  47442. * WebCore.xcodeproj/project.pbxproj:
  47443. * html/parser/HTMLInputStream.h: Renamed from WebCore/html/HTMLInputStream.h.
  47444. (WebCore::HTMLInputStream::HTMLInputStream):
  47445. (WebCore::HTMLInputStream::appendToEnd):
  47446. (WebCore::HTMLInputStream::insertAtCurrentInsertionPoint):
  47447. (WebCore::HTMLInputStream::hasInsertionPoint):
  47448. (WebCore::HTMLInputStream::markEndOfFile):
  47449. (WebCore::HTMLInputStream::haveSeenEndOfFile):
  47450. (WebCore::HTMLInputStream::current):
  47451. (WebCore::HTMLInputStream::splitInto):
  47452. (WebCore::HTMLInputStream::mergeFrom):
  47453. (WebCore::InsertionPointRecord::InsertionPointRecord):
  47454. (WebCore::InsertionPointRecord::~InsertionPointRecord):
  47455. 2010-09-08 Adam Barth <abarth@webkit.org>
  47456. Reviewed by Eric Seidel.
  47457. TextDocument should come in from the cold
  47458. https://bugs.webkit.org/show_bug.cgi?id=45334
  47459. Previously, TextDocument reinvented the wheel to parse text. This
  47460. patch replaces TextDocument's hand-rolled parser with a parser built on
  47461. the HTML parser infrustructure, which gives us that stuff for free. I
  47462. also disentangled TextDocument from HTMLViewSourceDocument.
  47463. In a future patch, I'll move TextDocument out of the "loader" directory.
  47464. * Android.mk:
  47465. * CMakeLists.txt:
  47466. * GNUmakefile.am:
  47467. * WebCore.gypi:
  47468. * WebCore.pro:
  47469. * WebCore.vcproj/WebCore.vcproj:
  47470. * WebCore.xcodeproj/project.pbxproj:
  47471. * html/HTMLViewSourceDocument.cpp:
  47472. (WebCore::HTMLViewSourceDocument::createParser):
  47473. * html/HTMLViewSourceDocument.h:
  47474. * html/parser/HTMLTreeBuilder.cpp:
  47475. (WebCore::HTMLTreeBuilder::constructTreeFromToken):
  47476. (WebCore::HTMLTreeBuilder::constructTreeFromAtomicToken):
  47477. * html/parser/HTMLTreeBuilder.h:
  47478. * html/parser/HTMLViewSourceParser.cpp:
  47479. (WebCore::HTMLViewSourceParser::forcePlaintext):
  47480. * html/parser/HTMLViewSourceParser.h:
  47481. * html/parser/TextDocumentParser.cpp: Added.
  47482. (WebCore::TextDocumentParser::TextDocumentParser):
  47483. (WebCore::TextDocumentParser::~TextDocumentParser):
  47484. (WebCore::TextDocumentParser::insertFakePreElement):
  47485. * html/parser/TextDocumentParser.h: Added.
  47486. (WebCore::TextDocumentParser::create):
  47487. * loader/TextDocument.cpp:
  47488. * loader/TextDocument.h:
  47489. 2010-09-06 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
  47490. Reviewed by Andreas Kling.
  47491. Implement MediaPlayerPrivate::platformMedia() for the Qt port
  47492. https://bugs.webkit.org/show_bug.cgi?id=45264
  47493. * platform/graphics/MediaPlayer.h:
  47494. * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
  47495. (WebCore::MediaPlayerPrivate::platformMedia):
  47496. * platform/graphics/qt/MediaPlayerPrivateQt.h:
  47497. 2010-09-08 Zoltan Herczeg <zherczeg@webkit.org>
  47498. Reviewed by Dirk Schulze.
  47499. An individual renderer should be assigned to each SVGFE*Element class
  47500. https://bugs.webkit.org/show_bug.cgi?id=43954
  47501. RenderSVGResourceFilterPrimitive renderer is added to
  47502. the project, and assigned to each object, which class is
  47503. derived from SVGFilterPrimitiveStandardAttributes. The patch
  47504. mainly contains build system changes, and it fixes one layout
  47505. test in svg/dynamic-updates.
  47506. * Android.mk:
  47507. * CMakeLists.txt:
  47508. * GNUmakefile.am:
  47509. * WebCore.gypi:
  47510. * WebCore.pro:
  47511. * WebCore.vcproj/WebCore.vcproj:
  47512. * WebCore.xcodeproj/project.pbxproj:
  47513. * rendering/RenderObject.h:
  47514. (WebCore::RenderObject::isSVGResourceFilterPrimitive):
  47515. * rendering/RenderSVGResourceFilterPrimitive.cpp: Added.
  47516. (WebCore::RenderSVGResourceFilterPrimitive::RenderSVGResourceFilterPrimitive):
  47517. * rendering/RenderSVGResourceFilterPrimitive.h: Added.
  47518. (WebCore::RenderSVGResourceFilterPrimitive::isSVGResourceFilterPrimitive):
  47519. * rendering/SVGRenderTreeAsText.cpp:
  47520. (WebCore::writeSVGContainer):
  47521. * svg/SVGFEDiffuseLightingElement.cpp:
  47522. (WebCore::SVGFEDiffuseLightingElement::svgAttributeChanged):
  47523. * svg/SVGFELightElement.cpp:
  47524. (WebCore::SVGFELightElement::svgAttributeChanged):
  47525. (WebCore::SVGFELightElement::childrenChanged):
  47526. * svg/SVGFEOffsetElement.cpp:
  47527. (WebCore::SVGFEOffsetElement::svgAttributeChanged):
  47528. * svg/SVGFilterElement.h:
  47529. * svg/SVGFilterPrimitiveStandardAttributes.cpp:
  47530. (WebCore::SVGFilterPrimitiveStandardAttributes::svgAttributeChanged):
  47531. (WebCore::SVGFilterPrimitiveStandardAttributes::childrenChanged):
  47532. (WebCore::SVGFilterPrimitiveStandardAttributes::createRenderer):
  47533. * svg/SVGFilterPrimitiveStandardAttributes.h:
  47534. (WebCore::SVGFilterPrimitiveStandardAttributes::invalidate):
  47535. 2010-09-07 Sam Weinig <sam@webkit.org>
  47536. Reviewed by Dan Bernstein.
  47537. DatasetDOMStringMap does not have the right memory model
  47538. https://bugs.webkit.org/show_bug.cgi?id=45358
  47539. Test: fast/dom/dataset-gc.html
  47540. * bindings/js/JSElementCustom.cpp:
  47541. (WebCore::JSElement::markChildren):
  47542. Mark the dataset if it exists.
  47543. * dom/Element.cpp:
  47544. (WebCore::Element::optionalDataset):
  47545. * dom/Element.h:
  47546. Expose a way to get the dataset or null (depending on if anyone thing
  47547. has forced its creation yet).
  47548. 2010-09-07 Jan E Hanssen <jhanssen@sencha.com>
  47549. Reviewed by Andreas Kling.
  47550. [Qt] Add a separate Path::closeCanvasSubpath() function for canvas paths
  47551. https://bugs.webkit.org/show_bug.cgi?id=45331
  47552. This is needed due to an adverse effect of the fix in 44061 that causes
  47553. certain paths not to be closed. This is not important for canvas paths
  47554. but it is for SVG paths, so splitting up the code in a generic (SVG)
  47555. case and one specialized for canvas.
  47556. Test: svg/dom/path-totalLength.html
  47557. * html/canvas/CanvasRenderingContext2D.cpp:
  47558. (WebCore::CanvasRenderingContext2D::closePath):
  47559. * platform/graphics/Path.h:
  47560. (WebCore::Path::closeCanvasSubpath):
  47561. * platform/graphics/qt/PathQt.cpp:
  47562. (WebCore::Path::closeSubpath):
  47563. (WebCore::Path::closeCanvasSubpath):
  47564. 2010-09-07 Simon Fraser <simon.fraser@apple.com>
  47565. Reviewed by Chris Marrin.
  47566. Transform animations always run in software now
  47567. https://bugs.webkit.org/show_bug.cgi?id=45341
  47568. After r66339 we always fell into software animation, because we
  47569. failed to detect transform or opacity properties in the keyframes,
  47570. so would send an empty list of values to the GraphicsLayer.
  47571. Fixed by using CSSProperty values, rather than GraphicsLayer
  47572. values, when detecting the presence of properties in the keyframes.
  47573. Test: manual-tests/transition-accelerated.html
  47574. * rendering/RenderLayerBacking.cpp:
  47575. (WebCore::RenderLayerBacking::startAnimation):
  47576. 2010-09-07 Chris Rogers <crogers@google.com>
  47577. Reviewed by Kenneth Russell.
  47578. audio engine: add FFTFrame files
  47579. https://bugs.webkit.org/show_bug.cgi?id=34827
  47580. No new tests since audio API is not yet implemented.
  47581. * platform/audio/FFTFrame.cpp: Added.
  47582. (WebCore::FFTFrame::doPaddedFFT):
  47583. (WebCore::FFTFrame::createInterpolatedFrame):
  47584. (WebCore::FFTFrame::interpolateFrequencyComponents):
  47585. (WebCore::FFTFrame::extractAverageGroupDelay):
  47586. (WebCore::FFTFrame::addConstantGroupDelay):
  47587. (WebCore::FFTFrame::print):
  47588. * platform/audio/FFTFrame.h: Added.
  47589. (WebCore::FFTFrame::fftSize):
  47590. (WebCore::FFTFrame::log2FFTSize):
  47591. (WebCore::FFTFrame::dspSplitComplex):
  47592. * platform/audio/mac/FFTFrameMac.cpp: Added.
  47593. (WebCore::FFTFrame::FFTFrame):
  47594. (WebCore::FFTFrame::~FFTFrame):
  47595. (WebCore::FFTFrame::multiply):
  47596. (WebCore::FFTFrame::doFFT):
  47597. (WebCore::FFTFrame::doInverseFFT):
  47598. (WebCore::FFTFrame::fftSetupForSize):
  47599. (WebCore::FFTFrame::cleanup):
  47600. (WebCore::FFTFrame::realData):
  47601. (WebCore::FFTFrame::imagData):
  47602. 2010-09-07 Brent Fulgham <bfulgham@webkit.org>
  47603. Build fix, no review.
  47604. Provide stubs to allow WebKit.dll to build
  47605. for the WinCairo port.
  47606. * platform/network/curl/ResourceRequest.h:
  47607. (WebCore::ResourceRequest::ResourceRequest):
  47608. * platform/network/curl/ResourceResponse.h:
  47609. (WebCore::ResourceResponse::cfURLResponse):
  47610. 2010-09-07 Chris Rogers <crogers@google.com>
  47611. Reviewed by Kenneth Russell.
  47612. Add AudioArray.h
  47613. https://bugs.webkit.org/show_bug.cgi?id=45204
  47614. No new tests since audio API is not yet implemented.
  47615. * platform/audio/AudioArray.h: Added.
  47616. (WebCore::AudioArray::AudioArray):
  47617. (WebCore::AudioArray::zero):
  47618. (WebCore::AudioArray::zeroRange):
  47619. (WebCore::AudioArray::copyToRange):
  47620. 2010-09-07 Mihai Parparita <mihaip@chromium.org>
  47621. Reviewed by Oliver Hunt.
  47622. pushState and replaceState do not clone RegExp objects correctly
  47623. https://bugs.webkit.org/show_bug.cgi?id=44718
  47624. Add RegExp support to the JSC implementation of SerializedScriptValue
  47625. (it stores the pattern and flags read from a RegExpObject, and creates
  47626. a new one on deserialization).
  47627. Tests: fast/loader/stateobjects/pushstate-object-types.html
  47628. * ForwardingHeaders/runtime/RegExp.h: Added.
  47629. * ForwardingHeaders/runtime/RegExpObject.h: Added.
  47630. * bindings/js/SerializedScriptValue.cpp:
  47631. (WebCore::CloneSerializer::dumpIfTerminal):
  47632. (WebCore::CloneDeserializer::readTerminal):
  47633. 2010-09-07 James Robinson <jamesr@chromium.org>
  47634. Reviewed by Kenneth Russell.
  47635. Fix compile errors in DrawingBuffer if USE(ACCELERATED_COMPOSITING) is not set
  47636. https://bugs.webkit.org/show_bug.cgi?id=45324
  47637. Adds appropriate #if guards around code that has to deal directly with the compositor.
  47638. DrawingBuffer can still be used without the compositor as an off-screen rendering
  47639. region.
  47640. To test, compile without USE(ACCELERATED_COMPOSITING).
  47641. * platform/graphics/chromium/DrawingBufferChromium.cpp:
  47642. (WebCore::DrawingBuffer::~DrawingBuffer):
  47643. (WebCore::DrawingBuffer::reset):
  47644. * platform/graphics/gpu/DrawingBuffer.h:
  47645. 2010-09-03 Joseph Pecoraro <joepeck@webkit.org>
  47646. Reviewed by Darin Adler.
  47647. Provide a way to trigger a <select multiple> onchange event on changes
  47648. https://bugs.webkit.org/show_bug.cgi?id=45192
  47649. Test: LayoutTests/platform/mac/fast/objc/dom-html-select-activate.html
  47650. This provides a way for a WebKit client using the Obj-C DOM bindings to
  47651. trigger the "change" on a listbox select (<select multiple> or <select>
  47652. with size > 1). This is because when a select is rendered as a listbox
  47653. "change" events are triggered by mouse down events.
  47654. This adds -[DOMHTMLSelectElement _activateItemAtIndex:allowMultipleSelection:]
  47655. to allow for handling multiple selections if the select element is a
  47656. multi-select.
  47657. * bindings/objc/DOMHTML.mm:
  47658. (-[DOMHTMLSelectElement _activateItemAtIndex:allowMultipleSelection:]):
  47659. * bindings/objc/DOMPrivate.h: unified the Category name. Was "FormsAutocomplete" now all are "FormAutocomplete".
  47660. * dom/SelectElement.h:
  47661. * html/HTMLSelectElement.cpp:
  47662. (WebCore::HTMLSelectElement::setSelectedIndexByUser): listboxs need to be treated specially to fire their "change" event.
  47663. * html/HTMLSelectElement.h:
  47664. * wml/WMLSelectElement.cpp:
  47665. (WebCore::WMLSelectElement::setSelectedIndexByUser):
  47666. 2010-09-07 Simon Fraser <simon.fraser@apple.com>
  47667. Reviewed by Darin Adler.
  47668. Minor WKCACFLayerRenderer cleanup
  47669. https://bugs.webkit.org/show_bug.cgi?id=45201
  47670. Call initD3DGeometry() from createRenderer, rather than duplicating the code.
  47671. No behavior changes.
  47672. * platform/graphics/win/WKCACFLayerRenderer.cpp:
  47673. (WebCore::WKCACFLayerRenderer::createRenderer):
  47674. 2010-09-07 Vangelis Kokkevis <vangelis@chromium.org>
  47675. Reviewed by Darin Fisher.
  47676. [chromium] Reset the owner of PlatformLayer's once the GraphicsLayer they are associated with
  47677. gets destroyed.
  47678. https://bugs.webkit.org/show_bug.cgi?id=45329
  47679. Test: Fixes UI test failures downstream for all the Media tests when run on the buildbots (machines without GPUs).
  47680. * platform/graphics/chromium/GraphicsLayerChromium.cpp:
  47681. (WebCore::GraphicsLayerChromium::~GraphicsLayerChromium):
  47682. 2010-09-07 Anders Carlsson <andersca@apple.com>
  47683. Reviewed by Darin Adler.
  47684. <rdar://problem/8381749> -Wcast-align warning emitted when building with clang
  47685. Remove the -Wcast-align-warning since it isn't really useful, and clang is more aggressive about warning than gcc.
  47686. * Configurations/Base.xcconfig:
  47687. 2010-09-07 Abhishek Arya <inferno@chromium.org>
  47688. Reviewed by Darin Adler.
  47689. Remove redundant bounds check in originalText(). Add bounds check
  47690. to previousCharacter(). No need of start() > 0 check since m_start
  47691. is unsigned and we already do start() null check inside function.
  47692. https://bugs.webkit.org/show_bug.cgi?id=45303
  47693. Test: fast/text/one-letter-transform-crash.html
  47694. * rendering/RenderTextFragment.cpp:
  47695. (WebCore::RenderTextFragment::originalText):
  47696. (WebCore::RenderTextFragment::previousCharacter):
  47697. 2010-09-07 Kenneth Russell <kbr@google.com>
  47698. Reviewed by Dimitri Glazkov.
  47699. Regression in JPEG texture uploads on Mac OS X
  47700. https://bugs.webkit.org/show_bug.cgi?id=45316
  47701. Fixed regression introduced in
  47702. https://bugs.webkit.org/show_bug.cgi?id=44566 . Added regression
  47703. test covering this case to gl-teximage.html in Khronos repository
  47704. and synced test with WebKit's version.
  47705. * platform/graphics/cg/GraphicsContext3DCG.cpp:
  47706. (WebCore::GraphicsContext3D::getImageData):
  47707. 2010-09-07 Martin Robinson <mrobinson@igalia.com>
  47708. Add rendering/ColumnInfo.h to the sources list.
  47709. * GNUmakefile.am:
  47710. 2010-09-07 David Hyatt <hyatt@apple.com>
  47711. Reviewed by Beth Dakin.
  47712. https://bugs.webkit.org/show_bug.cgi?id=45317, encapsulate multi-column rectangle information.
  47713. * WebCore.xcodeproj/project.pbxproj:
  47714. * rendering/ColumnInfo.h: Added.
  47715. (WebCore::ColumnInfo::ColumnInfo):
  47716. (WebCore::ColumnInfo::desiredColumnWidth):
  47717. (WebCore::ColumnInfo::setDesiredColumnWidth):
  47718. (WebCore::ColumnInfo::desiredColumnCount):
  47719. (WebCore::ColumnInfo::setDesiredColumnCount):
  47720. (WebCore::ColumnInfo::columnCount):
  47721. (WebCore::ColumnInfo::columnRectAt):
  47722. (WebCore::ColumnInfo::clearColumns):
  47723. (WebCore::ColumnInfo::addColumnRect):
  47724. * rendering/RenderBlock.cpp:
  47725. (WebCore::RenderBlock::paintColumnRules):
  47726. (WebCore::RenderBlock::paintColumnContents):
  47727. (WebCore::RenderBlock::lowestPosition):
  47728. (WebCore::RenderBlock::rightmostPosition):
  47729. (WebCore::RenderBlock::leftmostPosition):
  47730. (WebCore::RenderBlock::hitTestColumns):
  47731. (WebCore::RenderBlock::setDesiredColumnCountAndWidth):
  47732. (WebCore::RenderBlock::desiredColumnWidth):
  47733. (WebCore::RenderBlock::desiredColumnCount):
  47734. (WebCore::RenderBlock::columnInfo):
  47735. (WebCore::RenderBlock::layoutColumns):
  47736. (WebCore::RenderBlock::adjustPointToColumnContents):
  47737. (WebCore::RenderBlock::adjustRectForColumns):
  47738. (WebCore::RenderBlock::adjustForColumns):
  47739. * rendering/RenderBlock.h:
  47740. * rendering/RenderLayer.cpp:
  47741. (WebCore::RenderLayer::paintChildLayerIntoColumns):
  47742. (WebCore::RenderLayer::hitTestChildLayerColumns):
  47743. 2010-09-07 Dan Bernstein <mitz@apple.com>
  47744. Reviewed by Dave Hyatt.
  47745. <rdar://problem/7794761> Floats inside of multicol fail to hit test
  47746. https://bugs.webkit.org/show_bug.cgi?id=44730
  47747. Test: fast/multicol/hit-test-float.html
  47748. Factored float hit-testing out of nodeAtPoint so that hitTestColumns could
  47749. call it with column-adjusted coordinates.
  47750. * rendering/RenderBlock.cpp:
  47751. (WebCore::RenderBlock::nodeAtPoint):
  47752. (WebCore::RenderBlock::hitTestFloats):
  47753. (WebCore::RenderBlock::hitTestColumns):
  47754. * rendering/RenderBlock.h:
  47755. 2010-09-07 François Sausset <sausset@gmail.com>
  47756. Reviewed by Beth Dakin.
  47757. <math> element should be centered when display attribute set to block.
  47758. https://bugs.webkit.org/show_bug.cgi?id=44206
  47759. Test: mathml/presentation/attributes.xhtml
  47760. * css/mathml.css:
  47761. (math[display="block"]):
  47762. 2010-09-07 Eric Carlson <eric.carlson@apple.com>
  47763. Reviewed by Darin Adler.
  47764. Media elements should derive from ActiveDOMObjects
  47765. https://bugs.webkit.org/show_bug.cgi?id=45306
  47766. <rdar://problem/7929062>
  47767. * html/HTMLMediaElement.cpp:
  47768. (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize ActiveDOMObject
  47769. (WebCore::HTMLMediaElement::stop): Call suspend, we want to do the same thing in both cases.
  47770. (WebCore::HTMLMediaElement::suspend): Rename from documentWillBecomeInactive.
  47771. (WebCore::HTMLMediaElement::resume): Rename from documentDidBecomeActive.
  47772. (WebCore::HTMLMediaElement::hasPendingActivity): Return true if the event queue is not empty
  47773. so the element can't be collected before they are sent.
  47774. * html/HTMLMediaElement.h:
  47775. (WebCore::HTMLMediaElement::canSuspend):
  47776. 2010-09-07 Dimitri Glazkov <dglazkov@chromium.org>
  47777. Unreviewed, rolling out r66886.
  47778. http://trac.webkit.org/changeset/66886
  47779. https://bugs.webkit.org/show_bug.cgi?id=45112
  47780. Made
  47781. * platform/chromium/GeolocationServiceChromium.cpp:
  47782. * platform/chromium/GeolocationServiceChromium.h:
  47783. 2010-09-07 Martin Robinson <mrobinson@igalia.com>
  47784. Small build fix. Remove libWebCoreJS from CLEAN_FILES, as it
  47785. is no longer built.
  47786. * GNUmakefile.am: Remove reference to libWebCoreJS.
  47787. 2010-09-07 Martin Robinson <mrobinson@igalia.com>
  47788. Reviewed by Xan Lopez.
  47789. [GTK] [REGRESSION] r66848 caused a crash in testwebview
  47790. https://bugs.webkit.org/show_bug.cgi?id=45298
  47791. No new tests as this fixes a test failure.
  47792. * platform/gtk/ScrollViewGtk.cpp:
  47793. (WebCore::ScrollView::setGtkAdjustments): Don't actually attach the
  47794. scrollbar adjustments unless this is a main frame ScrollView. If we do
  47795. Scrollbars will be cast incorrectly to MainFrameScrollbarGtk, causing
  47796. a segfault.
  47797. 2010-09-07 Kristian Monsen <kristianm@google.com>
  47798. Reviewed by Steve Block.
  47799. Compile fix for Android.
  47800. https://bugs.webkit.org/show_bug.cgi?id=45292
  47801. Explicitly add needed header for
  47802. STRING_TO_V8PARAMETER_EXCEPTION_BLOCK as they do not get
  47803. included through other headers on Android.
  47804. No new tests, just a compile fix.
  47805. * bindings/scripts/CodeGeneratorV8.pm:
  47806. 2010-09-07 Martin Robinson <mrobinson@igalia.com>
  47807. Reviewed by Xan Lopez.
  47808. [GTK] Fix some feature guards
  47809. https://bugs.webkit.org/show_bug.cgi?id=45302
  47810. No new tests as this is just a build change.
  47811. * platform/graphics/gstreamer/DataSourceGStreamer.cpp: Guard with #if ENABLE(VIDEO)
  47812. * platform/graphics/gstreamer/DataSourceGStreamer.h: Ditto.
  47813. * platform/graphics/gstreamer/GOwnPtrGStreamer.cpp: Ditto.
  47814. * platform/graphics/gstreamer/GOwnPtrGStreamer.h: Ditto.
  47815. * platform/graphics/gstreamer/GStreamerGWorld.cpp: Ditto.
  47816. * platform/graphics/gstreamer/GStreamerGWorld.h: Ditto.
  47817. * platform/graphics/gstreamer/ImageGStreamer.h: Ditto.
  47818. * platform/graphics/gstreamer/ImageGStreamerCG.mm: Ditto.
  47819. * platform/graphics/gstreamer/ImageGStreamerCairo.cpp: Ditto.
  47820. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: Ditto.
  47821. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: Ditto.
  47822. * platform/graphics/gstreamer/PlatformVideoWindow.h: Ditto.
  47823. * platform/graphics/gstreamer/PlatformVideoWindowEfl.cpp: Ditto.
  47824. * platform/graphics/gstreamer/PlatformVideoWindowGtk.cpp: Ditto.
  47825. * platform/graphics/gstreamer/VideoSinkGStreamer.cpp: Ditto.
  47826. * platform/graphics/gstreamer/VideoSinkGStreamer.h: Ditto.
  47827. * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp: Ditto.
  47828. * platform/graphics/gstreamer/WebKitWebSourceGStreamer.h: Ditto.
  47829. * platform/gtk/GeolocationServiceGtk.cpp: Guard with ENABLE(GEOLOCATION)
  47830. * platform/gtk/GeolocationServiceGtk.h: Ditto.
  47831. 2010-09-07 Jonathan Dixon <joth@chromium.org>
  47832. Reviewed by Jeremy Orlow.
  47833. Access to out-of-scope WebGeolocationServiceBridgeImpl
  47834. https://bugs.webkit.org/show_bug.cgi?id=45112
  47835. Add missing virtual destructor to the abstract base class.
  47836. * platform/chromium/GeolocationServiceChromium.cpp:
  47837. (WebCore::GeolocationServiceBridge::~GeolocationServiceBridge):
  47838. * platform/chromium/GeolocationServiceChromium.h:
  47839. 2010-09-07 Martin Robinson <mrobinson@igalia.com>
  47840. Reviewed by Xan Lopez.
  47841. [GTK] [REGRESSION] r66848 caused a crash in testwebview
  47842. https://bugs.webkit.org/show_bug.cgi?id=45298
  47843. No new tests as this fixes a test failure.
  47844. * platform/gtk/ScrollViewGtk.cpp:
  47845. (WebCore::ScrollView::setGtkAdjustments): Don't actually attach the
  47846. scrollbar adjustments unless this is a main frame ScrollView. If we do
  47847. Scrollbars will be cast incorrectly to MainFrameScrollbarGtk, causing
  47848. a segfault.
  47849. 2010-09-07 Adam Langley <agl@chromium.org>
  47850. Reviewed by Tony Chang.
  47851. [chromium] Fix complex text word spacing on Linux.
  47852. I broke complex text word spacing with r66689. I misnamed a
  47853. variable in the original code |glyphIndex| when it was
  47854. actually indexing code points. That meant that I compared it
  47855. against the wrong limit when working around Harfbuzz issues
  47856. and neatly disabled word spacing.
  47857. https://bugs.webkit.org/show_bug.cgi?id=45191
  47858. Test: fast/text/atsui-spacing-features.html
  47859. * platform/graphics/chromium/FontLinux.cpp:
  47860. (WebCore::TextRunWalker::setGlyphXPositions):
  47861. 2010-09-07 Satish Sampath <satish@chromium.org>
  47862. Reviewed by Steve Block.
  47863. Fix speech button's hit test logic for RTL rendering.
  47864. https://bugs.webkit.org/show_bug.cgi?id=45288
  47865. * rendering/RenderTextControlSingleLine.cpp:
  47866. (WebCore::RenderTextControlSingleLine::forwardEvent):
  47867. 2010-09-07 Satish Sampath <satish@chromium.org>
  47868. Reviewed by Jeremy Orlow.
  47869. Ignore programmatic clicks on speech input button for security reasons.
  47870. https://bugs.webkit.org/show_bug.cgi?id=45181
  47871. Test: fast/speech/speech-button-ignore-generated-events.html
  47872. * rendering/TextControlInnerElements.cpp:
  47873. (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
  47874. 2010-09-07 Kent Hansen <kent.hansen@nokia.com>
  47875. Reviewed by Andreas Kling.
  47876. [Qt] tst_QWebFrame::connectAndDisconnect() fails on WebKit trunk because __qt_sender__ is never set
  47877. https://bugs.webkit.org/show_bug.cgi?id=44697
  47878. When the signal handler is a JS function, __qt_sender__ is stuffed into a temporary
  47879. object that's pushed onto the function's scope before the function is invoked, and
  47880. popped again afterwards.
  47881. We were pushing this new scope object _after_ calling JSFunction::getCallData(),
  47882. and relying on JSC::call() to use the fresh scope chain from the function object.
  47883. However, this is no longer the case; JSC::call() uses the scope chain passed in
  47884. the CallData argument. Hence, we need to set up the scope before the function's
  47885. CallData is queried.
  47886. * bridge/qt/qt_runtime.cpp:
  47887. (JSC::Bindings::QtConnectionObject::execute):
  47888. 2010-09-07 Kwang Yul Seo <skyul@company100.net>
  47889. Reviewed by Kent Tamura.
  47890. Add ENABLE(INSPECTOR) guard in InspectorController::inspectorControllerForNode
  47891. https://bugs.webkit.org/show_bug.cgi?id=45272
  47892. Build fix.
  47893. * inspector/InspectorController.h:
  47894. (WebCore::InspectorController::inspectorControllerForNode):
  47895. 2010-09-07 Joerg Bornemann <joerg.bornemann@nokia.com>
  47896. Reviewed by Ariya Hidayat.
  47897. Fix QtWebKit linker error on Windows CE 6.
  47898. https://bugs.webkit.org/show_bug.cgi?id=43442
  47899. Doesn't affect any tests.
  47900. * WebCore.pro:
  47901. 2010-09-07 James Kozianski <koz@chromium.org>
  47902. Reviewed by Kent Tamura.
  47903. Crash rendering <meter/> with percent padding
  47904. https://bugs.webkit.org/show_bug.cgi?id=45081
  47905. Avoids a crash caused by RenderMeter checking its own dimensions to
  47906. determine whether it needs layout. The crash is avoided by removing
  47907. the check and always calling setNeedsLayout(true).
  47908. Test: fast/dom/HTMLMeterElement/meter-percent-size.html
  47909. * rendering/RenderIndicator.cpp:
  47910. (WebCore::RenderIndicator::updateFromElement):
  47911. * rendering/RenderIndicator.h:
  47912. 2010-09-06 Adam Barth <abarth@webkit.org>
  47913. Reviewed by Sam Weinig.
  47914. OOB read with svg polyline
  47915. https://bugs.webkit.org/show_bug.cgi?id=45279
  47916. In principle, attributeChanged can do anything. If we supported more
  47917. DOM mutation events, it could even run JavaScript. That means we need
  47918. to be prepared for the attribute map to change when running
  47919. attributeChanged. This patch makes this loop resilient to the
  47920. attribute map changing by storing the list of changed attributes on the
  47921. stack.
  47922. Test: fast/parser/changing-attrbutes-crash.html
  47923. * dom/Element.cpp:
  47924. (WebCore::Element::setAttributeMap):
  47925. 2010-09-06 Oliver Hunt <oliver@apple.com>
  47926. Windows build fix
  47927. * bindings/js/SerializedScriptValue.cpp:
  47928. (WebCore::CloneSerializer::write):
  47929. 2010-09-06 Oliver Hunt <oliver@apple.com>
  47930. Windows build fix
  47931. * bindings/js/SerializedScriptValue.cpp:
  47932. (WebCore::CloneSerializer::write):
  47933. 2010-09-05 Oliver Hunt <oliver@apple.com>
  47934. Reviewed by Sam Weinig.
  47935. SerializedScriptValue needs to use a flat storage mechanism
  47936. https://bugs.webkit.org/show_bug.cgi?id=45244
  47937. Rewrite the old tree to tree serialization logic to use
  47938. flat storage. Unfortunately this basically required a
  47939. complete rewrite.
  47940. * bindings/js/SerializedScriptValue.cpp:
  47941. (WebCore::CloneBase::CloneBase):
  47942. (WebCore::CloneBase::shouldTerminate):
  47943. (WebCore::CloneBase::ticksUntilNextCheck):
  47944. (WebCore::CloneBase::didTimeOut):
  47945. (WebCore::CloneBase::throwStackOverflow):
  47946. (WebCore::CloneBase::throwInterruptedException):
  47947. (WebCore::CloneBase::fail):
  47948. (WebCore::CloneSerializer::serialize):
  47949. (WebCore::CloneSerializer::CloneSerializer):
  47950. (WebCore::CloneSerializer::isArray):
  47951. (WebCore::CloneSerializer::startObject):
  47952. (WebCore::CloneSerializer::startArray):
  47953. (WebCore::CloneSerializer::endObject):
  47954. (WebCore::CloneSerializer::getSparseIndex):
  47955. (WebCore::CloneSerializer::getProperty):
  47956. (WebCore::CloneSerializer::dumpImmediate):
  47957. (WebCore::CloneSerializer::dumpString):
  47958. (WebCore::CloneSerializer::dumpIfTerminal):
  47959. (WebCore::CloneSerializer::write):
  47960. (WebCore::CloneSerializer::writeLittleEndian):
  47961. (WebCore::CloneSerializer::writeStringIndex):
  47962. (WebCore::CloneDeserializer::deserializeString):
  47963. (WebCore::CloneDeserializer::deserialize):
  47964. (WebCore::CloneDeserializer::CloneDeserializer):
  47965. (WebCore::CloneDeserializer::throwValidationError):
  47966. (WebCore::CloneDeserializer::isValid):
  47967. (WebCore::CloneDeserializer::readLittleEndian):
  47968. (WebCore::CloneDeserializer::read):
  47969. (WebCore::CloneDeserializer::readStringIndex):
  47970. (WebCore::CloneDeserializer::readString):
  47971. (WebCore::CloneDeserializer::readStringData):
  47972. (WebCore::CloneDeserializer::readTag):
  47973. (WebCore::CloneDeserializer::putProperty):
  47974. (WebCore::CloneDeserializer::readFile):
  47975. (WebCore::CloneDeserializer::readTerminal):
  47976. (WebCore::SerializedScriptValue::~SerializedScriptValue):
  47977. (WebCore::SerializedScriptValue::SerializedScriptValue):
  47978. (WebCore::SerializedScriptValue::create):
  47979. (WebCore::SerializedScriptValue::toString):
  47980. (WebCore::SerializedScriptValue::deserialize):
  47981. (WebCore::SerializedScriptValue::nullValue):
  47982. * bindings/js/SerializedScriptValue.h:
  47983. * dom/MessagePortChannel.cpp:
  47984. (WebCore::MessagePortChannel::EventData::EventData):
  47985. * workers/WorkerMessagingProxy.cpp:
  47986. (WebCore::MessageWorkerContextTask::MessageWorkerContextTask):
  47987. (WebCore::MessageWorkerTask::MessageWorkerTask):
  47988. 2010-09-06 Martin Robinson <mrobinson@igalia.com>
  47989. Reviewed by Gustavo Noronha Silva.
  47990. [GTK] ScrollbarThemeGtk should be enabled for interior frame scrollbars
  47991. https://bugs.webkit.org/show_bug.cgi?id=45046
  47992. Make interior frame scrollbars "fully-fake," which means they do not rely
  47993. at all on GTK+ for painting or behavior, but instead are typical WebCore
  47994. scrollbars drawn according to the GTK+ theme. Move ScrollbarGtk to
  47995. MainFrameScrollbarGtk and remove all logic in that file dealing with interior
  47996. frame scrollbars.
  47997. No new tests, as this is already covered by pixel tests for scrollbars,
  47998. which were added in r66605.
  47999. * GNUmakefile.am: Update sources list.
  48000. * platform/ScrollView.h: Change the adjustment members to be smart pointers.
  48001. * platform/Scrollbar.cpp: Enable THUMB_POSITION_AFFECTS_BUTTONS for GTK+ as well.
  48002. * platform/gtk/MainFrameScrollbarGtk.cpp: Added.
  48003. (MainFrameScrollbarGtk::create): Create a MainFrameScrollbarGtk instead of ScrollbarGtk.
  48004. (MainFrameScrollbarGtk::MainFrameScrollbarGtk):
  48005. (MainFrameScrollbarGtk::~MainFrameScrollbarGtk):
  48006. (MainFrameScrollbarGtk::attachAdjustment):
  48007. (MainFrameScrollbarGtk::detachAdjustment):
  48008. (MainFrameScrollbarGtk::updateThumbPosition):
  48009. (MainFrameScrollbarGtk::updateThumbProportion):
  48010. (MainFrameScrollbarGtk::gtkValueChanged):
  48011. (MainFrameScrollbarGtk::paint):
  48012. * platform/gtk/MainFrameScrollbarGtk.h: Added.
  48013. * platform/gtk/ScrollViewGtk.cpp:
  48014. (WebCore::ScrollView::platformInit): Remove unnecessary initialization
  48015. because of smart pointer change.
  48016. (WebCore::ScrollView::createScrollbar): Instead of creating ScrollbarGtk for
  48017. interior frame scrollbars, create a normal WebCore scrollbar.
  48018. (WebCore::ScrollView::setGtkAdjustments): Added an extra assert which ensures
  48019. that this method is never called with a non-null adjustment on an interior frame
  48020. scrollbar.
  48021. (WebCore::ScrollView::platformAddChild): Remove logic for interior frame scrollbars.
  48022. (WebCore::ScrollView::platformRemoveChild): Remove logic for interior frame scrollbars.
  48023. (WebCore::ScrollView::visibleContentRect): Use a more accurate guard for detecting
  48024. transitionary states when accessing parent widgets. Explcitly guard against interior
  48025. frame ScrollView's trying to determine size based on parent widgets.
  48026. (WebCore::ScrollView::setScrollbarModes): This method was out of sync with the one
  48027. it copy-and-pasted from. Update it and change the logic to do the right thing for
  48028. interior frame scrollbars.
  48029. * platform/gtk/ScrollbarGtk.cpp: Removed.
  48030. * platform/gtk/ScrollbarGtk.h: Removed.
  48031. 2010-09-06 Justin Schuh <jschuh@chromium.org>
  48032. Reviewed by Nikolas Zimmermann.
  48033. Make SVG PendingResources use RefPtr
  48034. https://bugs.webkit.org/show_bug.cgi?id=43587
  48035. Convert SVGDocumentExtensions::m_pendingResources to use a RefPtr for
  48036. pending elements instead of a raw pointer so that pending elements can't
  48037. be freed prematurely.
  48038. Test: svg/custom/use-invalid-pattern.svg
  48039. * rendering/RenderSVGResourceContainer.cpp:
  48040. (WebCore::RenderSVGResourceContainer::registerResource):
  48041. * svg/SVGDocumentExtensions.cpp:
  48042. (WebCore::SVGDocumentExtensions::addPendingResource):
  48043. (WebCore::SVGDocumentExtensions::removePendingResource):
  48044. * svg/SVGDocumentExtensions.h:
  48045. * svg/SVGElement.cpp:
  48046. (WebCore::SVGElement::insertedIntoDocument):
  48047. 2010-09-06 Martin Robinson <mrobinson@igalia.com>
  48048. Reviewed by Gustavo Noronha Silva.
  48049. [GTK] ScrollbarThemeGtk should support secondary steppers
  48050. https://bugs.webkit.org/show_bug.cgi?id=44791
  48051. Add support to ScrollbarThemeGtk for drawing alternate steppers. Adjust
  48052. the algorithms for calculating forward and back button rects, if they
  48053. are active in the theme. Expose this information via GtkScrollbarMetrics.
  48054. * platform/gtk/ScrollbarThemeGtk.cpp:
  48055. (WebCore::ScrollbarThemeGtk::updateThemeProperties): Access the secondary stepper properties
  48056. of GtkScrollbarMetrics when updating the style cache.
  48057. (WebCore::ScrollbarThemeGtk::backButtonRect): Account for alternate steppers.
  48058. (WebCore::ScrollbarThemeGtk::forwardButtonRect): Ditto.
  48059. (WebCore::ScrollbarThemeGtk::trackRect): Ditto.
  48060. (WebCore::ScrollbarThemeGtk::paintButton): Ditto.
  48061. * platform/gtk/ScrollbarThemeGtk.h:
  48062. * platform/gtk/gtk2drawing.c: Expose whether or not the style uses alternate steppers
  48063. via GtkScrollbarMetrics.
  48064. * platform/gtk/gtkdrawing.h: Added fields to GtkScrollbarMetrics.
  48065. 2010-09-06 Tony Gentilcore <tonyg@chromium.org>
  48066. Reviewed by Adam Barth.
  48067. Implement HTML5 definition of document.readyState
  48068. https://bugs.webkit.org/show_bug.cgi?id=45119
  48069. The legacy behavior was "loading" -> "loaded" -> "complete". The new
  48070. HTML5 behavior is "loading" -> "interactive" -> "complete". There is
  48071. some potential for this to cause compat problems if for instance a
  48072. page expects readyState to be "loaded" during the DOMContentLoaded event.
  48073. Test: fast/dom/Document/readystate.html
  48074. * dom/Document.cpp:
  48075. (WebCore::Document::Document): Initial value is Complete because according to http://www.whatwg.org/specs/web-apps/current-work/#dom-document-readystate,
  48076. when a Document is created the initial value is "complete" unless it has a parser associated with it, in which case it is "loading".
  48077. So the ctor starts it Complete, and when the parser is created it is flipped to Loading.
  48078. (WebCore::Document::readyState):
  48079. (WebCore::Document::setReadyState):
  48080. (WebCore::Document::implicitOpen):
  48081. (WebCore::Document::finishedParsing): Ensure that XML and HTML parser have transition to Stopping state.
  48082. * dom/Document.h:
  48083. * dom/DocumentParser.cpp:
  48084. (WebCore::DocumentParser::prepareToStopParsing): Previously this was being called when parsing had stopped.
  48085. It is better to ensure it is only called while parsing.
  48086. * dom/XMLDocumentParser.cpp:
  48087. (WebCore::XMLDocumentParser::end): Transition to stopping before calling document finishedParsiong().
  48088. * html/parser/HTMLDocumentParser.cpp:
  48089. (WebCore::HTMLDocumentParser::prepareToStopParsing): Set state to interactive before running deferred scripts.
  48090. This method is also called when parsing fragments, so we need to ensure it isn't done in that case.
  48091. (WebCore::HTMLDocumentParser::attemptToRunDeferredScriptsAndEnd): Added. Break out this part s that notifyFinished doesn't go through
  48092. the additional steps of pumping tokenizer, setting the state, etc.
  48093. (WebCore::HTMLDocumentParser::notifyFinished): Now that prepareToStopParsing is split up, we must protect. It also makes sense to add a couple of ASSERTs.
  48094. * loader/FrameLoader.cpp:
  48095. (WebCore::FrameLoader::stopLoading): It looks like an aborted load should never transition to "complete" according the HTML5. I've left the legacy behavior for now though.
  48096. (WebCore::FrameLoader::checkCompleted): The FrameLoader now sets the state on the Document instead of the Document polling the FrameLoader.
  48097. 2010-09-06 Anton Muhin <antonm@chromium.org>
  48098. Reviewed by Adam Barth.
  48099. [v8] Inline hot methods for V8 to WebCore and back conversions
  48100. https://bugs.webkit.org/show_bug.cgi?id=45270
  48101. Inline fast paths of hot functions performing conversions from V8 wrappers
  48102. to WebCore native objects and back.
  48103. That slightly increases the size of binary (within 0.1% for both Ubuntu
  48104. and Windows, but those builds are slightly different from official ones),
  48105. but gives performance boost (3--5% on Windows, up to 8% on Ubuntu).
  48106. * bindings/scripts/CodeGeneratorV8.pm:
  48107. * bindings/v8/V8DOMWindowShell.cpp:
  48108. (WebCore::V8DOMWindowShell::initContextIfNeeded):
  48109. * bindings/v8/V8DOMWindowShell.h:
  48110. * bindings/v8/V8DOMWrapper.cpp:
  48111. (WebCore::V8DOMWrapper::getWrapperSlow):
  48112. * bindings/v8/V8DOMWrapper.h:
  48113. (WebCore::V8DOMWrapper::getWrapper):
  48114. * bindings/v8/custom/V8NodeCustom.cpp:
  48115. (WebCore::toV8Slow):
  48116. 2010-09-06 Shane Stephens <shanestephens@google.com>
  48117. Reviewed by Dimitri Glazkov.
  48118. [Crash] <animateMotion> element directly inside <symbol> element causes crash when referenced by <use>
  48119. https://bugs.webkit.org/show_bug.cgi?id=44750
  48120. Fixes crash by checking for null transforms and skipping update step
  48121. when appropriate.
  48122. Test: svg/dom/symbol-embeddedAnimation.svg
  48123. * svg/SVGAnimateMotionElement.cpp:
  48124. (WebCore::SVGAnimateMotionElement::applyResultsToTarget):
  48125. 2010-09-06 Xan Lopez <xlopez@igalia.com>
  48126. Rubber-stamped by Tor Arne Vestbø.
  48127. WebCore already generates a focus-{out,in} events on its setFocus
  48128. method, there's no need to duplicate it here. Previously this was
  48129. needed because we were not catching all possible names of focus
  48130. events in PluginView::handleEvent and were missing the ones
  48131. WebCore does, but this has been fixed in r66827.
  48132. * plugins/qt/PluginViewQt.cpp:
  48133. (WebCore::PluginView::setFocus):
  48134. 2010-09-06 Sheriff Bot <webkit.review.bot@gmail.com>
  48135. Unreviewed, rolling out r66823.
  48136. http://trac.webkit.org/changeset/66823
  48137. https://bugs.webkit.org/show_bug.cgi?id=45266
  48138. Windows build fails with unknown reason (Requested by zherczeg
  48139. on #webkit).
  48140. * Android.mk:
  48141. * CMakeLists.txt:
  48142. * GNUmakefile.am:
  48143. * WebCore.gypi:
  48144. * WebCore.pro:
  48145. * WebCore.vcproj/WebCore.vcproj:
  48146. * WebCore.xcodeproj/project.pbxproj:
  48147. * rendering/RenderObject.h:
  48148. * rendering/RenderSVGResourceFilterPrimitive.cpp: Removed.
  48149. * rendering/RenderSVGResourceFilterPrimitive.h: Removed.
  48150. * rendering/SVGRenderTreeAsText.cpp:
  48151. (WebCore::writeSVGContainer):
  48152. * svg/SVGFEDiffuseLightingElement.cpp:
  48153. (WebCore::SVGFEDiffuseLightingElement::svgAttributeChanged):
  48154. * svg/SVGFELightElement.cpp:
  48155. (WebCore::SVGFELightElement::svgAttributeChanged):
  48156. (WebCore::SVGFELightElement::childrenChanged):
  48157. * svg/SVGFEOffsetElement.cpp:
  48158. (WebCore::SVGFEOffsetElement::svgAttributeChanged):
  48159. * svg/SVGFilterElement.h:
  48160. (WebCore::SVGFilterElement::invalidateFilter):
  48161. * svg/SVGFilterPrimitiveStandardAttributes.cpp:
  48162. (WebCore::SVGFilterPrimitiveStandardAttributes::svgAttributeChanged):
  48163. (WebCore::SVGFilterPrimitiveStandardAttributes::childrenChanged):
  48164. * svg/SVGFilterPrimitiveStandardAttributes.h:
  48165. (WebCore::SVGFilterPrimitiveStandardAttributes::rendererIsNeeded):
  48166. 2010-09-06 Xan Lopez <xlopez@igalia.com>
  48167. Reviewed by Martin Robinson.
  48168. [GTK] Provide Keyboard Events to Windowless plugins
  48169. https://bugs.webkit.org/show_bug.cgi?id=44613
  48170. Fix keyboard event delivery for windowless plugins.
  48171. Based on a patch by Bharathwaaj.
  48172. * plugins/PluginView.cpp:
  48173. (WebCore::PluginView::handleEvent): also take into account
  48174. focused{in,out} events
  48175. * plugins/gtk/PluginViewGtk.cpp:
  48176. (WebCore::PluginView::handleKeyboardEvent): we want the keyval
  48177. here, not the hardware keycode
  48178. (WebCore::PluginView::handleMouseEvent): focus the pluginview on mouse events
  48179. 2010-09-06 Ilya Tikhonovsky <loislo@chromium.org>
  48180. Reviewed by Yury Semikhatsky.
  48181. WebInspector: it'd be nice to be able to pass undefined argument as a callback to InspectorBackend functions.
  48182. There are some places where callback is passing via some wrapper. In that case sendMessageToBackend
  48183. will be called with additional argument for callback but with undefined value.
  48184. https://bugs.webkit.org/show_bug.cgi?id=45265
  48185. * inspector/CodeGeneratorInspector.pm:
  48186. 2010-09-06 Zoltan Herczeg <zherczeg@webkit.org>
  48187. Reviewed by Dirk Schulze.
  48188. An individual renderer should be assigned to each SVGFE*Element class
  48189. https://bugs.webkit.org/show_bug.cgi?id=43954
  48190. RenderSVGResourceFilterPrimitive renderer is added to
  48191. the project, and assigned to each object, which class is
  48192. derived from SVGFilterPrimitiveStandardAttributes. The patch
  48193. mainly contains build system changes, and it fixes one layout
  48194. test in svg/dynamic-updates.
  48195. * Android.mk:
  48196. * CMakeLists.txt:
  48197. * GNUmakefile.am:
  48198. * WebCore.gypi:
  48199. * WebCore.pro:
  48200. * WebCore.vcproj/WebCore.vcproj:
  48201. * WebCore.xcodeproj/project.pbxproj:
  48202. * rendering/RenderObject.h:
  48203. (WebCore::RenderObject::isSVGResourceFilterPrimitive):
  48204. * rendering/RenderSVGResourceFilterPrimitive.cpp: Added.
  48205. (WebCore::RenderSVGResourceFilterPrimitive::RenderSVGResourceFilterPrimitive):
  48206. * rendering/RenderSVGResourceFilterPrimitive.h: Added.
  48207. (WebCore::RenderSVGResourceFilterPrimitive::isSVGResourceFilterPrimitive):
  48208. * rendering/SVGRenderTreeAsText.cpp:
  48209. (WebCore::writeSVGContainer):
  48210. * svg/SVGFEDiffuseLightingElement.cpp:
  48211. (WebCore::SVGFEDiffuseLightingElement::svgAttributeChanged):
  48212. * svg/SVGFELightElement.cpp:
  48213. (WebCore::SVGFELightElement::svgAttributeChanged):
  48214. (WebCore::SVGFELightElement::childrenChanged):
  48215. * svg/SVGFEOffsetElement.cpp:
  48216. (WebCore::SVGFEOffsetElement::svgAttributeChanged):
  48217. * svg/SVGFilterElement.h:
  48218. * svg/SVGFilterPrimitiveStandardAttributes.cpp:
  48219. (WebCore::SVGFilterPrimitiveStandardAttributes::svgAttributeChanged):
  48220. (WebCore::SVGFilterPrimitiveStandardAttributes::childrenChanged):
  48221. (WebCore::SVGFilterPrimitiveStandardAttributes::createRenderer):
  48222. * svg/SVGFilterPrimitiveStandardAttributes.h:
  48223. (WebCore::SVGFilterPrimitiveStandardAttributes::invalidate):
  48224. 2010-09-06 Gyuyoung Kim <gyuyoung.kim@samsung.com>
  48225. Reviewed by Dirk Schulze.
  48226. [WML] Use RenderImageResource in WMLImageElement.cpp
  48227. https://bugs.webkit.org/show_bug.cgi?id=44952
  48228. The hasImage() and setCachedImage() were moved to RenderImageResource class.
  48229. So, WML also should use the functions from RenderImageResource.
  48230. * wml/WMLImageElement.cpp:
  48231. (WebCore::WMLImageElement::attach):
  48232. 2010-08-26 Jeremy Orlow <jorlow@chromium.org>
  48233. Reviewed by Steve Block.
  48234. Add index insertion support to IndexedDB.
  48235. https://bugs.webkit.org/show_bug.cgi?id=44695
  48236. Whenever you insert an item into an ObjectStore, it should use all
  48237. indexes' key paths to insert corresponding entries into each index.
  48238. Also data should be deleted out of the index when it goes away.
  48239. Not much testing yet since there's no way to directly observe indexes.
  48240. More will be in next patch.
  48241. * storage/IDBDatabaseBackendImpl.cpp:
  48242. (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
  48243. * storage/IDBFactoryBackendImpl.cpp:
  48244. (WebCore::createTables):
  48245. * storage/IDBIndex.idl:
  48246. * storage/IDBIndexBackendImpl.cpp:
  48247. (WebCore::whereClause):
  48248. (WebCore::bindWhereClause):
  48249. (WebCore::IDBIndexBackendImpl::addingKeyAllowed):
  48250. * storage/IDBIndexBackendImpl.h:
  48251. (WebCore::IDBIndexBackendImpl::id):
  48252. * storage/IDBKey.cpp:
  48253. (WebCore::IDBKey::whereSyntax):
  48254. (WebCore::IDBKey::bind):
  48255. (WebCore::IDBKey::bindWithNulls):
  48256. * storage/IDBKey.h:
  48257. * storage/IDBObjectStore.idl:
  48258. * storage/IDBObjectStoreBackendImpl.cpp:
  48259. (WebCore::whereClause):
  48260. (WebCore::bindWhereClause):
  48261. (WebCore::IDBObjectStoreBackendImpl::get):
  48262. (WebCore::fetchKeyFromKeyPath):
  48263. (WebCore::putObjectStoreData):
  48264. (WebCore::putIndexData):
  48265. (WebCore::IDBObjectStoreBackendImpl::put):
  48266. (WebCore::IDBObjectStoreBackendImpl::remove):
  48267. (WebCore::IDBObjectStoreBackendImpl::createIndex):
  48268. (WebCore::doDelete):
  48269. (WebCore::IDBObjectStoreBackendImpl::removeIndex):
  48270. (WebCore::IDBObjectStoreBackendImpl::openCursor):
  48271. * storage/IDBObjectStoreBackendImpl.h:
  48272. 2010-09-06 Anton Muhin <antonm@chromium.org>
  48273. Reviewed by Adam Barth.
  48274. [v8] bypass caches when query memory usage from post GC and in crash handler.
  48275. https://bugs.webkit.org/show_bug.cgi?id=45036
  48276. Add Chromium-specific API to query actual memory usage which bypasses any caches.
  48277. * platform/chromium/ChromiumBridge.h:
  48278. 2010-09-06 Adam Barth <abarth@webkit.org>
  48279. Reviewed by Darin Adler.
  48280. Rename SecurityOrigin::canLoad to canDisplay
  48281. https://bugs.webkit.org/show_bug.cgi?id=45214
  48282. canLoad is a pretty opaque name. This function is really about whether
  48283. you can display the contents of the URL in an iframe, an image, or a
  48284. plugin.
  48285. * WebCore.exp.in:
  48286. * html/HTMLMediaElement.cpp:
  48287. (WebCore::HTMLMediaElement::isSafeToLoadURL):
  48288. * loader/Cache.cpp:
  48289. (WebCore::Cache::requestResource):
  48290. * loader/FrameLoader.cpp:
  48291. (WebCore::FrameLoader::loadFrameRequest):
  48292. * loader/PingLoader.cpp:
  48293. (WebCore::PingLoader::loadImage):
  48294. * loader/SubframeLoader.cpp:
  48295. (WebCore::SubframeLoader::loadMediaPlayerProxyPlugin):
  48296. (WebCore::SubframeLoader::createJavaAppletWidget):
  48297. (WebCore::SubframeLoader::loadSubframe):
  48298. (WebCore::SubframeLoader::loadPlugin):
  48299. * loader/SubresourceLoader.cpp:
  48300. (WebCore::SubresourceLoader::create):
  48301. * page/SecurityOrigin.cpp:
  48302. (WebCore::SecurityOrigin::canDisplay):
  48303. * page/SecurityOrigin.h:
  48304. * plugins/PluginView.cpp:
  48305. (WebCore::PluginView::load):
  48306. 2010-08-31 Yury Semikhatsky <yurys@chromium.org>
  48307. Reviewed by Joseph Pecoraro.
  48308. Web Inspector: browser crashes on attempt to evaluate "alert(1)" while staying on a breakpoint
  48309. https://bugs.webkit.org/show_bug.cgi?id=44943
  48310. Test: inspector/debugger-suspend-active-dom-objects.html
  48311. * page/PageGroupLoadDeferrer.cpp:
  48312. (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
  48313. 2010-09-05 Kenneth Russell <kbr@google.com>
  48314. Reviewed by Darin Fisher.
  48315. Add unit tests for red-black tree and (POD) arena
  48316. https://bugs.webkit.org/show_bug.cgi?id=45060
  48317. * platform/graphics/gpu/PODArena.h: Made DefaultChunkSize public so unit tests can access it. Fixed copyright header.
  48318. * platform/graphics/gpu/PODInterval.h: Fixed copyright header.
  48319. * platform/graphics/gpu/PODIntervalTree.h: Fixed copyright header.
  48320. * platform/graphics/gpu/PODRedBlackTree.h: Fixed copyright header.
  48321. 2010-09-05 Jeremy Orlow <jorlow@chromium.org>
  48322. Reviewed by Nate Chapin.
  48323. Add the concept of class methods to bindings (for IndexedDB's IDBKeyRange).
  48324. https://bugs.webkit.org/show_bug.cgi?id=45044
  48325. IndexedDB's IDBKeyRange has what, in other languages, are called class
  48326. methods. In javaScript terms, these are methods only accessible from their
  48327. constructor and not instances. This change adds such support to V8. There
  48328. are already other features required for IndexedDB that JSC doesn't yet
  48329. support, so I'll add this to the list of todo items in the master bug
  48330. for that.
  48331. The bindings tests cover this. My next patch will change WebCore to use
  48332. this and it'll have associated layout tests.
  48333. * bindings/scripts/CodeGeneratorV8.pm:
  48334. * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
  48335. (WebDOMTestObj::classMethod):
  48336. (WebDOMTestObj::classMethodWithOptional):
  48337. * bindings/scripts/test/CPP/WebDOMTestObj.h:
  48338. * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  48339. (webkit_dom_test_obj_class_method):
  48340. (webkit_dom_test_obj_class_method_with_optional):
  48341. * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  48342. * bindings/scripts/test/JS/JSTestObj.cpp:
  48343. (WebCore::jsTestObjPrototypeFunctionStaticMethod):
  48344. (WebCore::jsTestObjPrototypeFunctionStaticMethodWithOptional):
  48345. * bindings/scripts/test/JS/JSTestObj.h:
  48346. * bindings/scripts/test/ObjC/DOMTestObj.h:
  48347. * bindings/scripts/test/ObjC/DOMTestObj.mm:
  48348. (-[DOMTestObj classMethod]):
  48349. (-[DOMTestObj classMethodWithOptional:]):
  48350. * bindings/scripts/test/TestObj.idl:
  48351. * bindings/scripts/test/V8/V8TestObj.cpp:
  48352. (WebCore::TestObjInternal::classMethodCallback):
  48353. (WebCore::TestObjInternal::classMethodWithOptionalCallback):
  48354. (WebCore::ConfigureV8TestObjTemplate):
  48355. * storage/IDBKeyRange.idl:
  48356. 2010-09-05 Jeremy Orlow <jorlow@chromium.org>
  48357. Reviewed by Steve Block.
  48358. Add IndexedDB objects' constructors to window
  48359. https://bugs.webkit.org/show_bug.cgi?id=44599
  48360. Also add a forgotten constant to IDBTransaction, and
  48361. change IDBKeyRange over to using the V8Static attribute
  48362. so it actually behaves as it's supposed to.
  48363. * bindings/generic/RuntimeEnabledFeatures.h:
  48364. (WebCore::RuntimeEnabledFeatures::iDBCursorEnabled):
  48365. (WebCore::RuntimeEnabledFeatures::iDBDatabaseEnabled):
  48366. (WebCore::RuntimeEnabledFeatures::iDBDatabaseErrorEnabled):
  48367. (WebCore::RuntimeEnabledFeatures::iDBDatabaseExceptionEnabled):
  48368. (WebCore::RuntimeEnabledFeatures::iDBErrorEventEnabled):
  48369. (WebCore::RuntimeEnabledFeatures::iDBEventEnabled):
  48370. (WebCore::RuntimeEnabledFeatures::iDBFactoryEnabled):
  48371. (WebCore::RuntimeEnabledFeatures::iDBIndexEnabled):
  48372. (WebCore::RuntimeEnabledFeatures::iDBKeyRangeEnabled):
  48373. (WebCore::RuntimeEnabledFeatures::iDBObjectStoreEnabled):
  48374. (WebCore::RuntimeEnabledFeatures::iDBRequestEnabled):
  48375. (WebCore::RuntimeEnabledFeatures::iDBSuccessEventEnabled):
  48376. (WebCore::RuntimeEnabledFeatures::iDBTransactionEnabled):
  48377. * page/DOMWindow.cpp:
  48378. (WebCore::DOMWindow::clear):
  48379. (WebCore::DOMWindow::indexedDB):
  48380. * page/DOMWindow.h:
  48381. * page/DOMWindow.idl:
  48382. * storage/IDBKeyRange.idl:
  48383. * storage/IDBTransaction.h:
  48384. * storage/IDBTransaction.idl:
  48385. 2010-09-04 Justin Schuh <jschuh@chromium.org>
  48386. Reviewed by Nikolas Zimmermann.
  48387. Prevent premature deletion of svg use shadow tree
  48388. https://bugs.webkit.org/show_bug.cgi?id=43260
  48389. Test: svg/custom/use-invalid-style.svg
  48390. * svg/SVGUseElement.cpp:
  48391. (WebCore::SVGUseElement::insertedIntoDocument):
  48392. (WebCore::SVGUseElement::removedFromDocument):
  48393. (WebCore::SVGUseElement::detach):
  48394. 2010-09-03 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org>
  48395. Reviewed by Darin Adler.
  48396. Add NetworkingContext to avoid layer violations
  48397. https://bugs.webkit.org/show_bug.cgi?id=42292
  48398. Create and provide access to NetworkingContext in FrameLoader.
  48399. In the WebKit layer we added specific implementations of FrameNetworkingContext
  48400. so each port's FrameLoaderClient can add any port specific information to NetworkingContext
  48401. The NetworkingContext is, therefore, created by a FrameLoaderClient and stored
  48402. in the FrameLoader for each frame created. People must always use it
  48403. by calling FrameLoader::networkingContext() and never through their FrameLoaderClient.
  48404. The lifetime cycle of NetworkingContext is kept by a RefPtr, so the object is RefCounted.
  48405. It is still a preparation to NetworkingContext to be activated and
  48406. work for all ports.
  48407. * WebCore.exp.in:
  48408. * loader/EmptyClients.h:
  48409. (WebCore::EmptyFrameLoaderClient::createNetworkingContext):
  48410. * loader/FrameLoader.cpp:
  48411. (WebCore::FrameLoader::~FrameLoader):
  48412. (WebCore::FrameLoader::init):
  48413. (WebCore::FrameLoader::networkingContext):
  48414. * loader/FrameLoader.h:
  48415. * loader/FrameLoaderClient.h:
  48416. 2010-09-03 Kinuko Yasuda <kinuko@chromium.org>
  48417. Reviewed by Darin Adler.
  48418. V8/JS bindings should not perform type checks if the parameter has Callback attribute
  48419. https://bugs.webkit.org/show_bug.cgi?id=45143
  48420. No new tests, should not affect existing idls.
  48421. * bindings/scripts/CodeGeneratorJS.pm:
  48422. * bindings/scripts/CodeGeneratorV8.pm:
  48423. * bindings/scripts/test/JS/JSTestObj.cpp:
  48424. (WebCore::jsTestObjPrototypeFunctionOverloadedMethod5):
  48425. (WebCore::jsTestObjPrototypeFunctionOverloadedMethod):
  48426. * bindings/scripts/test/TestObj.idl:
  48427. * bindings/scripts/test/V8/V8TestObj.cpp:
  48428. (WebCore::TestObjInternal::overloadedMethod5Callback):
  48429. (WebCore::TestObjInternal::overloadedMethodCallback):
  48430. 2010-09-03 Kenneth Russell <kbr@google.com>
  48431. Unreviewed, Chromium build fix. Fix breakage on Windows after
  48432. r66787 / https://bugs.webkit.org/show_bug.cgi?id=45223 .
  48433. * platform/graphics/chromium/FontChromiumWin.cpp:
  48434. (WebCore::Font::drawGlyphs):
  48435. 2010-09-03 James Robinson <jamesr@chromium.org>
  48436. Reviewed by Kenneth Russell.
  48437. [chromium] Text sometimes fails to display in accelerated 2d canvases
  48438. https://bugs.webkit.org/show_bug.cgi?id=45223
  48439. Calls PlatformContextSkia::prepareForSoftwareDraw() before drawing glyphs
  48440. using skia to ensure that the backing store state is consistent.
  48441. * platform/graphics/chromium/FontChromiumWin.cpp:
  48442. (WebCore::Font::drawGlyphs):
  48443. * platform/graphics/chromium/FontLinux.cpp:
  48444. (WebCore::Font::drawGlyphs):
  48445. 2010-09-03 Kenneth Russell <kbr@google.com>
  48446. Reviewed by Darin Fisher.
  48447. Add thirdparty directory and incorporate GLU tessellator
  48448. https://bugs.webkit.org/show_bug.cgi?id=44707
  48449. This directory is intended to contain copies of third-party libraries used
  48450. by WebCore, in particular those which may require some modification in
  48451. order to incorporate.
  48452. No tests at this time; these sources are being added in preparation for
  48453. incorporating other code which uses them, at which point the code will be
  48454. exercised and testable.
  48455. * thirdparty: Added.
  48456. * thirdparty/README.txt: Added.
  48457. * thirdparty/glu: Added.
  48458. * thirdparty/glu/LICENSE.txt: Added.
  48459. * thirdparty/glu/README.webkit: Added.
  48460. * thirdparty/glu/gluos.h: Added.
  48461. * thirdparty/glu/internal_glu.h: Added.
  48462. * thirdparty/glu/libtess: Added.
  48463. * thirdparty/glu/libtess/GNUmakefile: Added.
  48464. * thirdparty/glu/libtess/Imakefile: Added.
  48465. * thirdparty/glu/libtess/README: Added.
  48466. * thirdparty/glu/libtess/alg-outline: Added.
  48467. * thirdparty/glu/libtess/dict-list.h: Added.
  48468. * thirdparty/glu/libtess/dict.c: Added.
  48469. * thirdparty/glu/libtess/dict.h: Added.
  48470. * thirdparty/glu/libtess/geom.c: Added.
  48471. * thirdparty/glu/libtess/geom.h: Added.
  48472. * thirdparty/glu/libtess/memalloc.c: Added.
  48473. * thirdparty/glu/libtess/memalloc.h: Added.
  48474. * thirdparty/glu/libtess/mesh.c: Added.
  48475. * thirdparty/glu/libtess/mesh.h: Added.
  48476. * thirdparty/glu/libtess/normal.c: Added.
  48477. * thirdparty/glu/libtess/normal.h: Added.
  48478. * thirdparty/glu/libtess/priorityq-heap.c: Added.
  48479. * thirdparty/glu/libtess/priorityq-heap.h: Added.
  48480. * thirdparty/glu/libtess/priorityq-sort.h: Added.
  48481. * thirdparty/glu/libtess/priorityq.c: Added.
  48482. * thirdparty/glu/libtess/priorityq.h: Added.
  48483. * thirdparty/glu/libtess/render.c: Added.
  48484. * thirdparty/glu/libtess/render.h: Added.
  48485. * thirdparty/glu/libtess/sweep.c: Added.
  48486. * thirdparty/glu/libtess/sweep.h: Added.
  48487. * thirdparty/glu/libtess/tess.c: Added.
  48488. * thirdparty/glu/libtess/tess.h: Added.
  48489. * thirdparty/glu/libtess/tessmono.c: Added.
  48490. * thirdparty/glu/libtess/tessmono.h: Added.
  48491. 2010-09-03 Sheriff Bot <webkit.review.bot@gmail.com>
  48492. Unreviewed, rolling out r66781.
  48493. http://trac.webkit.org/changeset/66781
  48494. https://bugs.webkit.org/show_bug.cgi?id=45220
  48495. Breaks the build. Adds a mac-specific file to
  48496. platform/graphics without #if PLATFORM() guards and changes
  48497. the GraphicsContext3D interface without updating all
  48498. implementations (Requested by jamesr on #webkit).
  48499. * WebCore.gypi:
  48500. * WebCore.xcodeproj/project.pbxproj:
  48501. * html/canvas/WebGLObject.cpp:
  48502. (WebCore::WebGLObject::deleteObject):
  48503. * platform/graphics/ANGLEWebKitBridge.h:
  48504. * platform/graphics/GraphicsContext3D.h:
  48505. * platform/graphics/GraphicsContext3DOpenGL.cpp: Removed.
  48506. * platform/graphics/mac/GraphicsContext3DMac.mm:
  48507. (WebCore::GraphicsContext3D::validateAttributes):
  48508. (WebCore::GraphicsContext3D::makeContextCurrent):
  48509. (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas):
  48510. (WebCore::GraphicsContext3D::reshape):
  48511. (WebCore::ensureContext):
  48512. (WebCore::GraphicsContext3D::prepareTexture):
  48513. (WebCore::GraphicsContext3D::activeTexture):
  48514. (WebCore::GraphicsContext3D::attachShader):
  48515. (WebCore::GraphicsContext3D::bindAttribLocation):
  48516. (WebCore::GraphicsContext3D::bindBuffer):
  48517. (WebCore::GraphicsContext3D::bindFramebuffer):
  48518. (WebCore::GraphicsContext3D::bindRenderbuffer):
  48519. (WebCore::GraphicsContext3D::bindTexture):
  48520. (WebCore::GraphicsContext3D::blendColor):
  48521. (WebCore::GraphicsContext3D::blendEquation):
  48522. (WebCore::GraphicsContext3D::blendEquationSeparate):
  48523. (WebCore::GraphicsContext3D::blendFunc):
  48524. (WebCore::GraphicsContext3D::blendFuncSeparate):
  48525. (WebCore::GraphicsContext3D::bufferData):
  48526. (WebCore::GraphicsContext3D::bufferSubData):
  48527. (WebCore::GraphicsContext3D::checkFramebufferStatus):
  48528. (WebCore::GraphicsContext3D::clearColor):
  48529. (WebCore::GraphicsContext3D::clear):
  48530. (WebCore::GraphicsContext3D::clearDepth):
  48531. (WebCore::GraphicsContext3D::clearStencil):
  48532. (WebCore::GraphicsContext3D::colorMask):
  48533. (WebCore::GraphicsContext3D::compileShader):
  48534. (WebCore::GraphicsContext3D::copyTexImage2D):
  48535. (WebCore::GraphicsContext3D::copyTexSubImage2D):
  48536. (WebCore::GraphicsContext3D::cullFace):
  48537. (WebCore::GraphicsContext3D::depthFunc):
  48538. (WebCore::GraphicsContext3D::depthMask):
  48539. (WebCore::GraphicsContext3D::depthRange):
  48540. (WebCore::GraphicsContext3D::detachShader):
  48541. (WebCore::GraphicsContext3D::disable):
  48542. (WebCore::GraphicsContext3D::disableVertexAttribArray):
  48543. (WebCore::GraphicsContext3D::drawArrays):
  48544. (WebCore::GraphicsContext3D::drawElements):
  48545. (WebCore::GraphicsContext3D::enable):
  48546. (WebCore::GraphicsContext3D::enableVertexAttribArray):
  48547. (WebCore::GraphicsContext3D::finish):
  48548. (WebCore::GraphicsContext3D::flush):
  48549. (WebCore::GraphicsContext3D::framebufferRenderbuffer):
  48550. (WebCore::GraphicsContext3D::framebufferTexture2D):
  48551. (WebCore::GraphicsContext3D::frontFace):
  48552. (WebCore::GraphicsContext3D::generateMipmap):
  48553. (WebCore::GraphicsContext3D::getActiveAttrib):
  48554. (WebCore::GraphicsContext3D::getActiveUniform):
  48555. (WebCore::GraphicsContext3D::getAttachedShaders):
  48556. (WebCore::GraphicsContext3D::getAttribLocation):
  48557. (WebCore::GraphicsContext3D::getContextAttributes):
  48558. (WebCore::GraphicsContext3D::getError):
  48559. (WebCore::GraphicsContext3D::getString):
  48560. (WebCore::GraphicsContext3D::hint):
  48561. (WebCore::GraphicsContext3D::isBuffer):
  48562. (WebCore::GraphicsContext3D::isEnabled):
  48563. (WebCore::GraphicsContext3D::isFramebuffer):
  48564. (WebCore::GraphicsContext3D::isProgram):
  48565. (WebCore::GraphicsContext3D::isRenderbuffer):
  48566. (WebCore::GraphicsContext3D::isShader):
  48567. (WebCore::GraphicsContext3D::isTexture):
  48568. (WebCore::GraphicsContext3D::lineWidth):
  48569. (WebCore::GraphicsContext3D::linkProgram):
  48570. (WebCore::GraphicsContext3D::pixelStorei):
  48571. (WebCore::GraphicsContext3D::polygonOffset):
  48572. (WebCore::GraphicsContext3D::readPixels):
  48573. (WebCore::GraphicsContext3D::releaseShaderCompiler):
  48574. (WebCore::GraphicsContext3D::renderbufferStorage):
  48575. (WebCore::GraphicsContext3D::sampleCoverage):
  48576. (WebCore::GraphicsContext3D::scissor):
  48577. (WebCore::GraphicsContext3D::shaderSource):
  48578. (WebCore::GraphicsContext3D::stencilFunc):
  48579. (WebCore::GraphicsContext3D::stencilFuncSeparate):
  48580. (WebCore::GraphicsContext3D::stencilMask):
  48581. (WebCore::GraphicsContext3D::stencilMaskSeparate):
  48582. (WebCore::GraphicsContext3D::stencilOp):
  48583. (WebCore::GraphicsContext3D::stencilOpSeparate):
  48584. (WebCore::GraphicsContext3D::texParameterf):
  48585. (WebCore::GraphicsContext3D::texParameteri):
  48586. (WebCore::GraphicsContext3D::uniform1f):
  48587. (WebCore::GraphicsContext3D::uniform1fv):
  48588. (WebCore::GraphicsContext3D::uniform2f):
  48589. (WebCore::GraphicsContext3D::uniform2fv):
  48590. (WebCore::GraphicsContext3D::uniform3f):
  48591. (WebCore::GraphicsContext3D::uniform3fv):
  48592. (WebCore::GraphicsContext3D::uniform4f):
  48593. (WebCore::GraphicsContext3D::uniform4fv):
  48594. (WebCore::GraphicsContext3D::uniform1i):
  48595. (WebCore::GraphicsContext3D::uniform1iv):
  48596. (WebCore::GraphicsContext3D::uniform2i):
  48597. (WebCore::GraphicsContext3D::uniform2iv):
  48598. (WebCore::GraphicsContext3D::uniform3i):
  48599. (WebCore::GraphicsContext3D::uniform3iv):
  48600. (WebCore::GraphicsContext3D::uniform4i):
  48601. (WebCore::GraphicsContext3D::uniform4iv):
  48602. (WebCore::GraphicsContext3D::uniformMatrix2fv):
  48603. (WebCore::GraphicsContext3D::uniformMatrix3fv):
  48604. (WebCore::GraphicsContext3D::uniformMatrix4fv):
  48605. (WebCore::GraphicsContext3D::useProgram):
  48606. (WebCore::GraphicsContext3D::validateProgram):
  48607. (WebCore::GraphicsContext3D::vertexAttrib1f):
  48608. (WebCore::GraphicsContext3D::vertexAttrib1fv):
  48609. (WebCore::GraphicsContext3D::vertexAttrib2f):
  48610. (WebCore::GraphicsContext3D::vertexAttrib2fv):
  48611. (WebCore::GraphicsContext3D::vertexAttrib3f):
  48612. (WebCore::GraphicsContext3D::vertexAttrib3fv):
  48613. (WebCore::GraphicsContext3D::vertexAttrib4f):
  48614. (WebCore::GraphicsContext3D::vertexAttrib4fv):
  48615. (WebCore::GraphicsContext3D::vertexAttribPointer):
  48616. (WebCore::GraphicsContext3D::viewport):
  48617. (WebCore::GraphicsContext3D::getBooleanv):
  48618. (WebCore::GraphicsContext3D::getBufferParameteriv):
  48619. (WebCore::GraphicsContext3D::getFloatv):
  48620. (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv):
  48621. (WebCore::GraphicsContext3D::getIntegerv):
  48622. (WebCore::GraphicsContext3D::getProgramiv):
  48623. (WebCore::GraphicsContext3D::getProgramInfoLog):
  48624. (WebCore::GraphicsContext3D::getRenderbufferParameteriv):
  48625. (WebCore::GraphicsContext3D::getShaderiv):
  48626. (WebCore::GraphicsContext3D::getShaderInfoLog):
  48627. (WebCore::GraphicsContext3D::getShaderSource):
  48628. (WebCore::GraphicsContext3D::getTexParameterfv):
  48629. (WebCore::GraphicsContext3D::getTexParameteriv):
  48630. (WebCore::GraphicsContext3D::getUniformfv):
  48631. (WebCore::GraphicsContext3D::getUniformiv):
  48632. (WebCore::GraphicsContext3D::getUniformLocation):
  48633. (WebCore::GraphicsContext3D::getVertexAttribfv):
  48634. (WebCore::GraphicsContext3D::getVertexAttribiv):
  48635. (WebCore::GraphicsContext3D::getVertexAttribOffset):
  48636. (WebCore::GraphicsContext3D::texImage2D):
  48637. (WebCore::GraphicsContext3D::texSubImage2D):
  48638. (WebCore::GraphicsContext3D::createBuffer):
  48639. (WebCore::GraphicsContext3D::createFramebuffer):
  48640. (WebCore::GraphicsContext3D::createProgram):
  48641. (WebCore::GraphicsContext3D::createRenderbuffer):
  48642. (WebCore::GraphicsContext3D::createShader):
  48643. (WebCore::GraphicsContext3D::createTexture):
  48644. (WebCore::GraphicsContext3D::deleteBuffer):
  48645. (WebCore::GraphicsContext3D::deleteFramebuffer):
  48646. (WebCore::GraphicsContext3D::deleteProgram):
  48647. (WebCore::GraphicsContext3D::deleteRenderbuffer):
  48648. (WebCore::GraphicsContext3D::deleteShader):
  48649. (WebCore::GraphicsContext3D::deleteTexture):
  48650. (WebCore::GraphicsContext3D::sizeInBytes):
  48651. (WebCore::GraphicsContext3D::synthesizeGLError):
  48652. 2010-09-03 James Robinson <jamesr@chromium.org>
  48653. Reviewed by Kenneth Russell.
  48654. Force 2d canvases to be rendered in software when the composite operation isn't source-over
  48655. https://bugs.webkit.org/show_bug.cgi?id=45216
  48656. The current accelerated 2d canvas implementation is very slow for composite operations other
  48657. than the default. This patch forces a canvas to be rendered in software if any other operation
  48658. is set until we accelerate the rest.
  48659. Tested by any of the fast/canvas tests that use a non-default globalCompositeOperation.
  48660. * html/canvas/CanvasRenderingContext2D.cpp:
  48661. (WebCore::CanvasRenderingContext2D::setGlobalCompositeOperation):
  48662. * platform/graphics/skia/PlatformContextSkia.cpp:
  48663. (WebCore::PlatformContextSkia::setSharedGraphicsContext3D):
  48664. 2010-09-03 Paul Sawaya <psawaya@apple.com>
  48665. Reviewed by Chris Marrin.
  48666. Refactored out Mac specific code for platform/graphics/mac/GraphicsContext3D.mm file.
  48667. Left general OpenGL code in platform/graphics/GraphicsContext3DOpenGL.cpp.
  48668. https://bugs.webkit.org/show_bug.cgi?id=30625
  48669. * WebCore.gypi:
  48670. * WebCore.xcodeproj/project.pbxproj:
  48671. * html/canvas/WebGLObject.cpp:
  48672. (WebCore::WebGLObject::deleteObject):
  48673. * platform/graphics/ANGLEWebKitBridge.h:
  48674. * platform/graphics/GraphicsContext3D.h:
  48675. * platform/graphics/GraphicsContext3DOpenGL.cpp: Copied from platform/graphics/mac/GraphicsContext3DMac.mm.
  48676. (WebCore::GraphicsContext3D::prepareTexture):
  48677. (WebCore::GraphicsContext3D::activeTexture):
  48678. (WebCore::GraphicsContext3D::attachShader):
  48679. (WebCore::GraphicsContext3D::bindAttribLocation):
  48680. (WebCore::GraphicsContext3D::bindBuffer):
  48681. (WebCore::GraphicsContext3D::bindFramebuffer):
  48682. (WebCore::GraphicsContext3D::bindRenderbuffer):
  48683. (WebCore::GraphicsContext3D::bindTexture):
  48684. (WebCore::GraphicsContext3D::blendColor):
  48685. (WebCore::GraphicsContext3D::blendEquation):
  48686. (WebCore::GraphicsContext3D::blendEquationSeparate):
  48687. (WebCore::GraphicsContext3D::blendFunc):
  48688. (WebCore::GraphicsContext3D::blendFuncSeparate):
  48689. (WebCore::GraphicsContext3D::bufferData):
  48690. (WebCore::GraphicsContext3D::bufferSubData):
  48691. (WebCore::GraphicsContext3D::checkFramebufferStatus):
  48692. (WebCore::GraphicsContext3D::clearColor):
  48693. (WebCore::GraphicsContext3D::clear):
  48694. (WebCore::GraphicsContext3D::clearDepth):
  48695. (WebCore::GraphicsContext3D::clearStencil):
  48696. (WebCore::GraphicsContext3D::colorMask):
  48697. (WebCore::GraphicsContext3D::compileShader):
  48698. (WebCore::GraphicsContext3D::copyTexImage2D):
  48699. (WebCore::GraphicsContext3D::copyTexSubImage2D):
  48700. (WebCore::GraphicsContext3D::cullFace):
  48701. (WebCore::GraphicsContext3D::depthFunc):
  48702. (WebCore::GraphicsContext3D::depthMask):
  48703. (WebCore::GraphicsContext3D::depthRange):
  48704. (WebCore::GraphicsContext3D::detachShader):
  48705. (WebCore::GraphicsContext3D::disable):
  48706. (WebCore::GraphicsContext3D::disableVertexAttribArray):
  48707. (WebCore::GraphicsContext3D::drawArrays):
  48708. (WebCore::GraphicsContext3D::drawElements):
  48709. (WebCore::GraphicsContext3D::enable):
  48710. (WebCore::GraphicsContext3D::enableVertexAttribArray):
  48711. (WebCore::GraphicsContext3D::finish):
  48712. (WebCore::GraphicsContext3D::flush):
  48713. (WebCore::GraphicsContext3D::framebufferRenderbuffer):
  48714. (WebCore::GraphicsContext3D::framebufferTexture2D):
  48715. (WebCore::GraphicsContext3D::frontFace):
  48716. (WebCore::GraphicsContext3D::generateMipmap):
  48717. (WebCore::GraphicsContext3D::getActiveAttrib):
  48718. (WebCore::GraphicsContext3D::getActiveUniform):
  48719. (WebCore::GraphicsContext3D::getAttachedShaders):
  48720. (WebCore::GraphicsContext3D::getAttribLocation):
  48721. (WebCore::GraphicsContext3D::getError):
  48722. (WebCore::GraphicsContext3D::getString):
  48723. (WebCore::GraphicsContext3D::hint):
  48724. (WebCore::GraphicsContext3D::isBuffer):
  48725. (WebCore::GraphicsContext3D::isEnabled):
  48726. (WebCore::GraphicsContext3D::isFramebuffer):
  48727. (WebCore::GraphicsContext3D::isProgram):
  48728. (WebCore::GraphicsContext3D::isRenderbuffer):
  48729. (WebCore::GraphicsContext3D::isShader):
  48730. (WebCore::GraphicsContext3D::isTexture):
  48731. (WebCore::GraphicsContext3D::lineWidth):
  48732. (WebCore::GraphicsContext3D::linkProgram):
  48733. (WebCore::GraphicsContext3D::pixelStorei):
  48734. (WebCore::GraphicsContext3D::polygonOffset):
  48735. (WebCore::GraphicsContext3D::readPixels):
  48736. (WebCore::GraphicsContext3D::releaseShaderCompiler):
  48737. (WebCore::GraphicsContext3D::renderbufferStorage):
  48738. (WebCore::GraphicsContext3D::sampleCoverage):
  48739. (WebCore::GraphicsContext3D::scissor):
  48740. (WebCore::GraphicsContext3D::shaderSource):
  48741. (WebCore::GraphicsContext3D::stencilFunc):
  48742. (WebCore::GraphicsContext3D::stencilFuncSeparate):
  48743. (WebCore::GraphicsContext3D::stencilMask):
  48744. (WebCore::GraphicsContext3D::stencilMaskSeparate):
  48745. (WebCore::GraphicsContext3D::stencilOp):
  48746. (WebCore::GraphicsContext3D::stencilOpSeparate):
  48747. (WebCore::GraphicsContext3D::texParameterf):
  48748. (WebCore::GraphicsContext3D::texParameteri):
  48749. (WebCore::GraphicsContext3D::uniform1f):
  48750. (WebCore::GraphicsContext3D::uniform1fv):
  48751. (WebCore::GraphicsContext3D::uniform2f):
  48752. (WebCore::GraphicsContext3D::uniform2fv):
  48753. (WebCore::GraphicsContext3D::uniform3f):
  48754. (WebCore::GraphicsContext3D::uniform3fv):
  48755. (WebCore::GraphicsContext3D::uniform4f):
  48756. (WebCore::GraphicsContext3D::uniform4fv):
  48757. (WebCore::GraphicsContext3D::uniform1i):
  48758. (WebCore::GraphicsContext3D::uniform1iv):
  48759. (WebCore::GraphicsContext3D::uniform2i):
  48760. (WebCore::GraphicsContext3D::uniform2iv):
  48761. (WebCore::GraphicsContext3D::uniform3i):
  48762. (WebCore::GraphicsContext3D::uniform3iv):
  48763. (WebCore::GraphicsContext3D::uniform4i):
  48764. (WebCore::GraphicsContext3D::uniform4iv):
  48765. (WebCore::GraphicsContext3D::uniformMatrix2fv):
  48766. (WebCore::GraphicsContext3D::uniformMatrix3fv):
  48767. (WebCore::GraphicsContext3D::uniformMatrix4fv):
  48768. (WebCore::GraphicsContext3D::useProgram):
  48769. (WebCore::GraphicsContext3D::validateProgram):
  48770. (WebCore::GraphicsContext3D::vertexAttrib1f):
  48771. (WebCore::GraphicsContext3D::vertexAttrib1fv):
  48772. (WebCore::GraphicsContext3D::vertexAttrib2f):
  48773. (WebCore::GraphicsContext3D::vertexAttrib2fv):
  48774. (WebCore::GraphicsContext3D::vertexAttrib3f):
  48775. (WebCore::GraphicsContext3D::vertexAttrib3fv):
  48776. (WebCore::GraphicsContext3D::vertexAttrib4f):
  48777. (WebCore::GraphicsContext3D::vertexAttrib4fv):
  48778. (WebCore::GraphicsContext3D::vertexAttribPointer):
  48779. (WebCore::GraphicsContext3D::viewport):
  48780. (WebCore::GraphicsContext3D::getBooleanv):
  48781. (WebCore::GraphicsContext3D::getBufferParameteriv):
  48782. (WebCore::GraphicsContext3D::getFloatv):
  48783. (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv):
  48784. (WebCore::GraphicsContext3D::getIntegerv):
  48785. (WebCore::GraphicsContext3D::getProgramiv):
  48786. (WebCore::GraphicsContext3D::getProgramInfoLog):
  48787. (WebCore::GraphicsContext3D::getRenderbufferParameteriv):
  48788. (WebCore::GraphicsContext3D::getShaderiv):
  48789. (WebCore::GraphicsContext3D::getShaderInfoLog):
  48790. (WebCore::GraphicsContext3D::getShaderSource):
  48791. (WebCore::GraphicsContext3D::getTexParameterfv):
  48792. (WebCore::GraphicsContext3D::getTexParameteriv):
  48793. (WebCore::GraphicsContext3D::getUniformfv):
  48794. (WebCore::GraphicsContext3D::getUniformiv):
  48795. (WebCore::GraphicsContext3D::getUniformLocation):
  48796. (WebCore::GraphicsContext3D::getVertexAttribfv):
  48797. (WebCore::GraphicsContext3D::getVertexAttribiv):
  48798. (WebCore::GraphicsContext3D::getVertexAttribOffset):
  48799. (WebCore::GraphicsContext3D::texImage2D):
  48800. (WebCore::GraphicsContext3D::texSubImage2D):
  48801. (WebCore::GraphicsContext3D::createBuffer):
  48802. (WebCore::GraphicsContext3D::createFramebuffer):
  48803. (WebCore::GraphicsContext3D::createProgram):
  48804. (WebCore::GraphicsContext3D::createRenderbuffer):
  48805. (WebCore::GraphicsContext3D::createShader):
  48806. (WebCore::GraphicsContext3D::createTexture):
  48807. (WebCore::GraphicsContext3D::deleteBuffer):
  48808. (WebCore::GraphicsContext3D::deleteFramebuffer):
  48809. (WebCore::GraphicsContext3D::deleteProgram):
  48810. (WebCore::GraphicsContext3D::deleteRenderbuffer):
  48811. (WebCore::GraphicsContext3D::deleteShader):
  48812. (WebCore::GraphicsContext3D::deleteTexture):
  48813. * platform/graphics/mac/GraphicsContext3DMac.mm:
  48814. (WebCore::GraphicsContext3D::ensureContext):
  48815. (WebCore::GraphicsContext3D::isErrorGeneratedOnOutOfBoundsAccesses):
  48816. 2010-09-03 James Robinson <jamesr@chromium.org>
  48817. Reviewed by Darin Fisher.
  48818. [chromium] Implement ImageBufferSkia::draw on the GPU when possible
  48819. https://bugs.webkit.org/show_bug.cgi?id=45207
  48820. When drawing from an ImageBuffer into a GraphicsContext, attempt to do the
  48821. draw in hardware when possible. This is how canvas 2d's drawImage(canvas, ...)
  48822. is implemented. Adds new API to DrawingBuffer to request a texture containing
  48823. the DrawingBuffer's current rendering results.
  48824. Test: covered fast/canvas/drawImage.html and all other tests that draw from one
  48825. 2d canvas into another.
  48826. * html/canvas/CanvasRenderingContext2D.cpp:
  48827. (WebCore::CanvasRenderingContext2D::drawImage):
  48828. * platform/graphics/chromium/DrawingBufferChromium.cpp:
  48829. (WebCore::DrawingBuffer::getRenderingResultsAsTexture):
  48830. * platform/graphics/gpu/DrawingBuffer.h:
  48831. * platform/graphics/skia/ImageBufferSkia.cpp:
  48832. (WebCore::ImageBuffer::draw):
  48833. 2010-09-03 James Robinson <jamesr@chromium.org>
  48834. Reviewed by Kenneth Russell.
  48835. [chromium] Null out Canvas2DLayerChromium's back reference to DrawingBuffer on destruction
  48836. https://bugs.webkit.org/show_bug.cgi?id=45187
  48837. Canvas2DLayerChromium keeps a back reference to a DrawingBuffer. This has to be a raw pointer
  48838. because the DrawingBuffer holds a RefPtr to the Canvas2DLayerChromium. Since the layer can
  48839. outlive the buffer, this back reference has to be explicitly cleared when the DrawingBuffer
  48840. is destroyed.
  48841. * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
  48842. (WebCore::Canvas2DLayerChromium::setDrawingBuffer):
  48843. * platform/graphics/chromium/Canvas2DLayerChromium.h:
  48844. * platform/graphics/chromium/DrawingBufferChromium.cpp:
  48845. (WebCore::DrawingBuffer::~DrawingBuffer):
  48846. 2010-09-03 Kenneth Russell <kbr@google.com>
  48847. Reviewed by Darin Fisher.
  48848. Add interval tree capable of holding plain old data (POD)
  48849. https://bugs.webkit.org/show_bug.cgi?id=45160
  48850. Adding an interval tree currently capable of holding types which
  48851. do not require their destructors to be called. POD is a slight
  48852. misnomer which will be corrected soon, hopefully by removing this
  48853. restriction.
  48854. This class is based on the augmentable property of the red/black
  48855. tree integrated under bug 45059.
  48856. Unit tests for the PODIntervalTree will be integrated separately
  48857. under bug 45161.
  48858. * WebCore.gypi:
  48859. * platform/graphics/gpu/PODInterval.h: Added.
  48860. (WebCore::PODInterval::PODInterval):
  48861. (WebCore::PODInterval::low):
  48862. (WebCore::PODInterval::high):
  48863. (WebCore::PODInterval::data):
  48864. (WebCore::PODInterval::overlaps):
  48865. (WebCore::PODInterval::operator<):
  48866. (WebCore::PODInterval::operator==):
  48867. (WebCore::PODInterval::maxHigh):
  48868. (WebCore::PODInterval::setMaxHigh):
  48869. (WebCore::PODInterval::toString):
  48870. * platform/graphics/gpu/PODIntervalTree.h: Added.
  48871. (WebCore::PODIntervalTree::PODIntervalTree):
  48872. (WebCore::PODIntervalTree::allOverlaps):
  48873. (WebCore::PODIntervalTree::createInterval):
  48874. (WebCore::PODIntervalTree::checkInvariants):
  48875. (WebCore::PODIntervalTree::init):
  48876. (WebCore::PODIntervalTree::searchForOverlapsFrom):
  48877. (WebCore::PODIntervalTree::updateNode):
  48878. (WebCore::PODIntervalTree::checkInvariantsFromNode):
  48879. (WebCore::valueToString):
  48880. 2010-09-02 Vangelis Kokkevis <vangelis@chromium.org>
  48881. Reviewed by Darin Fisher.
  48882. [chromium] Gracefully switch over to software compositing if the accelerated
  48883. compositor fails to initialize. LayerRendererChromium::create() will now return 0
  48884. if the GLES2Context passed to it is NULL or the LayerRendererChromium failed to initialize
  48885. hardware rendering.
  48886. https://bugs.webkit.org/show_bug.cgi?id=45124
  48887. Tested by forcing the creation of the gles2 context to fail and loading pages that normally trigger
  48888. the compositor.
  48889. * platform/graphics/chromium/LayerRendererChromium.cpp:
  48890. (WebCore::LayerRendererChromium::create):
  48891. (WebCore::LayerRendererChromium::LayerRendererChromium):
  48892. (WebCore::LayerRendererChromium::makeContextCurrent):
  48893. 2010-09-03 Peter Kasting <pkasting@google.com>
  48894. Reviewed by Simon Fraser.
  48895. Report correct (unzoomed) image sizes for zoomed images.
  48896. https://bugs.webkit.org/show_bug.cgi?id=42089
  48897. Test: fast/images/zoomed-img-size.html
  48898. * css/CSSPrimitiveValue.cpp: Factor rounding code out to a templatized function so it can be shared.
  48899. (WebCore::CSSPrimitiveValue::computeLengthInt):
  48900. (WebCore::CSSPrimitiveValue::computeLengthIntForLength):
  48901. (WebCore::CSSPrimitiveValue::computeLengthShort):
  48902. * css/CSSPrimitiveValue.h: Factor rounding code out to a templatized function so it can be shared.
  48903. (WebCore::roundForImpreciseConversion):
  48904. * html/HTMLImageElement.cpp: Report unzoomed size to script that queries an image's width or height.
  48905. (WebCore::HTMLImageElement::width):
  48906. (WebCore::HTMLImageElement::height):
  48907. * loader/ImageDocument.cpp: Report unzoomed size in the page title when viewing a standalone image.
  48908. (WebCore::ImageDocumentParser::finish):
  48909. * rendering/RenderObject.h: Use shared rounding code from CSSPrimitiveValue to compensate for inexactness in zoomed sizes.
  48910. (WebCore::adjustForAbsoluteZoom):
  48911. 2010-09-03 Sheriff Bot <webkit.review.bot@gmail.com>
  48912. Unreviewed, rolling out r66770.
  48913. http://trac.webkit.org/changeset/66770
  48914. https://bugs.webkit.org/show_bug.cgi?id=45200
  48915. Broke Windows in a way I can't figure out now to fix
  48916. (Requested by abarth on #webkit).
  48917. * GNUmakefile.am:
  48918. * WebCore.gypi:
  48919. * WebCore.pro:
  48920. * WebCore.vcproj/WebCore.vcproj:
  48921. * WebCore.xcodeproj/project.pbxproj:
  48922. * bindings/generic/BindingDOMWindow.h:
  48923. (WebCore::::completeURL):
  48924. * bindings/generic/BindingFrame.h: Removed.
  48925. * bindings/generic/BindingLocation.h: Removed.
  48926. * bindings/generic/GenericBinding.h:
  48927. * bindings/js/JSBinding.h: Removed.
  48928. * bindings/js/JSBindingsAllInOne.cpp:
  48929. * bindings/js/JSDOMBinding.cpp:
  48930. (WebCore::shouldAllowNavigation):
  48931. (WebCore::toLexicalFrame):
  48932. (WebCore::toDynamicFrame):
  48933. (WebCore::processingUserGesture):
  48934. (WebCore::completeURL):
  48935. * bindings/js/JSLocationCustom.cpp:
  48936. (WebCore::navigateIfAllowed):
  48937. (WebCore::JSLocation::replace):
  48938. * bindings/js/specialization/JSBindingState.cpp: Removed.
  48939. * bindings/js/specialization/JSBindingState.h: Removed.
  48940. * bindings/v8/V8Binding.h:
  48941. * bindings/v8/V8Utilities.cpp:
  48942. (WebCore::completeURL):
  48943. (WebCore::navigateIfAllowed):
  48944. * bindings/v8/custom/V8LocationCustom.cpp:
  48945. (WebCore::V8Location::replaceCallback):
  48946. * bindings/v8/specialization/V8BindingState.cpp:
  48947. * bindings/v8/specialization/V8BindingState.h:
  48948. 2010-09-03 Jian Li <jianli@chromium.org>
  48949. Reviewed by Darin Adler.
  48950. REGRESSION (r66452): Sending of multipart forms with files is broken.
  48951. https://bugs.webkit.org/show_bug.cgi?id=45159
  48952. * platform/network/FormData.cpp:
  48953. (WebCore::FormData::appendKeyValuePairItems):
  48954. 2010-09-03 Dominic Cooney <dominicc@google.com>
  48955. Reviewed by Adam Barth.
  48956. Moves location.replace bindings logic into bindings/generic and
  48957. instantiates it for JSC and V8.
  48958. https://bugs.webkit.org/show_bug.cgi?id=44891
  48959. Covered by existing location.replace tests.
  48960. * GNUmakefile.am:
  48961. * WebCore.gypi:
  48962. * WebCore.pro:
  48963. * WebCore.vcproj/WebCore.vcproj:
  48964. * WebCore.xcodeproj/project.pbxproj:
  48965. * bindings/generic/BindingDOMWindow.h:
  48966. (WebCore::::createWindow):
  48967. (WebCore::::open):
  48968. * bindings/generic/BindingFrame.h: Added.
  48969. (WebCore::::navigateIfAllowed):
  48970. * bindings/generic/BindingLocation.h: Added.
  48971. (WebCore::::replace):
  48972. * bindings/generic/GenericBinding.h:
  48973. (WebCore::completeURL):
  48974. * bindings/js/JSBinding.h: Added.
  48975. * bindings/js/JSBindingsAllInOne.cpp:
  48976. * bindings/js/JSDOMBinding.cpp:
  48977. (WebCore::shouldAllowNavigation):
  48978. (WebCore::toLexicalFrame):
  48979. (WebCore::toDynamicFrame):
  48980. (WebCore::processingUserGesture):
  48981. (WebCore::completeURL):
  48982. * bindings/js/JSLocationCustom.cpp:
  48983. (WebCore::navigateIfAllowed):
  48984. (WebCore::JSLocation::replace):
  48985. * bindings/js/specialization/JSBindingState.cpp: Added.
  48986. (WebCore::::getActiveFrame):
  48987. (WebCore::::getFirstFrame):
  48988. (WebCore::::processingUserGesture):
  48989. (WebCore::::allowsAccessFromFrame):
  48990. * bindings/js/specialization/JSBindingState.h: Added.
  48991. * bindings/v8/V8Binding.h:
  48992. * bindings/v8/V8Utilities.cpp:
  48993. (WebCore::completeURL):
  48994. (WebCore::navigateIfAllowed):
  48995. * bindings/v8/custom/V8LocationCustom.cpp:
  48996. (WebCore::V8Location::replaceCallback):
  48997. * bindings/v8/specialization/V8BindingState.cpp:
  48998. (WebCore::::allowsAccessFromFrame):
  48999. * bindings/v8/specialization/V8BindingState.h:
  49000. 2010-09-03 Dimitri Glazkov <dglazkov@chromium.org>
  49001. Reviewed by Tony Chang.
  49002. [Chromium] Make sure that the width of the menu list is always constant under layout tests.
  49003. https://bugs.webkit.org/show_bug.cgi?id=45196
  49004. * rendering/RenderThemeChromiumWin.cpp:
  49005. (WebCore::menuListButtonWidth): Added.
  49006. (WebCore::RenderThemeChromiumWin::paintMenuList): Use menuListButtonWidth instead of always
  49007. querying system metrics.
  49008. 2010-09-03 Sheriff Bot <webkit.review.bot@gmail.com>
  49009. Unreviewed, rolling out r66732.
  49010. http://trac.webkit.org/changeset/66732
  49011. https://bugs.webkit.org/show_bug.cgi?id=45195
  49012. the patch is not matched with general publish/subscribe scheme
  49013. implemented in the Inspector API (Requested by loislo on
  49014. #webkit).
  49015. * inspector/CodeGeneratorInspector.pm:
  49016. * inspector/Inspector.idl:
  49017. * inspector/InspectorDOMAgent.cpp:
  49018. (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
  49019. (WebCore::InspectorDOMAgent::getChildNodes):
  49020. * inspector/InspectorDOMAgent.h:
  49021. * inspector/front-end/DOMAgent.js:
  49022. (WebInspector.DOMAgent.prototype.getChildNodesAsync.mycallback):
  49023. (WebInspector.DOMAgent.prototype.getChildNodesAsync):
  49024. * inspector/front-end/WorkersSidebarPane.js:
  49025. (WebInspector.WorkersSidebarPane.prototype.reset):
  49026. 2010-09-03 James Robinson <jamesr@chromium.org>
  49027. [chromium] Compile fixes for 66746
  49028. * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
  49029. (WebCore::SharedGraphicsContext3D::texImage2D):
  49030. (WebCore::SharedGraphicsContext3D::texSubImage2D):
  49031. 2010-09-03 Chris Rogers <crogers@google.com>
  49032. Reviewed by Kenneth Russell.
  49033. Add AudioParam files
  49034. https://bugs.webkit.org/show_bug.cgi?id=44995
  49035. No new tests since audio API is not yet implemented.
  49036. * webaudio: Added.
  49037. * webaudio/AudioParam.h: Added.
  49038. (WebCore::AudioParam::create):
  49039. (WebCore::AudioParam::AudioParam):
  49040. (WebCore::AudioParam::value):
  49041. (WebCore::AudioParam::setValue):
  49042. (WebCore::AudioParam::name):
  49043. (WebCore::AudioParam::minValue):
  49044. (WebCore::AudioParam::maxValue):
  49045. (WebCore::AudioParam::defaultValue):
  49046. (WebCore::AudioParam::units):
  49047. (WebCore::AudioParam::smoothedValue):
  49048. (WebCore::AudioParam::smooth):
  49049. (WebCore::AudioParam::resetSmoothedValue):
  49050. (WebCore::AudioParam::setSmoothingConstant):
  49051. * webaudio/AudioParam.idl: Added.
  49052. 2010-09-03 Chris Rogers <crogers@google.com>
  49053. Reviewed by Kenneth Russell.
  49054. audio engine: add AudioChannel files
  49055. https://bugs.webkit.org/show_bug.cgi?id=44921
  49056. No new tests since audio API is not yet implemented.
  49057. * platform/audio/AudioChannel.cpp: Added.
  49058. (WebCore::AudioChannel::scale):
  49059. (WebCore::AudioChannel::copyFrom):
  49060. (WebCore::AudioChannel::copyFromRange):
  49061. (WebCore::AudioChannel::sumFrom):
  49062. (WebCore::AudioChannel::maxAbsValue):
  49063. * platform/audio/AudioChannel.h: Added.
  49064. (WebCore::AudioChannel::AudioChannel):
  49065. (WebCore::AudioChannel::set):
  49066. (WebCore::AudioChannel::length):
  49067. (WebCore::AudioChannel::data):
  49068. (WebCore::AudioChannel::zero):
  49069. 2010-09-03 Patrick Gansterer <paroga@paroga.com>
  49070. Reviewed by Adam Roben.
  49071. [WINCE] Remove usage of ce_textcodecs.h
  49072. https://bugs.webkit.org/show_bug.cgi?id=45169
  49073. ce_textcodecs.h was a non public header for (not required)
  49074. additonal codecs in the original Torch Mobile port.
  49075. * platform/text/wince/TextCodecWinCE.cpp:
  49076. (WebCore::LanguageManager::LanguageManager):
  49077. (WebCore::decode):
  49078. 2010-09-03 Chris Rogers <crogers@google.com>
  49079. Reviewed by Kenneth Russell.
  49080. Initial patch for audio engine: AudioBus and helper classes
  49081. https://bugs.webkit.org/show_bug.cgi?id=34452
  49082. No new tests since audio API is not yet implemented.
  49083. * platform/audio/AudioBus.cpp: Added.
  49084. (WebCore::AudioBus::AudioBus):
  49085. (WebCore::AudioBus::setChannelMemory):
  49086. (WebCore::AudioBus::zero):
  49087. (WebCore::AudioBus::channelByType):
  49088. (WebCore::AudioBus::topologyMatches):
  49089. (WebCore::AudioBus::createBufferFromRange):
  49090. (WebCore::AudioBus::maxAbsValue):
  49091. (WebCore::AudioBus::normalize):
  49092. (WebCore::AudioBus::scale):
  49093. (WebCore::AudioBus::copyFrom):
  49094. (WebCore::AudioBus::sumFrom):
  49095. (WebCore::AudioBus::processWithGainFromMonoStereo):
  49096. (WebCore::AudioBus::processWithGainFrom):
  49097. (WebCore::AudioBus::copyWithGainFrom):
  49098. (WebCore::AudioBus::sumWithGainFrom):
  49099. * platform/audio/AudioBus.h: Added.
  49100. (WebCore::AudioBus::numberOfChannels):
  49101. (WebCore::AudioBus::channel):
  49102. (WebCore::AudioBus::length):
  49103. (WebCore::AudioBus::sampleRate):
  49104. (WebCore::AudioBus::setSampleRate):
  49105. (WebCore::AudioBus::setGain):
  49106. (WebCore::AudioBus::gain):
  49107. (WebCore::AudioBus::reset):
  49108. (WebCore::AudioBus::AudioBus):
  49109. * platform/audio/AudioSourceProvider.h: Added.
  49110. (WebCore::AudioSourceProvider::~AudioSourceProvider):
  49111. 2010-09-03 Chris Rogers <crogers@google.com>
  49112. Reviewed by Kenneth Russell.
  49113. Add Panner files
  49114. https://bugs.webkit.org/show_bug.cgi?id=45076
  49115. No new tests since audio API is not yet implemented.
  49116. * platform/audio/Panner.cpp: Added.
  49117. (WebCore::Panner::create):
  49118. * platform/audio/Panner.h: Added.
  49119. (WebCore::Panner::~Panner):
  49120. (WebCore::Panner::panningModel):
  49121. (WebCore::Panner::Panner):
  49122. 2010-09-03 Chris Rogers <crogers@google.com>
  49123. Reviewed by Kenneth Russell.
  49124. Add AudioListener files
  49125. https://bugs.webkit.org/show_bug.cgi?id=45006
  49126. No new tests since audio API is not yet implemented.
  49127. * webaudio: Added.
  49128. * webaudio/AudioListener.cpp: Added.
  49129. (WebCore::AudioListener::AudioListener):
  49130. * webaudio/AudioListener.h: Added.
  49131. (WebCore::AudioListener::create):
  49132. (WebCore::AudioListener::setPosition):
  49133. (WebCore::AudioListener::position):
  49134. (WebCore::AudioListener::setOrientation):
  49135. (WebCore::AudioListener::orientation):
  49136. (WebCore::AudioListener::setUpVector):
  49137. (WebCore::AudioListener::upVector):
  49138. (WebCore::AudioListener::setVelocity):
  49139. (WebCore::AudioListener::velocity):
  49140. (WebCore::AudioListener::setDopplerFactor):
  49141. (WebCore::AudioListener::dopplerFactor):
  49142. (WebCore::AudioListener::setSpeedOfSound):
  49143. (WebCore::AudioListener::speedOfSound):
  49144. * webaudio/AudioListener.idl: Added.
  49145. 2010-09-03 Chris Rogers <crogers@google.com>
  49146. Unreviewed
  49147. Add WebCore/webaudio and WebCore/platform/audio/mac directories in preparation for landing reviewed patches
  49148. https://bugs.webkit.org/show_bug.cgi?id=45185
  49149. * platform/audio/mac: Added.
  49150. * webaudio: Added.
  49151. 2010-09-03 James Robinson <jamesr@chromium.org>
  49152. Reviewed by Chris Marrin.
  49153. Multiple accelerated 2D canvases should be able to use the same GraphicsContext3D
  49154. https://bugs.webkit.org/show_bug.cgi?id=44926
  49155. This allows many accelerated 2d canvases to render using a single underlying GraphicsContext3D.
  49156. It introduces a new class SharedGraphicsContext3D that manages several callers. This class could
  49157. also cache the current state to avoid issuing redundant calls, although in this first cut it doesn't.
  49158. The SharedGraphicsContext3D is provided through the ChromeClient so that its lifetime can be tied to that
  49159. of the platform-specific compositor infrastructure.
  49160. Accelerated 2d canvases maintain a reference to a SharedGraphicsContext3D and have ownership of a CanvasFramebuffer,
  49161. which represents the canvas's rendering target. The compositing layer for an accelerated 2d canvas is
  49162. aware only of the canvas's CanvasFramebuffer. This means that WebGL and 2d canvases are no longer treated
  49163. as the same time of layer by the compositor.
  49164. Covered by existing canvas tests.
  49165. * WebCore.gypi:
  49166. * html/canvas/CanvasRenderingContext.cpp:
  49167. * html/canvas/CanvasRenderingContext.h:
  49168. (WebCore::CanvasRenderingContext::paintsIntoCanvasBuffer):
  49169. (WebCore::CanvasRenderingContext::platformLayer):
  49170. * html/canvas/CanvasRenderingContext2D.cpp:
  49171. (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
  49172. (WebCore::CanvasRenderingContext2D::paintsIntoCanvasBuffer):
  49173. (WebCore::CanvasRenderingContext2D::reset):
  49174. (WebCore::CanvasRenderingContext2D::didDraw):
  49175. (WebCore::CanvasRenderingContext2D::platformLayer):
  49176. * html/canvas/CanvasRenderingContext2D.h:
  49177. * html/canvas/WebGLRenderingContext.cpp:
  49178. (WebCore::WebGLRenderingContext::paintsIntoCanvasBuffer):
  49179. * html/canvas/WebGLRenderingContext.h:
  49180. (WebCore::WebGLRenderingContext::graphicsContext3D):
  49181. (WebCore::WebGLRenderingContext::platformLayer):
  49182. * loader/EmptyClients.h:
  49183. (WebCore::EmptyChromeClient::attachRootGraphicsLayer):
  49184. (WebCore::EmptyChromeClient::setNeedsOneShotDrawingSynchronization):
  49185. (WebCore::EmptyChromeClient::scheduleCompositingLayerSync):
  49186. * page/ChromeClient.h:
  49187. (WebCore::ChromeClient::getSharedGraphicsContext3D):
  49188. * platform/graphics/GraphicsContext.cpp:
  49189. (WebCore::GraphicsContext::setSharedGraphicsContext3D):
  49190. (WebCore::GraphicsContext::syncSoftwareCanvas):
  49191. * platform/graphics/GraphicsContext.h:
  49192. * platform/graphics/chromium/Canvas2DLayerChromium.cpp: Added.
  49193. (WebCore::Canvas2DLayerChromium::create):
  49194. (WebCore::Canvas2DLayerChromium::Canvas2DLayerChromium):
  49195. (WebCore::Canvas2DLayerChromium::~Canvas2DLayerChromium):
  49196. (WebCore::Canvas2DLayerChromium::updateContents):
  49197. (WebCore::Canvas2DLayerChromium::setTextureChanged):
  49198. (WebCore::Canvas2DLayerChromium::textureId):
  49199. * platform/graphics/chromium/Canvas2DLayerChromium.h: Added.
  49200. (WebCore::Canvas2DLayerChromium::drawsContent):
  49201. * platform/graphics/chromium/CanvasLayerChromium.cpp:
  49202. (WebCore::CanvasLayerChromium::CanvasLayerChromium):
  49203. (WebCore::CanvasLayerChromium::~CanvasLayerChromium):
  49204. (WebCore::CanvasLayerChromium::draw):
  49205. * platform/graphics/chromium/CanvasLayerChromium.h:
  49206. * platform/graphics/chromium/DrawingBufferChromium.cpp: Added.
  49207. (WebCore::generateColorTexture):
  49208. (WebCore::DrawingBuffer::DrawingBuffer):
  49209. (WebCore::DrawingBuffer::~DrawingBuffer):
  49210. (WebCore::DrawingBuffer::publishToPlatformLayer):
  49211. (WebCore::DrawingBuffer::reset):
  49212. (WebCore::DrawingBuffer::platformLayer):
  49213. * platform/graphics/chromium/GLES2Canvas.cpp:
  49214. (WebCore::GLES2Canvas::GLES2Canvas):
  49215. (WebCore::GLES2Canvas::~GLES2Canvas):
  49216. (WebCore::GLES2Canvas::bindFramebuffer):
  49217. (WebCore::GLES2Canvas::clearRect):
  49218. (WebCore::GLES2Canvas::fillRect):
  49219. (WebCore::GLES2Canvas::drawTexturedRect):
  49220. (WebCore::GLES2Canvas::drawTexturedRectTile):
  49221. (WebCore::GLES2Canvas::drawQuad):
  49222. (WebCore::GLES2Canvas::createTexture):
  49223. (WebCore::GLES2Canvas::getTexture):
  49224. * platform/graphics/chromium/GLES2Canvas.h:
  49225. (WebCore::GLES2Canvas::context):
  49226. (WebCore::GLES2Canvas::drawingBuffer):
  49227. * platform/graphics/chromium/GraphicsLayerChromium.cpp:
  49228. (WebCore::GraphicsLayerChromium::setContentsToCanvas):
  49229. * platform/graphics/chromium/GraphicsLayerChromium.h:
  49230. * platform/graphics/chromium/WebGLLayerChromium.cpp: Added.
  49231. (WebCore::WebGLLayerChromium::create):
  49232. (WebCore::WebGLLayerChromium::WebGLLayerChromium):
  49233. (WebCore::WebGLLayerChromium::updateContents):
  49234. (WebCore::WebGLLayerChromium::setContext):
  49235. * platform/graphics/chromium/WebGLLayerChromium.h: Added.
  49236. (WebCore::WebGLLayerChromium::drawsContent):
  49237. * platform/graphics/gpu/DrawingBuffer.cpp: Added.
  49238. (WebCore::DrawingBuffer::create):
  49239. (WebCore::DrawingBuffer::bind):
  49240. (WebCore::DrawingBuffer::setWillPublishCallback):
  49241. * platform/graphics/gpu/DrawingBuffer.h: Added.
  49242. (WebCore::DrawingBuffer::size):
  49243. * platform/graphics/gpu/SharedGraphicsContext3D.cpp: Added.
  49244. (WebCore::SharedGraphicsContext3D::create):
  49245. (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
  49246. (WebCore::SharedGraphicsContext3D::~SharedGraphicsContext3D):
  49247. (WebCore::SharedGraphicsContext3D::makeContextCurrent):
  49248. (WebCore::SharedGraphicsContext3D::scissor):
  49249. (WebCore::SharedGraphicsContext3D::enable):
  49250. (WebCore::SharedGraphicsContext3D::disable):
  49251. (WebCore::SharedGraphicsContext3D::clearColor):
  49252. (WebCore::SharedGraphicsContext3D::clear):
  49253. (WebCore::SharedGraphicsContext3D::drawArrays):
  49254. (WebCore::SharedGraphicsContext3D::getError):
  49255. (WebCore::SharedGraphicsContext3D::getIntegerv):
  49256. (WebCore::SharedGraphicsContext3D::createFramebuffer):
  49257. (WebCore::SharedGraphicsContext3D::createTexture):
  49258. (WebCore::SharedGraphicsContext3D::deleteFramebuffer):
  49259. (WebCore::SharedGraphicsContext3D::deleteTexture):
  49260. (WebCore::SharedGraphicsContext3D::framebufferTexture2D):
  49261. (WebCore::SharedGraphicsContext3D::texParameteri):
  49262. (WebCore::SharedGraphicsContext3D::texImage2D):
  49263. (WebCore::SharedGraphicsContext3D::texSubImage2D):
  49264. (WebCore::SharedGraphicsContext3D::readPixels):
  49265. (WebCore::SharedGraphicsContext3D::supportsBGRA):
  49266. (WebCore::SharedGraphicsContext3D::getTexture):
  49267. (WebCore::SharedGraphicsContext3D::applyCompositeOperator):
  49268. (WebCore::SharedGraphicsContext3D::useQuadVertices):
  49269. (WebCore::SharedGraphicsContext3D::setActiveTexture):
  49270. (WebCore::SharedGraphicsContext3D::bindTexture):
  49271. (WebCore::SharedGraphicsContext3D::useFillSolidProgram):
  49272. (WebCore::SharedGraphicsContext3D::useTextureProgram):
  49273. (WebCore::SharedGraphicsContext3D::bindFramebuffer):
  49274. (WebCore::SharedGraphicsContext3D::setViewport):
  49275. (WebCore::SharedGraphicsContext3D::paintsIntoCanvasBuffer):
  49276. * platform/graphics/gpu/SharedGraphicsContext3D.h: Added.
  49277. * platform/graphics/gpu/Texture.cpp:
  49278. * platform/graphics/skia/GraphicsContextSkia.cpp:
  49279. (WebCore::GraphicsContext::syncSoftwareCanvas):
  49280. (WebCore::GraphicsContext::setSharedGraphicsContext3D):
  49281. * platform/graphics/skia/ImageSkia.cpp:
  49282. * platform/graphics/skia/PlatformContextSkia.cpp:
  49283. (WebCore::PlatformContextSkia::~PlatformContextSkia):
  49284. (WebCore::WillPublishCallbackImpl::create):
  49285. (WebCore::WillPublishCallbackImpl::willPublish):
  49286. (WebCore::WillPublishCallbackImpl::WillPublishCallbackImpl):
  49287. (WebCore::PlatformContextSkia::setSharedGraphicsContext3D):
  49288. (WebCore::PlatformContextSkia::uploadSoftwareToHardware):
  49289. (WebCore::PlatformContextSkia::readbackHardwareToSoftware):
  49290. * platform/graphics/skia/PlatformContextSkia.h:
  49291. * rendering/RenderLayerBacking.cpp:
  49292. (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
  49293. 2010-09-03 Chris Rogers <crogers@google.com>
  49294. Reviewed by Kenneth Russell.
  49295. Add audio distance effect files
  49296. https://bugs.webkit.org/show_bug.cgi?id=44705
  49297. No new tests since audio API is not yet implemented.
  49298. * platform/audio/Distance.cpp: Added.
  49299. (WebCore::DistanceEffect::DistanceEffect):
  49300. (WebCore::DistanceEffect::gain):
  49301. (WebCore::DistanceEffect::linearGain):
  49302. (WebCore::DistanceEffect::inverseGain):
  49303. (WebCore::DistanceEffect::exponentialGain):
  49304. * platform/audio/Distance.h: Added.
  49305. (WebCore::DistanceEffect::model):
  49306. (WebCore::DistanceEffect::setModel):
  49307. (WebCore::DistanceEffect::setRefDistance):
  49308. (WebCore::DistanceEffect::setMaxDistance):
  49309. (WebCore::DistanceEffect::setRolloffFactor):
  49310. (WebCore::DistanceEffect::refDistance):
  49311. (WebCore::DistanceEffect::maxDistance):
  49312. (WebCore::DistanceEffect::rolloffFactor):
  49313. 2010-09-03 Johnny Ding <jnd@chromium.org>
  49314. Reviewed by Adam Barth.
  49315. Save the gesture state to track the user gesture state across async form submission.
  49316. https://bugs.webkit.org/show_bug.cgi?id=44969
  49317. fast/events/popup-blocked-to-post-blank.html can cover the test in WebKit.
  49318. A UI test will be added in chromium to address chromium's bug.
  49319. * loader/RedirectScheduler.cpp:
  49320. (WebCore::ScheduledFormSubmission::ScheduledFormSubmission):
  49321. (WebCore::ScheduledFormSubmission::fire):
  49322. (WebCore::RedirectScheduler::scheduleFormSubmission):
  49323. 2010-09-03 Dan Bernstein <mitz@apple.com>
  49324. Reviewed by Anders Carlsson.
  49325. <rdar://problem/8392655> REGRESSION (r57215): Decomposed diacritics render incorrectly when preceded by stacked diacritics
  49326. https://bugs.webkit.org/show_bug.cgi?id=45182
  49327. Test: fast/text/decomposed-after-stacked-diacritics.html
  49328. * platform/graphics/Font.cpp:
  49329. (WebCore::Font::codePath): Do not bail out if the run contains stacked diacritics, since
  49330. it may also contain characters that require the complex text code path.
  49331. 2010-09-03 Mikhail Naganov <mnaganov@chromium.org>
  49332. Reviewed by Yury Semikhatsky.
  49333. Web Inspector: Cleanup after r66117 - extract heap snapshot
  49334. view styles into a dedicated .css
  49335. https://bugs.webkit.org/show_bug.cgi?id=45178
  49336. * WebCore.gypi:
  49337. * WebCore.vcproj/WebCore.vcproj:
  49338. * inspector/front-end/WebKit.qrc:
  49339. * inspector/front-end/heapProfiler.css: Added.
  49340. (.heap-snapshot-sidebar-tree-item .icon):
  49341. (.heap-snapshot-sidebar-tree-item.small .icon):
  49342. (.heap-snapshot-view):
  49343. (.heap-snapshot-view.visible):
  49344. (.heap-snapshot-view .data-grid):
  49345. (.heap-snapshot-view .data-grid th.count-column):
  49346. (.heap-snapshot-view .data-grid td.count-column):
  49347. (.heap-snapshot-view .data-grid th.size-column):
  49348. (.heap-snapshot-view .data-grid td.size-column):
  49349. (.heap-snapshot-view .data-grid th.countDelta-column):
  49350. (.heap-snapshot-view .data-grid td.countDelta-column):
  49351. (.heap-snapshot-view .data-grid th.sizeDelta-column):
  49352. (.heap-snapshot-view .data-grid td.sizeDelta-column):
  49353. (#heap-snapshot-summary-container):
  49354. (.heap-snapshot-summary):
  49355. (.heap-snapshot-summary canvas.summary-graph):
  49356. (.heap-snapshot-summary-label):
  49357. * inspector/front-end/inspector.css:
  49358. * inspector/front-end/inspector.html:
  49359. 2010-09-03 Zaheer Ahmad <zaheer.mot@gmail.com>
  49360. Reviewed by Darin Adler.
  49361. [GTK] compilation issue with JSTimeRanges when video turned off
  49362. https://bugs.webkit.org/show_bug.cgi?id=44249
  49363. Move the JSTimeRanges outside ENABLE_VIDEO in GNUMakefile.am
  49364. * WebCore/GNUMakefile.am
  49365. 2010-09-03 Ilya Tikhonovsky <loislo@chromium.org>
  49366. Reviewed by Yury Semikhatsky.
  49367. Web Inspector: cleanup inspector api. getChildNodes should return array of child nodes as an output value.
  49368. The current implementation of the inspector api has some unnecessary complexity.
  49369. As example WebInspector is requesting child nodes of a node by getChildNodes
  49370. but DOM agent is actually pushing the child nodes via setChildNodes event call and
  49371. send back an empty response message.
  49372. https://bugs.webkit.org/show_bug.cgi?id=45172
  49373. * inspector/CodeGeneratorInspector.pm:
  49374. * inspector/Inspector.idl:
  49375. * inspector/InspectorDOMAgent.cpp:
  49376. (WebCore::InspectorDOMAgent::getChildNodesArray):
  49377. (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
  49378. (WebCore::InspectorDOMAgent::getChildNodes):
  49379. * inspector/InspectorDOMAgent.h:
  49380. * inspector/front-end/DOMAgent.js:
  49381. (WebInspector.DOMAgent.prototype.getChildNodesAsync.mycallback):
  49382. (WebInspector.DOMAgent.prototype.getChildNodesAsync):
  49383. * inspector/front-end/WorkersSidebarPane.js:
  49384. (WebInspector.WorkersSidebarPane.prototype.reset):
  49385. 2010-09-03 Nikolas Zimmermann <nzimmermann@rim.com>
  49386. Reviewed by Dirk Schulze.
  49387. SVG atlas map slider doesn't work properly
  49388. https://bugs.webkit.org/show_bug.cgi?id=45107
  49389. SVG 1.1 2nd edition relaxes hit testing rules. The outermost <svg> should react
  49390. to mouse events, in standalone and compound documents, if the mouse location is
  49391. within the intrinsic boundaries of the <svg> element.
  49392. Tests: svg/custom/mouse-move-on-svg-container-standalone.svg
  49393. svg/custom/mouse-move-on-svg-container.xhtml
  49394. svg/custom/mouse-move-on-svg-root-standalone.svg
  49395. svg/custom/mouse-move-on-svg-root.xhtml
  49396. * rendering/RenderSVGRoot.cpp:
  49397. (WebCore::RenderSVGRoot::nodeAtPoint):
  49398. 2010-09-03 Pavel Podivilov <podivilov@chromium.org>
  49399. Reviewed by Yury Semikhatsky.
  49400. Web Inspector: provide more information to front-end when breaking on DOM event
  49401. https://bugs.webkit.org/show_bug.cgi?id=44679
  49402. * dom/ContainerNode.cpp:
  49403. (WebCore::ContainerNode::insertBefore):
  49404. (WebCore::ContainerNode::parserInsertBefore):
  49405. (WebCore::ContainerNode::replaceChild):
  49406. (WebCore::ContainerNode::appendChild):
  49407. (WebCore::ContainerNode::parserAddChild):
  49408. (WebCore::notifyChildInserted):
  49409. (WebCore::dispatchChildRemovalEvents):
  49410. * dom/Element.cpp:
  49411. (WebCore::Element::setAttribute):
  49412. (WebCore::Element::removeAttribute):
  49413. * inspector/Inspector.idl:
  49414. * inspector/InspectorController.cpp:
  49415. (WebCore::InspectorController::willInsertDOMNodeImpl):
  49416. (WebCore::InspectorController::didInsertDOMNodeImpl):
  49417. (WebCore::InspectorController::willRemoveDOMNodeImpl):
  49418. (WebCore::InspectorController::didRemoveDOMNodeImpl):
  49419. (WebCore::InspectorController::willModifyDOMAttrImpl):
  49420. (WebCore::InspectorController::didModifyDOMAttrImpl):
  49421. * inspector/InspectorController.h:
  49422. (WebCore::InspectorController::willInsertDOMNode):
  49423. (WebCore::InspectorController::didInsertDOMNode):
  49424. (WebCore::InspectorController::willRemoveDOMNode):
  49425. (WebCore::InspectorController::willModifyDOMAttr):
  49426. (WebCore::InspectorController::didModifyDOMAttr):
  49427. (WebCore::InspectorController::inspectorControllerForNode):
  49428. * inspector/InspectorDOMAgent.cpp:
  49429. (WebCore::InspectorDOMAgent::~InspectorDOMAgent):
  49430. (WebCore::InspectorDOMAgent::shouldBreakOnNodeInsertion):
  49431. (WebCore::InspectorDOMAgent::shouldBreakOnNodeRemoval):
  49432. (WebCore::InspectorDOMAgent::shouldBreakOnAttributeModification):
  49433. (WebCore::InspectorDOMAgent::didInsertDOMNode):
  49434. (WebCore::InspectorDOMAgent::didRemoveDOMNode):
  49435. (WebCore::InspectorDOMAgent::didModifyDOMAttr):
  49436. (WebCore::InspectorDOMAgent::createBreakpoint):
  49437. * inspector/InspectorDOMAgent.h:
  49438. * inspector/InspectorDebuggerAgent.cpp:
  49439. (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
  49440. (WebCore::InspectorDebuggerAgent::~InspectorDebuggerAgent):
  49441. (WebCore::InspectorDebuggerAgent::didPause):
  49442. (WebCore::InspectorDebuggerAgent::breakProgram):
  49443. * inspector/InspectorDebuggerAgent.h:
  49444. * inspector/InspectorValues.h:
  49445. (WebCore::InspectorValue::isNull):
  49446. * inspector/front-end/BreakpointsSidebarPane.js:
  49447. (WebInspector.BreakpointItem):
  49448. (WebInspector.BreakpointItem.prototype._enableChanged):
  49449. * inspector/front-end/Script.js:
  49450. (WebInspector.Script.prototype.get linesCount):
  49451. * inspector/front-end/inspector.js:
  49452. (WebInspector.pausedScript):
  49453. 2010-08-31 Jeremy Orlow <jorlow@chromium.org>
  49454. Reviewed by Steve Block.
  49455. IDBCursor.continue() should reuse the .openCursor's IDBRequest object
  49456. https://bugs.webkit.org/show_bug.cgi?id=44953
  49457. This is to match the spec. This requires a modification to IDBRequest so
  49458. that multiple events can be queued up.
  49459. Note that the initial state for IDBRequest was removed from the spec.
  49460. Test: modified existing test to verify new behavior.
  49461. * storage/IDBAny.cpp:
  49462. (WebCore::IDBAny::createInvalid):
  49463. (WebCore::IDBAny::createNull):
  49464. (WebCore::IDBAny::setNull):
  49465. * storage/IDBAny.h:
  49466. (WebCore::IDBAny::create):
  49467. * storage/IDBCursor.cpp:
  49468. (WebCore::IDBCursor::IDBCursor):
  49469. (WebCore::IDBCursor::continueFunction):
  49470. * storage/IDBCursor.h:
  49471. (WebCore::IDBCursor::create):
  49472. * storage/IDBCursor.idl:
  49473. * storage/IDBRequest.cpp:
  49474. (WebCore::IDBRequest::IDBRequest):
  49475. (WebCore::IDBRequest::~IDBRequest):
  49476. (WebCore::IDBRequest::resetReadyState):
  49477. (WebCore::IDBRequest::onError):
  49478. (WebCore::IDBRequest::onSuccess):
  49479. (WebCore::IDBRequest::abort):
  49480. (WebCore::IDBRequest::timerFired):
  49481. (WebCore::IDBRequest::scheduleEvent):
  49482. * storage/IDBRequest.h:
  49483. * storage/IDBRequest.idl:
  49484. 2010-09-03 Bharathwaaj Srinivasan <bharathwaaj.s@gmail.com>
  49485. Reviewed by Xan Lopez.
  49486. Initialize keyboard events before passing plugins.
  49487. https://bugs.webkit.org/show_bug.cgi?id=44771
  49488. No new tests needed since this is a trivial fix.
  49489. * plugins/gtk/PluginViewGtk.cpp:
  49490. (WebCore::PluginView::handleKeyboardEvent):
  49491. 2010-09-03 Yury Semikhatsky <yurys@chromium.org>
  49492. Unreviewed. Fix Qt compilation.
  49493. * html/HTMLEmbedElement.cpp:
  49494. (WebCore::HTMLEmbedElement::parametersForPlugin):
  49495. 2010-09-03 Hironori Bono <hbono@chromium.org>
  49496. Reviewed by Kent Tamura.
  49497. Adds textInputController.hasSpellingMarker() to avoid using pixel tests for spellchecking tests
  49498. and implements it for Mac.
  49499. https://bugs.webkit.org/show_bug.cgi?id=41832
  49500. Tests: editing/spelling/spelling-contenteditable.html
  49501. editing/spelling/spelling-textarea.html
  49502. * WebCore.exp.in: Exported symbols used by [WebFrame hasSpellingMarker:length:].
  49503. 2010-09-02 Yury Semikhatsky <yurys@chromium.org>
  49504. Reviewed by Pavel Feldman.
  49505. REGRESSION: Crash occurs at objc_msgSend when closing a window that is displaying the web inspector
  49506. https://bugs.webkit.org/show_bug.cgi?id=44230
  49507. * inspector/Inspector.idl:
  49508. * inspector/InspectorController.cpp:
  49509. (WebCore::InspectorController::inspectedPageDestroyed):
  49510. (WebCore::InspectorController::close):
  49511. * inspector/InspectorFrontendClient.h:
  49512. * inspector/InspectorFrontendHost.cpp:
  49513. (WebCore::InspectorFrontendHost::disconnectFromBackend): don't try to notify InspectorController
  49514. that frontend closes if InspectorController triggered the action.
  49515. * inspector/InspectorFrontendHost.h:
  49516. * inspector/InspectorFrontendHost.idl:
  49517. * inspector/front-end/InspectorFrontendHostStub.js:
  49518. (.WebInspector.InspectorFrontendHostStub.prototype.disconnectFromBackend):
  49519. * inspector/front-end/inspector.js:
  49520. (WebInspector.disconnectFromBackend):
  49521. 2010-09-03 Girish Ramakrishnan <girish@forwardbias.in>
  49522. Reviewed-by Simon Hausmann.
  49523. Passing a 32-bit depth X pixmap to NPAPI windowless plugins is too inefficient.
  49524. Instead, pass a X Pixmap that has same depth as the screen depth since graphics
  49525. operations are optimized for this depth.
  49526. https://bugs.webkit.org/show_bug.cgi?id=45167
  49527. * plugins/PluginPackage.cpp:
  49528. (WebCore::PluginPackage::determineQuirks):
  49529. 2010-09-02 Kwang Yul Seo <skyul@company100.net>
  49530. Reviewed by Kent Tamura.
  49531. Add ENABLE(DATABASE) guard to DatabaseAuthorizer.cpp
  49532. https://bugs.webkit.org/show_bug.cgi?id=45152
  49533. DatabaseAuthorizer is used only with ENABLE(DATABASE).
  49534. * storage/DatabaseAuthorizer.cpp:
  49535. 2010-09-02 Pavel Podivilov <podivilov@chromium.org>
  49536. Reviewed by Yury Semikhatsky.
  49537. Web Inspector: persist DOM breakpoints between page reloads
  49538. https://bugs.webkit.org/show_bug.cgi?id=44837
  49539. * inspector/front-end/BreakpointsSidebarPane.js:
  49540. (WebInspector.DOMBreakpointItem):
  49541. * inspector/front-end/DOMAgent.js:
  49542. (WebInspector.DOMNode.prototype.path):
  49543. (WebInspector.DOMNode.prototype.setBreakpoint):
  49544. (WebInspector.DOMNode.prototype.hasBreakpoint):
  49545. (WebInspector.DOMNode.prototype.removeBreakpoint):
  49546. (WebInspector.DOMNode.prototype.removeBreakpoints):
  49547. (WebInspector.DOMAgent.prototype._setDocument):
  49548. (WebInspector.DOMAgent.prototype._childNodeRemoved):
  49549. (WebInspector.DOMAgent.prototype._removeBreakpoints):
  49550. (WebInspector.DOMBreakpointManager):
  49551. (WebInspector.DOMBreakpointManager.prototype.setBreakpoint):
  49552. (WebInspector.DOMBreakpointManager.prototype.removeBreakpointsForNode):
  49553. (WebInspector.DOMBreakpointManager.prototype._breakpointRemoved):
  49554. (WebInspector.DOMBreakpointManager.prototype.restoreBreakpoints.restoreBreakpointsForNode):
  49555. (WebInspector.DOMBreakpointManager.prototype.restoreBreakpoints):
  49556. (WebInspector.DOMBreakpoint):
  49557. (WebInspector.DOMBreakpoint.prototype.get nodeId):
  49558. (WebInspector.DOMBreakpoint.prototype.get type):
  49559. (WebInspector.DOMBreakpoint.prototype.set enabled):
  49560. (WebInspector.DOMBreakpoint.prototype.remove):
  49561. * inspector/front-end/ElementsPanel.js:
  49562. (WebInspector.ElementsPanel.prototype.reset):
  49563. (WebInspector.ElementsPanel.prototype.setDocument):
  49564. * inspector/front-end/ElementsTreeOutline.js:
  49565. (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
  49566. * inspector/front-end/SourceFrame.js:
  49567. (WebInspector.SourceFrame.prototype._showPopup.showObjectPopup):
  49568. 2010-09-02 Eric Seidel <eric@webkit.org>
  49569. Reviewed by Dimitri Glazkov.
  49570. Move updateWidget into FrameView from RenderEmbeddedObject
  49571. https://bugs.webkit.org/show_bug.cgi?id=45065
  49572. I also made updateWidget() virtual on HTMLPlugInImageElement.
  49573. I'm not yet sure that updateWidget belongs on HTMLElement since
  49574. I'm not sure that HTMLMediaElement's use of the updateWidget
  49575. infrastructure is correct.
  49576. I also got rid of the strange !m_replacementText.isEmpty() checks
  49577. by making a pluginCrashedOrWasMissing() call which seems to embody
  49578. the idea behind that check and hides the screwy details.
  49579. I noticed a couple methods on HTMLPlugInImageElement were public
  49580. which did not need to be. Fixed.
  49581. No functional change, thus no tests.
  49582. * html/HTMLEmbedElement.h:
  49583. * html/HTMLObjectElement.h:
  49584. * html/HTMLPlugInImageElement.cpp:
  49585. (WebCore::HTMLPlugInImageElement::updateWidgetIfNecessary):
  49586. * html/HTMLPlugInImageElement.h:
  49587. (WebCore::HTMLPlugInImageElement::serviceType):
  49588. (WebCore::HTMLPlugInImageElement::url):
  49589. * page/FrameView.cpp:
  49590. (WebCore::FrameView::updateWidget):
  49591. (WebCore::FrameView::updateWidgets):
  49592. * page/FrameView.h:
  49593. * rendering/RenderEmbeddedObject.cpp:
  49594. (WebCore::RenderEmbeddedObject::pluginCrashedOrWasMissing):
  49595. (WebCore::RenderEmbeddedObject::paint):
  49596. (WebCore::RenderEmbeddedObject::paintReplaced):
  49597. * rendering/RenderEmbeddedObject.h:
  49598. 2010-09-02 Eric Seidel <eric@webkit.org>
  49599. Reviewed by Dimitri Glazkov.
  49600. Move updateWidget implementations into the DOM
  49601. https://bugs.webkit.org/show_bug.cgi?id=45058
  49602. Unfortunately it's not yet possible to share an updateWidget
  49603. implementation between <embed> and <object>. That would amount to
  49604. (positive) functional changes for <embed> which I'd will separate
  49605. into a later patch. I will also have to untangle <object>'s <param>
  49606. walk from its url/serviceType calculations.
  49607. However after this patch it's slap-you-across-the-face obvious that
  49608. RenderEmbeddedObject::updateWidget was the wrong place for this code.
  49609. RenderEmbeddedObject::updateWidget still exists, but only as a
  49610. pseudo-virtual-method dispatcher. Unless we add updateWidget() to
  49611. HTMLElement, we won't be able to use real virtual dispatch.
  49612. I may need to consider making "having a widget" a has-a relationship
  49613. with some sort of WidgetContainer object which Media and Plugin can
  49614. share. Or its also possible that Media's use of the widget code here
  49615. is just wrong. Certainly now that updateWidget was moved into HTMLMediaElement
  49616. it becomes obvious that HTMLMediaElement has duplicate code for updating widgets.
  49617. No functional changes, thus no tests.
  49618. * html/HTMLEmbedElement.cpp:
  49619. (WebCore::HTMLEmbedElement::updateWidget):
  49620. * html/HTMLEmbedElement.h:
  49621. * html/HTMLMediaElement.cpp:
  49622. (WebCore::HTMLMediaElement::updateWidget):
  49623. * html/HTMLMediaElement.h:
  49624. * html/HTMLObjectElement.cpp:
  49625. (WebCore::HTMLObjectElement::updateWidget):
  49626. * html/HTMLObjectElement.h:
  49627. (WebCore::HTMLObjectElement::useFallbackContent):
  49628. * html/HTMLPlugInImageElement.h:
  49629. (WebCore::HTMLPlugInImageElement::needsWidgetUpdate):
  49630. (WebCore::HTMLPlugInImageElement::setNeedsWidgetUpdate):
  49631. * loader/FrameLoader.cpp:
  49632. * rendering/RenderEmbeddedObject.cpp:
  49633. (WebCore::RenderEmbeddedObject::updateWidget):
  49634. 2010-09-02 Eric Seidel <eric@webkit.org>
  49635. Reviewed by Dimitri Glazkov.
  49636. Move more code from RenderEmbeddedObject into the DOM
  49637. https://bugs.webkit.org/show_bug.cgi?id=45055
  49638. No logic changes here, just taking the code which
  49639. I ripped out of RenderEmbeddedObject::updateWidget
  49640. into static methods before and moving it into
  49641. the applicable DOM classes.
  49642. HTMLObjectElement::parametersForPlugin does too much
  49643. but in order to fix it I may need to add a PluginParameters
  49644. class so we can ask things about the parameters. <object>
  49645. needs to get multiple bits of information out of its parameters
  49646. array. Right now it does it all in one walk. In order to share
  49647. code with HTMLEmbedElement, we need the "generate the params array"
  49648. code to be separate from the "make advanced <object> specific decision
  49649. from the params array". But that will need to be in a later patch.
  49650. No functional changes, thus no tests.
  49651. * html/HTMLEmbedElement.cpp:
  49652. (WebCore::HTMLEmbedElement::parametersForPlugin):
  49653. * html/HTMLEmbedElement.h:
  49654. * html/HTMLObjectElement.cpp:
  49655. (WebCore::createClassIdToTypeMap):
  49656. (WebCore::serviceTypeForClassId):
  49657. (WebCore::mapDataParamToSrc):
  49658. (WebCore::HTMLObjectElement::parametersForPlugin):
  49659. (WebCore::HTMLObjectElement::hasFallbackContent):
  49660. * html/HTMLObjectElement.h:
  49661. * html/HTMLPlugInImageElement.cpp:
  49662. (WebCore::HTMLPlugInImageElement::allowedToLoadFrameURL):
  49663. (WebCore::HTMLPlugInImageElement::wouldLoadAsNetscapePlugin):
  49664. (WebCore::HTMLPlugInImageElement::detach):
  49665. (WebCore::HTMLPlugInImageElement::updateWidgetIfNecessary):
  49666. (WebCore::HTMLPlugInImageElement::updateWidgetCallback):
  49667. * html/HTMLPlugInImageElement.h:
  49668. * rendering/RenderEmbeddedObject.cpp:
  49669. (WebCore::updateWidgetForObjectElement):
  49670. (WebCore::updateWidgetForEmbedElement):
  49671. (WebCore::RenderEmbeddedObject::updateWidget):
  49672. 2010-09-02 François Sausset <sausset@gmail.com>
  49673. Reviewed by Darin Adler.
  49674. MathML mo element should render "hyphen-minus" as "minus sign" (Unicode glyph names).
  49675. https://bugs.webkit.org/show_bug.cgi?id=43629
  49676. Test: mathml/presentation/mo.xhtml
  49677. * mathml/RenderMathMLOperator.cpp:
  49678. (WebCore::RenderMathMLOperator::RenderMathMLOperator):
  49679. (WebCore::RenderMathMLOperator::updateFromElement):
  49680. * mathml/RenderMathMLOperator.h:
  49681. (WebCore::convertHyphenMinusToMinusSign):
  49682. * platform/text/CharacterNames.h:
  49683. 2010-09-02 Kenneth Russell <kbr@google.com>
  49684. Reviewed by Darin Fisher.
  49685. Add red-black tree capable of holding plain old data (POD)
  49686. https://bugs.webkit.org/show_bug.cgi?id=45059
  49687. Adding an augmentable red-black tree capable of holding Plain Old
  49688. Data (POD), or classes bottoming out into only POD, and an
  49689. associated PODArena. Note that the PODArena will be used by other
  49690. classes to allocate temporary structures, which is why it is not
  49691. just an implementation detail of the red-black tree.
  49692. These classes are being placed under WebCore/platform/graphics/gpu
  49693. for the time being. If they are generalized to hold even data
  49694. types which internally perform dynamic memory allocation, we may
  49695. consider moving them to WTF in the future.
  49696. Unit tests for the PODRedBlackTree will be integrated separately
  49697. under bug 45060.
  49698. * WebCore.gypi:
  49699. * platform/graphics/gpu/PODArena.h: Added.
  49700. (WebCore::PODArena::Allocator::~Allocator):
  49701. (WebCore::PODArena::FastMallocAllocator::create):
  49702. (WebCore::PODArena::FastMallocAllocator::allocate):
  49703. (WebCore::PODArena::FastMallocAllocator::free):
  49704. (WebCore::PODArena::FastMallocAllocator::FastMallocAllocator):
  49705. (WebCore::PODArena::create):
  49706. (WebCore::PODArena::allocateObject):
  49707. (WebCore::PODArena::~PODArena):
  49708. (WebCore::PODArena::PODArena):
  49709. (WebCore::PODArena::minAlignment):
  49710. (WebCore::PODArena::roundUp):
  49711. (WebCore::PODArena::Chunk::Chunk):
  49712. (WebCore::PODArena::Chunk::~Chunk):
  49713. (WebCore::PODArena::Chunk::allocate):
  49714. * platform/graphics/gpu/PODRedBlackTree.h: Added.
  49715. (WebCore::PODRedBlackTree::Visitor::~Visitor):
  49716. (WebCore::PODRedBlackTree::PODRedBlackTree):
  49717. (WebCore::PODRedBlackTree::~PODRedBlackTree):
  49718. (WebCore::PODRedBlackTree::add):
  49719. (WebCore::PODRedBlackTree::remove):
  49720. (WebCore::PODRedBlackTree::contains):
  49721. (WebCore::PODRedBlackTree::visitInorder):
  49722. (WebCore::PODRedBlackTree::size):
  49723. (WebCore::PODRedBlackTree::setNeedsFullOrderingComparisons):
  49724. (WebCore::PODRedBlackTree::checkInvariants):
  49725. (WebCore::PODRedBlackTree::dump):
  49726. (WebCore::PODRedBlackTree::setVerboseDebugging):
  49727. (WebCore::PODRedBlackTree::Node::Node):
  49728. (WebCore::PODRedBlackTree::Node::~Node):
  49729. (WebCore::PODRedBlackTree::Node::color):
  49730. (WebCore::PODRedBlackTree::Node::setColor):
  49731. (WebCore::PODRedBlackTree::Node::data):
  49732. (WebCore::PODRedBlackTree::Node::copyFrom):
  49733. (WebCore::PODRedBlackTree::Node::left):
  49734. (WebCore::PODRedBlackTree::Node::setLeft):
  49735. (WebCore::PODRedBlackTree::Node::right):
  49736. (WebCore::PODRedBlackTree::Node::setRight):
  49737. (WebCore::PODRedBlackTree::Node::parent):
  49738. (WebCore::PODRedBlackTree::Node::setParent):
  49739. (WebCore::PODRedBlackTree::root):
  49740. (WebCore::PODRedBlackTree::updateNode):
  49741. (WebCore::PODRedBlackTree::treeSearch):
  49742. (WebCore::PODRedBlackTree::treeSearchNormal):
  49743. (WebCore::PODRedBlackTree::treeSearchFullComparisons):
  49744. (WebCore::PODRedBlackTree::treeInsert):
  49745. (WebCore::PODRedBlackTree::treeSuccessor):
  49746. (WebCore::PODRedBlackTree::treeMinimum):
  49747. (WebCore::PODRedBlackTree::propagateUpdates):
  49748. (WebCore::PODRedBlackTree::leftRotate):
  49749. (WebCore::PODRedBlackTree::rightRotate):
  49750. (WebCore::PODRedBlackTree::insertNode):
  49751. (WebCore::PODRedBlackTree::deleteFixup):
  49752. (WebCore::PODRedBlackTree::deleteNode):
  49753. (WebCore::PODRedBlackTree::visitInorderImpl):
  49754. (WebCore::PODRedBlackTree::Counter::Counter):
  49755. (WebCore::PODRedBlackTree::Counter::visit):
  49756. (WebCore::PODRedBlackTree::Counter::count):
  49757. (WebCore::PODRedBlackTree::checkInvariantsFromNode):
  49758. (WebCore::PODRedBlackTree::logIfVerbose):
  49759. (WebCore::PODRedBlackTree::dumpFromNode):
  49760. 2010-09-02 Rafael Antognolli <antognolli@profusion.mobi>
  49761. Reviewed by Martin Robinson.
  49762. [Cairo] Remove glib dependency (caused by use of GOwnPtr)
  49763. https://bugs.webkit.org/show_bug.cgi?id=45053
  49764. Use OwnPtr instead of GOwnPtr to keep track of Fc* references
  49765. in FontCacheCairo.cpp.
  49766. No features added, so no new tests.
  49767. * CMakeListsEfl.txt: Updating build system to look for GOwnPtrCairo.*
  49768. * GNUmakefile.am: Ditto.
  49769. * platform/graphics/cairo/FontCacheCairo.cpp: Using OwnPtr instead of GOwnPtr.
  49770. (WebCore::FontCache::createFontPlatformData):
  49771. * platform/graphics/cairo/GOwnPtrCairo.cpp: Removed.
  49772. * platform/graphics/cairo/GOwnPtrCairo.h: Removed.
  49773. * platform/graphics/cairo/OwnPtrCairo.cpp: Added.
  49774. (WTF::FcPattern):
  49775. (WTF::FcObjectSet):
  49776. (WTF::FcFontSet):
  49777. * platform/graphics/cairo/OwnPtrCairo.h: Added.
  49778. 2010-09-02 Kinuko Yasuda <kinuko@chromium.org>
  49779. Unreviewed, updating binding-tests expectations (for changeset 66521).
  49780. * bindings/scripts/test/V8/V8TestObj.cpp:
  49781. (WebCore::TestObjInternal::stringAttrAttrSetter):
  49782. (WebCore::TestObjInternal::reflectedStringAttrAttrSetter):
  49783. (WebCore::TestObjInternal::reflectedURLAttrAttrSetter):
  49784. (WebCore::TestObjInternal::reflectedNonEmptyURLAttrAttrSetter):
  49785. (WebCore::TestObjInternal::reflectedCustomURLAttrAttrSetter):
  49786. (WebCore::TestObjInternal::reflectedCustomNonEmptyURLAttrAttrSetter):
  49787. (WebCore::TestObjInternal::stringAttrWithGetterExceptionAttrSetter):
  49788. (WebCore::TestObjInternal::stringAttrWithSetterExceptionAttrSetter):
  49789. 2010-09-02 Adam Langley <agl@chromium.org>
  49790. Reviewed by Adam Barth.
  49791. [chromium] fix memory corruption in Khmer rendering.
  49792. https://bugs.webkit.org/show_bug.cgi?id=44960
  49793. Test: fast/text/khmer-crash.html
  49794. * platform/graphics/chromium/FontLinux.cpp:
  49795. (WebCore::TextRunWalker::shapeGlyphs):
  49796. The Khmer shaper has a bug where it would request larger output
  49797. buffers, but request a zero increase in size. Because of this we add
  49798. one to the requested size.
  49799. (WebCore::TextRunWalker::setGlyphXPositions):
  49800. The Khmer shaper is outputing cluster logs which suggest that some
  49801. output glyphs appear from nowhere (i.e. have no input codepoints). I
  49802. don't know Khmer, so maybe that's correct, but it broke the
  49803. assumptions of this code, causing a read out-of-bounds.
  49804. * platform/graphics/chromium/HarfbuzzSkia.cpp:
  49805. (WebCore::stringToGlyphs):
  49806. The Harfbuzz interfaces aren't documented, but it appears that the
  49807. output array to stringToGlyphs isn't sized and that Harfbuzz expects
  49808. us to detect when the input is too long.
  49809. 2010-09-02 Adam Roben <aroben@apple.com>
  49810. Fill the scroll corner with white when shouldPaintCustomScrollbars is
  49811. false
  49812. Previously we were only filling with white when
  49813. shouldPaintCustomScrollbars was true but the ChromeClient didn't paint
  49814. any custom scrollbars.
  49815. Reviewed by Sam Weinig.
  49816. * platform/ScrollbarThemeComposite.cpp:
  49817. (WebCore::ScrollbarThemeComposite::paintScrollCorner):
  49818. 2010-09-02 Sheriff Bot <webkit.review.bot@gmail.com>
  49819. Unreviewed, rolling out r66671.
  49820. http://trac.webkit.org/changeset/66671
  49821. https://bugs.webkit.org/show_bug.cgi?id=45115
  49822. http/tests/misc/redirect-to-about-blank.html is failing on
  49823. several platforms (Requested by japhet on #webkit).
  49824. * WebCore.exp.in:
  49825. * dom/Document.cpp:
  49826. (WebCore::Document::Document):
  49827. (WebCore::Document::updateURLForPushOrReplaceState):
  49828. * loader/DocumentWriter.cpp:
  49829. (WebCore::DocumentWriter::begin):
  49830. * loader/FrameLoader.cpp:
  49831. (WebCore::FrameLoader::iconURL):
  49832. (WebCore::FrameLoader::didOpenURL):
  49833. (WebCore::FrameLoader::didExplicitOpen):
  49834. (WebCore::FrameLoader::receivedFirstData):
  49835. (WebCore::FrameLoader::setURL):
  49836. (WebCore::FrameLoader::startIconLoader):
  49837. (WebCore::FrameLoader::commitIconURLToIconDatabase):
  49838. (WebCore::FrameLoader::finishedParsing):
  49839. (WebCore::FrameLoader::checkIfDisplayInsecureContent):
  49840. (WebCore::FrameLoader::checkIfRunInsecureContent):
  49841. (WebCore::FrameLoader::updateFirstPartyForCookies):
  49842. (WebCore::FrameLoader::loadInSameDocument):
  49843. (WebCore::FrameLoader::commitProvisionalLoad):
  49844. (WebCore::FrameLoader::open):
  49845. (WebCore::FrameLoader::shouldScrollToAnchor):
  49846. * loader/FrameLoader.h:
  49847. (WebCore::FrameLoader::url):
  49848. 2010-09-01 Zhenyao Mo <zmo@google.com>
  49849. Reviewed by Kenneth Russell.
  49850. Roll ANGLE under webkit to r402
  49851. https://bugs.webkit.org/show_bug.cgi?id=45004
  49852. * platform/graphics/mac/GraphicsContext3DMac.mm: Update the code to use newer ANGLE interface.
  49853. (WebCore::GraphicsContext3D::GraphicsContext3D):
  49854. 2010-09-02 Ilya Tikhonovsky <loislo@chromium.org>
  49855. Reviewed by Yury Semikhatsky.
  49856. WebInspector: Timeline instrumentation code can crash browser.
  49857. Steps:
  49858. 1) load the site
  49859. 2) open inspector
  49860. 3) start timeline recording
  49861. 4) reload inspected page
  49862. got NPE
  49863. https://bugs.webkit.org/show_bug.cgi?id=45098
  49864. * loader/ResourceLoader.cpp:
  49865. (WebCore::ResourceLoader::didReceiveResponse):
  49866. (WebCore::ResourceLoader::didReceiveData):
  49867. 2010-09-02 Nate Chapin <japhet@chromium.org>
  49868. Reviewed by Adam Barth.
  49869. Remove m_URL from FrameLoader and instead depend on Document's url.
  49870. FrameLoader::url() will be removed in a later patch.
  49871. http://bugs.webkit.org/show_bug.cgi?id=41165
  49872. No new tests, since this predominantly a refactor. Updating
  49873. fast/dom/early-frame-url.html.
  49874. * WebCore.exp.in:
  49875. * dom/Document.cpp:
  49876. (WebCore::Document::Document):
  49877. (WebCore::Document::updateURLForPushOrReplaceState):
  49878. * loader/DocumentWriter.cpp:
  49879. (WebCore::DocumentWriter::begin):
  49880. * loader/FrameLoader.cpp:
  49881. (WebCore::FrameLoader::iconURL):
  49882. (WebCore::FrameLoader::didOpenURL):
  49883. (WebCore::FrameLoader::didExplicitOpen):
  49884. (WebCore::FrameLoader::receivedFirstData):
  49885. (WebCore::FrameLoader::url):
  49886. (WebCore::FrameLoader::setOutgoingReferrer):
  49887. (WebCore::FrameLoader::startIconLoader):
  49888. (WebCore::FrameLoader::commitIconURLToIconDatabase):
  49889. (WebCore::FrameLoader::finishedParsing):
  49890. (WebCore::FrameLoader::checkIfDisplayInsecureContent):
  49891. (WebCore::FrameLoader::checkIfRunInsecureContent):
  49892. (WebCore::FrameLoader::updateFirstPartyForCookies):
  49893. (WebCore::FrameLoader::loadInSameDocument):
  49894. (WebCore::FrameLoader::commitProvisionalLoad):
  49895. (WebCore::FrameLoader::open):
  49896. (WebCore::FrameLoader::shouldScrollToAnchor):
  49897. * loader/FrameLoader.h:
  49898. 2010-09-01 Tony Gentilcore <tonyg@chromium.org>
  49899. Reviewed by Adam Barth.
  49900. Support <script defer> as specified by HTML5
  49901. https://bugs.webkit.org/show_bug.cgi?id=40934
  49902. Tests: fast/dom/HTMLScriptElement/defer-double-defer-write.html
  49903. fast/dom/HTMLScriptElement/defer-double-write.html
  49904. fast/dom/HTMLScriptElement/defer-inline-script.html
  49905. fast/dom/HTMLScriptElement/defer-onbeforeload.html
  49906. fast/dom/HTMLScriptElement/defer-script-invalid-url.html
  49907. fast/dom/HTMLScriptElement/defer-write.html
  49908. fast/dom/HTMLScriptElement/two-defer-writes.html
  49909. http/tests/misc/script-defer-after-slow-stylesheet.html
  49910. http/tests/misc/script-defer.html
  49911. * dom/Document.cpp:
  49912. (WebCore::Document::open): Allow implicit open for writes() while executing deferred scripts.
  49913. * dom/DocumentParser.cpp:
  49914. (WebCore::DocumentParser::DocumentParser):
  49915. (WebCore::DocumentParser::startParsing):
  49916. (WebCore::DocumentParser::prepareToStopParsing): If called when stopped or detached, it shouldn't reset to stopping.
  49917. (WebCore::DocumentParser::stopParsing):
  49918. (WebCore::DocumentParser::detach):
  49919. * dom/DocumentParser.h:
  49920. (WebCore::DocumentParser::isParsing):
  49921. (WebCore::DocumentParser::isActive):
  49922. (WebCore::DocumentParser::isStopping):
  49923. (WebCore::DocumentParser::isDetached):
  49924. * dom/RawDataDocumentParser.h:
  49925. (WebCore::RawDataDocumentParser::finish):
  49926. * dom/XMLDocumentParser.cpp:
  49927. (WebCore::XMLDocumentParser::append):
  49928. (WebCore::XMLDocumentParser::exitText):
  49929. * dom/XMLDocumentParserLibxml2.cpp:
  49930. (WebCore::XMLDocumentParser::doWrite):
  49931. (WebCore::XMLDocumentParser::startElementNs):
  49932. (WebCore::XMLDocumentParser::endElementNs):
  49933. (WebCore::XMLDocumentParser::characters):
  49934. (WebCore::XMLDocumentParser::error):
  49935. (WebCore::XMLDocumentParser::processingInstruction):
  49936. (WebCore::XMLDocumentParser::cdataBlock):
  49937. (WebCore::XMLDocumentParser::comment):
  49938. (WebCore::XMLDocumentParser::internalSubset):
  49939. (WebCore::XMLDocumentParser::initializeParserContext):
  49940. (WebCore::XMLDocumentParser::doEnd):
  49941. * html/parser/HTMLDocumentParser.cpp:
  49942. (WebCore::HTMLDocumentParser::prepareToStopParsing):
  49943. (WebCore::HTMLDocumentParser::pumpTokenizerIfPossible):
  49944. (WebCore::HTMLDocumentParser::pumpTokenizer):
  49945. (WebCore::HTMLDocumentParser::insert):
  49946. (WebCore::HTMLDocumentParser::append):
  49947. (WebCore::HTMLDocumentParser::end):
  49948. (WebCore::HTMLDocumentParser::attemptToEnd):
  49949. (WebCore::HTMLDocumentParser::endIfDelayed):
  49950. (WebCore::HTMLDocumentParser::notifyFinished):
  49951. * html/parser/HTMLDocumentParser.h:
  49952. * html/parser/HTMLScriptRunner.cpp:
  49953. (WebCore::HTMLScriptRunner::~HTMLScriptRunner):
  49954. (WebCore::HTMLScriptRunner::executeParsingBlockingScript):
  49955. (WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent):
  49956. (WebCore::HTMLScriptRunner::executeScriptsWaitingForParsing):
  49957. (WebCore::HTMLScriptRunner::requestDeferredScript):
  49958. (WebCore::HTMLScriptRunner::runScript):
  49959. * html/parser/HTMLScriptRunner.h:
  49960. * loader/ImageDocument.cpp:
  49961. (WebCore::ImageDocumentParser::finish):
  49962. 2010-09-02 Andrey Kosyakov <caseq@chromium.org>
  49963. Reviewed by Yury Semikhatsky.
  49964. Web Inspector: HAR converter fails on POST requests with non-form content type
  49965. https://bugs.webkit.org/show_bug.cgi?id=45109
  49966. * inspector/front-end/HAREntry.js:
  49967. (WebInspector.HAREntry.prototype._buildPostData):
  49968. 2010-09-02 Andreas Kling <andreas.kling@nokia.com>
  49969. Rubber-stamped by Simon Hausmann.
  49970. [Qt] REGRESSION(r62898): tst_QWebFrame crashing
  49971. https://bugs.webkit.org/show_bug.cgi?id=43039
  49972. Rolling out the offending change <http://trac.webkit.org/changeset/62898>
  49973. * bridge/qt/qt_instance.cpp:
  49974. (JSC::Bindings::QtInstance::markAggregate):
  49975. 2010-09-02 Anton Muhin <antonm@chromium.org>
  49976. Reviewed by Tony Chang.
  49977. Fix indentation.
  49978. https://bugs.webkit.org/show_bug.cgi?id=44678
  49979. * bindings/scripts/CodeGeneratorV8.pm:
  49980. 2010-09-02 Sheriff Bot <webkit.review.bot@gmail.com>
  49981. Unreviewed, rolling out r66655.
  49982. http://trac.webkit.org/changeset/66655
  49983. https://bugs.webkit.org/show_bug.cgi?id=45104
  49984. broke some editing tests (Requested by kling on #webkit).
  49985. * page/DOMSelection.cpp:
  49986. (WebCore::DOMSelection::collapse):
  49987. (WebCore::DOMSelection::selectAllChildren):
  49988. 2010-09-02 Sheriff Bot <webkit.review.bot@gmail.com>
  49989. Unreviewed, rolling out r66649.
  49990. http://trac.webkit.org/changeset/66649
  49991. https://bugs.webkit.org/show_bug.cgi?id=45103
  49992. It broke ~2000 tests on Qt bot (Requested by Ossy on #webkit).
  49993. * dom/Document.cpp:
  49994. (WebCore::Document::open):
  49995. * dom/DocumentParser.cpp:
  49996. (WebCore::DocumentParser::DocumentParser):
  49997. (WebCore::DocumentParser::detach):
  49998. * dom/DocumentParser.h:
  49999. (WebCore::DocumentParser::isDetached):
  50000. (WebCore::DocumentParser::stopParsing):
  50001. * dom/RawDataDocumentParser.h:
  50002. (WebCore::RawDataDocumentParser::finish):
  50003. * dom/XMLDocumentParser.cpp:
  50004. (WebCore::XMLDocumentParser::append):
  50005. (WebCore::XMLDocumentParser::exitText):
  50006. * dom/XMLDocumentParserLibxml2.cpp:
  50007. (WebCore::XMLDocumentParser::doWrite):
  50008. (WebCore::XMLDocumentParser::startElementNs):
  50009. (WebCore::XMLDocumentParser::endElementNs):
  50010. (WebCore::XMLDocumentParser::characters):
  50011. (WebCore::XMLDocumentParser::error):
  50012. (WebCore::XMLDocumentParser::processingInstruction):
  50013. (WebCore::XMLDocumentParser::cdataBlock):
  50014. (WebCore::XMLDocumentParser::comment):
  50015. (WebCore::XMLDocumentParser::internalSubset):
  50016. (WebCore::XMLDocumentParser::initializeParserContext):
  50017. (WebCore::XMLDocumentParser::doEnd):
  50018. * dom/XMLDocumentParserQt.cpp:
  50019. (WebCore::XMLDocumentParser::initializeParserContext):
  50020. (WebCore::XMLDocumentParser::doEnd):
  50021. (WebCore::XMLDocumentParser::parse):
  50022. * html/parser/HTMLDocumentParser.cpp:
  50023. (WebCore::HTMLDocumentParser::pumpTokenizerIfPossible):
  50024. (WebCore::HTMLDocumentParser::pumpTokenizer):
  50025. (WebCore::HTMLDocumentParser::insert):
  50026. (WebCore::HTMLDocumentParser::append):
  50027. (WebCore::HTMLDocumentParser::end):
  50028. (WebCore::HTMLDocumentParser::attemptToEnd):
  50029. (WebCore::HTMLDocumentParser::endIfDelayed):
  50030. (WebCore::HTMLDocumentParser::notifyFinished):
  50031. * html/parser/HTMLDocumentParser.h:
  50032. * html/parser/HTMLScriptRunner.cpp:
  50033. (WebCore::HTMLScriptRunner::~HTMLScriptRunner):
  50034. (WebCore::HTMLScriptRunner::executeParsingBlockingScript):
  50035. (WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent):
  50036. (WebCore::HTMLScriptRunner::runScript):
  50037. * html/parser/HTMLScriptRunner.h:
  50038. * loader/ImageDocument.cpp:
  50039. (WebCore::ImageDocumentParser::finish):
  50040. 2010-09-02 Eric Seidel <eric@webkit.org>
  50041. Reviewed by Dimitri Glazkov.
  50042. Share more code between HTMLObjectElement and HTMLEmbedElement
  50043. https://bugs.webkit.org/show_bug.cgi?id=45054
  50044. This pushes more of HTMLObjectElement code down into
  50045. HTMLPlugInImageElement so that it can be shared with
  50046. HTMLEmbedElement.
  50047. The most notable changes are:
  50048. - HTMLEmbedElement now "delays" updating the widget until
  50049. all of its children are parsed (this matches HTMLObjectElement).
  50050. However, since HTMLEmbedElement can't have children, this is actually
  50051. no delay.
  50052. - useFallbackContent is now virtual, allowing HTMLEmbedElement and
  50053. HTMLObjectElement to share the same code paths, and the <embed>
  50054. case to just always return false for useFallbackContent().
  50055. This is the final (fourth) part of this change.
  50056. No functional change, thus no tests.
  50057. * html/HTMLEmbedElement.cpp:
  50058. * html/HTMLEmbedElement.h:
  50059. * html/HTMLObjectElement.cpp:
  50060. (WebCore::HTMLObjectElement::rendererIsNeeded):
  50061. * html/HTMLObjectElement.h:
  50062. * html/HTMLPlugInImageElement.cpp:
  50063. (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
  50064. (WebCore::HTMLPlugInImageElement::recalcStyle):
  50065. (WebCore::HTMLPlugInImageElement::attach):
  50066. (WebCore::HTMLPlugInImageElement::detach):
  50067. (WebCore::HTMLPlugInImageElement::finishParsingChildren):
  50068. * html/HTMLPlugInImageElement.h:
  50069. 2010-09-02 Adam Barth <abarth@webkit.org>
  50070. Reviewed by Eric Seidel.
  50071. Move takeAllChildrenFrom to ContainerNode
  50072. https://bugs.webkit.org/show_bug.cgi?id=45066
  50073. We're going to reuse this method for XMLDocumentLoader, so it's better
  50074. to put it in a more general location.
  50075. * dom/ContainerNode.cpp:
  50076. (WebCore::ContainerNode::takeAllChildrenFrom):
  50077. * dom/ContainerNode.h:
  50078. * html/parser/HTMLTreeBuilder.cpp:
  50079. (WebCore::HTMLTreeBuilder::FragmentParsingContext::finished):
  50080. 2010-09-01 Andreas Kling <andreas.kling@nokia.com>
  50081. Reviewed by Darin Adler.
  50082. DOM Selection: collapse() and selectAllChildren() should throw WRONG_DOCUMENT_ERR if node belongs to other document
  50083. https://bugs.webkit.org/show_bug.cgi?id=44595
  50084. Spec links:
  50085. http://www.whatwg.org/specs/web-apps/current-work/#dom-selection-collapse
  50086. http://www.whatwg.org/specs/web-apps/current-work/#dom-selection-selectallchildren
  50087. Test: fast/dom/Selection/wrong-document-err.html
  50088. * page/DOMSelection.cpp:
  50089. (WebCore::DOMSelection::collapse):
  50090. (WebCore::DOMSelection::selectAllChildren):
  50091. 2010-09-02 Eric Seidel <eric@webkit.org>
  50092. Reviewed by Dimitri Glazkov.
  50093. Share more code between HTMLObjectElement and HTMLEmbedElement
  50094. https://bugs.webkit.org/show_bug.cgi?id=45054
  50095. This pushes more of HTMLObjectElement code down into
  50096. HTMLPlugInImageElement so that it can be shared with HTMLEmbedElement.
  50097. This patch was originally written in one piece and reviewed by Dimitri.
  50098. I'm landing it as four separate changes for easier readability and less
  50099. chance of regression.
  50100. No functional change, thus no tests.
  50101. * html/HTMLEmbedElement.cpp:
  50102. (WebCore::HTMLEmbedElement::HTMLEmbedElement):
  50103. (WebCore::HTMLEmbedElement::create):
  50104. * html/HTMLEmbedElement.h:
  50105. * html/HTMLObjectElement.cpp:
  50106. (WebCore::HTMLObjectElement::HTMLObjectElement):
  50107. * html/HTMLObjectElement.h:
  50108. * html/HTMLPlugInImageElement.cpp:
  50109. (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
  50110. (WebCore::HTMLPlugInImageElement::detach):
  50111. (WebCore::HTMLPlugInImageElement::finishParsingChildren):
  50112. * html/HTMLPlugInImageElement.h:
  50113. * html/HTMLTagNames.in:
  50114. 2010-09-02 Eric Seidel <eric@webkit.org>
  50115. Reviewed by Dimitri Glazkov.
  50116. Share more code between HTMLObjectElement and HTMLEmbedElement
  50117. https://bugs.webkit.org/show_bug.cgi?id=45054
  50118. This pushes more of HTMLObjectElement code down into
  50119. HTMLPlugInImageElement so that it can be shared with HTMLEmbedElement.
  50120. I also moved a little code from HTMLPluginElement to HTMLPlugInImageElement
  50121. since HTMLAppletElement does not need to share this same widget update logic.
  50122. This is a small correction from the previous change.
  50123. This patch was originally written in one piece and reviewed by Dimitri.
  50124. I'm landing it as three separate changes for easier readability and less
  50125. chance of regression.
  50126. No functional change, thus no tests.
  50127. * html/HTMLEmbedElement.cpp:
  50128. * html/HTMLEmbedElement.h:
  50129. * html/HTMLObjectElement.cpp:
  50130. (WebCore::HTMLObjectElement::attach):
  50131. (WebCore::HTMLObjectElement::finishParsingChildren):
  50132. (WebCore::HTMLObjectElement::detach):
  50133. (WebCore::HTMLObjectElement::recalcStyle):
  50134. (WebCore::HTMLObjectElement::childrenChanged):
  50135. (WebCore::HTMLObjectElement::renderFallbackContent):
  50136. * html/HTMLObjectElement.h:
  50137. (WebCore::HTMLObjectElement::useFallbackContent):
  50138. * html/HTMLPlugInElement.cpp:
  50139. * html/HTMLPlugInElement.h:
  50140. * html/HTMLPlugInImageElement.cpp:
  50141. (WebCore::HTMLPlugInImageElement::createRenderer):
  50142. (WebCore::HTMLPlugInImageElement::updateWidget):
  50143. (WebCore::HTMLPlugInImageElement::updateWidgetCallback):
  50144. * html/HTMLPlugInImageElement.h:
  50145. (WebCore::HTMLPlugInImageElement::canLazyAttach):
  50146. (WebCore::HTMLPlugInImageElement::useFallbackContent):
  50147. 2010-09-02 Jer Noble <jer.noble@apple.com>
  50148. Reviewed by Darin Adler.
  50149. WebKit should not accept PDFs as video.
  50150. https://bugs.webkit.org/show_bug.cgi?id=45013
  50151. The code in MediaPlayerPrivate::createQTMovie has been re-arranged.
  50152. First, the component disabling is done only once. In 64-bit QTKit will
  50153. store the list of disabled components and disable them once QTKitServer
  50154. starts, so there is no need to disable them repeatedly. However,
  50155. because of a bug in 64-bit QTKit, additional requests of the exact same
  50156. component description will be ignored if QTKitServer is not yet running.
  50157. To work around this, we must provide the exact component flags for each
  50158. eat/PDF and grip/PDF component we wish to disable.
  50159. * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
  50160. (WebCore::disableComponentsOnce): Added.
  50161. (WebCore::MediaPlayerPrivate::createQTMovie): Moved the component
  50162. disabling code into disableComponentsOnce.
  50163. 2010-09-02 Philippe Normand <pnormand@igalia.com>
  50164. Unreviewed, GTK build fix.
  50165. * platform/graphics/gstreamer/GStreamerGWorld.cpp:
  50166. (WebCore::GStreamerGWorld::enterFullscreen):
  50167. 2010-09-02 Eric Seidel <eric@webkit.org>
  50168. Reviewed by Dimitri Glazkov.
  50169. Share more code between HTMLObjectElement and HTMLEmbedElement
  50170. https://bugs.webkit.org/show_bug.cgi?id=45054
  50171. This pushes more of HTMLObjectElement code down into
  50172. HTMLPlugInImageElement so that it can be shared with HTMLEmbedElement.
  50173. I also moved a little code from HTMLPluginElement to HTMLPlugInImageElement
  50174. since HTMLAppletElement does not need to share this same widget update logic.
  50175. This is a small correction from the previous change.
  50176. This patch was originally written in one piece and reviewed by Dimitri.
  50177. I'm landing it as two separate changes for easier readability and less
  50178. chance of regression.
  50179. No functional change, thus no tests.
  50180. * html/HTMLEmbedElement.cpp:
  50181. (WebCore::HTMLEmbedElement::HTMLEmbedElement):
  50182. (WebCore::HTMLEmbedElement::mapToEntry):
  50183. (WebCore::HTMLEmbedElement::parseMappedAttribute):
  50184. (WebCore::HTMLEmbedElement::rendererIsNeeded):
  50185. (WebCore::HTMLEmbedElement::attach):
  50186. (WebCore::HTMLEmbedElement::updateWidget):
  50187. (WebCore::HTMLEmbedElement::insertedIntoDocument):
  50188. (WebCore::HTMLEmbedElement::removedFromDocument):
  50189. (WebCore::HTMLEmbedElement::attributeChanged):
  50190. * html/HTMLEmbedElement.h:
  50191. * html/HTMLObjectElement.cpp:
  50192. (WebCore::HTMLObjectElement::HTMLObjectElement):
  50193. (WebCore::HTMLObjectElement::parseMappedAttribute):
  50194. (WebCore::HTMLObjectElement::rendererIsNeeded):
  50195. (WebCore::HTMLObjectElement::attach):
  50196. (WebCore::HTMLObjectElement::updateWidget):
  50197. (WebCore::HTMLObjectElement::finishParsingChildren):
  50198. (WebCore::HTMLObjectElement::detach):
  50199. (WebCore::HTMLObjectElement::insertedIntoDocument):
  50200. (WebCore::HTMLObjectElement::removedFromDocument):
  50201. (WebCore::HTMLObjectElement::recalcStyle):
  50202. (WebCore::HTMLObjectElement::childrenChanged):
  50203. (WebCore::HTMLObjectElement::renderFallbackContent):
  50204. * html/HTMLObjectElement.h:
  50205. * html/HTMLPlugInElement.cpp:
  50206. * html/HTMLPlugInElement.h:
  50207. * html/HTMLPlugInImageElement.cpp:
  50208. (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
  50209. (WebCore::HTMLPlugInImageElement::renderEmbeddedObject):
  50210. * html/HTMLPlugInImageElement.h:
  50211. (WebCore::HTMLPlugInImageElement::needsWidgetUpdate):
  50212. (WebCore::HTMLPlugInImageElement::setNeedsWidgetUpdate):
  50213. * loader/SubframeLoader.cpp:
  50214. (WebCore::SubframeLoader::requestObject):
  50215. (WebCore::SubframeLoader::loadPlugin):
  50216. * loader/SubframeLoader.h:
  50217. * rendering/RenderEmbeddedObject.cpp:
  50218. (WebCore::updateWidgetForObjectElement):
  50219. (WebCore::updateWidgetForEmbedElement):
  50220. 2010-09-02 Tony Gentilcore <tonyg@chromium.org>
  50221. Reviewed by Adam Barth.
  50222. Support <script defer> as specified by HTML5
  50223. https://bugs.webkit.org/show_bug.cgi?id=40934
  50224. Tests: fast/dom/HTMLScriptElement/defer-double-defer-write.html
  50225. fast/dom/HTMLScriptElement/defer-double-write.html
  50226. fast/dom/HTMLScriptElement/defer-inline-script.html
  50227. fast/dom/HTMLScriptElement/defer-onbeforeload.html
  50228. fast/dom/HTMLScriptElement/defer-script-invalid-url.html
  50229. fast/dom/HTMLScriptElement/defer-write.html
  50230. fast/dom/HTMLScriptElement/two-defer-writes.html
  50231. http/tests/misc/script-defer-after-slow-stylesheet.html
  50232. http/tests/misc/script-defer.html
  50233. * dom/Document.cpp:
  50234. (WebCore::Document::open): Allow implicit open for writes() while executing deferred scripts.
  50235. * dom/DocumentParser.cpp:
  50236. (WebCore::DocumentParser::DocumentParser):
  50237. (WebCore::DocumentParser::startParsing):
  50238. (WebCore::DocumentParser::prepareToStopParsing): If called when stopped or detached, it shouldn't reset to stopping.
  50239. (WebCore::DocumentParser::stopParsing):
  50240. (WebCore::DocumentParser::detach):
  50241. * dom/DocumentParser.h:
  50242. (WebCore::DocumentParser::isParsing):
  50243. (WebCore::DocumentParser::isActive):
  50244. (WebCore::DocumentParser::isStopping):
  50245. (WebCore::DocumentParser::isDetached):
  50246. * dom/RawDataDocumentParser.h:
  50247. (WebCore::RawDataDocumentParser::finish):
  50248. * dom/XMLDocumentParser.cpp:
  50249. (WebCore::XMLDocumentParser::append):
  50250. (WebCore::XMLDocumentParser::exitText):
  50251. * dom/XMLDocumentParserLibxml2.cpp:
  50252. (WebCore::XMLDocumentParser::doWrite):
  50253. (WebCore::XMLDocumentParser::startElementNs):
  50254. (WebCore::XMLDocumentParser::endElementNs):
  50255. (WebCore::XMLDocumentParser::characters):
  50256. (WebCore::XMLDocumentParser::error):
  50257. (WebCore::XMLDocumentParser::processingInstruction):
  50258. (WebCore::XMLDocumentParser::cdataBlock):
  50259. (WebCore::XMLDocumentParser::comment):
  50260. (WebCore::XMLDocumentParser::internalSubset):
  50261. (WebCore::XMLDocumentParser::initializeParserContext):
  50262. (WebCore::XMLDocumentParser::doEnd):
  50263. * html/parser/HTMLDocumentParser.cpp:
  50264. (WebCore::HTMLDocumentParser::prepareToStopParsing):
  50265. (WebCore::HTMLDocumentParser::pumpTokenizerIfPossible):
  50266. (WebCore::HTMLDocumentParser::pumpTokenizer):
  50267. (WebCore::HTMLDocumentParser::insert):
  50268. (WebCore::HTMLDocumentParser::append):
  50269. (WebCore::HTMLDocumentParser::end):
  50270. (WebCore::HTMLDocumentParser::attemptToEnd):
  50271. (WebCore::HTMLDocumentParser::endIfDelayed):
  50272. (WebCore::HTMLDocumentParser::notifyFinished):
  50273. * html/parser/HTMLDocumentParser.h:
  50274. * html/parser/HTMLScriptRunner.cpp:
  50275. (WebCore::HTMLScriptRunner::~HTMLScriptRunner):
  50276. (WebCore::HTMLScriptRunner::executeParsingBlockingScript):
  50277. (WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent):
  50278. (WebCore::HTMLScriptRunner::executeScriptsWaitingForParsing):
  50279. (WebCore::HTMLScriptRunner::requestDeferredScript):
  50280. (WebCore::HTMLScriptRunner::runScript):
  50281. * html/parser/HTMLScriptRunner.h:
  50282. * loader/ImageDocument.cpp:
  50283. (WebCore::ImageDocumentParser::finish):
  50284. 2010-09-02 Ilya Sherman <isherman@google.com>
  50285. Reviewed by Eric Seidel.
  50286. Decompose computing an element's inherited language, expose this
  50287. capability to clients (in particular, for Chromium).
  50288. https://bugs.webkit.org/show_bug.cgi?id=44803
  50289. No new tests -- just refactoring + exposing code.
  50290. * css/CSSStyleSelector.cpp:
  50291. (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
  50292. * dom/Element.cpp:
  50293. (WebCore::Element::computeInheritedLang):
  50294. * dom/Element.h:
  50295. 2010-08-31 Philippe Normand <pnormand@igalia.com>
  50296. Reviewed by Eric Carlson.
  50297. [GStreamer] can't play m4v videos
  50298. https://bugs.webkit.org/show_bug.cgi?id=44951
  50299. Fixed registration of the m4v media type in the hashtable used by
  50300. the player to report if it supports a given media type.
  50301. Test: media/media-can-play-mpeg4-video.html
  50302. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  50303. (WebCore::mimeTypeCache):
  50304. 2010-09-01 Philippe Normand <pnormand@igalia.com>
  50305. Reviewed by Martin Robinson.
  50306. [GTK] warning: unused variable "queryResult"
  50307. https://bugs.webkit.org/show_bug.cgi?id=44998
  50308. Fix the misbehavior introduced in r66573. The gst_element_query()
  50309. call needs to be done whatever the GStreamer version used.
  50310. * platform/graphics/gstreamer/GStreamerGWorld.cpp:
  50311. (WebCore::GStreamerGWorld::enterFullscreen):
  50312. 2010-09-01 Jia Pu <jpu@apple.com>
  50313. Reviewed by Dan Bernstein.
  50314. Add support for autocorrection UI on Mac OS X.
  50315. https://bugs.webkit.org/show_bug.cgi?id=44958
  50316. <rdar://problem/7326847>
  50317. Several new member methods are added to EditorClient for communication
  50318. between WebCore and WebKit. A new handler, executeCancelOperation(), is
  50319. added to EditorCommand.cpp so that WebCore can intercept the ESC key event
  50320. to dismiss autocorrection UI. A new DocumentMarker value, RejectedCorrection,
  50321. is added to keep track of the corrections that user has rejected, so that it
  50322. will not be suggested again later. The autocorrection is driven by a timer.
  50323. Every time the editor inserts a new letter, the timer is reset. If the timer
  50324. fires, it means neither has user entered any new letter for current word, nor
  50325. has he entered whitespace or punctuation to complete the word. In this case,
  50326. we query for autocorrection.
  50327. * WebCore.exp.in: Updated
  50328. * dom/DocumentMarker.h: Added RejectedCorrection to indicate word on which user
  50329. has rejected autocorrection.
  50330. * editing/Editor.cpp:
  50331. (WebCore::Editor::Editor): Initialize autocorrection timer.
  50332. (WebCore::Editor::~Editor): Make sure autocorrection UI is dismissed before
  50333. destroying Editor object.
  50334. (WebCore::Editor::markMisspellingsAfterTypingToPosition): Adopted new signature
  50335. of markAllMisspellingsAndBadGrammarInRanges().
  50336. (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Consolidated all
  50337. boolean arguments into one bitfield. This improves readability and allows us to
  50338. pass in a bit to indicate whether we want to show autocorrection UI. Also added
  50339. code to show autocorrection UI if it is necessary.
  50340. (WebCore::Editor::markMisspellingsAndBadGrammar): Adopted new signature of
  50341. markAllMisspellingsAndBadGrammarInRanges().
  50342. (WebCore::Editor::correctionPanelTimerFired): Check to see if we should show
  50343. autocorrection UI when user pauses during typing.
  50344. (WebCore::Editor::handleRejectedCorrection): Update user dictionary when an autocorrection is rejected.
  50345. (WebCore::Editor::startCorrectionPanelTimer): Start autocorrection timer.
  50346. (WebCore::Editor::handleCancelOperation): Dismiss autocorrection UI when ESC key is pressed.
  50347. * editing/Editor.h: Added autocorrection related member methods and variables.
  50348. * editing/EditorCommand.cpp:
  50349. (WebCore::executeCancelOperation): Handle ESC key event. Dismiss autocorrection UI.
  50350. (WebCore::createCommandMap): Updated for executeCancelOperation().
  50351. * editing/TypingCommand.cpp:
  50352. (WebCore::TypingCommand::markMisspellingsAfterTyping): Reset autocorrection timer after insertion.
  50353. * loader/EmptyClients.h:
  50354. (WebCore::EmptyEditorClient::showCorrectionPanel): Dummy implementation.
  50355. (WebCore::EmptyEditorClient::dismissCorrectionPanel): Ditto
  50356. * page/EditorClient.h: Added methods for communication between WebCore and WebKit regarding autocorrection.
  50357. * page/Frame.cpp:
  50358. (WebCore::Frame::respondToChangedSelection): Remove Replacement marker where we used to only remove Spelling
  50359. mark, because whenever we need to remove spelling underline we also should remove autocorrection underline.
  50360. * platform/graphics/GraphicsContext.h: Added enum TextCheckingLineStyle to specify the underline
  50361. for different type of text checking result. Replaced drawLineForMisspellingOrBadGrammar() with
  50362. drawLineForTextChecking(), which allows autocorrection to have different indication from misspelling
  50363. and grammatical error.
  50364. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  50365. (WebCore::GraphicsContext::drawLineForTextChecking): Replaced drawLineForMisspellingOrBadGrammar() with drawLineForTextChecking().
  50366. * platform/graphics/haiku/GraphicsContextHaiku.cpp:
  50367. (WebCore::GraphicsContext::drawLineForTextChecking): Ditto
  50368. * platform/graphics/mac/GraphicsContextMac.mm:
  50369. (WebCore::GraphicsContext::drawLineForTextChecking): Ditto
  50370. * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
  50371. (WebCore::GraphicsContext::drawLineForTextChecking): Ditto
  50372. * platform/graphics/qt/GraphicsContextQt.cpp:
  50373. (WebCore::GraphicsContext::drawLineForTextChecking): Ditto
  50374. * platform/graphics/skia/GraphicsContextSkia.cpp:
  50375. (WebCore::GraphicsContext::drawLineForTextChecking): Ditto
  50376. * platform/graphics/win/GraphicsContextCGWin.cpp:
  50377. (WebCore::GraphicsContext::drawLineForTextChecking): Ditto
  50378. * platform/graphics/wince/GraphicsContextWince.cpp:
  50379. (WebCore::GraphicsContext::drawLineForTextChecking): Ditto
  50380. * platform/graphics/wx/GraphicsContextWx.cpp:
  50381. (WebCore::GraphicsContext::drawLineForTextChecking): Ditto
  50382. * rendering/InlineTextBox.cpp:
  50383. (WebCore::textCheckingLineStyleForMarkerType): Return line style for a given document marker type.
  50384. (WebCore::InlineTextBox::paintSpellingOrGrammarMarker): Replaced drawLineForMisspellingOrBadGrammar() with drawLineForTextChecking().
  50385. (WebCore::InlineTextBox::paintDocumentMarkers): Handle new marker value, RejectedCorrection.
  50386. 2010-09-01 Kinuko Yasuda <kinuko@google.com>
  50387. Reviewed by Adam Barth.
  50388. [V8] Support readonly Date attribute
  50389. https://bugs.webkit.org/show_bug.cgi?id=43943
  50390. Adds Date to non_wrapper_types in CodeGeneratorV8.pm.
  50391. New tests will be added for Metadata when we add FileSystem implementation.
  50392. * bindings/scripts/CodeGeneratorV8.pm:
  50393. * fileapi/Metadata.h:
  50394. * fileapi/Metadata.idl:
  50395. 2010-09-01 Mihai Parparita <mihaip@chromium.org>
  50396. Reviewed by Chris Marrin.
  50397. animations/suspend-resume-animation.html does not pass when accelerated compositing is off
  50398. https://bugs.webkit.org/show_bug.cgi?id=45057
  50399. Fix incorrect logic when resuming the animation (KeyframeAnimation::startAnimation
  50400. and RenderLayerBacking::startAnimation return true when running an accelerated
  50401. animation).
  50402. * page/animation/AnimationBase.cpp:
  50403. (WebCore::AnimationBase::updateStateMachine):
  50404. 2010-09-01 Eric Carlson <eric.carlson@apple.com>
  50405. Reviewed by Darin Adler.
  50406. Question mark QuickTime icon when navigating to this MP3 file
  50407. https://bugs.webkit.org/show_bug.cgi?id=44846
  50408. Do not disable 'tmet' movie tracks, they carry meta data.
  50409. No DRT test because I am not sure it is possible to have one of these tracks in
  50410. non-streaming movie. I will add a test later if I figure out how to create a movie.
  50411. * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
  50412. (WebCore::MediaPlayerPrivate::disableUnsupportedTracks):
  50413. 2010-09-01 Eric Seidel <eric@webkit.org>
  50414. Reviewed by Dimitri Glazkov.
  50415. Remove rendering types from SubframeLoader and split RenderEmbeddedObject::updateWidget in preparation for moving to DOM
  50416. https://bugs.webkit.org/show_bug.cgi?id=45007
  50417. This is just moving around code (and attempting to make it more sane).
  50418. I also tried to use more specific types where possible.
  50419. The SubframeLoader no longer uses any rendering types in its API.
  50420. I split RenderEmbeddedObject::updateWidget into a bunch of functions.
  50421. It was obvious before, but now super-obvious after the split that these
  50422. new functions do not belong in RenderEmbeddedObject. Instead they
  50423. need to be moved to their respective DOM classes. I've added FIXMEs
  50424. next to each of the functions which should be moved, but I've not moved
  50425. any of the logic out of RenderEmbeddedObject.cpp yet in an effort to
  50426. keep this patch as simple as possible.
  50427. No functional change, thus no tests.
  50428. * html/HTMLEmbedElement.cpp:
  50429. (WebCore::HTMLEmbedElement::updateWidget):
  50430. * html/HTMLFrameElementBase.cpp:
  50431. (WebCore::HTMLFrameElementBase::attach):
  50432. (WebCore::HTMLFrameElementBase::width):
  50433. (WebCore::HTMLFrameElementBase::height):
  50434. * html/HTMLFrameOwnerElement.cpp:
  50435. (WebCore::HTMLFrameOwnerElement::renderPart):
  50436. * html/HTMLFrameOwnerElement.h:
  50437. * html/HTMLObjectElement.cpp:
  50438. (WebCore::HTMLObjectElement::renderWidgetForJSBindings):
  50439. (WebCore::HTMLObjectElement::createRenderer):
  50440. (WebCore::HTMLObjectElement::updateWidget):
  50441. * html/HTMLPlugInElement.cpp:
  50442. (WebCore::HTMLPlugInElement::renderEmbeddedObject):
  50443. * html/HTMLPlugInElement.h:
  50444. * loader/PluginDocument.cpp:
  50445. (WebCore::PluginDocumentParser::appendBytes):
  50446. * loader/SubframeLoader.cpp:
  50447. (WebCore::SubframeLoader::requestObject):
  50448. (WebCore::SubframeLoader::document):
  50449. (WebCore::SubframeLoader::loadPlugin):
  50450. * loader/SubframeLoader.h:
  50451. * rendering/RenderEmbeddedObject.cpp:
  50452. (WebCore::isNetscapePlugin):
  50453. (WebCore::hasFallbackContent):
  50454. (WebCore::parametersFromObject):
  50455. (WebCore::updateWidgetForObjectElement):
  50456. (WebCore::parametersFromEmbed):
  50457. (WebCore::updateWidgetForEmbedElement):
  50458. (WebCore::updateWidgetForMediaElement):
  50459. (WebCore::RenderEmbeddedObject::updateWidget):
  50460. * rendering/RenderEmbeddedObject.h:
  50461. (WebCore::RenderEmbeddedObject::setHasFallbackContent):
  50462. * rendering/RenderLayerCompositor.h:
  50463. 2010-09-01 Kinuko Yasuda <kinuko@chromium.org>
  50464. Reviewed by Jian Li.
  50465. Add more FileError and FileException code for FileWriter and FileSystem API
  50466. https://bugs.webkit.org/show_bug.cgi?id=45048
  50467. Adding SYNTAX_ERR for FileWriter.
  50468. http://dev.w3.org/2009/dap/file-system/file-writer.html
  50469. Adding INVALID_STATE_ERR, INVALID_MODIFICATION_ERR and QUOTA_EXCEEDED_ERR for FileSystem.
  50470. http://dev.w3.org/2009/dap/file-system/file-dir-sys.html
  50471. Adding NO_MODIFICATION_ALLOWED_ERR (to FileException) for both.
  50472. * fileapi/FileError.idl:
  50473. * fileapi/FileException.idl:
  50474. 2010-09-01 Mihai Parparita <mihaip@chromium.org>
  50475. Reviewed by Brady Eidson.
  50476. popstate event is not fired until document opts in by calling pushstate.
  50477. https://bugs.webkit.org/show_bug.cgi?id=41372
  50478. Fire popstate even when we don't have a state object when a page is
  50479. loaded (for both regular loads and those from the page cache). Also
  50480. fire popstate when doing in-document navigation via fragment changes.
  50481. This is consistent with both Gecko and recent the HTML5 spec change:
  50482. http://html5.org/tools/web-apps-tracker?from=5376&to=5377
  50483. Tests: fast/loader/stateobjects/popstate-fires-on-history-traversal.html
  50484. fast/loader/stateobjects/popstate-fires-with-page-cache.html
  50485. * bindings/js/SerializedScriptValue.cpp:
  50486. * bindings/js/SerializedScriptValue.h:
  50487. (WebCore::SerializedScriptValue::create):
  50488. * bindings/v8/SerializedScriptValue.cpp:
  50489. * bindings/v8/SerializedScriptValue.h:
  50490. * dom/Document.cpp:
  50491. (WebCore::Document::implicitClose):
  50492. * dom/Document.h:
  50493. * history/CachedFrame.cpp:
  50494. (WebCore::CachedFrameBase::restore):
  50495. * loader/FrameLoader.cpp:
  50496. (WebCore::FrameLoader::loadInSameDocument):
  50497. (WebCore::FrameLoader::transitionToCommitted):
  50498. * loader/HistoryController.cpp:
  50499. (WebCore::HistoryController::pushState):
  50500. (WebCore::HistoryController::replaceState):
  50501. 2010-09-01 Ryosuke Niwa <rniwa@webkit.org>
  50502. Reviewed by Dimitri Glazkov.
  50503. REGRESSION(r66431): WebCore::Editor::selectionStartCSSPropertyValue crashes if no background color is specified
  50504. https://bugs.webkit.org/show_bug.cgi?id=45068
  50505. The crash was caused by the assumption that every node has an ancestor with some background color,
  50506. which was obviously false. Fixed this by adding a null for ancestor.
  50507. Test: editing/execCommand/backcolor-crash.html
  50508. * editing/Editor.cpp:
  50509. (WebCore::Editor::selectionStartCSSPropertyValue):
  50510. 2010-08-31 Jer Noble <jer.noble@apple.com>
  50511. Reviewed by Darin Adler.
  50512. WebKit should not accept PDFs as video.
  50513. https://bugs.webkit.org/show_bug.cgi?id=45013
  50514. QuickTime will accept a PDF as the source for a movie, and happily
  50515. convert that PDF into a .mov. WebKit should disable the eat and grip
  50516. PDF components which allow this.
  50517. Test: http/tests/media/pdf-served-as-pdf.html
  50518. * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
  50519. (WebCore::MediaPlayerPrivate::createQTMovie): Add PDF eat and grip
  50520. components to the components which are disabled before opening a
  50521. QTMovie.
  50522. 2010-09-01 Rob Buis <rwlbuis@gmail.com>
  50523. Reviewed by Darin Adler.
  50524. Support for Percentage Values in border-radius
  50525. https://bugs.webkit.org/show_bug.cgi?id=38354
  50526. Support percentage values on the border-radius family
  50527. of CSS properties.
  50528. * css/CSSComputedStyleDeclaration.cpp:
  50529. (WebCore::getBorderRadiusCornerValue):
  50530. * css/CSSParser.cpp:
  50531. (WebCore::CSSParser::parseValue):
  50532. (WebCore::CSSParser::parseBorderRadius):
  50533. * css/CSSPrimitiveValue.cpp:
  50534. * css/CSSStyleSelector.cpp:
  50535. (WebCore::CSSStyleSelector::applyProperty):
  50536. * page/animation/AnimationBase.cpp:
  50537. (WebCore::AnimationBase::ensurePropertyMap):
  50538. * platform/Length.h:
  50539. * rendering/RenderObject.cpp:
  50540. (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
  50541. * rendering/style/BorderData.h:
  50542. (WebCore::BorderData::BorderData):
  50543. (WebCore::BorderData::hasBorderRadius):
  50544. (WebCore::BorderData::topLeft):
  50545. (WebCore::BorderData::topRight):
  50546. (WebCore::BorderData::bottomLeft):
  50547. (WebCore::BorderData::bottomRight):
  50548. * rendering/style/RenderStyle.cpp:
  50549. (WebCore::RenderStyle::getBorderRadiiForRect):
  50550. (WebCore::RenderStyle::getInnerBorderRadiiForRectWithBorderWidths):
  50551. * rendering/style/RenderStyle.h:
  50552. (WebCore::InheritedFlags::borderTopLeftRadius):
  50553. (WebCore::InheritedFlags::borderTopRightRadius):
  50554. (WebCore::InheritedFlags::borderBottomLeftRadius):
  50555. (WebCore::InheritedFlags::borderBottomRightRadius):
  50556. (WebCore::InheritedFlags::setBorderTopLeftRadius):
  50557. (WebCore::InheritedFlags::setBorderTopRightRadius):
  50558. (WebCore::InheritedFlags::setBorderBottomLeftRadius):
  50559. (WebCore::InheritedFlags::setBorderBottomRightRadius):
  50560. (WebCore::InheritedFlags::setBorderRadius):
  50561. (WebCore::InheritedFlags::initialBorderRadius):
  50562. 2010-09-01 Andrey Kosyakov <caseq@chromium.org>
  50563. Reviewed by Yury Semikhatsky.
  50564. Web Inspector: webInspector.inspectedWindow.evaluate() should not fail if not passed callback.
  50565. https://bugs.webkit.org/show_bug.cgi?id=45037
  50566. * inspector/front-end/ExtensionAPI.js:
  50567. (WebInspector.injectedExtensionAPI.InspectedWindow.prototype.evaluate):
  50568. 2010-09-01 Dave Hyatt <hyatt@apple.com>
  50569. Reviewed by Dan Bernstein and Simon Fraser.
  50570. https://bugs.webkit.org/show_bug.cgi?id=44963, overhanging floats aren't positioned properly when they occur
  50571. in multi-column layout. Don't let floats overhang in multi-column blocks, since they are part of the column layout.
  50572. fast/multicol/float-pagination-failure now succeeds, so will rename and move it.
  50573. * rendering/RenderBlock.cpp:
  50574. (WebCore::RenderBlock::addOverhangingFloats):
  50575. 2010-08-31 Kenneth Russell <kbr@google.com>
  50576. Reviewed by Simon Fraser.
  50577. Add helpers to FloatRect to compute bounding box from points
  50578. https://bugs.webkit.org/show_bug.cgi?id=45015
  50579. Added fitToPoints, including a few overloaded variants for the
  50580. cases of two, three and four points. I opted not to add a
  50581. generalized version taking const FloatRect* or Vector<FloatRect>
  50582. at the present time because for my own purposes they are
  50583. unnecessary, and the specific versions can be more tightly coded.
  50584. Also added left() and top() for symmetry with right() and bottom().
  50585. These changes have been tested with new code to be added later.
  50586. * platform/graphics/FloatRect.cpp:
  50587. (WebCore::FloatRect::intersect):
  50588. (WebCore::FloatRect::unite):
  50589. (WebCore::FloatRect::fitToPoints):
  50590. * platform/graphics/FloatRect.h:
  50591. (WebCore::FloatRect::left):
  50592. (WebCore::FloatRect::top):
  50593. (WebCore::FloatRect::setLocationAndSizeFromEdges):
  50594. 2010-09-01 Anton Muhin <antonm@chromium.org>
  50595. Reviewed by Dimitri Glazkov.
  50596. [v8] Use Vector and DEFINE_STATIC_LOCAL instead of plain static array.
  50597. https://bugs.webkit.org/show_bug.cgi?id=45040
  50598. By code guidelines all the statics should be wrapped into appropriate macro.
  50599. * bindings/v8/V8Binding.cpp:
  50600. (WebCore::int32ToWebCoreString):
  50601. 2010-09-01 Alejandro G. Castro <alex@igalia.com>
  50602. Reviewed by Martin Robinson.
  50603. [Gtk] very slow page scrolling on big -webkit-box-shadow areas
  50604. https://bugs.webkit.org/show_bug.cgi?id=39582
  50605. Add a new drawTiledShadow method to render a big shadow doing
  50606. tiling of parts of a smaller shadow. We create the minimum shadow
  50607. required to get the tiles we will use to render the real shadow
  50608. and we use drawPattern with those tiles to create the shadow.
  50609. * platform/graphics/GraphicsContext.h:
  50610. * platform/graphics/cairo/FontCairo.cpp:
  50611. (WebCore::Font::drawGlyphs):
  50612. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  50613. (WebCore::drawPathShadow):
  50614. (WebCore::drawBorderlessRectShadow):
  50615. (WebCore::GraphicsContext::fillRect):
  50616. (WebCore::GraphicsContext::applyPlatformShadow):
  50617. (WebCore::GraphicsContext::createShadowMask):
  50618. (WebCore::getPhase):
  50619. (WebCore::GraphicsContext::drawTiledShadow):
  50620. (WebCore::GraphicsContext::fillRoundedRect):
  50621. * platform/graphics/cairo/ImageCairo.cpp:
  50622. (WebCore::BitmapImage::draw):
  50623. 2010-09-01 Andrey Kosyakov <caseq@chromium.org>
  50624. Reviewed by Yury Semikhatsky.
  50625. Web Inspector, Extension API: Panel.onSelectionChanged event is never fired
  50626. Added command line API to the lexical context of code evaluated by webInspector.inspectedWindow.evaluate()
  50627. Fixed webInspector.inspectedWindow.evaluate() to return object rather than its stringified representation
  50628. https://bugs.webkit.org/show_bug.cgi?id=44957
  50629. Test: inspector/extensions-eval.html
  50630. * inspector/front-end/ExtensionAPI.js:
  50631. (WebInspector.injectedExtensionAPI.InspectedWindow.prototype.evaluate):
  50632. * inspector/front-end/ExtensionServer.js:
  50633. (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage):
  50634. 2010-08-27 Philippe Normand <pnormand@igalia.com>
  50635. Reviewed by Xan Lopez.
  50636. [GStreamer] ImageGStreamer doesn't need to hold a Cairo surface
  50637. https://bugs.webkit.org/show_bug.cgi?id=44757
  50638. Pass the cairo surface to the BitmapImage constructor which will
  50639. handle its life-cycle.
  50640. * platform/graphics/gstreamer/ImageGStreamer.h:
  50641. * platform/graphics/gstreamer/ImageGStreamerCairo.cpp:
  50642. (ImageGStreamer::ImageGStreamer):
  50643. (ImageGStreamer::~ImageGStreamer):
  50644. 2010-08-30 Patrick Gansterer <paroga@paroga.com>
  50645. Reviewed by Dirk Schulze.
  50646. RenderImage::imageChanged invalidates wrong area
  50647. https://bugs.webkit.org/show_bug.cgi?id=43779
  50648. Remove RenderImage inheritance from RenderSVGImage, it now inherits from RenderSVGModelObject.
  50649. * rendering/RenderSVGImage.cpp:
  50650. (WebCore::RenderSVGImage::RenderSVGImage):
  50651. (WebCore::RenderSVGImage::~RenderSVGImage):
  50652. (WebCore::RenderSVGImage::layout):
  50653. (WebCore::RenderSVGImage::paint):
  50654. (WebCore::RenderSVGImage::imageChanged):
  50655. * rendering/RenderSVGImage.h:
  50656. (WebCore::RenderSVGImage::imageResource):
  50657. * rendering/RenderSVGModelObject.h:
  50658. * svg/SVGImageElement.cpp:
  50659. 2010-09-01 Nikolas Zimmermann <nzimmermann@rim.com>
  50660. Reviewed by Dirk Schulze.
  50661. Add culling to RenderSVGContainer
  50662. https://bugs.webkit.org/show_bug.cgi?id=44896
  50663. Cache object/strokeBoundingBox and repaintRectInLocalCoordinates() in RenderSVGContainer & RenderSVGRoot, just like it's done in RenderPath.
  50664. Propagate boundary changes up the render tree, in layout phase, in order to notify parents that they should update their cached boundaries.
  50665. This is a huge speed benefit when interacting with an already layouted document, as there's no need anymore to traverse all children
  50666. of any container or <svg> element, just to retrieve the repaint rect.
  50667. * rendering/RenderForeignObject.cpp:
  50668. (WebCore::RenderForeignObject::layout): Propagate boundary changes to parent, if neeeded.
  50669. * rendering/RenderObject.cpp:
  50670. (WebCore::RenderObject::setNeedsBoundariesUpdate): Ditto.
  50671. * rendering/RenderObject.h:
  50672. * rendering/RenderObjectChildList.cpp:
  50673. (WebCore::RenderObjectChildList::removeChildNode): Ditto.
  50674. * rendering/RenderPath.cpp:
  50675. (WebCore::RenderPath::layout): Ditto.
  50676. (WebCore::RenderPath::paint): Use new helper function to intersect the paintInfo.rect with the repaintRectInLocalCoordinates().
  50677. * rendering/RenderPath.h: Remove styleWillChange(), it's in RenderSVGModelObject now.
  50678. (WebCore::RenderPath::setNeedsBoundariesUpdate): Mark as virtual, just like in RenderObject.
  50679. * rendering/RenderSVGContainer.cpp:
  50680. (WebCore::RenderSVGContainer::RenderSVGContainer): Initialize m_needsBoundariesUpdate to true.
  50681. (WebCore::RenderSVGContainer::layout): Only update cached boundaries, if needed, once by traversing the child tree.
  50682. (WebCore::RenderSVGContainer::paint): Use new helper function to intersect the paintInfo.rect with the repaintRectInLocalCoordinates().
  50683. (WebCore::RenderSVGContainer::updateCachedBoundaries): Ask children for their boundaries, and cache them.
  50684. * rendering/RenderSVGContainer.h:
  50685. (WebCore::RenderSVGContainer::setNeedsBoundariesUpdate): Set m_needsBoundariesUpdate when called.
  50686. (WebCore::RenderSVGContainer::objectBoundingBox): Inlined, just returns a member variable now.
  50687. (WebCore::RenderSVGContainer::strokeBoundingBox): Ditto.
  50688. (WebCore::RenderSVGContainer::repaintRectInLocalCoordinates): Ditto.
  50689. (WebCore::RenderSVGContainer::calculateLocalTransform): Changed to return a boolean, wheter the transform was modified.
  50690. * rendering/RenderSVGGradientStop.h:
  50691. (WebCore::RenderSVGGradientStop::strokeBoundingBox): Add missing default implementation, return just FloatRect().
  50692. * rendering/RenderSVGHiddenContainer.cpp: Remove repaintRectInLocalCoordinates() override, it's now needed for painting markers.
  50693. * rendering/RenderSVGHiddenContainer.h:
  50694. (WebCore::RenderSVGHiddenContainer::clippedOverflowRectForRepaint): Inlined, returning IntRect().
  50695. * rendering/RenderSVGImage.cpp:
  50696. (WebCore::RenderSVGImage::layout): Propagate boundary changes to parent, if neeeded.
  50697. * rendering/RenderSVGRoot.cpp: Cache boundaries here as well, just like in RenderSVGContainer.
  50698. (WebCore::RenderSVGRoot::RenderSVGRoot):
  50699. (WebCore::RenderSVGRoot::layout):
  50700. (WebCore::RenderSVGRoot::updateCachedBoundaries):
  50701. * rendering/RenderSVGRoot.h:
  50702. (WebCore::RenderSVGRoot::setNeedsBoundariesUpdate):
  50703. (WebCore::RenderSVGRoot::setNeedsTransformUpdate):
  50704. (WebCore::RenderSVGRoot::objectBoundingBox):
  50705. (WebCore::RenderSVGRoot::strokeBoundingBox):
  50706. (WebCore::RenderSVGRoot::repaintRectInLocalCoordinates):
  50707. * rendering/RenderSVGText.cpp:
  50708. (WebCore::RenderSVGText::layout): Propagate boundary changes to parent, if neeeded.
  50709. * rendering/RenderSVGTransformableContainer.cpp:
  50710. (WebCore::RenderSVGTransformableContainer::calculateLocalTransform): Return true, if the localTransform changed.
  50711. * rendering/RenderSVGTransformableContainer.h:
  50712. * rendering/RenderSVGViewportContainer.cpp:
  50713. (WebCore::RenderSVGViewportContainer::calcViewport): Propagate boundary changes to parent, if neeeded.
  50714. * rendering/SVGRenderSupport.cpp:
  50715. (WebCore::SVGRenderSupport::computeContainerBoundingBoxes): Helper function calculating object/strokeBoundingBox and repaintRectInLocalCoordinates in one shot.
  50716. (WebCore::SVGRenderSupport::paintInfoIntersectsRepaintRect): Moved from RenderPath to share the culling functionality.
  50717. * rendering/SVGRenderSupport.h:
  50718. 2010-09-01 Mahesh Kulkarni <mahesh.kulkarni@nokia.com>
  50719. Reviewed by Laszlo Gombos.
  50720. [Qt] QWebPage::allowGeolocationRequest should be async API
  50721. https://bugs.webkit.org/show_bug.cgi?id=41364
  50722. Adding GeolocationPermissionClientQt.cpp/h to build script
  50723. * WebCore.pro:
  50724. 2010-09-01 Andreas Kling <andreas.kling@nokia.com>
  50725. Reviewed by Darin Adler.
  50726. DOM Selection: collapseToStart() and collapseToEnd() should throw INVALID_STATE_ERR if there's no selection
  50727. https://bugs.webkit.org/show_bug.cgi?id=44598
  50728. Spec links:
  50729. http://www.whatwg.org/specs/web-apps/current-work/#dom-selection-collapsetostart
  50730. http://www.whatwg.org/specs/web-apps/current-work/#dom-selection-collapsetoend
  50731. Test: fast/dom/Selection/collapseToX-empty-selection.html
  50732. * page/DOMSelection.cpp:
  50733. (WebCore::DOMSelection::collapseToEnd):
  50734. (WebCore::DOMSelection::collapseToStart):
  50735. * page/DOMSelection.h:
  50736. * page/DOMSelection.idl:
  50737. 2010-09-01 Kinuko Yasuda <kinuko@chromium.org>
  50738. Unreviewed; another build fix.
  50739. * WebCore.pri:
  50740. 2010-09-01 Kinuko Yasuda <kinuko@chromium.org>
  50741. Unreviewed; qt build fix.
  50742. * CMakeLists.txt:
  50743. 2010-08-31 Kinuko Yasuda <kinuko@chromium.org>
  50744. Reviewed by Adam Barth.
  50745. Move FileSystem related files from WebCore/html to WebCore/fileapi.
  50746. https://bugs.webkit.org/show_bug.cgi?id=44925
  50747. No new tests; there should be no functional changes.
  50748. * CMakeLists.txt:
  50749. * GNUmakefile.am:
  50750. * WebCore.gypi:
  50751. * WebCore.pro:
  50752. * WebCore.vcproj/WebCore.vcproj:
  50753. * WebCore.xcodeproj/project.pbxproj:
  50754. * fileapi/DOMFilePath.cpp: Renamed from WebCore/storage/DOMFilePath.cpp.
  50755. * fileapi/DOMFilePath.h: Renamed from WebCore/storage/DOMFilePath.h.
  50756. * fileapi/DOMFileSystem.cpp: Renamed from WebCore/storage/DOMFileSystem.cpp.
  50757. * fileapi/DOMFileSystem.h: Renamed from WebCore/storage/DOMFileSystem.h.
  50758. * fileapi/DOMFileSystem.idl: Renamed from WebCore/storage/DOMFileSystem.idl.
  50759. * fileapi/DirectoryEntry.cpp: Renamed from WebCore/storage/DirectoryEntry.cpp.
  50760. * fileapi/DirectoryEntry.h: Renamed from WebCore/storage/DirectoryEntry.h.
  50761. * fileapi/DirectoryEntry.idl: Renamed from WebCore/storage/DirectoryEntry.idl.
  50762. * fileapi/DirectoryReader.cpp: Renamed from WebCore/storage/DirectoryReader.cpp.
  50763. * fileapi/DirectoryReader.h: Renamed from WebCore/storage/DirectoryReader.h.
  50764. * fileapi/DirectoryReader.idl: Renamed from WebCore/storage/DirectoryReader.idl.
  50765. * fileapi/EntriesCallback.h: Renamed from WebCore/storage/EntriesCallback.h.
  50766. * fileapi/EntriesCallback.idl: Renamed from WebCore/storage/EntriesCallback.idl.
  50767. * fileapi/Entry.cpp: Renamed from WebCore/storage/Entry.cpp.
  50768. * fileapi/Entry.h: Renamed from WebCore/storage/Entry.h.
  50769. * fileapi/Entry.idl: Renamed from WebCore/storage/Entry.idl.
  50770. * fileapi/EntryArray.cpp: Renamed from WebCore/storage/EntryArray.cpp.
  50771. * fileapi/EntryArray.h: Renamed from WebCore/storage/EntryArray.h.
  50772. * fileapi/EntryArray.idl: Renamed from WebCore/storage/EntryArray.idl.
  50773. * fileapi/EntryCallback.h: Renamed from WebCore/storage/EntryCallback.h.
  50774. * fileapi/EntryCallback.idl: Renamed from WebCore/storage/EntryCallback.idl.
  50775. * fileapi/ErrorCallback.h: Renamed from WebCore/storage/ErrorCallback.h.
  50776. * fileapi/ErrorCallback.idl: Renamed from WebCore/storage/ErrorCallback.idl.
  50777. * fileapi/FileEntry.cpp: Renamed from WebCore/storage/FileEntry.cpp.
  50778. * fileapi/FileEntry.h: Renamed from WebCore/storage/FileEntry.h.
  50779. * fileapi/FileEntry.idl: Renamed from WebCore/storage/FileEntry.idl.
  50780. * fileapi/FileSystemCallback.h: Renamed from WebCore/storage/FileSystemCallback.h.
  50781. * fileapi/FileSystemCallback.idl: Renamed from WebCore/storage/FileSystemCallback.idl.
  50782. * fileapi/FileSystemCallbacks.cpp: Renamed from WebCore/storage/FileSystemCallbacks.cpp.
  50783. * fileapi/FileSystemCallbacks.h: Renamed from WebCore/storage/FileSystemCallbacks.h.
  50784. * fileapi/Flags.h: Renamed from WebCore/storage/Flags.h.
  50785. * fileapi/Flags.idl: Renamed from WebCore/storage/Flags.idl.
  50786. * fileapi/LocalFileSystem.cpp: Renamed from WebCore/storage/LocalFileSystem.cpp.
  50787. * fileapi/LocalFileSystem.h: Renamed from WebCore/storage/LocalFileSystem.h.
  50788. * fileapi/Metadata.h: Renamed from WebCore/storage/Metadata.h.
  50789. * fileapi/Metadata.idl: Renamed from WebCore/storage/Metadata.idl.
  50790. * fileapi/MetadataCallback.h: Renamed from WebCore/storage/MetadataCallback.h.
  50791. * fileapi/MetadataCallback.idl: Renamed from WebCore/storage/MetadataCallback.idl.
  50792. 2010-08-31 Nikolas Zimmermann <nzimmermann@rim.com>
  50793. Reviewed by Dirk Schulze.
  50794. Prepare RenderSVGContainer culling patch
  50795. https://bugs.webkit.org/show_bug.cgi?id=44955
  50796. Add styleWillChange methods for all SVG renderers, that call setNeedsBoundariesUpdate().
  50797. It's currently a no-op, but will be used once the containers cache their boundaries, which
  50798. happens in a follow-up patch.
  50799. * rendering/RenderSVGBlock.cpp:
  50800. (WebCore::RenderSVGBlock::styleWillChange): Call setNeedsBoundariesUpdate().
  50801. * rendering/RenderSVGBlock.h:
  50802. * rendering/RenderSVGImage.cpp:
  50803. (WebCore::RenderSVGImage::styleWillChange): Ditto.
  50804. * rendering/RenderSVGImage.h:
  50805. * rendering/RenderSVGInline.cpp:
  50806. (WebCore::RenderSVGInline::styleWillChange): Ditto.
  50807. * rendering/RenderSVGInline.h:
  50808. * rendering/RenderSVGModelObject.cpp:
  50809. (WebCore::RenderSVGModelObject::styleWillChange): Ditto.
  50810. * rendering/RenderSVGModelObject.h:
  50811. * rendering/RenderSVGRoot.cpp:
  50812. (WebCore::RenderSVGRoot::styleWillChange): Ditto.
  50813. * rendering/RenderSVGRoot.h:
  50814. * rendering/SVGRenderSupport.cpp:
  50815. (WebCore::SVGRenderSupport::computeContainerBoundingBox): Skip hidden containers, not necessary to traverse them.
  50816. * rendering/style/SVGRenderStyle.cpp:
  50817. (WebCore::SVGRenderStyle::diff): svg-shadow changes need to cause relayouts, not only repaints, once container bounds are cached.
  50818. 2010-08-31 Justin Garcia <justin.garcia@apple.com>
  50819. Reviewed by Dan Bernstein.
  50820. https://bugs.webkit.org/show_bug.cgi?id=44915
  50821. Need to handle CSSValueAuto in CSSPrimitiveValue::operator ETextAlign()
  50822. * css/CSSPrimitiveValueMappings.h:
  50823. (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Map TAAUTO to -webkit-auto. "auto" is
  50824. not a valid text-align value. We use TAAUTO internally for the nameless value that acts
  50825. as left if direction:ltr and right for direction:rtl.
  50826. 2010-08-31 Gyuyoung Kim <gyuyoung.kim@samsung.com>
  50827. Reviewed by Martin Robinson.
  50828. [EFL] Add PlatformVideoWindowEfl.cpp for WebKit EFL
  50829. https://bugs.webkit.org/show_bug.cgi?id=44508
  50830. Add PlatformVideoWindowEfl.cpp in order to use gstreamer by
  50831. WebKit EFL.
  50832. * platform/graphics/gstreamer/PlatformVideoWindow.h:
  50833. (WebCore::PlatformVideoWindow::window):
  50834. (WebCore::PlatformVideoWindow::videoWindowId):
  50835. * platform/graphics/gstreamer/PlatformVideoWindowEfl.cpp: Added.
  50836. (PlatformVideoWindow::PlatformVideoWindow):
  50837. (PlatformVideoWindow::~PlatformVideoWindow):
  50838. * platform/graphics/gstreamer/PlatformVideoWindowGtk.cpp: Include <gtk/gtk.h> directly.
  50839. 2010-08-31 Dave Hyatt <hyatt@apple.com>
  50840. Reviewed by Sam Weinig.
  50841. https://bugs.webkit.org/show_bug.cgi?id=44863, disentangle style recalc from layout, so that
  50842. the former can occur in more places without having to do the latter.
  50843. * WebCore.exp.in:
  50844. * page/FocusController.cpp:
  50845. (WebCore::FocusController::setActive):
  50846. * page/Frame.cpp:
  50847. (WebCore::Frame::Frame):
  50848. * page/Frame.h:
  50849. * page/FrameView.cpp:
  50850. (WebCore::FrameView::enterCompositingMode):
  50851. (WebCore::FrameView::layout):
  50852. (WebCore::FrameView::needsLayout):
  50853. (WebCore::FrameView::updateLayoutAndStyleIfNeededRecursive):
  50854. * page/FrameView.h:
  50855. * page/Page.cpp:
  50856. (WebCore::Page::scheduleForcedStyleRecalcForAllPages):
  50857. * page/Page.h:
  50858. * page/Settings.cpp:
  50859. (WebCore::setNeedsRecalcStyleInAllFrames):
  50860. (WebCore::setLoadsImagesAutomaticallyInAllFrames):
  50861. (WebCore::Settings::setStandardFontFamily):
  50862. (WebCore::Settings::setFixedFontFamily):
  50863. (WebCore::Settings::setSerifFontFamily):
  50864. (WebCore::Settings::setSansSerifFontFamily):
  50865. (WebCore::Settings::setCursiveFontFamily):
  50866. (WebCore::Settings::setFantasyFontFamily):
  50867. (WebCore::Settings::setMinimumFontSize):
  50868. (WebCore::Settings::setMinimumLogicalFontSize):
  50869. (WebCore::Settings::setDefaultFontSize):
  50870. (WebCore::Settings::setDefaultFixedFontSize):
  50871. (WebCore::Settings::setLoadsImagesAutomatically):
  50872. (WebCore::Settings::setTextAreasAreResizable):
  50873. (WebCore::Settings::setAuthorAndUserStylesEnabled):
  50874. (WebCore::Settings::setFontRenderingMode):
  50875. (WebCore::Settings::setZoomMode):
  50876. (WebCore::Settings::setAcceleratedCompositingEnabled):
  50877. (WebCore::Settings::setShowDebugBorders):
  50878. (WebCore::Settings::setShowRepaintCounter):
  50879. * rendering/RenderTheme.cpp:
  50880. (WebCore::RenderTheme::platformColorsDidChange):
  50881. 2010-08-31 Jeremy Moskovich <jeremy@chromium.org>
  50882. Reviewed by Dimitri Glazkov.
  50883. Unfork Chromium's FontPlatformDataChromiumMac.mm.
  50884. Modified FontPlatformDataCocoa to provide hooks needed by Chromium.
  50885. Moved Chromium's mechanics for OOP font loading to CrossProcessFontLoading.mm.
  50886. Added ::create() function to MemoryActivatedFont to match new guidelines for
  50887. RefCounted<> classes.
  50888. Not possible to test due to sandbox interaction.
  50889. * WebCore.gypi: Update files for chromium build.
  50890. * platform/graphics/chromium/CrossProcessFontLoading.h: Added.
  50891. (WebCore::MemoryActivatedFont::cgFont):
  50892. (WebCore::MemoryActivatedFont::atsFontRef):
  50893. * platform/graphics/chromium/CrossProcessFontLoading.mm: Added.
  50894. (WebCore::MemoryActivatedFont::create):
  50895. (WebCore::MemoryActivatedFont::MemoryActivatedFont):
  50896. (WebCore::MemoryActivatedFont::~MemoryActivatedFont):
  50897. (WebCore::FontPlatformData::loadFont):
  50898. * platform/graphics/chromium/FontPlatformDataChromiumMac.mm: Removed.
  50899. * platform/graphics/cocoa/FontPlatformData.h:
  50900. * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
  50901. (WebCore::FontPlatformData::loadFont):
  50902. (WebCore::FontPlatformData::FontPlatformData):
  50903. (WebCore::FontPlatformData::operator=):
  50904. (WebCore::FontPlatformData::setFont):
  50905. 2010-08-31 Martin Robinson <mrobinson@igalia.com>
  50906. Reviewed by Adam Barth.
  50907. [GTK] warning: unused variable "queryResult"
  50908. https://bugs.webkit.org/show_bug.cgi?id=44998
  50909. No new tests as functionality has not changed.
  50910. * platform/graphics/gstreamer/GStreamerGWorld.cpp:
  50911. (WebCore::GStreamerGWorld::enterFullscreen): Move queryResult within the gstreamer
  50912. version guards, where it is used.
  50913. 2010-08-31 Dave Hyatt <hyatt@apple.com>
  50914. Reviewed by Adam Roben.
  50915. Refinement to previous checkin for pagination of block-level replaced elements. Don't bother to
  50916. paginate floating block-level replaced elements for now.
  50917. Added fast/multicol/float-pagination-failure.html
  50918. * rendering/RenderBlock.cpp:
  50919. (WebCore::RenderBlock::paintChildren):
  50920. 2010-08-31 Kinuko Yasuda <kinuko@chromium.org>
  50921. Reviewed by Jian Li.
  50922. Add LocalFileSystem.requestFileSystem interface to DOMWindow
  50923. https://bugs.webkit.org/show_bug.cgi?id=44734
  50924. No new tests; tests will be added later.
  50925. * bindings/generic/RuntimeEnabledFeatures.cpp:
  50926. * bindings/generic/RuntimeEnabledFeatures.h:
  50927. (WebCore::RuntimeEnabledFeatures::fileSystemEnabled):
  50928. (WebCore::RuntimeEnabledFeatures::setFileSystemEnabled):
  50929. (WebCore::RuntimeEnabledFeatures::requestFileSystemEnabled):
  50930. * page/DOMWindow.cpp:
  50931. (WebCore::DOMWindow::requestFileSystem):
  50932. * page/DOMWindow.h:
  50933. (WebCore::DOMWindow::):
  50934. * page/DOMWindow.idl:
  50935. * page/Settings.cpp:
  50936. (WebCore::Settings::setFileSystemRootPath):
  50937. * page/Settings.h:
  50938. (WebCore::Settings::fileSystemRootPath):
  50939. 2010-08-31 Kwang Yul Seo <skyul@company100.net>
  50940. Reviewed by Adam Barth.
  50941. [BREWMP] Add PLATFORM(BREWMP) guard to PluginViewNone
  50942. https://bugs.webkit.org/show_bug.cgi?id=44768
  50943. Build fix. Add PLATFORM(BREWMP) guard to add dummy PluginView::privateBrowsingStateChanged
  50944. and PluginView::setJavaScriptPaused.
  50945. * plugins/PluginViewNone.cpp:
  50946. 2010-08-31 Alexey Proskuryakov <ap@apple.com>
  50947. Reviewed by Adam Barth.
  50948. https://bugs.webkit.org/show_bug.cgi?id=40947
  50949. <rdar://problem/8124723> REGRESSION (r57544): XMLHttpRequest POSTed multipart/form-data
  50950. wrongfully gets a charset appended
  50951. Test: http/tests/xmlhttprequest/post-with-boundary.html
  50952. * xml/XMLHttpRequest.cpp:
  50953. (WebCore::replaceCharsetInMediaType): Changed to only set charset if it was already present,
  50954. and never append.
  50955. (WebCore::XMLHttpRequest::send): Updated for replaceCharsetInMediaType renaming.
  50956. 2010-08-31 Daniel Cheng <dcheng@chromium.org>
  50957. Reviewed by Tony Chang.
  50958. [chromium] Implement Readable/Writable versions of ChromiumDataObjectNew
  50959. https://bugs.webkit.org/show_bug.cgi?id=44917
  50960. This is the second of several patches to update Chromium to support
  50961. arbitrary data types in event.dataTransfer.
  50962. ReadableDataObject simply calls through to several Chromium IPCs to
  50963. retrieve the appropriate data.
  50964. WritableDataObject ostensibly buffers arbitrary data internally until
  50965. a call is made to flush the data to the platform-specific abstraction;
  50966. unfortunately, a special exception is currently made for pasteboard
  50967. handling due to how it is handled in WebCore.
  50968. No new tests.
  50969. * WebCore.gypi:
  50970. * platform/chromium/ChromiumDataObjectNew.h: Removed.
  50971. * platform/chromium/ClipboardChromium.cpp:
  50972. * platform/chromium/ClipboardMimeTypes.cpp: Added.
  50973. * platform/chromium/ClipboardMimeTypes.h: Added.
  50974. * platform/chromium/ReadableDataObject.cpp: Added.
  50975. (WebCore::clipboardBuffer):
  50976. (WebCore::ReadableDataObject::create):
  50977. (WebCore::ReadableDataObject::ReadableDataObject):
  50978. (WebCore::ReadableDataObject::hasData):
  50979. (WebCore::ReadableDataObject::types):
  50980. (WebCore::ReadableDataObject::getData):
  50981. (WebCore::ReadableDataObject::getURL):
  50982. (WebCore::ReadableDataObject::getHTML):
  50983. (WebCore::ReadableDataObject::hasFilenames):
  50984. (WebCore::ReadableDataObject::filenames):
  50985. (WebCore::ReadableDataObject::ensureTypeCacheInitialized):
  50986. * platform/chromium/ReadableDataObject.h: Added.
  50987. * platform/chromium/WritableDataObject.cpp: Added.
  50988. (WebCore::WritableDataObject::create):
  50989. (WebCore::WritableDataObject::WritableDataObject):
  50990. (WebCore::WritableDataObject::clearData):
  50991. (WebCore::WritableDataObject::clearAllExceptFiles):
  50992. (WebCore::WritableDataObject::clearAll):
  50993. (WebCore::WritableDataObject::setData):
  50994. (WebCore::WritableDataObject::setURL):
  50995. (WebCore::WritableDataObject::setHTML):
  50996. (WebCore::WritableDataObject::dataMap):
  50997. (WebCore::WritableDataObject::urlTitle):
  50998. (WebCore::WritableDataObject::htmlBaseURL):
  50999. (WebCore::WritableDataObject::fileExtension):
  51000. (WebCore::WritableDataObject::fileContentFilename):
  51001. (WebCore::WritableDataObject::fileContent):
  51002. (WebCore::WritableDataObject::setFileExtension):
  51003. (WebCore::WritableDataObject::setFileContentFilename):
  51004. (WebCore::WritableDataObject::setFileContent):
  51005. * platform/chromium/WritableDataObject.h: Added.
  51006. 2010-08-31 Darin Adler <darin@apple.com>
  51007. Reviewed by Sam Weinig.
  51008. Null-deref when decoding web archive with no data key in LegacyWebArchive::createResource
  51009. https://bugs.webkit.org/show_bug.cgi?id=45000
  51010. Test: webarchive/loading/missing-data.html
  51011. * loader/archive/cf/LegacyWebArchive.cpp:
  51012. (WebCore::LegacyWebArchive::createResource): Use wrapCFData instead of CFDataGetBytePtr/GetLength,
  51013. which is both more efficient, and can handle null. Also fixed incorrect use of ParsedURLString,
  51014. since the string is coming from a file and so there are no guarantees about its format.
  51015. 2010-08-31 Kenneth Russell <kbr@google.com>
  51016. Reviewed by Chris Marrin.
  51017. Add length and related operations to FloatPoint and FloatSize
  51018. https://bugs.webkit.org/show_bug.cgi?id=44994
  51019. Added length and squared length operations to both FloatPoint and
  51020. FloatSize, and added set(x, y), dot and normalize operations to
  51021. FloatPoint. These changes have been tested with new code to be
  51022. added later.
  51023. * platform/graphics/FloatPoint.cpp:
  51024. (WebCore::FloatPoint::normalize):
  51025. (WebCore::FloatPoint::length):
  51026. * platform/graphics/FloatPoint.h:
  51027. (WebCore::FloatPoint::set):
  51028. (WebCore::FloatPoint::dot):
  51029. (WebCore::FloatPoint::lengthSquared):
  51030. (WebCore::operator*):
  51031. * platform/graphics/FloatSize.cpp:
  51032. (WebCore::FloatSize::diagonalLength):
  51033. * platform/graphics/FloatSize.h:
  51034. (WebCore::FloatSize::diagonalLengthSquared):
  51035. 2010-08-31 Zhenyao Mo <zmo@google.com>
  51036. Reviewed by Kenneth Russell.
  51037. gl-teximage.html and tex-image-and-sub-image-2d-with-image.html failed on Chromium Mac bots (10.5)
  51038. https://bugs.webkit.org/show_bug.cgi?id=44993
  51039. * platform/graphics/cg/GraphicsContext3DCG.cpp:
  51040. (WebCore::GraphicsContext3D::getImageData): Take into consideration the source image pixel row alignment.
  51041. 2010-08-31 Patrick Gansterer <paroga@paroga.com>
  51042. Reviewed by Kenneth Rohde Christiansen.
  51043. [CMake] Unify GENERATE_DOM_NAMES code
  51044. https://bugs.webkit.org/show_bug.cgi?id=44842
  51045. * CMakeLists.txt: Added property svn:eol-style.
  51046. 2010-08-31 Beth Dakin <bdakin@apple.com>
  51047. Rubber-stamped by Dan Bernstein..
  51048. Variable name change. m_shouldFirePostLayoutTimer is now
  51049. m_hasPendingPostLayoutTasks
  51050. * page/FrameView.cpp:
  51051. (WebCore::FrameView::FrameView):
  51052. (WebCore::FrameView::~FrameView):
  51053. (WebCore::FrameView::reset):
  51054. (WebCore::FrameView::layout):
  51055. (WebCore::FrameView::performPostLayoutTasks):
  51056. * page/FrameView.h:
  51057. 2010-08-31 Beth Dakin <bdakin@apple.com>
  51058. Reviewed by Dave Hyatt.
  51059. Fix for https://bugs.webkit.org/show_bug.cgi?id=44828 FrameView
  51060. should make more calls to postLayoutTasks() using the timer
  51061. -and corresponding-
  51062. <rdar://problem/8064938>
  51063. This change only allows synchronous calls to postLayoutTasks() if
  51064. we are not already in a synchronous call to postLayoutTasks().
  51065. Furthermore, it de-couples the notion of "the post layout timer
  51066. should fire" from m_postLayoutTasksTimer.isActive(), instead using
  51067. a boolean to track the need to use the timer.
  51068. * page/FrameView.cpp:
  51069. (WebCore::FrameView::FrameView):
  51070. (WebCore::FrameView::~FrameView):
  51071. (WebCore::FrameView::reset):
  51072. (WebCore::FrameView::layout):
  51073. (WebCore::FrameView::unscheduleRelayout):
  51074. (WebCore::FrameView::performPostLayoutTasks):
  51075. * page/FrameView.h:
  51076. 2010-08-30 Anders Carlsson <andersca@apple.com>
  51077. Reviewed by Sam Weinig.
  51078. Fix 32-bit WebKit2 build.
  51079. * WebCore.exp.in:
  51080. 2010-08-31 Nate Chapin <japhet@chromium.org>
  51081. Reviewed by Darin Fisher.
  51082. Regression in r63528: Custom http headers for loads of type
  51083. FrameLoadTypeReloadFromOrigin are not being correctly
  51084. propagated to subresource loads.
  51085. https://bugs.webkit.org/show_bug.cgi?id=44987
  51086. No tests, since DRT doesn't seem to have a way to trigger a
  51087. FrameLoadTypeReloadFromOrigin load.
  51088. * loader/FrameLoader.cpp:
  51089. (WebCore::FrameLoader::addExtraFieldsToRequest):
  51090. 2010-08-31 Sam Weinig <sam@webkit.org>
  51091. Reviewed by Darin Adler.
  51092. Add ability to count text matches without marking
  51093. https://bugs.webkit.org/show_bug.cgi?id=43996
  51094. Safari needs to be able to count text matches without triggering lots of repainting.
  51095. Rename markAllMatchesForText() to countMatchesForText() and add a markMatches parameter.
  51096. * WebCore.exp.in:
  51097. * page/Frame.cpp:
  51098. (WebCore::Frame::countMatchesForText):
  51099. * page/Frame.h:
  51100. * page/Page.cpp:
  51101. (WebCore::Page::markAllMatchesForText):
  51102. 2010-08-31 Eric Carlson <eric.carlson@apple.com>
  51103. Reviewed by Darin Adler.
  51104. canPlayType("application/octet-stream") must return ""
  51105. https://bugs.webkit.org/show_bug.cgi?id=44985
  51106. * platform/graphics/MediaPlayer.cpp:
  51107. (WebCore::MediaPlayer::supportsType): Always return IsNotSupported for application/octet-stream
  51108. 2010-08-31 Martin Robinson <mrobinson@igalia.com>
  51109. Reviewed by Gustavo Noronha Silva.
  51110. [GTK] ScrollbarThemeGtk should respond to theme changes
  51111. https://bugs.webkit.org/show_bug.cgi?id=44782
  51112. Scrollbar is currently written with the assumption that scrollbars never change
  51113. thickness. In GTK+ changing the current theme can alter scrollbar thickness. This
  51114. change manually resizes interior frame scrollbar widgets when the GTK+ theme changes.
  51115. Since we are now tracking style changes, we may also cache theme properties to avoid
  51116. having to call moz_gtk_get_scrollbar_metrics repeatedly during rendering.
  51117. * platform/gtk/RenderThemeGtk.cpp:
  51118. (WebCore::RenderThemeGtk::gtkScrollbar): Added accessor for the Mozilla theming code's
  51119. scrollbar widget. We access it here, because RenderThemGtk takes care of initializing
  51120. the Mozilla code.
  51121. * platform/gtk/RenderThemeGtk.h: Added accessor declaration.
  51122. * platform/gtk/ScrollbarThemeGtk.cpp:
  51123. (WebCore::ScrollbarThemeGtk::ScrollbarThemeGtk): Update the style property cache during construction.
  51124. (WebCore::ScrollbarThemeGtk::registerScrollbar): Track all interior frame scrollbars.
  51125. (WebCore::ScrollbarThemeGtk::unregisterScrollbar): Ditto.
  51126. (WebCore::ScrollbarThemeGtk::updateThemeProperties): Added this method which updates the style cache.
  51127. (WebCore::gtkStyleSetCallback): Added this signal handler for when the style changes.
  51128. (WebCore::ScrollbarThemeGtk::backButtonRect): Use the style cache instead of calling moz_gtk_get_scrollbar_metrics.
  51129. (WebCore::ScrollbarThemeGtk::forwardButtonRect): Ditto.
  51130. (WebCore::ScrollbarThemeGtk::trackRect): Ditto.
  51131. (WebCore::ScrollbarThemeGtk::paintTrackBackground): Ditto.
  51132. (WebCore::ScrollbarThemeGtk::thumbRect): Ditto.
  51133. (WebCore::ScrollbarThemeGtk::paint): Ditto.
  51134. (WebCore::ScrollbarThemeGtk::scrollbarThickness): Ditto.
  51135. (WebCore::ScrollbarThemeGtk::buttonSize): Ditto.
  51136. (WebCore::ScrollbarThemeGtk::minimumThumbLength): Ditto.
  51137. * platform/gtk/ScrollbarThemeGtk.h: Added new method declarations.
  51138. 2010-08-31 Darin Adler <darin@apple.com>
  51139. Reviewed by Anders Carlsson.
  51140. Web archives are created with a size of 0 due to PassRefPtr mistake
  51141. https://bugs.webkit.org/show_bug.cgi?id=44984
  51142. rdar://problem/8042283
  51143. * loader/archive/ArchiveResource.cpp:
  51144. (WebCore::ArchiveResource::ArchiveResource): Merge the three constructors into one.
  51145. (WebCore::ArchiveResource::create): Merge the two create functions into one, and
  51146. fix the logic so there is no use of a PassRefPtr after it has been passed.
  51147. * loader/archive/ArchiveResource.h: Use default arguments instead of overloading
  51148. to cut down from three create functions to two. Remove two of the constructors.
  51149. 2010-08-31 Jian Li <jianli@chromium.org>
  51150. Reviewed by David Levin.
  51151. Expose WorkerContext.createBlobURL and WorkerContext.revokeBlobURL.
  51152. https://bugs.webkit.org/show_bug.cgi?id=44972
  51153. Test: fast/files/workers/worker-apply-blob-url-to-xhr.html
  51154. * page/SecurityOrigin.cpp:
  51155. (WebCore::SecurityOrigin::canRequest):
  51156. * workers/WorkerContext.cpp:
  51157. (WebCore::WorkerContext::createBlobURL):
  51158. (WebCore::WorkerContext::revokeBlobURL):
  51159. * workers/WorkerContext.h:
  51160. * workers/WorkerContext.idl:
  51161. 2010-08-31 Darin Adler <darin@apple.com>
  51162. Reviewed by Anders Carlsson.
  51163. * editing/TextIterator.cpp:
  51164. (WebCore::TextIterator::handleTextBox):
  51165. Added a cast so we can mix int and unsigned in a single ?: expression.
  51166. This warns with clang, but strangely not with gcc.
  51167. * html/parser/HTMLTreeBuilder.cpp: Removed unused functions.
  51168. The clang compiler notices and complains about these. If we need them
  51169. later we should use Subversion to bring them back.
  51170. 2010-08-31 Kenneth Russell <kbr@google.com>
  51171. Reviewed by Simon Fraser.
  51172. Add cross product and arithmetic operations to FloatPoint3D
  51173. https://bugs.webkit.org/show_bug.cgi?id=44970
  51174. Added set, move, and scale operations similar to FloatPoint's,
  51175. addition and subtraction operators, length, lengthSquared and
  51176. cross product. These changes have been tested with new code to be
  51177. added later.
  51178. * platform/graphics/FloatPoint3D.cpp:
  51179. (WebCore::FloatPoint3D::normalize):
  51180. (WebCore::FloatPoint3D::length):
  51181. * platform/graphics/FloatPoint3D.h:
  51182. (WebCore::FloatPoint3D::set):
  51183. (WebCore::FloatPoint3D::move):
  51184. (WebCore::FloatPoint3D::scale):
  51185. (WebCore::FloatPoint3D::dot):
  51186. (WebCore::FloatPoint3D::cross):
  51187. (WebCore::FloatPoint3D::lengthSquared):
  51188. (WebCore::operator +=):
  51189. (WebCore::operator -=):
  51190. (WebCore::operator+):
  51191. (WebCore::operator-):
  51192. (WebCore::operator*):
  51193. 2010-08-31 Martin Robinson <mrobinson@igalia.com>
  51194. Reviewed by Gustavo Noronha Silva.
  51195. [GTK] Isolate all GTK+ typedefs into one file
  51196. https://bugs.webkit.org/show_bug.cgi?id=44900
  51197. * platform/graphics/gtk/CairoUtilities.h: Remove GTK+ typedefs.
  51198. * platform/gtk/ClipboardGtk.h: Ditto.
  51199. * platform/gtk/DataObjectGtk.h: Ditto.
  51200. * platform/gtk/GOwnPtrGtk.h: Ditto.
  51201. * platform/gtk/GRefPtrGtk.h: Ditto.
  51202. * platform/gtk/PasteboardHelper.h: Ditto.
  51203. * platform/gtk/PopupMenuGtk.h: Ditto.
  51204. * platform/gtk/RenderThemeGtk.h: Ditto.
  51205. * platform/gtk/ScrollbarGtk.h: Ditto.
  51206. * platform/gtk/gtk2drawing.c: Remove unused Assertions.h.
  51207. 2010-08-31 Tony Chang <tony@chromium.org>
  51208. Unreviewed, fix chromium compile.
  51209. * bindings/v8/custom/V8DeviceOrientationEventCustom.cpp:
  51210. 2010-08-31 Chris Rogers <crogers@google.com>
  51211. Reviewed by Kenneth Russell.
  51212. audio engine: add FFTConvolver class
  51213. https://bugs.webkit.org/show_bug.cgi?id=34907
  51214. No new tests since audio API is not yet implemented.
  51215. * platform/audio: Added.
  51216. * platform/audio/FFTConvolver.cpp: Added.
  51217. (WebCore::FFTConvolver::FFTConvolver):
  51218. (WebCore::FFTConvolver::process):
  51219. (WebCore::FFTConvolver::reset):
  51220. * platform/audio/FFTConvolver.h: Added.
  51221. (WebCore::FFTConvolver::fftSize):
  51222. 2010-08-31 Jian Li <jianli@chromium.org>
  51223. Reviewed by Darin Fisher and David Levin.
  51224. Fix ThreadableBlobRegistry methods not to rely on WorkerContext.
  51225. https://bugs.webkit.org/show_bug.cgi?id=44971
  51226. We could hit an ASSERT when we're performing some blob related cleanup
  51227. in ScriptExecutionContext destructor when WorkerContext dies. The fix
  51228. is to use isMainThread and callOnMainThread.
  51229. * fileapi/ThreadableBlobRegistry.cpp:
  51230. (WebCore::BlobRegistryContext::BlobRegistryContext):
  51231. (WebCore::registerBlobURLTask):
  51232. (WebCore::ThreadableBlobRegistry::registerBlobURL):
  51233. (WebCore::registerBlobURLFromTask):
  51234. (WebCore::unregisterBlobURLTask):
  51235. (WebCore::ThreadableBlobRegistry::unregisterBlobURL):
  51236. 2010-08-31 Martin Robinson <mrobinson@igalia.com>
  51237. Reviewed by Gustavo Noronha Silva.
  51238. [GTK] Fix 'make dist' in preparation of the 1.3.3 release
  51239. https://bugs.webkit.org/show_bug.cgi?id=44978
  51240. * GNUmakefile.am: Add missing and moved headers to the sources list.
  51241. 2010-08-31 Ryuan Choi <ryuan.choi@samsung.com>
  51242. Reviewed by Antonio Gomes.
  51243. [EFL] crashes while dragging any contents
  51244. https://bugs.webkit.org/show_bug.cgi?id=44940
  51245. Fix crashes caused by returning newly assigned value instead of adoptRef
  51246. value.
  51247. * page/efl/EventHandlerEfl.cpp:
  51248. (WebCore::EventHandler::createDraggingClipboard):
  51249. * platform/efl/ClipboardEfl.cpp:
  51250. (WebCore::Editor::newGeneralClipboard):
  51251. * platform/efl/ClipboardEfl.h:
  51252. (WebCore::ClipboardEfl::create):
  51253. 2010-08-31 Ilya Tikhonovsky <loislo@chromium.org>
  51254. Reviewed by Yury Semikhatsky.
  51255. WebInspector: The parser of Inspector protocol messages should be covered by a test.
  51256. The inspector protocol is based on messages in JSON format.
  51257. Each message should be a JSON object with a number of properties.
  51258. InspectorBackendDispatcher is parsing these messages and should be
  51259. able to detect wrong formatted messages.
  51260. It has these functionality but no tests for it.
  51261. https://bugs.webkit.org/show_bug.cgi?id=44947
  51262. * inspector/CodeGeneratorInspector.pm:
  51263. 2010-08-31 Anton Muhin <antonm@chromium.org>
  51264. Reviewed by Adam Barth.
  51265. [v8] More correct and faster error handling when converting v8 objects to various WebCore strings
  51266. https://bugs.webkit.org/show_bug.cgi?id=44678
  51267. Split v8 object conversion into two phase: 1st, which can throw an exception, and
  51268. 2nd, which must always succeed. That allows to report correctly the case when exception
  51269. happens.
  51270. * bindings/scripts/CodeGeneratorV8.pm:
  51271. * bindings/v8/V8Binding.cpp:
  51272. (WebCore::int32ToWebCoreString):
  51273. (WebCore::v8NonStringValueToWebCoreString):
  51274. * bindings/v8/V8Binding.h:
  51275. (WebCore::V8ParameterBase::operator String):
  51276. (WebCore::V8ParameterBase::operator AtomicString):
  51277. (WebCore::V8ParameterBase::V8ParameterBase):
  51278. (WebCore::V8ParameterBase::prepareBase):
  51279. (WebCore::V8ParameterBase::object):
  51280. (WebCore::V8ParameterBase::setString):
  51281. (WebCore::V8ParameterBase::toString):
  51282. (WebCore::):
  51283. (WebCore::::prepare):
  51284. * bindings/v8/custom/V8BindingMacros.h:
  51285. * bindings/v8/custom/V8DeviceMotionEventCustom.cpp:
  51286. (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback):
  51287. * bindings/v8/cstom/V8DeviceOrientationEventCustom.cpp:
  51288. (WebCore::V8DeviceMotionEvent::initDeviceOrientationEventCallback):
  51289. 2010-08-30 Ilya Tikhonovsky <loislo@chromium.org>
  51290. Reviewed by Joseph Pecoraro.
  51291. WebInspector: it'd be better to introduce inspector API related tests.
  51292. As far as we have some kind of API for Inspector
  51293. it'd be better to have API related tests. This is the test
  51294. for API wrappers. These wrappers are tracking the types of arguments
  51295. of API functions.
  51296. https://bugs.webkit.org/show_bug.cgi?id=44875
  51297. Test: inspector/protocol-error.html
  51298. * inspector/CodeGeneratorInspector.pm:
  51299. * inspector/front-end/inspector.js:
  51300. (WebInspector_syncDispatch):
  51301. (WebInspector.reportProtocolError):
  51302. 2010-08-31 Sheriff Bot <webkit.review.bot@gmail.com>
  51303. Unreviewed, rolling out r66484.
  51304. http://trac.webkit.org/changeset/66484
  51305. https://bugs.webkit.org/show_bug.cgi?id=44966
  51306. Broke EFL build (Requested by acidx on #webkit).
  51307. * CMakeLists.txt:
  51308. 2010-08-31 Ojan Vafai <ojan@chromium.org>
  51309. Reviewed by Tony Chang.
  51310. deduplicate code from Node::checkReplaceChild and Node::checkAddChild
  51311. https://bugs.webkit.org/show_bug.cgi?id=44962
  51312. Remove duplicate code in preparation for fixing https://bugs.webkit.org/show_bug.cgi?id=19524
  51313. No new tests since there is no change in functionality.
  51314. * dom/Node.cpp:
  51315. (WebCore::isChildTypeAllowed):
  51316. (WebCore::Node::canReplaceChild):
  51317. (WebCore::checkAcceptChild):
  51318. (WebCore::transferOwnerDocument):
  51319. (WebCore::Node::checkReplaceChild):
  51320. (WebCore::Node::checkAddChild):
  51321. 2010-08-30 Zhenyao Mo <zmo@google.com>
  51322. Reviewed by Kenneth Russell.
  51323. [Chromium] bindTexture(TEXTURE_CUBE_MAP) shouldn't generate errors with valid cubemap texture
  51324. https://bugs.webkit.org/show_bug.cgi?id=44922
  51325. * html/canvas/WebGLRenderingContext.cpp: Remove TEXTURE_WRAP_R code.
  51326. (WebCore::WebGLRenderingContext::bindTexture):
  51327. * html/canvas/WebGLTexture.cpp: Remove the code for tracking TEXTURE_WRAP_R.
  51328. (WebCore::WebGLTexture::WebGLTexture):
  51329. * html/canvas/WebGLTexture.h: Ditto.
  51330. 2010-08-31 Jian Li <jianli@chromium.org>
  51331. Rubber-stamped by David Levin.
  51332. Rename addTwoCStrings to concatenateTwoCStrings.
  51333. * fileapi/BlobBuilder.cpp:
  51334. (WebCore::concatenateTwoCStrings):
  51335. (WebCore::BlobBuilder::append):
  51336. 2010-08-31 Jian Li <jianli@chromium.org>
  51337. Reviewed by Darin Fisher.
  51338. Improve BlobBuilder to combine adjacent strings.
  51339. https://bugs.webkit.org/show_bug.cgi?id=44884
  51340. * fileapi/BlobBuilder.cpp:
  51341. (WebCore::addTwoCStrings):
  51342. (WebCore::BlobBuilder::append):
  51343. 2010-08-31 Darin Adler <darin@apple.com>
  51344. Reviewed by Simon Fraser.
  51345. Make DOM classes start with a reference count of 1, like all other RefCounted
  51346. https://bugs.webkit.org/show_bug.cgi?id=28068
  51347. * dom/Document.cpp:
  51348. (WebCore::Document::accessSVGExtensions): Use adoptPtr instead of set.
  51349. * dom/Document.h: Removed initialRefCount in Node constructor. It's always 1 now.
  51350. * dom/Node.h: Removed CreateWithZeroRefCountFlag, CreateStyledElementZeroRefCount,
  51351. CreateSVGElementZeroRefCount, and initialRefCount.
  51352. * platform/TreeShared.h: Removed initialRefCount argument. It's always 1 now.
  51353. * rendering/RenderSVGShadowTreeRootContainer.cpp:
  51354. (WebCore::RenderSVGShadowTreeRootContainer::updateFromElement): Use create
  51355. instead of new.
  51356. * rendering/SVGResources.h: Inherit from Noncopyable.
  51357. * rendering/SVGResourcesCache.cpp:
  51358. (WebCore::SVGResourcesCache::~SVGResourcesCache): Removed unneeded special
  51359. case code.
  51360. * rendering/SVGShadowTreeElements.cpp:
  51361. (WebCore::SVGShadowTreeContainerElement::create): Added.
  51362. (WebCore::SVGShadowTreeRootElement::SVGShadowTreeRootElement): Made argument
  51363. type more specific.
  51364. (WebCore::SVGShadowTreeRootElement::create): Added.
  51365. * rendering/SVGShadowTreeElements.h: Added create functions, and made the
  51366. argument type more specific.
  51367. * svg/SVGDocumentExtensions.cpp:
  51368. (WebCore::SVGDocumentExtensions::SVGDocumentExtensions): Use adoptPtr.
  51369. * svg/graphics/SVGImage.cpp:
  51370. (WebCore::SVGImage::dataChanged): Use adoptPtr instead of set.
  51371. * svg/SVGElement.cpp:
  51372. (WebCore::SVGElement::SVGElement): Use CreateSVGElement instead of
  51373. CreateSVGElementZeroRefCount.
  51374. (WebCore::SVGElement::create): Use adoptRef.
  51375. * wml/WMLElement.cpp:
  51376. (WebCore::WMLElement::WMLElement): Use CreateStyledElement instead of
  51377. CreateStyledElementZeroRefCount.
  51378. (WebCore::WMLElement::create): Use adoptRef.
  51379. * svg/SVGAElement.cpp:
  51380. (WebCore::SVGAElement::create):
  51381. * svg/SVGAltGlyphElement.cpp:
  51382. (WebCore::SVGAltGlyphElement::create):
  51383. * svg/SVGAnimateColorElement.cpp:
  51384. (WebCore::SVGAnimateColorElement::create):
  51385. * svg/SVGAnimateElement.cpp:
  51386. (WebCore::SVGAnimateElement::create):
  51387. * svg/SVGAnimateMotionElement.cpp:
  51388. (WebCore::SVGAnimateMotionElement::create):
  51389. * svg/SVGAnimateTransformElement.cpp:
  51390. (WebCore::SVGAnimateTransformElement::create):
  51391. * svg/SVGCircleElement.cpp:
  51392. (WebCore::SVGCircleElement::create):
  51393. * svg/SVGClipPathElement.cpp:
  51394. (WebCore::SVGClipPathElement::create):
  51395. * svg/SVGCursorElement.cpp:
  51396. (WebCore::SVGCursorElement::create):
  51397. * svg/SVGDefsElement.cpp:
  51398. (WebCore::SVGDefsElement::create):
  51399. * svg/SVGDescElement.cpp:
  51400. (WebCore::SVGDescElement::create):
  51401. * svg/SVGEllipseElement.cpp:
  51402. (WebCore::SVGEllipseElement::create):
  51403. * svg/SVGFEBlendElement.cpp:
  51404. (WebCore::SVGFEBlendElement::create):
  51405. * svg/SVGFEColorMatrixElement.cpp:
  51406. (WebCore::SVGFEColorMatrixElement::create):
  51407. * svg/SVGFEComponentTransferElement.cpp:
  51408. (WebCore::SVGFEComponentTransferElement::create):
  51409. * svg/SVGFECompositeElement.cpp:
  51410. (WebCore::SVGFECompositeElement::create):
  51411. * svg/SVGFEConvolveMatrixElement.cpp:
  51412. (WebCore::SVGFEConvolveMatrixElement::create):
  51413. * svg/SVGFEDiffuseLightingElement.cpp:
  51414. (WebCore::SVGFEDiffuseLightingElement::create):
  51415. * svg/SVGFEDisplacementMapElement.cpp:
  51416. (WebCore::SVGFEDisplacementMapElement::create):
  51417. * svg/SVGFEDistantLightElement.cpp:
  51418. (WebCore::SVGFEDistantLightElement::create):
  51419. * svg/SVGFEFloodElement.cpp:
  51420. (WebCore::SVGFEFloodElement::create):
  51421. * svg/SVGFEFuncAElement.cpp:
  51422. (WebCore::SVGFEFuncAElement::create):
  51423. * svg/SVGFEFuncBElement.cpp:
  51424. (WebCore::SVGFEFuncBElement::create):
  51425. * svg/SVGFEFuncGElement.cpp:
  51426. (WebCore::SVGFEFuncGElement::create):
  51427. * svg/SVGFEFuncRElement.cpp:
  51428. (WebCore::SVGFEFuncRElement::create):
  51429. * svg/SVGFEGaussianBlurElement.cpp:
  51430. (WebCore::SVGFEGaussianBlurElement::create):
  51431. * svg/SVGFEImageElement.cpp:
  51432. (WebCore::SVGFEImageElement::create):
  51433. * svg/SVGFEMergeElement.cpp:
  51434. (WebCore::SVGFEMergeElement::create):
  51435. * svg/SVGFEMergeNodeElement.cpp:
  51436. (WebCore::SVGFEMergeNodeElement::create):
  51437. * svg/SVGFEMorphologyElement.cpp:
  51438. (WebCore::SVGFEMorphologyElement::create):
  51439. * svg/SVGFEOffsetElement.cpp:
  51440. (WebCore::SVGFEOffsetElement::create):
  51441. * svg/SVGFEPointLightElement.cpp:
  51442. (WebCore::SVGFEPointLightElement::create):
  51443. * svg/SVGFESpecularLightingElement.cpp:
  51444. (WebCore::SVGFESpecularLightingElement::create):
  51445. * svg/SVGFESpotLightElement.cpp:
  51446. (WebCore::SVGFESpotLightElement::create):
  51447. * svg/SVGFETileElement.cpp:
  51448. (WebCore::SVGFETileElement::create):
  51449. * svg/SVGFETurbulenceElement.cpp:
  51450. (WebCore::SVGFETurbulenceElement::create):
  51451. * svg/SVGFilterElement.cpp:
  51452. (WebCore::SVGFilterElement::create):
  51453. * svg/SVGFontElement.cpp:
  51454. (WebCore::SVGFontElement::create):
  51455. * svg/SVGFontFaceElement.cpp:
  51456. (WebCore::SVGFontFaceElement::create):
  51457. * svg/SVGFontFaceFormatElement.cpp:
  51458. (WebCore::SVGFontFaceFormatElement::create):
  51459. * svg/SVGFontFaceNameElement.cpp:
  51460. (WebCore::SVGFontFaceNameElement::create):
  51461. * svg/SVGFontFaceSrcElement.cpp:
  51462. (WebCore::SVGFontFaceSrcElement::create):
  51463. * svg/SVGFontFaceUriElement.cpp:
  51464. (WebCore::SVGFontFaceUriElement::create):
  51465. * svg/SVGForeignObjectElement.cpp:
  51466. (WebCore::SVGForeignObjectElement::create):
  51467. * svg/SVGGElement.cpp:
  51468. (WebCore::SVGGElement::create):
  51469. * svg/SVGGlyphElement.cpp:
  51470. (WebCore::SVGGlyphElement::create):
  51471. * svg/SVGHKernElement.cpp:
  51472. (WebCore::SVGHKernElement::create):
  51473. * svg/SVGImageElement.cpp:
  51474. (WebCore::SVGImageElement::create):
  51475. * svg/SVGLineElement.cpp:
  51476. (WebCore::SVGLineElement::create):
  51477. * svg/SVGLinearGradientElement.cpp:
  51478. (WebCore::SVGLinearGradientElement::create):
  51479. * svg/SVGMPathElement.cpp:
  51480. (WebCore::SVGMPathElement::create):
  51481. * svg/SVGMarkerElement.cpp:
  51482. (WebCore::SVGMarkerElement::create):
  51483. * svg/SVGMaskElement.cpp:
  51484. (WebCore::SVGMaskElement::create):
  51485. * svg/SVGMetadataElement.cpp:
  51486. (WebCore::SVGMetadataElement::create):
  51487. * svg/SVGMissingGlyphElement.cpp:
  51488. (WebCore::SVGMissingGlyphElement::create):
  51489. * svg/SVGPathElement.cpp:
  51490. (WebCore::SVGPathElement::create):
  51491. * svg/SVGPatternElement.cpp:
  51492. (WebCore::SVGPatternElement::create):
  51493. * svg/SVGPolygonElement.cpp:
  51494. (WebCore::SVGPolygonElement::create):
  51495. * svg/SVGPolylineElement.cpp:
  51496. (WebCore::SVGPolylineElement::create):
  51497. * svg/SVGRadialGradientElement.cpp:
  51498. (WebCore::SVGRadialGradientElement::create):
  51499. * svg/SVGRectElement.cpp:
  51500. (WebCore::SVGRectElement::create):
  51501. * svg/SVGSVGElement.cpp:
  51502. (WebCore::SVGSVGElement::create):
  51503. (WebCore::SVGSVGElement::currentView):
  51504. * svg/SVGScriptElement.cpp:
  51505. (WebCore::SVGScriptElement::create):
  51506. * svg/SVGSetElement.cpp:
  51507. (WebCore::SVGSetElement::create):
  51508. * svg/SVGStopElement.cpp:
  51509. (WebCore::SVGStopElement::create):
  51510. * svg/SVGStyleElement.cpp:
  51511. (WebCore::SVGStyleElement::create):
  51512. * svg/SVGSwitchElement.cpp:
  51513. (WebCore::SVGSwitchElement::create):
  51514. * svg/SVGSymbolElement.cpp:
  51515. (WebCore::SVGSymbolElement::create):
  51516. * svg/SVGTRefElement.cpp:
  51517. (WebCore::SVGTRefElement::create):
  51518. * svg/SVGTSpanElement.cpp:
  51519. (WebCore::SVGTSpanElement::create):
  51520. * svg/SVGTextElement.cpp:
  51521. (WebCore::SVGTextElement::create):
  51522. * svg/SVGTextPathElement.cpp:
  51523. (WebCore::SVGTextPathElement::create):
  51524. * svg/SVGTitleElement.cpp:
  51525. (WebCore::SVGTitleElement::create):
  51526. * svg/SVGUseElement.cpp:
  51527. (WebCore::SVGUseElement::create):
  51528. (WebCore::SVGUseElement::expandUseElementsInShadowTree):
  51529. * svg/SVGVKernElement.cpp:
  51530. (WebCore::SVGVKernElement::create):
  51531. * svg/SVGViewElement.cpp:
  51532. (WebCore::SVGViewElement::create):
  51533. * wml/WMLAElement.cpp:
  51534. (WebCore::WMLAElement::create):
  51535. * wml/WMLAccessElement.cpp:
  51536. (WebCore::WMLAccessElement::create):
  51537. * wml/WMLAnchorElement.cpp:
  51538. (WebCore::WMLAnchorElement::create):
  51539. * wml/WMLBRElement.cpp:
  51540. (WebCore::WMLBRElement::create):
  51541. * wml/WMLCardElement.cpp:
  51542. (WebCore::WMLCardElement::create):
  51543. * wml/WMLDoElement.cpp:
  51544. (WebCore::WMLDoElement::create):
  51545. * wml/WMLDocument.h:
  51546. (WebCore::WMLDocument::create):
  51547. * wml/WMLFieldSetElement.cpp:
  51548. (WebCore::WMLFieldSetElement::create):
  51549. * wml/WMLFormControlElement.cpp:
  51550. (WebCore::WMLFormControlElement::create):
  51551. * wml/WMLGoElement.cpp:
  51552. (WebCore::WMLGoElement::create):
  51553. * wml/WMLImageElement.cpp:
  51554. (WebCore::WMLImageElement::create):
  51555. * wml/WMLInputElement.cpp:
  51556. (WebCore::WMLInputElement::create):
  51557. * wml/WMLInsertedLegendElement.cpp:
  51558. (WebCore::WMLInsertedLegendElement::create):
  51559. * wml/WMLIntrinsicEvent.cpp:
  51560. (WebCore::WMLIntrinsicEvent::create):
  51561. * wml/WMLMetaElement.cpp:
  51562. (WebCore::WMLMetaElement::create):
  51563. * wml/WMLNoopElement.cpp:
  51564. (WebCore::WMLNoopElement::create):
  51565. * wml/WMLOnEventElement.cpp:
  51566. (WebCore::WMLOnEventElement::create):
  51567. * wml/WMLOptGroupElement.cpp:
  51568. (WebCore::WMLOptGroupElement::create):
  51569. * wml/WMLOptionElement.cpp:
  51570. (WebCore::WMLOptionElement::create):
  51571. * wml/WMLPElement.cpp:
  51572. (WebCore::WMLPElement::create):
  51573. * wml/WMLPostfieldElement.cpp:
  51574. (WebCore::WMLPostfieldElement::create):
  51575. * wml/WMLPrevElement.cpp:
  51576. (WebCore::WMLPrevElement::create):
  51577. * wml/WMLRefreshElement.cpp:
  51578. (WebCore::WMLRefreshElement::create):
  51579. * wml/WMLSelectElement.cpp:
  51580. (WebCore::WMLSelectElement::create):
  51581. * wml/WMLSetvarElement.cpp:
  51582. (WebCore::WMLSetvarElement::create):
  51583. * wml/WMLTableElement.cpp:
  51584. (WebCore::WMLTableElement::create):
  51585. * wml/WMLTaskElement.cpp:
  51586. (WebCore::WMLTaskElement::create):
  51587. * wml/WMLTemplateElement.cpp:
  51588. (WebCore::WMLTemplateElement::create):
  51589. * wml/WMLTimerElement.cpp:
  51590. (WebCore::WMLTimerElement::create):
  51591. Use adoptRef.
  51592. 2010-08-31 Justin Schuh <jschuh@chromium.org>
  51593. Reviewed by Nate Chapin.
  51594. Local frame loads should check against origin (not referrer)
  51595. https://bugs.webkit.org/show_bug.cgi?id=44888
  51596. Test: fast/frames/iframe-no-src-local-origin-allow.html
  51597. * loader/SubframeLoader.cpp:
  51598. (WebCore::SubframeLoader::loadSubframe):
  51599. 2010-08-25 Zhenyao Mo <zmo@google.com>
  51600. Reviewed by Kenneth Russell.
  51601. Passing premultiplyAlpha=false to tex{Sub}Image2D loses information (cg)
  51602. https://bugs.webkit.org/show_bug.cgi?id=44566
  51603. * platform/graphics/cg/GraphicsContext3DCG.cpp:
  51604. (WebCore::GraphicsContext3D::getImageData): Fix the premultiplyAlpha issue for cg.
  51605. 2010-08-31 Dave Hyatt <hyatt@apple.com>
  51606. Reviewed by Adam Roben.
  51607. https://bugs.webkit.org/show_bug.cgi?id=44956, paginate block-level replaced elements.
  51608. <rdar://problem/8000991> Images with display:block get split between columns or pages
  51609. Added fast/multicol/paginate-block-replaced.html
  51610. * rendering/RenderBlock.cpp:
  51611. (WebCore::RenderBlock::paintChildren):
  51612. 2010-08-31 Alexey Proskuryakov <ap@apple.com>
  51613. Reviewed by Darin Adler.
  51614. https://bugs.webkit.org/show_bug.cgi?id=36515
  51615. CSS style definitions are ignored if they just follow a "@charset" which appears in lines
  51616. other than the first line in stylesheet.
  51617. Test: fast/css/misplaced-charset.html
  51618. * css/CSSGrammar.y: Ignore a misplaced charset rule without consuming extra characters and
  51619. thus breaking subsequent rules.
  51620. 2010-08-31 Patrick Gansterer <paroga@paroga.com>
  51621. Reviewed by Antonio Gomes.
  51622. [CMake] Add IF (ENABLE_MATHML) around MathML sources
  51623. https://bugs.webkit.org/show_bug.cgi?id=44927
  51624. * CMakeLists.txt:
  51625. 2010-08-31 Patrick Gansterer <paroga@paroga.com>
  51626. Reviewed by Kenneth Rohde Christiansen.
  51627. [CMake] Unify GENERATE_DOM_NAMES code
  51628. https://bugs.webkit.org/show_bug.cgi?id=44842
  51629. * CMakeLists.txt: Added property svn:eol-style.
  51630. 2010-08-31 Daniel Cheng <dcheng@chromium.org>
  51631. Reviewed by Tony Chang.
  51632. [chromium] Add an interface for platform copy/paste drag/drop data objects
  51633. https://bugs.webkit.org/show_bug.cgi?id=44914
  51634. Currently, Chromium only supports a few hardcoded data types in
  51635. event.dataTransfer. This is the first of several patches to add support
  51636. for arbitrary data types.
  51637. No new tests.
  51638. * WebCore.gypi:
  51639. * platform/chromium/ChromiumDataObjectNew.h: Added.
  51640. * platform/chromium/ClipboardChromium.cpp:
  51641. 2010-08-30 Andrey Kosyakov <caseq@chromium.org>
  51642. Reviewed by Yury Semikhatsky.
  51643. Web Inspector: add audits support to extension API
  51644. Exposed (late) adding of categories from AuditPanel.
  51645. Removed indexOfObjectInListSortedByFunction in favor of
  51646. insertionIndexForObjectInListSortedByFunction (the former had
  51647. weird interface always returning negative numbers and was only used in
  51648. the latter).
  51649. https://bugs.webkit.org/show_bug.cgi?id=44518
  51650. Tests: inspector/extensions-audits-api.html
  51651. inspector/extensions-audits.html
  51652. * WebCore.gypi:
  51653. * WebCore.vcproj/WebCore.vcproj:
  51654. * inspector/front-end/AuditFormatters.js: Added.
  51655. (WebInspector.applyFormatters):
  51656. (WebInspector.AuditFormatters.text):
  51657. (WebInspector.AuditFormatters.snippet):
  51658. (WebInspector.AuditFormatters.concat):
  51659. (WebInspector.AuditFormatters.url):
  51660. * inspector/front-end/AuditLauncherView.js:
  51661. (WebInspector.AuditLauncherView):
  51662. (WebInspector.AuditLauncherView.prototype.addCategory.compareCategories):
  51663. (WebInspector.AuditLauncherView.prototype.addCategory):
  51664. (WebInspector.AuditLauncherView.prototype._launchButtonClicked):
  51665. (WebInspector.AuditLauncherView.prototype._selectAllClicked):
  51666. (WebInspector.AuditLauncherView.prototype._categoryClicked):
  51667. (WebInspector.AuditLauncherView.prototype._createCategoryElement):
  51668. (WebInspector.AuditLauncherView.prototype._createLauncherUI):
  51669. * inspector/front-end/AuditResultView.js:
  51670. (WebInspector.AuditCategoryResultPane.prototype._appendResult):
  51671. * inspector/front-end/AuditsPanel.js:
  51672. (WebInspector.AuditsPanel):
  51673. (WebInspector.AuditsPanel.prototype.addCategory):
  51674. (WebInspector.AuditsPanel.prototype.getCategory):
  51675. (WebInspector.AuditsPanel.prototype._executeAudit):
  51676. (WebInspector.AuditCategory.prototype.run):
  51677. * inspector/front-end/ExtensionAPI.js:
  51678. (WebInspector.injectedExtensionAPI):
  51679. (WebInspector.injectedExtensionAPI.EventSinkImpl.prototype.addListener):
  51680. (WebInspector.injectedExtensionAPI.EventSinkImpl.prototype._fire):
  51681. (WebInspector.injectedExtensionAPI.EventSinkImpl.prototype._dispatch):
  51682. (WebInspector.injectedExtensionAPI.EventSink):
  51683. (WebInspector.injectedExtensionAPI.InspectorExtensionAPI):
  51684. (WebInspector.injectedExtensionAPI.Panels.prototype.create):
  51685. (WebInspector.injectedExtensionAPI.Audits):
  51686. (WebInspector.injectedExtensionAPI.Audits.prototype.addCategory):
  51687. (WebInspector.injectedExtensionAPI.AuditCategory.customDispatch):
  51688. (WebInspector.injectedExtensionAPI.AuditCategory):
  51689. (WebInspector.injectedExtensionAPI.AuditCategoryImpl):
  51690. (WebInspector.injectedExtensionAPI.AuditResult):
  51691. (WebInspector.injectedExtensionAPI.AuditResult.prototype.get Severity):
  51692. (WebInspector.injectedExtensionAPI.AuditResultImpl):
  51693. (WebInspector.injectedExtensionAPI.AuditResultImpl.prototype.addResult):
  51694. (WebInspector.injectedExtensionAPI.AuditResultImpl.prototype.createResult):
  51695. (WebInspector.injectedExtensionAPI.AuditResultImpl.prototype.done):
  51696. (WebInspector.injectedExtensionAPI.AuditResultImpl.prototype._nodeFactory):
  51697. (WebInspector.injectedExtensionAPI.AuditResultNode):
  51698. (WebInspector.injectedExtensionAPI.AuditResultNode.prototype.addChild):
  51699. * inspector/front-end/ExtensionAuditCategory.js: Added.
  51700. (WebInspector.ExtensionAuditCategory):
  51701. (WebInspector.ExtensionAuditCategory.prototype.get id):
  51702. (WebInspector.ExtensionAuditCategory.prototype.get displayName):
  51703. (WebInspector.ExtensionAuditCategory.prototype.get ruleCount):
  51704. (WebInspector.ExtensionAuditCategory.prototype.run):
  51705. (WebInspector.ExtensionAuditCategoryResults):
  51706. (WebInspector.ExtensionAuditCategoryResults.prototype.get complete):
  51707. (WebInspector.ExtensionAuditCategoryResults.prototype.cancel):
  51708. (WebInspector.ExtensionAuditCategoryResults.prototype.addResult):
  51709. (WebInspector.ExtensionAuditCategoryResults.prototype._addNode):
  51710. (WebInspector.ExtensionAuditCategoryResults.prototype._addResult):
  51711. * inspector/front-end/ExtensionCommon.js: Added.
  51712. (WebInspector.commonExtensionSymbols):
  51713. * inspector/front-end/ExtensionServer.js:
  51714. (WebInspector.ExtensionServer):
  51715. (WebInspector.ExtensionServer.prototype.startAuditRun):
  51716. (WebInspector.ExtensionServer.prototype.stopAuditRun):
  51717. (WebInspector.ExtensionServer.prototype._postNotification):
  51718. (WebInspector.ExtensionServer.prototype._onAddAuditCategory):
  51719. (WebInspector.ExtensionServer.prototype._onAddAuditResult):
  51720. (WebInspector.ExtensionServer.prototype._onStopAuditCategoryRun):
  51721. (WebInspector.ExtensionServer.prototype._addExtensions):
  51722. (WebInspector.ExtensionServer.prototype._buildExtensionAPIInjectedScript):
  51723. (WebInspector.ExtensionStatus):
  51724. * inspector/front-end/WebKit.qrc:
  51725. * inspector/front-end/inspector.html:
  51726. * inspector/front-end/utilities.js:
  51727. ():
  51728. 2010-08-31 Justin Schuh <jschuh@chromium.org>
  51729. Reviewed by Nate Chapin.
  51730. Remove unused canReferToParentFrameEncoding() function from FrameLoader.cpp
  51731. https://bugs.webkit.org/show_bug.cgi?id=44895
  51732. No new tests; no behavior changed.
  51733. * loader/FrameLoader.cpp:
  51734. 2010-08-31 Jeremy Orlow <jorlow@chromium.org>
  51735. Build fix.
  51736. * storage/IDBObjectStoreBackendImpl.cpp:
  51737. (WebCore::IDBObjectStoreBackendImpl::openCursor):
  51738. 2010-08-24 Jeremy Orlow <jorlow@chromium.org>
  51739. Reviewed by Steve Block.
  51740. Implement the rest of IDBCursors + make them persistent
  51741. https://bugs.webkit.org/show_bug.cgi?id=44546
  51742. Because the old (memory only) backend didn't support ranges, IDBCursors
  51743. were never really finished. This completes them on top of SQLite like
  51744. the rest of IndexedDB.
  51745. Test: storage/indexeddb/objectstore-cursor.html
  51746. * storage/IDBCursor.cpp:
  51747. (WebCore::IDBCursor::value):
  51748. * storage/IDBCursorBackendImpl.cpp:
  51749. (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):
  51750. (WebCore::IDBCursorBackendImpl::key):
  51751. (WebCore::IDBCursorBackendImpl::value):
  51752. (WebCore::IDBCursorBackendImpl::update):
  51753. (WebCore::IDBCursorBackendImpl::continueFunction):
  51754. (WebCore::IDBCursorBackendImpl::remove):
  51755. (WebCore::IDBCursorBackendImpl::loadCurrentRow):
  51756. * storage/IDBCursorBackendImpl.h:
  51757. (WebCore::IDBCursorBackendImpl::create):
  51758. * storage/IDBCursorBackendInterface.h:
  51759. * storage/IDBKey.cpp:
  51760. (WebCore::IDBKey::isEqual):
  51761. * storage/IDBKey.h:
  51762. * storage/IDBKeyRange.cpp:
  51763. (WebCore::IDBKeyRange::leftBound):
  51764. (WebCore::IDBKeyRange::rightBound):
  51765. (WebCore::IDBKeyRange::bound):
  51766. * storage/IDBObjectStoreBackendImpl.cpp:
  51767. (WebCore::cursorWhereFragment):
  51768. (WebCore::IDBObjectStoreBackendImpl::openCursor):
  51769. 2010-08-27 John Gregg <johnnyg@google.com>
  51770. Reviewed by David Levin.
  51771. Notifications should support a click event
  51772. https://bugs.webkit.org/show_bug.cgi?id=44800
  51773. Test: fast/notifications/notifications-click-event.html
  51774. * notifications/Notification.h:
  51775. * notifications/Notification.idl:
  51776. 2010-08-31 Kent Tamura <tkent@chromium.org>
  51777. Reviewed by Adam Barth.
  51778. [V8] Custom binding for "dataset"
  51779. https://bugs.webkit.org/show_bug.cgi?id=44930
  51780. * WebCore.gyp/WebCore.gyp: Remove the exclusion of DOMStringMap.idl.
  51781. * WebCore.gypi: Add V8DOMStringMapCustom.cpp.
  51782. * bindings/v8/custom/V8DOMStringMapCustom.cpp: Added.
  51783. (WebCore::V8DOMStringMap::namedPropertyQuery):
  51784. (WebCore::V8DOMStringMap::namedPropertyGetter):
  51785. (WebCore::V8DOMStringMap::namedPropertyEnumerator):
  51786. (WebCore::V8DOMStringMap::namedPropertyDeleter):
  51787. (WebCore::V8DOMStringMap::namedPropertySetter):
  51788. * dom/Element.idl: Remove V8 exclusion.
  51789. * page/DOMWindow.idl: ditto.
  51790. 2010-08-31 Jian Li <jianli@chromium.org>
  51791. Fix chromium build break.
  51792. * page/DOMWindow.h:
  51793. 2010-08-31 Adam Barth <abarth@webkit.org>
  51794. Reviewed by Eric Seidel.
  51795. Stale document crashes at multiple URLs (with new parser)
  51796. https://bugs.webkit.org/show_bug.cgi?id=44885
  51797. We're not supposed to load resources in detached documents. According
  51798. to several locations I examined, it's the job of the caller of
  51799. DocLoader to check this invariant. Like most code dealing with
  51800. detached documents, this check isn't overly consistent. At some point,
  51801. we'll need to rationalize all the different patterns here. However, at
  51802. this point, this patch appears correct because it matches what we do
  51803. for <link rel="stylesheet">.
  51804. Test: fast/dom/HTMLLinkElement/prefetch-detached.html
  51805. * html/HTMLLinkElement.cpp:
  51806. (WebCore::HTMLLinkElement::process):
  51807. * loader/DocLoader.cpp:
  51808. (WebCore::DocLoader::requestLinkPrefetch):
  51809. 2010-08-31 Jian Li <jianli@chromium.org>
  51810. Reviewed by David Levin.
  51811. Expose window.createBlobURL and window.revokeBlobURL.
  51812. https://bugs.webkit.org/show_bug.cgi?id=44908
  51813. Tests: fast/files/apply-blob-url-to-img.html
  51814. fast/files/apply-blob-url-to-xhr.html
  51815. * page/DOMWindow.cpp:
  51816. (WebCore::DOMWindow::createBlobURL):
  51817. (WebCore::DOMWindow::revokeBlobURL):
  51818. * page/DOMWindow.h:
  51819. * page/DOMWindow.idl:
  51820. * xml/XMLHttpRequest.cpp:
  51821. (WebCore::XMLHttpRequest::createRequest):
  51822. 2010-08-31 Jian Li <jianli@chromium.org>
  51823. Reviewed by David Levin.
  51824. Support FileReaderSync in workers.
  51825. https://bugs.webkit.org/show_bug.cgi?id=44657
  51826. Also add FileException interface and make Blob/File/FileError useable in
  51827. workers.
  51828. Tests: fast/files/workers/worker-read-blob-async.html
  51829. fast/files/workers/worker-read-blob-sync.html
  51830. fast/files/workers/worker-read-file-async.html
  51831. fast/files/workers/worker-read-file-sync.html
  51832. * DerivedSources.cpp:
  51833. * DerivedSources.make:
  51834. * WebCore.gypi:
  51835. * WebCore.pro:
  51836. * WebCore.vcproj/WebCore.vcproj:
  51837. * WebCore.xcodeproj/project.pbxproj:
  51838. * fileapi/Blob.idl: Added NoStaticTables attribute.
  51839. * fileapi/File.idl: Added NoStaticTables attribute.
  51840. * fileapi/FileError.idl: Added NoStaticTables attribute.
  51841. * fileapi/FileException.h: Added.
  51842. * fileapi/FileException.idl: Added.
  51843. * fileapi/FileReaderSync.cpp: Added.
  51844. * fileapi/FileReaderSync.h: Added.
  51845. * fileapi/FileReaderSync.idl: Added.
  51846. * workers/WorkerContext.idl: Expose FileReaderSync and BlodBuilder in workers.
  51847. 2010-08-30 Philippe Normand <pnormand@igalia.com>
  51848. Reviewed by Martin Robinson.
  51849. [GTK] Buffered ranges drawing support
  51850. https://bugs.webkit.org/show_bug.cgi?id=44869
  51851. Refactored the media slider track painting code to support
  51852. multiple buffered ranges painting. This change introduces no
  51853. functional regression.
  51854. * platform/gtk/RenderThemeGtk.cpp:
  51855. (WebCore::RenderThemeGtk::paintMediaSliderTrack):
  51856. 2010-08-30 Mihai Parparita <mihaip@chromium.org>
  51857. Reviewed by Adam Barth.
  51858. HISTORY_ALWAYS_ASYNC should be removed (history should always be async)
  51859. https://bugs.webkit.org/show_bug.cgi?id=44315
  51860. Remove check in RedirectScheduler::scheduleHistoryNavigation that would
  51861. dispatch some navigations synchronously.
  51862. Test: fast/history/history-traversal-is-asynchronous.html
  51863. * loader/RedirectScheduler.cpp:
  51864. (WebCore::RedirectScheduler::scheduleHistoryNavigation):
  51865. 2010-08-30 Jian Li <jianli@chromium.org>
  51866. Try to fix break again.
  51867. * fileapi/ThreadableBlobRegistry.cpp:
  51868. (WebCore::ThreadableBlobRegistry::registerBlobURL):
  51869. (WebCore::ThreadableBlobRegistry::unregisterBlobURL):
  51870. 2010-08-30 Jian Li <jianli@chromium.org>
  51871. Fix another build break. Also fix directory upload test break.
  51872. * fileapi/File.cpp:
  51873. (WebCore::File::File):
  51874. * fileapi/ThreadableBlobRegistry.cpp:
  51875. 2010-08-30 Jian Li <jianli@chromium.org>
  51876. Fix build break.
  51877. * xml/XMLHttpRequest.cpp:
  51878. (WebCore::XMLHttpRequest::send):
  51879. 2010-08-30 Jian Li <jianli@chromium.org>
  51880. Fix qt/gtk build break.
  51881. * platform/network/BlobRegistryImpl.cpp:
  51882. 2010-08-30 Jian Li <jianli@chromium.org>
  51883. Reviewed by Darin Fisher.
  51884. Switch the Blob implementation to using the blob data registration model
  51885. https://bugs.webkit.org/show_bug.cgi?id=44389
  51886. Tests: fast/files/read-blob-async.html
  51887. fast/files/read-file-async.html
  51888. With this switch, File/Blob/BlobBuilder are changed to register the blob
  51889. data. FileReader is changed to route through loading the blob resource.
  51890. FormData is also updated to take BlobData. The WebKit mac implementation
  51891. is updated to resolve the blob references in the BlobData.
  51892. * CMakeLists.txt: Update the project file to remove BlobItem.*.
  51893. * GNUmakefile.am: Update the project file to remove BlobItem.*.
  51894. * WebCore.gypi: Update the project file to remove BlobItem.*.
  51895. * WebCore.pro: Update the project file to remove BlobItem.*.
  51896. * WebCore.vcproj/WebCore.vcproj: Update the project file to remove BlobItem.*.
  51897. * WebCore.xcodeproj/project.pbxproj: Update the project file to remove BlobItem.*.
  51898. * fileapi/Blob.cpp: Switch to using BlobData.
  51899. (WebCore::Blob::Blob):
  51900. (WebCore::Blob::slice):
  51901. * fileapi/Blob.h: Switch to using BlobData.
  51902. (WebCore::Blob::create):
  51903. (WebCore::Blob::size):
  51904. (WebCore::Blob::isFile):
  51905. * fileapi/BlobBuilder.cpp: Switch to using BlobData.
  51906. (WebCore::BlobBuilder::BlobBuilder):
  51907. (WebCore::BlobBuilder::append):
  51908. (WebCore::BlobBuilder::getBlob):
  51909. * fileapi/BlobBuilder.h: Switch to using BlobData.
  51910. * fileapi/BlobURL.cpp: Add a new helper method used in FormData.
  51911. (WebCore::BlobURL::getIdentifier):
  51912. * fileapi/BlobURL.h:
  51913. * fileapi/File.cpp: Switch to using BlobData.
  51914. (WebCore::createBlobDataForFile):
  51915. (WebCore::File::File):
  51916. (WebCore::File::size):
  51917. (WebCore::File::captureSnapshot):
  51918. * fileapi/File.h: Switch to using BlobData.
  51919. (WebCore::File::create):
  51920. (WebCore::File::path):
  51921. (WebCore::File::name):
  51922. (WebCore::File::webkitRelativePath):
  51923. * fileapi/FileReader.cpp: Change the reading to route through blob resource loading.
  51924. (WebCore::FileReader::FileReader):
  51925. (WebCore::FileReader::readAsBinaryString):
  51926. (WebCore::FileReader::readAsText):
  51927. (WebCore::FileReader::readAsDataURL):
  51928. (WebCore::delayedStart):
  51929. (WebCore::FileReader::readInternal):
  51930. (WebCore::FileReader::terminate):
  51931. (WebCore::FileReader::start):
  51932. (WebCore::FileReader::didReceiveResponse):
  51933. (WebCore::FileReader::didReceiveData):
  51934. (WebCore::FileReader::didFinishLoading):
  51935. (WebCore::FileReader::didFail):
  51936. (WebCore::FileReader::failed):
  51937. (WebCore::FileReader::httpStatusCodeToExceptionCode):
  51938. (WebCore::FileReader::result):
  51939. (WebCore::FileReader::convertToDataURL):
  51940. * fileapi/FileReader.h:
  51941. * html/FormDataList.cpp: Account to BlobData change.
  51942. (WebCore::FormDataList::appendString):
  51943. (WebCore::FormDataList::appendBlob):
  51944. * html/FormDataList.h: Account to BlobData change.
  51945. (WebCore::FormDataList::appendBlob):
  51946. (WebCore::FormDataList::Item::Item):
  51947. (WebCore::FormDataList::Item::data):
  51948. (WebCore::FormDataList::Item::blob):
  51949. (WebCore::FormDataList::items):
  51950. * loader/FormSubmission.cpp: Account to BlobData change.
  51951. (WebCore::FormSubmission::create):
  51952. * platform/BlobItem.cpp: Removed.
  51953. * platform/BlobItem.h: Removed.
  51954. * platform/network/BlobRegistryImpl.cpp: Add the implementations for resource loading.
  51955. (WebCore::BlobRegistryImpl::createResourceHandle):
  51956. (WebCore::BlobRegistryImpl::loadResourceSynchronously):
  51957. * platform/network/BlobResourceHandle.cpp: Fix a bug that the ref is not added.
  51958. (WebCore::BlobResourceHandle::BlobResourceHandle):
  51959. * platform/network/FormData.cpp: Account to BlobData change.
  51960. (WebCore::FormData::create):
  51961. (WebCore::FormData::createMultiPart):
  51962. (WebCore::FormData::deepCopy):
  51963. (WebCore::FormData::appendFile):
  51964. (WebCore::FormData::appendKeyValuePairItems):
  51965. * platform/network/FormData.h: Account to BlobData change.
  51966. * platform/network/mac/FormDataStreamMac.mm: Resolve blob references in the form data.
  51967. (WebCore::closeCurrentStream):
  51968. (WebCore::advanceCurrentStream):
  51969. (WebCore::formCreate):
  51970. (WebCore::formRead):
  51971. (WebCore::setHTTPBody):
  51972. * xml/XMLHttpRequest.cpp: Account to BlobData change.
  51973. (WebCore::XMLHttpRequest::send):
  51974. 2010-08-30 Eric Seidel <eric@webkit.org>
  51975. Unreviewed, rolling out r66418.
  51976. http://trac.webkit.org/changeset/66418
  51977. https://bugs.webkit.org/show_bug.cgi?id=44896
  51978. Adam tried to roll this out with:
  51979. https://bugs.webkit.org/show_bug.cgi?id=44924
  51980. but we hit a commit-queue edgecase and it failed, trying again.
  51981. Causing test failures on multiple bots
  51982. * rendering/RenderForeignObject.cpp:
  51983. (WebCore::RenderForeignObject::layout):
  51984. * rendering/RenderObject.cpp:
  51985. * rendering/RenderObject.h:
  51986. (WebCore::RenderObject::setNeedsBoundariesUpdate):
  51987. * rendering/RenderObjectChildList.cpp:
  51988. (WebCore::RenderObjectChildList::removeChildNode):
  51989. * rendering/RenderPath.cpp:
  51990. (WebCore::RenderPath::layout):
  51991. (WebCore::RenderPath::paint):
  51992. (WebCore::RenderPath::styleWillChange):
  51993. * rendering/RenderPath.h:
  51994. (WebCore::RenderPath::setNeedsBoundariesUpdate):
  51995. * rendering/RenderSVGBlock.cpp:
  51996. * rendering/RenderSVGBlock.h:
  51997. * rendering/RenderSVGContainer.cpp:
  51998. (WebCore::RenderSVGContainer::RenderSVGContainer):
  51999. (WebCore::RenderSVGContainer::layout):
  52000. (WebCore::RenderSVGContainer::paint):
  52001. (WebCore::RenderSVGContainer::objectBoundingBox):
  52002. (WebCore::RenderSVGContainer::strokeBoundingBox):
  52003. (WebCore::RenderSVGContainer::repaintRectInLocalCoordinates):
  52004. * rendering/RenderSVGContainer.h:
  52005. (WebCore::RenderSVGContainer::calculateLocalTransform):
  52006. * rendering/RenderSVGGradientStop.h:
  52007. * rendering/RenderSVGHiddenContainer.cpp:
  52008. (WebCore::RenderSVGHiddenContainer::clippedOverflowRectForRepaint):
  52009. (WebCore::RenderSVGHiddenContainer::objectBoundingBox):
  52010. (WebCore::RenderSVGHiddenContainer::repaintRectInLocalCoordinates):
  52011. * rendering/RenderSVGHiddenContainer.h:
  52012. * rendering/RenderSVGImage.cpp:
  52013. (WebCore::RenderSVGImage::layout):
  52014. * rendering/RenderSVGImage.h:
  52015. * rendering/RenderSVGInline.cpp:
  52016. * rendering/RenderSVGInline.h:
  52017. * rendering/RenderSVGModelObject.cpp:
  52018. * rendering/RenderSVGModelObject.h:
  52019. * rendering/RenderSVGRoot.cpp:
  52020. (WebCore::RenderSVGRoot::RenderSVGRoot):
  52021. (WebCore::RenderSVGRoot::layout):
  52022. (WebCore::RenderSVGRoot::objectBoundingBox):
  52023. (WebCore::RenderSVGRoot::strokeBoundingBox):
  52024. (WebCore::RenderSVGRoot::repaintRectInLocalCoordinates):
  52025. * rendering/RenderSVGRoot.h:
  52026. * rendering/RenderSVGText.cpp:
  52027. (WebCore::RenderSVGText::layout):
  52028. * rendering/RenderSVGTransformableContainer.cpp:
  52029. (WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
  52030. * rendering/RenderSVGTransformableContainer.h:
  52031. * rendering/RenderSVGViewportContainer.cpp:
  52032. (WebCore::RenderSVGViewportContainer::calcViewport):
  52033. * rendering/SVGRenderSupport.cpp:
  52034. (WebCore::SVGRenderSupport::computeContainerBoundingBox):
  52035. * rendering/SVGRenderSupport.h:
  52036. * rendering/style/SVGRenderStyle.cpp:
  52037. (WebCore::SVGRenderStyle::diff):
  52038. 2010-08-30 Adam Barth <abarth@webkit.org>
  52039. Reviewed by Eric Seidel.
  52040. Implement CDATASection state for the HTMLTokenizer
  52041. https://bugs.webkit.org/show_bug.cgi?id=44923
  52042. In the spec, this state refers back to the HTMLTreeBuilder from the
  52043. HTMLTokenizer. Rather that introduce that (backwards) dependencies, we
  52044. have the tree builder set a bit on the tokenizer.
  52045. * html/parser/HTMLTokenizer.cpp:
  52046. (WebCore::HTMLTokenizer::reset):
  52047. (WebCore::HTMLTokenizer::nextToken):
  52048. * html/parser/HTMLTokenizer.h:
  52049. (WebCore::HTMLTokenizer::shouldAllowCDATA):
  52050. (WebCore::HTMLTokenizer::setShouldAllowCDATA):
  52051. * html/parser/HTMLTreeBuilder.cpp:
  52052. (WebCore::HTMLTreeBuilder::constructTreeFromToken):
  52053. 2010-08-30 Adam Barth <abarth@webkit.org>
  52054. Reviewed by Eric Seidel.
  52055. Enable HTML5lib's test_innerHTML01.dat
  52056. https://bugs.webkit.org/show_bug.cgi?id=44919
  52057. These tests provoked two branches that we hadn't implemented yet.
  52058. * html/parser/HTMLTreeBuilder.cpp:
  52059. (WebCore::HTMLTreeBuilder::processStartTag):
  52060. (WebCore::HTMLTreeBuilder::processEndTag):
  52061. 2010-08-30 Mark Rowe <mrowe@apple.com>
  52062. Reviewed by Darin Adler.
  52063. Stop using a QuickDraw function that was only used for debugging purposes.
  52064. * platform/graphics/mac/SimpleFontDataMac.mm:
  52065. (WebCore::pathFromFont):
  52066. 2010-08-30 Ryosuke Niwa <rniwa@webkit.org>
  52067. Reviewed by Darin Adler.
  52068. queryCommandValue("BackColor") returns rgb(0,0,0) for elements with transparent background
  52069. https://bugs.webkit.org/show_bug.cgi?id=21680
  52070. The bug was caused by WebKit's using the computed style to obtain the background color,
  52071. which is rgba(0,0,0,0) for nodes with transparent background color. While this is correct
  52072. in the accordance to CSS2 because background-color is not inherited by default,
  52073. it is not desirable for editing purposes where the background color in effect is expected.
  52074. Modified valueStyle in EditorCommand.cpp to call Editor::selectionStartCSSPropertyValue,
  52075. instead of Frame::selectionStartStylePropertyValue, which traverses common ancestors of
  52076. the selected range or caret to retrieve the effective background color of the selected region
  52077. instead of the background color at the start of the selection.
  52078. This takes effect when the original background color is transparent or the selection is range
  52079. (to avoid picking up the background color only present at the start of paragraph).
  52080. Removed selectionStartStylePropertyValue and migrated it to Editor::selectionStartCSSPropertyValue.
  52081. Test: editing/execCommand/query-command-value-background-color.html
  52082. * editing/Editor.cpp:
  52083. (WebCore::hasTransparentBackgroundColor): Checks whether the specified style's background color is transparent or not.
  52084. (WebCore::Editor::selectionStartCSSPropertyValue): Migrated the contents of selectionStartStylePropertyValue and
  52085. added the special case for background color.
  52086. * editing/Editor.h: Added the prototype for selectionStartCSSPropertyValue.
  52087. * editing/EditorCommand.cpp:
  52088. (WebCore::valueStyle): Calls Editor::selectionStartCSSPropertyValue.
  52089. * page/Frame.cpp: Removed selectionStartStylePropertyValue.
  52090. * page/Frame.h: Ditto.
  52091. 2010-08-30 Lei Zhang <thestig@chromium.org>
  52092. Reviewed by Shinichiro Hamaji.
  52093. Defer printing until the FrameLoader finishes loading.
  52094. https://bugs.webkit.org/show_bug.cgi?id=43658
  52095. * manual-tests/print-before-load.html: Added.
  52096. * loader/FrameLoader.cpp:
  52097. (WebCore::FrameLoader::finishedLoading):
  52098. * page/DOMWindow.cpp:
  52099. (WebCore::DOMWindow::DOMWindow):
  52100. (WebCore::DOMWindow::print):
  52101. * page/DOMWindow.h:
  52102. (WebCore::DOMWindow::printDeferred):
  52103. 2010-08-30 Chris Rogers <crogers@google.com>
  52104. Reviewed by Kenneth Russell.
  52105. audio engine: add ReverbConvolver class
  52106. https://bugs.webkit.org/show_bug.cgi?id=34912
  52107. No new tests since audio API is not yet implemented.
  52108. * platform/audio: Added.
  52109. * platform/audio/ReverbAccumulationBuffer.cpp: Added.
  52110. (WebCore::ReverbAccumulationBuffer::ReverbAccumulationBuffer):
  52111. (WebCore::ReverbAccumulationBuffer::readAndClear):
  52112. (WebCore::ReverbAccumulationBuffer::updateReadIndex):
  52113. (WebCore::ReverbAccumulationBuffer::accumulate):
  52114. (WebCore::ReverbAccumulationBuffer::reset):
  52115. * platform/audio/ReverbAccumulationBuffer.h: Added.
  52116. (WebCore::ReverbAccumulationBuffer::readIndex):
  52117. (WebCore::ReverbAccumulationBuffer::readTimeFrame):
  52118. * platform/audio/ReverbConvolver.cpp: Added.
  52119. (WebCore::backgroundThreadEntry):
  52120. (WebCore::ReverbConvolver::ReverbConvolver):
  52121. (WebCore::ReverbConvolver::~ReverbConvolver):
  52122. (WebCore::ReverbConvolver::backgroundThreadEntry):
  52123. (WebCore::ReverbConvolver::process):
  52124. (WebCore::ReverbConvolver::reset):
  52125. * platform/audio/ReverbConvolver.h: Added.
  52126. (WebCore::ReverbConvolver::impulseResponseLength):
  52127. (WebCore::ReverbConvolver::inputBuffer):
  52128. (WebCore::ReverbConvolver::useBackgroundThreads):
  52129. * platform/audio/ReverbConvolverStage.cpp: Added.
  52130. (WebCore::ReverbConvolverStage::ReverbConvolverStage):
  52131. (WebCore::ReverbConvolverStage::processInBackground):
  52132. (WebCore::ReverbConvolverStage::process):
  52133. (WebCore::ReverbConvolverStage::reset):
  52134. * platform/audio/ReverbConvolverStage.h: Added.
  52135. (WebCore::ReverbConvolverStage::inputReadIndex):
  52136. * platform/audio/ReverbInputBuffer.cpp: Added.
  52137. (WebCore::ReverbInputBuffer::ReverbInputBuffer):
  52138. (WebCore::ReverbInputBuffer::write):
  52139. (WebCore::ReverbInputBuffer::directReadFrom):
  52140. (WebCore::ReverbInputBuffer::reset):
  52141. * platform/audio/ReverbInputBuffer.h: Added.
  52142. (WebCore::ReverbInputBuffer::writeIndex):
  52143. 2010-08-30 Nikolas Zimmermann <nzimmermann@rim.com>
  52144. Reviewed by Dirk Schulze.
  52145. Add culling to RenderSVGContainer
  52146. https://bugs.webkit.org/show_bug.cgi?id=44896
  52147. Cache object/strokeBoundingBox and repaintRectInLocalCoordinates() in RenderSVGContainer & RenderSVGRoot, just like it's done in RenderPath.
  52148. Propagate boundary changes up the render tree, in layout phase, in order to notify parents that they should update their cached boundaries.
  52149. This is a huge speed benefit when interacting with an already layouted document, as there's no need anymore to traverse all children
  52150. of any container or <svg> element, just to retrieve the repaint rect.
  52151. * rendering/RenderForeignObject.cpp:
  52152. (WebCore::RenderForeignObject::layout):
  52153. * rendering/RenderObject.cpp:
  52154. (WebCore::RenderObject::setNeedsBoundariesUpdate):
  52155. * rendering/RenderObject.h:
  52156. * rendering/RenderObjectChildList.cpp:
  52157. (WebCore::RenderObjectChildList::removeChildNode):
  52158. * rendering/RenderPath.cpp:
  52159. (WebCore::RenderPath::layout):
  52160. (WebCore::RenderPath::paint):
  52161. * rendering/RenderPath.h:
  52162. (WebCore::RenderPath::path):
  52163. (WebCore::RenderPath::setNeedsBoundariesUpdate):
  52164. * rendering/RenderSVGBlock.cpp:
  52165. (WebCore::RenderSVGBlock::styleWillChange):
  52166. * rendering/RenderSVGBlock.h:
  52167. * rendering/RenderSVGContainer.cpp:
  52168. (WebCore::RenderSVGContainer::RenderSVGContainer):
  52169. (WebCore::RenderSVGContainer::layout):
  52170. (WebCore::RenderSVGContainer::paint):
  52171. (WebCore::RenderSVGContainer::updateCachedBoundaries):
  52172. * rendering/RenderSVGContainer.h:
  52173. (WebCore::RenderSVGContainer::setNeedsBoundariesUpdate):
  52174. (WebCore::RenderSVGContainer::objectBoundingBox):
  52175. (WebCore::RenderSVGContainer::strokeBoundingBox):
  52176. (WebCore::RenderSVGContainer::repaintRectInLocalCoordinates):
  52177. (WebCore::RenderSVGContainer::calculateLocalTransform):
  52178. * rendering/RenderSVGGradientStop.h:
  52179. (WebCore::RenderSVGGradientStop::strokeBoundingBox):
  52180. * rendering/RenderSVGHiddenContainer.cpp:
  52181. * rendering/RenderSVGHiddenContainer.h:
  52182. (WebCore::RenderSVGHiddenContainer::clippedOverflowRectForRepaint):
  52183. * rendering/RenderSVGImage.cpp:
  52184. (WebCore::RenderSVGImage::layout):
  52185. (WebCore::RenderSVGImage::styleWillChange):
  52186. * rendering/RenderSVGImage.h:
  52187. * rendering/RenderSVGInline.cpp:
  52188. (WebCore::RenderSVGInline::styleWillChange):
  52189. * rendering/RenderSVGInline.h:
  52190. * rendering/RenderSVGModelObject.cpp:
  52191. (WebCore::RenderSVGModelObject::styleWillChange):
  52192. * rendering/RenderSVGModelObject.h:
  52193. * rendering/RenderSVGRoot.cpp:
  52194. (WebCore::RenderSVGRoot::RenderSVGRoot):
  52195. (WebCore::RenderSVGRoot::layout):
  52196. (WebCore::RenderSVGRoot::styleWillChange):
  52197. (WebCore::RenderSVGRoot::updateCachedBoundaries):
  52198. * rendering/RenderSVGRoot.h:
  52199. (WebCore::RenderSVGRoot::setNeedsBoundariesUpdate):
  52200. (WebCore::RenderSVGRoot::setNeedsTransformUpdate):
  52201. (WebCore::RenderSVGRoot::objectBoundingBox):
  52202. (WebCore::RenderSVGRoot::strokeBoundingBox):
  52203. (WebCore::RenderSVGRoot::repaintRectInLocalCoordinates):
  52204. * rendering/RenderSVGText.cpp:
  52205. (WebCore::RenderSVGText::layout):
  52206. * rendering/RenderSVGTransformableContainer.cpp:
  52207. (WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
  52208. * rendering/RenderSVGTransformableContainer.h:
  52209. * rendering/RenderSVGViewportContainer.cpp:
  52210. (WebCore::RenderSVGViewportContainer::calcViewport):
  52211. * rendering/SVGRenderSupport.cpp:
  52212. (WebCore::SVGRenderSupport::computeContainerBoundingBoxes):
  52213. (WebCore::SVGRenderSupport::paintInfoIntersectsRepaintRect):
  52214. * rendering/SVGRenderSupport.h:
  52215. * rendering/style/SVGRenderStyle.cpp:
  52216. (WebCore::SVGRenderStyle::diff):
  52217. 2010-08-30 Leandro Pereira <leandro@profusion.mobi>
  52218. [EFL] Unreviewed. Build fix when ENABLE_WEB_SOCKETS=ON.
  52219. EFL port does not yet support automated tests.
  52220. * CMakeLists.txt: Add missing files.
  52221. * CMakeListsEfl.txt: Ditto.
  52222. 2010-08-30 Kenneth Russell <kbr@google.com>
  52223. Reviewed by Chris Marrin.
  52224. Expose Vector3 and associated operations
  52225. https://bugs.webkit.org/show_bug.cgi?id=44666
  52226. Rolling out earlier patch exposing Vector3 class in
  52227. TransformationMatrix.h. A different approach will be taken under
  52228. another bug.
  52229. * platform/graphics/transforms/TransformationMatrix.cpp:
  52230. (WebCore::v3Length):
  52231. (WebCore::v3Scale):
  52232. (WebCore::v3Dot):
  52233. (WebCore::v3Combine):
  52234. (WebCore::v3Cross):
  52235. (WebCore::decompose):
  52236. * platform/graphics/transforms/TransformationMatrix.ha:
  52237. 2010-08-30 Jer Noble <jer.noble@apple.com>
  52238. Build fix; Unreviewed.
  52239. Added a export symbol to the WebCore.exp.in list.
  52240. * WebCore.exp.in:
  52241. 2010-08-30 Chris Rogers <crogers@google.com>
  52242. Reviewed by Kenneth Russell.
  52243. Add audio cone effect files. The cone effect operates as defined in the OpenAL specification.
  52244. https://bugs.webkit.org/show_bug.cgi?id=44712
  52245. No new tests since audio API not implemented yet.
  52246. * platform/audio: Added.
  52247. * platform/audio/Cone.cpp: Added.
  52248. (WebCore::ConeEffect::ConeEffect):
  52249. (WebCore::ConeEffect::gain):
  52250. * platform/audio/Cone.h: Added.
  52251. (WebCore::ConeEffect::setInnerAngle):
  52252. (WebCore::ConeEffect::innerAngle):
  52253. (WebCore::ConeEffect::setOuterAngle):
  52254. (WebCore::ConeEffect::outerAngle):
  52255. (WebCore::ConeEffect::setOuterGain):
  52256. (WebCore::ConeEffect::outerGain):
  52257. 2010-08-30 Chris Rogers <crogers@google.com>
  52258. Reviewed by Chris Marrin.
  52259. audio engine: add Reverb class
  52260. https://bugs.webkit.org/show_bug.cgi?id=36466
  52261. No new tests since audio API is not yet implemented.
  52262. * platform/audio: Added.
  52263. * platform/audio/Reverb.cpp: Added.
  52264. (WebCore::calculateNormalizationScale):
  52265. (WebCore::Reverb::Reverb):
  52266. (WebCore::Reverb::initialize):
  52267. (WebCore::Reverb::process):
  52268. (WebCore::Reverb::reset):
  52269. * platform/audio/Reverb.h: Added.
  52270. (WebCore::Reverb::):
  52271. (WebCore::Reverb::impulseResponseLength):
  52272. 2010-08-30 Chris Rogers <crogers@google.com>
  52273. Unreviewed
  52274. Add WebCore/platform/audio directory
  52275. in preparation for landing: https://bugs.webkit.org/show_bug.cgi?id=36466
  52276. * platform/audio: Added.
  52277. 2010-08-27 Jer Noble <jer.noble@apple.com>
  52278. Reviewed by Eric Carlson.
  52279. text/plain non-video files cause <video> to hang (while reading them?)
  52280. https://bugs.webkit.org/show_bug.cgi?id=44212
  52281. Disable all the QuickTime components which ingest .txt files.
  52282. New tests:
  52283. * http/tests/media/video-served-as-text.html: Added.
  52284. * http/tests/media/text-served-as-text.html: Added.
  52285. * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
  52286. (WebCore::MediaPlayerPrivate::createQTMovie): Disable all four text
  52287. 'eat' components.
  52288. * platform/mac/WebCoreSystemInterface.h: Add wkQTMovieDisableComponent.
  52289. * platform/mac/WebCoreSystemInterface.mm: Add wkQTMovieDisableComponent.
  52290. 2010-08-30 Robert Hogan <robert@webkit.org>
  52291. Reviewed by Simon Hausmann.
  52292. allow ports with windowed plugins to support windowless plugin tests
  52293. https://bugs.webkit.org/show_bug.cgi?id=40730
  52294. Ports that implement plugins windowed by default need to have a way of
  52295. supporting plugin tests that assume the plugin is windowless. Add this
  52296. feature to the tests and support it in the webkit test plugin. Also
  52297. add mouse and keyboard event logging to the webkit-test plugin on Unix.
  52298. Unskip the following tests on Qt:
  52299. plugins/mouse-events.html
  52300. plugins/keyboard-events.html
  52301. plugins/mouse-events-fixedpos.html
  52302. * plugins/qt/PluginViewQt.cpp:
  52303. (WebCore::PluginView::setFocus):
  52304. (WebCore::setXKeyEventSpecificFields):
  52305. 2010-08-30 Kinuko Yasuda <kinuko@chromium.org>
  52306. Reviewed by Darin Fisher.
  52307. Add DOMFileSystem implementation to support Entry manipulation operations
  52308. https://bugs.webkit.org/show_bug.cgi?id=44732
  52309. No new tests; tests will be added later.
  52310. * storage/DOMFileSystem.cpp:
  52311. (WebCore::DOMFileSystem::root):
  52312. (WebCore::checkValidityForForCopyOrMove): Added.
  52313. (WebCore::DOMFileSystem::getMetadata): Added.
  52314. (WebCore::DOMFileSystem::move): Added.
  52315. (WebCore::DOMFileSystem::copy): Added.
  52316. (WebCore::DOMFileSystem::remove): Added.
  52317. (WebCore::DOMFileSystem::getParent): Added.
  52318. (WebCore::DOMFileSystem::getFile): Added.
  52319. (WebCore::DOMFileSystem::getDirectory): Added.
  52320. (WebCore::DOMFileSystem::readDirectory): Added.
  52321. * storage/DirectoryEntry.cpp:
  52322. (WebCore::DirectoryEntry::getFile): Added implementation.
  52323. (WebCore::DirectoryEntry::getDirectory): Added implementation.
  52324. * storage/DirectoryReader.cpp:
  52325. (WebCore::DirectoryReader::DirectoryReader): Added implementation.
  52326. (WebCore::DirectoryReader::readEntries): Added implementation.
  52327. * storage/DirectoryReader.h:
  52328. * storage/Entry.cpp:
  52329. (WebCore::Entry::getMetadata): Added implementation.
  52330. (WebCore::Entry::moveTo): Added implementation.
  52331. (WebCore::Entry::copyTo): Added implementation.
  52332. (WebCore::Entry::remove): Added implementation.
  52333. (WebCore::Entry::getParent): Added implementation.
  52334. * storage/Entry.h:
  52335. * storage/FileEntry.h:
  52336. Added a helper template to schedule callbacks.
  52337. * storage/DOMFileSystem.h:
  52338. (WebCore::DOMFileSystem::DispatchCallbackTask): Added to schedule callbacks.
  52339. (WebCore::DOMFileSystem::scheduleCallback): Added to schedule callbacks.
  52340. Changed to fire callbacks asynchronously.
  52341. * storage/LocalFileSystem.cpp:
  52342. (WebCore::LocalFileSystem::requestFileSystem):
  52343. 2010-08-30 Alejandro G. Castro <alex@igalia.com>
  52344. Reviewed by Xan Lopez.
  52345. Fixed compilation error, now that we have included the
  52346. GtkVersioning.h we have to remove some version dependent code from
  52347. EventSender.
  52348. * platform/gtk/GtkVersioning.c:
  52349. (gdk_window_get_root_coords):
  52350. * platform/gtk/GtkVersioning.h:
  52351. 2010-08-30 Beth Dakin <bdakin@apple.com>
  52352. Reviewed by Sam Weinig.
  52353. Fix for https://bugs.webkit.org/show_bug.cgi?id=44804 Crashes in
  52354. RenderMathMLRoot::layout() and RenderMathMLRoot::paint()
  52355. -and corresponding-
  52356. <rdar://problem/8342055>
  52357. All of the calls to firstChild() and lastChild() in
  52358. RenderMathMLRoot::layout() and RenderMathMLRoot::paint() need to be
  52359. null checked.
  52360. * mathml/RenderMathMLRoot.cpp:
  52361. (WebCore::RenderMathMLRoot::paint):
  52362. (WebCore::RenderMathMLRoot::layout):
  52363. 2010-08-30 Beth Dakin <bdakin@apple.com>
  52364. Reviewed by Darin Adler.
  52365. Fix for https://bugs.webkit.org/show_bug.cgi?id=44801 Crash in
  52366. RenderMathMLSubSup::layout()
  52367. -and corresponding-
  52368. <rdar://problem/8325203>
  52369. Null-check m_scripts. It is null-checked everywhere else in the
  52370. class and can legitimately be null.
  52371. * mathml/RenderMathMLSubSup.cpp:
  52372. (WebCore::RenderMathMLSubSup::layout):
  52373. 2010-08-30 Alejandro G. Castro <alex@igalia.com>
  52374. Reviewed by Martin Robinson.
  52375. [Gtk] gdk_display_get_core_pointer and gdk_device_get_core_pointer
  52376. are deprecated
  52377. https://bugs.webkit.org/show_bug.cgi?id=44787
  52378. We have replaced GtkVersioning.cpp with GtkVersioning.c and
  52379. created a function (getDefaultGDKPointerDevice) to get the pointer
  52380. of the window with the new APIs. We added that function to DRT and
  52381. copyandpaste unit test.
  52382. * GNUmakefile.am:
  52383. * platform/gtk/GtkVersioning.c: Added.
  52384. (gtk_adjustment_set_value):
  52385. (gtk_adjustment_configure):
  52386. (getDefaultGDKPointerDevice):
  52387. * platform/gtk/GtkVersioning.cpp: Removed.
  52388. * platform/gtk/GtkVersioning.h:
  52389. 2010-08-30 Darin Adler <darin@apple.com>
  52390. Reviewed by Sam Weinig.
  52391. Make SVG constructors private to make sure callers all use create
  52392. https://bugs.webkit.org/show_bug.cgi?id=44872
  52393. Made as many members private and protected as possible, and got rid of many
  52394. unneeded empty constructor and destructor definitions, in some cases changing
  52395. a class to be non-polymorphic. Made some functions inline. Used the word document
  52396. instead of the abbreviation doc. Removed unneeded explicit base class
  52397. initialization in cases where it is no different from the default behavior.
  52398. * svg/SVGAElement.cpp:
  52399. (WebCore::SVGAElement::SVGAElement):
  52400. (WebCore::SVGAElement::childShouldCreateRenderer):
  52401. * svg/SVGAElement.h:
  52402. * svg/SVGAltGlyphElement.cpp:
  52403. (WebCore::SVGAltGlyphElement::SVGAltGlyphElement):
  52404. * svg/SVGAltGlyphElement.h:
  52405. * svg/SVGAngle.cpp:
  52406. * svg/SVGAngle.h:
  52407. * svg/SVGAnimateColorElement.cpp:
  52408. (WebCore::SVGAnimateColorElement::SVGAnimateColorElement):
  52409. * svg/SVGAnimateColorElement.h:
  52410. * svg/SVGAnimateElement.cpp:
  52411. (WebCore::SVGAnimateElement::SVGAnimateElement):
  52412. * svg/SVGAnimateElement.h:
  52413. * svg/SVGAnimateMotionElement.cpp:
  52414. (WebCore::SVGAnimateMotionElement::SVGAnimateMotionElement):
  52415. * svg/SVGAnimateMotionElement.h:
  52416. * svg/SVGAnimateTransformElement.cpp:
  52417. (WebCore::SVGAnimateTransformElement::SVGAnimateTransformElement):
  52418. * svg/SVGAnimateTransformElement.h:
  52419. * svg/SVGAnimatedPathData.cpp:
  52420. * svg/SVGAnimatedPathData.h:
  52421. * svg/SVGAnimatedPoints.cpp:
  52422. * svg/SVGAnimatedPoints.h:
  52423. * svg/SVGAnimationElement.cpp:
  52424. (WebCore::SVGAnimationElement::SVGAnimationElement):
  52425. * svg/SVGAnimationElement.h:
  52426. * svg/SVGCircleElement.cpp:
  52427. (WebCore::SVGCircleElement::SVGCircleElement):
  52428. * svg/SVGCircleElement.h:
  52429. * svg/SVGClipPathElement.cpp:
  52430. (WebCore::SVGClipPathElement::SVGClipPathElement):
  52431. * svg/SVGClipPathElement.h:
  52432. * svg/SVGColor.cpp:
  52433. * svg/SVGColor.h:
  52434. * svg/SVGComponentTransferFunctionElement.cpp:
  52435. (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
  52436. * svg/SVGComponentTransferFunctionElement.h:
  52437. * svg/SVGCursorElement.cpp:
  52438. (WebCore::SVGCursorElement::SVGCursorElement):
  52439. * svg/SVGCursorElement.h:
  52440. * svg/SVGDefsElement.cpp:
  52441. (WebCore::SVGDefsElement::SVGDefsElement):
  52442. * svg/SVGDefsElement.h:
  52443. * svg/SVGDescElement.cpp:
  52444. (WebCore::SVGDescElement::SVGDescElement):
  52445. * svg/SVGDescElement.h:
  52446. * svg/SVGDocument.cpp:
  52447. * svg/SVGDocument.h:
  52448. * svg/SVGDocumentExtensions.cpp:
  52449. (WebCore::SVGDocumentExtensions::SVGDocumentExtensions):
  52450. (WebCore::SVGDocumentExtensions::reportWarning):
  52451. (WebCore::SVGDocumentExtensions::reportError):
  52452. * svg/SVGDocumentExtensions.h:
  52453. * svg/SVGElement.h:
  52454. * svg/SVGElementInstanceList.h:
  52455. * svg/SVGEllipseElement.cpp:
  52456. (WebCore::SVGEllipseElement::SVGEllipseElement):
  52457. * svg/SVGEllipseElement.h:
  52458. * svg/SVGExternalResourcesRequired.cpp:
  52459. * svg/SVGExternalResourcesRequired.h:
  52460. * svg/SVGFEBlendElement.cpp:
  52461. (WebCore::SVGFEBlendElement::SVGFEBlendElement):
  52462. * svg/SVGFEBlendElement.h:
  52463. * svg/SVGFEColorMatrixElement.cpp:
  52464. (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
  52465. * svg/SVGFEColorMatrixElement.h:
  52466. * svg/SVGFEComponentTransferElement.cpp:
  52467. (WebCore::SVGFEComponentTransferElement::SVGFEComponentTransferElement):
  52468. * svg/SVGFEComponentTransferElement.h:
  52469. * svg/SVGFECompositeElement.cpp:
  52470. (WebCore::SVGFECompositeElement::SVGFECompositeElement):
  52471. * svg/SVGFECompositeElement.h:
  52472. * svg/SVGFEConvolveMatrixElement.cpp:
  52473. (WebCore::SVGFEConvolveMatrixElement::SVGFEConvolveMatrixElement):
  52474. * svg/SVGFEConvolveMatrixElement.h:
  52475. * svg/SVGFEDiffuseLightingElement.cpp:
  52476. (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement):
  52477. * svg/SVGFEDiffuseLightingElement.h:
  52478. * svg/SVGFEDisplacementMapElement.cpp:
  52479. (WebCore::SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
  52480. * svg/SVGFEDisplacementMapElement.h:
  52481. * svg/SVGFEDistantLightElement.cpp:
  52482. (WebCore::SVGFEDistantLightElement::SVGFEDistantLightElement):
  52483. * svg/SVGFEDistantLightElement.h:
  52484. * svg/SVGFEFloodElement.cpp:
  52485. (WebCore::SVGFEFloodElement::SVGFEFloodElement):
  52486. * svg/SVGFEFloodElement.h:
  52487. * svg/SVGFEFuncAElement.cpp:
  52488. (WebCore::SVGFEFuncAElement::SVGFEFuncAElement):
  52489. * svg/SVGFEFuncAElement.h:
  52490. * svg/SVGFEFuncBElement.cpp:
  52491. (WebCore::SVGFEFuncBElement::SVGFEFuncBElement):
  52492. * svg/SVGFEFuncBElement.h:
  52493. * svg/SVGFEFuncGElement.cpp:
  52494. (WebCore::SVGFEFuncGElement::SVGFEFuncGElement):
  52495. * svg/SVGFEFuncGElement.h:
  52496. * svg/SVGFEFuncRElement.cpp:
  52497. (WebCore::SVGFEFuncRElement::SVGFEFuncRElement):
  52498. * svg/SVGFEFuncRElement.h:
  52499. * svg/SVGFEGaussianBlurElement.cpp:
  52500. (WebCore::SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
  52501. * svg/SVGFEGaussianBlurElement.h:
  52502. * svg/SVGFEImageElement.cpp:
  52503. (WebCore::SVGFEImageElement::SVGFEImageElement):
  52504. * svg/SVGFEImageElement.h:
  52505. * svg/SVGFELightElement.cpp:
  52506. (WebCore::SVGFELightElement::SVGFELightElement):
  52507. * svg/SVGFELightElement.h:
  52508. * svg/SVGFEMergeElement.cpp:
  52509. (WebCore::SVGFEMergeElement::SVGFEMergeElement):
  52510. * svg/SVGFEMergeElement.h:
  52511. * svg/SVGFEMergeNodeElement.cpp:
  52512. (WebCore::SVGFEMergeNodeElement::SVGFEMergeNodeElement):
  52513. * svg/SVGFEMergeNodeElement.h:
  52514. * svg/SVGFEMorphologyElement.cpp:
  52515. (WebCore::SVGFEMorphologyElement::SVGFEMorphologyElement):
  52516. * svg/SVGFEMorphologyElement.h:
  52517. * svg/SVGFEOffsetElement.cpp:
  52518. (WebCore::SVGFEOffsetElement::SVGFEOffsetElement):
  52519. * svg/SVGFEOffsetElement.h:
  52520. * svg/SVGFEPointLightElement.cpp:
  52521. (WebCore::SVGFEPointLightElement::SVGFEPointLightElement):
  52522. (WebCore::SVGFEPointLightElement::lightSource):
  52523. * svg/SVGFEPointLightElement.h:
  52524. * svg/SVGFESpecularLightingElement.cpp:
  52525. (WebCore::SVGFESpecularLightingElement::SVGFESpecularLightingElement):
  52526. * svg/SVGFESpecularLightingElement.h:
  52527. * svg/SVGFESpotLightElement.cpp:
  52528. (WebCore::SVGFESpotLightElement::SVGFESpotLightElement):
  52529. * svg/SVGFESpotLightElement.h:
  52530. * svg/SVGFETileElement.cpp:
  52531. (WebCore::SVGFETileElement::SVGFETileElement):
  52532. * svg/SVGFETileElement.h:
  52533. * svg/SVGFETurbulenceElement.cpp:
  52534. (WebCore::SVGFETurbulenceElement::SVGFETurbulenceElement):
  52535. * svg/SVGFETurbulenceElement.h:
  52536. * svg/SVGFilterElement.cpp:
  52537. (WebCore::SVGFilterElement::SVGFilterElement):
  52538. * svg/SVGFilterElement.h:
  52539. * svg/SVGFilterPrimitiveStandardAttributes.cpp:
  52540. (WebCore::SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes):
  52541. * svg/SVGFilterPrimitiveStandardAttributes.h:
  52542. * svg/SVGFitToViewBox.cpp:
  52543. * svg/SVGFitToViewBox.h:
  52544. * svg/SVGFontData.cpp:
  52545. * svg/SVGFontData.h:
  52546. * svg/SVGFontElement.cpp:
  52547. (WebCore::SVGFontElement::SVGFontElement):
  52548. * svg/SVGFontElement.h:
  52549. * svg/SVGFontFaceElement.cpp:
  52550. (WebCore::SVGFontFaceElement::SVGFontFaceElement):
  52551. * svg/SVGFontFaceElement.h:
  52552. * svg/SVGFontFaceFormatElement.cpp:
  52553. (WebCore::SVGFontFaceFormatElement::SVGFontFaceFormatElement):
  52554. * svg/SVGFontFaceFormatElement.h:
  52555. * svg/SVGFontFaceNameElement.cpp:
  52556. (WebCore::SVGFontFaceNameElement::SVGFontFaceNameElement):
  52557. * svg/SVGFontFaceNameElement.h:
  52558. * svg/SVGFontFaceSrcElement.cpp:
  52559. (WebCore::SVGFontFaceSrcElement::SVGFontFaceSrcElement):
  52560. * svg/SVGFontFaceSrcElement.h:
  52561. * svg/SVGFontFaceUriElement.cpp:
  52562. (WebCore::SVGFontFaceUriElement::SVGFontFaceUriElement):
  52563. * svg/SVGFontFaceUriElement.h:
  52564. * svg/SVGForeignObjectElement.cpp:
  52565. (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
  52566. * svg/SVGForeignObjectElement.h:
  52567. * svg/SVGGElement.cpp:
  52568. (WebCore::SVGGElement::SVGGElement):
  52569. * svg/SVGGElement.h:
  52570. * svg/SVGGlyphElement.cpp:
  52571. (WebCore::SVGGlyphElement::SVGGlyphElement):
  52572. * svg/SVGGlyphElement.h:
  52573. * svg/SVGGradientElement.cpp:
  52574. (WebCore::SVGGradientElement::SVGGradientElement):
  52575. * svg/SVGGradientElement.h:
  52576. * svg/SVGHKernElement.cpp:
  52577. (WebCore::SVGHKernElement::SVGHKernElement):
  52578. * svg/SVGHKernElement.h:
  52579. * svg/SVGImageElement.cpp:
  52580. (WebCore::SVGImageElement::SVGImageElement):
  52581. * svg/SVGImageElement.h:
  52582. * svg/SVGImageLoader.cpp:
  52583. * svg/SVGImageLoader.h:
  52584. * svg/SVGLangSpace.cpp:
  52585. * svg/SVGLangSpace.h:
  52586. * svg/SVGLengthList.cpp:
  52587. * svg/SVGLengthList.h:
  52588. * svg/SVGLineElement.cpp:
  52589. (WebCore::SVGLineElement::SVGLineElement):
  52590. * svg/SVGLineElement.h:
  52591. * svg/SVGLinearGradientElement.cpp:
  52592. (WebCore::SVGLinearGradientElement::SVGLinearGradientElement):
  52593. * svg/SVGLinearGradientElement.h:
  52594. * svg/SVGLocatable.cpp:
  52595. * svg/SVGLocatable.h:
  52596. * svg/SVGMPathElement.cpp:
  52597. (WebCore::SVGMPathElement::SVGMPathElement):
  52598. * svg/SVGMPathElement.h:
  52599. * svg/SVGMarkerElement.cpp:
  52600. (WebCore::SVGMarkerElement::SVGMarkerElement):
  52601. * svg/SVGMarkerElement.h:
  52602. * svg/SVGMaskElement.cpp:
  52603. (WebCore::SVGMaskElement::SVGMaskElement):
  52604. * svg/SVGMaskElement.h:
  52605. * svg/SVGMetadataElement.cpp:
  52606. (WebCore::SVGMetadataElement::SVGMetadataElement):
  52607. * svg/SVGMetadataElement.h:
  52608. * svg/SVGMissingGlyphElement.cpp:
  52609. (WebCore::SVGMissingGlyphElement::SVGMissingGlyphElement):
  52610. * svg/SVGMissingGlyphElement.h:
  52611. * svg/SVGNumberList.cpp:
  52612. * svg/SVGNumberList.h:
  52613. * svg/SVGPaint.cpp:
  52614. * svg/SVGPaint.h:
  52615. * svg/SVGParserUtilities.cpp:
  52616. (WebCore::genericParseNumber):
  52617. (WebCore::parseNumber):
  52618. * svg/SVGPathBlender.cpp:
  52619. * svg/SVGPathBlender.h:
  52620. * svg/SVGPathBuilder.h:
  52621. * svg/SVGPathByteStreamBuilder.h:
  52622. * svg/SVGPathByteStreamSource.cpp:
  52623. * svg/SVGPathByteStreamSource.h:
  52624. * svg/SVGPathConsumer.h:
  52625. * svg/SVGPathElement.cpp:
  52626. (WebCore::SVGPathElement::SVGPathElement):
  52627. * svg/SVGPathElement.h:
  52628. * svg/SVGPathParser.cpp:
  52629. * svg/SVGPathParser.h:
  52630. * svg/SVGPathSeg.cpp:
  52631. * svg/SVGPathSeg.h:
  52632. * svg/SVGPathSegArc.h:
  52633. * svg/SVGPathSegClosePath.cpp:
  52634. * svg/SVGPathSegClosePath.h:
  52635. * svg/SVGPathSegCurvetoCubic.h:
  52636. * svg/SVGPathSegCurvetoCubicSmooth.h:
  52637. * svg/SVGPathSegCurvetoQuadratic.h:
  52638. * svg/SVGPathSegCurvetoQuadraticSmooth.h:
  52639. * svg/SVGPathSegLineto.h:
  52640. * svg/SVGPathSegLinetoHorizontal.h:
  52641. * svg/SVGPathSegLinetoVertical.h:
  52642. * svg/SVGPathSegList.cpp:
  52643. * svg/SVGPathSegList.h:
  52644. * svg/SVGPathSegListBuilder.h:
  52645. * svg/SVGPathSegListSource.cpp:
  52646. * svg/SVGPathSegListSource.h:
  52647. * svg/SVGPathSegMoveto.h:
  52648. * svg/SVGPathSource.h:
  52649. * svg/SVGPathStringBuilder.cpp:
  52650. * svg/SVGPathStringBuilder.h:
  52651. * svg/SVGPathStringSource.cpp:
  52652. * svg/SVGPathStringSource.h:
  52653. * svg/SVGPatternElement.cpp:
  52654. (WebCore::SVGPatternElement::SVGPatternElement):
  52655. * svg/SVGPatternElement.h:
  52656. * svg/SVGPointList.cpp:
  52657. * svg/SVGPointList.h:
  52658. * svg/SVGPolyElement.cpp:
  52659. (WebCore::SVGPolyElement::SVGPolyElement):
  52660. * svg/SVGPolyElement.h:
  52661. * svg/SVGPolygonElement.cpp:
  52662. (WebCore::SVGPolygonElement::SVGPolygonElement):
  52663. * svg/SVGPolygonElement.h:
  52664. * svg/SVGPolylineElement.cpp:
  52665. (WebCore::SVGPolylineElement::SVGPolylineElement):
  52666. * svg/SVGPolylineElement.h:
  52667. * svg/SVGPreserveAspectRatio.cpp:
  52668. * svg/SVGPreserveAspectRatio.h:
  52669. * svg/SVGRadialGradientElement.cpp:
  52670. (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
  52671. * svg/SVGRadialGradientElement.h:
  52672. * svg/SVGRectElement.cpp:
  52673. (WebCore::SVGRectElement::SVGRectElement):
  52674. * svg/SVGRectElement.h:
  52675. * svg/SVGSVGElement.h:
  52676. * svg/SVGScriptElement.cpp:
  52677. (WebCore::SVGScriptElement::SVGScriptElement):
  52678. * svg/SVGScriptElement.h:
  52679. * svg/SVGSetElement.cpp:
  52680. (WebCore::SVGSetElement::SVGSetElement):
  52681. * svg/SVGSetElement.h:
  52682. * svg/SVGStopElement.cpp:
  52683. (WebCore::SVGStopElement::SVGStopElement):
  52684. * svg/SVGStopElement.h:
  52685. * svg/SVGStringList.cpp:
  52686. * svg/SVGStringList.h:
  52687. * svg/SVGStylable.cpp:
  52688. * svg/SVGStylable.h:
  52689. * svg/SVGStyleElement.cpp:
  52690. (WebCore::SVGStyleElement::SVGStyleElement):
  52691. * svg/SVGStyleElement.h:
  52692. * svg/SVGStyledElement.cpp:
  52693. (WebCore::SVGStyledElement::SVGStyledElement):
  52694. * svg/SVGStyledElement.h:
  52695. * svg/SVGStyledLocatableElement.cpp:
  52696. (WebCore::SVGStyledLocatableElement::SVGStyledLocatableElement):
  52697. * svg/SVGStyledLocatableElement.h:
  52698. * svg/SVGStyledTransformableElement.cpp:
  52699. (WebCore::SVGStyledTransformableElement::SVGStyledTransformableElement):
  52700. * svg/SVGStyledTransformableElement.h:
  52701. * svg/SVGSwitchElement.cpp:
  52702. (WebCore::SVGSwitchElement::SVGSwitchElement):
  52703. (WebCore::SVGSwitchElement::childShouldCreateRenderer):
  52704. * svg/SVGSwitchElement.h:
  52705. * svg/SVGSymbolElement.cpp:
  52706. (WebCore::SVGSymbolElement::SVGSymbolElement):
  52707. * svg/SVGSymbolElement.h:
  52708. * svg/SVGTRefElement.cpp:
  52709. (WebCore::SVGTRefElement::SVGTRefElement):
  52710. * svg/SVGTRefElement.h:
  52711. * svg/SVGTSpanElement.cpp:
  52712. (WebCore::SVGTSpanElement::SVGTSpanElement):
  52713. * svg/SVGTests.cpp:
  52714. * svg/SVGTests.h:
  52715. * svg/SVGTextContentElement.cpp:
  52716. (WebCore::SVGTextContentElement::SVGTextContentElement):
  52717. * svg/SVGTextContentElement.h:
  52718. * svg/SVGTextElement.cpp:
  52719. (WebCore::SVGTextElement::SVGTextElement):
  52720. * svg/SVGTextElement.h:
  52721. * svg/SVGTextPathElement.cpp:
  52722. (WebCore::SVGTextPathElement::SVGTextPathElement):
  52723. * svg/SVGTextPathElement.h:
  52724. * svg/SVGTextPositioningElement.cpp:
  52725. (WebCore::SVGTextPositioningElement::SVGTextPositioningElement):
  52726. * svg/SVGTextPositioningElement.h:
  52727. * svg/SVGTitleElement.cpp:
  52728. (WebCore::SVGTitleElement::SVGTitleElement):
  52729. * svg/SVGTransform.cpp:
  52730. * svg/SVGTransform.h:
  52731. * svg/SVGTransformable.cpp:
  52732. * svg/SVGTransformable.h:
  52733. * svg/SVGURIReference.cpp:
  52734. * svg/SVGURIReference.h:
  52735. * svg/SVGUseElement.cpp:
  52736. (WebCore::SVGUseElement::SVGUseElement):
  52737. (WebCore::SVGUseElement::expandSymbolElementsInShadowTree):
  52738. * svg/SVGUseElement.h:
  52739. * svg/SVGViewElement.cpp:
  52740. (WebCore::SVGViewElement::SVGViewElement):
  52741. * svg/SVGViewElement.h:
  52742. * svg/SVGViewSpec.cpp:
  52743. (WebCore::SVGViewSpec::SVGViewSpec):
  52744. * svg/SVGViewSpec.h:
  52745. * svg/SVGZoomAndPan.cpp:
  52746. * svg/SVGZoomAndPan.h:
  52747. * svg/SVGZoomEvent.cpp:
  52748. * svg/SVGZoomEvent.h:
  52749. 2010-08-30 Eric Carlson <eric.carlson@apple.com>
  52750. Reviewed by Dan Bernstein.
  52751. Disable automatic looping
  52752. https://bugs.webkit.org/show_bug.cgi?id=44844
  52753. Test: media/video-does-not-loop.html
  52754. * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
  52755. (WebCore::MediaPlayerPrivate::createQTMovie): Disable QuickTime automatic looping.
  52756. * platform/graphics/win/QTMovie.cpp:
  52757. (QTMoviePrivate::createMovieController): Ditto.
  52758. 2010-08-30 Ryosuke Niwa <rniwa@webkit.org>
  52759. Reviewed by Darin Adler.
  52760. ApplyStyleCommand::applyInlineStyle needs cleanup
  52761. https://bugs.webkit.org/show_bug.cgi?id=44458
  52762. Cleanup:
  52763. 1. Isolated code to find the highest ancestor with embedding style, and deployed it in
  52764. ApplyStyleCommand::applyInlineStyle.
  52765. 2. Combined the code to remove embedding style up to enclosing block and the code to
  52766. remove unicode-bidi and direction properties between start and end nodes.
  52767. 3. Simplified the conditionals to apply embedding styles.
  52768. No new tests are added since this is a cleanup.
  52769. * editing/ApplyStyleCommand.cpp:
  52770. (WebCore::highestEmbeddingAncestor): Added.
  52771. (WebCore::ApplyStyleCommand::applyInlineStyle): See above.
  52772. 2010-08-30 Martin Robinson <mrobinson@igalia.com>
  52773. Build fix. Add the new fileapi directory to the IDL vpath.
  52774. * GNUmakefile.am:
  52775. 2010-08-30 Martin Robinson <mrobinson@igalia.com>
  52776. Reviewed by Xan Lopez.
  52777. [GTK] WebKit DOM bindings build should not depend on output GNUMakefile
  52778. https://bugs.webkit.org/show_bug.cgi?id=44805
  52779. Move WebKit DOM bindings build rules to bindings/gobject/GNUmakefile.am to
  52780. prevent full WebKit API rebuilds when the automake files change.
  52781. No new tests as this is just a build change.
  52782. * bindings/gobject/GNUmakefile.am: Added.
  52783. 2010-08-30 Pavel Feldman <pfeldman@chromium.org>
  52784. Reviewed by Yury Semikhatsky.
  52785. Web Inspector: event listener properties are rendered as [object Object].
  52786. https://bugs.webkit.org/show_bug.cgi?id=44779
  52787. * inspector/front-end/EventListenersSidebarPane.js:
  52788. 2010-08-30 Ryuan Choi <ryuan.choi@samsung.com>
  52789. Unreviewed build fix with Blob Support
  52790. [EFL] Build break with Blob support
  52791. https://bugs.webkit.org/show_bug.cgi?id=44858
  52792. No new features added, so no new tests.
  52793. * CMakeLists.txt:
  52794. 2010-08-30 Andras Becsi <abecsi@webkit.org>
  52795. Unreviewed trivial fix.
  52796. [Qt] Let qmake know about HTML parser headers.
  52797. No new tests needed.
  52798. * WebCore.pro:
  52799. 2010-08-30 Andras Becsi <abecsi@webkit.org>
  52800. Unreviewed build fix.
  52801. [Qt] Fix fileapi header paths to fix warnings after r66365.
  52802. No new tests needed.
  52803. * WebCore.pro:
  52804. 2010-08-30 Csaba Osztrogonác <ossy@webkit.org>
  52805. Reviewed by Kent Tamura.
  52806. REGRESSION(r66355): Fix warnings in html/DateComponents.cpp
  52807. https://bugs.webkit.org/show_bug.cgi?id=44855
  52808. * html/DateComponents.cpp:
  52809. (WebCore::DateComponents::setMillisecondsSinceEpochForWeek): Suggested parentheses added around && within ||
  52810. 2010-08-30 Csaba Osztrogonác <ossy@webkit.org>
  52811. Reviewed by Darin Adler.
  52812. REGRESSION(r66324): Fix warnings in editing/ApplyStyleCommand.cpp
  52813. https://bugs.webkit.org/show_bug.cgi?id=44843
  52814. * editing/ApplyStyleCommand.cpp:
  52815. (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Suggested parentheses added around && within ||
  52816. 2010-08-30 Sheriff Bot <webkit.review.bot@gmail.com>
  52817. Unreviewed, rolling out r66198.
  52818. http://trac.webkit.org/changeset/66198
  52819. https://bugs.webkit.org/show_bug.cgi?id=44856
  52820. It made tests crash on Qt bot (Requested by Ossy_ on #webkit).
  52821. * inspector/Inspector.idl:
  52822. * inspector/InspectorController.cpp:
  52823. (WebCore::InspectorController::inspectedPageDestroyed):
  52824. (WebCore::InspectorController::close):
  52825. * inspector/InspectorFrontendClient.h:
  52826. * inspector/InspectorFrontendHost.cpp:
  52827. * inspector/InspectorFrontendHost.h:
  52828. * inspector/InspectorFrontendHost.idl:
  52829. * inspector/front-end/InspectorFrontendHostStub.js:
  52830. * inspector/front-end/inspector.js:
  52831. (WebInspector.inspectedPageDestroyed):
  52832. 2010-08-30 Marc-Antoine Ruel <maruel@chromium.org>
  52833. Reviewed by Kent Tamura.
  52834. Split webcore_svg off webcore_remaining. webcore_svg contains all svg
  52835. sources files.
  52836. https://bugs.webkit.org/show_bug.cgi?id=44840
  52837. * WebCore.gyp/WebCore.gyp:
  52838. 2010-08-13 MORITA Hajime <morrita@google.com>
  52839. Reviewed by Kent Tamura.
  52840. https://bugs.webkit.org/show_bug.cgi?id=43960
  52841. [Chromium] styled scroll bar on the window is painted badly.
  52842. WebKit assumes outermost scrollbar always painted.
  52843. So force their style to have the background color if it isn't
  52844. given by the stylesheet.
  52845. Test: scrollbars/custom-scrollbar-with-incomplete-style.html
  52846. * rendering/RenderObject.h:
  52847. (WebCore::RenderObject::hasBackground): Extracted body to RenderStyle for sharing.
  52848. * rendering/RenderScrollbar.cpp:
  52849. (WebCore::RenderScrollbar::getScrollbarPseudoStyle): Added the workaround as mentioned above.
  52850. * rendering/RenderScrollbar.h:
  52851. * rendering/style/RenderStyle.h:
  52852. (WebCore::InheritedFlags::hasBackground): Extracted from RenderObject.
  52853. 2010-08-30 Adam Barth <abarth@webkit.org>
  52854. Reviewed by Darin Adler.
  52855. WebCore::RenderBlock::addChild* NULL ptrs
  52856. https://bugs.webkit.org/show_bug.cgi?id=43722
  52857. Also includes some cleanup of comments and ASSERTs.
  52858. Test: fast/ruby/before-doesnt-crash.html
  52859. * rendering/RenderRuby.cpp:
  52860. (WebCore::RenderRubyAsInline::addChild):
  52861. 2010-08-30 Marc-Antoine Ruel <maruel@chromium.org>
  52862. Reviewed by Kent Tamura
  52863. Move most dependencies to webcore_prerequisites
  52864. https://bugs.webkit.org/show_bug.cgi?id=44814
  52865. * WebCore.gyp/WebCore.gyp:
  52866. 2010-08-30 Adam Barth <abarth@webkit.org>
  52867. Move AsyncImageResizer back to html to fix Chromium build.
  52868. * WebCore.gypi:
  52869. 2010-08-30 Adam Barth <abarth@webkit.org>
  52870. Fix silly typo that breaks the build.
  52871. * WebCore.pro:
  52872. 2010-08-30 Adam Barth <abarth@webkit.org>
  52873. Attempt to fix the Qt build.
  52874. * WebCore.pri:
  52875. 2010-08-30 Adam Barth <abarth@webkit.org>
  52876. Attempt to fix Chromium build.
  52877. * WebCore.gyp/WebCore.gyp:
  52878. 2010-08-29 Adam Barth <abarth@webkit.org>
  52879. Rubber-stamped by Maciej Stachowiak.
  52880. Move File and Blob related files from WebCore/html to WebCore/fileapi.
  52881. * Android.mk:
  52882. * CMakeLists.txt:
  52883. * DerivedSources.make:
  52884. * GNUmakefile.am:
  52885. * WebCore.gypi:
  52886. * WebCore.pro:
  52887. * WebCore.vcproj/WebCore.vcproj:
  52888. * WebCore.vcproj/WebCoreCommon.vsprops:
  52889. * WebCore.xcodeproj/project.pbxproj:
  52890. * fileapi: Added.
  52891. * fileapi/AsyncFileWriter.h: Copied from WebCore/html/AsyncFileWriter.h.
  52892. * fileapi/Blob.cpp: Copied from WebCore/html/Blob.cpp.
  52893. * fileapi/Blob.h: Copied from WebCore/html/Blob.h.
  52894. * fileapi/Blob.idl: Copied from WebCore/html/Blob.idl.
  52895. * fileapi/BlobBuilder.cpp: Copied from WebCore/html/BlobBuilder.cpp.
  52896. * fileapi/BlobBuilder.h: Copied from WebCore/html/BlobBuilder.h.
  52897. * fileapi/BlobBuilder.idl: Copied from WebCore/html/BlobBuilder.idl.
  52898. * fileapi/BlobURL.cpp: Copied from WebCore/html/BlobURL.cpp.
  52899. * fileapi/BlobURL.h: Copied from WebCore/html/BlobURL.h.
  52900. * fileapi/File.cpp: Copied from WebCore/html/File.cpp.
  52901. * fileapi/File.h: Copied from WebCore/html/File.h.
  52902. * fileapi/File.idl: Copied from WebCore/html/File.idl.
  52903. * fileapi/FileError.h: Copied from WebCore/html/FileError.h.
  52904. * fileapi/FileError.idl: Copied from WebCore/html/FileError.idl.
  52905. * fileapi/FileList.cpp: Copied from WebCore/html/FileList.cpp.
  52906. * fileapi/FileList.h: Copied from WebCore/html/FileList.h.
  52907. * fileapi/FileList.idl: Copied from WebCore/html/FileList.idl.
  52908. * fileapi/FileReader.cpp: Copied from WebCore/html/FileReader.cpp.
  52909. * fileapi/FileReader.h: Copied from WebCore/html/FileReader.h.
  52910. * fileapi/FileReader.idl: Copied from WebCore/html/FileReader.idl.
  52911. * fileapi/FileStreamProxy.cpp: Copied from WebCore/html/FileStreamProxy.cpp.
  52912. * fileapi/FileStreamProxy.h: Copied from WebCore/html/FileStreamProxy.h.
  52913. * fileapi/FileThread.cpp: Copied from WebCore/html/FileThread.cpp.
  52914. * fileapi/FileThread.h: Copied from WebCore/html/FileThread.h.
  52915. * fileapi/FileThreadTask.h: Copied from WebCore/html/FileThreadTask.h.
  52916. * fileapi/FileWriter.cpp: Copied from WebCore/html/FileWriter.cpp.
  52917. * fileapi/FileWriter.h: Copied from WebCore/html/FileWriter.h.
  52918. * fileapi/FileWriter.idl: Copied from WebCore/html/FileWriter.idl.
  52919. * fileapi/FileWriterClient.h: Copied from WebCore/html/FileWriterClient.h.
  52920. * fileapi/ThreadableBlobRegistry.cpp: Copied from WebCore/html/ThreadableBlobRegistry.cpp.
  52921. * fileapi/ThreadableBlobRegistry.h: Copied from WebCore/html/ThreadableBlobRegistry.h.
  52922. * html/AsyncFileWriter.h: Removed.
  52923. * html/Blob.cpp: Removed.
  52924. * html/Blob.h: Removed.
  52925. * html/Blob.idl: Removed.
  52926. * html/BlobBuilder.cpp: Removed.
  52927. * html/BlobBuilder.h: Removed.
  52928. * html/BlobBuilder.idl: Removed.
  52929. * html/BlobURL.cpp: Removed.
  52930. * html/BlobURL.h: Removed.
  52931. * html/File.cpp: Removed.
  52932. * html/File.h: Removed.
  52933. * html/File.idl: Removed.
  52934. * html/FileError.h: Removed.
  52935. * html/FileError.idl: Removed.
  52936. * html/FileList.cpp: Removed.
  52937. * html/FileList.h: Removed.
  52938. * html/FileList.idl: Removed.
  52939. * html/FileReader.cpp: Removed.
  52940. * html/FileReader.h: Removed.
  52941. * html/FileReader.idl: Removed.
  52942. * html/FileStreamProxy.cpp: Removed.
  52943. * html/FileStreamProxy.h: Removed.
  52944. * html/FileThread.cpp: Removed.
  52945. * html/FileThread.h: Removed.
  52946. * html/FileThreadTask.h: Removed.
  52947. * html/FileWriter.cpp: Removed.
  52948. * html/FileWriter.h: Removed.
  52949. * html/FileWriter.idl: Removed.
  52950. * html/FileWriterClient.h: Removed.
  52951. * html/ThreadableBlobRegistry.cpp: Removed.
  52952. * html/ThreadableBlobRegistry.h: Removed.
  52953. 2010-08-29 Marc-Antoine Ruel <maruel@chromium.org>
  52954. Reviewed by Kent Tamura.
  52955. Move more common settings to webcore_prerequisites
  52956. https://bugs.webkit.org/show_bug.cgi?id=44812
  52957. * WebCore.gyp/WebCore.gyp:
  52958. 2010-08-29 Darin Adler <darin@apple.com>
  52959. Reviewed by Maciej Stachowiak.
  52960. Create SVG and WML elements with create functions instead of direct invocations of new
  52961. https://bugs.webkit.org/show_bug.cgi?id=44851
  52962. Added the create functions, made some existing constructors protected and private,
  52963. made some other member functions protected and and private, added some missing virtual
  52964. keywords for clarity to functions that already were overriding virtual functions,
  52965. fixed some inconsistent indentation, and removed some unneeded empty destructors.
  52966. In the future, it will be good to have the constructors all be private so we don't
  52967. use them by accident. Then we'll change the reference count rule globally and add
  52968. all the necessary calls to adoptRef.
  52969. The SVG changes are compiled and tested. The WML changes are speculative and untested.
  52970. * dom/make_names.pl: Removed supportfor the createWithNew keyword.
  52971. * svg/svgtags.in: Removed all the createWithNew keywords.
  52972. * wml/WMLTagNames.in: Ditto.
  52973. * svg/SVGAElement.cpp:
  52974. (WebCore::SVGAElement::create): Added.
  52975. * svg/SVGAElement.h:
  52976. * svg/SVGAltGlyphElement.cpp:
  52977. (WebCore::SVGAltGlyphElement::create): Added.
  52978. * svg/SVGAltGlyphElement.h:
  52979. * svg/SVGAnimateColorElement.cpp:
  52980. (WebCore::SVGAnimateColorElement::create): Added.
  52981. * svg/SVGAnimateColorElement.h:
  52982. * svg/SVGAnimateElement.cpp:
  52983. (WebCore::SVGAnimateElement::create): Added.
  52984. * svg/SVGAnimateElement.h:
  52985. * svg/SVGAnimateMotionElement.cpp:
  52986. (WebCore::SVGAnimateMotionElement::create): Added.
  52987. * svg/SVGAnimateMotionElement.h:
  52988. * svg/SVGAnimateTransformElement.cpp:
  52989. (WebCore::SVGAnimateTransformElement::create): Added.
  52990. * svg/SVGAnimateTransformElement.h:
  52991. * svg/SVGCircleElement.cpp:
  52992. (WebCore::SVGCircleElement::create): Added.
  52993. * svg/SVGCircleElement.h:
  52994. * svg/SVGClipPathElement.cpp:
  52995. (WebCore::SVGClipPathElement::create): Added.
  52996. * svg/SVGClipPathElement.h:
  52997. * svg/SVGCursorElement.cpp:
  52998. (WebCore::SVGCursorElement::create): Added.
  52999. * svg/SVGCursorElement.h:
  53000. * svg/SVGDefsElement.cpp:
  53001. (WebCore::SVGDefsElement::create): Added.
  53002. * svg/SVGDefsElement.h:
  53003. * svg/SVGDescElement.cpp:
  53004. (WebCore::SVGDescElement::create): Added.
  53005. * svg/SVGDescElement.h:
  53006. * svg/SVGEllipseElement.cpp:
  53007. (WebCore::SVGEllipseElement::create): Added.
  53008. * svg/SVGEllipseElement.h:
  53009. * svg/SVGFEBlendElement.cpp:
  53010. (WebCore::SVGFEBlendElement::create): Added.
  53011. * svg/SVGFEBlendElement.h:
  53012. * svg/SVGFEColorMatrixElement.cpp:
  53013. (WebCore::SVGFEColorMatrixElement::create): Added.
  53014. * svg/SVGFEColorMatrixElement.h:
  53015. * svg/SVGFEComponentTransferElement.cpp:
  53016. (WebCore::SVGFEComponentTransferElement::create): Added.
  53017. * svg/SVGFEComponentTransferElement.h:
  53018. * svg/SVGFECompositeElement.cpp:
  53019. (WebCore::SVGFECompositeElement::create): Added.
  53020. * svg/SVGFECompositeElement.h:
  53021. * svg/SVGFEConvolveMatrixElement.cpp:
  53022. (WebCore::SVGFEConvolveMatrixElement::create): Added.
  53023. * svg/SVGFEConvolveMatrixElement.h:
  53024. * svg/SVGFEDiffuseLightingElement.cpp:
  53025. (WebCore::SVGFEDiffuseLightingElement::create): Added.
  53026. * svg/SVGFEDiffuseLightingElement.h:
  53027. * svg/SVGFEDisplacementMapElement.cpp:
  53028. (WebCore::SVGFEDisplacementMapElement::create): Added.
  53029. * svg/SVGFEDisplacementMapElement.h:
  53030. * svg/SVGFEDistantLightElement.cpp:
  53031. (WebCore::SVGFEDistantLightElement::create): Added.
  53032. * svg/SVGFEDistantLightElement.h:
  53033. * svg/SVGFEFloodElement.cpp:
  53034. (WebCore::SVGFEFloodElement::create): Added.
  53035. * svg/SVGFEFloodElement.h:
  53036. * svg/SVGFEFuncAElement.cpp:
  53037. (WebCore::SVGFEFuncAElement::create): Added.
  53038. * svg/SVGFEFuncAElement.h:
  53039. * svg/SVGFEFuncBElement.cpp:
  53040. (WebCore::SVGFEFuncBElement::create): Added.
  53041. * svg/SVGFEFuncBElement.h:
  53042. * svg/SVGFEFuncGElement.cpp:
  53043. (WebCore::SVGFEFuncGElement::create): Added.
  53044. * svg/SVGFEFuncGElement.h:
  53045. * svg/SVGFEFuncRElement.cpp:
  53046. (WebCore::SVGFEFuncRElement::create): Added.
  53047. * svg/SVGFEFuncRElement.h:
  53048. * svg/SVGFEGaussianBlurElement.cpp:
  53049. (WebCore::SVGFEGaussianBlurElement::create): Added.
  53050. * svg/SVGFEGaussianBlurElement.h:
  53051. * svg/SVGFEImageElement.cpp:
  53052. (WebCore::SVGFEImageElement::create): Added.
  53053. * svg/SVGFEImageElement.h:
  53054. * svg/SVGFEMergeElement.cpp:
  53055. (WebCore::SVGFEMergeElement::create): Added.
  53056. * svg/SVGFEMergeElement.h:
  53057. * svg/SVGFEMergeNodeElement.cpp:
  53058. (WebCore::SVGFEMergeNodeElement::create): Added.
  53059. * svg/SVGFEMergeNodeElement.h:
  53060. * svg/SVGFEMorphologyElement.cpp:
  53061. (WebCore::SVGFEMorphologyElement::create): Added.
  53062. * svg/SVGFEMorphologyElement.h:
  53063. * svg/SVGFEOffsetElement.cpp:
  53064. (WebCore::SVGFEOffsetElement::create): Added.
  53065. * svg/SVGFEOffsetElement.h:
  53066. * svg/SVGFEPointLightElement.cpp:
  53067. (WebCore::SVGFEPointLightElement::create): Added.
  53068. * svg/SVGFEPointLightElement.h:
  53069. * svg/SVGFESpecularLightingElement.cpp:
  53070. (WebCore::SVGFESpecularLightingElement::create): Added.
  53071. * svg/SVGFESpecularLightingElement.h:
  53072. * svg/SVGFESpotLightElement.cpp:
  53073. (WebCore::SVGFESpotLightElement::create): Added.
  53074. * svg/SVGFESpotLightElement.h:
  53075. * svg/SVGFETileElement.cpp:
  53076. (WebCore::SVGFETileElement::create): Added.
  53077. * svg/SVGFETileElement.h:
  53078. * svg/SVGFETurbulenceElement.cpp:
  53079. (WebCore::SVGFETurbulenceElement::create): Added.
  53080. * svg/SVGFETurbulenceElement.h:
  53081. * svg/SVGFilterElement.cpp:
  53082. (WebCore::SVGFilterElement::create): Added.
  53083. * svg/SVGFilterElement.h:
  53084. * svg/SVGFontElement.cpp:
  53085. (WebCore::SVGFontElement::create): Added.
  53086. * svg/SVGFontElement.h:
  53087. * svg/SVGFontFaceElement.cpp:
  53088. (WebCore::SVGFontFaceElement::create): Added.
  53089. * svg/SVGFontFaceElement.h:
  53090. * svg/SVGFontFaceFormatElement.cpp:
  53091. (WebCore::SVGFontFaceFormatElement::create): Added.
  53092. * svg/SVGFontFaceFormatElement.h:
  53093. * svg/SVGFontFaceNameElement.cpp:
  53094. (WebCore::SVGFontFaceNameElement::create): Added.
  53095. * svg/SVGFontFaceNameElement.h:
  53096. * svg/SVGFontFaceSrcElement.cpp:
  53097. (WebCore::SVGFontFaceSrcElement::create): Added.
  53098. * svg/SVGFontFaceSrcElement.h:
  53099. * svg/SVGFontFaceUriElement.cpp:
  53100. (WebCore::SVGFontFaceUriElement::create): Added.
  53101. * svg/SVGFontFaceUriElement.h:
  53102. * svg/SVGForeignObjectElement.cpp:
  53103. (WebCore::SVGForeignObjectElement::create): Added.
  53104. * svg/SVGForeignObjectElement.h:
  53105. * svg/SVGGElement.cpp:
  53106. (WebCore::SVGGElement::create): Added.
  53107. * svg/SVGGElement.h:
  53108. * svg/SVGGlyphElement.cpp:
  53109. (WebCore::SVGGlyphElement::create): Added.
  53110. * svg/SVGGlyphElement.h:
  53111. * svg/SVGHKernElement.cpp:
  53112. (WebCore::SVGHKernElement::create): Added.
  53113. * svg/SVGHKernElement.h:
  53114. * svg/SVGImageElement.cpp:
  53115. (WebCore::SVGImageElement::create): Added.
  53116. * svg/SVGImageElement.h:
  53117. * svg/SVGLineElement.cpp:
  53118. (WebCore::SVGLineElement::create): Added.
  53119. * svg/SVGLineElement.h:
  53120. * svg/SVGLinearGradientElement.cpp:
  53121. (WebCore::SVGLinearGradientElement::create): Added.
  53122. * svg/SVGLinearGradientElement.h:
  53123. * svg/SVGMPathElement.cpp:
  53124. (WebCore::SVGMPathElement::create): Added.
  53125. * svg/SVGMPathElement.h:
  53126. * svg/SVGMarkerElement.cpp:
  53127. (WebCore::SVGMarkerElement::create): Added.
  53128. * svg/SVGMarkerElement.h:
  53129. * svg/SVGMaskElement.cpp:
  53130. (WebCore::SVGMaskElement::create): Added.
  53131. * svg/SVGMaskElement.h:
  53132. * svg/SVGMetadataElement.cpp:
  53133. (SVGMetadataElement::create): Added.
  53134. * svg/SVGMetadataElement.h:
  53135. * svg/SVGMissingGlyphElement.cpp:
  53136. (WebCore::SVGMissingGlyphElement::create): Added.
  53137. * svg/SVGMissingGlyphElement.h:
  53138. * svg/SVGPathElement.cpp:
  53139. (WebCore::SVGPathElement::create): Added.
  53140. * svg/SVGPathElement.h:
  53141. * svg/SVGPatternElement.cpp:
  53142. (WebCore::SVGPatternElement::create): Added.
  53143. * svg/SVGPatternElement.h:
  53144. * svg/SVGPolygonElement.cpp:
  53145. (WebCore::SVGPolygonElement::create): Added.
  53146. * svg/SVGPolygonElement.h:
  53147. * svg/SVGPolylineElement.cpp:
  53148. (WebCore::SVGPolylineElement::create): Added.
  53149. * svg/SVGPolylineElement.h:
  53150. * svg/SVGRadialGradientElement.cpp:
  53151. (WebCore::SVGRadialGradientElement::create): Added.
  53152. * svg/SVGRadialGradientElement.h:
  53153. * svg/SVGRectElement.cpp:
  53154. (WebCore::SVGRectElement::create): Added.
  53155. * svg/SVGRectElement.h:
  53156. * svg/SVGSVGElement.cpp:
  53157. (WebCore::SVGSVGElement::create): Added.
  53158. * svg/SVGSVGElement.h:
  53159. * svg/SVGScriptElement.cpp:
  53160. (WebCore::SVGScriptElement::create): Added.
  53161. * svg/SVGScriptElement.h:
  53162. * svg/SVGSetElement.cpp:
  53163. (WebCore::SVGSetElement::create): Added.
  53164. * svg/SVGSetElement.h:
  53165. * svg/SVGStopElement.cpp:
  53166. (WebCore::SVGStopElement::create): Added.
  53167. * svg/SVGStopElement.h:
  53168. (WebCore::SVGStyleElement::create): Added.
  53169. * svg/SVGStyleElement.h:
  53170. * svg/SVGSwitchElement.cpp:
  53171. (WebCore::SVGSwitchElement::create): Added.
  53172. * svg/SVGSwitchElement.h:
  53173. * svg/SVGSymbolElement.cpp:
  53174. (WebCore::SVGSymbolElement::create): Added.
  53175. * svg/SVGSymbolElement.h:
  53176. * svg/SVGTRefElement.cpp:
  53177. (WebCore::SVGTRefElement::create): Added.
  53178. * svg/SVGTRefElement.h:
  53179. * svg/SVGTSpanElement.cpp:
  53180. (WebCore::SVGTSpanElement::create): Added.
  53181. * svg/SVGTSpanElement.h:
  53182. * svg/SVGTextContentElement.h:
  53183. * svg/SVGTextElement.cpp:
  53184. (WebCore::SVGTextElement::create): Added.
  53185. * svg/SVGTextElement.h:
  53186. * svg/SVGTextPathElement.cpp:
  53187. (WebCore::SVGTextPathElement::create): Added.
  53188. * svg/SVGTextPathElement.h:
  53189. * svg/SVGTextPositioningElement.h:
  53190. * svg/SVGTitleElement.cpp:
  53191. (WebCore::SVGTitleElement::create): Added.
  53192. * svg/SVGTitleElement.h:
  53193. * svg/SVGUseElement.cpp:
  53194. (WebCore::SVGUseElement::create): Added.
  53195. * svg/SVGUseElement.h:
  53196. * svg/SVGVKernElement.cpp:
  53197. (WebCore::SVGVKernElement::create): Added.
  53198. * svg/SVGVKernElement.h:
  53199. * svg/SVGViewElement.cpp:
  53200. (WebCore::SVGViewElement::create): Added.
  53201. * svg/SVGViewElement.h:
  53202. * wml/WMLAElement.cpp:
  53203. (WebCore::WMLAElement::create): Added.
  53204. * wml/WMLAElement.h:
  53205. * wml/WMLAccessElement.cpp:
  53206. (WebCore::WMLAccessElement::create): Added.
  53207. * wml/WMLAccessElement.h:
  53208. * wml/WMLAnchorElement.cpp:
  53209. (WebCore::WMLAnchorElement::create): Added.
  53210. * wml/WMLAnchorElement.h:
  53211. * wml/WMLBRElement.cpp:
  53212. (WebCore::WMLBRElement::create): Added.
  53213. * wml/WMLBRElement.h:
  53214. * wml/WMLCardElement.cpp:
  53215. (WebCore::WMLCardElement::create): Added.
  53216. * wml/WMLCardElement.h:
  53217. * wml/WMLDoElement.cpp:
  53218. (WebCore::WMLDoElement::create): Added.
  53219. * wml/WMLDoElement.h:
  53220. * wml/WMLFieldSetElement.cpp:
  53221. (WebCore::WMLFieldSetElement::create): Added.
  53222. * wml/WMLFieldSetElement.h:
  53223. * wml/WMLFormControlElement.cpp:
  53224. (WebCore::WMLFormControlElement::create): Added.
  53225. * wml/WMLGoElement.cpp:
  53226. (WebCore::WMLGoElement::create): Added.
  53227. * wml/WMLGoElement.h:
  53228. * wml/WMLImageElement.cpp:
  53229. (WebCore::WMLImageElement::create): Added.
  53230. * wml/WMLImageElement.h:
  53231. * wml/WMLInputElement.cpp:
  53232. (WebCore::WMLInputElement::create): Added.
  53233. * wml/WMLInputElement.h:
  53234. * wml/WMLInsertedLegendElement.cpp:
  53235. (WebCore::WMLInsertedLegendElement::create): Added.
  53236. * wml/WMLInsertedLegendElement.h:
  53237. * wml/WMLIntrinsicEvent.cpp:
  53238. (WebCore::WMLIntrinsicEvent::create): Added.
  53239. * wml/WMLMetaElement.cpp:
  53240. (WebCore::WMLMetaElement::create): Added.
  53241. * wml/WMLMetaElement.h:
  53242. * wml/WMLNoopElement.cpp:
  53243. (WebCore::WMLNoopElement::create): Added.
  53244. * wml/WMLNoopElement.h:
  53245. * wml/WMLOnEventElement.cpp:
  53246. (WebCore::WMLOnEventElement::create): Added.
  53247. * wml/WMLOnEventElement.h:
  53248. * wml/WMLOptGroupElement.cpp:
  53249. (WebCore::WMLOptGroupElement::create): Added.
  53250. * wml/WMLOptGroupElement.h:
  53251. * wml/WMLOptionElement.cpp:
  53252. (WebCore::WMLOptionElement::create): Added.
  53253. * wml/WMLOptionElement.h:
  53254. * wml/WMLPElement.cpp:
  53255. (WebCore::WMLPElement::create): Added.
  53256. * wml/WMLPElement.h:
  53257. * wml/WMLPostfieldElement.cpp:
  53258. (WebCore::WMLPostfieldElement::create): Added.
  53259. * wml/WMLPostfieldElement.h:
  53260. * wml/WMLPrevElement.cpp:
  53261. (WebCore::WMLPrevElement::create): Added.
  53262. * wml/WMLPrevElement.h:
  53263. * wml/WMLRefreshElement.cpp:
  53264. (WebCore::WMLRefreshElement::create): Added.
  53265. * wml/WMLRefreshElement.h:
  53266. * wml/WMLSelectElement.cpp:
  53267. (WebCore::WMLSelectElement::create): Added.
  53268. * wml/WMLSelectElement.h:
  53269. * wml/WMLSetvarElement.cpp:
  53270. (WebCore::WMLSetvarElement::create): Added.
  53271. * wml/WMLSetvarElement.h:
  53272. * wml/WMLTableElement.cpp:
  53273. (WebCore::WMLTableElement::create): Added.
  53274. * wml/WMLTableElement.h:
  53275. * wml/WMLTaskElement.cpp:
  53276. (WebCore::WMLTaskElement::create): Added.
  53277. * wml/WMLTaskElement.h:
  53278. * wml/WMLTemplateElement.cpp:
  53279. (WebCore::WMLTemplateElement::create): Added.
  53280. * wml/WMLTemplateElement.h:
  53281. * wml/WMLTimerElement.cpp:
  53282. (WebCore::WMLTimerElement::create): Added.
  53283. * wml/WMLTimerElement.h:
  53284. 2010-08-29 Marc-Antoine Ruel <maruel@chromium.org>
  53285. Reviewed by Kent Tamura.
  53286. Rename webcore to 'webcore_remaining'.
  53287. https://bugs.webkit.org/show_bug.cgi?id=44796
  53288. Create a meta-target webcore that inherits from every webcore_XXX targets. (Currently 1)
  53289. Move direct_dependent_settings and export_dependent_settings from webcore_remaining to webcore
  53290. Obviously, there will be other webcore_XXX targets. Keeping the change as small as possible.
  53291. * WebCore.gyp/WebCore.gyp:
  53292. 2010-08-29 Jeremy Moskovich <jeremy@chromium.org>
  53293. Reviewed by Dimitri Glazkov.
  53294. First step in unforking Chrome's FontPlatformDataMac.mm.
  53295. Move files from platform/graphics/mac to platform/graphics/cocoa
  53296. https://bugs.webkit.org/show_bug.cgi?id=41398
  53297. Just moving files around so no new tests.
  53298. * WebCore.gyp/WebCore.gyp:
  53299. * WebCore.gypi:
  53300. * WebCore.xcodeproj/project.pbxproj:
  53301. * platform/graphics/chromium/FontPlatformDataChromiumMac.mm:
  53302. * platform/graphics/cocoa/FontPlatformData.h: Copied from WebCore/platform/graphics/mac/FontPlatformData.h.
  53303. * platform/graphics/cocoa/FontPlatformDataCocoa.mm: Copied from WebCore/platform/graphics/mac/FontPlatformDataMac.mm.
  53304. * platform/graphics/mac/FontPlatformData.h: Removed.
  53305. * platform/graphics/mac/FontPlatformDataMac.mm: Removed.
  53306. 2010-08-29 Kent Tamura <tkent@chromium.org>
  53307. Reviewed by Darin Adler.
  53308. Introduce isValidValue(const String&) of HTMLInputElement and HTMLTextAreaElement
  53309. https://bugs.webkit.org/show_bug.cgi?id=43537
  53310. isValidValue() is useful for browser implementations to propose
  53311. form field values without breaking form validity.
  53312. No new tests because these functions are not exposed to JavaScript.
  53313. * html/HTMLFormControlElement.h:
  53314. (WebCore::HTMLTextFormControlElement::):
  53315. Remove virtual valueMissing(), patternMismatch(), and tooLong().
  53316. * html/HTMLInputElement.cpp:
  53317. (WebCore::isValidColorString): Moved from ValidityState.
  53318. (WebCore::isValidEmailAddress): ditto.
  53319. (WebCore::HTMLInputElement::isValidValue): Added.
  53320. (WebCore::HTMLInputElement::typeMismatch): Add a String parameter.
  53321. (WebCore::HTMLInputElement::valueMissing): Add a String parameter.
  53322. (WebCore::HTMLInputElement::patternMismatch): Add a String parameter.
  53323. (WebCore::HTMLInputElement::tooLong): Add String and NeedsToCheckDirtyFlag parameters.
  53324. (WebCore::HTMLInputElement::rangeUnderflow): Add a String parameter.
  53325. (WebCore::HTMLInputElement::rangeOverflow): Add a String parameter.
  53326. (WebCore::HTMLInputElement::stepMismatch): Add a String parameter.
  53327. * html/HTMLInputElement.h:
  53328. * html/HTMLTextAreaElement.cpp:
  53329. (WebCore::HTMLTextAreaElement::tooLong): Add String and NeedsToCheckDirtyFlag parameters.
  53330. (WebCore::HTMLTextAreaElement::isValidValue): Added.
  53331. * html/HTMLTextAreaElement.h:
  53332. (WebCore::HTMLTextAreaElement::valueMissing):
  53333. * html/ValidityState.cpp:
  53334. (WebCore::ValidityState::valueMissing): Calls valueMissing() of HTMLInputElement or HTMLTextAreaElement.
  53335. (WebCore::ValidityState::typeMismatch): Passes value() to HTMLInputElement::typeMismatch().
  53336. (WebCore::ValidityState::patternMismatch): Calls patternMismatch() of HTMLInputElement.
  53337. (WebCore::ValidityState::tooLong): Calls valueMissing() of HTMLInputElement or HTMLTextAreaElement.
  53338. (WebCore::ValidityState::rangeUnderflow): Passes value() to HTMLInputElement::rangeUnderflow().
  53339. (WebCore::ValidityState::rangeOverflow): Passes value() to HTMLInputElement::rangeUnderflow().
  53340. (WebCore::ValidityState::stepMismatch): Passes value() to HTMLInputElement::stepMismatch().
  53341. * html/ValidityState.h:
  53342. 2010-08-29 Kent Tamura <tkent@chromium.org>
  53343. Reviewed by Darin Adler.
  53344. Change lower and higher limits of date/datetime/datetime-local/month/week types
  53345. https://bugs.webkit.org/show_bug.cgi?id=39737
  53346. According to the latest draft of HTML5, ISO-8601 dates in HTML5
  53347. should support A.D.0001 in Gregorian calendar though Gregorian
  53348. calendar started in 1582. So, we change the lower limits of
  53349. date&time types to 0001-01-01T00:00.
  53350. We also introduce the common higher limit, 275760-09-13T00:00. It
  53351. is the higher limit of Date type of ECMAScript.
  53352. * html/DateComponents.cpp:
  53353. (WebCore::DateComponents::parseYear):
  53354. Rejects years less than A.D.1 and years greater than 275760.
  53355. (WebCore::withinHTMLDateLimits):
  53356. Helper functions to check lower and higher limits.
  53357. (WebCore::DateComponents::addDay):
  53358. - Remove an overflow check. 'year' can't be so large number because
  53359. parseYear() rejects such numbers.
  53360. - Add withinHTMLDateLimits() calls.
  53361. (WebCore::DateComponents::addMinute):
  53362. - Add an assertion for the base date.
  53363. - Add withinHTMLDateLimits() calls.
  53364. (WebCore::DateComponents::parseMonth):
  53365. Add withinHTMLDateLimits() call.
  53366. (WebCore::DateComponents::parseDate): ditto.
  53367. (WebCore::DateComponents::parseWeek): ditto.
  53368. (WebCore::DateComponents::parseDateTimeLocal): ditto.
  53369. (WebCore::DateComponents::parseDateTime): ditto.
  53370. (WebCore::DateComponents::setMillisecondsSinceEpochForDate): ditto.
  53371. (WebCore::DateComponents::setMillisecondsSinceEpochForDateTime): ditto.
  53372. (WebCore::DateComponents::setMillisecondsSinceEpochForMonth): ditto.
  53373. (WebCore::DateComponents::setMonthsSinceEpoch):
  53374. Add year range check and withinHTMLDateLimits() call.
  53375. (WebCore::DateComponents::setMillisecondsSinceEpochForWeek):
  53376. Add year range check and week range check.
  53377. * html/DateComponents.h:
  53378. Update minimum/maximum constant values.
  53379. (WebCore::DateComponents::minimumDate):
  53380. (WebCore::DateComponents::minimumDateTime):
  53381. (WebCore::DateComponents::minimumMonth):
  53382. (WebCore::DateComponents::minimumWeek):
  53383. (WebCore::DateComponents::maximumDate):
  53384. (WebCore::DateComponents::maximumDateTime):
  53385. (WebCore::DateComponents::maximumMonth):
  53386. (WebCore::DateComponents::maximumWeek):
  53387. 2010-08-29 Kwang Yul Seo <skyul@company100.net>
  53388. Reviewed by Kent Tamura.
  53389. [BREWMP] Port SharedBuffer::createWithContentsOfFile
  53390. https://bugs.webkit.org/show_bug.cgi?id=34412
  53391. Implement SharedBuffer::createWithContentsOfFile with IFile.
  53392. * platform/brew/SharedBufferBrew.cpp: Added.
  53393. (WebCore::SharedBuffer::createWithContentsOfFile):
  53394. 2010-08-29 Enrica Casucci <enrica@apple.com>
  53395. Reviewed by Adele Peterson.
  53396. Crash when dragging text in Google Docs
  53397. https://bugs.webkit.org/show_bug.cgi?id=20471
  53398. <rdar://problem/7783629>
  53399. This fixes the crash but also fixes the generated markup when
  53400. performing a replacement at the border with an inline, to avoid the
  53401. new content being merged into the inline.
  53402. The crash is happening when doApply detects the need of merging
  53403. the start and the end of the new paragraph and the destination position
  53404. is moved inside an inline.
  53405. I've added new test cases to an existing layout test.
  53406. * editing/ReplaceSelectionCommand.cpp:
  53407. (WebCore::ReplaceSelectionCommand::doApply): When the situation described above is detected,
  53408. we insert a placeholder to avoid merging into the inline.
  53409. 2010-08-29 Adam Barth <abarth@webkit.org>
  53410. Reviewed by Darin Adler.
  53411. Implement HTML5's fakepath
  53412. https://bugs.webkit.org/show_bug.cgi?id=29000
  53413. The HTML 5 spec says to prepend C:\fakepath\ to the value of an
  53414. <input type="file"> control, so that's what we do now.
  53415. * html/HTMLInputElement.cpp:
  53416. (WebCore::HTMLInputElement::value):
  53417. 2010-08-29 Sheriff Bot <webkit.review.bot@gmail.com>
  53418. Unreviewed, rolling out r66329.
  53419. http://trac.webkit.org/changeset/66329
  53420. https://bugs.webkit.org/show_bug.cgi?id=44845
  53421. broke chromium mac (Requested by jamesr on #webkit).
  53422. * WebCore.gypi:
  53423. * WebCore.xcodeproj/project.pbxproj:
  53424. * platform/graphics/mac/FontPlatformData.h: Renamed from WebCore/platform/graphics/cocoa/FontPlatformData.h.
  53425. (WebCore::toCTFontRef):
  53426. (WebCore::FontPlatformData::FontPlatformData):
  53427. (WebCore::FontPlatformData::isHashTableDeletedValue):
  53428. (WebCore::FontPlatformData::size):
  53429. (WebCore::FontPlatformData::syntheticBold):
  53430. (WebCore::FontPlatformData::syntheticOblique):
  53431. (WebCore::FontPlatformData::hash):
  53432. (WebCore::FontPlatformData::operator==):
  53433. (WebCore::FontPlatformData::font):
  53434. (WebCore::FontPlatformData::isColorBitmapFont):
  53435. (WebCore::FontPlatformData::cgFont):
  53436. (WebCore::FontPlatformData::hashTableDeletedFontValue):
  53437. * platform/graphics/mac/FontPlatformDataMac.mm: Renamed from WebCore/platform/graphics/cocoa/FontPlatformDataCocoa.mm.
  53438. (WebCore::FontPlatformData::FontPlatformData):
  53439. (WebCore::~FontPlatformData):
  53440. (WebCore::FontPlatformData::operator=):
  53441. (WebCore::FontPlatformData::setFont):
  53442. (WebCore::FontPlatformData::roundsGlyphAdvances):
  53443. (WebCore::FontPlatformData::allowsLigatures):
  53444. (WebCore::FontPlatformData::ctFont):
  53445. (WebCore::FontPlatformData::description):
  53446. 2010-08-29 Simon Fraser <simon.fraser@apple.com>
  53447. Reviewed by Darin Adler.
  53448. Fix RenderStyle::addCursor to use a StyleImage, not a CachedImage
  53449. https://bugs.webkit.org/show_bug.cgi?id=44719
  53450. Modernize the CSS cursor code to use a StyleImage, rather
  53451. than a CachedImage in the CursorData, and handle the loading
  53452. of pending images for the cursor property.
  53453. Covered by manual tests in WebCore/manual-tests
  53454. * css/CSSComputedStyleDeclaration.cpp:
  53455. (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  53456. * css/CSSStyleSelector.cpp:
  53457. (WebCore::CSSStyleSelector::applyProperty):
  53458. (WebCore::CSSStyleSelector::loadPendingImages):
  53459. * html/canvas/WebGLRenderingContext.cpp:
  53460. * page/EventHandler.cpp:
  53461. (WebCore::EventHandler::selectCursor):
  53462. * rendering/style/CursorData.h:
  53463. (WebCore::CursorData::CursorData):
  53464. (WebCore::CursorData::image):
  53465. (WebCore::CursorData::setImage):
  53466. * rendering/style/CursorList.h:
  53467. (WebCore::CursorList::operator[]):
  53468. * rendering/style/RenderStyle.cpp:
  53469. (WebCore::RenderStyle::addCursor):
  53470. * rendering/style/RenderStyle.h:
  53471. 2010-08-29 Simon Fraser <simon.fraser@apple.com>
  53472. Reviewed by Darin Adler.
  53473. When properties are missing from animation keyframes, interpolate between those keyframes that specify them
  53474. https://bugs.webkit.org/show_bug.cgi?id=40794
  53475. When a property does not appear in all keyframes of a keyframe animation, we currently use the
  53476. value of that property from the unanimated style. That forces the author to use additional
  53477. keyframes for properties that need to "skip a keyframe", which is laborious.
  53478. With this change, properties are interpolated between the keyframes in which they appear.
  53479. This is equivalent to splitting each property out into its own set of keyframes.
  53480. Tests: animations/missing-keyframe-properties-repeating.html
  53481. animations/missing-keyframe-properties-timing-function.html
  53482. animations/missing-keyframe-properties.html
  53483. * css/CSSStyleSelector.h:
  53484. * css/CSSStyleSelector.cpp:
  53485. (WebCore::CSSStyleSelector::styleForKeyframe): Pass a KeyframeValue in so that we can
  53486. collect which properties are represented per keyframe.
  53487. (WebCore::CSSStyleSelector::keyframeStylesForAnimation): Keyframes are inserted into a
  53488. KeyframeList by object now, rather than by key and style.
  53489. * page/animation/AnimationBase.cpp:
  53490. (WebCore::AnimationBase::progress): Use AnimationDirectionAlternate for readability.
  53491. * page/animation/KeyframeAnimation.cpp:
  53492. (WebCore::KeyframeAnimation::fetchIntervalEndpointsForProperty): Renamed from getKeyframeAnimationInterval.
  53493. Use fractionalTime etc to match AnimationBase::progress(), and do lookups per-property.
  53494. Simplify the code that finds the relevant keyframe to do less work.
  53495. (WebCore::KeyframeAnimation::animate): Call fetchIntervalEndpointsForProperty() for each property, rather than just once for the
  53496. entire keyframe.
  53497. (WebCore::KeyframeAnimation::getAnimatedStyle): Ditto.
  53498. (WebCore::KeyframeAnimation::hasAnimationForProperty): FIXME comment.
  53499. * page/animation/KeyframeAnimation.h: Rename getKeyframeAnimationInterval() to fetchIntervalEndpointsForProperty().
  53500. * rendering/RenderLayerBacking.cpp:
  53501. (WebCore::RenderLayerBacking::startAnimation): For hardware animations, only insert values
  53502. for keyframes which contain the property.
  53503. (WebCore::KeyframeList::KeyframeList): insert() takes a KeyframeValue now.
  53504. * rendering/style/KeyframeList.cpp:
  53505. (WebCore::KeyframeList::operator==):
  53506. (WebCore::KeyframeList::insert): Fix insert/replace logic, and ensure we maintain the
  53507. m_properties hash.
  53508. * rendering/style/KeyframeList.h:
  53509. (WebCore::KeyframeValue::KeyframeValue): Make members private, with accessors.
  53510. Add a m_properties HashSet for the properties animated in this keyframe.
  53511. 2010-08-29 Csaba Osztrogonác <ossy@webkit.org>
  53512. Reviewed by Darin Adler.
  53513. REGRESSION(r66324): Fix warnings in editing/ApplyStyleCommand.cpp
  53514. https://bugs.webkit.org/show_bug.cgi?id=44843
  53515. * editing/ApplyStyleCommand.cpp:
  53516. (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Suggested parentheses added around && within ||
  53517. 2010-08-29 Darin Adler <darin@apple.com>
  53518. Try to fix Mac build.
  53519. * WebCore.xcodeproj/project.pbxproj: Mark CounterContent.h Private instead of Project.
  53520. 2010-08-29 Pawel Hajdan <phajdan.jr@chromium.org>
  53521. Reviewed by Darin Adler.
  53522. Fix libxml workarounds to work with recent versions of libxml.
  53523. I was testing locally with libxml2-2.7.6.
  53524. https://bugs.webkit.org/show_bug.cgi?id=30508
  53525. Based on patch by Philippe Normand <pnormand@igalia.com>.
  53526. This also fixes a Chromium bug:
  53527. http://code.google.com/p/chromium/issues/detail?id=29333
  53528. * dom/XMLDocumentParserLibxml2.cpp:
  53529. (WebCore::switchToUTF16):
  53530. (WebCore::XMLParserContext::createStringParser):
  53531. (WebCore::XMLDocumentParser::doWrite):
  53532. (WebCore::startDocumentHandler):
  53533. 2010-08-29 Darin Adler <darin@apple.com>
  53534. Try to fix Windows build.
  53535. * rendering/style/ContentData.h: Added include of CounterContent.h.
  53536. * css/CSSStyleSelector.cpp: Removed include of CounterContent.h.
  53537. * rendering/style/ContentData.cpp: Ditto.
  53538. * rendering/style/RenderStyle.cpp: Ditto.
  53539. 2010-08-29 Darin Adler <darin@apple.com>
  53540. Reviewed by Sam Weinig.
  53541. Deploy OwnPtr, PassOwnPtr, and adoptPtr in some CSS-related files
  53542. https://bugs.webkit.org/show_bug.cgi?id=44834
  53543. * css/CSSFunctionValue.cpp:
  53544. (WebCore::CSSFunctionValue::CSSFunctionValue): Updated since
  53545. CSSParserFunction::args is an OwnPtr.
  53546. (WebCore::CSSFunctionValue::parserValue): Ditto.
  53547. * css/CSSGrammar.y: Added leakPtr calls for putting MediaQueryExp*
  53548. into the media query expression list, which is a vector of raw pointers
  53549. that are deleted explicitly.
  53550. * css/CSSImportRule.cpp:
  53551. (WebCore::CSSImportRule::setCSSStyleSheet): Updated to use document instead of doc.
  53552. (WebCore::CSSImportRule::insertedIntoParent): Ditto.
  53553. * css/CSSMutableStyleDeclaration.cpp:
  53554. (WebCore::CSSMutableStyleDeclaration::setNeedsStyleRecalc): Ditto.
  53555. * css/CSSNamespace.h: Took the "m_" off the names of the data members of
  53556. this structure. Used OwnPtr for the parent data member. Rewrote the
  53557. namespaceForPrefix function so it's iterative instead of recursive.
  53558. * css/CSSParser.cpp:
  53559. (WebCore::CSSParser::CSSParser): Update since m_mediaQuery, m_floatingMediaQuery,
  53560. m_floatingMediaQueryExp, and m_floatingMediaQueryExpList are now all OwnPtr and
  53561. thus don't need to be initialized.
  53562. (WebCore::CSSParser::~CSSParser): Update to not delete the above OwnPtr.
  53563. (WebCore::CSSParser::parseMediaQuery): Replaced the code that sets m_mediaQuery
  53564. to 0 with an assertion. Also use release when passing the media query to
  53565. appendMediaQuery.
  53566. (WebCore::CSSParser::document): Updated to use document instead of doc and to
  53567. use early return instead of a nested if.
  53568. (WebCore::CSSParser::parseContent): Added a get() call needed since
  53569. CSSParserFunction::args is an OwnPtr.
  53570. (WebCore::CSSParser::parseAnimationTimingFunction): Ditto.
  53571. (WebCore::CSSParser::parseDashboardRegions): Ditto.
  53572. (WebCore::CSSParser::parseShape): Ditto.
  53573. (WebCore::isValidFormatFunction): Ditto.
  53574. (WebCore::CSSParser::parseFontFaceSrc): Ditto.
  53575. (WebCore::CSSParser::parseColorParameters): Ditto.
  53576. (WebCore::CSSParser::parseHSLParameters): Ditto.
  53577. (WebCore::parseGradientColorStop): Ditto.
  53578. (WebCore::CSSParser::parseGradient): Ditto.
  53579. (WebCore::CSSParser::parseCanvas): Ditto.
  53580. (WebCore::CSSParser::parseTransform): Ditto.
  53581. (WebCore::CSSParser::createFloatingMediaQueryExp): Updated to use adoptPtr and
  53582. remove the explicit deletion.
  53583. (WebCore::CSSParser::sinkFloatingMediaQueryExp): Updated to use release.
  53584. (WebCore::CSSParser::createFloatingMediaQueryExpList): Ditto.
  53585. (WebCore::CSSParser::sinkFloatingMediaQueryExpList): Ditto.
  53586. (WebCore::CSSParser::createFloatingMediaQuery): Ditto.
  53587. (WebCore::CSSParser::sinkFloatingMediaQuery): Ditto.
  53588. (WebCore::CSSParser::checkForVariables): Use get for CSSParserFunction::args.
  53589. * css/CSSParser.h: Made return values for sinkFloatingMediaQueryExp,
  53590. sinkFloatingMediaQueryExpList, and sinkFloatingMediaQuery be PassOwnPtr.
  53591. Made createFloatingMediaQuery take a PassOwnPtr. Made m_mediaQuery,
  53592. m_floatingMediaQuery, m_floatingMediaQueryExp, and m_floatingMediaQueryExpList
  53593. be OwnPtr.
  53594. * css/CSSParserValues.h: Made args be an OwnPtr.
  53595. * css/CSSStyleSelector.cpp: Made CSSRuleSet m_universalRules and m_pageRules
  53596. be OwnPtr.
  53597. (WebCore::CSSStyleSelector::CSSStyleSelector): Use document instead of doc.
  53598. Got rid of the init function, only called here, because it did nothing that
  53599. wasn't already done. Eliminated unneeded code to set m_userStyle to 0, since
  53600. it's now an OwnPtr and will be 0 automatically. Use adoptPtr when initializing
  53601. m_medium, m_authorStyle, and m_useStyle.
  53602. (WebCore::CSSStyleSelector::~CSSStyleSelector): Got rid of unneeded delete of
  53603. m_medium, m_authorStyle, and m_userStyle, and unneded clear of m_keyframesRuleMap.
  53604. (WebCore::CSSStyleSelector::styleForElement): Use get with m_userStyle and
  53605. m_authorStyle.
  53606. (WebCore::CSSStyleSelector::pseudoStyleForElement): Ditto.
  53607. (WebCore::CSSStyleSelector::styleForPage): Ditto.
  53608. (WebCore::CSSStyleSelector::pseudoStyleRulesForElement): Ditto.
  53609. (WebCore::CSSRuleSet::CSSRuleSet): Got rid of unneeded initialization of
  53610. m_universalRules and m_pageRules.
  53611. (WebCore::CSSRuleSet::~CSSRuleSet): Got rid of unneeed deletion of same.
  53612. (WebCore::CSSRuleSet::addRule): Use adoptPtr to initialize m_universalRules.
  53613. (WebCore::CSSRuleSet::addPageRule): Use adoptPtr to initialize m_pageRules.
  53614. (WebCore::CSSStyleSelector::applyProperty): Use adopPtr to create counter
  53615. context object.
  53616. * css/CSSStyleSelector.h: Made m_authorStyle, m_userStyle, and m_medium use
  53617. OwnPtr. Got rid of init function.
  53618. * css/CSSStyleSheet.cpp:
  53619. (WebCore::CSSStyleSheet::CSSStyleSheet): Updatd for name change from m_doc
  53620. and doc to m_document and document. Eliminated unneeded initialization of
  53621. m_namespaces now that it is an OwnPtr.
  53622. (WebCore::CSSStyleSheet::~CSSStyleSheet): Got rid of unneeded deletion of same.
  53623. (WebCore::CSSStyleSheet::cssRules): Updated doc to document.
  53624. (WebCore::CSSStyleSheet::addNamespace): Added adopPtr when setting m_namespaces.
  53625. (WebCore::CSSStyleSheet::determineNamespace): Updated for changes to the
  53626. CSSNamespace class, using uri data member instead of function.
  53627. (WebCore::CSSStyleSheet::styleSheetChanged): Use document instead of doc.
  53628. * css/CSSStyleSheet.h: Renamed doc and m_doc to document and m_document.
  53629. Made m_namespaces an OwnPtr.
  53630. * css/CSSValueList.cpp:
  53631. (WebCore::CSSValueList::CSSValueList): Clean up logic a bit.
  53632. (WebCore::CSSValueList::createParserValueList): Clean up logic a bit and
  53633. return a PassOwnPtr.
  53634. * css/CSSValueList.h: Changed createParserValueList to return a PassOwnPtr.
  53635. * css/CSSVariablesDeclaration.cpp:
  53636. (WebCore::CSSVariablesDeclaration::setNeedsStyleRecalc): Updated to use
  53637. document instead of doc.
  53638. * css/MediaList.cpp:
  53639. (WebCore::MediaList::deleteMedium): Use OwnPtr instead of a boolean to
  53640. make sure the newly-created query here is deleted.
  53641. (WebCore::MediaList::appendMediaQuery): Updated to take PassOwnPtr.
  53642. * css/MediaList.h: Changed appendMediaQuery to take a PassOwnPtr.
  53643. * inspector/InspectorDOMAgent.cpp:
  53644. (WebCore::InspectorDOMAgent::getStyleSheet): Use document instead of doc.
  53645. (WebCore::InspectorDOMAgent::getRuleRanges): Ditto.
  53646. (WebCore::InspectorDOMAgent::buildObjectForStyleSheet): Ditto.
  53647. * rendering/style/ContentData.cpp:
  53648. (WebCore::ContentData::clear): Update since data members are OwnPtr.
  53649. Also, fixed iterative deletion algorithm to be much simpler.
  53650. (WebCore::ContentData::dataEquivalent): Added FIXMEs and tweaked formatting.
  53651. (WebCore::ContentData::deleteContent): Tweaked formatting.
  53652. * rendering/style/ContentData.h: Changed m_next to an OwnPtr.
  53653. Added assertions to getters to check that we get the correct type.
  53654. Use leakRef instead of releaseRef. Changed setCounter and setNext functions
  53655. to take PassOwnPtr arguments.
  53656. * rendering/style/RenderStyle.cpp:
  53657. (WebCore::RenderStyle::prepareToSetContent): Refactored common part of the
  53658. into a shared function so the three setContent functions don't have to repeat
  53659. the logic. Used an OwnPtr to avoid confusing logic and leakPtr.
  53660. (WebCore::RenderStyle::setContent): Changed argument to PassOwnPtr.
  53661. * rendering/style/RenderStyle.h: Changed setContent argument to a PassOwnPtr.
  53662. Added declaration of prepareToSetContent helper function.
  53663. 2010-08-29 Patrick Gansterer <paroga@paroga.com>
  53664. Reviewed by Adam Roben.
  53665. [WINCE] Port ScrollbarThemeWin to WinCE
  53666. https://bugs.webkit.org/show_bug.cgi?id=44818
  53667. Add a #ifdef around usage of unsupported DFCS_FLAT.
  53668. * platform/win/ScrollbarThemeWin.cpp:
  53669. (WebCore::ScrollbarThemeWin::paintButton):
  53670. 2010-08-29 Patrick Gansterer <paroga@paroga.com>
  53671. Reviewed by Adam Roben.
  53672. [WINCE] Port SystemInfo to WinCE
  53673. https://bugs.webkit.org/show_bug.cgi?id=44817
  53674. * platform/win/SystemInfo.cpp:
  53675. (WebCore::isRunningOnVistaOrLater):
  53676. 2010-08-28 Jeremy Moskovich <jeremy@chromium.org>
  53677. Reviewed by Dimitri Glazkov.
  53678. First step in unforking Chrome's FontPlatformDataMac.mm.
  53679. Move files from platform/graphics/mac to platform/graphics/cocoa
  53680. https://bugs.webkit.org/show_bug.cgi?id=41398
  53681. Just moving files around so no new tests.
  53682. * WebCore.gypi:
  53683. * WebCore.xcodeproj/project.pbxproj:
  53684. * platform/graphics/cocoa: Added.
  53685. * platform/graphics/cocoa/FontPlatformData.h: Copied from WebCore/platform/graphics/mac/FontPlatformData.h.
  53686. * platform/graphics/cocoa/FontPlatformDataCocoa.mm: Copied from WebCore/platform/graphics/mac/FontPlatformDataMac.mm.
  53687. * platform/graphics/mac/FontPlatformData.h: Removed.
  53688. * platform/graphics/mac/FontPlatformDataMac.mm: Removed.
  53689. 2010-08-28 Darin Adler <darin@apple.com>
  53690. Reviewed by Sam Weinig.
  53691. Some IDL attributes don't reflect URL content attributes properly
  53692. https://bugs.webkit.org/show_bug.cgi?id=43650
  53693. * dom/Document.cpp:
  53694. (WebCore::Document::processBaseElement): Added. Implements the rules for base elements
  53695. from the HTML5 specification. Handles multiple base elements in the same document.
  53696. * dom/Document.h: Removed setBaseElementURL and setBaseElementTarget, replacing them
  53697. with processBaseElement.
  53698. * html/HTMLBaseElement.cpp:
  53699. (WebCore::HTMLBaseElement::parseMappedAttribute): Call the new processBaseElement
  53700. function.
  53701. (WebCore::HTMLBaseElement::insertedIntoDocument): Ditto.
  53702. (WebCore::HTMLBaseElement::removedFromDocument): Ditto.
  53703. (WebCore::HTMLBaseElement::isURLAttribute): Added.
  53704. (WebCore::HTMLBaseElement::target): Moved here from the .h file and changed to not
  53705. realy on an m_target local variable.
  53706. * html/HTMLBaseElement.h: Added an override of the isURLAttribute function. Removed
  53707. unneeded process function. Removed declaration of nonexistent setHref and setTarget
  53708. functions. Removed unneeded m_hrefAttrValue, m_href, and m_target. Moved
  53709. implementation of target function into the .cpp file.
  53710. * html/HTMLBaseElement.idl: Marked the href attribute as URL.
  53711. * html/HTMLBlockquoteElement.cpp:
  53712. (WebCore::HTMLBlockquoteElement::isURLAttribute): Added.
  53713. * html/HTMLBlockquoteElement.h: Added isURLAttribute.
  53714. * html/HTMLBlockquoteElement.idl: Marked the cite attribute as URL.
  53715. * html/HTMLEmbedElement.idl: Marked the src attribute as URL.
  53716. * html/HTMLFormElement.cpp: Added a comment about the action function, which should
  53717. be removed.
  53718. * html/HTMLFormElement.idl: Marked the action attribute as URL.
  53719. * html/HTMLHtmlElement.cpp:
  53720. (WebCore::HTMLHtmlElement::isURLAttribute): Added.
  53721. (WebCore::HTMLHtmlElement::insertedIntoDocument): Tweaked a bit.
  53722. * html/HTMLHtmlElement.h: Added isURLAttribute.
  53723. * html/HTMLHtmlElement.idl: Marked the manifest attribute as URL.
  53724. * html/HTMLIFrameElement.idl: Marked the src attribute a URL.
  53725. * html/HTMLModElement.cpp:
  53726. (WebCore::HTMLModElement::isURLAttribute): Added.
  53727. * html/HTMLModElement.h: Added isURLAttribute.
  53728. * html/HTMLModElement.idl: Marked the cite attribute as URL.
  53729. * html/HTMLQuoteElement.cpp:
  53730. (WebCore::HTMLQuoteElement::isURLAttribute): Added.
  53731. * html/HTMLQuoteElement.h: Added isURLAttribute.
  53732. * html/HTMLQuoteElement.idl: Marked the cite attribute as URL.
  53733. * html/HTMLViewSourceDocument.cpp:
  53734. (WebCore::HTMLViewSourceDocument::processTagToken): Changed code to create a base
  53735. element instead of calling setBaseElementURL directly.
  53736. (WebCore::HTMLViewSourceDocument::addSpanWithClassName): Use AtomicString instead of String.
  53737. (WebCore::HTMLViewSourceDocument::addLine): Ditto.
  53738. (WebCore::HTMLViewSourceDocument::addText): Ditto.
  53739. (WebCore::HTMLViewSourceDocument::addBase): Added. Creates a base element and inserts it.
  53740. (WebCore::HTMLViewSourceDocument::addLink): Use AtomicString instead of String.
  53741. * html/HTMLViewSourceDocument.h: Updated function declarations as above.
  53742. * bindings/scripts/test/CPP/WebDOMTestCallback.h:
  53743. * bindings/scripts/test/CPP/WebDOMTestInterface.h:
  53744. * bindings/scripts/test/CPP/WebDOMTestObj.h:
  53745. * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
  53746. * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  53747. Updated results, which changed due to the fixes for at
  53748. least these bugs, and perhaps a few more:
  53749. https://bugs.webkit.org/show_bug.cgi?id=42115
  53750. https://bugs.webkit.org/show_bug.cgi?id=44597
  53751. https://bugs.webkit.org/show_bug.cgi?id=44738
  53752. * bindings/scripts/test/TestObj.idl:
  53753. * html/HTMLAnchorElement.idl:
  53754. * html/HTMLAreaElement.idl:
  53755. * html/HTMLEmbedElement.idl:
  53756. * html/HTMLFormElement.cpp:
  53757. * html/HTMLFormElement.idl:
  53758. * html/HTMLFrameElement.idl:
  53759. * html/HTMLIFrameElement.idl:
  53760. * html/HTMLImageElement.idl:
  53761. * html/HTMLInputElement.idl:
  53762. * html/HTMLLinkElement.idl:
  53763. * html/HTMLMediaElement.idl:
  53764. * html/HTMLObjectElement.idl:
  53765. * html/HTMLScriptElement.idl:
  53766. * html/HTMLSourceElement.idl:
  53767. * html/HTMLVideoElement.idl:
  53768. Tweaked formatting.
  53769. 2010-08-28 Ryosuke Niwa <rniwa@webkit.org>
  53770. Reviewed by Darin Adler.
  53771. The logic to escape entities in appendEscapedContent and appendAttributeValue should be merged
  53772. https://bugs.webkit.org/show_bug.cgi?id=44831
  53773. Added appendCharactersReplacingEntities to escape &, <, >, ", and nbsp based on the mask.
  53774. Removed escapeContentText because it was only used in appendText, which now directly calls
  53775. appendCharactersReplacingEntities. Replaced appendEscapedContent, ucharRange, and appendUCharRange
  53776. by appendNodeValue.
  53777. No new tests are added since this is a cleanup.
  53778. * editing/markup.cpp:
  53779. (WebCore::):
  53780. (WebCore::appendCharactersReplacingEntities): Added.
  53781. (WebCore::MarkupAccumulator::appendAttributeValue): Calls appendCharactersReplacingEntities.
  53782. (WebCore::MarkupAccumulator::appendNodeValue): Added.
  53783. (WebCore::MarkupAccumulator::appendText): Calls appendNodeValue and appendCharactersReplacingEntities.
  53784. (WebCore::urlToMarkup): Calls escapeEntities.
  53785. 2010-08-27 Ryosuke Niwa <rniwa@webkit.org>
  53786. Reviewed by Darin Adler.
  53787. cannot remove text-decoration when style is added by u or s
  53788. https://bugs.webkit.org/show_bug.cgi?id=44560
  53789. The bug was caused by WebKit not pushing down implicitly added styles to descendent nodes.
  53790. Fixed the bug by pushing down all elements that implicitly add style.
  53791. extractInlineStyleToPushDown now calls removeImplicitlyStyledElement, which was modified to extract
  53792. the style implicitly added by the element to extractStyle.
  53793. This revealed a bug in applyInlineStyleToPushDown where applyInlineStyleIfNeeded could add
  53794. an implicitly styled element inside an element with a conflicting style, thereby overriding the style of the element.
  53795. Fixed this by extending the logic to honor the existing inline style declaration used in
  53796. the case of rewriting inline style declaration to all cases including the one calling addInlineStyleIfNeeded.
  53797. Also fixed a bug in removeInlineStyle where pushDownInlineStyleAroundNode was called on a text node
  53798. outside of selection if start was at the end of the text node.
  53799. Test: editing/style/push-down-implicit-styles.html
  53800. * editing/ApplyStyleCommand.cpp:
  53801. (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Added extractedStyle, which receives
  53802. the style implicitly added by the element being removed.
  53803. (WebCore::ApplyStyleCommand::extractInlineStyleToPushDown): Calls removeImplicitlyStyledElement
  53804. to remove the implicitly styled element and extract the inline style added by the element.
  53805. (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown): Fixed a bug that addInlineStyleIfNeeded
  53806. could override the inline style declaration style of the node.
  53807. (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): Uses extractInlineStyleToPushDown
  53808. (WebCore::ApplyStyleCommand::removeInlineStyle): See above.
  53809. * editing/ApplyStyleCommand.h: Prototype changes.
  53810. 2010-08-27 Mark Rowe <mrowe@apple.com>
  53811. Reviewed by Adam Barth.
  53812. <http://webkit.org/b/44802> REGRESSION (r65351): WebCore build fails due to attempting to directly access WebKitTools/Scripts
  53813. Move create-html-entity-table in to WebCore so that the build is again self-contained.
  53814. The script is also updated to take input as a CSV file rather than JSON as the former
  53815. can be parsed without requiring a third-party Python module be installed.
  53816. * CMakeLists.txt:
  53817. * DerivedSources.make:
  53818. * GNUmakefile.am:
  53819. * WebCore.gyp/WebCore.gyp:
  53820. * WebCore.pri:
  53821. * WebCore.xcodeproj/project.pbxproj: Stop copying the input file in to the WebCore framework wrapper.
  53822. * html/parser/HTMLEntityNames.in: Added.
  53823. * html/parser/HTMLEntityNames.json: Removed.
  53824. * html/parser/create-html-entity-table: Renamed from WebKitTools/Scripts/create-html-entity-table.
  53825. 2010-08-28 Daniel Bates <dbates@rim.com>
  53826. Attempt to fix Chromium Mac Release bot after changeset 66305 <http://trac.webkit.org/changeset/66305>.
  53827. * accessibility/chromium/AXObjectCacheChromium.cpp:
  53828. (WebCore::AXObjectCache::postPlatformNotification): Added case statements for missing enum values.
  53829. These case statements simply fall through to a "break" statement.
  53830. 2010-08-26 Kevin Ollivier <kevino@theolliviers.com>
  53831. Reviewed by Nikolas Zimmermann.
  53832. Add explicit destructor for C++ DOM bindings to avoid memory leaks when using SWIG.
  53833. https://bugs.webkit.org/attachment.cgi?bugid=44738
  53834. * bindings/scripts/CodeGeneratorCPP.pm:
  53835. 2010-08-28 Eric Carlson <eric.carlson@apple.com>
  53836. Reviewed by Dan Bernstein.
  53837. Add WebM MIME types to type registry
  53838. https://bugs.webkit.org/show_bug.cgi?id=44826
  53839. * platform/MIMETypeRegistry.cpp:
  53840. (WebCore::TypeExtensionPair::): Add "video/webm" and "audio/webm" types.
  53841. 2010-08-28 Eric Carlson <eric.carlson@apple.com>
  53842. Reviewed by Simon Fraser.
  53843. Crash reloading fast/events/tabindex-focus-blur-all.html test
  53844. https://bugs.webkit.org/show_bug.cgi?id=44743
  53845. * html/HTMLMediaElement.cpp:
  53846. (WebCore::HTMLMediaElement::asyncEventTimerFired): If m_isWaitingToDecrementLoadEventDelayCount
  53847. is true, call setShouldDelayLoadEvent(false) and set the timer to fire the pending events
  53848. on the next idle.
  53849. (WebCore::HTMLMediaElement::setShouldDelayLoadEvent): Don't clear the delay from within a
  53850. media engine callback because document 'load' event handlers that cause the page to become
  53851. inactive will delete the media engine.
  53852. * html/HTMLMediaElement.h: Add m_isWaitingToDecrementLoadEventDelayCount.
  53853. 2010-08-28 Simon Fraser <simon.fraser@apple.com>
  53854. Reviewed by Sam Weinig.
  53855. When properties are missing from animation keyframes, interpolate between those keyframes that specify them
  53856. https://bugs.webkit.org/show_bug.cgi?id=40794
  53857. Some preliminary cleanup; for vectors, prefer indexed access rather than using iterators.
  53858. No behavior changes.
  53859. * css/CSSStyleSelector.cpp:
  53860. (WebCore::CSSStyleSelector::keyframeStylesForAnimation):
  53861. * page/animation/KeyframeAnimation.cpp:
  53862. (WebCore::KeyframeAnimation::getKeyframeAnimationInterval):
  53863. (WebCore::KeyframeAnimation::validateTransformFunctionList):
  53864. * rendering/RenderLayerBacking.cpp:
  53865. (WebCore::RenderLayerBacking::startAnimation):
  53866. * rendering/style/KeyframeList.h:
  53867. (WebCore::KeyframeList::at):
  53868. (WebCore::KeyframeList::keyframes):
  53869. 2010-08-28 Dan Bernstein <mitz@apple.com>
  53870. Reviewed by Simon Fraser.
  53871. Speculative fix for <rdar://problem/7275077> Crash in InlineBox::root() under RenderTextControl::textWithHardLineBreaks()
  53872. https://bugs.webkit.org/show_bug.cgi?id=44816
  53873. No test because I could not reproduce the crash.
  53874. In a common variant of the crash, InlineBox::root() is called with this == 12. This suggests that
  53875. a RenderInline* was cast into a RenderBox*, so RenderBox::inlineBoxWrapper() interpreted the
  53876. m_lineHeight and m_verticalPosition members of a RenderInline as a pointer to an InlineBox.
  53877. The cast into RenderBox* in textWithHardLineBreaks() was introduced in r40881 with no exaplanation.
  53878. * rendering/RenderTextControl.cpp:
  53879. (WebCore::RenderTextControl::textWithHardLineBreaks): Fetch the first line directly from the inner
  53880. text block instead of relying on the first child being a text node.
  53881. 2010-08-28 Moritz Lipp <mlq@pwmt.org>
  53882. Reviewed by Xan Lopez.
  53883. [GTK] Improper webkit_dom_document_evaluate implementation.
  53884. https://bugs.webkit.org/show_bug.cgi?id=42115
  53885. The generated webkit_dom_document_evaluate() function does not meet the
  53886. evaluate interface described in the W3 Documentation
  53887. http://www.w3.org/TR/DOM-Level-3-XPath/xpath.html#XPathEvaluator-evaluate
  53888. "If this is specified as nullor the implementation does not reuse the
  53889. specified result,...". The current implementation did not accept the
  53890. result parameter to be NULL.
  53891. * bindings/scripts/CodeGeneratorGObject.pm:
  53892. 2010-08-28 Adam Barth <abarth@webkit.org>
  53893. Reviewed by Eric Seidel.
  53894. HTMLTreeBuilder needs to call HTMLFormElement::setDemoted
  53895. https://bugs.webkit.org/show_bug.cgi?id=44781
  53896. This patch teaches the HTMLTreeBuilder about demoted form elements.
  53897. Demoting a form element magically stops the form element from
  53898. rendering. Demoted form elements are a concept from the
  53899. LegacyHTMLTreeBuilder, but they are somewhat of a hack because
  53900. rendering should be DOM-based. We'll likely look for a better solution
  53901. in a future patch.
  53902. * html/parser/HTMLConstructionSite.cpp:
  53903. (WebCore::HTMLConstructionSite::insertHTMLFormElement):
  53904. * html/parser/HTMLConstructionSite.h:
  53905. * html/parser/HTMLTreeBuilder.cpp:
  53906. (WebCore::HTMLTreeBuilder::processStartTagForInTable):
  53907. 2010-08-28 Chris Guillory <chris.guillory@google.com>
  53908. Reviewed by Chris Fleizach.
  53909. Add AX notification for childrenChanged
  53910. https://bugs.webkit.org/show_bug.cgi?id=44472
  53911. Test by running platform/chromium/accessibility/children-changed-notification.html within chromium's DRT
  53912. * accessibility/AXObjectCache.h:
  53913. (WebCore::AXObjectCache::):
  53914. * accessibility/AccessibilityRenderObject.cpp:
  53915. (WebCore::AccessibilityRenderObject::childrenChanged):
  53916. * accessibility/chromium/AXObjectCacheChromium.cpp:
  53917. (WebCore::AXObjectCache::postPlatformNotification):
  53918. * page/chromium/ChromeClientChromium.h:
  53919. 2010-08-28 Eric Uhrhane <ericu@chromium.org>
  53920. Reviewed by Darin Fisher.
  53921. Implement the DOM FileWriter class
  53922. https://bugs.webkit.org/show_bug.cgi?id=44362
  53923. No new tests until the delegate class has an implementation; bug logged.
  53924. Build file additions.
  53925. * GNUmakefile.am:
  53926. * WebCore.gypi:
  53927. * WebCore.pro:
  53928. * WebCore.vcproj/WebCore.vcproj:
  53929. * WebCore.xcodeproj/project.pbxproj:
  53930. The AsyncFileWriter is an abstract interface to which FileWriter delegates all the hard work.
  53931. * html/AsyncFileWriter.h: Added.
  53932. The FileWriterClient is the interface for communications back from the AsyncFileWriter [success/failure, progress events].
  53933. * html/FileWriterClient.h: Added.
  53934. (WebCore::FileWriterClient::~FileWriterClient):
  53935. Added all delegation, state tracking, and progress event processing.
  53936. * html/FileWriter.cpp:
  53937. (WebCore::FileWriter::FileWriter):
  53938. (WebCore::FileWriter::initialize):
  53939. (WebCore::FileWriter::~FileWriter):
  53940. ActiveDomObject stuff
  53941. (WebCore::FileWriter::hasPendingActivity):
  53942. (WebCore::FileWriter::stop):
  53943. (WebCore::FileWriter::write):
  53944. FileWriter public interface
  53945. (WebCore::FileWriter::seek):
  53946. (WebCore::FileWriter::truncate):
  53947. (WebCore::FileWriter::abort):
  53948. FileWriterClient interface
  53949. (WebCore::FileWriter::didWrite):
  53950. (WebCore::FileWriter::didTruncate):
  53951. (WebCore::FileWriter::didFail):
  53952. Progress events
  53953. (WebCore::FileWriter::fireEvent):
  53954. * html/FileWriter.h:
  53955. 2010-08-28 Marc-Antoine Ruel <maruel@chromium.org>
  53956. Reviewed by Dimitri Glazkov.
  53957. Preparatory patch to split libwebcore in multiple libraries.
  53958. Start with a webcore_prerequisites pseudo-target what will be the common
  53959. target for all the other ones.
  53960. * WebCore.gyp/WebCore.gyp:
  53961. 2010-08-28 Pratik Solanki <psolanki@apple.com>
  53962. Reviewed by Dan Bernstein.
  53963. Add an ENABLE define for purgeable memory support
  53964. https://bugs.webkit.org/show_bug.cgi?id=44777
  53965. * platform/PurgeableBuffer.h:
  53966. * platform/mac/PurgeableBufferMac.cpp:
  53967. 2010-08-28 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  53968. Reviewed by Kenneth Rohde Christiansen.
  53969. [EFL] Fix error message when theme loading fails
  53970. https://bugs.webkit.org/show_bug.cgi?id=44775
  53971. Parameters for logging were in the wrong order.
  53972. No new functionality so no new tests.
  53973. * platform/efl/ScrollbarEfl.cpp:
  53974. (ScrollbarEfl::setParent): exchange argument order in log function
  53975. call
  53976. 2010-08-27 Nikolas Zimmermann <nzimmermann@rim.com>
  53977. Reviewed by Dirk Schulze.
  53978. REGRESSION: some tests no longer painting
  53979. https://bugs.webkit.org/show_bug.cgi?id=44773
  53980. Fix regression from the RenderImageResource introduction, fast/canvas/canvas-as-image.html
  53981. and fast/canvas/canvas-as-image-incremental-repaint.html pixel tests did not work anymore.
  53982. * rendering/RenderImageResource.h:
  53983. (WebCore::RenderImageResource::hasImage): Make hasImage virtual.
  53984. * rendering/RenderImageResourceStyleImage.h:
  53985. (WebCore::RenderImageResourceStyleImage::hasImage): Always return true, just like RenderImageGeneratedContent did.
  53986. 2010-08-27 Kimmo Kinnunen <kimmo.t.kinnunen@nokia.com>
  53987. Reviewed by Kenneth Rohde Christiansen.
  53988. [Qt] Cache plugin info to a persistent database
  53989. https://bugs.webkit.org/show_bug.cgi?id=43179
  53990. Implement a cache of NPAPI plugin metadata. Write the metadata to aa
  53991. file that gets rewritten if any plugin is added / removed. Compilation
  53992. of the feature is controlled by #if ENABLE(NETSCAPE_PLUGIN_METADATA_CACHE)
  53993. Currently only enabled for Qt UNIX flavors.
  53994. * WebCore.pro: Enable NETSCAPE_PLUGIN_METADATA_CACHE for UNIX builds
  53995. * platform/qt/FileSystemQt.cpp:
  53996. (WebCore::openFile): Added.
  53997. (WebCore::readFromFile): Added.
  53998. * plugins/PluginDatabase.cpp:
  53999. (WebCore::persistentPluginMetadataCachePath): Static accessor for the path
  54000. (WebCore::PluginDatabase::PluginDatabase): Add instance variable.
  54001. (WebCore::PluginDatabase::refresh):
  54002. (WebCore::PluginDatabase::pluginForMIMEType): Ensure returned plugin is loaded.
  54003. (WebCore::PluginDatabase::MIMETypeForExtension): Ensure returned plugin is loaded.
  54004. (WebCore::PluginDatabase::clear):
  54005. (WebCore::fillBufferWithContentsOfFile): Static helper function.
  54006. (WebCore::readUTF8String): Static helper function.
  54007. (WebCore::readTime): Static helper function.
  54008. (WebCore::PluginDatabase::loadPersistentMetadataCache):
  54009. (WebCore::writeUTF8String): Static helper function.
  54010. (WebCore::writeTime): Static helper function.
  54011. (WebCore::PluginDatabase::updatePersistentMetadataCache): Added.
  54012. (WebCore::PluginDatabase::isPersistentMetadataCacheEnabled): Added.
  54013. (WebCore::PluginDatabase::setPersistentMetadataCacheEnabled):Added.
  54014. (WebCore::PluginDatabase::persistentMetadataCachePath): Added.
  54015. (WebCore::PluginDatabase::setPersistentMetadataCachePath): Added.
  54016. * plugins/PluginDatabase.h:
  54017. * plugins/PluginPackage.cpp:
  54018. (WebCore::PluginPackage::PluginPackage): Add instance variable.
  54019. (WebCore::PluginPackage::createPackageFromCache): Added.
  54020. (WebCore::PluginPackage::ensurePluginLoaded): Added.
  54021. * plugins/PluginPackage.h:
  54022. (WebCore::PluginPackage::fullMIMEDescription): Added.
  54023. * plugins/qt/PluginPackageQt.cpp:
  54024. (WebCore::PluginPackage::fetchInfo): Split mime parsing.
  54025. (WebCore::PluginPackage::setMIMEDescription): Added. Mime parsing.
  54026. 2010-08-27 Daniel Bates <dbates@rim.com>
  54027. Reviewed by Darin Adler.
  54028. Implement symbolic CSS3 list-style-types
  54029. https://bugs.webkit.org/show_bug.cgi?id=36734
  54030. Implements all of the symbolic CSS3 list-style-types as per
  54031. section 4.5 of the CSS3 Lists module <http://www.w3.org/TR/css3-lists/#symbolic>.
  54032. Test: fast/lists/w3-css3-list-styles-symbolic.html
  54033. * css/CSSPrimitiveValueMappings.h:
  54034. (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Added list style types Asterisks and Footnotes.
  54035. * css/CSSValueKeywords.in: Ditto.
  54036. * inspector/front-end/SourceCSSTokenizer.re2js: Ditto.
  54037. * rendering/RenderListMarker.cpp:
  54038. (WebCore::toAlphabeticOrNumeric): Changed type of parameter sequenceSize from int to unsigned.
  54039. (WebCore::toSymbolic): Added.
  54040. (WebCore::toAlphabetic): Changed type of parameter alphabetSize from int to unsigned.
  54041. (WebCore::toNumeric): Changed type of parameter numeralsSize from int to unsigned.
  54042. (WebCore::effectiveListMarkerType): Added.
  54043. (WebCore::listMarkerSuffix): Added list style types Asterisks and Footnotes.
  54044. (WebCore::listMarkerText): Ditto.
  54045. (WebCore::RenderListMarker::paint): Ditto.
  54046. (WebCore::RenderListMarker::calcPrefWidths): Ditto.
  54047. (WebCore::RenderListMarker::getRelativeMarkerRect): Ditto.
  54048. * rendering/style/RenderStyleConstants.h: Ditto.
  54049. (WebCore::):
  54050. 2010-08-27 Vincent Scheib <scheib@chromium.org>
  54051. Reviewed by Darin Fisher.
  54052. CanvasRenderingContext2D::willDraw changed to didDraw
  54053. Solves issue with canvas to canvas draw calls, and simplifies
  54054. mixed software and GPU acceleration of GraphicsContext implementations
  54055. which must track dirty rects for backing stores.
  54056. https://bugs.webkit.org/show_bug.cgi?id=44741
  54057. * html/HTMLCanvasElement.cpp:
  54058. (WebCore::HTMLCanvasElement::didDraw):
  54059. * html/HTMLCanvasElement.h:
  54060. * html/canvas/CanvasRenderingContext2D.cpp:
  54061. (WebCore::CanvasRenderingContext2D::fill):
  54062. (WebCore::CanvasRenderingContext2D::stroke):
  54063. (WebCore::CanvasRenderingContext2D::clearRect):
  54064. (WebCore::CanvasRenderingContext2D::fillRect):
  54065. (WebCore::CanvasRenderingContext2D::strokeRect):
  54066. (WebCore::CanvasRenderingContext2D::drawImage):
  54067. (WebCore::CanvasRenderingContext2D::drawImageFromRect):
  54068. (WebCore::CanvasRenderingContext2D::didDraw):
  54069. (WebCore::CanvasRenderingContext2D::putImageData):
  54070. (WebCore::CanvasRenderingContext2D::drawTextInternal):
  54071. * html/canvas/CanvasRenderingContext2D.h:
  54072. * html/canvas/WebGLRenderingContext.cpp:
  54073. (WebCore::WebGLRenderingContext::markContextChanged):
  54074. 2010-08-27 Daniel Cheng <dcheng@chromium.org>
  54075. Reviewed by Tony Chang.
  54076. [chromium] Add new WebClipboard method for setting generic data in copy/cut handlers.
  54077. https://bugs.webkit.org/show_bug.cgi?id=42121
  54078. No new tests.
  54079. * platform/chromium/ChromiumBridge.h:
  54080. 2010-08-27 Patrick Gansterer <paroga@paroga.com>
  54081. Reviewed by Adam Roben.
  54082. Remove unnecessary AlphaBlend in PasteboardWin.
  54083. https://bugs.webkit.org/show_bug.cgi?id=44720
  54084. Replacing AlphaBlend with BitBlt is safe because testing showed that alpha
  54085. never survives copy-and-paste on Windows in any browser, and StretchBlt
  54086. was a overkill since the source and destination size are always equal.
  54087. * platform/win/PasteboardWin.cpp:
  54088. (WebCore::Pasteboard::writeImage):
  54089. 2010-08-26 Zhenyao Mo <zmo@google.com>
  54090. Reviewed by Kenneth Russell.
  54091. Passing premultiplyAlpha=false to tex{Sub}Image2D loses information (skia)
  54092. https://bugs.webkit.org/show_bug.cgi?id=38282
  54093. * platform/graphics/skia/GraphicsContext3DSkia.cpp: Dealing with the case of texImage2D with HTMLCanvasElement input.
  54094. (WebCore::GraphicsContext3D::getImageData):
  54095. 2010-08-26 Vangelis Kokkevis <vangelis@chromium.org>
  54096. Reviewed by Darin Fisher.
  54097. [chromium] Working around compile issue in LayerRendererChromium.cpp
  54098. when DEBUG_GL_CALLS=1
  54099. https://bugs.webkit.org/show_bug.cgi?id=44739
  54100. No new functionality, no new tests.
  54101. * platform/graphics/chromium/LayerRendererChromium.cpp:
  54102. (WebCore::LayerRendererChromium::drawLayerIntoStencilBuffer):
  54103. 2010-08-27 Patrick Gansterer <paroga@paroga.com>
  54104. Reviewed by Adam Roben.
  54105. [WINCE] Port SoftLinking to WinCE
  54106. https://bugs.webkit.org/show_bug.cgi?id=44693
  54107. WinCE provides GetProcAddressW and GetProcAddressA for softlinking.
  54108. Unfortunately WinNT provides only GetProcAddress (without A or W).
  54109. Add a platform dependent macro for GetProcAddress.
  54110. * platform/win/SoftLinking.h:
  54111. 2010-08-27 Martin Robinson <mrobinson@igalia.com>
  54112. Reviewed by Xan Lopez.
  54113. [GTK] ScrollbarThemeGtk should account for the trough_under_steppers property
  54114. https://bugs.webkit.org/show_bug.cgi?id=44742
  54115. No new tests until this code is activated, at which point pixel tests will
  54116. test the scrollbar rendering.
  54117. * platform/gtk/ScrollbarThemeGtk.cpp:
  54118. (WebCore::ScrollbarThemeGtk::paintTrackBackground): Only inflate the track background
  54119. if the style specifies trough_under_steppers.
  54120. (WebCore::ScrollbarThemeGtk::paint): If the theme specifies trough_under_steppers,
  54121. a dirty stepper also triggers a repaint of the trough region.
  54122. 2010-08-27 Joseph Pecoraro <joepeck@webkit.org>
  54123. Reviewed by Alexey Proskuryakov.
  54124. Extra Events triggered by <input> on focus
  54125. https://bugs.webkit.org/show_bug.cgi?id=44731
  54126. Tests: fast/events/input-focus-no-duplicate-events.html
  54127. fast/events/input-tab-focus-no-duplicate-events.html
  54128. * dom/Element.cpp:
  54129. (WebCore::Element::focus): do not continue and update the appearance of the element if it was not focused.
  54130. * page/FocusController.cpp:
  54131. (WebCore::FocusController::setFocusedNode): respect the return value of Document::setFocusedNode.
  54132. 2010-08-26 Joseph Pecoraro <joepeck@webkit.org>
  54133. Reviewed by Pavel Feldman.
  54134. Web Inspector: attribute nodes don't get rendered in the console
  54135. https://bugs.webkit.org/show_bug.cgi?id=44736
  54136. Extended Test: inspector/console-format.html
  54137. * inspector/InspectorDOMAgent.cpp:
  54138. (WebCore::InspectorDOMAgent::buildObjectForNode): add "name" and "value" properties for Attribute nodes.
  54139. * inspector/front-end/DOMAgent.js:
  54140. (WebInspector.DOMNode): add "name" and "value" properties for Attribute nodes.
  54141. * inspector/front-end/ElementsTreeOutline.js: display html for Attribute nodes.
  54142. 2010-08-27 Adam Barth <abarth@webkit.org>
  54143. Rubber-stamped by Eric Seidel.
  54144. Finshing moving the HTML parser into WebCore/html/parser.
  54145. * Android.derived.mk:
  54146. * Android.mk:
  54147. * CMakeLists.txt:
  54148. * DerivedSources.make:
  54149. * GNUmakefile.am:
  54150. * WebCore.gyp/WebCore.gyp:
  54151. * WebCore.gypi:
  54152. * WebCore.pri:
  54153. * WebCore.pro:
  54154. * WebCore.vcproj/WebCore.vcproj:
  54155. * WebCore.xcodeproj/project.pbxproj:
  54156. * html/CSSPreloadScanner.cpp: Removed.
  54157. * html/CSSPreloadScanner.h: Removed.
  54158. * html/HTMLConstructionSite.cpp: Removed.
  54159. * html/HTMLConstructionSite.h: Removed.
  54160. * html/HTMLDocumentParser.cpp: Removed.
  54161. * html/HTMLDocumentParser.h: Removed.
  54162. * html/HTMLEntityNames.json: Removed.
  54163. * html/HTMLEntityParser.cpp: Removed.
  54164. * html/HTMLEntityParser.h: Removed.
  54165. * html/HTMLEntitySearch.cpp: Removed.
  54166. * html/HTMLEntitySearch.h: Removed.
  54167. * html/HTMLEntityTable.h: Removed.
  54168. * html/HTMLFormattingElementList.cpp: Removed.
  54169. * html/HTMLFormattingElementList.h: Removed.
  54170. * html/HTMLParserScheduler.cpp: Removed.
  54171. * html/HTMLParserScheduler.h: Removed.
  54172. * html/HTMLPreloadScanner.cpp: Removed.
  54173. * html/HTMLPreloadScanner.h: Removed.
  54174. * html/HTMLScriptRunner.cpp: Removed.
  54175. * html/HTMLScriptRunner.h: Removed.
  54176. * html/HTMLScriptRunnerHost.h: Removed.
  54177. * html/HTMLTokenizer.cpp: Removed.
  54178. * html/HTMLTokenizer.h: Removed.
  54179. * html/HTMLViewSourceParser.cpp: Removed.
  54180. * html/HTMLViewSourceParser.h: Removed.
  54181. * html/parser/CSSPreloadScanner.cpp: Copied from WebCore/html/CSSPreloadScanner.cpp.
  54182. * html/parser/CSSPreloadScanner.h: Copied from WebCore/html/CSSPreloadScanner.h.
  54183. * html/parser/HTMLConstructionSite.cpp: Copied from WebCore/html/HTMLConstructionSite.cpp.
  54184. * html/parser/HTMLConstructionSite.h: Copied from WebCore/html/HTMLConstructionSite.h.
  54185. * html/parser/HTMLDocumentParser.cpp: Copied from WebCore/html/HTMLDocumentParser.cpp.
  54186. * html/parser/HTMLDocumentParser.h: Copied from WebCore/html/HTMLDocumentParser.h.
  54187. * html/parser/HTMLEntityNames.json: Copied from WebCore/html/HTMLEntityNames.json.
  54188. * html/parser/HTMLEntityParser.cpp: Copied from WebCore/html/HTMLEntityParser.cpp.
  54189. * html/parser/HTMLEntityParser.h: Copied from WebCore/html/HTMLEntityParser.h.
  54190. * html/parser/HTMLEntitySearch.cpp: Copied from WebCore/html/HTMLEntitySearch.cpp.
  54191. * html/parser/HTMLEntitySearch.h: Copied from WebCore/html/HTMLEntitySearch.h.
  54192. * html/parser/HTMLEntityTable.h: Copied from WebCore/html/HTMLEntityTable.h.
  54193. * html/parser/HTMLFormattingElementList.cpp: Copied from WebCore/html/HTMLFormattingElementList.cpp.
  54194. * html/parser/HTMLFormattingElementList.h: Copied from WebCore/html/HTMLFormattingElementList.h.
  54195. * html/parser/HTMLParserScheduler.cpp: Copied from WebCore/html/HTMLParserScheduler.cpp.
  54196. * html/parser/HTMLParserScheduler.h: Copied from WebCore/html/HTMLParserScheduler.h.
  54197. * html/parser/HTMLPreloadScanner.cpp: Copied from WebCore/html/HTMLPreloadScanner.cpp.
  54198. * html/parser/HTMLPreloadScanner.h: Copied from WebCore/html/HTMLPreloadScanner.h.
  54199. * html/parser/HTMLScriptRunner.cpp: Copied from WebCore/html/HTMLScriptRunner.cpp.
  54200. * html/parser/HTMLScriptRunner.h: Copied from WebCore/html/HTMLScriptRunner.h.
  54201. * html/parser/HTMLScriptRunnerHost.h: Copied from WebCore/html/HTMLScriptRunnerHost.h.
  54202. * html/parser/HTMLTokenizer.cpp: Copied from WebCore/html/HTMLTokenizer.cpp.
  54203. * html/parser/HTMLTokenizer.h: Copied from WebCore/html/HTMLTokenizer.h.
  54204. * html/parser/HTMLViewSourceParser.cpp: Copied from WebCore/html/HTMLViewSourceParser.cpp.
  54205. * html/parser/HTMLViewSourceParser.h: Copied from WebCore/html/HTMLViewSourceParser.h.
  54206. 2010-08-27 Simon Fraser <simon.fraser@apple.com>
  54207. Reviewed by Tony Chang.
  54208. Insertion point does not show when dragging text into an editable area
  54209. https://bugs.webkit.org/show_bug.cgi?id=44295
  54210. r65681 caused the caret to use the last-computed caret rect when
  54211. painting, rather than forcing a style update. Because of this,
  54212. we now need to eagerly update the caret rect when changing
  54213. the drag selection.
  54214. Not testable in DRT because the drag selection is always cleared
  54215. before EventSender returns, so the drag caret can never show in
  54216. the pixel results.
  54217. Tested by running editing/selection/drag-in-iframe.html manually.
  54218. * editing/SelectionController.cpp:
  54219. (WebCore::SelectionController::setSelection):
  54220. 2010-08-27 Adam Barth <abarth@webkit.org>
  54221. Attempt to fix the Windows build.
  54222. * WebCore.vcproj/WebCoreCommon.vsprops:
  54223. 2010-08-27 Adam Barth <abarth@webkit.org>
  54224. Attempt to fix the Qt build.
  54225. * WebCore.pro:
  54226. 2010-08-27 Adam Barth <abarth@webkit.org>
  54227. Rubber-stamped by Eric Seidel.
  54228. Move HTMLTreeBuilder and HTMLElementStack to WebCore/html/parser.
  54229. * Android.mk:
  54230. * CMakeLists.txt:
  54231. * GNUmakefile.am:
  54232. * WebCore.gypi:
  54233. * WebCore.pro:
  54234. * WebCore.vcproj/WebCore.vcproj:
  54235. * WebCore.xcodeproj/project.pbxproj:
  54236. * html/HTMLElementStack.cpp: Removed.
  54237. * html/HTMLElementStack.h: Removed.
  54238. * html/HTMLTreeBuilder.cpp: Removed.
  54239. * html/HTMLTreeBuilder.h: Removed.
  54240. * html/parser/HTMLElementStack.cpp: Copied from WebCore/html/HTMLElementStack.cpp.
  54241. * html/parser/HTMLElementStack.h: Copied from WebCore/html/HTMLElementStack.h.
  54242. * html/parser/HTMLTreeBuilder.cpp: Copied from WebCore/html/HTMLTreeBuilder.cpp.
  54243. * html/parser/HTMLTreeBuilder.h: Copied from WebCore/html/HTMLTreeBuilder.h.
  54244. 2010-08-27 Adam Barth <abarth@webkit.org>
  54245. Reviewed by Darin Adler.
  54246. Create WebCore/html/parser
  54247. https://bugs.webkit.org/show_bug.cgi?id=44792
  54248. This patch begins the process of moving the HTML parser code to the
  54249. WebCore/html/parser directory. This patch moves a single header file.
  54250. More files will follow in future patches.
  54251. * CMakeLists.txt:
  54252. * GNUmakefile.am:
  54253. * WebCore.gyp/WebCore.gyp:
  54254. * WebCore.gypi:
  54255. * WebCore.pro:
  54256. * WebCore.vcproj/WebCore.vcproj:
  54257. * WebCore.vcproj/WebCoreCommon.vsprops:
  54258. * WebCore.xcodeproj/project.pbxproj:
  54259. * html/parser/HTMLToken.h: Renamed from WebCore/html/HTMLToken.h.
  54260. 2010-08-27 Chris Marrin <cmarrin@apple.com>
  54261. Reviewed by Simon Fraser.
  54262. https://bugs.webkit.org/show_bug.cgi?id=42862
  54263. WebGL in CSS Canvas crashes
  54264. This fixes the crash, which was a simple null pointer deref. But this
  54265. revealed that -webkit-canvas no longer works for WebGL. I believe this
  54266. is due to the recent ImageBuffer optimizations done by Dave Hyatt
  54267. (https://bugs.webkit.org/show_bug.cgi?id=43507). This changed ImageBuffer
  54268. from always keeping a copy of the pixels to doing a copy to get them
  54269. when needed. Since We need to get pixels out of the WebGL drawing buffer
  54270. to use them as a CSS background, I had to change when I return those
  54271. pixels to the ImageBuffer.
  54272. Tests: fast/canvas/webgl/css-webkit-canvas-repaint.html
  54273. fast/canvas/webgl/css-webkit-canvas.html
  54274. * html/HTMLCanvasElement.cpp:
  54275. (WebCore::HTMLCanvasElement::copiedImage): Add logic to get image from WebGL so it works with new ImageBuffer logic (see above)
  54276. * html/canvas/WebGLRenderingContext.cpp:
  54277. (WebCore::WebGLRenderingContext::create): Fixed null pointer deref
  54278. 2010-08-27 James Robinson <jamesr@chromium.org>
  54279. Reviewed by Dimitri Glazkov.
  54280. Move Shader class from platform/graphics/chromium to platform/graphics/gpu
  54281. https://bugs.webkit.org/show_bug.cgi?id=44793
  54282. The Shader class and its subclasses are not chromium-specific. This moves
  54283. them to a common location so they can be re-used on all platforms. Also
  54284. moves the Shader subclasses into their own .h/.cpp files.
  54285. Refactor, no new tests.
  54286. * WebCore.gypi:
  54287. * platform/graphics/chromium/GLES2Canvas.cpp:
  54288. * platform/graphics/chromium/Shader.cpp: Removed.
  54289. * platform/graphics/chromium/Shader.h: Removed.
  54290. * platform/graphics/gpu/Shader.cpp: Added.
  54291. (WebCore::Shader::affineTo3x3):
  54292. (WebCore::Shader::loadShader):
  54293. (WebCore::Shader::loadProgram):
  54294. (WebCore::Shader::Shader):
  54295. (WebCore::Shader::~Shader):
  54296. * platform/graphics/gpu/Shader.h: Added.
  54297. * platform/graphics/gpu/SolidFillShader.cpp: Added.
  54298. (WebCore::SolidFillShader::SolidFillShader):
  54299. (WebCore::SolidFillShader::create):
  54300. (WebCore::SolidFillShader::use):
  54301. * platform/graphics/gpu/SolidFillShader.h: Added.
  54302. * platform/graphics/gpu/TexShader.cpp: Added.
  54303. (WebCore::TexShader::TexShader):
  54304. (WebCore::TexShader::create):
  54305. (WebCore::TexShader::use):
  54306. * platform/graphics/gpu/TexShader.h: Added.
  54307. 2010-08-27 Kinuko Yasuda <kinuko@chromium.org>
  54308. Reviewed by Darin Fisher.
  54309. Add AsyncFileSystem interface for platform-dependent FileSystem API implementation
  54310. https://bugs.webkit.org/show_bug.cgi?id=44433
  54311. No new tests; tests will be added later.
  54312. * CMakeLists.txt:
  54313. * WebCore.gypi:
  54314. * WebCore.pro:
  54315. * WebCore.vcproj/WebCore.vcproj:
  54316. * WebCore.xcodeproj/project.pbxproj:
  54317. * platform/AsyncFileSystem.cpp: Added.
  54318. * platform/AsyncFileSystem.h: Added.
  54319. * platform/AsyncFileSystemCallbacks.h: Added.
  54320. * storage/DOMFileSystem.cpp:
  54321. (WebCore::DOMFileSystem::DOMFileSystem):
  54322. (WebCore::DOMFileSystem::~DOMFileSystem):
  54323. (WebCore::DOMFileSystem::stop):
  54324. (WebCore::DOMFileSystem::hasPendingActivity):
  54325. (WebCore::DOMFileSystem::contextDestroyed):
  54326. * storage/DOMFileSystem.h:
  54327. (WebCore::DOMFileSystem::create):
  54328. * storage/FileSystemCallbacks.cpp:
  54329. (WebCore::FileSystemCallbacksBase::didFail):
  54330. (WebCore::FileSystemCallbacks::FileSystemCallbacks):
  54331. (WebCore::FileSystemCallbacks::didOpenFileSystem):
  54332. * storage/FileSystemCallbacks.h:
  54333. * storage/LocalFileSystem.cpp: Added.
  54334. * storage/LocalFileSystem.h: Added.
  54335. * storage/Flags.h: Nits fix.
  54336. 2010-07-27 Jer Noble <jer.noble@apple.com>
  54337. Reviewed by Eric Carlson.
  54338. Add JavaScript API to allow a page to go fullscreen.
  54339. rdar://problem/6867795
  54340. https://bugs.webkit.org/show_bug.cgi?id=43099
  54341. Mozilla has proposed a new set of JavaScript APIs which allow any element in
  54342. a document to go full-screen. The current revision of their proposal can be
  54343. found here:
  54344. <https://wiki.mozilla.org/index.php?title=Gecko:FullScreenAPI&oldid=243429>
  54345. The proposed specification includes the following:
  54346. Document:
  54347. - Three new methods on Document:
  54348. + void requestFullScreen()
  54349. + void requestFullScreenWithKeys()
  54350. + void cancelFullScreen()
  54351. - Three new attributes of Document:
  54352. + readonly attribute boolean fullScreen
  54353. + readonly attribute boolean fullScreenWithKeys
  54354. + (optional) readonly attribute Element currentFullScreenElement
  54355. Element:
  54356. - Two new methods on Element:
  54357. + void requestFullScreen()
  54358. + void requestFullScreenWithKeys()
  54359. Events:
  54360. - One new event:
  54361. + fullScreenChange
  54362. CSS Pseudo-classes:
  54363. - Three new Pseudo-classes:
  54364. + :full-screen
  54365. + :full-screen-doc
  54366. + :full-screen-root-with-target
  54367. For WebKit's initial implementation, all the above new APIs will be prefixed with
  54368. "webkit" or "-webkit" where appropriate.
  54369. New tests:
  54370. LayoutTests/fullscreen/full-screen-api.html
  54371. LayoutTests/fullscreen/full-screen-css.html
  54372. LayoutTests/fullscreen/full-screen-request.html
  54373. Project file changes:
  54374. * Configurations/FeatureDefines.xcconfig: Added an ENABLE_FULLSCREEN_API entry.
  54375. * DerivedSources.make: Added rules for fullscreen.css and WebCore.FullScreen.exp.
  54376. * WebCore.FullScreen.exp: Added export symbols for Document and Element functions.
  54377. * WebCore.xcodeproj/project.pbxproj: New source files added to the project.
  54378. IDL changes:
  54379. * dom/Document.idl: Added the new full-screen API to the Document's javascript interface.
  54380. * dom/Element.idl: Added the new full-screen API to the Element's javascript interface.
  54381. Source changes:
  54382. * bindings/objc/PublicDOMInterfaces.h: Exposed Document and Element fullscreen functions in the DOM classes.
  54383. * css/CSSSelector.cpp: Added new FullScreen pseudo-classes.
  54384. * css/CSSSelector.h: Added new full-screen pseudo classes to the PseudoType enum.
  54385. * css/CSSStyleSelector.cpp:
  54386. (WebCore::loadFullDefaultStyle): Pull the fullscreen.css sheet into the defaultStyle and the defaultQuirksStyle sheets.
  54387. (WebCore::loadSimpleDefaultStyle): Pull the fullscreen.css sheet into the defaultStyle sheet.
  54388. (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Check for the new FullScreen pseudo classes.
  54389. * dom/Document.cpp:
  54390. (WebCore::Document::createEvent): Support creating a "WebKitFullScreenChange" event.
  54391. (WebCore::Document::addListenerTypeIfNeeded): Support listening for a "webKitFullScreenChangeEvent"
  54392. (WebCore::Document::webkitRequestFullScreenForElement): Passes request to the chrome client to enter full screen mode.
  54393. (WebCore::Document::webkitCancelFullScreen): Passes request to the chrome client to exit full screen mode.
  54394. (WebCore::Document::webkitWillEnterFullScreenForElement): Sets the FullScreen pseudo-classes on the full-screen element and its document.
  54395. (WebCore::Document::webkitDidEnterFullScreenForElement): Currently a no-op.
  54396. (WebCore::Document::webkitWillExitFullScreenForElement): Currently a no-op.
  54397. (WebCore::Document::webkitDidExitFullScreenForElement): Clears the FullScreen pseudo-classes on the full-screen element and its document.
  54398. * dom/Document.h: Added const accessors for new full-screen instance variables.
  54399. (WebCore::Document::):
  54400. (WebCore::Document::webkitIsFullScreen): Accessor for m_isFullScreen.
  54401. (WebCore::Document::webkitIsFullScreenWithKeysEnabled): Accessor for m_isFullScren and m_areKeysEnabled.
  54402. (WebCore::Document::webkitCurrentFullScreenElement): Accessor for m_fullScreenElement.
  54403. * dom/Element.cpp:
  54404. (WebCore::Element::webkitRequestFullScreen): Calls Document::webkitRequestFullScreenForElement.
  54405. * dom/Element.h:
  54406. * dom/EventNames.h: Add a webkitfullscreenchange event name.
  54407. * html/HTMLElement.cpp:
  54408. (WebCore::HTMLElement::parseMappedAttribute): Parse the new "onwebkitfullscreenchange" attribute and register a listener.
  54409. * page/ChromeClient.h:
  54410. (WebCore::ChromeClient::supportsFullscreenForElement): Pass through to the current UI delegate.
  54411. (WebCore::ChromeClient::enterFullscreenForElement): Create a WebKitFullScreenListener and pass through to the current UI delegate.
  54412. (WebCore::ChromeClient::exitFullscreenForElement): Create a WebKitFullScreenListener and pass through to the current UI delegate.
  54413. * page/Settings.cpp:
  54414. (WebCore::Settings::Settings):
  54415. * page/Settings.h: Add a new setting to control runtime support for full screen mode (defaults to off)
  54416. * rendering/MediaControlElements.cpp:
  54417. (WebCore::MediaControlFullscreenButtonElement::defaultEventHandler): The full screen button now toggles full screen mode (previously, it only entered).
  54418. * rendering/style/RenderStyleConstants.h: Added new style constants.
  54419. 2010-08-27 James Robinson <jamesr@chromium.org>
  54420. Reviewed by Darin Fisher.
  54421. Move Texture class from p/g/chromium to p/g/gpu
  54422. https://bugs.webkit.org/show_bug.cgi?id=44783
  54423. This class and its support were developed in platform/graphics/chromium but are not chromium-specific
  54424. in any way. This patch moves them to a common location so they can be shared by all platforms.
  54425. Pure refactor, so no new tests.
  54426. * WebCore.gyp/WebCore.gyp:
  54427. * WebCore.gypi:
  54428. * platform/graphics/chromium/GLES2Canvas.cpp:
  54429. (WebCore::GLES2Canvas::drawTexturedRect):
  54430. (WebCore::GLES2Canvas::drawTexturedRectTile):
  54431. (WebCore::GLES2Canvas::createTexture):
  54432. (WebCore::GLES2Canvas::getTexture):
  54433. * platform/graphics/chromium/GLES2Canvas.h:
  54434. * platform/graphics/chromium/GLES2Texture.cpp: Removed.
  54435. * platform/graphics/chromium/GLES2Texture.h: Removed.
  54436. * platform/graphics/gpu/Texture.cpp: Added.
  54437. (WebCore::Texture::Texture):
  54438. (WebCore::Texture::~Texture):
  54439. (WebCore::convertFormat):
  54440. (WebCore::Texture::create):
  54441. (WebCore::copySubRect):
  54442. (WebCore::Texture::load):
  54443. (WebCore::Texture::bindTile):
  54444. * platform/graphics/gpu/Texture.h: Added.
  54445. (WebCore::Texture::):
  54446. (WebCore::Texture::format):
  54447. (WebCore::Texture::tiles):
  54448. * platform/graphics/gpu/TilingData.cpp: Renamed from WebCore/platform/graphics/chromium/TilingData.cpp.
  54449. (WebCore::computeNumTiles):
  54450. (WebCore::TilingData::TilingData):
  54451. (WebCore::TilingData::tileXIndexFromSrcCoord):
  54452. (WebCore::TilingData::tileYIndexFromSrcCoord):
  54453. (WebCore::TilingData::tileBounds):
  54454. (WebCore::TilingData::tileBoundsWithBorder):
  54455. (WebCore::TilingData::tileBoundsNormalized):
  54456. (WebCore::TilingData::tilePositionX):
  54457. (WebCore::TilingData::tilePositionY):
  54458. (WebCore::TilingData::tileSizeX):
  54459. (WebCore::TilingData::tileSizeY):
  54460. (WebCore::TilingData::overlappedTileIndices):
  54461. (WebCore::TilingData::intersectDrawQuad):
  54462. * platform/graphics/gpu/TilingData.h: Renamed from WebCore/platform/graphics/chromium/TilingData.h.
  54463. (WebCore::TilingData::maxTextureSize):
  54464. (WebCore::TilingData::totalSizeX):
  54465. (WebCore::TilingData::totalSizeY):
  54466. (WebCore::TilingData::numTiles):
  54467. (WebCore::TilingData::numTilesX):
  54468. (WebCore::TilingData::numTilesY):
  54469. (WebCore::TilingData::tileIndex):
  54470. (WebCore::TilingData::tileXIndex):
  54471. (WebCore::TilingData::tileYIndex):
  54472. (WebCore::TilingData::TilingData):
  54473. (WebCore::TilingData::assertTile):
  54474. * platform/graphics/skia/ImageSkia.cpp:
  54475. (WebCore::drawBitmapGLES2):
  54476. * platform/graphics/skia/PlatformContextSkia.cpp:
  54477. (WebCore::PlatformContextSkia::uploadSoftwareToHardware):
  54478. * platform/graphics/skia/PlatformContextSkia.h:
  54479. 2010-08-27 David Hyatt <hyatt@apple.com>
  54480. Reviewed by Simon Fraser.
  54481. https://bugs.webkit.org/show_bug.cgi?id=44788, implement HTML5-compliant doctype switching.
  54482. Rename the various modes to match the HTML5 specification:
  54483. ParseMode -> CompatibilityMode
  54484. CompatMode -> QuirksMode
  54485. AlmostStrictMode -> LimitedQuirksMode
  54486. StrictMode -> NoQuirksMode
  54487. Remove the htmlHacks() accessor from RenderStyle and make rendering code just go to the document
  54488. instead. This makes switching modes avoid forcing all RenderStyles to detect as changed.
  54489. Clean up user stylesheets to minimize style recalculation when the mode is switched.
  54490. Fix bugs with the propagation of correct modes in the HTML5 parser. Make sure the
  54491. dummy document created for fragment parsing properly inherits the real document's CompatibilityMode.
  54492. Make sure the tree builder properly changes the insertion mode to "BeforeHTML" after handling
  54493. a doctype token.
  54494. determineParseMode -> setCompatibilityModeFromDoctype, and it now implements the HTML5 algorithm
  54495. precisely.
  54496. * WebCore.exp.in:
  54497. * css/CSSStyleSelector.cpp:
  54498. (WebCore::CSSStyleSelector::styleForDocument):
  54499. (WebCore::CSSStyleSelector::applyProperty):
  54500. (WebCore::CSSStyleSelector::fontSizeForKeyword):
  54501. * dom/ClassNodeList.cpp:
  54502. (WebCore::ClassNodeList::ClassNodeList):
  54503. * dom/DecodedDataDocumentParser.cpp:
  54504. (WebCore::DecodedDataDocumentParser::appendBytes):
  54505. * dom/Document.cpp:
  54506. (WebCore::Document::Document):
  54507. (WebCore::Document::setCompatibilityMode):
  54508. (WebCore::Document::setDocType):
  54509. (WebCore::Document::unscheduleStyleRecalc):
  54510. (WebCore::Document::recalcStyle):
  54511. (WebCore::Document::updateStyleIfNeeded):
  54512. (WebCore::Document::createStyleSelector):
  54513. (WebCore::Document::implicitOpen):
  54514. (WebCore::Document::pageUserSheet):
  54515. (WebCore::Document::clearPageUserSheet):
  54516. (WebCore::Document::updatePageUserSheet):
  54517. (WebCore::Document::pageGroupUserSheets):
  54518. (WebCore::Document::clearPageGroupUserSheets):
  54519. (WebCore::Document::updatePageGroupUserSheets):
  54520. (WebCore::Document::findAnchor):
  54521. * dom/Document.h:
  54522. (WebCore::Document::):
  54523. (WebCore::Document::setCompatibilityModeFromDoctype):
  54524. (WebCore::Document::lockCompatibilityMode):
  54525. (WebCore::Document::compatibilityMode):
  54526. (WebCore::Document::inQuirksMode):
  54527. (WebCore::Document::inLimitedQuirksMode):
  54528. (WebCore::Document::inNoQuirksMode):
  54529. * dom/Element.cpp:
  54530. (WebCore::Element::clientWidth):
  54531. (WebCore::Element::clientHeight):
  54532. (WebCore::Element::webkitMatchesSelector):
  54533. * dom/NamedNodeMap.cpp:
  54534. (WebCore::NamedNodeMap::setClass):
  54535. * dom/Node.cpp:
  54536. (WebCore::Node::querySelector):
  54537. (WebCore::Node::querySelectorAll):
  54538. * dom/OptionElement.cpp:
  54539. (WebCore::OptionElement::collectOptionLabelOrText):
  54540. * dom/SelectorNodeList.cpp:
  54541. (WebCore::createSelectorNodeList):
  54542. * dom/StyleElement.cpp:
  54543. (WebCore::StyleElement::createSheet):
  54544. * dom/StyledElement.cpp:
  54545. (WebCore::StyledElement::createInlineStyleDecl):
  54546. (WebCore::StyledElement::parseMappedAttribute):
  54547. * editing/ReplaceSelectionCommand.cpp:
  54548. (WebCore::ReplaceSelectionCommand::shouldRemoveEndBR):
  54549. * html/HTMLBodyElement.cpp:
  54550. (WebCore::HTMLBodyElement::createLinkDecl):
  54551. * html/HTMLCanvasElement.cpp:
  54552. (WebCore::HTMLCanvasElement::getContext):
  54553. * html/HTMLConstructionSite.cpp:
  54554. (WebCore::HTMLConstructionSite::insertDoctype):
  54555. * html/HTMLDocument.cpp:
  54556. (WebCore::HTMLDocument::HTMLDocument):
  54557. (WebCore::HTMLDocument::compatMode):
  54558. (WebCore::HTMLDocument::setCompatibilityModeFromDoctype):
  54559. * html/HTMLDocument.h:
  54560. * html/HTMLLinkElement.cpp:
  54561. (WebCore::HTMLLinkElement::setCSSStyleSheet):
  54562. * html/HTMLTreeBuilder.cpp:
  54563. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  54564. (WebCore::HTMLTreeBuilder::FragmentParsingContext::FragmentParsingContext):
  54565. (WebCore::HTMLTreeBuilder::processDoctypeToken):
  54566. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  54567. (WebCore::HTMLTreeBuilder::defaultForInitial):
  54568. * html/HTMLViewSourceDocument.cpp:
  54569. (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument):
  54570. * loader/DocumentWriter.cpp:
  54571. (WebCore::DocumentWriter::replaceDocument):
  54572. (WebCore::DocumentWriter::reportDataReceived):
  54573. * loader/DocumentWriter.h:
  54574. * loader/ImageDocument.cpp:
  54575. (WebCore::ImageDocument::ImageDocument):
  54576. * loader/MediaDocument.cpp:
  54577. (WebCore::MediaDocument::MediaDocument):
  54578. * loader/PluginDocument.cpp:
  54579. (WebCore::PluginDocument::PluginDocument):
  54580. * loader/SinkDocument.cpp:
  54581. (WebCore::SinkDocument::SinkDocument):
  54582. * loader/TextDocument.cpp:
  54583. (WebCore::TextDocument::TextDocument):
  54584. * page/Page.cpp:
  54585. (WebCore::Page::userStyleSheetLocationChanged):
  54586. * page/PageGroup.cpp:
  54587. (WebCore::PageGroup::resetUserStyleCacheInAllFrames):
  54588. * page/Settings.cpp:
  54589. (WebCore::Settings::Settings):
  54590. (WebCore::Settings::setEnforceCSSMIMETypeInNoQuirksMode):
  54591. * page/Settings.h:
  54592. (WebCore::Settings::enforceCSSMIMETypeInNoQuirksMode):
  54593. * rendering/AutoTableLayout.cpp:
  54594. (WebCore::AutoTableLayout::recalcColumn):
  54595. * rendering/FixedTableLayout.cpp:
  54596. (WebCore::FixedTableLayout::calcPrefWidths):
  54597. * rendering/InlineFlowBox.cpp:
  54598. (WebCore::InlineFlowBox::paintBoxDecorations):
  54599. (WebCore::InlineFlowBox::paintMask):
  54600. (WebCore::InlineFlowBox::paintTextDecorations):
  54601. * rendering/InlineTextBox.cpp:
  54602. (WebCore::InlineTextBox::paint):
  54603. * rendering/RenderBlock.cpp:
  54604. (WebCore::RenderBlock::isSelfCollapsingBlock):
  54605. (WebCore::RenderBlock::collapseMargins):
  54606. (WebCore::RenderBlock::handleBottomOfBlock):
  54607. (WebCore::RenderBlock::calcInlinePrefWidths):
  54608. (WebCore::RenderBlock::calcBlockPrefWidths):
  54609. * rendering/RenderBlockLineLayout.cpp:
  54610. (WebCore::createInlineBoxForRenderer):
  54611. (WebCore::RenderBlock::findNextLineBreak):
  54612. * rendering/RenderBox.cpp:
  54613. (WebCore::RenderBox::calcPercentageHeight):
  54614. (WebCore::RenderBox::calcAbsoluteHorizontal):
  54615. (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
  54616. * rendering/RenderBox.h:
  54617. (WebCore::RenderBox::stretchesToViewHeight):
  54618. * rendering/RenderListItem.cpp:
  54619. (WebCore::getParentOfFirstLineBox):
  54620. * rendering/RenderTable.cpp:
  54621. (WebCore::RenderTable::layout):
  54622. * rendering/RenderTableSection.cpp:
  54623. (WebCore::RenderTableSection::calcRowHeight):
  54624. * rendering/RootInlineBox.cpp:
  54625. (WebCore::RootInlineBox::verticallyAlignBoxes):
  54626. * rendering/style/RenderStyle.cpp:
  54627. (WebCore::RenderStyle::diff):
  54628. * rendering/style/RenderStyle.h:
  54629. (WebCore::):
  54630. (WebCore::InheritedFlags::setBitDefaults):
  54631. 2010-08-27 Gavin Barraclough <barraclough@apple.com>
  54632. Reviewed by Oliver Hunt.
  54633. Bug 44745 - Number.toFixed/toExponential/toPrecision are inaccurate.
  54634. These methods should be using a version of dtoa that can generate results accurate
  54635. to the requested precision, whereas our version of dtoa is only currently able to
  54636. support producing results sufficiently accurate to distinguish the value from any
  54637. other IEEE-754 double precision number.
  54638. * html/HTMLTreeBuilder.cpp:
  54639. (WebCore::serializeForNumberType):
  54640. doubleToStringInJavaScriptFormat renamed to numberToString.
  54641. 2010-08-27 Michael Nordman <michaeln@google.com>
  54642. Reviewed by David Levin.
  54643. https://bugs.webkit.org/show_bug.cgi?id=44133
  54644. IDL bindings for XmlHttpRequest.responseBlob support, doesn't do anything yet.
  54645. Adds two new attributes, asBlob and responseBlob.
  54646. Runtime disabled by default, also behind a new ENABLE_XHR_RESPONSE_BLOB compile time guard.
  54647. No new tests, just adding some stubs.
  54648. * bindings/generic/RuntimeEnabledFeatures.cpp:
  54649. * bindings/generic/RuntimeEnabledFeatures.h:
  54650. (WebCore::RuntimeEnabledFeatures::setResponseBlobEnabled):
  54651. (WebCore::RuntimeEnabledFeatures::responseBlobEnabled):
  54652. (WebCore::RuntimeEnabledFeatures::asBlobEnabled):
  54653. * bindings/js/JSXMLHttpRequestCustom.cpp:
  54654. (WebCore::JSXMLHttpRequest::responseText): Changed to allow an exceptional return path.
  54655. * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
  54656. (WebCore::V8XMLHttpRequest::responseTextAccessorGetter): Changed to allow an exceptional return path.
  54657. * xml/XMLHttpRequest.cpp:
  54658. (WebCore::XMLHttpRequest::responseText): Changed to raise an exception when accessed with asBlob set to true.
  54659. (WebCore::XMLHttpRequest::responseXML): Changed to raise an exception when accessed with asBlob set to true.
  54660. (WebCore::XMLHttpRequest::responseBlob): Added stub method, returns 0 for now.
  54661. (WebCore::XMLHttpRequest::setAsBlob): Sets the asBlob attribute, raises exception if called at an inappropriate time.
  54662. (WebCore::XMLHttpRequest::open): Resets asBlob to false, the default value.
  54663. (WebCore::XMLHttpRequest::abort): Clears m_responseBlob.
  54664. (WebCore::XMLHttpRequest::clearResponse): Clears m_responseBlob.
  54665. (WebCore::XMLHttpRequest::didFinishLoading): Added a FIXME to populate m_responseBlob.
  54666. * xml/XMLHttpRequest.h:
  54667. (WebCore::XMLHttpRequest::asBlob):
  54668. * xml/XMLHttpRequest.idl:
  54669. 2010-08-27 Simon Fraser <simon.fraser@apple.com>
  54670. Reviewed by Tony Chang.
  54671. Crash in CSSStyleSelector.cpp
  54672. https://bugs.webkit.org/show_bug.cgi?id=44780
  54673. Need to null-check the images when replacing pending images, because a later
  54674. rule may have replaced an image with 'none'.
  54675. Test: fast/css/pending-images-crash.html
  54676. * css/CSSStyleSelector.cpp:
  54677. (WebCore::CSSStyleSelector::loadPendingImages):
  54678. * page/FrameView.cpp:
  54679. (WebCore::FrameView::paintContents): Fix unrelated log message.
  54680. 2010-08-27 Andrey Kosyakov <caseq@chromium.org>
  54681. Unreviewed. Revert r66218 & r66220 due to GTK test failures.
  54682. * WebCore.gypi:
  54683. * WebCore.vcproj/WebCore.vcproj:
  54684. * inspector/front-end/AuditLauncherView.js:
  54685. (WebInspector.AuditLauncherView.categorySortFunction):
  54686. (WebInspector.AuditLauncherView):
  54687. (WebInspector.AuditLauncherView.prototype._launchButtonClicked):
  54688. (WebInspector.AuditLauncherView.prototype._selectAllClicked):
  54689. (WebInspector.AuditLauncherView.prototype._categoryClicked):
  54690. (WebInspector.AuditLauncherView.prototype._createCategoryElement):
  54691. (WebInspector.AuditLauncherView.prototype._createLauncherUI):
  54692. * inspector/front-end/AuditResultView.js:
  54693. (WebInspector.AuditCategoryResultPane.prototype._appendResult):
  54694. * inspector/front-end/AuditsPanel.js:
  54695. (WebInspector.AuditsPanel):
  54696. (WebInspector.AuditsPanel.prototype._executeAudit):
  54697. (WebInspector.AuditCategory.prototype.runRules):
  54698. * inspector/front-end/ExtensionAPI.js:
  54699. (injectedExtensionAPI):
  54700. (injectedExtensionAPI.EventSinkImpl.prototype.addListener):
  54701. (injectedExtensionAPI.EventSinkImpl.prototype._fire):
  54702. (injectedExtensionAPI.EventSink):
  54703. (injectedExtensionAPI.InspectorExtensionAPI):
  54704. (injectedExtensionAPI.Panels.prototype.create):
  54705. * inspector/front-end/ExtensionServer.js:
  54706. (WebInspector.ExtensionServer):
  54707. (WebInspector.ExtensionServer.prototype._postNotification):
  54708. (WebInspector.ExtensionServer.prototype._addExtensions):
  54709. (WebInspector.ExtensionStatus):
  54710. * inspector/front-end/WebKit.qrc:
  54711. * inspector/front-end/inspector.html:
  54712. * inspector/front-end/utilities.js:
  54713. ():
  54714. 2010-08-27 Mihai Parparita <mihaip@chromium.org>
  54715. Reviewed by Darin Fisher.
  54716. Crash in HistoryController::recursiveGoToItem when navigating in a frame
  54717. while another frame has a custom window name
  54718. https://bugs.webkit.org/show_bug.cgi?id=44183
  54719. Fix up HistoryController::recursiveGoToItem to better check whether the
  54720. current document frames, the curent history item frames, and the
  54721. destination history frames match up.
  54722. Test: fast/history/history-subframe-with-name.html
  54723. * history/HistoryItem.cpp:
  54724. (WebCore::HistoryItem::childItemWithDocumentSequenceNumber): Add linear
  54725. lookup of child by document sequence number
  54726. (WebCore::HistoryItem::hasSameDocuments): Remove assumption that the
  54727. other item has the children in the same order (it doesn't seem to be
  54728. true)
  54729. (WebCore::HistoryItem::hasSameFrames): Add recursive comparison of child
  54730. frames.
  54731. * history/HistoryItem.h:
  54732. * loader/FrameLoader.cpp:
  54733. (WebCore::FrameLoader::loadItem): Compare full set of documents in
  54734. history items, not just the topmost ones. Otherwise when going between
  54735. framesets where only one of the subframes changed we wouldn't trigger a
  54736. load.
  54737. * loader/HistoryController.cpp:
  54738. (WebCore::HistoryController::recursiveGoToItem): Also check that the
  54739. two history items have the same frames
  54740. (WebCore::HistoryController::currentFramesMatchItem): Refactor
  54741. childFramesMatchItem to also check the top-most frame, to make
  54742. recursiveGoToItem easier to read.
  54743. * loader/HistoryController.h:
  54744. 2010-08-27 Patrick Gansterer <paroga@paroga.com>
  54745. Reviewed by Nikolas Zimmermann.
  54746. [WINCE] Buildfix for graphics code after r65449
  54747. https://bugs.webkit.org/show_bug.cgi?id=44510
  54748. * platform/graphics/wince/GraphicsContextWince.cpp:
  54749. * platform/graphics/wince/ImageBufferWince.cpp:
  54750. (WebCore::ImageBuffer::drawsUsingCopy):
  54751. (WebCore::ImageBuffer::copyImage):
  54752. (WebCore::ImageBuffer::clip):
  54753. (WebCore::ImageBuffer::draw):
  54754. (WebCore::ImageBuffer::drawPattern):
  54755. 2010-08-27 Dawit Alemayehu <adawit@kde.org>
  54756. Reviewed by Simon Hausmann.
  54757. [Qt] Search the Windows registry for the location of the Java plugin DLL.
  54758. https://bugs.webkit.org/show_bug.cgi?id=38911
  54759. This change, in addition to the ones 34539 and 38911, is needed to
  54760. make Java applet work in QtWebKit on the Windows platform.
  54761. * plugins/win/PluginDatabaseWin.cpp:
  54762. (WebCore::addJavaPluginDirectory):
  54763. (WebCore::PluginDatabase::defaultPluginDirectories):
  54764. 2010-08-27 Pavel Feldman <pfeldman@chromium.org>
  54765. Reviewed by Yury Semikhatsky.
  54766. Web Inspector: color-code property values in object notation.
  54767. https://bugs.webkit.org/show_bug.cgi?id=44766
  54768. * inspector/front-end/ObjectPropertiesSection.js:
  54769. (WebInspector.ObjectPropertyTreeElement.prototype.update):
  54770. 2010-08-27 Patrick Gansterer <paroga@paroga.com>
  54771. Reviewed by Nikolas Zimmermann.
  54772. [WINCE] Buildfix for FontPlatformData after r65021
  54773. https://bugs.webkit.org/show_bug.cgi?id=44467
  54774. * platform/graphics/wince/FontPlatformData.h:
  54775. 2010-08-27 Patrick Gansterer <paroga@paroga.com>
  54776. Reviewed by Nikolas Zimmermann.
  54777. RenderImage::imageChanged invalidates wrong area
  54778. https://bugs.webkit.org/show_bug.cgi?id=43779
  54779. At the moment RenderSVGImage inherits from RenderImage, which makes non-SVG compatible
  54780. assumptions about repainting, and thus has to be fixed to inherit from RenderSVGModelObject.
  54781. This patch moves the CachedImage from RenderImage into a separate class.
  54782. The new class contains the common behavior of RenderImage and RenderSVGImage.
  54783. An additional patch will remove the inheritance of RenderImage at RenderSVGImage.
  54784. * Android.mk:
  54785. * CMakeLists.txt:
  54786. * GNUmakefile.am:
  54787. * WebCore.gypi:
  54788. * WebCore.pro:
  54789. * WebCore.vcproj/WebCore.vcproj:
  54790. * WebCore.xcodeproj/project.pbxproj:
  54791. * html/HTMLEmbedElement.cpp:
  54792. (WebCore::HTMLEmbedElement::createRenderer):
  54793. (WebCore::HTMLEmbedElement::attach):
  54794. * html/HTMLImageElement.cpp:
  54795. (WebCore::HTMLImageElement::createRenderer):
  54796. (WebCore::HTMLImageElement::attach):
  54797. * html/HTMLInputElement.cpp:
  54798. (WebCore::HTMLInputElement::createRenderer):
  54799. (WebCore::HTMLInputElement::attach):
  54800. * html/HTMLObjectElement.cpp:
  54801. (WebCore::HTMLObjectElement::createRenderer):
  54802. * html/HTMLVideoElement.cpp:
  54803. (WebCore::HTMLVideoElement::attach):
  54804. (WebCore::HTMLVideoElement::parseMappedAttribute):
  54805. * loader/ImageLoader.cpp:
  54806. (WebCore::ImageLoader::setImage):
  54807. (WebCore::ImageLoader::updateFromElement):
  54808. (WebCore::ImageLoader::renderImageResource):
  54809. (WebCore::ImageLoader::updateRenderer):
  54810. * loader/ImageLoader.h:
  54811. * rendering/RenderImage.cpp:
  54812. (WebCore::RenderImage::RenderImage):
  54813. (WebCore::RenderImage::~RenderImage):
  54814. (WebCore::RenderImage::setImageResource):
  54815. (WebCore::RenderImage::imageChanged):
  54816. (WebCore::RenderImage::notifyFinished):
  54817. (WebCore::RenderImage::paintReplaced):
  54818. (WebCore::RenderImage::paintIntoRect):
  54819. (WebCore::RenderImage::minimumReplacedHeight):
  54820. (WebCore::RenderImage::calcReplacedWidth):
  54821. (WebCore::RenderImage::calcReplacedHeight):
  54822. (WebCore::RenderImage::calcAspectRatioWidth):
  54823. (WebCore::RenderImage::calcAspectRatioHeight):
  54824. * rendering/RenderImage.h:
  54825. (WebCore::RenderImage::imageResource):
  54826. (WebCore::RenderImage::cachedImage):
  54827. (WebCore::RenderImage::intrinsicSizeChanged):
  54828. (WebCore::toRenderImage):
  54829. * rendering/RenderImageGeneratedContent.cpp: Removed.
  54830. * rendering/RenderImageGeneratedContent.h: Removed.
  54831. * rendering/RenderImageResource.cpp: Added.
  54832. (WebCore::RenderImageResource::RenderImageResource):
  54833. (WebCore::RenderImageResource::~RenderImageResource):
  54834. (WebCore::RenderImageResource::initialize):
  54835. (WebCore::RenderImageResource::shutdown):
  54836. (WebCore::RenderImageResource::setCachedImage):
  54837. (WebCore::RenderImageResource::resetAnimation):
  54838. (WebCore::RenderImageResource::setImageContainerSize):
  54839. (WebCore::RenderImageResource::nullImage):
  54840. * rendering/RenderImageResource.h: Added.
  54841. (WebCore::RenderImageResource::create):
  54842. (WebCore::RenderImageResource::cachedImage):
  54843. (WebCore::RenderImageResource::hasImage):
  54844. (WebCore::RenderImageResource::image):
  54845. (WebCore::RenderImageResource::errorOccurred):
  54846. (WebCore::RenderImageResource::usesImageContainerSize):
  54847. (WebCore::RenderImageResource::imageHasRelativeWidth):
  54848. (WebCore::RenderImageResource::imageHasRelativeHeight):
  54849. (WebCore::RenderImageResource::imageSize):
  54850. (WebCore::RenderImageResource::imagePtr):
  54851. * rendering/RenderImageResourceStyleImage.cpp: Added.
  54852. (WebCore::RenderImageResourceStyleImage::RenderImageResourceStyleImage):
  54853. (WebCore::RenderImageResourceStyleImage::~RenderImageResourceStyleImage):
  54854. (WebCore::RenderImageResourceStyleImage::initialize):
  54855. (WebCore::RenderImageResourceStyleImage::shutdown):
  54856. * rendering/RenderImageResourceStyleImage.h: Added.
  54857. (WebCore::RenderImageResourceStyleImage::create):
  54858. (WebCore::RenderImageResourceStyleImage::image):
  54859. (WebCore::RenderImageResourceStyleImage::errorOccurred):
  54860. (WebCore::RenderImageResourceStyleImage::setImageContainerSize):
  54861. (WebCore::RenderImageResourceStyleImage::usesImageContainerSize):
  54862. (WebCore::RenderImageResourceStyleImage::imageHasRelativeWidth):
  54863. (WebCore::RenderImageResourceStyleImage::imageHasRelativeHeight):
  54864. (WebCore::RenderImageResourceStyleImage::imageSize):
  54865. (WebCore::RenderImageResourceStyleImage::imagePtr):
  54866. * rendering/RenderMedia.cpp:
  54867. (WebCore::RenderMedia::RenderMedia):
  54868. * rendering/RenderObject.cpp:
  54869. (WebCore::RenderObject::createObject):
  54870. * rendering/RenderObjectChildList.cpp:
  54871. (WebCore::RenderObjectChildList::updateBeforeAfterContent):
  54872. * rendering/RenderSVGImage.cpp:
  54873. (WebCore::RenderSVGImage::RenderSVGImage):
  54874. (WebCore::RenderSVGImage::layout):
  54875. (WebCore::RenderSVGImage::paint):
  54876. * rendering/RenderVideo.cpp:
  54877. (WebCore::RenderVideo::calculateIntrinsicSize):
  54878. * svg/SVGImageElement.cpp:
  54879. (WebCore::SVGImageElement::attach):
  54880. * wml/WMLImageElement.cpp:
  54881. (WebCore::WMLImageElement::createRenderer):
  54882. 2010-08-27 Pavel Feldman <pfeldman@chromium.org>
  54883. Reviewed by Pavel Feldman.
  54884. Web Inspector: Elements panel breaks after calling "Edit as HTML" on <body>
  54885. https://bugs.webkit.org/show_bug.cgi?id=44765
  54886. * inspector/InspectorDOMAgent.cpp:
  54887. (WebCore::InspectorDOMAgent::setOuterHTML):
  54888. 2010-08-25 Jeremy Orlow <jorlow@chromium.org>
  54889. Reviewed by Steve Block.
  54890. Add setVersion to IndexedDB
  54891. https://bugs.webkit.org/show_bug.cgi?id=44630
  54892. * storage/IDBDatabase.cpp:
  54893. (WebCore::IDBDatabase::setVersion):
  54894. * storage/IDBDatabase.h:
  54895. * storage/IDBDatabase.idl:
  54896. * storage/IDBDatabaseBackendImpl.cpp:
  54897. (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
  54898. (WebCore::IDBDatabaseBackendImpl::setVersion):
  54899. * storage/IDBDatabaseBackendImpl.h:
  54900. * storage/IDBDatabaseBackendInterface.h:
  54901. 2010-08-26 Pavel Podivilov <podivilov@chromium.org>
  54902. Reviewed by Pavel Feldman.
  54903. Web Inspector: use context menu items with checkbox for setting and removing DOM breakpoints
  54904. https://bugs.webkit.org/show_bug.cgi?id=44687
  54905. * English.lproj/localizedStrings.js:
  54906. * inspector/front-end/BreakpointsSidebarPane.js:
  54907. (WebInspector.DOMBreakpointItem):
  54908. * inspector/front-end/DOMAgent.js:
  54909. (WebInspector.DOMBreakpointManager.prototype.findBreakpoint):
  54910. (WebInspector.DOMBreakpoint.labelForType):
  54911. (WebInspector.DOMBreakpoint.contextMenuLabelForType):
  54912. * inspector/front-end/ElementsTreeOutline.js:
  54913. (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
  54914. * inspector/front-end/inspector.js:
  54915. (WebInspector.pausedScript):
  54916. 2010-08-27 Steve Block <steveblock@google.com>
  54917. Reviewed by Jeremy Orlow.
  54918. Calls to IndexedDB methods from V8Proxy::didLeaveScriptContext() are missing enable guards
  54919. https://bugs.webkit.org/show_bug.cgi?id=44760
  54920. No new tests, build fix only.
  54921. * bindings/v8/V8Proxy.cpp:
  54922. (WebCore::V8Proxy::didLeaveScriptContext):
  54923. 2010-08-27 Dirk Schulze <krit@webkit.org>
  54924. Reviewed by Nikolas Zimmermann.
  54925. getPointAtLength returns incorrect values for paths closed with the closepath command
  54926. https://bugs.webkit.org/show_bug.cgi?id=44197
  54927. The closepath segment was traversed by the wrong direction. Swap starting point and
  54928. end point for closeSubpath.
  54929. Test: svg/dom/path-pointAtLength.html
  54930. * platform/graphics/PathTraversalState.cpp:
  54931. (WebCore::PathTraversalState::closeSubpath):
  54932. 2010-08-27 Dirk Schulze <krit@webkit.org>
  54933. Reviewed by Nikolas Zimmermann.
  54934. SVG Filter with wrong results on repaint for non-CG platforms
  54935. https://bugs.webkit.org/show_bug.cgi?id=44706
  54936. The result of SVG Filter is transformed to linearRGB on every repaint.
  54937. Transform the result just once, right after creating it.
  54938. Test: svg/repaint/filter-repaint.svg
  54939. * rendering/RenderSVGResourceFilter.cpp:
  54940. (WebCore::RenderSVGResourceFilter::postApplyResource):
  54941. 2010-08-27 Yury Semikhatsky <yurys@chromium.org>
  54942. Reviewed by Pavel Feldman.
  54943. REGRESSION: Crash occurs at objc_msgSend when closing a window that is displaying the web inspector
  54944. https://bugs.webkit.org/show_bug.cgi?id=44230
  54945. * inspector/Inspector.idl:
  54946. * inspector/InspectorController.cpp:
  54947. (WebCore::InspectorController::inspectedPageDestroyed):
  54948. (WebCore::InspectorController::close):
  54949. * inspector/InspectorFrontendClient.h:
  54950. * inspector/InspectorFrontendHost.cpp:
  54951. (WebCore::InspectorFrontendHost::disconnectFromBackend): don't try to notify InspectorController
  54952. that frontend closes if InspectorController triggered the action.
  54953. * inspector/InspectorFrontendHost.h:
  54954. * inspector/InspectorFrontendHost.idl:
  54955. * inspector/front-end/InspectorFrontendHostStub.js:
  54956. (.WebInspector.InspectorFrontendHostStub.prototype.disconnectFromBackend):
  54957. * inspector/front-end/inspector.js:
  54958. (WebInspector.disconnectFromBackend):
  54959. 2010-08-27 Sheriff Bot <webkit.review.bot@gmail.com>
  54960. Unreviewed, rolling out r66188.
  54961. http://trac.webkit.org/changeset/66188
  54962. https://bugs.webkit.org/show_bug.cgi?id=44756
  54963. "Graphic libraries handle segement length differently. Fixing
  54964. one platform might break another one. Rolling out this patch
  54965. and think about another solution to get getPointAtLength"
  54966. (Requested by krit on #webkit).
  54967. * platform/graphics/PathTraversalState.cpp:
  54968. (WebCore::PathTraversalState::closeSubpath):
  54969. 2010-08-27 Simon Fraser <simon.fraser@apple.com>
  54970. Reviewed by Nikolas Zimmermann.
  54971. r66141 caused fast/forms/select-style.html to fail on mac:
  54972. https://bugs.webkit.org/show_bug.cgi?id=44737
  54973. Handle the fact that a CSSImageValue may have a value of CSSValueNone,
  54974. in which case we should not return a pending image.
  54975. * css/CSSImageValue.cpp:
  54976. (WebCore::CSSImageValue::cachedOrPendingImage):
  54977. * css/CSSStyleSelector.cpp:
  54978. (WebCore::CSSStyleSelector::cachedOrPendingFromValue):
  54979. 2010-08-27 Alejandro G. Castro <alex@igalia.com>
  54980. Reviewed by Dan Bernstein.
  54981. drawGDIGlyphs checks if the offset is empty incorrectly causing
  54982. problems with the shadow
  54983. https://bugs.webkit.org/show_bug.cgi?id=44619
  54984. Removed the offset empty condition, now we just check if we have
  54985. offset or blur.
  54986. * platform/graphics/win/FontCGWin.cpp:
  54987. (WebCore::drawGDIGlyphs):
  54988. 2010-08-27 Dirk Schulze <krit@webkit.org>
  54989. Reviewed by Nikolas Zimmermann.
  54990. getPointAtLength returns incorrect values for paths closed with the closepath command
  54991. https://bugs.webkit.org/show_bug.cgi?id=44197
  54992. The closepath segment was traversed by the wrong direction. Swap starting point and
  54993. end point for closeSubpath.
  54994. Test: svg/dom/path-pointAtLength.html
  54995. * platform/graphics/PathTraversalState.cpp:
  54996. (WebCore::PathTraversalState::closeSubpath):
  54997. 2010-08-27 Nikolas Zimmermann <nzimmermann@rim.com>
  54998. Reviewed by Dirk Schulze.
  54999. SVGLocatable.getScreenCTM ignores scrolling
  55000. https://bugs.webkit.org/show_bug.cgi?id=44083
  55001. getScreenCTM needs to include the FrameViews scrollOffset in the e/f parameters of the AffineTransform.
  55002. Adding three new tests, which cover scrolling & getScreenCTM in large svgs with scrollbars, and with (nested) divs in overflow="scroll" mode.
  55003. Tests: svg/custom/getscreenctm-in-scrollable-div-area-nested.xhtml
  55004. svg/custom/getscreenctm-in-scrollable-div-area.xhtml
  55005. svg/custom/getscreenctm-in-scrollable-svg-area.xhtml
  55006. * svg/SVGSVGElement.cpp:
  55007. (WebCore::SVGSVGElement::localCoordinateSpaceTransform):
  55008. 2010-08-25 Ryosuke Niwa <rniwa@webkit.org>
  55009. Reviewed by Darin Adler.
  55010. implicitlyStyledElementShouldBeRemovedWhenApplyingStyle, removeHTMLFontStyle, and removeHTMLBidiEmbeddingStyle should be merged
  55011. https://bugs.webkit.org/show_bug.cgi?id=44622
  55012. Merged shouldRemoveTextDecorationTag, implicitlyStyledElementShouldBeRemovedWhenApplyingStyle, removeHTMLFontStyle,
  55013. and removeHTMLBidiEmbeddingStyle into removeImplicitlyStyledElement. New function uses CSSPropertyElementMapping to
  55014. support all different cases dealt separately in each function.
  55015. No new tests are added since this is a cleanup.
  55016. * editing/ApplyStyleCommand.cpp:
  55017. (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Calls removeImplicitlyStyledElement.
  55018. (WebCore::):
  55019. (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Added.
  55020. * editing/ApplyStyleCommand.h:
  55021. 2010-08-26 Andy Estes <aestes@apple.com>
  55022. Reviewed by Darin Adler.
  55023. Based on a patch by Mihnea Ovidenie <mihnea@adobe.com>.
  55024. Percentage top value on position:relative descendant not resolved
  55025. correctly if containing block height is not specified explicitly.
  55026. https://bugs.webkit.org/show_bug.cgi?id=26396
  55027. If the containing block height is auto and the element is positioned
  55028. relatively, and if the element's top/bottom is percent, then resolve the
  55029. top/bottom as auto.
  55030. Test: fast/css/percent-top-relative-container-height-unspecified.html
  55031. * rendering/RenderBoxModelObject.cpp:
  55032. (WebCore::RenderBoxModelObject::relativePositionOffsetY):
  55033. 2010-08-26 James Robinson <jamesr@chromium.org>
  55034. Another chromium mac build fix. What a dumb version of GCC.
  55035. * platform/graphics/chromium/GLES2Texture.cpp:
  55036. (WebCore::GLES2Texture::create):
  55037. 2010-08-26 Kent Tamura <tkent@chromium.org>
  55038. Unreviewed, build fix for Chromium-mac.
  55039. * platform/graphics/chromium/Shader.cpp:
  55040. (WebCore::loadShader):
  55041. 2010-08-26 James Robinson <jamesr@chromium.org>
  55042. Fix chromium mac build. Unreviewed.
  55043. * platform/graphics/chromium/GLES2Canvas.cpp:
  55044. (WebCore::GLES2Canvas::GLES2Canvas):
  55045. * platform/graphics/chromium/GLES2Texture.cpp:
  55046. (WebCore::GLES2Texture::load):
  55047. 2010-08-26 Mark Rowe <mrowe@apple.com>
  55048. Darin pointed out that the braces are unnecessary in an Objective-C interface
  55049. declaration when there are no data members.
  55050. * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: Begone, evil braces!
  55051. 2010-08-26 Gavin Barraclough <barraclough@apple.com>
  55052. Rubber Stamped by Oliver Hunt.
  55053. Partially revert r65959. The toString changes regressed the v8 tests,
  55054. but keep the toFixed/toExponential/toPrecision changes.
  55055. * html/HTMLTreeBuilder.cpp:
  55056. (WebCore::serializeForNumberType):
  55057. 2010-08-26 Mark Rowe <mrowe@apple.com>
  55058. Reviewed by Adam Roben.
  55059. Fix two build issues that are revealed when building with clang.
  55060. * platform/mac/PopupMenuMac.h: Forward-declare as an Objective-C class when compiling for Objective-C.
  55061. * platform/network/BlobResourceHandle.h: Forward-declare as a struct to match the real declaration.
  55062. 2010-08-26 Mark Rowe <mrowe@apple.com>
  55063. Reviewed by Sam Weinig.
  55064. <rdar://problem/8339008> WebCore's MediaPlayerPrivateQTKit.mm fails to build with clang.
  55065. * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
  55066. (WebCore::mainThreadSetNeedsDisplay): Remove some ambiguity in the return type of -delegate.
  55067. Since the message was being sent to a receiver of type id the compiler cannot accurately
  55068. determine the return type. Typically this would be resolved by using a more specific type
  55069. for the receiver. However, due to lazy loading shenanigans that we play with QTKit we're
  55070. unable to directly cast to the relevant type (QTMovieView*). Instead we fake up an interface
  55071. with the correct type of the method we care about (-delegate) and cast to that type instead.
  55072. 2010-08-26 Andy Estes <aestes@apple.com>
  55073. Reviewed by Darin Adler.
  55074. If an <embed> is part of an <object> element's fallback content, WebKit
  55075. should only render the <embed> if the <object> fails to load.
  55076. https://bugs.webkit.org/show_bug.cgi?id=44567
  55077. <rdar://problem/7699852>
  55078. Tests: fast/replaced/invalid-object-with-fallback.html
  55079. fast/replaced/object-with-embed-url-param.html
  55080. * html/HTMLEmbedElement.cpp:
  55081. (WebCore::HTMLEmbedElement::rendererIsNeeded): An <embed> now needs a
  55082. renderer if its parent is an <object> but the <object> is using fallback
  55083. content.
  55084. * html/HTMLObjectElement.h:
  55085. (WebCore::HTMLObjectElement::useFallbackContent): Add a public getter
  55086. for m_useFallbackContent for use in HTMLEmbedElement::rendererIsNeeded.
  55087. * rendering/RenderEmbeddedObject.cpp:
  55088. (WebCore::RenderEmbeddedObject::updateWidget): Change the logic that
  55089. determines the plug-in parameters to pass to the loader. Do not override
  55090. parameters from <object> with those from a child <embed>.
  55091. 2010-08-26 James Robinson <jamesr@chromium.org>
  55092. Reviewed by Darin Fisher.
  55093. [chromium] Remove the USE(GLES2_RENDERING) define and associated code
  55094. https://bugs.webkit.org/show_bug.cgi?id=43761
  55095. USE(GLES2_RENDERING) will not be useful since we'll be coding to GraphicsContext3D
  55096. instead of OpenGL and can use ENABLE(ACCELERATED_2D_CANVAS) for canvas 2d specific
  55097. changes. This deletes the macro and deletes the ChromeClient API to query
  55098. GLES2Contexts since we'll never need one of these outside of the compositor, which
  55099. is created in platform-specific code.
  55100. * loader/EmptyClients.h:
  55101. * page/ChromeClient.h:
  55102. * platform/graphics/chromium/GLES2Canvas.cpp:
  55103. * platform/graphics/chromium/GLES2Canvas.h:
  55104. * platform/graphics/chromium/GLES2Texture.cpp:
  55105. * platform/graphics/chromium/GLES2Texture.h:
  55106. * platform/graphics/skia/GraphicsContextSkia.cpp:
  55107. (WebCore::GraphicsContext::savePlatformState):
  55108. (WebCore::GraphicsContext::restorePlatformState):
  55109. (WebCore::GraphicsContext::clearRect):
  55110. (WebCore::GraphicsContext::concatCTM):
  55111. (WebCore::GraphicsContext::fillRect):
  55112. (WebCore::GraphicsContext::scale):
  55113. (WebCore::GraphicsContext::setAlpha):
  55114. (WebCore::GraphicsContext::setCompositeOperation):
  55115. (WebCore::GraphicsContext::setPlatformFillColor):
  55116. (WebCore::GraphicsContext::rotate):
  55117. (WebCore::GraphicsContext::translate):
  55118. (WebCore::GraphicsContext::setGraphicsContext3D):
  55119. (WebCore::GraphicsContext::syncSoftwareCanvas):
  55120. * platform/graphics/skia/ImageSkia.cpp:
  55121. (WebCore::drawBitmapGLES2):
  55122. (WebCore::BitmapImage::draw):
  55123. (WebCore::BitmapImageSingleFrameSkia::draw):
  55124. * platform/graphics/skia/PlatformContextSkia.cpp:
  55125. (WebCore::PlatformContextSkia::PlatformContextSkia):
  55126. (WebCore::PlatformContextSkia::~PlatformContextSkia):
  55127. * platform/graphics/skia/PlatformContextSkia.h:
  55128. 2010-08-26 Martin Robinson <mrobinson@igalia.com>
  55129. Build fix for GTK+, after a bad merge.
  55130. * platform/gtk/RenderThemeGtk.cpp:
  55131. (WebCore::RenderThemeGtk::paintMozillaGtkWidget):
  55132. 2010-08-23 Martin Robinson <mrobinson@igalia.com>
  55133. Reviewed by Gustavo Noronha Silva.
  55134. [GTK] ScrollbarThemeGtk is incomplete
  55135. https://bugs.webkit.org/show_bug.cgi?id=44471
  55136. Add theme drawing code for GTK+ scrollbars. Turn RenderThemeGtk::paintMozillaWidget
  55137. into a public method so that ScrollbarThemeGtk can access Mozilla theme API properly.
  55138. Tests for this issue will be activated in the form of pixel tests, but
  55139. only after fully-fake scrollbars are activated.
  55140. * platform/gtk/RenderThemeGtk.cpp:
  55141. (WebCore::RenderThemeGtk::paintMozillaGtkWidget): Added this public method which takes
  55142. the proper widget state, widget type, graphics context and rectangle and renders a
  55143. widget using the Mozilla theming API.
  55144. (WebCore::RenderThemeGtk::paintRenderObject): Added this method which first calculates
  55145. the widget state before passing the information on to paintMozillaGtkWidget.
  55146. (WebCore::RenderThemeGtk::paintCheckbox): Switch to use paintRenderObject.
  55147. (WebCore::RenderThemeGtk::paintRadio): Switch to use paintRenderObject.
  55148. (WebCore::RenderThemeGtk::paintButton): Switch to use paintRenderObject.
  55149. (WebCore::RenderThemeGtk::paintMenuList): Switch to use paintRenderObject.
  55150. (WebCore::RenderThemeGtk::paintTextField): Switch to use paintRenderObject.
  55151. (WebCore::RenderThemeGtk::paintSliderTrack): Switch to use paintRenderObject.
  55152. (WebCore::RenderThemeGtk::paintSliderThumb): Switch to use paintRenderObject.
  55153. (WebCore::RenderThemeGtk::paintProgressBar): Switch to use paintRenderObject.
  55154. * platform/gtk/RenderThemeGtk.h: Added new method declarations.
  55155. * platform/gtk/ScrollbarThemeGtk.cpp: Added code which can render GTK+ scrollbars.
  55156. (WebCore::ScrollbarThemeGtk::hasThumb): Added.
  55157. (WebCore::ScrollbarThemeGtk::backButtonRect): Added.
  55158. (WebCore::ScrollbarThemeGtk::forwardButtonRect): Added.
  55159. (WebCore::ScrollbarThemeGtk::trackRect): Added.
  55160. (WebCore::ScrollbarThemeGtk::paintTrackBackground): Added.
  55161. (WebCore::ScrollbarThemeGtk::paintScrollbarBackground): Added.
  55162. (WebCore::ScrollbarThemeGtk::paintThumb): Added.
  55163. (WebCore::ScrollbarThemeGtk::thumbRect): Added.
  55164. (WebCore::ScrollbarThemeGtk::paint): Added.
  55165. (WebCore::ScrollbarThemeGtk::paintButton): Added.
  55166. (WebCore::ScrollbarThemeGtk::paintScrollCorner): Added.
  55167. (WebCore::ScrollbarThemeGtk::shouldCenterOnThumb): Added.
  55168. (WebCore::ScrollbarThemeGtk::scrollbarThickness): Always get the metrics from the
  55169. theme drawing API so that it stays up to date with theme changes.
  55170. (WebCore::ScrollbarThemeGtk::buttonSize): Added.
  55171. (WebCore::ScrollbarThemeGtk::minimumThumbLength): Added.
  55172. * platform/gtk/ScrollbarThemeGtk.h:
  55173. (WebCore::ScrollbarThemeGtk::hasButtons): Added.
  55174. (WebCore::ScrollbarThemeGtk::initialAutoscrollTimerDelay): Added.
  55175. (WebCore::ScrollbarThemeGtk::autoscrollTimerDelay): Added.
  55176. 2010-08-26 Alexey Proskuryakov <ap@apple.com>
  55177. Reviewed by Sam Weinig.
  55178. https://bugs.webkit.org/show_bug.cgi?id=44726
  55179. <rdar://problem/7935518> WebFrameProxies aren't destroyed until a page is destroyed
  55180. * loader/FrameLoader.cpp:
  55181. (WebCore::FrameLoader::closeAndRemoveChild):
  55182. (WebCore::FrameLoader::detachFromParent):
  55183. Added a few FIXME comments. The logic we have to track frames is extremely convoluted.
  55184. 2010-08-26 Ryosuke Niwa <rniwa@webkit.org>
  55185. Unreviewed; build fix.
  55186. Speculative chromium mac fix by including "Color.h".
  55187. * platform/graphics/chromium/Shader.cpp:
  55188. 2010-08-26 Simon Fraser <simon.fraser@apple.com>
  55189. Reviewed by Dave Hyatt.
  55190. CSS downloads all background images related to element, instead of just final rule
  55191. https://bugs.webkit.org/show_bug.cgi?id=24223
  55192. We used to kick off image loads at the point where the style selector
  55193. applies a CSS rule to an element, even if that rule was overridden
  55194. by a rule in a later block of rules. This caused loads of images that
  55195. weren't actually used.
  55196. Fix this by delaying image loads until the style has been fully
  55197. resolved. This is achieved by inserting a StylePendingImage into
  55198. the RenderStyle for duration of the style resolution, and keeping
  55199. an entry in a hash for the relevant CSS property.
  55200. At the end of style resolution, we iterate through the hash, and
  55201. replace the StylePendingImage with StyleCachedImages, which
  55202. causes the loads to happen only for images that are in the final style.
  55203. Tests: http/tests/css/border-image-loading.html
  55204. http/tests/css/mask-image-loading.html
  55205. http/tests/css/reflection-mask-image-loading.html
  55206. * GNUmakefile.am: Add StylePendingImage.h
  55207. * WebCore.gypi: Ditto
  55208. * WebCore.vcproj/WebCore.vcproj: Ditto
  55209. * css/CSSImageValue.h: Change m_image to a RefPtr<StyleImage>,
  55210. since it may be a StylePendingImage or StyleCachedImage.
  55211. * css/CSSImageValue.cpp:
  55212. (WebCore::CSSImageValue::~CSSImageValue): Only call removeClient if it's a cachedImage.
  55213. (WebCore::CSSImageValue::cachedOrPendingImage): If we have an image (pending or cached),
  55214. return it. Otherwise make a pending image and return it.
  55215. (WebCore::CSSImageValue::cachedImage): Only return the image if it's a cached image.
  55216. (WebCore::CSSImageValue::cachedImageURL):
  55217. (WebCore::CSSImageValue::clearCachedImage):
  55218. * css/CSSStyleSelector.h:
  55219. * css/CSSStyleSelector.cpp:
  55220. (WebCore::CSSStyleSelector::initForStyleResolve): Clear m_pendingImageProperties.
  55221. (WebCore::CSSStyleSelector::styleForElement): Load pending images.
  55222. (WebCore::CSSStyleSelector::styleForKeyframe): Ditto.
  55223. (WebCore::CSSStyleSelector::pseudoStyleForElement): Ditto.
  55224. (WebCore::CSSStyleSelector::styleForPage): Ditto.
  55225. (WebCore::CSSStyleSelector::applyProperty): Pull property into a local variable
  55226. so we can use it in macros.
  55227. (WebCore::CSSStyleSelector::mapFillAttachment): Pass the property down (needed to avoid
  55228. additional macro complexity).
  55229. (WebCore::CSSStyleSelector::mapFillClip): Ditto
  55230. (WebCore::CSSStyleSelector::mapFillComposite): Ditto
  55231. (WebCore::CSSStyleSelector::mapFillOrigin): Ditto
  55232. (WebCore::CSSStyleSelector::styleImage): Call cachedOrPendingFromValue()
  55233. (WebCore::CSSStyleSelector::cachedOrPendingFromValue): Get the cachedOrPendingImage()
  55234. from the CSSValue, and if it's a pending image, record the property.
  55235. (WebCore::CSSStyleSelector::mapFillImage): Pass the property down (needed to avoid
  55236. additional macro complexity).
  55237. (WebCore::CSSStyleSelector::mapFillRepeatX): Ditto
  55238. (WebCore::CSSStyleSelector::mapFillRepeatY): Ditto
  55239. (WebCore::CSSStyleSelector::mapFillSize): Ditto
  55240. (WebCore::CSSStyleSelector::mapFillXPosition): Ditto
  55241. (WebCore::CSSStyleSelector::mapFillYPosition): Ditto
  55242. (WebCore::CSSStyleSelector::mapNinePieceImage): Ditto
  55243. (WebCore::CSSStyleSelector::loadPendingImages): Iterate through the m_pendingImageProperties
  55244. hash, and replace the pending images with cached images.
  55245. * rendering/style/StyleCachedImage.h: Make cssValue() const.
  55246. * rendering/style/StyleCachedImage.cpp:
  55247. (WebCore::StyleCachedImage::cssValue):
  55248. * rendering/style/StyleGeneratedImage.h: Make cssValue() const.
  55249. * rendering/style/StyleGeneratedImage.cpp:
  55250. (WebCore::StyleGeneratedImage::cssValue):
  55251. * rendering/style/StyleImage.h:
  55252. (WebCore::StyleImage::operator==): Make const.
  55253. (WebCore::StyleImage::isPendingImage):
  55254. * rendering/style/StylePendingImage.h: Added.
  55255. 2010-08-26 Sam Weinig <sam@webkit.org>
  55256. Reviewed by Darin Adler.
  55257. Add PassOwnArrayPtr
  55258. https://bugs.webkit.org/show_bug.cgi?id=44627
  55259. Add new forwarding headers.
  55260. * ForwardingHeaders/wtf/OwnArrayPtrCommon.h: Added.
  55261. * ForwardingHeaders/wtf/PassOwnArrayPtr.h: Added.
  55262. 2010-08-26 Stanislav Brabec <sbrabec@suse.cz>
  55263. Reviewed by Martin Robinson.
  55264. [GTK] [PATCH] plugin loading invalid symlink evaluation deadlock
  55265. https://bugs.webkit.org/show_bug.cgi?id=44683
  55266. Fix symlink resolution in PluginPackageGtk.
  55267. * plugins/gtk/PluginPackageGtk.cpp:
  55268. (WebCore::PluginPackage::load): g_file_resolve_relative_path must be called with a
  55269. a directory, not a file.
  55270. 2010-08-26 Andy Estes <aestes@apple.com>
  55271. Reviewed by Eric Carlson.
  55272. A URL in a <param> should be parsed the same as if it were specified as
  55273. the data attribute of an <object>.
  55274. https://bugs.webkit.org/show_bug.cgi?id=44671
  55275. Test: fast/replaced/object-param-url-control-char.html
  55276. * rendering/RenderEmbeddedObject.cpp:
  55277. (WebCore::RenderEmbeddedObject::updateWidget): Call deprecatedParseURL()
  55278. on <param> values of names that we treat as URLs ("src", "movie", "code"
  55279. and "url").
  55280. 2010-08-26 Stephen White <senorblanco@chromium.org>
  55281. Unreviewed; build fix.
  55282. Fix for Chromium/Mac.
  55283. * platform/graphics/chromium/Shader.cpp:
  55284. 2010-08-26 Tony Chang <tony@chromium.org>
  55285. Reviewed by David Hyatt.
  55286. crash when rendering scrollbar gradient
  55287. https://bugs.webkit.org/show_bug.cgi?id=44549
  55288. Test: scrollbars/scrollbar-gradient-crash.html
  55289. * css/CSSImageGeneratorValue.cpp:
  55290. (WebCore::CSSImageGeneratorValue::getImage): Keep this alive.
  55291. 2010-08-26 Stephen White <senorblanco@chromium.org>
  55292. Reviewed by Kenneth Russell.
  55293. [CHROMIUM] Give <canvas> 2D shaders their own class hierarchy.
  55294. https://bugs.webkit.org/show_bug.cgi?id=44682
  55295. Covered by fast/canvas layout tests.
  55296. * WebCore.gypi:
  55297. Add Shader.cpp, Shader.h to chromium build.
  55298. * platform/graphics/chromium/GLES2Canvas.cpp:
  55299. (WebCore::GLES2Canvas::GLES2Canvas):
  55300. (WebCore::GLES2Canvas::~GLES2Canvas):
  55301. (WebCore::GLES2Canvas::fillRect):
  55302. (WebCore::GLES2Canvas::drawTexturedRect):
  55303. (WebCore::GLES2Canvas::drawTexturedRectTile):
  55304. Rip out all shader initialization and compilation code.
  55305. Instantiate specialized shaders instead.
  55306. * platform/graphics/chromium/GLES2Canvas.h:
  55307. * platform/graphics/chromium/Shader.cpp: Added.
  55308. (WebCore::affineTo3x3):
  55309. (WebCore::Shader::Shader):
  55310. (WebCore::Shader::~Shader):
  55311. Implement Shader base class.
  55312. (WebCore::loadShader):
  55313. (WebCore::loadProgram):
  55314. Utility functions refactored from GLES2Canvas.
  55315. (WebCore::SolidFillShader::SolidFillShader):
  55316. (WebCore::TexShader::TexShader):
  55317. (WebCore::SolidFillShader::create):
  55318. (WebCore::SolidFillShader::use):
  55319. (WebCore::TexShader::create):
  55320. (WebCore::TexShader::use):
  55321. * platform/graphics/chromium/Shader.h: Added.
  55322. 2010-08-26 Brian Weinstein <bweinstein@apple.com>
  55323. Reviewed by Adam Roben.
  55324. User scripts injected at start are not run for plugin and media documents
  55325. <https://bugs.webkit.org/show_bug.cgi?id=44711>
  55326. <rdar://problem/8359288>
  55327. http://trac.webkit.org/changeset/61271 made scripts injected at start run on ImageDocuments,
  55328. but didn't implement this behavior for MediaDocuments and PluginDocuments.
  55329. * loader/MediaDocument.cpp:
  55330. (WebCore::MediaDocumentParser::createDocumentStructure): Make sure we fire dispatchDocumentElementAvailable.
  55331. * loader/PluginDocument.cpp:
  55332. (WebCore::PluginDocumentParser::createDocumentStructure): Ditto.
  55333. 2010-08-26 Peter Kasting <pkasting@google.com>
  55334. Reviewed by Dimitri Glazkov.
  55335. Misc. cleanup split off from bug 32356.
  55336. https://bugs.webkit.org/show_bug.cgi?id=44696
  55337. * WebCore.gyp/WebCore.gyp:
  55338. * dom/Element.cpp:
  55339. (WebCore::localZoomForRenderer):
  55340. * platform/ScrollView.cpp:
  55341. (WebCore::ScrollView::wheelEvent):
  55342. * platform/ScrollView.h:
  55343. * platform/Scrollbar.cpp:
  55344. (WebCore::Scrollbar::scroll):
  55345. * platform/Scrollbar.h:
  55346. (WebCore::Scrollbar::isScrollbar):
  55347. * platform/ScrollbarClient.h:
  55348. (WebCore::ScrollbarClient::~ScrollbarClient):
  55349. * platform/qt/ScrollbarQt.cpp:
  55350. (WebCore::Scrollbar::contextMenu):
  55351. * rendering/RenderBox.h:
  55352. * rendering/RenderLayer.cpp:
  55353. (WebCore::RenderLayer::scroll):
  55354. * rendering/RenderLayer.h:
  55355. * rendering/RenderListBox.h:
  55356. * rendering/RenderTextControlSingleLine.h:
  55357. 2010-08-26 David Hyatt <hyatt@apple.com>
  55358. Reviewed by Simon Fraser.
  55359. https://bugs.webkit.org/show_bug.cgi?id=39647, font face loads do a synchronous recalcStyle(Force)
  55360. on the whole document. Change these calls to do async recalcStyles instead.
  55361. * css/CSSFontSelector.cpp:
  55362. (WebCore::CSSFontSelector::fontLoaded):
  55363. (WebCore::CSSFontSelector::fontCacheInvalidated):
  55364. * dom/Document.cpp:
  55365. (WebCore::Document::scheduleForcedStyleRecalc):
  55366. (WebCore::Document::styleSelectorChanged):
  55367. * dom/Document.h:
  55368. 2010-08-26 Xan Lopez <xlopez@igalia.com>
  55369. Reviewed by Martin Robinson.
  55370. Fix double free (we were passing const memory to a GOwnPtr) by
  55371. getting rid of unneeded temp variable.
  55372. * platform/gtk/FileSystemGtk.cpp:
  55373. (WebCore::directoryName):
  55374. 2010-08-26 Mikhail Naganov <mnaganov@chromium.org>
  55375. Reviewed by Pavel Feldman.
  55376. Web Inspector: Store heap snapshots in InspectorProfilerAgent.
  55377. Change the way heap snapshots are transported to Inspector
  55378. to be aligned with CPU profiles. As a result, the Heap snapshots
  55379. view of Profiles panel was upstreamed into WebCore.
  55380. https://bugs.webkit.org/show_bug.cgi?id=44531
  55381. * English.lproj/localizedStrings.js:
  55382. * GNUmakefile.am:
  55383. * WebCore.gypi:
  55384. * WebCore.pro:
  55385. * WebCore.vcproj/WebCore.vcproj:
  55386. * WebCore.xcodeproj/project.pbxproj:
  55387. * bindings/js/ScriptHeapSnapshot.h: Added.
  55388. (WebCore::ScriptHeapSnapshot::~ScriptHeapSnapshot):
  55389. (WebCore::ScriptHeapSnapshot::title):
  55390. (WebCore::ScriptHeapSnapshot::uid):
  55391. (WebCore::ScriptHeapSnapshot::buildInspectorObjectForHead):
  55392. (WebCore::ScriptHeapSnapshot::ScriptHeapSnapshot):
  55393. * bindings/js/ScriptProfiler.h:
  55394. (WebCore::ScriptProfiler::takeHeapSnapshot):
  55395. * bindings/v8/ScriptHeapSnapshot.cpp: Added.
  55396. (WebCore::ScriptHeapSnapshot::title):
  55397. (WebCore::ScriptHeapSnapshot::uid):
  55398. (WebCore::buildInspectorObjectFor):
  55399. (WebCore::ScriptHeapSnapshot::buildInspectorObjectForHead):
  55400. * bindings/v8/ScriptHeapSnapshot.h: Added.
  55401. (WebCore::ScriptHeapSnapshot::create):
  55402. (WebCore::ScriptHeapSnapshot::~ScriptHeapSnapshot):
  55403. (WebCore::ScriptHeapSnapshot::ScriptHeapSnapshot):
  55404. * bindings/v8/ScriptProfile.cpp:
  55405. (WebCore::buildInspectorObjectFor):
  55406. * bindings/v8/ScriptProfiler.cpp:
  55407. (WebCore::ScriptProfiler::takeHeapSnapshot):
  55408. * bindings/v8/ScriptProfiler.h:
  55409. * inspector/Inspector.idl:
  55410. * inspector/InspectorBackend.cpp:
  55411. * inspector/InspectorBackend.h:
  55412. * inspector/InspectorProfilerAgent.cpp:
  55413. (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
  55414. (WebCore::InspectorProfilerAgent::createSnapshotHeader):
  55415. (WebCore::InspectorProfilerAgent::getProfileHeaders):
  55416. (WebCore::InspectorProfilerAgent::getProfile):
  55417. (WebCore::InspectorProfilerAgent::removeProfile):
  55418. (WebCore::InspectorProfilerAgent::resetState):
  55419. (WebCore::InspectorProfilerAgent::takeHeapSnapshot):
  55420. * inspector/InspectorProfilerAgent.h:
  55421. * inspector/front-end/HeapSnapshotView.js: Added.
  55422. (WebInspector.HeapSnapshotView.profileCallback):
  55423. (WebInspector.HeapSnapshotView.resetCompleted):
  55424. (WebInspector.HeapSnapshotView):
  55425. (WebInspector.HeapSnapshotView.prototype.get statusBarItems):
  55426. (WebInspector.HeapSnapshotView.prototype.get profile):
  55427. (WebInspector.HeapSnapshotView.prototype.set profile):
  55428. (WebInspector.HeapSnapshotView.prototype.show):
  55429. (WebInspector.HeapSnapshotView.prototype.hide):
  55430. (WebInspector.HeapSnapshotView.prototype.resize):
  55431. (WebInspector.HeapSnapshotView.prototype.refresh):
  55432. (WebInspector.HeapSnapshotView.prototype.refreshShowAsPercents):
  55433. (WebInspector.HeapSnapshotView.prototype._deleteSearchMatchedFlags):
  55434. (WebInspector.HeapSnapshotView.prototype.searchCanceled):
  55435. (WebInspector.HeapSnapshotView.prototype.performSearch):
  55436. (WebInspector.HeapSnapshotView.prototype.jumpToFirstSearchResult.WebInspector.CPUProfileView.prototype.jumpToFirstSearchResult.jumpToLastSearchResult.WebInspector.CPUProfileView.prototype.jumpToLastSearchResult.jumpToNextSearchResult.WebInspector.CPUProfileView.prototype.jumpToNextSearchResult.jumpToPreviousSearchResult.WebInspector.CPUProfileView.prototype.jumpToPreviousSearchResult.showingFirstSearchResult.WebInspector.CPUProfileView.prototype.showingFirstSearchResult.showingLastSearchResult.WebInspector.CPUProfileView.prototype.showingLastSearchResult._jumpToSearchResult.WebInspector.CPUProfileView.prototype._jumpToSearchResult.refreshVisibleData):
  55437. (WebInspector.HeapSnapshotView.prototype._changeBase.resetCompleted):
  55438. (WebInspector.HeapSnapshotView.prototype._changeBase):
  55439. (WebInspector.HeapSnapshotView.prototype._createSnapshotDataGridList):
  55440. (WebInspector.HeapSnapshotView.prototype._getProfiles):
  55441. (WebInspector.HeapSnapshotView.prototype._loadProfile.loadedCallback):
  55442. (WebInspector.HeapSnapshotView.prototype._loadProfile):
  55443. (WebInspector.HeapSnapshotView.prototype._mouseDownInDataGrid):
  55444. (WebInspector.HeapSnapshotView.prototype.get _isShowingAsPercent):
  55445. (WebInspector.HeapSnapshotView.prototype._percentClicked):
  55446. (WebInspector.HeapSnapshotView.prototype._prepareProfile.mergeRetainers):
  55447. (WebInspector.HeapSnapshotView.prototype._prepareProfile):
  55448. (WebInspector.HeapSnapshotView.prototype._resetDataGridList.profileLoaded):
  55449. (WebInspector.HeapSnapshotView.prototype._resetDataGridList):
  55450. (WebInspector.HeapSnapshotView.prototype._sortData):
  55451. (WebInspector.HeapSnapshotView.prototype._updateBaseOptions):
  55452. (WebInspector.HeapSnapshotView.prototype._updatePercentButton):
  55453. (WebInspector.HeapSnapshotView.prototype._updateSummaryGraph):
  55454. (WebInspector.HeapSnapshotView.SearchHelper.operations.LESS):
  55455. (WebInspector.HeapSnapshotView.SearchHelper.operations.LESS_OR_EQUAL):
  55456. (WebInspector.HeapSnapshotView.SearchHelper.operations.EQUAL):
  55457. (WebInspector.HeapSnapshotView.SearchHelper.operations.GREATER_OR_EQUAL):
  55458. (WebInspector.HeapSnapshotView.SearchHelper.operations.GREATER):
  55459. (WebInspector.HeapSnapshotView.SearchHelper.parseOperationAndNumber):
  55460. (WebInspector.HeapSummaryCalculator):
  55461. (WebInspector.HeapSummaryCalculator.prototype.computeSummaryValues):
  55462. (WebInspector.HeapSummaryCalculator.prototype.formatValue):
  55463. (WebInspector.HeapSummaryCalculator.prototype.get showAsPercent):
  55464. (WebInspector.HeapSummaryCalculator.prototype.set showAsPercent):
  55465. (WebInspector.HeapSummaryCountCalculator):
  55466. (WebInspector.HeapSummaryCountCalculator.prototype._highFromLow):
  55467. (WebInspector.HeapSummaryCountCalculator.prototype._valueToString):
  55468. (WebInspector.HeapSummarySizeCalculator):
  55469. (WebInspector.HeapSummarySizeCalculator.prototype._highFromLow):
  55470. (WebInspector.HeapSnapshotDataGridNodeWithRetainers):
  55471. (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.get _hasRetainers):
  55472. (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.get _parent):
  55473. (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype._populate):
  55474. (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.produceDiff):
  55475. (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.sort):
  55476. (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.signForDelta):
  55477. (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.showDeltaAsPercent):
  55478. (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.getTotalCount):
  55479. (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.getTotalSize):
  55480. (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.get countPercent):
  55481. (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.get sizePercent):
  55482. (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.get countDeltaPercent):
  55483. (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.get sizeDeltaPercent):
  55484. (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.get data):
  55485. (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.createCell):
  55486. (WebInspector.HeapSnapshotDataGridNode):
  55487. (WebInspector.HeapSnapshotDataGridList):
  55488. (WebInspector.HeapSnapshotDataGridList.prototype.appendChild):
  55489. (WebInspector.HeapSnapshotDataGridList.prototype.insertChild):
  55490. (WebInspector.HeapSnapshotDataGridList.prototype.removeChildren):
  55491. (WebInspector.HeapSnapshotDataGridList.prototype.populateChildren):
  55492. (WebInspector.HeapSnapshotDataGridList.propertyComparator.comparator):
  55493. (WebInspector.HeapSnapshotDataGridList.propertyComparator):
  55494. (WebInspector.HeapSnapshotDataGridRetainerNode):
  55495. (WebInspector.HeapSnapshotDataGridRetainerNode.prototype.get sizePercent):
  55496. (WebInspector.HeapSnapshotDataGridRetainerNode.prototype.get sizeDeltaPercent):
  55497. (WebInspector.HeapSnapshotDataGridRetainerNode.prototype._calculateRetainers):
  55498. (WebInspector.HeapSnapshotProfileType):
  55499. (WebInspector.HeapSnapshotProfileType.prototype.get buttonTooltip):
  55500. (WebInspector.HeapSnapshotProfileType.prototype.get buttonStyle):
  55501. (WebInspector.HeapSnapshotProfileType.prototype.buttonClicked):
  55502. (WebInspector.HeapSnapshotProfileType.prototype.get welcomeMessage):
  55503. (WebInspector.HeapSnapshotProfileType.prototype.createSidebarTreeElementForProfile):
  55504. (WebInspector.HeapSnapshotProfileType.prototype.createView):
  55505. * inspector/front-end/ProfileView.js:
  55506. (WebInspector.CPUProfileView):
  55507. (WebInspector.CPUProfileType.prototype.createSidebarTreeElementForProfile):
  55508. * inspector/front-end/ProfilesPanel.js:
  55509. (WebInspector.ProfilesPanel.prototype.addProfileHeader):
  55510. (WebInspector.ProfilesPanel.prototype.removeProfileHeader):
  55511. (WebInspector.ProfilesPanel.prototype.getProfiles):
  55512. (WebInspector.ProfilesPanel.prototype.updateProfile):
  55513. (WebInspector.ProfileSidebarTreeElement):
  55514. (WebInspector.ProfileSidebarTreeElement.prototype.get mainTitle):
  55515. * inspector/front-end/WebKit.qrc:
  55516. * inspector/front-end/inspector.css:
  55517. (.heap-snapshot-sidebar-tree-item .icon):
  55518. (.heap-snapshot-sidebar-tree-item.small .icon):
  55519. (.heap-snapshot-view):
  55520. (.heap-snapshot-view.visible):
  55521. (.heap-snapshot-view .data-grid):
  55522. (.heap-snapshot-view .data-grid th.count-column):
  55523. (.heap-snapshot-view .data-grid td.count-column):
  55524. (.heap-snapshot-view .data-grid th.size-column):
  55525. (.heap-snapshot-view .data-grid td.size-column):
  55526. (.heap-snapshot-view .data-grid th.countDelta-column):
  55527. (.heap-snapshot-view .data-grid td.countDelta-column):
  55528. (.heap-snapshot-view .data-grid th.sizeDelta-column):
  55529. (.heap-snapshot-view .data-grid td.sizeDelta-column):
  55530. (#heap-snapshot-summary-container):
  55531. (.heap-snapshot-summary):
  55532. (.heap-snapshot-summary canvas.summary-graph):
  55533. (.heap-snapshot-summary-label):
  55534. * inspector/front-end/inspector.html:
  55535. * inspector/front-end/inspector.js:
  55536. (WebInspector._createPanels):
  55537. 2010-08-25 David Hyatt <hyatt@apple.com>
  55538. Reviewed by Simon Fraser.
  55539. <rdar://problem/8302217> recalcStyles called immediately on each change when updating document-level stylesheets
  55540. https://bugs.webkit.org/show_bug.cgi?id=36303
  55541. Parameterize updateStyleSelector to optionally defer the forced style recalc following the rebuilding of the
  55542. sheets used by the CSSStyleSelector. Rename the method to styleSelectorChanged(). Add the capability to do
  55543. a forced style recalc to the style recalc timer.
  55544. * css/CSSMutableStyleDeclaration.cpp:
  55545. (WebCore::CSSMutableStyleDeclaration::setNeedsStyleRecalc):
  55546. * css/CSSStyleSheet.cpp:
  55547. (WebCore::CSSStyleSheet::styleSheetChanged):
  55548. * css/CSSVariablesDeclaration.cpp:
  55549. (WebCore::CSSVariablesDeclaration::setNeedsStyleRecalc):
  55550. * dom/Document.cpp:
  55551. (WebCore::Document::Document):
  55552. (WebCore::Document::scheduleStyleRecalc):
  55553. (WebCore::Document::updateStyleIfNeeded):
  55554. (WebCore::Document::updateLayoutIgnorePendingStylesheets):
  55555. (WebCore::Document::clearPageUserSheet):
  55556. (WebCore::Document::clearPageGroupUserSheets):
  55557. (WebCore::Document::processHttpEquiv):
  55558. (WebCore::Document::setSelectedStylesheetSet):
  55559. (WebCore::Document::removePendingSheet):
  55560. (WebCore::Document::styleSelectorChanged):
  55561. (WebCore::Document::setInPageCache):
  55562. * dom/Document.h:
  55563. (WebCore::):
  55564. * dom/ProcessingInstruction.cpp:
  55565. (WebCore::ProcessingInstruction::removedFromDocument):
  55566. * dom/StyleElement.cpp:
  55567. (WebCore::StyleElement::removedFromDocument):
  55568. * dom/XMLDocumentParser.cpp:
  55569. (WebCore::XMLDocumentParser::end):
  55570. * dom/XMLDocumentParserLibxml2.cpp:
  55571. (WebCore::XMLDocumentParser::doEnd):
  55572. * html/HTMLDocument.cpp:
  55573. (WebCore::HTMLDocument::determineParseMode):
  55574. * html/HTMLLinkElement.cpp:
  55575. (WebCore::HTMLLinkElement::setDisabledState):
  55576. (WebCore::HTMLLinkElement::process):
  55577. (WebCore::HTMLLinkElement::removedFromDocument):
  55578. * page/Frame.cpp:
  55579. (WebCore::Frame::setPrinting):
  55580. (WebCore::Frame::reapplyStyles):
  55581. * page/FrameView.cpp:
  55582. (WebCore::FrameView::layout):
  55583. * page/Page.cpp:
  55584. (WebCore::Page::setViewMode):
  55585. * rendering/RenderBlock.cpp:
  55586. (WebCore::RenderBlock::setDesiredColumnCountAndWidth):
  55587. * svg/SVGFontFaceElement.cpp:
  55588. (WebCore::SVGFontFaceElement::rebuildFontFace):
  55589. (WebCore::SVGFontFaceElement::removeFromMappedElementSheet):
  55590. 2010-08-24 Vangelis Kokkevis <vangelis@chromium.org>
  55591. Reviewed by Kenneth Russell.
  55592. [chromium] Implementing clipping for composited layers. Two
  55593. types of clipping are added: Scissoring for layers that don't
  55594. contain any rotations and stencil-buffer based clipping for
  55595. all other layers.
  55596. https://bugs.webkit.org/show_bug.cgi?id=44573
  55597. Tests: Compositor layout tests that test clipping such as
  55598. compositing/geometry/{clip.html, clipping-foreground.html} now
  55599. work properly.
  55600. * platform/graphics/chromium/LayerChromium.cpp:
  55601. (WebCore::LayerChromium::SharedValues::SharedValues):
  55602. (WebCore::LayerChromium::getDrawRect):
  55603. (WebCore::LayerChromium::drawAsMask):
  55604. * platform/graphics/chromium/LayerChromium.h:
  55605. * platform/graphics/chromium/LayerRendererChromium.cpp:
  55606. (WebCore::LayerRendererChromium::drawLayers):
  55607. (WebCore::LayerRendererChromium::drawLayerIntoStencilBuffer):
  55608. (WebCore::LayerRendererChromium::drawLayersRecursive):
  55609. (WebCore::LayerRendererChromium::scissorToRect):
  55610. (WebCore::LayerRendererChromium::initializeSharedObjects):
  55611. * platform/graphics/chromium/LayerRendererChromium.h:
  55612. 2010-08-25 Kenneth Russell <kbr@google.com>
  55613. Reviewed by Dimitri Glazkov.
  55614. Expose Vector3 and associated operations
  55615. https://bugs.webkit.org/show_bug.cgi?id=44666
  55616. No new tests; ran several 3D CSS demos and did full layout test
  55617. run. New code paths have also been tested by new calling code
  55618. which will be checked in soon.
  55619. * platform/graphics/transforms/TransformationMatrix.cpp:
  55620. (WebCore::decompose):
  55621. * platform/graphics/transforms/TransformationMatrix.h:
  55622. (WebCore::Vector3::Vector3):
  55623. (WebCore::Vector3::x):
  55624. (WebCore::Vector3::y):
  55625. (WebCore::Vector3::z):
  55626. (WebCore::Vector3::setX):
  55627. (WebCore::Vector3::setY):
  55628. (WebCore::Vector3::setZ):
  55629. (WebCore::Vector3::set):
  55630. (WebCore::Vector3::operator =):
  55631. (WebCore::Vector3::operator +):
  55632. (WebCore::Vector3::operator -):
  55633. (WebCore::Vector3::operator[]):
  55634. (WebCore::Vector3::length):
  55635. (WebCore::Vector3::lengthSquared):
  55636. (WebCore::Vector3::scaleTo):
  55637. (WebCore::Vector3::normalize):
  55638. (WebCore::Vector3::dot):
  55639. (WebCore::Vector3::combine):
  55640. (WebCore::Vector3::cross):
  55641. 2010-08-26 Mikhail Naganov <mnaganov@chromium.org>
  55642. Reviewed by Pavel Feldman.
  55643. Web Inspector: fix CPU profile header entries doubling on Inspector re-opening.
  55644. https://bugs.webkit.org/show_bug.cgi?id=44685
  55645. * inspector/front-end/ProfilesPanel.js:
  55646. (WebInspector.ProfilesPanel.prototype.show):
  55647. 2010-08-26 Eric Carlson <eric.carlson@apple.com>
  55648. Reviewed by Darin Adler and Maciej Stachowiak.
  55649. https://bugs.webkit.org/show_bug.cgi?id=44013
  55650. HTMLMediaElement should delay document load event
  55651. Test: media/video-delay-load-event.html
  55652. * dom/Document.cpp:
  55653. (WebCore::Document::Document): Initialize incrementLoadEventDelayCount.
  55654. (WebCore::Document::decrementLoadEventDelayCount): New, decrement incrementLoadEventDelayCount
  55655. and call loader->checkCompleted() when it reaches zero.
  55656. * dom/Document.h:
  55657. (WebCore::Document::incrementLoadEventDelayCount): New.
  55658. (WebCore::Document::isDelayingLoadEvent): New.
  55659. * html/HTMLMediaElement.cpp:
  55660. (WebCore::HTMLMediaElement::~HTMLMediaElement): Stop delaying the load event if necessary.
  55661. (WebCore::HTMLMediaElement::willMoveToNewOwnerDocument): Ditto.
  55662. (WebCore::HTMLMediaElement::didMoveToNewOwnerDocument): Delay the load event if we don't the
  55663. meta data for the movie yet.
  55664. (WebCore::HTMLMediaElement::prepareForLoad): Delay the load event.
  55665. (WebCore::HTMLMediaElement::selectMediaResource): Don't delay the load event when there are
  55666. no more sources to consider. Don't change m_delayingTheLoadEvent directly, call
  55667. setShouldDelayLoadEvent() instead.
  55668. (WebCore::HTMLMediaElement::waitForSourceChange): Stop delaying the load event.
  55669. (WebCore::HTMLMediaElement::noneSupported): Ditto.
  55670. (WebCore::HTMLMediaElement::mediaEngineError): Ditto.
  55671. (WebCore::HTMLMediaElement::setReadyState): Ditto.
  55672. (WebCore::HTMLMediaElement::userCancelledLoad): Ditto.
  55673. (WebCore::HTMLMediaElement::setShouldDelayLoadEvent): New, increment/decrement the document's
  55674. load event delay count.
  55675. * html/HTMLMediaElement.h:
  55676. * loader/FrameLoader.cpp:
  55677. (WebCore::FrameLoader::checkCompleted): See if the document wants to delay completion for
  55678. elements that don't go through a FrameLoader.
  55679. (WebCore::FrameLoader::checkCallImplicitClose): Ditto
  55680. * page/Frame.cpp:
  55681. 2010-08-26 Dan Bernstein <mitz@apple.com>
  55682. Reviewed by Simon Fraser.
  55683. Fix the same issue as https://bugs.webkit.org/show_bug.cgi?id=41585
  55684. but this time for the -webkit-font-smoothing property.
  55685. Updated fast/css/text-rendering-priority.html to cover all properties that
  55686. affect the font.
  55687. * css/CSSPropertyNames.in: Moved text-rendering to the “high priority” section at the top.
  55688. * css/CSSStyleSelector.cpp:
  55689. (WebCore::CSSStyleSelector::styleForElement): Assert that the font is not dirtied by
  55690. applying any of the “low priority” properties, but still handle the case that the assertion
  55691. is false.
  55692. (WebCore::CSSStyleSelector::applyDeclarations): Updated compile-time assertion.
  55693. 2010-08-26 Martin Robinson <mrobinson@igalia.com>
  55694. Reviewed by Xan Lopez.
  55695. [GTK] The GNUmakefile.am files contain a myriad of confusing preprocessor and compiler flag definitions
  55696. https://bugs.webkit.org/show_bug.cgi?id=44624
  55697. Clean up GNUmakefile.am.
  55698. * GNUmakefile.am: Remove some WebKit includes from webcore_cppflags. These
  55699. includes are added to the build line by the top-level GNUmakefile.am, since
  55700. WebCore isn't build as an intermediate library.
  55701. 2010-08-26 Yury Semikhatsky <yurys@chromium.org>
  55702. Unreviewed. Revert r66103 since Qt tests are failing.
  55703. * inspector/Inspector.idl:
  55704. * inspector/InspectorController.cpp:
  55705. (WebCore::InspectorController::inspectedPageDestroyed):
  55706. (WebCore::InspectorController::close):
  55707. * inspector/InspectorFrontendClient.h:
  55708. * inspector/InspectorFrontendHost.cpp:
  55709. * inspector/InspectorFrontendHost.h:
  55710. * inspector/InspectorFrontendHost.idl:
  55711. * inspector/front-end/InspectorFrontendHostStub.js:
  55712. * inspector/front-end/inspector.js:
  55713. (WebInspector.inspectedPageDestroyed):
  55714. 2010-08-26 Yury Semikhatsky <yurys@chromium.org>
  55715. Reviewed by Pavel Feldman.
  55716. REGRESSION: Crash occurs at objc_msgSend when closing a window that is displaying the web inspector
  55717. https://bugs.webkit.org/show_bug.cgi?id=44230
  55718. * inspector/Inspector.idl:
  55719. * inspector/InspectorController.cpp:
  55720. (WebCore::InspectorController::inspectedPageDestroyed):
  55721. (WebCore::InspectorController::close):
  55722. * inspector/InspectorFrontendClient.h:
  55723. * inspector/InspectorFrontendHost.cpp:
  55724. (WebCore::InspectorFrontendHost::disconnectFromBackend): don't try to notify InspectorController
  55725. that frontend closes if InspectorController triggered the action.
  55726. * inspector/InspectorFrontendHost.h:
  55727. * inspector/InspectorFrontendHost.idl:
  55728. * inspector/front-end/InspectorFrontendHostStub.js:
  55729. (.WebInspector.InspectorFrontendHostStub.prototype.disconnectFromBackend):
  55730. * inspector/front-end/inspector.js:
  55731. (WebInspector.disconnectFromBackend):
  55732. 2010-08-26 Ilya Tikhonovsky <loislo@chromium.org>
  55733. Reviewed by Yury Semikhatsky.
  55734. WebInspector: It would be better to have an explicit type check for the all
  55735. arguments of InspectorBackend functions on front-end side.
  55736. https://bugs.webkit.org/show_bug.cgi?id=44684
  55737. * inspector/CodeGeneratorInspector.pm:
  55738. 2010-08-26 Ilya Tikhonovsky <loislo@chromium.org>
  55739. Reviewed by Yury Semikhatsky.
  55740. WebInspector: It would be better to rename setBool, pushBool and asBool accessors
  55741. to setBoolean, pushBoolean and asBoolean for better matching with the results of
  55742. JS typeof operator.
  55743. https://bugs.webkit.org/show_bug.cgi?id=44680
  55744. * bindings/js/ScriptProfile.cpp:
  55745. (WebCore::buildInspectorObjectFor):
  55746. * bindings/v8/ScriptProfile.cpp:
  55747. (WebCore::buildInspectorObjectFor):
  55748. * inspector/CodeGeneratorInspector.pm:
  55749. * inspector/InspectorController.cpp:
  55750. (WebCore::InspectorController::buildObjectForCookie):
  55751. * inspector/InspectorDOMAgent.cpp:
  55752. (WebCore::InspectorDOMAgent::buildObjectForEventListener):
  55753. (WebCore::InspectorDOMAgent::populateObjectWithStyleProperties):
  55754. (WebCore::InspectorDOMAgent::buildObjectForStyleSheet):
  55755. (WebCore::InspectorDOMAgent::buildObjectForRule):
  55756. * inspector/InspectorDOMStorageResource.cpp:
  55757. (WebCore::InspectorDOMStorageResource::bind):
  55758. * inspector/InspectorResource.cpp:
  55759. (WebCore::InspectorResource::updateScriptObject):
  55760. * inspector/InspectorValues.cpp:
  55761. (WebCore::InspectorValue::asBoolean):
  55762. (WebCore::InspectorBasicValue::asBoolean):
  55763. (WebCore::InspectorBasicValue::asNumber):
  55764. (WebCore::InspectorBasicValue::writeJSON):
  55765. (WebCore::InspectorObject::getBoolean):
  55766. * inspector/InspectorValues.h:
  55767. (WebCore::InspectorValue::):
  55768. (WebCore::InspectorBasicValue::InspectorBasicValue):
  55769. (WebCore::InspectorObject::setBoolean):
  55770. (WebCore::InspectorArray::pushBoolean):
  55771. * inspector/ScriptBreakpoint.cpp:
  55772. (WebCore::ScriptBreakpoint::sourceBreakpointsFromInspectorObject):
  55773. (WebCore::ScriptBreakpoint::inspectorObjectFromSourceBreakpoints):
  55774. * inspector/TimelineRecordFactory.cpp:
  55775. (WebCore::TimelineRecordFactory::createTimerInstallData):
  55776. (WebCore::TimelineRecordFactory::createResourceSendRequestData):
  55777. (WebCore::TimelineRecordFactory::createResourceFinishData):
  55778. 2010-08-26 Girish Ramakrishnan <girish@forwardbias.in>
  55779. Reviewed by Simon Hausmann.
  55780. [Qt] Set the clipRect correctly in windowed and windowless mode.
  55781. In Windowed mode, the values are in page coordinates. In Windowless
  55782. mode the values are in drawable coordinates. Setting these values is
  55783. purely academic since they are not used by Flash. However, there is a
  55784. possibility that plugins might infer a 'null' clipRect to mean 'invisible'.
  55785. https://bugs.webkit.org/show_bug.cgi?id=44594
  55786. * plugins/qt/PluginViewQt.cpp:
  55787. (WebCore::PluginView::setNPWindowIfNeeded):
  55788. 2010-08-26 Pavel Podivilov <podivilov@chromium.org>
  55789. Reviewed by Pavel Feldman.
  55790. Web Inspector: enable debugger after resources are pushed to front-end
  55791. https://bugs.webkit.org/show_bug.cgi?id=44673
  55792. * inspector/InspectorController.cpp:
  55793. (WebCore::InspectorController::connectFrontend):
  55794. (WebCore::InspectorController::populateScriptObjects):
  55795. 2010-08-26 Nikolas Zimmermann <nzimmermann@rim.com>
  55796. Reviewed by Dirk Schulze.
  55797. text-shadow is not respected in RenderSVGText::repaintRectInLocalCoordinates()
  55798. https://bugs.webkit.org/show_bug.cgi?id=44616
  55799. Centralize code to calculate the shadow extents in ShadowData.
  55800. Respect textShadow() when calculating the repaint rect of RenderSVGText.
  55801. Tests: svg/css/composite-shadow-text.svg
  55802. transitions/svg-text-shadow-transition.html
  55803. * rendering/RenderObject.cpp:
  55804. (WebCore::RenderObject::adjustRectForOutlineAndShadow):
  55805. * rendering/RenderSVGRoot.cpp:
  55806. (WebCore::RenderSVGRoot::repaintRectInLocalCoordinates):
  55807. (WebCore::RenderSVGRoot::computeRectForRepaint):
  55808. * rendering/RenderSVGText.cpp:
  55809. (WebCore::RenderSVGText::repaintRectInLocalCoordinates):
  55810. * rendering/SVGRenderSupport.cpp:
  55811. (WebCore::SVGRenderSupport::computeRectForRepaint):
  55812. (WebCore::SVGRenderSupport::prepareToRenderSVGContent):
  55813. (WebCore::SVGRenderSupport::finishRenderSVGContent):
  55814. (WebCore::SVGRenderSupport::intersectRepaintRectWithResources):
  55815. * rendering/style/SVGRenderStyle.cpp:
  55816. * rendering/style/SVGRenderStyle.h:
  55817. * rendering/style/ShadowData.cpp:
  55818. (WebCore::calculateShadowExtent):
  55819. (WebCore::ShadowData::adjustRectForShadow):
  55820. * rendering/style/ShadowData.h:
  55821. 2010-08-25 Xan Lopez <xlopez@igalia.com>
  55822. Reviewed by Martin Robinson.
  55823. [GTK] Rework event definition in the DOM bindings
  55824. https://bugs.webkit.org/show_bug.cgi?id=44597
  55825. Define DOM events in the base classes that implement EventTarget,
  55826. since theoretically you can dispatch any event to any of those
  55827. classes whether it makes sense semantically or not.
  55828. All the existing events in WebKit are not listed anywhere in the
  55829. IDL files, so we need to have the list in the generator script.
  55830. * bindings/scripts/CodeGeneratorGObject.pm:
  55831. 2010-08-25 Ilya Tikhonovsky <loislo@chromium.org>
  55832. Reviewed by Pavel Feldman.
  55833. WebInspector: as far as we have 'seq' property in the each inspector message
  55834. it would be better to remove explicit callId argument from Inspector.idl functions
  55835. declarations.
  55836. https://bugs.webkit.org/show_bug.cgi?id=44617
  55837. * WebCore.xcodeproj/project.pbxproj:
  55838. * inspector/CodeGeneratorInspector.pm:
  55839. * inspector/Inspector.idl:
  55840. * inspector/front-end/AuditRules.js:
  55841. (WebInspector.AuditRules.UnusedCssRule.prototype.doRun):
  55842. (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.receivedImages):
  55843. * inspector/front-end/BreakpointManager.js:
  55844. (WebInspector.BreakpointManager.prototype._setBreakpointOnBackend):
  55845. * inspector/front-end/CSSStyleModel.js:
  55846. (WebInspector.CSSStyleModel.prototype.getStylesAsync):
  55847. (WebInspector.CSSStyleModel.prototype.getComputedStyleAsync):
  55848. (WebInspector.CSSStyleModel.prototype.setRuleSelector):
  55849. (WebInspector.CSSStyleModel.prototype.addRule):
  55850. (WebInspector.CSSStyleModel.prototype.toggleStyleEnabled):
  55851. (WebInspector.CSSStyleModel.prototype.setCSSText):
  55852. (WebInspector.CSSStyleModel.prototype.applyStyleText):
  55853. * inspector/front-end/DOMAgent.js:
  55854. (WebInspector.DOMAgent.prototype.getChildNodesAsync):
  55855. (WebInspector.DOMAgent.prototype.setAttributeAsync):
  55856. (WebInspector.DOMAgent.prototype.removeAttributeAsync):
  55857. (WebInspector.DOMAgent.prototype.setTextNodeValueAsync):
  55858. (WebInspector.ApplicationCache.getApplicationCachesAsync):
  55859. (WebInspector.Cookies.getCookiesAsync):
  55860. (WebInspector.EventListeners.getEventListenersForNodeAsync):
  55861. * inspector/front-end/DOMStorage.js:
  55862. (WebInspector.DOMStorage.prototype.getEntries):
  55863. (WebInspector.DOMStorage.prototype.setItem):
  55864. (WebInspector.DOMStorage.prototype.removeItem):
  55865. * inspector/front-end/Database.js:
  55866. (WebInspector.Database.prototype.getTableNames):
  55867. (WebInspector.Database.prototype.executeSql):
  55868. * inspector/front-end/ElementsPanel.js:
  55869. (WebInspector.ElementsPanel.prototype.setDocument):
  55870. * inspector/front-end/ElementsTreeOutline.js:
  55871. (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted):
  55872. ():
  55873. * inspector/front-end/InjectedScriptAccess.js:
  55874. (InjectedScriptAccess._installHandler.InjectedScriptAccess.prototype.methodName):
  55875. (InjectedScriptAccess._installHandler):
  55876. * inspector/front-end/MetricsSidebarPane.js:
  55877. (WebInspector.MetricsSidebarPane.prototype.update):
  55878. (WebInspector.MetricsSidebarPane.prototype.editingCommitted):
  55879. * inspector/front-end/ProfileView.js:
  55880. (WebInspector.CPUProfileView):
  55881. * inspector/front-end/ProfilesPanel.js:
  55882. * inspector/front-end/ResourcesPanel.js:
  55883. (WebInspector.getResourceContent):
  55884. * inspector/front-end/ScriptView.js:
  55885. (WebInspector.ScriptView.prototype.setupSourceFrameIfNeeded):
  55886. * inspector/front-end/ScriptsPanel.js:
  55887. (WebInspector.ScriptsPanel.prototype.editScriptSource):
  55888. * inspector/front-end/inspector.js:
  55889. (WebInspector.doLoadedDone):
  55890. 2010-08-26 Kwang Yul Seo <skyul@company100.net>
  55891. Reviewed by Kent Tamura.
  55892. Add ENABLE(INDEXED_DATABASE) guard
  55893. https://bugs.webkit.org/show_bug.cgi?id=44659
  55894. Build fix for ports with index database disabled.
  55895. * storage/IDBKeyPathBackendImpl.cpp:
  55896. 2010-08-26 Girish Ramakrishnan <girish@forwardbias.in>
  55897. Reviewed by Ariya Hidayat.
  55898. [Qt] Replace QLibrary("libgdk-x11-2.0.so.0") with QLibrary("libgdk-x11-2.0", 0)
  55899. https://bugs.webkit.org/show_bug.cgi?id=44618
  55900. * plugins/qt/PluginViewQt.cpp:
  55901. (WebCore::getPluginDisplay):
  55902. 2010-08-26 Adam Barth <abarth@webkit.org>
  55903. Reviewed by Sam Weinig.
  55904. Deploy adoptPtr to WebCore/loader
  55905. https://bugs.webkit.org/show_bug.cgi?id=44591
  55906. This patch covers the easy cases. There are a handful of tougher cases
  55907. that I'm leaving to a future patch. I filed one bug about a possible
  55908. memory leak and I emailed webkit-dev about some infrastructure we'll
  55909. need to tackle some of the harder cases.
  55910. * loader/CrossOriginAccessControl.cpp:
  55911. (WebCore::createAllowedCrossOriginResponseHeadersSet):
  55912. (WebCore::isOnAccessControlResponseHeaderWhitelist):
  55913. * loader/DocLoader.cpp:
  55914. (WebCore::DocLoader::requestPreload):
  55915. * loader/DocumentLoader.cpp:
  55916. (WebCore::DocumentLoader::DocumentLoader):
  55917. (WebCore::DocumentLoader::addAllArchiveResources):
  55918. (WebCore::DocumentLoader::addArchiveResource):
  55919. * loader/DocumentThreadableLoader.cpp:
  55920. (WebCore::DocumentThreadableLoader::DocumentThreadableLoader):
  55921. (WebCore::DocumentThreadableLoader::didReceiveResponse):
  55922. * loader/PingLoader.cpp:
  55923. (WebCore::PingLoader::loadImage):
  55924. * loader/ProgressTracker.cpp:
  55925. (WebCore::ProgressTracker::incrementProgress):
  55926. * loader/RedirectScheduler.cpp:
  55927. (WebCore::RedirectScheduler::scheduleRedirect):
  55928. (WebCore::RedirectScheduler::scheduleLocationChange):
  55929. (WebCore::RedirectScheduler::scheduleFormSubmission):
  55930. (WebCore::RedirectScheduler::scheduleRefresh):
  55931. (WebCore::RedirectScheduler::scheduleHistoryNavigation):
  55932. * loader/WorkerThreadableLoader.cpp:
  55933. (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveData):
  55934. * loader/icon/IconDatabase.cpp:
  55935. (WebCore::readySQLiteStatement):
  55936. * loader/icon/IconLoader.cpp:
  55937. (WebCore::IconLoader::create):
  55938. 2010-08-26 Alejandro G. Castro <alex@igalia.com>
  55939. Reviewed by Dan Bernstein.
  55940. shadowSize parameter is used to pass shadow offset in the
  55941. GraphicsContext::setShadow and getShadow functions
  55942. https://bugs.webkit.org/show_bug.cgi?id=44603
  55943. Change the shadowSize parameter ot the functions getShadow and
  55944. setShadow in GraphicsContext to shadowOffset which is the current
  55945. use of that parameter in the code.
  55946. * platform/graphics/GraphicsContext.cpp:
  55947. (WebCore::GraphicsContext::setShadow):
  55948. (WebCore::GraphicsContext::clearShadow):
  55949. (WebCore::GraphicsContext::getShadow):
  55950. * platform/graphics/GraphicsContext.h:
  55951. * platform/graphics/GraphicsContextPrivate.h:
  55952. * platform/graphics/cairo/FontCairo.cpp:
  55953. (WebCore::Font::drawGlyphs):
  55954. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  55955. (WebCore::GraphicsContext::calculateShadowBufferDimensions):
  55956. (WebCore::drawPathShadow):
  55957. (WebCore::drawBorderlessRectShadow):
  55958. (WebCore::GraphicsContext::setPlatformShadow):
  55959. * platform/graphics/cairo/ImageCairo.cpp:
  55960. (WebCore::BitmapImage::draw):
  55961. * platform/graphics/chromium/FontChromiumWin.cpp:
  55962. (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
  55963. (WebCore::Font::drawComplexText):
  55964. * platform/graphics/gtk/FontGtk.cpp:
  55965. (WebCore::Font::drawComplexText):
  55966. * platform/graphics/mac/FontMac.mm:
  55967. (WebCore::Font::drawGlyphs):
  55968. * platform/graphics/qt/ImageQt.cpp:
  55969. (WebCore::BitmapImage::draw):
  55970. * platform/graphics/qt/StillImageQt.cpp:
  55971. (WebCore::StillImage::draw):
  55972. * platform/graphics/qt/GraphicsContextQt:
  55973. (WebCore::GraphicsContext::setPlatformShadow):
  55974. * platform/graphics/skia/SkiaFontWin.cpp:
  55975. (WebCore::windowsCanHandleDrawTextShadow):
  55976. * platform/graphics/win/FontCGWin.cpp:
  55977. (WebCore::drawGDIGlyphs):
  55978. (WebCore::Font::drawGlyphs):
  55979. * platform/graphics/wince/GraphicsContextWince.cpp:
  55980. (WebCore::GraphicsContext::fillRoundedRect):
  55981. (WebCore::GraphicsContext::drawText):
  55982. 2010-08-25 Sheriff Bot <webkit.review.bot@gmail.com>
  55983. Unreviewed, rolling out r66074.
  55984. http://trac.webkit.org/changeset/66074
  55985. https://bugs.webkit.org/show_bug.cgi?id=44660
  55986. Chromium canary turned red (Requested by yuzo on #webkit).
  55987. * bindings/generic/RuntimeEnabledFeatures.cpp:
  55988. * bindings/generic/RuntimeEnabledFeatures.h:
  55989. * bindings/js/JSXMLHttpRequestCustom.cpp:
  55990. (WebCore::JSXMLHttpRequest::responseText):
  55991. * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
  55992. (WebCore::V8XMLHttpRequest::responseTextAccessorGetter):
  55993. * xml/XMLHttpRequest.cpp:
  55994. (WebCore::XMLHttpRequest::responseText):
  55995. (WebCore::XMLHttpRequest::responseXML):
  55996. (WebCore::XMLHttpRequest::open):
  55997. (WebCore::XMLHttpRequest::abort):
  55998. (WebCore::XMLHttpRequest::clearResponse):
  55999. (WebCore::XMLHttpRequest::didFinishLoading):
  56000. * xml/XMLHttpRequest.h:
  56001. * xml/XMLHttpRequest.idl:
  56002. 2010-08-25 Mark Rowe <mrowe@apple.com>
  56003. Reviewed by Dan Bernstein.
  56004. <rdar://problem/8205479> WebCore's icon database often prevents Safari from being killable via sudden termination
  56005. We need to ensure that each call to disableSuddenTermination is balanced by a corresponding call to enableSuddenTermination.
  56006. It's possbile for several calls to IconDatabase::wakeSyncThread to correspond to only a single iteration of the loop within
  56007. IconDatabase::syncThreadMainLoop. This results in the sudden termination disable count growing without bound rather than
  56008. being balanced when the work completes. We can prevent this by ensuring that we only disable sudden termination once for each
  56009. corresponding iteration of the sync thread's main loop.
  56010. * loader/icon/IconDatabase.cpp:
  56011. (WebCore::IconDatabase::IconDatabase):
  56012. (WebCore::IconDatabase::wakeSyncThread): Only disable sudden termination if it has not yet been disabled for this iteration of
  56013. the sync thread's main loop.
  56014. (WebCore::IconDatabase::syncThreadMainLoop): Clear the flag indicating that sudden termination has been disabled after reenabling it
  56015. so that future calls to wakeSyncThread disable sudden termination once more.
  56016. * loader/icon/IconDatabase.h:
  56017. 2010-08-25 Michael Nordman <michaeln@google.com>
  56018. Reviewed by David Levin.
  56019. https://bugs.webkit.org/show_bug.cgi?id=44133
  56020. IDL bindings for XmlHttpRequest.responseBlob support, doesn't do anything yet.
  56021. Adds two new attributes, asBlob and responseBlob.
  56022. Runtime disabled by default, also behind a new ENABLE_XHR_RESPONSE_BLOB compile time guard.
  56023. No new tests, just adding some stubs.
  56024. * bindings/generic/RuntimeEnabledFeatures.cpp:
  56025. * bindings/generic/RuntimeEnabledFeatures.h:
  56026. (WebCore::RuntimeEnabledFeatures::setResponseBlobEnabled):
  56027. (WebCore::RuntimeEnabledFeatures::responseBlobEnabled):
  56028. (WebCore::RuntimeEnabledFeatures::asBlobEnabled):
  56029. * bindings/js/JSXMLHttpRequestCustom.cpp:
  56030. (WebCore::JSXMLHttpRequest::responseText): Changed to allow an exceptional return path.
  56031. * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
  56032. (WebCore::V8XMLHttpRequest::responseTextAccessorGetter): Changed to allow an exceptional return path.
  56033. * xml/XMLHttpRequest.cpp:
  56034. (WebCore::XMLHttpRequest::responseText): Changed to raise an exception when accessed with asBlob set to true.
  56035. (WebCore::XMLHttpRequest::responseXML): Changed to raise an exception when accessed with asBlob set to true.
  56036. (WebCore::XMLHttpRequest::responseBlob): Added stub method, returns 0 for now.
  56037. (WebCore::XMLHttpRequest::setAsBlob): Sets the asBlob attribute, raises exception if called at an inappropriate time.
  56038. (WebCore::XMLHttpRequest::open): Resets asBlob to false, the default value.
  56039. (WebCore::XMLHttpRequest::abort): Clears m_responseBlob.
  56040. (WebCore::XMLHttpRequest::clearResponse): Clears m_responseBlob.
  56041. (WebCore::XMLHttpRequest::didFinishLoading): Added a FIXME to populate m_responseBlob.
  56042. * xml/XMLHttpRequest.h:
  56043. (WebCore::XMLHttpRequest::asBlob):
  56044. * xml/XMLHttpRequest.idl:
  56045. 2010-08-24 Victoria Kirst <vrk@google.com>
  56046. Reviewed by Darin Fisher.
  56047. Adding a means of communication between WebKit/WebCore and
  56048. chromium in order to share video frames. This adds the necessary
  56049. WebKit-side classes and methods, but does not actually use them
  56050. yet - that will be committed in a separate patch after the
  56051. corresponding Chromium side is committed.
  56052. https://bugs.webkit.org/show_bug.cgi?id=44539
  56053. No new tests, as these new classes/APIs are not yet used.
  56054. * platform/graphics/chromium/VideoFrameChromium.h: Added.
  56055. (WebCore::VideoFrameChromium::):
  56056. * platform/graphics/chromium/VideoFrameProvider.h: Added.
  56057. * platform/graphics/chromium/VideoLayerChromium.cpp:
  56058. (WebCore::VideoLayerChromium::create):
  56059. (WebCore::VideoLayerChromium::VideoLayerChromium):
  56060. * platform/graphics/chromium/VideoLayerChromium.h:
  56061. 2010-08-25 Kenneth Russell <kbr@google.com>
  56062. Reviewed by Simon Fraser.
  56063. Source data passed to TypedArray creators should be const
  56064. https://bugs.webkit.org/show_bug.cgi?id=44649
  56065. Compiled and ran existing WebGL tests to verify.
  56066. * html/canvas/Float32Array.cpp:
  56067. (WebCore::Float32Array::create):
  56068. * html/canvas/Float32Array.h:
  56069. * html/canvas/TypedArrayBase.h:
  56070. (WebCore::TypedArrayBase::create):
  56071. 2010-08-25 Eric Seidel <eric@webkit.org>
  56072. Unreviewed, just removing a dead enum.
  56073. Remove endTagRequirement now that the LegacyHTMLDocumentParser is dead
  56074. https://bugs.webkit.org/show_bug.cgi?id=44626
  56075. Remove HTMLTagStatus since it's not used anymore.
  56076. * html/HTMLElement.h:
  56077. 2010-08-25 Chris Fleizach <cfleizach@apple.com>
  56078. Reviewed by David Kilzer.
  56079. AX: CSS first letter text transform causes crash
  56080. https://bugs.webkit.org/show_bug.cgi?id=44352
  56081. Test: accessibility/first-letter-text-transform-causes-crash.html
  56082. * accessibility/AccessibilityRenderObject.cpp:
  56083. (WebCore::nextContinuation):
  56084. 2010-08-25 Eric Seidel <eric@webkit.org>
  56085. Reviewed by Adam Barth.
  56086. Remove endTagRequirement now that the LegacyHTMLDocumentParser is dead
  56087. https://bugs.webkit.org/show_bug.cgi?id=44626
  56088. Serialization is covered by a bunch of tests. innerHTML behavior is sadly not.
  56089. In either case, this is just moving code and should have no functional change.
  56090. * editing/markup.cpp:
  56091. (WebCore::elementCannotHaveEndTag):
  56092. (WebCore::MarkupAccumulator::shouldSelfClose):
  56093. (WebCore::MarkupAccumulator::appendEndMarkup):
  56094. (WebCore::serializeNodesWithNamespaces):
  56095. * html/HTMLAnchorElement.h:
  56096. * html/HTMLAreaElement.h:
  56097. * html/HTMLBRElement.h:
  56098. * html/HTMLBaseElement.h:
  56099. * html/HTMLBaseFontElement.h:
  56100. * html/HTMLBlockquoteElement.h:
  56101. * html/HTMLBodyElement.h:
  56102. * html/HTMLCanvasElement.cpp:
  56103. * html/HTMLCanvasElement.h:
  56104. * html/HTMLDListElement.h:
  56105. * html/HTMLDataGridCellElement.h:
  56106. * html/HTMLDataGridColElement.h:
  56107. * html/HTMLDirectoryElement.h:
  56108. * html/HTMLDivElement.h:
  56109. * html/HTMLElement.cpp:
  56110. (WebCore::HTMLElement::nodeName):
  56111. (WebCore::HTMLElement::ieForbidsInsertHTML):
  56112. (WebCore::HTMLElement::deprecatedCreateContextualFragment):
  56113. (WebCore::HTMLElement::setInnerText):
  56114. (WebCore::HTMLElement::setOuterText):
  56115. * html/HTMLElement.h:
  56116. * html/HTMLEmbedElement.h:
  56117. * html/HTMLFontElement.h:
  56118. * html/HTMLFormControlElement.h:
  56119. * html/HTMLFormElement.h:
  56120. * html/HTMLFrameElement.h:
  56121. * html/HTMLFrameSetElement.h:
  56122. * html/HTMLHRElement.h:
  56123. * html/HTMLHeadElement.h:
  56124. * html/HTMLHeadingElement.h:
  56125. * html/HTMLHtmlElement.h:
  56126. * html/HTMLIFrameElement.h:
  56127. * html/HTMLImageElement.h:
  56128. * html/HTMLInputElement.h:
  56129. * html/HTMLIsIndexElement.h:
  56130. * html/HTMLLIElement.h:
  56131. * html/HTMLLinkElement.h:
  56132. * html/HTMLMapElement.h:
  56133. * html/HTMLMarqueeElement.h:
  56134. * html/HTMLMenuElement.h:
  56135. * html/HTMLMetaElement.h:
  56136. * html/HTMLModElement.h:
  56137. * html/HTMLOListElement.h:
  56138. * html/HTMLOptionElement.h:
  56139. * html/HTMLParagraphElement.h:
  56140. * html/HTMLParamElement.h:
  56141. * html/HTMLPlugInElement.h:
  56142. * html/HTMLPreElement.h:
  56143. * html/HTMLQuoteElement.h:
  56144. * html/HTMLScriptElement.h:
  56145. * html/HTMLSourceElement.h:
  56146. * html/HTMLStyleElement.h:
  56147. * html/HTMLTableCaptionElement.h:
  56148. * html/HTMLTableCellElement.h:
  56149. * html/HTMLTableColElement.cpp:
  56150. * html/HTMLTableColElement.h:
  56151. * html/HTMLTableElement.h:
  56152. * html/HTMLTableRowElement.h:
  56153. * html/HTMLTableSectionElement.h:
  56154. * html/HTMLUListElement.h:
  56155. 2010-08-20 Zhenyao Mo <zmo@google.com>
  56156. Reviewed by Kenneth Russell.
  56157. WebGL must enforce restrictions even if running on OpenGL ES 2.0
  56158. https://bugs.webkit.org/show_bug.cgi?id=42908
  56159. * html/canvas/WebGLFramebuffer.cpp:
  56160. (WebCore::WebGLFramebuffer::getColorBufferFormat): Get format at given level instead of 0.
  56161. * html/canvas/WebGLRenderingContext.cpp: Add two new flags and use them to replace the original isGLES2Compliant().
  56162. (WebCore::WebGLRenderingContext::WebGLRenderingContext):
  56163. (WebCore::WebGLRenderingContext::bindTexture):
  56164. (WebCore::WebGLRenderingContext::blendEquation):
  56165. (WebCore::WebGLRenderingContext::blendEquationSeparate):
  56166. (WebCore::WebGLRenderingContext::bufferData):
  56167. (WebCore::WebGLRenderingContext::bufferSubData):
  56168. (WebCore::WebGLRenderingContext::checkFramebufferStatus):
  56169. (WebCore::WebGLRenderingContext::clear):
  56170. (WebCore::WebGLRenderingContext::copyTexImage2D):
  56171. (WebCore::WebGLRenderingContext::copyTexSubImage2D):
  56172. (WebCore::WebGLRenderingContext::disable):
  56173. (WebCore::WebGLRenderingContext::drawArrays):
  56174. (WebCore::WebGLRenderingContext::drawElements):
  56175. (WebCore::WebGLRenderingContext::enable):
  56176. (WebCore::WebGLRenderingContext::generateMipmap):
  56177. (WebCore::WebGLRenderingContext::hint):
  56178. (WebCore::WebGLRenderingContext::isEnabled):
  56179. (WebCore::WebGLRenderingContext::texImage2DBase):
  56180. (WebCore::WebGLRenderingContext::texParameter):
  56181. (WebCore::WebGLRenderingContext::isGLES2NPOTStrict):
  56182. (WebCore::WebGLRenderingContext::isErrorGeneratedOnOutOfBoundsAccesses):
  56183. * html/canvas/WebGLRenderingContext.h: Declare two new flags.
  56184. * html/canvas/WebGLTexture.cpp: Get format at given level instead of 0.
  56185. (WebCore::WebGLTexture::getInternalFormat):
  56186. * html/canvas/WebGLTexture.h: Ditto.
  56187. * platform/graphics/GraphicsContext3D.h: Add three new flags.
  56188. * platform/graphics/mac/GraphicsContext3DMac.mm: Ditto.
  56189. (WebCore::GraphicsContext3D::isGLES2NPOTStrict):
  56190. (WebCore::GraphicsContext3D::isErrorGeneratedOnOutOfBoundsAccesses):
  56191. * platform/graphics/qt/GraphicsContext3DQt.cpp: Ditto.
  56192. (WebCore::GraphicsContext3D::isGLES2NPOTStrict):
  56193. (WebCore::GraphicsContext3D::isErrorGeneratedOnOutOfBoundsAccesses):
  56194. 2010-08-25 Brent Fulgham <bfulgham@webkit.org>
  56195. Build correction, no review.
  56196. * WebCore.vcproj/WebCore.vcproj: Add missing implementation
  56197. for PlatformRefPtrCairo.
  56198. 2010-08-25 Cris Neckar <cdn@chromium.org>
  56199. Reviewed by Darin Adler.
  56200. Added abort condition for RenderCounters when traversing a detached render tree.
  56201. https://bugs.webkit.org/show_bug.cgi?id=43812
  56202. Test: fast/css/counters/counter-traverse-object-crash.html
  56203. * rendering/RenderCounter.cpp:
  56204. (WebCore::findPlaceForCounter):
  56205. 2010-08-25 Chris Marrin <cmarrin@apple.com>
  56206. Reviewed by Simon Fraser.
  56207. https://bugs.webkit.org/show_bug.cgi?id=44629
  56208. Add layer consistency checking and fix found crashing bug
  56209. The crash was being caused by some of the calls which mutated
  56210. the sublayer list leaving the list in an inconsistent state.
  56211. This eventually lead to a crash. It would also lead to visual
  56212. artifacts if the crash didn't occur. Added consistency checking
  56213. to catch this and any other inconsistencies in the sublayer list.
  56214. The particular bug in this case was caused by clamping an index
  56215. for insertion to the current size of the sublayer list. CACF uses
  56216. an index equal to the current length to indicate an append operation.
  56217. With tiled layers the apparent size of the list is one less than its
  56218. actual size (to accomodate the layer which holds the list of tiles)
  56219. so this clamping was causing the new layer to get inserted before the
  56220. tile parent. The tile parent was then mistaken for a WKCACFLayer and
  56221. it eventually tried to deref that layer, causing the crash.
  56222. I also added some protection when destroying a WKCACFLayer. The user data
  56223. for the corresponding CACFLayer is now changed to 0xDeadBeef rather than
  56224. null. This allows dangling layers to be more easily identified. This
  56225. value is checked and ASSERTed if seen. I also remove the sublayers
  56226. on destruction to make the consistency checks work properly while
  56227. a layer is being destroyed.
  56228. Test: compositing/tiling/crash-reparent-tiled-layer.html
  56229. * platform/graphics/win/WKCACFLayer.cpp:
  56230. * platform/graphics/win/WKCACFLayer.h:
  56231. * platform/graphics/win/WebTiledLayer.cpp:
  56232. * platform/graphics/win/WebTiledLayer.h:
  56233. 2010-08-25 Ryosuke Niwa <rniwa@webkit.org>
  56234. Reviewed by Darin Adler.
  56235. WebCore::InsertListCommand::modifyRange infinite loop (100% CPU usage)
  56236. https://bugs.webkit.org/show_bug.cgi?id=33668
  56237. The bug was caused by enclosingListChild returning a list child whose enclosing list is
  56238. a sibling of the current list child. Fixed enclosingListChild to traverse upwards
  56239. in the DOM to find the list child which is a sibling of the current list child.
  56240. Also fixed adjacentEnclosingList to only returns the list that belongs to the same outer list.
  56241. In doApplyForSingleParagraph, if the start or the end of currentSelection existed inside a list content
  56242. moved by moveParagraphWithClones, either end could point to a wrong position after the move.
  56243. Fixed this problem by checking this condition upfront and restoring later.
  56244. In doApply, if moveParagraph or moveParagraphWithClones, endOfSelection or startOfLastParagraph
  56245. could be null or orphaned, fixed this problem by indexForVisiblePosition.
  56246. Test: editing/execCommand/insert-list-orphaned-item-with-nested-lists.html
  56247. * editing/InsertListCommand.cpp:
  56248. (WebCore::InsertListCommand::doApply):
  56249. (WebCore::enclosingListChild):
  56250. (WebCore::InsertListCommand::doApplyForSingleParagraph):
  56251. (WebCore::adjacentEnclosingList):
  56252. (WebCore::InsertListCommand::listifyParagraph):
  56253. 2010-08-25 Brent Fulgham <bfulgham@webkit.org>
  56254. Build corrections, no review.
  56255. * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
  56256. Add include for new (missing) "CairoPath.h" class.
  56257. * platform/graphics/cairo/PlatformRefPtrCairo.h: Correct
  56258. include and compilation guards to match coding conventions.
  56259. * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
  56260. Change implementation to match CG version, using the
  56261. FontCustomPlatformData name, rather than the original
  56262. FontCustomPlatformDataCairo.
  56263. * platform/graphics/win/FontCustomPlatformDataCairo.h:
  56264. Same as for the .cpp file.
  56265. 2010-08-25 Krzysztof Czech <k.czech@samsung.com>
  56266. Reviewed by Kenneth Rohde Christiansen.
  56267. [EFL] Crash while calling PopupMenuEfl destructor
  56268. https://bugs.webkit.org/show_bug.cgi?id=44497
  56269. Condition checks if m_view is defined
  56270. before popup is hide
  56271. * platform/efl/PopupMenuEfl.cpp:
  56272. (WebCore::PopupMenuEfl::~PopupMenuEfl):
  56273. 2010-08-24 Ryosuke Niwa <rniwa@webkit.org>
  56274. Reviewed by Tony Chang.
  56275. Creating a link when selecting multiple nodes creates multiple links
  56276. https://bugs.webkit.org/show_bug.cgi?id=30836
  56277. The bug was caused by applyInlineStyleToRange calling addInlineStyleIfNeeded
  56278. on each inline element. Modified applyInlineStyleToRange to call addInlineStyleIfNeeded
  56279. once for all inline elements with the same style difference.
  56280. Because this implies that anchor element may wrap other inline elements when added,
  56281. modified pushDownInlineStyleAroundNode to push down styled elements.
  56282. Removed pushPartiallySelectedAnchorElementsDown from CompositeEditCommand since
  56283. ApplyStyleCommand now correctly pushes down anchors at the start and the end of the selection.
  56284. Test: editing/execCommand/toggle-link.html
  56285. * editing/ApplyStyleCommand.cpp:
  56286. (WebCore::StyleChange::operator==): Added.
  56287. (WebCore::StyleChange::operator!=): Added.
  56288. (WebCore::ApplyStyleCommand::applyInlineStyleToRange): Wraps inline elements with
  56289. the same style difference by one element instead of wrapping each element separately.
  56290. (WebCore::ApplyStyleCommand::extractInlineStyleToPushDown): Extracts styled element.
  56291. (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown): Avoids adding styled element.
  56292. (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): Pushes down styled element.
  56293. (WebCore::ApplyStyleCommand::surroundNodeRangeWithElement): No longer checks inline-ness.
  56294. (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded): Adds style even when m_removeOnly.
  56295. Callers should set addStyledElement = DoNotAddStyledElement to avoid adding styled element.
  56296. * editing/ApplyStyleCommand.h:
  56297. * editing/CompositeEditCommand.cpp: Removed pushPartiallySelectedAnchorElementsDown.
  56298. * editing/CompositeEditCommand.h: Removed pushPartiallySelectedAnchorElementsDown.
  56299. * editing/CreateLinkCommand.cpp:
  56300. (WebCore::CreateLinkCommand::doApply): used to call pushPartiallySelectedAnchorElementsDown.
  56301. * editing/UnlinkCommand.cpp:
  56302. (WebCore::UnlinkCommand::doApply): Used to call pushPartiallySelectedAnchorElementsDown.
  56303. 2010-08-24 Zhenyao Mo <zmo@google.com>
  56304. Reviewed by Kenneth Russell.
  56305. Passing premultiplyAlpha=false to tex{Sub}Image2D loses information (skia)
  56306. https://bugs.webkit.org/show_bug.cgi?id=38282
  56307. Test: fast/canvas/webgl/gl-teximage.html
  56308. * platform/graphics/GraphicsContext3D.cpp: Fix a bug where alpha channel is ignored.
  56309. * platform/graphics/ImageSource.cpp: Add premultiplyAlpha flag.
  56310. (WebCore::ImageSource::ImageSource):
  56311. (WebCore::ImageSource::setData):
  56312. * platform/graphics/ImageSource.h: Ditto.
  56313. * platform/graphics/cg/ImageSourceCG.cpp: Ditto.
  56314. (WebCore::ImageSource::ImageSource):
  56315. * platform/graphics/qt/ImageDecoderQt.cpp: Ditto.
  56316. (WebCore::ImageDecoder::create):
  56317. (WebCore::ImageDecoderQt::ImageDecoderQt):
  56318. (WebCore::ImageDecoderQt::frameCount):
  56319. (WebCore::ImageDecoderQt::forceLoadEverything):
  56320. * platform/graphics/qt/ImageDecoderQt.h: Ditto.
  56321. * platform/graphics/skia/GraphicsContext3DSkia.cpp: Fix the premultiplyAlpha data loss issue in skia.
  56322. (WebCore::GraphicsContext3D::getImageData):
  56323. * platform/image-decoders/ImageDecoder.cpp: Add premultiplyAlpha flag.
  56324. (WebCore::ImageDecoder::create):
  56325. (WebCore::RGBA32Buffer::RGBA32Buffer):
  56326. (WebCore::RGBA32Buffer::operator=):
  56327. * platform/image-decoders/ImageDecoder.h: Ditto.
  56328. (WebCore::RGBA32Buffer::premultiplyAlpha):
  56329. (WebCore::RGBA32Buffer::setPremultiplyAlpha):
  56330. (WebCore::RGBA32Buffer::setRGBA):
  56331. (WebCore::ImageDecoder::ImageDecoder):
  56332. * platform/image-decoders/bmp/BMPImageDecoder.cpp: Ditto.
  56333. (WebCore::BMPImageDecoder::BMPImageDecoder):
  56334. (WebCore::BMPImageDecoder::frameBufferAtIndex):
  56335. * platform/image-decoders/bmp/BMPImageDecoder.h: Ditto.
  56336. * platform/image-decoders/gif/GIFImageDecoder.cpp: Ditto.
  56337. (WebCore::GIFImageDecoder::GIFImageDecoder):
  56338. (WebCore::GIFImageDecoder::frameCount):
  56339. * platform/image-decoders/gif/GIFImageDecoder.h: Ditto.
  56340. * platform/image-decoders/ico/ICOImageDecoder.cpp: Ditto.
  56341. (WebCore::ICOImageDecoder::ICOImageDecoder):
  56342. (WebCore::ICOImageDecoder::frameCount):
  56343. (WebCore::ICOImageDecoder::decodeAtIndex):
  56344. * platform/image-decoders/ico/ICOImageDecoder.h: Ditto.
  56345. * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: Ditto.
  56346. (WebCore::JPEGImageDecoder::JPEGImageDecoder):
  56347. (WebCore::JPEGImageDecoder::frameBufferAtIndex):
  56348. * platform/image-decoders/jpeg/JPEGImageDecoder.h: Ditto.
  56349. * platform/image-decoders/png/PNGImageDecoder.cpp: Ditto.
  56350. (WebCore::PNGImageDecoder::PNGImageDecoder):
  56351. (WebCore::PNGImageDecoder::frameBufferAtIndex):
  56352. * platform/image-decoders/png/PNGImageDecoder.h: Ditto.
  56353. * platform/image-decoders/skia/ImageDecoderSkia.cpp: Ditto.
  56354. (WebCore::RGBA32Buffer::RGBA32Buffer):
  56355. (WebCore::RGBA32Buffer::operator=):
  56356. 2010-08-25 Adam Barth <abarth@webkit.org>
  56357. Reviewed by Eric Seidel.
  56358. Remove XBL
  56359. https://bugs.webkit.org/show_bug.cgi?id=44621
  56360. This patch removes support for XBL. XBL seems cool, but this code is
  56361. old and pretty bitrotten. If we decide to support XBL in the future,
  56362. we can recover this code from this revision. As it stands, it doesn't
  56363. seem worth half-maintaining this code.
  56364. * Android.mk:
  56365. * CMakeLists.txt:
  56366. * GNUmakefile.am:
  56367. * WebCore.gypi:
  56368. * WebCore.pro:
  56369. * WebCore.vcproj/WebCore.vcproj:
  56370. * WebCore.xcodeproj/project.pbxproj:
  56371. * css/CSSComputedStyleDeclaration.cpp:
  56372. (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  56373. * css/CSSParser.cpp:
  56374. (WebCore::CSSParser::parseValue):
  56375. * css/CSSPropertyNames.in:
  56376. * css/CSSStyleSelector.cpp:
  56377. (WebCore::CSSStyleSelector::applyProperty):
  56378. * dom/Document.cpp:
  56379. (WebCore::Document::Document):
  56380. (WebCore::Document::~Document):
  56381. * dom/Document.h:
  56382. * loader/Cache.cpp:
  56383. (WebCore::createResource):
  56384. (WebCore::Cache::getStatistics):
  56385. * loader/Cache.h:
  56386. * loader/CachedResource.h:
  56387. (WebCore::CachedResource::):
  56388. * loader/CachedResourceClient.h:
  56389. (WebCore::CachedResourceClient::setXSLStyleSheet):
  56390. (WebCore::CachedResourceClient::fontLoaded):
  56391. * loader/CachedXBLDocument.cpp: Removed.
  56392. * loader/CachedXBLDocument.h: Removed.
  56393. * loader/DocLoader.cpp:
  56394. (WebCore::DocLoader::canRequest):
  56395. * loader/DocLoader.h:
  56396. * loader/loader.cpp:
  56397. (WebCore::cachedResourceTypeToTargetType):
  56398. (WebCore::Loader::determinePriority):
  56399. * rendering/style/BindingURI.cpp: Removed.
  56400. * rendering/style/BindingURI.h: Removed.
  56401. * rendering/style/RenderStyle.cpp:
  56402. * rendering/style/RenderStyle.h:
  56403. * rendering/style/StyleRareNonInheritedData.cpp:
  56404. (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
  56405. (WebCore::StyleRareNonInheritedData::operator==):
  56406. * rendering/style/StyleRareNonInheritedData.h:
  56407. 2010-08-25 Andreas Kling <andreas.kling@nokia.com>
  56408. Reviewed by Ariya Hidayat.
  56409. [Qt] GraphicsContext: Construct with the correct default LineJoin (MiterJoin)
  56410. We weren't setting it explicitly which caused us to use Qt::MiterJoin when
  56411. we actually want Qt::SvgMiterJoin.
  56412. Fixes display glitches on the "Monster" chrome experiment among other things.
  56413. * platform/graphics/qt/GraphicsContextQt.cpp:
  56414. (WebCore::GraphicsContext::GraphicsContext):
  56415. 2010-08-25 Rafael Antognolli <antognolli@profusion.mobi>
  56416. Unreviewed build fix.
  56417. [EFL] Build fix for revision 66024
  56418. https://bugs.webkit.org/show_bug.cgi?id=44631
  56419. No new features added, so no new tests.
  56420. * CMakeListsEfl.txt: change GRefPtrCairo.cpp by PlatformRefPtrCairo.cpp.
  56421. 2010-08-25 Ryosuke Niwa <rniwa@webkit.org>
  56422. Reviewed by Darin Adler.
  56423. Various designmode=&quot;on&quot;/&quot;off&quot; &amp; execCommand(&quot;Undo&quot;) NULL pointer crashes
  56424. https://bugs.webkit.org/show_bug.cgi?id=32823
  56425. The bug was caused by changeSelectionAfterCommand which updates the selection
  56426. without checking the whether new selection is valid or not.
  56427. Fixed changeSelectionAfterCommand so that it won't update the selection
  56428. when either end of the new selection is orphaned. Also fixed various editing commands
  56429. to exit early if either end of the selection is orphaned.
  56430. Tests: editing/undo/orphaned-selection-crash-bug32823-1.html
  56431. editing/undo/orphaned-selection-crash-bug32823-2.html
  56432. editing/undo/orphaned-selection-crash-bug32823-3.html
  56433. editing/undo/orphaned-selection-crash-bug32823-4.html
  56434. * editing/Editor.cpp:
  56435. (WebCore::Editor::changeSelectionAfterCommand): No longer sets orphaned selection.
  56436. * editing/VisibleSelection.h:
  56437. (WebCore::VisibleSelection::isNonOrphanedRange): Added.
  56438. (WebCore::VisibleSelection::isNonOrphanedCaretOrRange): Added.
  56439. * editing/DeleteSelectionCommand.cpp:
  56440. (WebCore::DeleteSelectionCommand::doApply): Added an early exist. See above.
  56441. * editing/FormatBlockCommand.cpp:
  56442. (WebCore::FormatBlockCommand::doApply): Ditto.
  56443. * editing/IndentOutdentCommand.cpp:
  56444. (WebCore::IndentOutdentCommand::doApply): Ditto.
  56445. * editing/InsertLineBreakCommand.cpp:
  56446. (WebCore::InsertLineBreakCommand::doApply): Ditto.
  56447. * editing/InsertListCommand.cpp:
  56448. (WebCore::InsertListCommand::doApply): Ditto.
  56449. * editing/InsertParagraphSeparatorCommand.cpp:
  56450. (WebCore::InsertParagraphSeparatorCommand::doApply): Ditto.
  56451. * editing/InsertTextCommand.cpp:
  56452. (WebCore::InsertTextCommand::input): Ditto.
  56453. * editing/MoveSelectionCommand.cpp:
  56454. (WebCore::MoveSelectionCommand::doApply): Ditto.
  56455. * editing/RemoveFormatCommand.cpp:
  56456. (WebCore::RemoveFormatCommand::doApply): Ditto.
  56457. * editing/ReplaceSelectionCommand.cpp:
  56458. (WebCore::ReplaceSelectionCommand::doApply): Ditto.
  56459. * editing/TypingCommand.cpp:
  56460. (WebCore::TypingCommand::doApply): Ditto.
  56461. * editing/UnlinkCommand.cpp:
  56462. (WebCore::UnlinkCommand::doApply): Ditto.
  56463. 2010-08-25 Simon Fraser <simon.fraser@apple.com>
  56464. Reviewed by Dan Bernstein.
  56465. Flash content draws in front of site's drop down menu at http://www.monster.com/
  56466. https://bugs.webkit.org/show_bug.cgi?id=41330
  56467. If an iframe with composited content became overlapped, we failed to
  56468. consider that iframe for compositing if it had no RenderLayer, so the layering
  56469. would be incorrect.
  56470. Overlap is detected at painting time, but it's bad for FrameView::setIsOverlapped()
  56471. to call setNeedsStyleRecalc(), because this would cause subsequent calls to
  56472. FrameView::paintContents() in the same painting batch to bail with needsLayout().
  56473. Instead, we do the setNeedsStyleRecalc() from RenderLayerCompositor::notifyIFramesOfCompositingChange(),
  56474. so that the parent document has a chance to update style, and give the iframe a RenderLayer.
  56475. Then setIsOverlapped() simply needs to schedule a layer update, which we do on a timer.
  56476. When dumping layers via Frame::layerTreeAsText(), if a layer update is pending, then
  56477. update the layers.
  56478. Test: compositing/iframes/become-overlapped-iframe.html
  56479. * page/Frame.cpp:
  56480. (WebCore::Frame::layerTreeAsText):
  56481. * page/FrameView.cpp:
  56482. (WebCore::FrameView::setIsOverlapped):
  56483. * rendering/RenderLayerCompositor.cpp:
  56484. (WebCore::RenderLayerCompositor::RenderLayerCompositor):
  56485. (WebCore::RenderLayerCompositor::scheduleCompositingLayerUpdate):
  56486. (WebCore::RenderLayerCompositor::compositingLayerUpdatePending):
  56487. (WebCore::RenderLayerCompositor::updateCompositingLayersTimerFired):
  56488. (WebCore::RenderLayerCompositor::updateCompositingLayers):
  56489. (WebCore::RenderLayerCompositor::notifyIFramesOfCompositingChange):
  56490. * rendering/RenderLayerCompositor.h:
  56491. 2010-08-25 Martin Robinson <mrobinson@igalia.com>
  56492. Reviewed by Gustavo Noronha Silva.
  56493. Cairo and EFL port shouldn't depend on glib.
  56494. https://bugs.webkit.org/show_bug.cgi?id=44354
  56495. No new tests as functionality has not changed.
  56496. Replace occurrences of GRefPtr and adoptGRef with PlatformRefPtr and
  56497. adoptPlatformRef. Rename GRefPtrCairo to PlatformRefPtrCairo.
  56498. * GNUmakefile.am:
  56499. * platform/Cursor.h:
  56500. * platform/graphics/cairo/GRefPtrCairo.cpp: Removed.
  56501. * platform/graphics/cairo/GRefPtrCairo.h: Removed.
  56502. * platform/graphics/cairo/ImageCairo.cpp:
  56503. (WebCore::Image::drawPattern):
  56504. * platform/graphics/cairo/PlatformRefPtrCairo.cpp: Added.
  56505. (WTF::refPlatformPtr):
  56506. (WTF::derefPlatformPtr):
  56507. * platform/graphics/cairo/PlatformRefPtrCairo.h: Added.
  56508. * platform/graphics/gtk/ImageBufferGtk.cpp:
  56509. (WebCore::ImageBuffer::toDataURL):
  56510. * platform/gtk/ClipboardGtk.cpp:
  56511. (WebCore::ClipboardGtk::declareAndWriteDragImage):
  56512. * platform/gtk/CursorGtk.cpp:
  56513. (WebCore::createNamedCursor):
  56514. (WebCore::createCustomCursor):
  56515. (WebCore::Cursor::ensurePlatformCursor):
  56516. * platform/gtk/DataObjectGtk.h:
  56517. * platform/gtk/GRefPtrGtk.cpp:
  56518. (WTF::refPlatformPtr):
  56519. (WTF::derefPlatformPtr):
  56520. * platform/gtk/GRefPtrGtk.h:
  56521. * platform/gtk/PasteboardGtk.cpp:
  56522. (WebCore::Pasteboard::writeImage):
  56523. * platform/gtk/PasteboardHelper.cpp:
  56524. (WebCore::PasteboardHelper::dropAtomsForContext):
  56525. * platform/gtk/PopupMenuGtk.h:
  56526. * platform/gtk/RenderThemeGtk.cpp:
  56527. (WebCore::RenderThemeGtk::RenderThemeGtk):
  56528. (WebCore::paintMozillaGtkWidget):
  56529. * platform/gtk/RenderThemeGtk.h:
  56530. 2010-08-25 Eric Carlson <eric.carlson@apple.com>
  56531. Reviewed by Alexey Proskuryakov.
  56532. HTMLMediaElement.canPlayType must be case insensitive for MIME type.
  56533. https://bugs.webkit.org/show_bug.cgi?id=44577
  56534. * platform/graphics/MediaPlayer.cpp:
  56535. (WebCore::MediaPlayer::load):
  56536. (WebCore::MediaPlayer::supportsType):
  56537. 2010-08-25 Xan Lopez <xlopez@igalia.com>
  56538. Reviewed by Martin Robinson.
  56539. [GTK] CodeGeneratorGObject not picking up FEATURE_DEFINES
  56540. https://bugs.webkit.org/show_bug.cgi?id=44608
  56541. Move FEATURE_DEFINES declaration to the toplevel GNUmakefile.am,
  56542. since it's used there now too.
  56543. * GNUmakefile.am:
  56544. 2010-08-25 Dawit Alemayehu <adawit@kde.org>
  56545. Reviewed by Ariya Hidayat.
  56546. Proper workaround for missing Gtk initialization in Adobe's flash plugins.
  56547. https://bugs.webkit.org/show_bug.cgi?id=44405
  56548. * plugins/qt/PluginPackageQt.cpp:
  56549. (WebCore::initializeGtk):
  56550. (WebCore::PluginPackage::load):
  56551. 2010-08-25 Ilya Tikhonovsky <loislo@chromium.org>
  56552. Reviewed by Yury Semikhatsky.
  56553. WebInspector: InspectorBackendStub.js is not updated when Inspector.idl changes.
  56554. https://bugs.webkit.org/show_bug.cgi?id=44604
  56555. * WebCore.xcodeproj/project.pbxproj:
  56556. 2010-08-25 Pavel Podivilov <podivilov@chromium.org>
  56557. Reviewed by Yury Semikhatsky.
  56558. Web Inspector: don't stop on DOM breakpoints when all breakpoints are deactivated
  56559. https://bugs.webkit.org/show_bug.cgi?id=44509
  56560. * bindings/v8/ScriptDebugServer.cpp:
  56561. (WebCore::ScriptDebugServer::ScriptDebugServer):
  56562. (WebCore::ScriptDebugServer::setBreakpointsActivated):
  56563. (WebCore::ScriptDebugServer::breakProgram):
  56564. * bindings/v8/ScriptDebugServer.h:
  56565. * inspector/InspectorDebuggerAgent.cpp:
  56566. (WebCore::InspectorDebuggerAgent::create):
  56567. 2010-08-25 Yury Semikhatsky <yurys@chromium.org>
  56568. Reviewed by Pavel Feldman.
  56569. Web Inspector: lazily request frontend settings instead of pushing them on connect
  56570. https://bugs.webkit.org/show_bug.cgi?id=44607
  56571. * html/HTMLDocument.cpp:
  56572. (WebCore::HTMLDocument::createParser):
  56573. * inspector/Inspector.idl:
  56574. * inspector/InspectorController.cpp:
  56575. (WebCore::InspectorController::getSettings):
  56576. (WebCore::InspectorController::connectFrontend):
  56577. (WebCore::InspectorController::populateScriptObjects): this method is now called explicitely from the frontend,
  56578. it should be gone eventually once all panels request initial data lazily.
  56579. * inspector/InspectorController.h:
  56580. * inspector/front-end/ProfilesPanel.js:
  56581. (WebInspector.ProfilesPanel.prototype.show):
  56582. (WebInspector.ProfilesPanel.prototype.profilerWasEnabled):
  56583. (WebInspector.ProfilesPanel.prototype._reset):
  56584. * inspector/front-end/Settings.js:
  56585. (WebInspector.Settings):
  56586. (WebInspector.Settings.initialize.populateApplicationSettings):
  56587. (WebInspector.Settings.initialize.populateSessionSettings):
  56588. (WebInspector.Settings.initialize):
  56589. * inspector/front-end/inspector.js:
  56590. (WebInspector.doLoadedDone):
  56591. 2010-08-25 Pavel Feldman <pfeldman@chromium.org>
  56592. Reviewed by Yury Semikhatsky.
  56593. Web Inspector: support checked and disabled context menu items.
  56594. https://bugs.webkit.org/show_bug.cgi?id=44612
  56595. * platform/ContextMenu.cpp:
  56596. (WebCore::ContextMenu::checkOrEnableIfNeeded):
  56597. 2010-08-25 Pavel Feldman <pfeldman@chromium.org>
  56598. Reviewed by Yury Semikhatsky.
  56599. Web Inspector: support disabled and checked context menu items.
  56600. https://bugs.webkit.org/show_bug.cgi?id=44601
  56601. * bindings/js/JSInspectorFrontendHostCustom.cpp:
  56602. (WebCore::JSInspectorFrontendHost::showContextMenu):
  56603. * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
  56604. (WebCore::V8InspectorFrontendHost::showContextMenuCallback):
  56605. * inspector/front-end/ContextMenu.js:
  56606. (WebInspector.ContextMenu.prototype.appendItem):
  56607. 2010-08-25 Zaheer Ahmad <zaheer.mot@gmail.com>
  56608. Reviewed by Xan Lopez.
  56609. [GTK] GTK port doesnt compile with video turned off
  56610. https://bugs.webkit.org/show_bug.cgi?id=44236
  56611. Generate the audio GObject DOM bindings only if video enabled
  56612. * WebCore/GNUMakefile.am
  56613. * WebCore/bindings/gobject/WebKitHTMLElementWrapperFactory.cpp:
  56614. Make the audio code invocation conditional
  56615. 2010-08-24 Pavel Podivilov <podivilov@chromium.org>
  56616. Reviewed by Pavel Feldman.
  56617. Web Inspector: add "Attribute Modified" and "Node Removed" DOM breakpoints
  56618. https://bugs.webkit.org/show_bug.cgi?id=44532
  56619. Test: inspector/dom-breakpoint.html
  56620. * inspector/InspectorDOMAgent.cpp:
  56621. (WebCore::InspectorDOMAgent::setDOMBreakpoint):
  56622. (WebCore::InspectorDOMAgent::removeDOMBreakpoint):
  56623. (WebCore::InspectorDOMAgent::didInsertDOMNode):
  56624. (WebCore::InspectorDOMAgent::didRemoveDOMNode):
  56625. (WebCore::InspectorDOMAgent::didModifyDOMAttr):
  56626. * inspector/front-end/DOMAgent.js:
  56627. * inspector/front-end/ElementsTreeOutline.js:
  56628. (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
  56629. 2010-08-25 Satish Sampath <satish@chromium.org>
  56630. Reviewed by Jeremy Orlow.
  56631. Pass the element's bounds to embedder during speech recognition.
  56632. https://bugs.webkit.org/show_bug.cgi?id=44427
  56633. The embedder would typically want to show a native UI with information, settings etc.
  56634. By passing the display bounds of the html element, the embedder can position the
  56635. native speech recognition UI appropriately.
  56636. * page/SpeechInput.cpp:
  56637. (WebCore::SpeechInput::startRecognition):
  56638. * page/SpeechInput.h:
  56639. * page/SpeechInputClient.h:
  56640. * platform/mock/SpeechInputClientMock.cpp:
  56641. (WebCore::SpeechInputClientMock::startRecognition):
  56642. * platform/mock/SpeechInputClientMock.h:
  56643. * rendering/TextControlInnerElements.cpp:
  56644. (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
  56645. (WebCore::InputFieldSpeechButtonElement::detach):
  56646. 2010-08-25 Yongjun Zhang <yongjun_zhang@apple.com>
  56647. Reviewed by Alexey Proskuryakov.
  56648. https://bugs.webkit.org/show_bug.cgi?id=44461
  56649. Assertion failure at WebCore/platform/network/CredentialStorage.cpp:85.
  56650. Remove the assertion at CredentialStorage.cpp:85 since it is legal to have
  56651. multiple forward slashes after the path component.
  56652. No test needed.
  56653. * platform/network/CredentialStorage.cpp:
  56654. (WebCore::protectionSpaceMapKeyFromURL):
  56655. 2010-08-25 Pavel Feldman <pfeldman@chromium.org>
  56656. Reviewed by Yury Semikhatsky.
  56657. Web Inspector: search in Scripts panel brings ui back to original search view.
  56658. https://bugs.webkit.org/show_bug.cgi?id=44516
  56659. * inspector/front-end/Panel.js:
  56660. (WebInspector.Panel.prototype.searchCanceled):
  56661. (WebInspector.Panel.prototype.jumpToNextSearchResult):
  56662. (WebInspector.Panel.prototype.jumpToPreviousSearchResult):
  56663. * inspector/front-end/ResourcesPanel.js:
  56664. * inspector/front-end/ScriptsPanel.js:
  56665. (WebInspector.ScriptsPanel):
  56666. (WebInspector.ScriptsPanel.prototype.searchCanceled):
  56667. (WebInspector.ScriptsPanel.prototype.performSearch.finishedCallback):
  56668. (WebInspector.ScriptsPanel.prototype.performSearch):
  56669. (WebInspector.ScriptsPanel.prototype.jumpToNextSearchResult):
  56670. (WebInspector.ScriptsPanel.prototype.jumpToPreviousSearchResult):
  56671. 2010-08-25 Kent Tamura <tkent@chromium.org>
  56672. Reviewed by Shinichiro Hamaji
  56673. <input type=number>: Support auto-repeat by mouse press
  56674. https://bugs.webkit.org/show_bug.cgi?id=44476
  56675. Like arrow button of scrollbars, spinbuttons of <input
  56676. type=number> should continue to increase/decrease their values
  56677. while the mouse button is pressed.
  56678. No new tests because the new behavior strongly depends on a timer.
  56679. * rendering/TextControlInnerElements.cpp:
  56680. (WebCore::SpinButtonElement::SpinButtonElement):
  56681. Initializes the timer.
  56682. (WebCore::SpinButtonElement::defaultEventHandler):
  56683. Starts the timer by a mousedown event.
  56684. (WebCore::SpinButtonElement::startRepeatingTimer):
  56685. (WebCore::SpinButtonElement::stopRepeatingTimer):
  56686. (WebCore::SpinButtonElement::repeatingTimerFired):
  56687. * rendering/TextControlInnerElements.h:
  56688. 2010-08-25 Gabor Loki <loki@webkit.org>
  56689. Reviewed by Gavin Barraclough.
  56690. Avoid increasing required alignment of target type warning
  56691. https://bugs.webkit.org/show_bug.cgi?id=43963
  56692. Fix alignment warnings on Qt.
  56693. * bridge/qt/qt_runtime.cpp:
  56694. (JSC::Bindings::convertQVariantToValue):
  56695. * platform/graphics/qt/ImageBufferQt.cpp:
  56696. (WebCore::getImageData):
  56697. (WebCore::putImageData):
  56698. * platform/image-decoders/ImageDecoder.h:
  56699. (WebCore::RGBA32Buffer::getAddr):
  56700. * platform/text/qt/TextCodecQt.cpp:
  56701. (WebCore::TextCodecQt::decode):
  56702. 2010-08-25 Kent Tamura <tkent@chromium.org>
  56703. Reviewed by Shinichiro Hamaji
  56704. Fix a bug that a spin-button doesn't release mouse capturing
  56705. https://bugs.webkit.org/show_bug.cgi?id=44411
  56706. - LeftButton should be checked only for clickEvent.
  56707. Note that this change doesn't change the behavior because
  56708. button() value is initialized with LeftButton even for
  56709. mousemoveEvent.
  56710. - Should pass a SpinButtonElement node to setCapturingMouseEventsNode().
  56711. Test: fast/forms/input-spinbutton-capturing.html
  56712. * rendering/TextControlInnerElements.cpp:
  56713. (WebCore::SpinButtonElement::defaultEventHandler):
  56714. 2010-08-25 Gabor Loki <loki@webkit.org>
  56715. Reviewed by Gavin Barraclough.
  56716. Avoid increasing required alignment of target type warning
  56717. https://bugs.webkit.org/show_bug.cgi?id=43963
  56718. Fix platform independent alignment warnings.
  56719. * loader/CachedMetadata.h:
  56720. (WebCore::CachedMetadata::readUnsigned):
  56721. * platform/text/TextCodecLatin1.cpp:
  56722. (WebCore::TextCodecLatin1::decode):
  56723. 2010-08-25 Patrick Gansterer <paroga@paroga.com>
  56724. Reviewed by Adam Roben.
  56725. Add missing methods at ResourceHandleWin
  56726. https://bugs.webkit.org/show_bug.cgi?id=44453
  56727. * platform/network/win/ResourceHandleWin.cpp:
  56728. (WebCore::ResourceHandle::willLoadFromCache):
  56729. (WebCore::prefetchDNS):
  56730. (WebCore::ResourceHandle::bufferedData):
  56731. (WebCore::ResourceHandle::supportsBufferedData):
  56732. (WebCore::ResourceHandle::loadsBlocked):
  56733. (WebCore::ResourceHandle::platformSetDefersLoading):
  56734. 2010-08-25 Adam Barth <abarth@webkit.org>
  56735. Second attempt to fix Qt build
  56736. * dom/XMLDocumentParserQt.cpp:
  56737. (WebCore::XMLDocumentParser::parseDtd):
  56738. 2010-08-24 Eric Seidel <eric@webkit.org>
  56739. Reviewed by Adam Barth.
  56740. Remove more DTD junk now that the LegacyHTMLDocumentParser is gone
  56741. https://bugs.webkit.org/show_bug.cgi?id=44588
  56742. Just removing dead code, thus no tests.
  56743. * html/HTMLElement.cpp:
  56744. (WebCore::HTMLElement::nodeName):
  56745. * html/HTMLElement.h:
  56746. 2010-08-24 Adam Barth <abarth@webkit.org>
  56747. Qt build fix.
  56748. * dom/XMLDocumentParserQt.cpp:
  56749. (WebCore::XMLDocumentParser::parseStartElement):
  56750. (WebCore::XMLDocumentParser::parseProcessingInstruction):
  56751. (WebCore::XMLDocumentParser::parseCdata):
  56752. (WebCore::XMLDocumentParser::parseComment):
  56753. (WebCore::XMLDocumentParser::parseDtd):
  56754. 2010-08-24 Adam Barth <abarth@webkit.org>
  56755. Reviewed by Eric Seidel.
  56756. Delete HTMLElement::checkDTD
  56757. https://bugs.webkit.org/show_bug.cgi?id=44563
  56758. This function existed to service the LegacyHTMLTreeBuilder. The new
  56759. HTMLTreeBuilder has this logic internalized. Pulling on this thread
  56760. caused me to remove a legacyParserAddChild and to discover some code
  56761. that shouldn't be calling these parser-specific APIs.
  56762. * dom/ContainerNode.cpp:
  56763. (WebCore::ContainerNode::parserAddChild):
  56764. (WebCore::ContainerNode::deprecatedParserAddChild):
  56765. * dom/ContainerNode.h:
  56766. * dom/DOMImplementation.cpp:
  56767. (WebCore::DOMImplementation::createDocument):
  56768. * dom/Node.cpp:
  56769. (WebCore::Node::deprecatedParserAddChild):
  56770. * dom/Node.h:
  56771. * dom/XMLDocumentParser.cpp:
  56772. (WebCore::XMLDocumentParser::enterText):
  56773. * dom/XMLDocumentParser.h:
  56774. * dom/XMLDocumentParserLibxml2.cpp:
  56775. (WebCore::XMLDocumentParser::startElementNs):
  56776. (WebCore::XMLDocumentParser::characters):
  56777. (WebCore::XMLDocumentParser::processingInstruction):
  56778. (WebCore::XMLDocumentParser::cdataBlock):
  56779. (WebCore::XMLDocumentParser::comment):
  56780. (WebCore::XMLDocumentParser::internalSubset):
  56781. * dom/XMLDocumentParserQt.cpp:
  56782. (WebCore::XMLDocumentParser::parse):
  56783. (WebCore::XMLDocumentParser::parseStartElement):
  56784. (WebCore::XMLDocumentParser::parseCharacters):
  56785. (WebCore::XMLDocumentParser::parseProcessingInstruction):
  56786. (WebCore::XMLDocumentParser::parseCdata):
  56787. (WebCore::XMLDocumentParser::parseComment):
  56788. (WebCore::XMLDocumentParser::parseDtd):
  56789. * html/HTMLDataGridElement.cpp:
  56790. * html/HTMLDataGridElement.h:
  56791. * html/HTMLDataGridRowElement.cpp:
  56792. * html/HTMLDataGridRowElement.h:
  56793. * html/HTMLDataListElement.cpp:
  56794. * html/HTMLDataListElement.h:
  56795. * html/HTMLDocument.cpp:
  56796. * html/HTMLDocument.h:
  56797. * html/HTMLElement.cpp:
  56798. * html/HTMLElement.h:
  56799. * html/HTMLFieldSetElement.cpp:
  56800. * html/HTMLFieldSetElement.h:
  56801. * html/HTMLFrameSetElement.cpp:
  56802. * html/HTMLFrameSetElement.h:
  56803. * html/HTMLHeadElement.cpp:
  56804. * html/HTMLHeadElement.h:
  56805. * html/HTMLHeadingElement.cpp:
  56806. * html/HTMLHeadingElement.h:
  56807. * html/HTMLHtmlElement.cpp:
  56808. * html/HTMLHtmlElement.h:
  56809. * html/HTMLKeygenElement.cpp:
  56810. (WebCore::HTMLKeygenElement::HTMLKeygenElement):
  56811. * html/HTMLMapElement.cpp:
  56812. * html/HTMLMapElement.h:
  56813. * html/HTMLMediaElement.cpp:
  56814. * html/HTMLMediaElement.h:
  56815. * html/HTMLNoScriptElement.cpp:
  56816. * html/HTMLNoScriptElement.h:
  56817. * html/HTMLOptGroupElement.cpp:
  56818. * html/HTMLOptGroupElement.h:
  56819. * html/HTMLOptionElement.cpp:
  56820. * html/HTMLOptionElement.h:
  56821. * html/HTMLParagraphElement.cpp:
  56822. * html/HTMLParagraphElement.h:
  56823. * html/HTMLPlugInElement.cpp:
  56824. * html/HTMLPlugInElement.h:
  56825. * html/HTMLScriptElement.h:
  56826. * html/HTMLSelectElement.cpp:
  56827. * html/HTMLSelectElement.h:
  56828. * html/HTMLStyleElement.h:
  56829. * html/HTMLTableColElement.cpp:
  56830. * html/HTMLTableColElement.h:
  56831. * html/HTMLTableElement.cpp:
  56832. * html/HTMLTableElement.h:
  56833. * html/HTMLTableRowElement.cpp:
  56834. * html/HTMLTableRowElement.h:
  56835. * html/HTMLTableSectionElement.cpp:
  56836. * html/HTMLTableSectionElement.h:
  56837. * html/HTMLTextAreaElement.h:
  56838. * html/HTMLTitleElement.h:
  56839. * rendering/MediaControlElements.cpp:
  56840. (WebCore::MediaControlElement::attachToParent):
  56841. (WebCore::MediaControlInputElement::attachToParent):
  56842. * rendering/TextControlInnerElements.cpp:
  56843. (WebCore::TextControlInnerElement::attachInnerElement):
  56844. 2010-08-24 Adam Barth <abarth@webkit.org>
  56845. Reviewed by Eric Seidel.
  56846. Remove tagPriority
  56847. https://bugs.webkit.org/show_bug.cgi?id=44557
  56848. This code used to be used by the old parser. Now it's unused.
  56849. * html/HTMLAnchorElement.h:
  56850. * html/HTMLAppletElement.h:
  56851. * html/HTMLAreaElement.h:
  56852. * html/HTMLAudioElement.h:
  56853. * html/HTMLBRElement.h:
  56854. * html/HTMLBaseElement.h:
  56855. * html/HTMLBaseFontElement.h:
  56856. * html/HTMLBlockquoteElement.h:
  56857. * html/HTMLBodyElement.h:
  56858. * html/HTMLCanvasElement.cpp:
  56859. * html/HTMLCanvasElement.h:
  56860. * html/HTMLDListElement.h:
  56861. * html/HTMLDataGridCellElement.h:
  56862. * html/HTMLDataGridColElement.h:
  56863. * html/HTMLDataGridElement.h:
  56864. * html/HTMLDataGridRowElement.h:
  56865. * html/HTMLDirectoryElement.h:
  56866. * html/HTMLDivElement.h:
  56867. * html/HTMLElement.cpp:
  56868. * html/HTMLElement.h:
  56869. * html/HTMLEmbedElement.h:
  56870. * html/HTMLFieldSetElement.h:
  56871. * html/HTMLFontElement.h:
  56872. * html/HTMLFormControlElement.h:
  56873. * html/HTMLFormElement.h:
  56874. * html/HTMLFrameElement.h:
  56875. * html/HTMLFrameSetElement.h:
  56876. * html/HTMLHRElement.h:
  56877. * html/HTMLHeadElement.h:
  56878. * html/HTMLHeadingElement.h:
  56879. * html/HTMLHtmlElement.h:
  56880. * html/HTMLIFrameElement.h:
  56881. * html/HTMLImageElement.h:
  56882. * html/HTMLInputElement.h:
  56883. * html/HTMLIsIndexElement.h:
  56884. * html/HTMLKeygenElement.h:
  56885. * html/HTMLLIElement.h:
  56886. * html/HTMLLabelElement.h:
  56887. * html/HTMLLinkElement.h:
  56888. * html/HTMLMapElement.h:
  56889. * html/HTMLMarqueeElement.h:
  56890. * html/HTMLMenuElement.h:
  56891. * html/HTMLMetaElement.h:
  56892. * html/HTMLModElement.h:
  56893. * html/HTMLOListElement.h:
  56894. * html/HTMLObjectElement.h:
  56895. * html/HTMLOptionElement.h:
  56896. * html/HTMLParagraphElement.h:
  56897. * html/HTMLParamElement.h:
  56898. * html/HTMLPreElement.h:
  56899. * html/HTMLQuoteElement.h:
  56900. * html/HTMLScriptElement.h:
  56901. * html/HTMLSelectElement.h:
  56902. * html/HTMLSourceElement.h:
  56903. * html/HTMLStyleElement.h:
  56904. * html/HTMLTableCaptionElement.h:
  56905. * html/HTMLTableCellElement.h:
  56906. * html/HTMLTableColElement.cpp:
  56907. * html/HTMLTableColElement.h:
  56908. * html/HTMLTableElement.h:
  56909. * html/HTMLTableRowElement.h:
  56910. * html/HTMLTableSectionElement.h:
  56911. * html/HTMLUListElement.h:
  56912. * html/HTMLVideoElement.h:
  56913. 2010-08-24 Eric Seidel <eric@webkit.org>
  56914. Reviewed by Adam Barth.
  56915. Fix one more html5lib test case for button scoping
  56916. https://bugs.webkit.org/show_bug.cgi?id=44583
  56917. I <3 test driven development.
  56918. * html/HTMLTreeBuilder.cpp:
  56919. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  56920. 2010-08-24 Eric Seidel <eric@webkit.org>
  56921. Reviewed by Adam Barth.
  56922. Remove HTML5 parser testing infrastructure now that we don't need it
  56923. https://bugs.webkit.org/show_bug.cgi?id=44581
  56924. Just removing dead code, no tests.
  56925. * dom/DocumentFragment.cpp:
  56926. * dom/DocumentFragment.h:
  56927. * page/Settings.cpp:
  56928. (WebCore::Settings::Settings):
  56929. * page/Settings.h:
  56930. 2010-08-24 Adam Barth <abarth@webkit.org>
  56931. Reviewed by Eric Seidel.
  56932. Remove unneeded include in HTMLPreloadScanner
  56933. https://bugs.webkit.org/show_bug.cgi?id=44552
  56934. Slowly but steadily sweeping up the dust in the HTML parser.
  56935. * html/HTMLPreloadScanner.cpp:
  56936. * html/HTMLPreloadScanner.h:
  56937. 2010-08-24 Kinuko Yasuda <kinuko@chromium.org>
  56938. Reviewed by Dumitru Daniliuc.
  56939. Implement virtual path utilities for FileSystem API
  56940. https://bugs.webkit.org/show_bug.cgi?id=44132
  56941. No new tests; tests will be added later. (Each DOMFilePath's method is briefly tested locally.)
  56942. * CMakeLists.txt:
  56943. * GNUmakefile.am:
  56944. * WebCore.gypi:
  56945. * WebCore.pro:
  56946. * WebCore.vcproj/WebCore.vcproj:
  56947. * WebCore.xcodeproj/project.pbxproj:
  56948. * storage/DOMFilePath.cpp: Added.
  56949. * storage/DOMFilePath.h: Added.
  56950. 2010-08-24 Adam Barth <abarth@webkit.org>
  56951. Reviewed by Eric Seidel.
  56952. HTMLParserScheduler::create
  56953. https://bugs.webkit.org/show_bug.cgi?id=44551
  56954. * html/HTMLDocumentParser.cpp:
  56955. (WebCore::HTMLDocumentParser::HTMLDocumentParser):
  56956. * html/HTMLParserScheduler.h:
  56957. (WebCore::HTMLParserScheduler::create):
  56958. 2010-08-24 Daniel Bates <dbates@rim.com>
  56959. Fix code comment as per Darin Adler's suggestion in <https://bugs.webkit.org/show_bug.cgi?id=44486#c2>.
  56960. I inadvertently did not update this comment when I landed changeset 65967 <http://trac.webkit.org/changeset/65967>.
  56961. * rendering/RenderListMarker.cpp:
  56962. (WebCore::listMarkerSuffix):
  56963. 2010-08-24 Daniel Bates <dbates@rim.com>
  56964. Reviewed by Darin Adler.
  56965. Suffix for CSS alphabetic list style types should fallback to
  56966. decimal for ordinals outside of their representable range
  56967. https://bugs.webkit.org/show_bug.cgi?id=44486
  56968. Test: fast/lists/w3-css3-list-styles-fallback-style.html
  56969. Fixes an issue where the decimal suffix is not used for
  56970. ordinals that cannot be represented by the alphabetic list
  56971. style type.
  56972. Currently, for ordinals that cannot be represented in the
  56973. alphabetic list style we use the suffix associated with the
  56974. list style. Instead, we should use the suffix for the decimal
  56975. list style ('.'). For instance, when the list style type is
  56976. Afar and the starting ordinal is 0, then we fallback to the
  56977. decimal list style suffix '.' because 0 cannot be represented
  56978. in Afar.
  56979. * rendering/RenderListMarker.cpp:
  56980. (WebCore::toRoman): Moved bounds check into WebCore::effectiveListMarkerType().
  56981. (WebCore::toAlphabetic): Ditto.
  56982. (WebCore::toHebrew): Ditto.
  56983. (WebCore::toArmenian): Ditto.
  56984. (WebCore::toGeorgian): Ditto.
  56985. (WebCore::toCJKIdeographic): Ditto.
  56986. (WebCore::effectiveListMarkerType): Added.
  56987. (WebCore::listMarkerSuffix): Added value parameter to prototype.
  56988. Modified to call WebCore::effectiveListMarkerType.
  56989. (WebCore::listMarkerText): Modified to call WebCore::effectiveListMarkerType().
  56990. (WebCore::RenderListMarker::paint): Modified to pass list item ordinal (i.e. m_listItem->value()) to WebCore::listMarkerSuffix().
  56991. (WebCore::RenderListMarker::calcPrefWidths): Ditto.
  56992. (WebCore::RenderListMarker::getRelativeMarkerRect): Ditto.
  56993. 2010-08-24 Gavin Barraclough <barraclough@apple.com>
  56994. Windows build fix.
  56995. * ForwardingHeaders/wtf/DecimalNumber.h: Added.
  56996. 2010-08-23 Gavin Barraclough <barraclough@apple.com>
  56997. Reviewed by Oliver Hunt.
  56998. https://bugs.webkit.org/show_bug.cgi?id=44487
  56999. * html/LegacyHTMLTreeBuilder.cpp:
  57000. (WebCore::serializeForNumberType):
  57001. Update function call to numberToString.
  57002. 2010-08-24 Eric Seidel <eric@webkit.org>
  57003. Reviewed by Adam Barth.
  57004. XMLDocumentParser needs to implement DocumentParser::detach()
  57005. https://bugs.webkit.org/show_bug.cgi?id=44533
  57006. Test: fast/frames/set-parent-src-synchronously.xhtml
  57007. In the example from the page we were accessing document()
  57008. after DocumentParser::detach() was called. To prevent this
  57009. I added an ASSERT(m_document) to document(), causing many
  57010. test cases to cover the bug shown in bug 44533.
  57011. To fix the bug, I implemented XMLDocumentParser::detach()
  57012. and had it call clearCurrentNodeStack(), thus making
  57013. it impossible for XMLDocumentParser to still have the Document
  57014. on the node stack after detach (which was what was causing this bug).
  57015. While fixing this, I noticed that XMLDocumentParser may have the
  57016. same trouble crashing that the HTMLDocumentParser did when
  57017. synchronously deleted from JS (for example by an iframe navigation).
  57018. I added a test case to cover this and protected the parser after
  57019. the two places it executes scripts.
  57020. * dom/DocumentParser.h:
  57021. (WebCore::DocumentParser::document):
  57022. (WebCore::DocumentParser::isDetached):
  57023. * dom/RawDataDocumentParser.h:
  57024. (WebCore::RawDataDocumentParser::finish):
  57025. * dom/XMLDocumentParser.cpp:
  57026. (WebCore::XMLDocumentParser::append):
  57027. (WebCore::XMLDocumentParser::detach):
  57028. (WebCore::XMLDocumentParser::notifyFinished):
  57029. * dom/XMLDocumentParser.h:
  57030. * dom/XMLDocumentParserLibxml2.cpp:
  57031. (WebCore::XMLDocumentParser::doWrite):
  57032. (WebCore::XMLDocumentParser::endElementNs):
  57033. (WebCore::XMLDocumentParser::resumeParsing):
  57034. * html/HTMLDocumentParser.cpp:
  57035. (WebCore::HTMLDocumentParser::pumpTokenizer):
  57036. (WebCore::HTMLDocumentParser::willPumpLexer):
  57037. (WebCore::HTMLDocumentParser::didPumpLexer):
  57038. (WebCore::HTMLDocumentParser::end):
  57039. (WebCore::HTMLDocumentParser::endIfDelayed):
  57040. (WebCore::HTMLDocumentParser::script):
  57041. * html/HTMLViewSourceParser.cpp:
  57042. (WebCore::HTMLViewSourceParser::updateTokenizerState):
  57043. * html/HTMLViewSourceParser.h:
  57044. (WebCore::HTMLViewSourceParser::document):
  57045. * loader/ImageDocument.cpp:
  57046. (WebCore::ImageDocumentParser::document):
  57047. 2010-08-24 Patrick Gansterer <paroga@paroga.com>
  57048. Reviewed by Adam Roben.
  57049. Add SynchronousLoader for ResourceHandleWin
  57050. https://bugs.webkit.org/show_bug.cgi?id=44452
  57051. * platform/network/win/ResourceHandleWin.cpp:
  57052. (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
  57053. (WebCore::WebCoreSynchronousLoader::didReceiveResponse):
  57054. (WebCore::WebCoreSynchronousLoader::didReceiveData):
  57055. (WebCore::WebCoreSynchronousLoader::didFinishLoading):
  57056. (WebCore::WebCoreSynchronousLoader::didFail):
  57057. (WebCore::ResourceHandle::loadResourceSynchronously):
  57058. 2010-08-24 Ryosuke Niwa <rniwa@webkit.org>
  57059. Unreviewed.
  57060. Replaced soft tab indentation by hard tab indentation for LegacyWebArchive.h.
  57061. * WebCore.xcodeproj/project.pbxproj:
  57062. 2010-08-24 Joseph Pecoraro <joepeck@webkit.org>
  57063. Reviewed by Mark Rowe.
  57064. Web Inspector: RemoteInspectorFrontend can be renamed to InspectorFrontend
  57065. https://bugs.webkit.org/show_bug.cgi?id=44499
  57066. Follow-up. No longer generate the RemoteInspectorFrontend files, just
  57067. generate the required InspectorFrontend files.
  57068. * DerivedSources.make:
  57069. 2010-08-20 Joseph Pecoraro <joepeck@webkit.org>
  57070. Reviewed by Pavel Feldman.
  57071. Web Inspector: Backend Should Provide Full Supported CSS Properties List
  57072. https://bugs.webkit.org/show_bug.cgi?id=40886
  57073. This allows the backend to send the front-end its complete list of
  57074. supported CSS Properties. This is used in CSS Autocompletion and
  57075. CSS Syntax Highlighting to show which styles are supported.
  57076. * css/makeprop.pl: moved CSS properties to the header file.
  57077. * inspector/Inspector.idl: expose getSupportedCSSProperties.
  57078. * inspector/InspectorDOMAgent.cpp:
  57079. (WebCore::InspectorDOMAgent::getSupportedCSSProperties):
  57080. * inspector/InspectorDOMAgent.h:
  57081. * inspector/front-end/CSSCompletions.js:
  57082. (WebInspector.CSSCompletions._firstIndexOfPrefix): handle a possible error case before properties have loaded.
  57083. (WebInspector.CSSCompletions._load): fill up the special array with the received properties.
  57084. * inspector/front-end/SourceCSSTokenizer.js:
  57085. (WebInspector.SourceCSSTokenizer): use the list of support properties from the backend.
  57086. * inspector/front-end/SourceCSSTokenizer.re2js:
  57087. * inspector/front-end/inspector.js: request the list of supported CSS properties on load.
  57088. (WebInspector.doLoadedDone):
  57089. 2010-08-24 Adam Barth <abarth@webkit.org>
  57090. Reviewed by Eric Seidel.
  57091. Delete LegacyHTMLTreeBuilder
  57092. https://bugs.webkit.org/show_bug.cgi?id=44554
  57093. There were some free functions in LegacyHTMLTreeBuilder that needed a
  57094. new home. I've put them in HTMLTreeBuilder, but they'll probably need
  57095. a better home eventually.
  57096. * Android.mk:
  57097. * CMakeLists.txt:
  57098. * GNUmakefile.am:
  57099. * WebCore.gypi:
  57100. * WebCore.pro:
  57101. * WebCore.vcproj/WebCore.vcproj:
  57102. * WebCore.xcodeproj/project.pbxproj:
  57103. * dom/Document.cpp:
  57104. (WebCore::shouldCreateImplicitHead):
  57105. * dom/DocumentParser.h:
  57106. * dom/ScriptableDocumentParser.h:
  57107. * html/HTMLConstructionSite.cpp:
  57108. * html/HTMLFormControlElement.cpp:
  57109. (WebCore::HTMLFormControlElement::removedFromTree):
  57110. * html/HTMLInputElement.cpp:
  57111. * html/HTMLMeterElement.cpp:
  57112. * html/HTMLProgressElement.cpp:
  57113. * html/HTMLTreeBuilder.cpp:
  57114. (WebCore::serializeForNumberType):
  57115. (WebCore::parseToDoubleForNumberType):
  57116. * html/HTMLTreeBuilder.h:
  57117. * html/HTMLViewSourceParser.h:
  57118. * html/LegacyHTMLTreeBuilder.cpp: Removed.
  57119. * html/LegacyHTMLTreeBuilder.h: Removed.
  57120. * html/StepRange.cpp:
  57121. * html/ValidityState.cpp:
  57122. * rendering/RenderSlider.cpp:
  57123. 2010-08-24 Pavel Podivilov <podivilov@chromium.org>
  57124. Reviewed by Yury Semikhatsky.
  57125. Web Inspector: show DOM breakpoints in sidebar pane
  57126. https://bugs.webkit.org/show_bug.cgi?id=44424
  57127. * inspector/front-end/BreakpointManager.js:
  57128. (WebInspector.BreakpointManager.prototype._setBreakpoint):
  57129. (WebInspector.BreakpointManager.prototype._breakpointRemoved):
  57130. (WebInspector.BreakpointManager.prototype._setBreakpointOnBackend):
  57131. (WebInspector.Breakpoint.prototype.set enabled):
  57132. (WebInspector.Breakpoint.prototype.set condition):
  57133. (WebInspector.Breakpoint.prototype.remove):
  57134. * inspector/front-end/BreakpointsSidebarPane.js:
  57135. (WebInspector.BreakpointsSidebarPane):
  57136. (WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint):
  57137. (WebInspector.BreakpointsSidebarPane.prototype._breakpointRemoved):
  57138. (WebInspector.BreakpointsSidebarPane.prototype._contextMenuEventFired):
  57139. (WebInspector.BreakpointItem):
  57140. (WebInspector.BreakpointItem.prototype.element):
  57141. (WebInspector.BreakpointItem.prototype.remove):
  57142. (WebInspector.BreakpointItem.prototype._checkboxClicked):
  57143. (WebInspector.BreakpointItem.prototype._enableChanged):
  57144. (WebInspector.BreakpointItem.prototype._removed):
  57145. (WebInspector.JSBreakpointItem):
  57146. (WebInspector.JSBreakpointItem.prototype._textChanged):
  57147. (WebInspector.DOMBreakpointItem):
  57148. (WebInspector.DOMBreakpointItem.prototype.compareTo):
  57149. * inspector/front-end/DOMAgent.js:
  57150. (WebInspector.DOMBreakpointManager):
  57151. (WebInspector.DOMBreakpointManager.prototype.setBreakpoint):
  57152. (WebInspector.DOMBreakpointManager.prototype.removeBreakpointsForNode):
  57153. (WebInspector.DOMBreakpointManager.prototype._breakpointRemoved):
  57154. (WebInspector.DOMBreakpoint):
  57155. (WebInspector.DOMBreakpoint.prototype.get enabled):
  57156. (WebInspector.DOMBreakpoint.prototype.set enabled):
  57157. (WebInspector.DOMBreakpoint.prototype.remove):
  57158. * inspector/front-end/ElementsPanel.js:
  57159. (WebInspector.ElementsPanel):
  57160. (WebInspector.ElementsPanel.prototype.reset):
  57161. * inspector/front-end/ElementsTreeOutline.js:
  57162. (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
  57163. * inspector/front-end/ScriptView.js:
  57164. (WebInspector.ScriptView):
  57165. * inspector/front-end/ScriptsPanel.js:
  57166. (WebInspector.ScriptsPanel):
  57167. (WebInspector.ScriptsPanel.prototype._breakpointAdded):
  57168. (WebInspector.ScriptsPanel.prototype.reset):
  57169. * inspector/front-end/SourceFrame.js:
  57170. (WebInspector.SourceFrame):
  57171. (WebInspector.SourceFrame.prototype.set visible):
  57172. (WebInspector.SourceFrame.prototype.addBreakpoint):
  57173. (WebInspector.SourceFrame.prototype._breakpointRemoved):
  57174. (WebInspector.SourceFrame.prototype._addBreakpointToSource):
  57175. (WebInspector.SourceFrame.prototype._removeBreakpointFromSource):
  57176. (WebInspector.SourceFrame.prototype._contextMenu.addConditionalBreakpoint):
  57177. (WebInspector.SourceFrame.prototype._contextMenu):
  57178. (WebInspector.SourceFrame.prototype._mouseDown):
  57179. * inspector/front-end/SourceView.js:
  57180. (WebInspector.SourceView):
  57181. (WebInspector.SourceView.prototype.updateLocalContent):
  57182. * inspector/front-end/inspector.js:
  57183. (WebInspector.createJSBreakpointsSidebarPane.breakpointAdded):
  57184. (WebInspector.createJSBreakpointsSidebarPane):
  57185. (WebInspector.createDOMBreakpointsSidebarPane.breakpointAdded):
  57186. (WebInspector.createDOMBreakpointsSidebarPane):
  57187. (WebInspector.doLoadedDone):
  57188. 2010-08-24 Stephen White <senorblanco@chromium.org>
  57189. Reviewed by Dumitru Daniliuc.
  57190. Speculative fix for layout test failures on Chrome/Linux.
  57191. https://bugs.webkit.org/show_bug.cgi?id=44550
  57192. Tests fast/canvas/arc-crash.html, fast/canvas/canvas-state-intact-after-putImageData.html, and fast/canvas/toDataURL-supportedTypes.html are failing on Chrome/Linux. Can't repro the failure locally, but this fix can't hurt.
  57193. * html/canvas/CanvasRenderingContext2D.cpp:
  57194. (WebCore::CanvasRenderingContext2D::paintRenderingResultsToCanvas):
  57195. 2010-08-24 Dumitru Daniliuc <dumi@chromium.org>
  57196. Reviewed by Dimitri Glazkov.
  57197. Fix the NodeFilter wrapper and the binding for acceptNode.
  57198. https://bugs.webkit.org/show_bug.cgi?id=44542
  57199. * bindings/v8/V8DOMWrapper.cpp:
  57200. (WebCore::V8DOMWrapper::wrapNativeNodeFilter): This function
  57201. should always create a filter. V8NodeFilterCondition::acceptNode()
  57202. will check if the given object can be used as a filter, and throw
  57203. an exception if it can't.
  57204. * bindings/v8/V8NodeFilterCondition.cpp:
  57205. (WebCore::V8NodeFilterCondition::acceptNode): Update this binding
  57206. to do the same thing that the JS binding does.
  57207. 2010-08-24 Simon Fraser <simon.fraser@apple.com>
  57208. Reviewed by Tony Chang.
  57209. After r65681, caret no longer displays promptly while editing form fields
  57210. https://bugs.webkit.org/show_bug.cgi?id=44294
  57211. The caret no longer eagerly updates its rect on every paint, so we have
  57212. to manually update it after scrolling the selection into view when
  57213. the selection changes.
  57214. Tested by the pixel results of fast/forms/input-text-scroll-left-on-blur.html
  57215. * page/Frame.cpp:
  57216. (WebCore::Frame::revealSelection):
  57217. 2010-08-24 Adam Barth <abarth@webkit.org>
  57218. Reviewed by Darin Adler.
  57219. Remove redundant call to OwnPtr::clear
  57220. https://bugs.webkit.org/show_bug.cgi?id=44548
  57221. As pointed out by Darin, this call to clear is not needed.
  57222. * editing/TextIterator.cpp:
  57223. (WebCore::plainTextToMallocAllocatedBuffer):
  57224. 2010-08-24 Adam Barth <abarth@webkit.org>
  57225. Reviewed by Eric Seidel.
  57226. HTMLTokenizer::create
  57227. https://bugs.webkit.org/show_bug.cgi?id=44477
  57228. * html/HTMLDocumentParser.cpp:
  57229. (WebCore::HTMLDocumentParser::HTMLDocumentParser):
  57230. * html/HTMLPreloadScanner.cpp:
  57231. (WebCore::HTMLPreloadScanner::HTMLPreloadScanner):
  57232. (WebCore::HTMLPreloadScanner::scan):
  57233. (WebCore::HTMLPreloadScanner::processToken):
  57234. * html/HTMLPreloadScanner.h:
  57235. * html/HTMLTokenizer.h:
  57236. (WebCore::HTMLTokenizer::create):
  57237. * html/HTMLViewSourceParser.cpp:
  57238. (WebCore::HTMLViewSourceParser::HTMLViewSourceParser):
  57239. (WebCore::HTMLViewSourceParser::pumpTokenizer):
  57240. (WebCore::HTMLViewSourceParser::updateTokenizerState):
  57241. * html/HTMLViewSourceParser.h:
  57242. 2010-08-24 Adam Barth <abarth@webkit.org>
  57243. Reviewed by Darin Adler.
  57244. Remove references to LegacyHTMLTreebuilder from HTMLTreeBuilder
  57245. https://bugs.webkit.org/show_bug.cgi?id=44544
  57246. * html/HTMLDocumentParser.cpp:
  57247. * html/HTMLDocumentParser.h:
  57248. * html/HTMLTreeBuilder.cpp:
  57249. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  57250. (WebCore::HTMLTreeBuilder::FragmentParsingContext::FragmentParsingContext):
  57251. (WebCore::HTMLTreeBuilder::FragmentParsingContext::document):
  57252. (WebCore::HTMLTreeBuilder::constructTreeFromToken):
  57253. (WebCore::HTMLTreeBuilder::finished):
  57254. * html/HTMLTreeBuilder.h:
  57255. (WebCore::HTMLTreeBuilder::FragmentParsingContext::contextElement):
  57256. 2010-08-24 Xan Lopez <xlopez@igalia.com>
  57257. Try to fix GTK+ build.
  57258. Move GTK_API_VERSION_2 define out.
  57259. * GNUmakefile.am:
  57260. 2010-08-24 Simon Fraser <simon.fraser@apple.com>
  57261. Reviewed by Sam Weinig.
  57262. TreeWalker traversal order is wrong when skipping and rejecting
  57263. https://bugs.webkit.org/show_bug.cgi?id=44377
  57264. TreeWalker's nextSibling() and previousSibling() behaved incorrectly
  57265. when traversing down a subtree where all nodes are skipped; it backed all
  57266. the way up to the root of the subtree, then jump to the subtree's parentNode.
  57267. This would skip later siblings.
  57268. Fix by resetting 'node' when traversing to children so that node = node->parentNode()
  57269. gets the correct node later.
  57270. Test: fast/dom/TreeWalker/traversal-skip-most.html
  57271. * dom/TreeWalker.cpp:
  57272. (WebCore::TreeWalker::previousSibling):
  57273. (WebCore::TreeWalker::nextSibling):
  57274. 2010-08-24 Hans Wennborg <hans@chromium.org>
  57275. Reviewed by Steve Block.
  57276. Remove null-checks from DeviceOrientationController
  57277. https://bugs.webkit.org/show_bug.cgi?id=44504
  57278. Remove checks for m_client being NULL from DeviceOrientationController.
  57279. It will never be NULL, and this is checked by an ASSERT on construction.
  57280. Will be covered by layout tests for device orientation.
  57281. * dom/DeviceOrientationController.cpp:
  57282. (WebCore::DeviceOrientationController::timerFired):
  57283. (WebCore::DeviceOrientationController::addListener):
  57284. (WebCore::DeviceOrientationController::removeListener):
  57285. (WebCore::DeviceOrientationController::removeAllListeners):
  57286. 2010-08-24 Stephen White <senorblanco@chromium.org>
  57287. Reviewed by Kenneth Russell.
  57288. Fix accelerated 2d canvas with accelerated compositing off.
  57289. https://bugs.webkit.org/show_bug.cgi?id=44525
  57290. Tested by running with --enable-accelerated-2d-canvas with
  57291. --enable-accelerated-compositing off.
  57292. ImageBuffer::copyImage changes covered by
  57293. LayoutTests/fast/canvas/canvas-pattern-*.html.
  57294. * html/HTMLCanvasElement.cpp:
  57295. (WebCore::HTMLCanvasElement::paint):
  57296. Extend the accelerated compositing check and the readback for
  57297. non-accelerated compositing to accelerated 2D canvas also.
  57298. * html/canvas/CanvasRenderingContext.cpp:
  57299. * html/canvas/CanvasRenderingContext.h:
  57300. (WebCore::CanvasRenderingContext::paintsIntoCanvasBuffer):
  57301. Move this logic from WebGL to common canvas context code.
  57302. * html/canvas/WebGLRenderingContext.h:
  57303. Remove implementation of paintsIntoCanvasBuffer.
  57304. * platform/graphics/skia/ImageBufferSkia.cpp:
  57305. (WebCore::ImageBuffer::copyImage):
  57306. When copying the image for patterns, sync the software canvas.
  57307. * platform/graphics/skia/PlatformContextSkia.cpp:
  57308. (WebCore::PlatformContextSkia::prepareForSoftwareDraw):
  57309. Use SkDevice::eraseColor() to clear the canvas for mixed mode rendering.
  57310. 2010-08-24 Adam Barth <abarth@webkit.org>
  57311. Reviewed by Eric Seidel.
  57312. Deploy adoptPtr in WebCore/editing
  57313. https://bugs.webkit.org/show_bug.cgi?id=44501
  57314. * editing/Editor.cpp:
  57315. (WebCore::Editor::Editor):
  57316. * editing/TextIterator.cpp:
  57317. (WebCore::plainTextToMallocAllocatedBuffer):
  57318. 2010-08-24 Adam Barth <abarth@webkit.org>
  57319. Reviewed by Eric Seidel.
  57320. Deploy adoptPtr in WebCore/history
  57321. https://bugs.webkit.org/show_bug.cgi?id=44502
  57322. * history/HistoryItem.cpp:
  57323. (WebCore::HistoryItem::HistoryItem):
  57324. (WebCore::HistoryItem::addRedirectURL):
  57325. 2010-08-24 Adam Barth <abarth@webkit.org>
  57326. Reviewed by Eric Seidel.
  57327. Partial deployment of adoptPtr to WebCore/html
  57328. https://bugs.webkit.org/show_bug.cgi?id=44507
  57329. Deploy adoptPtr to some more places in WebCore/html. The big chunk
  57330. that I haven't done yet is createRenderer, but that's going to be a big
  57331. patch unto itself.
  57332. * html/HTMLFormCollection.cpp:
  57333. (WebCore::HTMLFormCollection::formCollectionInfo):
  57334. * html/HTMLFormElement.cpp:
  57335. (WebCore::HTMLFormElement::addElementAlias):
  57336. * html/HTMLInputElement.cpp:
  57337. (WebCore::createTypeMap):
  57338. (WebCore::HTMLInputElement::setInputType):
  57339. (WebCore::HTMLInputElement::parseMappedAttribute):
  57340. (WebCore::HTMLInputElement::attach):
  57341. (WebCore::HTMLInputElement::preDispatchEventHandler):
  57342. * html/HTMLObjectElement.cpp:
  57343. (WebCore::HTMLObjectElement::parseMappedAttribute):
  57344. (WebCore::HTMLObjectElement::attach):
  57345. * html/HTMLToken.h:
  57346. (WebCore::HTMLToken::beginDOCTYPE):
  57347. * html/HTMLVideoElement.cpp:
  57348. (WebCore::HTMLVideoElement::attach):
  57349. (WebCore::HTMLVideoElement::parseMappedAttribute):
  57350. * html/ValidityState.h:
  57351. (WebCore::ValidityState::create):
  57352. 2010-08-24 Adam Barth <abarth@webkit.org>
  57353. Reviewed by Eric Seidel.
  57354. Partial deployment of adoptPtr to WebCore/html
  57355. https://bugs.webkit.org/show_bug.cgi?id=44507
  57356. There's a lot of places that need adoptPtr in WebCore/html. This patch
  57357. does some of them. More will follow.
  57358. * html/FileThreadTask.h:
  57359. (WebCore::FileThreadTask0::create):
  57360. (WebCore::FileThreadTask1::create):
  57361. (WebCore::FileThreadTask2::create):
  57362. (WebCore::FileThreadTask3::create):
  57363. * html/HTMLAreaElement.cpp:
  57364. (WebCore::HTMLAreaElement::mapMouseEvent):
  57365. * html/HTMLCanvasElement.cpp:
  57366. (WebCore::HTMLCanvasElement::getContext):
  57367. * html/HTMLElementStack.cpp:
  57368. (WebCore::HTMLElementStack::insertAbove):
  57369. (WebCore::HTMLElementStack::pushCommon):
  57370. * html/HTMLEmbedElement.cpp:
  57371. (WebCore::HTMLEmbedElement::parseMappedAttribute):
  57372. (WebCore::HTMLEmbedElement::attach):
  57373. 2010-08-24 Sam Weinig <sam@webkit.org>
  57374. Reviewed by Simon Fraser.
  57375. Improve comment for Simon.
  57376. * editing/Editor.h:
  57377. 2010-08-24 Sam Weinig <sam@webkit.org>
  57378. Reviewed by Oliver Hunt.
  57379. Paste event fires twice for mac WebKit
  57380. <rdar://problem/8094611>
  57381. https://bugs.webkit.org/show_bug.cgi?id=44535
  57382. The mac implementation of paste in WebKit was accidentally calling
  57383. Editor::tryDHTMLPaste twice, once in -[WebHTMLView paste:] and once
  57384. in Editor::pasteAsPlainText (which is called by -[WebHTMLView paste:]).
  57385. Use the new pasteAsPlainTextBypassingDHTML function to bypass the
  57386. second call.
  57387. Test: editing/pasteboard/paste-event-only-once.html
  57388. * WebCore.exp.in:
  57389. * editing/Editor.cpp:
  57390. (WebCore::Editor::pasteAsPlainTextBypassingDHTML):
  57391. * editing/Editor.h:
  57392. Expose a function which just pastes using from the general pasteboard,
  57393. bypassing all the checking and DHTML pasting.
  57394. 2010-08-24 Nate Chapin <japhet@chromium.org>
  57395. Unreviewed.
  57396. Chromium build fix (add a #include missing in PingLoader.cpp)
  57397. * loader/PingLoader.cpp:
  57398. 2010-08-24 Nate Chapin <japhet@chromium.org>
  57399. Reviewed by David Levin.
  57400. Allow image loads triggered from unload handlers to run entirely
  57401. independently of any other loads or navigations.
  57402. https://bugs.webkit.org/show_bug.cgi?id=30457
  57403. Test: http/tests/navigation/image-load-in-unload-handler.html
  57404. * Android.mk:
  57405. * CMakeLists.txt:
  57406. * GNUmakefile.am:
  57407. * WebCore.gypi:
  57408. * WebCore.pro:
  57409. * WebCore.vcproj/WebCore.vcproj:
  57410. * WebCore.xcodeproj/project.pbxproj:
  57411. * loader/DocLoader.cpp:
  57412. (WebCore::DocLoader::requestImage): Use PingLoader for image
  57413. loads in unload handlers.
  57414. * loader/FrameLoader.h:
  57415. (WebCore::FrameLoader::pageDismissalEventBeingDispatched):
  57416. * loader/PingLoader.cpp: Added.
  57417. (WebCore::PingLoader::loadImage): Set the appropriate
  57418. headers for an image load in unload handler (since we're
  57419. not using SubresourceLoader, we need to do this manually here).
  57420. (WebCore::PingLoader::PingLoader):
  57421. * loader/PingLoader.h: Added.
  57422. (WebCore::PingLoader::~PingLoader):
  57423. (WebCore::PingLoader::didReceiveResponse):
  57424. (WebCore::PingLoader::didReceiveData):
  57425. (WebCore::PingLoader::didFinishLoading):
  57426. (WebCore::PingLoader::didFail):
  57427. 2010-08-24 Pavel Feldman <pfeldman@chromium.org>
  57428. Reviewed by Yury Semikhatsky.
  57429. Web Inspector: Trace to the style that contributes to
  57430. the computed styles panel.
  57431. https://bugs.webkit.org/show_bug.cgi?id=44448
  57432. Test: inspector/styles-computed-trace.html
  57433. * English.lproj/localizedStrings.js:
  57434. * inspector/front-end/Section.js:
  57435. (WebInspector.Section.prototype.set subtitle):
  57436. (WebInspector.Section.prototype.get subtitleAsTextForTest):
  57437. * inspector/front-end/StylesSidebarPane.js:
  57438. (WebInspector.StylesSidebarPane.prototype._refreshUpdate):
  57439. (WebInspector.StylesSidebarPane.prototype._rebuildUpdate):
  57440. (WebInspector.StylesSidebarPane.prototype._rebuildStyleRules):
  57441. (WebInspector.StylesSidebarPane.prototype._refreshSectionsForStyleRules):
  57442. (WebInspector.StylesSidebarPane.prototype._rebuildSectionsForStyleRules):
  57443. (WebInspector.StylePropertiesSection.linkifyUncopyable):
  57444. (WebInspector.StylePropertiesSection):
  57445. (WebInspector.StylePropertiesSection.prototype.isPropertyInherited):
  57446. (WebInspector.StylePropertiesSection.prototype.isPropertyOverloaded):
  57447. (WebInspector.StylePropertiesSection.prototype.isPropertyDisabled):
  57448. (WebInspector.StylePropertiesSection.prototype.update):
  57449. (WebInspector.StylePropertiesSection.prototype.onpopulate):
  57450. (WebInspector.ComputedStylePropertiesSection):
  57451. (WebInspector.ComputedStylePropertiesSection.prototype.collapse):
  57452. (WebInspector.ComputedStylePropertiesSection.prototype._isPropertyInherited):
  57453. (WebInspector.ComputedStylePropertiesSection.prototype.update):
  57454. (WebInspector.ComputedStylePropertiesSection.prototype.onpopulate):
  57455. (WebInspector.ComputedStylePropertiesSection.prototype.rebuildComputedTrace):
  57456. (WebInspector.BlankStylePropertiesSection):
  57457. * inspector/front-end/inspector.css:
  57458. (.styles-section a::before):
  57459. * inspector/front-end/inspector.js:
  57460. (WebInspector.documentClick.followLink):
  57461. (WebInspector.documentClick):
  57462. (WebInspector.linkifyResourceAsNode):
  57463. 2010-08-24 Daniel Cheng <dcheng@chromium.org>
  57464. Reviewed by Eric Seidel.
  57465. [chromium] Generate drag images for HTML elements and selections.
  57466. https://bugs.webkit.org/show_bug.cgi?id=43449
  57467. We weren't properly generating drag images if an HTML element was set
  57468. as the drag feedback image. I also implemented dragImageForSelection
  57469. while I was working on this part of the code.
  57470. No new tests.
  57471. * WebCore.exp.in:
  57472. * bindings/objc/DOM.mm:
  57473. (-[DOMNode renderedImage]):
  57474. * page/Frame.h:
  57475. * page/brew/FrameBrew.cpp:
  57476. (WebCore::Frame::nodeImage):
  57477. * page/chromium/FrameChromium.cpp:
  57478. (WebCore::):
  57479. (WebCore::Frame::nodeImage):
  57480. (WebCore::Frame::dragImageForSelection):
  57481. * page/efl/FrameEfl.cpp:
  57482. (WebCore::Frame::nodeImage):
  57483. * page/gtk/FrameGtk.cpp:
  57484. (WebCore::Frame::nodeImage):
  57485. * page/haiku/FrameHaiku.cpp:
  57486. (WebCore::Frame::nodeImage):
  57487. * page/mac/FrameMac.mm:
  57488. (WebCore::Frame::nodeImage):
  57489. (WebCore::Frame::dragImageForSelection):
  57490. * page/qt/FrameQt.cpp:
  57491. (WebCore::Frame::nodeImage):
  57492. (WebCore::Frame::dragImageForSelection):
  57493. * page/win/FrameCGWin.cpp:
  57494. (WebCore::Frame::nodeImage):
  57495. * page/win/FrameCairoWin.cpp:
  57496. (WebCore::Frame::nodeImage):
  57497. * page/wince/FrameWince.cpp:
  57498. (WebCore::Frame::nodeImage):
  57499. * page/wx/FrameWx.cpp:
  57500. (WebCore::Frame::nodeImage):
  57501. * platform/chromium/ClipboardChromium.cpp:
  57502. (WebCore::ClipboardChromium::createDragImage):
  57503. * rendering/RenderObject.cpp:
  57504. (WebCore::RenderObject::selectionForegroundColor):
  57505. 2010-08-24 Jeremy Orlow <jorlow@chromium.org>
  57506. Reviewed by Steve Block.
  57507. IndexedDB needs to manually delete all objectStore data and indexes
  57508. https://bugs.webkit.org/show_bug.cgi?id=44522
  57509. Apparently it's only newer versions of SQLite that handle cascade
  57510. delete. The rest silently fail. So do it manually.
  57511. Test: storage/indexeddb/objectstore-removeobjectstore.html
  57512. * storage/IDBDatabaseBackendImpl.cpp:
  57513. (WebCore::IDBDatabaseBackendImpl::createObjectStore):
  57514. (WebCore::doDelete):
  57515. (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
  57516. * storage/IDBDatabaseBackendImpl.h:
  57517. * storage/IDBFactoryBackendImpl.cpp:
  57518. (WebCore::createTables):
  57519. * storage/IDBObjectStoreBackendImpl.cpp:
  57520. (WebCore::IDBObjectStoreBackendImpl::removeIndex):
  57521. * storage/IDBObjectStoreBackendImpl.h:
  57522. (WebCore::IDBObjectStoreBackendImpl::create):
  57523. (WebCore::IDBObjectStoreBackendImpl::id):
  57524. 2010-08-23 Sam Weinig <sam@webkit.org>
  57525. Reviewed by Adam Barth.
  57526. Fix for <rdar://problem/8153271> and <rdar://problem/8153288>
  57527. Change behavior of javascript: urls in <embed> and <object> back to
  57528. how they behaved before r50698.
  57529. Tests: fast/loader/javascript-url-in-embed.html
  57530. fast/loader/javascript-url-in-object.html
  57531. * loader/SubframeLoader.cpp:
  57532. (WebCore::SubframeLoader::requestFrame):
  57533. (WebCore::SubframeLoader::requestObject):
  57534. (WebCore::SubframeLoader::loadOrRedirectSubframe):
  57535. * loader/SubframeLoader.h:
  57536. 2010-08-24 Xan Lopez <xlopez@igalia.com>
  57537. Reviewed by Gustavo Noronha.
  57538. Update code to compile with latest GTK+ 3.x.
  57539. * platform/gtk/gtk2drawing.c:
  57540. (TSOffsetStyleGCs):
  57541. (moz_gtk_entry_paint):
  57542. * plugins/gtk/gtk2xtbin.c:
  57543. (gtk_xtbin_new):
  57544. 2010-08-24 Nikolas Zimmermann <nzimmermann@rim.com>
  57545. Reviewed by Dirk Schulze.
  57546. -webkit-svg-shadow doesn't repaint on changes
  57547. https://bugs.webkit.org/show_bug.cgi?id=44521
  57548. Trivial fix, to make -webkit-svg-shadow react on changes.
  57549. Test: svg/css/shadow-changes.svg
  57550. * rendering/style/SVGRenderStyle.cpp:
  57551. (WebCore::SVGRenderStyle::diff): If 'svgShadow' is not equal, cause a repaint.
  57552. 2010-08-24 Dirk Schulze <krit@webkit.org>
  57553. Reviewed by Nikolas Zimmermann.
  57554. Cg logs "<Error>: CGPathCloseSubpath: no current point. " in lots of tests
  57555. https://bugs.webkit.org/show_bug.cgi?id=43026
  57556. Check if the path is empty before closing it.
  57557. * svg/SVGPathBuilder.cpp:
  57558. (WebCore::SVGPathBuilder::moveTo):
  57559. 2010-08-24 Marcus Bulach <bulach@chromium.org>
  57560. Reviewed by Jeremy Orlow.
  57561. Hooks IDBKeyPath with IDBObjectStorage::put.
  57562. https://bugs.webkit.org/show_bug.cgi?id=44275
  57563. Adds a mechanism to extract an IDBKey from SerializedScriptValue using IDBKeyPath
  57564. during IDBObjectStorage::put.
  57565. * WebCore.gyp/WebCore.gyp:
  57566. * WebCore.gypi:
  57567. * platform/chromium/ChromiumBridge.h:
  57568. * storage/IDBKeyPathBackendImpl.cpp: Added.
  57569. (IDBKeyPathBackendImpl::createIDBKeysFromSerializedValuesAndKeyPath):
  57570. * storage/IDBKeyPathBackendImpl.h: Added.
  57571. * storage/IDBObjectStoreBackendImpl.cpp:
  57572. (WebCore::IDBObjectStoreBackendImpl::put):
  57573. * storage/chromium/IDBKeyPathBackendImpl.cpp: Added.
  57574. (WebCore::IDBKeyPathBackendImpl::createIDBKeysFromSerializedValuesAndKeyPath):
  57575. 2010-08-24 Ilya Tikhonovsky <loislo@chromium.org>
  57576. Reviewed by Pavel Feldman.
  57577. WebInspector: RemoteInspectorFrontend can be renamed to InspectorFrontend.
  57578. The old version of InspectorFrontend was removed some time ago and now
  57579. it is possible to rename the new version of inspector frontend class to its
  57580. original name.
  57581. https://bugs.webkit.org/show_bug.cgi?id=44499
  57582. * GNUmakefile.am:
  57583. * WebCore.gyp/WebCore.gyp:
  57584. * WebCore.pri:
  57585. * WebCore.vcproj/WebCore.vcproj:
  57586. * WebCore.xcodeproj/project.pbxproj:
  57587. * inspector/CodeGeneratorInspector.pm:
  57588. * inspector/ConsoleMessage.cpp:
  57589. (WebCore::ConsoleMessage::addToFrontend):
  57590. (WebCore::ConsoleMessage::updateRepeatCountInConsole):
  57591. * inspector/ConsoleMessage.h:
  57592. * inspector/InjectedScriptHost.cpp:
  57593. (WebCore::InjectedScriptHost::pushNodePathToFrontend):
  57594. (WebCore::InjectedScriptHost::frontend):
  57595. * inspector/InjectedScriptHost.h:
  57596. * inspector/InspectorApplicationCacheAgent.cpp:
  57597. (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent):
  57598. * inspector/InspectorApplicationCacheAgent.h:
  57599. * inspector/InspectorBackend.cpp:
  57600. (WebCore::InspectorBackend::dispatchOnInjectedScript):
  57601. (WebCore::InspectorBackend::frontend):
  57602. * inspector/InspectorBackend.h:
  57603. * inspector/InspectorCSSStore.cpp:
  57604. * inspector/InspectorCSSStore.h:
  57605. * inspector/InspectorController.cpp:
  57606. (WebCore::InspectorController::inspectedPageDestroyed):
  57607. (WebCore::InspectorController::inspect):
  57608. (WebCore::InspectorController::focusNode):
  57609. (WebCore::InspectorController::windowVisible):
  57610. (WebCore::InspectorController::addConsoleMessage):
  57611. (WebCore::InspectorController::clearConsoleMessages):
  57612. (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
  57613. (WebCore::InspectorController::setSearchingForNode):
  57614. (WebCore::InspectorController::setMonitoringXHR):
  57615. (WebCore::InspectorController::connectFrontend):
  57616. (WebCore::InspectorController::show):
  57617. (WebCore::InspectorController::showPanel):
  57618. (WebCore::InspectorController::close):
  57619. (WebCore::InspectorController::disconnectFrontend):
  57620. (WebCore::InspectorController::populateScriptObjects):
  57621. (WebCore::InspectorController::pruneResources):
  57622. (WebCore::InspectorController::didCommitLoad):
  57623. (WebCore::InspectorController::didLoadResourceFromMemoryCache):
  57624. (WebCore::InspectorController::identifierForInitialRequest):
  57625. (WebCore::InspectorController::mainResourceFiredDOMContentEvent):
  57626. (WebCore::InspectorController::mainResourceFiredLoadEvent):
  57627. (WebCore::InspectorController::willSendRequest):
  57628. (WebCore::InspectorController::didReceiveResponse):
  57629. (WebCore::InspectorController::didReceiveContentLength):
  57630. (WebCore::InspectorController::didFinishLoading):
  57631. (WebCore::InspectorController::didFailLoading):
  57632. (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
  57633. (WebCore::InspectorController::scriptImported):
  57634. (WebCore::InspectorController::enableResourceTracking):
  57635. (WebCore::InspectorController::disableResourceTracking):
  57636. (WebCore::InspectorController::startTimelineProfiler):
  57637. (WebCore::InspectorController::stopTimelineProfiler):
  57638. (WebCore::InspectorController::postWorkerNotificationToFrontend):
  57639. (WebCore::InspectorController::didCreateWorker):
  57640. (WebCore::InspectorController::didDestroyWorker):
  57641. (WebCore::InspectorController::selectDatabase):
  57642. (WebCore::InspectorController::didOpenDatabase):
  57643. (WebCore::InspectorController::didUseDOMStorage):
  57644. (WebCore::InspectorController::selectDOMStorage):
  57645. (WebCore::InspectorController::enableDebuggerFromFrontend):
  57646. (WebCore::InspectorController::enableDebugger):
  57647. (WebCore::InspectorController::disableDebugger):
  57648. (WebCore::InspectorController::evaluateForTestInFrontend):
  57649. * inspector/InspectorController.h:
  57650. (WebCore::InspectorController::hasFrontend):
  57651. * inspector/InspectorDOMAgent.cpp:
  57652. (WebCore::InspectorDOMAgent::InspectorDOMAgent):
  57653. * inspector/InspectorDOMAgent.h:
  57654. (WebCore::InspectorDOMAgent::create):
  57655. * inspector/InspectorDOMStorageResource.cpp:
  57656. (WebCore::InspectorDOMStorageResource::bind):
  57657. * inspector/InspectorDOMStorageResource.h:
  57658. * inspector/InspectorDatabaseResource.cpp:
  57659. (WebCore::InspectorDatabaseResource::bind):
  57660. * inspector/InspectorDatabaseResource.h:
  57661. * inspector/InspectorDebuggerAgent.cpp:
  57662. (WebCore::InspectorDebuggerAgent::create):
  57663. (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
  57664. (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState):
  57665. (WebCore::InspectorDebuggerAgent::didParseSource):
  57666. (WebCore::InspectorDebuggerAgent::failedToParseSource):
  57667. (WebCore::InspectorDebuggerAgent::didPause):
  57668. (WebCore::InspectorDebuggerAgent::didContinue):
  57669. * inspector/InspectorDebuggerAgent.h:
  57670. * inspector/InspectorProfilerAgent.cpp:
  57671. (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
  57672. (WebCore::InspectorProfilerAgent::addProfile):
  57673. (WebCore::InspectorProfilerAgent::disable):
  57674. (WebCore::InspectorProfilerAgent::enable):
  57675. (WebCore::InspectorProfilerAgent::resetState):
  57676. (WebCore::InspectorProfilerAgent::toggleRecordButton):
  57677. * inspector/InspectorProfilerAgent.h:
  57678. (WebCore::InspectorProfilerAgent::setFrontend):
  57679. * inspector/InspectorResource.cpp:
  57680. (WebCore::InspectorResource::updateScriptObject):
  57681. (WebCore::InspectorResource::releaseScriptObject):
  57682. * inspector/InspectorResource.h:
  57683. * inspector/InspectorStorageAgent.cpp:
  57684. (WebCore::InspectorStorageAgent::InspectorStorageAgent):
  57685. * inspector/InspectorStorageAgent.h:
  57686. (WebCore::InspectorStorageAgent::create):
  57687. (WebCore::InspectorStorageAgent::frontend):
  57688. * inspector/InspectorTimelineAgent.cpp:
  57689. (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
  57690. (WebCore::InspectorTimelineAgent::resetFrontendProxyObject):
  57691. * inspector/InspectorTimelineAgent.h:
  57692. 2010-08-24 Nikolas Zimmermann <nzimmermann@rim.com>
  57693. Reviewed by Dirk Schulze.
  57694. Markers don't render, when applied to a target using vector-effect="non-scaling-stroke"
  57695. https://bugs.webkit.org/show_bug.cgi?id=44511
  57696. Make fillAndStrokePath a member function of RenderPath, to avoid having to pass the const Path& and this paramters.
  57697. Don't leave the GraphicsContext mutated after applying non-scaling-stroke transformation, otherwhise markers will be renderer
  57698. in the wrong coordinate space, and thus don't show up anymore.
  57699. Test: svg/custom/non-scaling-stroke-markers.svg
  57700. * rendering/RenderPath.cpp:
  57701. (WebCore::RenderPath::fillAndStrokePath):
  57702. (WebCore::RenderPath::paint):
  57703. * rendering/RenderPath.h:
  57704. 2010-08-24 Adam Barth <abarth@webkit.org>
  57705. Reviewed by Kenneth Rohde Christiansen.
  57706. Remove wrong code from Qt that's dumping extra markup into the clipboard
  57707. https://bugs.webkit.org/show_bug.cgi?id=44506
  57708. I have no way of testing this patch, but hopefully it should fix a
  57709. bunch of newly failing tests. This code seems very confused.
  57710. * platform/qt/PasteboardQt.cpp:
  57711. (WebCore::Pasteboard::writeSelection):
  57712. 2010-08-24 Pavel Podivilov <podivilov@chromium.org>
  57713. Reviewed by Yury Semikhatsky.
  57714. Web Inspector: fix gcc warnings introduced in 65731
  57715. https://bugs.webkit.org/show_bug.cgi?id=44468
  57716. * inspector/InspectorDOMAgent.cpp:
  57717. (WebCore::InspectorDOMAgent::didInsertDOMNode):
  57718. (WebCore::InspectorDOMAgent::pauseOnBreakpoint):
  57719. 2010-08-24 Ariya Hidayat <ariya@sencha.com>
  57720. Reviewed by Simon Hausmann.
  57721. [Qt] Blur shadow for rectangle fill
  57722. https://bugs.webkit.org/show_bug.cgi?id=44488
  57723. Refactor fillRect() function to support blur radius in the shadow.
  57724. * platform/graphics/qt/GraphicsContextQt.cpp:
  57725. (WebCore::GraphicsContext::fillRect):
  57726. 2010-08-24 Nikolas Zimmermann <nzimmermann@rim.com>
  57727. Reviewed by Dirk Schulze
  57728. clip-path does not work inside mask element
  57729. https://bugs.webkit.org/show_bug.cgi?id=41428
  57730. Add new tests covering nesting of clippers and maskers, with different unitTypes for the content coordinate system.
  57731. Scale all ImageBuffer content to take into account that ImageBuffers use integer based sizes, where the content
  57732. is floating-point sized. This compensates rounded errors, when scaling the document.
  57733. Tests: svg/clip-path/clip-in-mask-objectBoundingBox.svg
  57734. svg/clip-path/clip-in-mask-userSpaceOnUse.svg
  57735. svg/clip-path/clip-in-mask.svg
  57736. svg/clip-path/deep-nested-clip-in-mask-different-unitTypes.svg
  57737. svg/clip-path/deep-nested-clip-in-mask-panning.svg
  57738. svg/clip-path/deep-nested-clip-in-mask.svg
  57739. svg/clip-path/nested-clip-in-mask-image-based-clipping.svg
  57740. svg/clip-path/nested-clip-in-mask-path-and-image-based-clipping.svg
  57741. svg/clip-path/nested-clip-in-mask-path-based-clipping.svg
  57742. * rendering/RenderSVGResourceClipper.cpp:
  57743. (WebCore::RenderSVGResourceClipper::applyResource): Return the value of applyClippingToContext, instead of always true.
  57744. (WebCore::RenderSVGResourceClipper::applyClippingToContext): Moved some code from createClipData, to avoid having to pass 5 arguments to createClipData.
  57745. (WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage): Renamed from createClipData.
  57746. * rendering/RenderSVGResourceClipper.h:
  57747. * rendering/RenderSVGResourceGradient.cpp:
  57748. (WebCore::createMaskAndSwapContextForTextGradient): Pass absoluteTargetRect to createImageBuffer.
  57749. (WebCore::clipToTextMask): Ditto.
  57750. * rendering/RenderSVGResourceMasker.cpp:
  57751. (WebCore::RenderSVGResourceMasker::applyResource): Ditto.
  57752. (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage): Pass content transformation to renderSubtreeToImageBuffer, to support nesting objectBoundingBox resources.
  57753. * rendering/RenderSVGResourcePattern.cpp:
  57754. (WebCore::RenderSVGResourcePattern::applyResource): Adapt to calculateTransformationToOutermostSVGCoordinateSystem changes. AffineTransform is now passed as reference.
  57755. (WebCore::RenderSVGResourcePattern::createTileImage): ImageBuffer content scaling is now handled by createImageBuffer.
  57756. * rendering/SVGImageBufferTools.cpp:
  57757. (WebCore::SVGImageBufferTools::calculateTransformationToOutermostSVGCoordinateSystem): Renamed. Don't return an AffineTransform copy, but instead pass it as reference.
  57758. (WebCore::SVGImageBufferTools::createImageBuffer): Always scale the ImageBuffer content, to compensate rounding effects (code was only present in patterns so far).
  57759. Now also needs the 'absoluteTargetRect' parameter, not only 'clampedAbsoluteTargetRect'.
  57760. (WebCore::SVGImageBufferTools::renderSubtreeToImageBuffer): Moved from SVGRenderSupport.
  57761. (WebCore::SVGImageBufferTools::clipToImageBuffer): Pass ImageBuffer as OwnPtr reference, to allow to clear it under certain circumstances (see comment).
  57762. (WebCore::SVGImageBufferTools::clampedAbsoluteTargetRectForRenderer): Remove AffineTransform parameter, absoluteTargetRect is calculated before passing into this function.
  57763. * rendering/SVGImageBufferTools.h:
  57764. * rendering/SVGRenderSupport.cpp:
  57765. (WebCore::SVGRenderSupport::prepareToRenderSVGContent): Important change, respect the RenderSVGResourceClipper::applyResource() return value!
  57766. * rendering/SVGRenderSupport.h:
  57767. * svg/SVGFEImageElement.cpp:
  57768. (WebCore::SVGFEImageElement::build): renderSubtreeToImage now lives in SVGImageBufferTools, adapt code.
  57769. 2010-08-24 Andrei Popescu <andreip@dhcp-172-16-14-12.lon.corp.google.com>
  57770. Reviewed by Jeremy Orlow.
  57771. [IndexedDB] IDBTransaction is missing the implementation for objectStore method
  57772. https://bugs.webkit.org/show_bug.cgi?id=44446
  57773. * storage/IDBDatabaseBackendImpl.cpp:
  57774. (WebCore::IDBDatabaseBackendImpl::transaction):
  57775. * storage/IDBTransactionBackendImpl.cpp:
  57776. (WebCore::IDBTransactionBackendImpl::create):
  57777. (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
  57778. (WebCore::IDBTransactionBackendImpl::objectStore):
  57779. * storage/IDBTransactionBackendImpl.h:
  57780. * storage/IDBTransactionCoordinator.cpp:
  57781. (WebCore::IDBTransactionCoordinator::createTransaction):
  57782. * storage/IDBTransactionCoordinator.h:
  57783. 2010-08-24 Andreas Kling <andreas.kling@nokia.com>
  57784. Reviewed by Tor Arne Vestbø.
  57785. Disallow setting Document.xmlVersion to unsupported versions
  57786. https://bugs.webkit.org/show_bug.cgi?id=44494
  57787. Added XMLDocumentParser::supportsXMLVersion() - only returns true for "1.0"
  57788. in both implementations.
  57789. * dom/Document.cpp:
  57790. (WebCore::Document::setXMLVersion): Throw NOT_SUPPORTED_ERR
  57791. if XMLDocumentParser::supportsXMLVersion() returns false for the version.
  57792. * dom/XMLDocumentParser.h:
  57793. * dom/XMLDocumentParserLibxml2.cpp:
  57794. (WebCore::XMLDocumentParser::supportsXMLVersion):
  57795. * dom/XMLDocumentParserQt.cpp:
  57796. (WebCore::XMLDocumentParser::supportsXMLVersion):
  57797. 2010-08-24 Laszlo Gombos <laszlo.1.gombos@nokia.com>
  57798. Reviewed by Simon Hausmann.
  57799. [Qt][Symbian] Make sure WebKit headers are included before platform headers on Symbian
  57800. https://bugs.webkit.org/show_bug.cgi?id=31273
  57801. On Symbian PREPEND_INCLUDEPATH is the best way to make sure that
  57802. WebKit headers are included before platform headers. On all other
  57803. platforms continue to use INCLUDEPATH (as before).
  57804. This patch also removed the workarounds that are put in place
  57805. now that we have a better solution.
  57806. No new tests as there is no new functionality.
  57807. * WebCore.pro:
  57808. 2010-08-24 Ariya Hidayat <ariya@sencha.com>
  57809. Reviewed by Kenneth Rohde Christiansen.
  57810. [Qt] Support text-shadow blur
  57811. https://bugs.webkit.org/show_bug.cgi?id=19728
  57812. Implement blur for text shadow using the shadow layer in r65782.
  57813. * platform/graphics/qt/ContextShadow.cpp:
  57814. (WebCore::ContextShadow::beginShadowLayer):
  57815. * platform/graphics/qt/FontQt.cpp:
  57816. (WebCore::drawTextCommon):
  57817. 2010-08-23 Andreas Kling <andreas.kling@nokia.com>
  57818. Reviewed by Tor Arne Vestbø.
  57819. setAttributeNS() should throw NAMESPACE_ERR for prefixed qualifiedName with null namespace
  57820. https://bugs.webkit.org/show_bug.cgi?id=44432
  57821. Test: fast/dom/setAttributeNS-prefix-and-null-namespace.html
  57822. * dom/Element.cpp:
  57823. (WebCore::Element::setAttributeNS): Throw NAMESPACE_ERR if namespace is null
  57824. and the qualifiedName has a prefix.
  57825. 2010-08-24 Adam Barth <abarth@webkit.org>
  57826. Build fix. leakPtr doesn't exist, contrary to my dreams.
  57827. * storage/IDBKeyTree.h:
  57828. (WebCore::::put):
  57829. * storage/IDBPendingTransactionMonitor.cpp:
  57830. (WebCore::IDBPendingTransactionMonitor::addPendingTransaction):
  57831. 2010-08-24 Adam Barth <abarth@webkit.org>
  57832. Reviewed by Eric Seidel.
  57833. Deploy adoptPtr in WebCore/storage
  57834. https://bugs.webkit.org/show_bug.cgi?id=44491
  57835. There are still some naked news for a future patch. The next step is
  57836. to make create methods.
  57837. * storage/Database.cpp:
  57838. (WebCore::DatabaseCreationCallbackTask::create):
  57839. (WebCore::DerefContextTask::create):
  57840. (WebCore::DeliverPendingCallbackTask::create):
  57841. * storage/DatabaseSync.cpp:
  57842. (WebCore::CloseSyncDatabaseOnContextThreadTask::create):
  57843. * storage/DatabaseTask.h:
  57844. (WebCore::Database::DatabaseOpenTask::create):
  57845. (WebCore::Database::DatabaseCloseTask::create):
  57846. (WebCore::Database::DatabaseTransactionTask::create):
  57847. (WebCore::Database::DatabaseTableNamesTask::create):
  57848. * storage/DatabaseThread.cpp:
  57849. (WebCore::DatabaseThread::DatabaseThread):
  57850. * storage/DatabaseTracker.cpp:
  57851. (WebCore::DatabaseTracker::populateOrigins):
  57852. (WebCore::DatabaseTracker::addOpenDatabase):
  57853. * storage/IDBKeyTree.h:
  57854. (WebCore::::put):
  57855. * storage/IDBPendingTransactionMonitor.cpp:
  57856. (WebCore::IDBPendingTransactionMonitor::addPendingTransaction):
  57857. * storage/LocalStorageTask.h:
  57858. (WebCore::LocalStorageTask::createImport):
  57859. (WebCore::LocalStorageTask::createSync):
  57860. (WebCore::LocalStorageTask::createDeleteEmptyDatabase):
  57861. (WebCore::LocalStorageTask::createTerminate):
  57862. * storage/LocalStorageThread.cpp:
  57863. (WebCore::LocalStorageThread::create):
  57864. * storage/SQLTransaction.cpp:
  57865. (WebCore::SQLTransaction::openTransactionAndPreflight):
  57866. * storage/SQLTransactionSync.cpp:
  57867. (WebCore::SQLTransactionSync::SQLTransactionSync):
  57868. (WebCore::SQLTransactionSync::begin):
  57869. * storage/StorageNamespaceImpl.cpp:
  57870. (WebCore::StorageNamespaceImpl::copy):
  57871. 2010-08-24 Ilya Tikhonovsky <loislo@chromium.org>
  57872. Reviewed by Yury Semikhatsky.
  57873. WebInspector: setAttachedWindow was modified at r65809 but it should be implemented another way.
  57874. https://bugs.webkit.org/show_bug.cgi?id=44493
  57875. * inspector/Inspector.idl:
  57876. * inspector/InspectorController.cpp:
  57877. * inspector/InspectorController.h:
  57878. * inspector/InspectorFrontendClientLocal.cpp:
  57879. (WebCore::InspectorFrontendClientLocal::setAttachedWindow):
  57880. 2010-08-23 Eric Seidel <eric@webkit.org>
  57881. Reviewed by Adam Barth.
  57882. Use new HTML5 TreeBuilder for fragment parsing
  57883. https://bugs.webkit.org/show_bug.cgi?id=44475
  57884. The HTML5 TreeBuilder is ready to be used for all parsing
  57885. including fragments! This is the last change to move trunk
  57886. off of the LegacyHTMLTreeBuilder. We'll go through and
  57887. delete the thousands of lines of code supporting the old
  57888. parser in a separate patch.
  57889. This is covered by many layout tests.
  57890. * html/HTMLTreeBuilder.cpp:
  57891. 2010-08-23 Adam Barth <abarth@webkit.org>
  57892. Reviewed by Eric Seidel.
  57893. HTMLScriptRunner::create
  57894. https://bugs.webkit.org/show_bug.cgi?id=44474
  57895. * html/HTMLDocumentParser.cpp:
  57896. (WebCore::HTMLDocumentParser::HTMLDocumentParser):
  57897. * html/HTMLScriptRunner.h:
  57898. (WebCore::HTMLScriptRunner::create):
  57899. 2010-08-23 Adam Barth <abarth@webkit.org>
  57900. Reviewed by Eric Seidel.
  57901. HTMLTreeBuilder should use adoptPtr
  57902. https://bugs.webkit.org/show_bug.cgi?id=44473
  57903. We should really use this pattern everywhere.
  57904. * html/HTMLDocumentParser.cpp:
  57905. (WebCore::HTMLDocumentParser::HTMLDocumentParser):
  57906. * html/HTMLTreeBuilder.h:
  57907. (WebCore::HTMLTreeBuilder::create):
  57908. 2010-08-23 Patrick Gansterer <paroga@paroga.com>
  57909. Reviewed by Adam Roben.
  57910. Set the ResourceResponse HTTP headers in RessourceHandleWin
  57911. https://bugs.webkit.org/show_bug.cgi?id=44444
  57912. * platform/network/win/ResourceHandleWin.cpp:
  57913. (WebCore::queryHTTPHeader):
  57914. (WebCore::ResourceHandle::onRequestComplete):
  57915. 2010-08-23 Patrick Gansterer <paroga@paroga.com>
  57916. Reviewed by Adam Roben.
  57917. Support all available biBitCount values in BitmapInfo
  57918. https://bugs.webkit.org/show_bug.cgi?id=43724
  57919. Add an enum with all possible values for biBitCount.
  57920. Also remove explicit initialization of bmiHeader members,
  57921. because that is already done in the constructor.
  57922. * platform/win/BitmapInfo.cpp: Added property svn:eol-style.
  57923. (WebCore::bitmapInfoForSize):
  57924. (WebCore::BitmapInfo::create):
  57925. (WebCore::BitmapInfo::createBottomUp):
  57926. * platform/win/BitmapInfo.h: Added property svn:eol-style.
  57927. (WebCore::BitmapInfo::):
  57928. (WebCore::BitmapInfo::bytesPerLine):
  57929. (WebCore::BitmapInfo::paddedBytesPerLine):
  57930. (WebCore::BitmapInfo::paddedWidth):
  57931. * platform/win/PopupMenuWin.cpp:
  57932. (WebCore::PopupMenuWin::paint):
  57933. 2010-08-23 Kent Tamura <tkent@chromium.org>
  57934. Unreviewed, build fix for r65852.
  57935. * rendering/RenderTextControlSingleLine.cpp:
  57936. (WebCore::RenderTextControlSingleLine::createSubtreeIfNeeded):
  57937. * rendering/TextControlInnerElements.cpp:
  57938. (WebCore::InputFieldSpeechButtonElement::InputFieldSpeechButtonElement):
  57939. (WebCore::InputFieldSpeechButtonElement::create):
  57940. * rendering/TextControlInnerElements.h:
  57941. 2010-08-23 Ryosuke Niwa <rniwa@webkit.org>
  57942. Reviewed by Eric Seidel.
  57943. MarkupAccumulator::appendStartMarkup should be broken down into pieces
  57944. https://bugs.webkit.org/show_bug.cgi?id=44288
  57945. Extracted appendText, appendComment, appendProcessingInstruction, appendElement and appendCDATASection.
  57946. Also simplified the conditionals in appendText.
  57947. No new tests are added since this is a cleanup.
  57948. * editing/markup.cpp:
  57949. (WebCore::MarkupAccumulator::appendText):
  57950. (WebCore::MarkupAccumulator::appendComment):
  57951. (WebCore::MarkupAccumulator::appendProcessingInstruction):
  57952. (WebCore::MarkupAccumulator::appendElement):
  57953. (WebCore::MarkupAccumulator::appendCDATASection):
  57954. (WebCore::MarkupAccumulator::appendStartMarkup):
  57955. 2010-08-23 Simon Fraser <simon.fraser@apple.com>
  57956. Reviewed by Alexey Proskuryakov.
  57957. TreeWalker is not calling acceptNode function in filter object
  57958. https://bugs.webkit.org/show_bug.cgi?id=35296
  57959. Fix incorrect shadowing of the 'function' variable, which could result
  57960. in badness when asking for arguments.callee.
  57961. * bindings/js/JSNodeFilterCondition.cpp:
  57962. (WebCore::JSNodeFilterCondition::acceptNode):
  57963. 2010-08-23 Darin Adler <darin@apple.com>
  57964. Reviewed by Geoff Garen.
  57965. Changed type of Node::parentNode to ContainerNode so we don't have to cast,
  57966. since parent are all containers.
  57967. * css/CSSStyleSelector.h: Changed m_parentNode to ContainerNode*.
  57968. * dom/Document.h: Fixed the type of TreeShared in the Node constructor.
  57969. Yes, it's here.
  57970. * dom/Node.cpp:
  57971. (WebCore::Node::eventParentNode): Removed now-unneeded typecast dance.
  57972. (WebCore::eventTargetAsSVGElementInstance):Changed type to ContainerNode*.
  57973. * dom/Node.h: Made Node inherit from TreeShared<ContainerNode> instead of
  57974. from TreeShared<Node>. Removed bogus comment. Changed return type of parentNode
  57975. and shadowParentNode functions to ContainerNode*. Fixed using to use
  57976. TreeShared<ContainerNode>.
  57977. * dom/Position.h: Include ContainerNode.h instead of Node.h.
  57978. * html/HTMLConstructionSite.cpp:
  57979. (WebCore::HTMLConstructionSite::findFosterSite): Removed now-unneeded typecast.
  57980. * rendering/MediaControlElements.h:
  57981. * rendering/SVGShadowTreeElements.h:
  57982. * rendering/TextControlInnerElements.h:
  57983. Changed return type of shadowParentNode functions to ContainerNode.
  57984. * rendering/RenderMeter.cpp:
  57985. (WebCore::RenderMeter::updatePartsState): Cast the node to HTMLElement* before
  57986. passing it to the function that creates the shadow element. We know the node is
  57987. a HTMLMeterElement, but the node function doesn't know that.
  57988. * rendering/RenderProgress.cpp:
  57989. (WebCore::RenderProgress::updatePartsState): Ditto.
  57990. * rendering/RenderSlider.cpp:
  57991. (WebCore::SliderThumbElement::SliderThumbElement): More of the same.
  57992. (WebCore::SliderThumbElement::create): Ditto.
  57993. (WebCore::RenderSlider::updateFromElement): Ditto.
  57994. * rendering/RenderTextControl.cpp:
  57995. (WebCore::RenderTextControl::createSubtreeIfNeeded): Ditto.
  57996. * rendering/RenderTextControlSingleLine.cpp:
  57997. (WebCore::RenderTextControlSingleLine::createSubtreeIfNeeded): Ditto.
  57998. * rendering/SVGShadowTreeElements.cpp:
  57999. (WebCore::SVGShadowTreeRootElement::SVGShadowTreeRootElement): Ditto.
  58000. (WebCore::SVGShadowTreeRootElement::shadowParentNode): Ditto.
  58001. * rendering/ShadowElement.cpp:
  58002. (WebCore::ShadowBlockElement::create): Ditto.
  58003. (WebCore::ShadowBlockElement::ShadowBlockElement): Ditto.
  58004. (WebCore::ShadowBlockElement::createForPart): Ditto.
  58005. (WebCore::ShadowInputElement::create): Ditto.
  58006. (WebCore::ShadowInputElement::ShadowInputElement): Ditto.
  58007. * rendering/ShadowElement.h:
  58008. (WebCore::ShadowElement::ShadowElement): Ditto.
  58009. (WebCore::ShadowElement::shadowParent): Ditto.
  58010. (WebCore::ShadowElement::shadowParentNode): Ditto.
  58011. * rendering/TextControlInnerElements.cpp:
  58012. (WebCore::TextControlInnerElement::TextControlInnerElement): Ditto.
  58013. (WebCore::TextControlInnerElement::create): Ditto.
  58014. (WebCore::TextControlInnerTextElement::TextControlInnerTextElement): Ditto.
  58015. (WebCore::TextControlInnerTextElement::create): Ditto.
  58016. (WebCore::SpinButtonElement::SpinButtonElement): Ditto.
  58017. (WebCore::SpinButtonElement::create): Ditto.
  58018. * svg/SVGElement.cpp:
  58019. (WebCore::SVGElement::eventParentNode): Removed now-unneeded typecast.
  58020. * svg/SVGStyledElement.cpp:
  58021. (WebCore::SVGStyledElement::title): Changed type to ContainerNode*.
  58022. 2010-08-23 Martin Robinson <mrobinson@igalia.com>
  58023. Reviewed by Gustavo Noronha Silva.
  58024. [GTK] The Mozilla theme drawing code incorrectly renders scrollbar backgrounds
  58025. https://bugs.webkit.org/show_bug.cgi?id=44388
  58026. No new tests as this functionality is currently unused. When the
  58027. the new scrollbar theme code lands for GTK+, this will be tested
  58028. by scrollbar pixel tests.
  58029. * platform/gtk/gtk2drawing.c: Expose a method to paint scrolled window
  58030. backgrounds and disable incorrect rendering of scrollbar trough backgrounds.
  58031. (moz_gtk_scrolled_window_paint): Added.
  58032. (moz_gtk_scrollbar_trough_paint): Disable incorrect background render.
  58033. * platform/gtk/gtkdrawing.h: Add scrolled window widget type in the enum.
  58034. 2010-08-23 Martin Robinson <mrobinson@igalia.com>
  58035. Reviewed by Gustavo Noronha Silva.
  58036. [GTK] The Mozilla theme drawing API should expose extra information about scrollbar geometry
  58037. https://bugs.webkit.org/show_bug.cgi?id=44385
  58038. Expose the trough_under_steppers property in MozGtkScrollbarMetrics.
  58039. No new tests as this does not change functionality.
  58040. * platform/gtk/gtk2drawing.c: Set the trough_under_steppers member when accessing theme data.
  58041. * platform/gtk/gtkdrawing.h: Add the trough_under_steppers member.
  58042. 2010-08-23 Darin Adler <darin@apple.com>
  58043. Reviewed by Geoff Garen.
  58044. Parser DOM tree manipulation functions do not need to be virtual.
  58045. * dom/ContainerNode.h: Made parserAddChild, parserRemoveChild, and
  58046. parserInsertBefore non-virtual.
  58047. * dom/Node.cpp: Removed the parserAddChild, parserRemoveChild, and
  58048. parserInsertBefore functions, which should never have been in the Node class.
  58049. * dom/Node.h: Ditto.
  58050. * html/HTMLConstructionSite.cpp:
  58051. (WebCore::HTMLConstructionSite::attach): Changed argument type to ContainerNode*
  58052. because we never need to attach a child to a non-container node.
  58053. (WebCore::HTMLConstructionSite::findFosterSite): Cast the result of the parent
  58054. function to ContainerNode*. A parent is always guaranteed to be a container, but
  58055. the parent function returns a Node* so that callers can use it without including
  58056. ContainerNode's header. That seems like something we can easily fix later.
  58057. * html/HTMLConstructionSite.h: Changed AttachmentSite::parent and the
  58058. attach function to ContainerNode* instead of Node*.
  58059. 2010-08-23 Adam Barth <abarth@webkit.org>
  58060. Reviewed by Eric Seidel.
  58061. editing/pasteboard/bad-placeholder.html fails with --html5-treebuilder
  58062. https://bugs.webkit.org/show_bug.cgi?id=44463
  58063. The problem here is that using the documentElement as the context puts
  58064. the tree builder into the BeforeHead insertion mode, which strips
  58065. leading spaces. This code is confused about what it wants, but it
  58066. certainly doesn't want to be in that insertion mode. Looking through
  58067. the callers, they'd much rather be in the InBody insertion mode. We
  58068. can get them there by creating a fake body element as the context
  58069. element.
  58070. In the long term, all this code needs to be changed to move away from
  58071. deprecatedCreateContextualFragment, which does a bunch of nasty stuff
  58072. like removing certain kinds of elements. However, that's a battle for
  58073. another day.
  58074. * editing/markup.cpp:
  58075. (WebCore::createFragmentFromMarkup):
  58076. 2010-08-23 Adam Barth <abarth@webkit.org>
  58077. Reviewed by Eric Seidel.
  58078. fast/xsl/default-html.html fails with HTML5 fragment parsing
  58079. https://bugs.webkit.org/show_bug.cgi?id=44450
  58080. This patch is a step down a trail of tears. As far as I can tell,
  58081. there's no spec for XSLTProcessor.transformToFragment. This patch
  58082. attempts to infer the proper behavior from test cases and the Mozilla
  58083. wiki.
  58084. * xml/XSLTProcessor.cpp:
  58085. (WebCore::createFragmentFromSource):
  58086. 2010-08-23 Adam Barth <abarth@webkit.org>
  58087. Reviewed by Eric Seidel.
  58088. editing/pasteboard/paste-visible-script.html is broken with --html5-treebuilder
  58089. https://bugs.webkit.org/show_bug.cgi?id=44457
  58090. Turns out there are two more checks we need for fragment scripting
  58091. permission. Not the most beautiful design, but it seems work.
  58092. * html/HTMLConstructionSite.cpp:
  58093. (WebCore::HTMLConstructionSite::insertScriptElement):
  58094. * html/HTMLTreeBuilder.cpp:
  58095. (WebCore::HTMLTreeBuilder::processEndTag):
  58096. 2010-08-23 Eric Seidel <eric@webkit.org>
  58097. Reviewed by Adam Barth.
  58098. fast/dom/script-innerHTML-x.xhtml fails when run with the HTML5 TreeBuilder in fragment mode
  58099. https://bugs.webkit.org/show_bug.cgi?id=44447
  58100. This special handling for script/style used to exist in
  58101. setInnerHTML. HTML5 moves this logic into the HTML and XML
  58102. parsers instead of in setInnerHTML.
  58103. In order to share this logic between WebKit's two XML parsers
  58104. I had to clean up a bit of the libxml2 parser and add a
  58105. new appendFragmentSource method.
  58106. Covered by fast/dom/script-innerHTML-x.xhtml.
  58107. * dom/XMLDocumentParser.cpp:
  58108. (WebCore::XMLDocumentParser::end):
  58109. - Now that libxml2 is calling finish() for fragments (Qt already was)
  58110. I went through and removed this unneeded style update after fragment parsing.
  58111. (WebCore::XMLDocumentParser::parseDocumentFragment):
  58112. - Yay for shared code!
  58113. - This is where I added the style/script hack moved from setInnerHTML.
  58114. * dom/XMLDocumentParser.h:
  58115. - Fix indent.
  58116. * dom/XMLDocumentParserLibxml2.cpp:
  58117. - Removed parseDocumentFragment and moved necessary libxml-specific
  58118. logic into appendFragmentSource.
  58119. (WebCore::XMLDocumentParser::appendFragmentSource):
  58120. * dom/XMLDocumentParserQt.cpp:
  58121. (WebCore::XMLDocumentParser::appendFragmentSource):
  58122. 2010-08-23 Kenneth Russell <kbr@google.com>
  58123. Reviewed by Dimitri Glazkov.
  58124. Remove references to ArrayBuffer and ArrayBufferView from GraphicsContext3D
  58125. https://bugs.webkit.org/show_bug.cgi?id=44455
  58126. Updated Safari, Qt and Chromium WebGL ports to avoid referencing
  58127. ArrayBuffer and ArrayBufferView types from GraphicsContext3D.
  58128. Ran all WebGL layout tests; no new regressions. Built and tested
  58129. WebKit on Mac OS X; built Chromium on Mac OS X and Linux.
  58130. * html/canvas/WebGLBuffer.cpp:
  58131. * html/canvas/WebGLBuffer.h:
  58132. * html/canvas/WebGLRenderingContext.cpp:
  58133. (WebCore::WebGLRenderingContext::bufferData):
  58134. (WebCore::WebGLRenderingContext::bufferSubData):
  58135. (WebCore::WebGLRenderingContext::texImage2D):
  58136. (WebCore::WebGLRenderingContext::texSubImage2D):
  58137. (WebCore::WebGLRenderingContext::simulateVertexAttrib0):
  58138. * platform/graphics/GraphicsContext3D.cpp:
  58139. (WebCore::GraphicsContext3D::extractTextureData):
  58140. * platform/graphics/GraphicsContext3D.h:
  58141. * platform/graphics/chromium/GLES2Canvas.cpp:
  58142. (WebCore::GLES2Canvas::getQuadVertices):
  58143. * platform/graphics/mac/GraphicsContext3DMac.mm:
  58144. (WebCore::GraphicsContext3D::bufferData):
  58145. (WebCore::GraphicsContext3D::bufferSubData):
  58146. * platform/graphics/qt/GraphicsContext3DQt.cpp:
  58147. (WebCore::GraphicsContext3D::bufferData):
  58148. (WebCore::GraphicsContext3D::bufferSubData):
  58149. 2010-08-20 Stephen White <senorblanco@chromium.org>
  58150. Reviewed by Kenneth Russell.
  58151. [CHROMIUM] Fix some failing layout tests w/ACCELERATED_2D_CANVAS
  58152. https://bugs.webkit.org/show_bug.cgi?id=44346
  58153. LayoutTests/fast/canvas/canvas-incremental-repaint.html (top middle
  58154. pane).
  58155. Failing because we were not applying the CTM in clearRect(). Now using
  58156. the fast path when the CTM is identity, and a fillRect() for the rest.
  58157. LayoutTests/fast/canvas/canvas-strokeRect.html
  58158. LayoutTests/fast/canvas/shadow-offset-[1-7].html
  58159. Failing because we weren't switching to the software path when a
  58160. shadow is present.
  58161. Also refactor the two versions of fillRect(), and use TRIANGLE_STRIP
  58162. strip instead of TRIANGLES, which lets us get rid of the element array
  58163. and use drawArrays() instead of drawElements().
  58164. Covered by the above layout tests.
  58165. * platform/graphics/chromium/GLES2Canvas.cpp:
  58166. (WebCore::GLES2Canvas::GLES2Canvas):
  58167. (WebCore::GLES2Canvas::~GLES2Canvas):
  58168. Remove m_quadIndices (now unused).
  58169. (WebCore::GLES2Canvas::clearRect):
  58170. Use a glClear() fast path for the identity-CTM clear, and fillRect()
  58171. for the rest.
  58172. (WebCore::GLES2Canvas::fillRect):
  58173. Refactor the two versions of fillRect().
  58174. (WebCore::GLES2Canvas::drawTexturedRect):
  58175. (WebCore::GLES2Canvas::drawTexturedRectTile):
  58176. Get rid of the ELEMENT_ARRAY_BUFFER bind. Use drawArrays() instead of
  58177. drawElements().
  58178. (WebCore::GLES2Canvas::getQuadVertices):
  58179. Re-order the vertices so they form a triangle strip.
  58180. * platform/graphics/chromium/GLES2Canvas.h:
  58181. Remove m_quadIndices (now unused).
  58182. * platform/graphics/skia/GraphicsContextSkia.cpp:
  58183. (WebCore::GraphicsContext::fillRect):
  58184. Check for a draw looper (shadow), and drop to the software path.
  58185. 2010-08-23 Patrick Gansterer <paroga@paroga.com>
  58186. Reviewed by Adam Roben.
  58187. Move filehandling into fileLoadTimer callback
  58188. https://bugs.webkit.org/show_bug.cgi?id=43714
  58189. Also add mimetype detection for local files.
  58190. * platform/network/ResourceHandleInternal.h:
  58191. (WebCore::ResourceHandleInternal::ResourceHandleInternal):
  58192. * platform/network/win/ResourceHandleWin.cpp:
  58193. (WebCore::ResourceHandle::start):
  58194. (WebCore::ResourceHandle::fileLoadTimer):
  58195. 2010-08-23 Iain Merrick <husky@google.com>
  58196. Reviewed by Steve Block.
  58197. Update JNI bridge for V8 after renaming of JavaString::utf8().
  58198. https://bugs.webkit.org/show_bug.cgi?id=44419
  58199. This fixes the build on Android. No new functionality, so no new tests.
  58200. * bridge/jni/v8/JNIBridgeV8.cpp:
  58201. (JavaField::JavaField):
  58202. * bridge/jni/v8/JNIBridgeV8.h:
  58203. (JSC::Bindings::JavaField::type):
  58204. * bridge/jni/v8/JavaClassV8.cpp:
  58205. (JavaClass::JavaClass):
  58206. * bridge/jni/v8/JavaNPObjectV8.cpp:
  58207. (JSC::Bindings::JavaNPObjectGetProperty):
  58208. * bridge/jni/v8/JavaStringV8.h:
  58209. (JSC::Bindings::JavaStringImpl::utf8):
  58210. 2010-08-23 Mihai Parparita <mihaip@chromium.org>
  58211. Reviewed by David Hyatt.
  58212. Assertion failure in FrameView::layout when modifying the DOM during
  58213. pagehide with PageCache enabled
  58214. https://bugs.webkit.org/show_bug.cgi?id=43152
  58215. Always unschedule any pending relayouts when changing the view, not just
  58216. when we're not using the page cache. Otherwise touching the DOM during
  58217. the pagehide handler can lead to layouts that will be done by the time
  58218. the view has changed, which triggers an assert.
  58219. Test: fast/loader/unschedule-relayout-after-unload.html
  58220. * page/Frame.cpp:
  58221. (WebCore::Frame::setView): move unscheduleRelayout outside page cache
  58222. check.
  58223. * page/FrameView.cpp:
  58224. (WebCore::FrameView::layout): remove early return now that assert
  58225. should be correct (and the referenced rdar:// got fixed).
  58226. 2010-08-23 Abhishek Arya <inferno@chromium.org>
  58227. Reviewed by Dimitri Glazkov.
  58228. Fix security origin calculation in createPattern. Need to use
  58229. cachedImage->response().url() instead of cachedImage->url().
  58230. https://bugs.webkit.org/show_bug.cgi?id=44399.
  58231. Test: http/tests/security/canvas-remote-read-remote-image-redirect.html
  58232. * html/canvas/CanvasRenderingContext2D.cpp:
  58233. (WebCore::CanvasRenderingContext2D::createPattern):
  58234. 2010-08-23 Simon Fraser <simon.fraser@apple.com>
  58235. Reviewed by Alexey Proskuryakov.
  58236. TreeWalker is not calling acceptNode function in filter object
  58237. https://bugs.webkit.org/show_bug.cgi?id=35296
  58238. We only accepted raw functions as the NodeFilter on TreeWalker. Fix this to
  58239. look for an 'acceptNode' function on the filter object, and use that if present.
  58240. Also throw an exception if the filter object does not have an acceptNode function.
  58241. Test: fast/dom/TreeWalker/acceptNode-filter.html
  58242. * bindings/js/JSNodeFilterCondition.cpp:
  58243. (WebCore::JSNodeFilterCondition::acceptNode):
  58244. 2010-08-23 Sheriff Bot <webkit.review.bot@gmail.com>
  58245. Unreviewed, rolling out r65814.
  58246. http://trac.webkit.org/changeset/65814
  58247. https://bugs.webkit.org/show_bug.cgi?id=44443
  58248. broke svg/custom/missing-xlink.svg (Requested by kling on
  58249. #webkit).
  58250. * dom/Element.cpp:
  58251. (WebCore::Element::setAttributeNS):
  58252. 2010-08-23 Jian Li <jianli@chromium.org>
  58253. Reviewed by Darin Fisher.
  58254. Handle blob resource.
  58255. https://bugs.webkit.org/show_bug.cgi?id=43941
  58256. To provide lower level blob reosurce handling for all possible ports,
  58257. BlobResourceHandle derived from ResourceHandle is implemented. It provides
  58258. both synchronous and asynchronous resource loading for blob URL.
  58259. BlobResourceHandle needs to create a FileStreamProxy instance in order to
  58260. asynchronous file stream operation. To achive this, a hook createAsyncFileStream
  58261. is added to ResourceHandleClient interface. When ResourceLoader implements
  58262. ths hook, it creates and returns FileStreamProxy.
  58263. BlobResourceHandle.* is not added to chromium port since it will implement
  58264. its own blob resource handling.
  58265. * Android.mk:
  58266. * CMakeLists.txt:
  58267. * GNUmakefile.am:
  58268. * WebCore.pro:
  58269. * WebCore.vcproj/WebCore.vcproj:
  58270. * WebCore.xcodeproj/project.pbxproj:
  58271. * loader/ResourceLoader.cpp:
  58272. (WebCore::ResourceLoader::createAsyncFileStream): Create and return FileStreamProxy.
  58273. * loader/ResourceLoader.h:
  58274. * page/SecurityOrigin.cpp: Add the support to get and validate the origin of blob URL.
  58275. (WebCore::SecurityOrigin::create):
  58276. (WebCore::SecurityOrigin::canLoad):
  58277. * platform/network/BlobRegistryImpl.cpp:
  58278. (WebCore::BlobRegistryImpl::appendStorageItems): Fix a bug that the length is not subtracted.
  58279. * platform/network/BlobResourceHandle.cpp: Added.
  58280. * platform/network/BlobResourceHandle.h: Added.
  58281. * platform/network/HTTPParsers.cpp:
  58282. (WebCore::parseRange):
  58283. * platform/network/HTTPParsers.h:
  58284. * platform/network/ResourceHandle.cpp: Hook up with asynchronous blob resource handling.
  58285. (WebCore::ResourceHandle::create):
  58286. * platform/network/ResourceHandle.h:
  58287. * platform/network/ResourceHandleClient.h:
  58288. (WebCore::ResourceHandleClient::createAsyncFileStream): Add a hook.
  58289. * platform/network/mac/ResourceHandleMac.mm:
  58290. (WebCore::ResourceHandle::loadResourceSynchronously): Hook up with synchronous blob resource handling.
  58291. 2010-08-23 Jian Li <jianli@chromium.org>
  58292. Reviewed by David Levin.
  58293. Remove unneeded BlobRegistryImpl.* and WebBlobRegistryImpl.* from
  58294. chromium project files.
  58295. https://bugs.webkit.org/show_bug.cgi?id=44442
  58296. * WebCore.gypi:
  58297. 2010-08-23 Adam Barth <abarth@webkit.org>
  58298. Reviewed by Eric Seidel.
  58299. Many LayoutTests crash when run with --html5-treebuilder
  58300. https://bugs.webkit.org/show_bug.cgi?id=44440
  58301. Our list of special tags is out of sync with the HTML5 spec. This
  58302. patch adds HTML to the list, which fixs a ton of crashers when parsing
  58303. fragments. We neet to sync up the list at some point, but we want to
  58304. make sure we have test coverage for all those changes, so I've left
  58305. that for a future patch.
  58306. * html/HTMLTreeBuilder.cpp:
  58307. 2010-08-23 Ilya Tikhonovsky <loislo@chromium.org>
  58308. Reviewed by Pavel Feldman.
  58309. WebInspector: Context menu in Scripts panel was broken.
  58310. https://bugs.webkit.org/show_bug.cgi?id=44431
  58311. * inspector/InspectorFrontendHost.cpp:
  58312. (WebCore::FrontendMenuProvider::contextMenuItemSelected):
  58313. (WebCore::FrontendMenuProvider::contextMenuCleared):
  58314. 2010-08-23 Andreas Kling <andreas.kling@nokia.com>
  58315. Reviewed by Tor Arne Vestbø.
  58316. setAttributeNS() should throw NAMESPACE_ERR for prefixed qualifiedName with null namespace
  58317. https://bugs.webkit.org/show_bug.cgi?id=44432
  58318. Test: fast/dom/setAttributeNS-prefix-and-null-namespace.html
  58319. * dom/Element.cpp:
  58320. (WebCore::Element::setAttributeNS): Throw NAMESPACE_ERR if namespace is null
  58321. and the qualifiedName has a prefix.
  58322. 2010-08-23 Ryuan Choi <ryuan.choi@samsung.com>
  58323. Reviewed by Antonio Gomes.
  58324. [EFL] rendering was broken when missing plugin.
  58325. https://bugs.webkit.org/show_bug.cgi?id=43395
  58326. Implement RenderThemeEfl::systemFont to render "Missing plugin" when we
  58327. don't have proper plugin.
  58328. In this case, RenderEmbeddedObject::paintReplaced call systemFont and
  58329. pass returned font to GraphicsContext.
  58330. * platform/efl/RenderThemeEfl.cpp:
  58331. (WebCore::RenderThemeEfl::setDefaultFontSize):
  58332. (WebCore::RenderThemeEfl::systemFont):
  58333. * platform/efl/RenderThemeEfl.h:
  58334. 2010-08-23 Pavel Podivilov <podivilov@chromium.org>
  58335. Reviewed by Pavel Feldman.
  58336. Web Inspector: remove javascript breakpoint specific code from BreakpointSidebarPane
  58337. https://bugs.webkit.org/show_bug.cgi?id=44327
  58338. * inspector/front-end/BreakpointManager.js:
  58339. (WebInspector.BreakpointManager.prototype.setBreakpoint):
  58340. (WebInspector.BreakpointManager.prototype.restoredBreakpoint):
  58341. (WebInspector.BreakpointManager.prototype._setBreakpoint):
  58342. (WebInspector.BreakpointManager.prototype._removeBreakpoint):
  58343. (WebInspector.BreakpointManager.prototype._setBreakpointOnBackend):
  58344. (WebInspector.Breakpoint):
  58345. * inspector/front-end/BreakpointsSidebarPane.js:
  58346. (WebInspector.BreakpointsSidebarPane):
  58347. (WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint):
  58348. (WebInspector.BreakpointsSidebarPane.prototype._breakpointRemoved):
  58349. (WebInspector.JSBreakpointItem):
  58350. (WebInspector.JSBreakpointItem.prototype.compareTo):
  58351. (WebInspector.JSBreakpointItem.prototype.element):
  58352. (WebInspector.JSBreakpointItem.prototype._breakpointClicked):
  58353. (WebInspector.JSBreakpointItem.prototype._checkboxClicked):
  58354. (WebInspector.JSBreakpointItem.prototype._enableChanged):
  58355. (WebInspector.JSBreakpointItem.prototype._textChanged):
  58356. (WebInspector.JSBreakpointItem.prototype._removed):
  58357. * inspector/front-end/ScriptsPanel.js:
  58358. (WebInspector.ScriptsPanel):
  58359. (WebInspector.ScriptsPanel.prototype._breakpointAdded):
  58360. (WebInspector.ScriptsPanel.prototype._breakpointRemoved):
  58361. * inspector/front-end/SourceFrame.js:
  58362. (WebInspector.SourceFrame.prototype.addBreakpoint):
  58363. (WebInspector.SourceFrame.prototype._addBreakpointToSource):
  58364. 2010-08-23 Ilya Tikhonovsky <loislo@chromium.org>
  58365. Reviewed by Yury Semikhatsky.
  58366. WebInspector: inspector protocol should be switched from array based
  58367. message format to object based message format.
  58368. Almost all the protocol related things is generated by CodeGeneratorInspector.pm
  58369. It was changed a bit. As result InspectorBackendStub.js wraps the
  58370. calls into Request objects. InspectorBackendDispatcher.cpp unwraps
  58371. these objects and calls corresponding agents. These two files and
  58372. RemoteInspectorFrontend are generated by CodeGeneratorInspector.pm
  58373. Dispatching part of WebInspector also was adjusted for handling Event
  58374. objects produced by RemoteInspectorFrontend.cpp and Response objects
  58375. produced by InspectorBackendDispatcher.cpp
  58376. https://bugs.webkit.org/show_bug.cgi?id=44338
  58377. * inspector/CodeGeneratorInspector.pm:
  58378. * inspector/Inspector.idl:
  58379. * inspector/InspectorController.cpp:
  58380. (WebCore::InspectorController::setAttachedWindow):
  58381. * inspector/InspectorController.h:
  58382. * inspector/InspectorFrontendClientLocal.cpp:
  58383. (WebCore::InspectorFrontendClientLocal::setAttachedWindow):
  58384. * inspector/InspectorValues.h:
  58385. (WebCore::InspectorObject::find):
  58386. * inspector/front-end/Callback.js:
  58387. (WebInspector.Callback.prototype.processResponse):
  58388. * inspector/front-end/inspector.js:
  58389. (WebInspector.dispatch):
  58390. (WebInspector_syncDispatch):
  58391. (WebInspector.dispatchMessageFromBackend):
  58392. (WebInspector.reportProtocolError):
  58393. 2010-08-19 Jeremy Orlow <jorlow@chromium.org>
  58394. Reviewed by Steve Block.
  58395. Remove IDBDatabase.description per spec changes
  58396. https://bugs.webkit.org/show_bug.cgi?id=44264
  58397. There's now no longer any way to access the description from JS.
  58398. The main premise of the manual test is now obsolete. Over time we'll
  58399. be able to add to it again. While I'm at it, I cleaned up the format
  58400. of the manual test to be easier to follow (code and usage wise).
  58401. * manual-tests/indexed-database.html:
  58402. * storage/IDBDatabase.cpp:
  58403. (WebCore::IDBDatabase::IDBDatabase):
  58404. * storage/IDBDatabase.h:
  58405. * storage/IDBDatabase.idl:
  58406. 2010-08-23 Pavel Feldman <pfeldman@chromium.org>
  58407. Reviewed by Yury Semikhatsky.
  58408. Web Inspector: element's css: pseudo-class locations
  58409. https://bugs.webkit.org/show_bug.cgi?id=44344
  58410. Also contains a drive-by fix for 44301 (gray out read-only).
  58411. * inspector/front-end/StylesSidebarPane.js:
  58412. (WebInspector.StylesSidebarPane.prototype.update.computedStyleCallback):
  58413. (WebInspector.StylesSidebarPane.prototype.update):
  58414. (WebInspector.StylesSidebarPane.prototype._rebuildUpdate):
  58415. (WebInspector.StylesSidebarPane.prototype._rebuildSectionsForStyleRules):
  58416. (WebInspector.StylePropertiesSection):
  58417. 2010-08-23 Sheriff Bot <webkit.review.bot@gmail.com>
  58418. Unreviewed, rolling out r65803.
  58419. http://trac.webkit.org/changeset/65803
  58420. https://bugs.webkit.org/show_bug.cgi?id=44416
  58421. windows build failed (Requested by loislo on #webkit).
  58422. * inspector/CodeGeneratorInspector.pm:
  58423. * inspector/Inspector.idl:
  58424. * inspector/InspectorController.cpp:
  58425. * inspector/InspectorController.h:
  58426. * inspector/InspectorFrontendClientLocal.cpp:
  58427. (WebCore::InspectorFrontendClientLocal::setAttachedWindow):
  58428. * inspector/InspectorValues.h:
  58429. * inspector/front-end/Callback.js:
  58430. (WebInspector.Callback.prototype.processResponse):
  58431. * inspector/front-end/inspector.js:
  58432. (WebInspector.dispatch.delayDispatch):
  58433. (WebInspector.dispatch):
  58434. (WebInspector_syncDispatch):
  58435. (WebInspector.dispatchMessageFromBackend):
  58436. (WebInspector.reportProtocolError):
  58437. 2010-08-23 Ilya Tikhonovsky <loislo@chromium.org>
  58438. Reviewed by Yury Semikhatsky.
  58439. WebInspector: inspector protocol should be switched from array based
  58440. message format to object based message format.
  58441. Almost all the protocol related things is generated by CodeGeneratorInspector.pm
  58442. It was changed a bit. As result InspectorBackendStub.js wraps the
  58443. calls into Request objects. InspectorBackendDispatcher.cpp unwraps
  58444. these objects and calls corresponding agents. These two files and
  58445. RemoteInspectorFrontend are generated by CodeGeneratorInspector.pm
  58446. Dispatching part of WebInspector also was adjusted for handling Event
  58447. objects produced by RemoteInspectorFrontend.cpp and Response objects
  58448. produced by InspectorBackendDispatcher.cpp
  58449. https://bugs.webkit.org/show_bug.cgi?id=44338
  58450. * inspector/CodeGeneratorInspector.pm:
  58451. * inspector/Inspector.idl:
  58452. * inspector/InspectorController.cpp:
  58453. (WebCore::InspectorController::setAttachedWindow):
  58454. * inspector/InspectorController.h:
  58455. * inspector/InspectorFrontendClientLocal.cpp:
  58456. (WebCore::InspectorFrontendClientLocal::setAttachedWindow):
  58457. * inspector/InspectorValues.h:
  58458. (WebCore::InspectorObject::find):
  58459. * inspector/front-end/Callback.js:
  58460. (WebInspector.Callback.prototype.processResponse):
  58461. * inspector/front-end/inspector.js:
  58462. (WebInspector.dispatch):
  58463. (WebInspector_syncDispatch):
  58464. (WebInspector.dispatchMessageFromBackend):
  58465. (WebInspector.reportProtocolError):
  58466. 2010-08-23 Alejandro G. Castro <alex@igalia.com>
  58467. Reviewed by Xan Lopez.
  58468. Make the copy of the inspector files silent.
  58469. * GNUmakefile.am:
  58470. 2010-08-23 Andreas Kling <andreas.kling@nokia.com>
  58471. Reviewed by Kenneth Rohde Christiansen.
  58472. [Qt] -webkit-text-stroke is broken due to Qt::TextBypassShaping
  58473. https://bugs.webkit.org/show_bug.cgi?id=44403
  58474. Don't bypass the Harfbuzz shaping if we're drawing text with a stroke.
  58475. For canvas, always use complex text shaping since stroke and fill are decoupled.
  58476. * html/canvas/CanvasRenderingContext2D.cpp:
  58477. (WebCore::CanvasRenderingContext2D::measureText):
  58478. (WebCore::CanvasRenderingContext2D::drawTextInternal):
  58479. * platform/graphics/qt/FontQt.cpp:
  58480. (WebCore::drawTextCommon):
  58481. 2010-08-23 Mikhail Naganov <mnaganov@chromium.org>
  58482. Reviewed by Pavel Feldman.
  58483. Extract profiler-related code and data from InspectorController into
  58484. InspectorProfilerAgent.
  58485. https://bugs.webkit.org/show_bug.cgi?id=44174
  58486. * CMakeLists.txt:
  58487. * GNUmakefile.am:
  58488. * WebCore.exp.in:
  58489. * WebCore.gypi:
  58490. * WebCore.pro:
  58491. * WebCore.vcproj/WebCore.vcproj:
  58492. * WebCore.xcodeproj/project.pbxproj:
  58493. * bindings/js/ScriptProfiler.cpp:
  58494. (WebCore::ScriptProfiler::isProfilerAlwaysEnabled):
  58495. * bindings/js/ScriptProfiler.h:
  58496. * bindings/v8/ScriptProfiler.cpp:
  58497. (WebCore::ScriptProfiler::isProfilerAlwaysEnabled):
  58498. * bindings/v8/ScriptProfiler.h:
  58499. * inspector/CodeGeneratorInspector.pm:
  58500. * inspector/Inspector.idl:
  58501. * inspector/InspectorController.cpp:
  58502. (WebCore::InspectorController::InspectorController):
  58503. (WebCore::InspectorController::connectFrontend):
  58504. (WebCore::InspectorController::disconnectFrontend):
  58505. (WebCore::InspectorController::populateScriptObjects):
  58506. (WebCore::InspectorController::didCommitLoad):
  58507. (WebCore::InspectorController::addProfile):
  58508. (WebCore::InspectorController::addProfileFinishedMessageToConsole):
  58509. (WebCore::InspectorController::addStartProfilingMessageToConsole):
  58510. (WebCore::InspectorController::isRecordingUserInitiatedProfile):
  58511. (WebCore::InspectorController::getCurrentUserInitiatedProfileName):
  58512. (WebCore::InspectorController::startUserInitiatedProfiling):
  58513. (WebCore::InspectorController::stopUserInitiatedProfiling):
  58514. (WebCore::InspectorController::profilerEnabled):
  58515. (WebCore::InspectorController::enableProfiler):
  58516. (WebCore::InspectorController::disableProfiler):
  58517. * inspector/InspectorController.h:
  58518. (WebCore::InspectorController::profilerAgent):
  58519. * inspector/InspectorProfilerAgent.cpp: Added.
  58520. (WebCore::InspectorProfilerAgent::create):
  58521. (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
  58522. (WebCore::InspectorProfilerAgent::~InspectorProfilerAgent):
  58523. (WebCore::InspectorProfilerAgent::addProfile):
  58524. (WebCore::InspectorProfilerAgent::addProfileFinishedMessageToConsole):
  58525. (WebCore::InspectorProfilerAgent::addStartProfilingMessageToConsole):
  58526. (WebCore::InspectorProfilerAgent::createProfileHeader):
  58527. (WebCore::InspectorProfilerAgent::disable):
  58528. (WebCore::InspectorProfilerAgent::enable):
  58529. (WebCore::InspectorProfilerAgent::getCurrentUserInitiatedProfileName):
  58530. (WebCore::InspectorProfilerAgent::getProfileHeaders):
  58531. (WebCore::InspectorProfilerAgent::getProfile):
  58532. (WebCore::InspectorProfilerAgent::removeProfile):
  58533. (WebCore::InspectorProfilerAgent::resetState):
  58534. (WebCore::InspectorProfilerAgent::startUserInitiatedProfiling):
  58535. (WebCore::InspectorProfilerAgent::stopUserInitiatedProfiling):
  58536. (WebCore::InspectorProfilerAgent::toggleRecordButton):
  58537. * inspector/InspectorProfilerAgent.h: Added.
  58538. (WebCore::InspectorProfilerAgent::clearProfiles):
  58539. (WebCore::InspectorProfilerAgent::enabled):
  58540. (WebCore::InspectorProfilerAgent::isRecordingUserInitiatedProfile):
  58541. (WebCore::InspectorProfilerAgent::setRemoteFrontend):
  58542. (WebCore::InspectorProfilerAgent::startProfiling):
  58543. (WebCore::InspectorProfilerAgent::stopProfiling):
  58544. 2010-08-23 Ariya Hidayat <ariya@sencha.com>
  58545. Reviewed by Kenneth Rohde Christiansen.
  58546. [Qt] Crash when purging the scratch buffer for the shadow
  58547. https://bugs.webkit.org/show_bug.cgi?id=44384
  58548. WebCore::Timer can't be used in a static object bcause it relies on
  58549. thread global data, which is invalid once the application instance is
  58550. destroyed. To overcome the problem, use QObject's timer support for
  58551. the ShadowBuffer class.
  58552. * platform/graphics/qt/ContextShadow.cpp:
  58553. (WebCore::):
  58554. (WebCore::ShadowBuffer::ShadowBuffer):
  58555. (WebCore::ShadowBuffer::schedulePurge):
  58556. (WebCore::ShadowBuffer::timerEvent):
  58557. 2010-08-23 Philippe Normand <pnormand@igalia.com>
  58558. Reviewed by Xan Lopez.
  58559. [GStreamer] don't expose the private player in GStreamerGWorld
  58560. https://bugs.webkit.org/show_bug.cgi?id=44332
  58561. Only a pointer to our playbin2 element instance is required
  58562. instead of the whole MediaPlayerPrivateGStreamer instance.
  58563. * platform/graphics/gstreamer/GStreamerGWorld.cpp:
  58564. (WebCore::GStreamerGWorld::createGWorld):
  58565. (WebCore::GStreamerGWorld::GStreamerGWorld):
  58566. (WebCore::GStreamerGWorld::~GStreamerGWorld):
  58567. (WebCore::GStreamerGWorld::enterFullscreen):
  58568. (WebCore::GStreamerGWorld::exitFullscreen):
  58569. * platform/graphics/gstreamer/GStreamerGWorld.h:
  58570. (WebCore::GStreamerGWorld::pipeline):
  58571. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  58572. (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
  58573. 2010-08-22 Andreas Kling <andreas.kling@nokia.com>
  58574. Reviewed by Kenneth Rohde Christiansen.
  58575. [Qt] GraphicsContext: Simplify getting the clip bounding rect
  58576. https://bugs.webkit.org/show_bug.cgi?id=44396
  58577. Move the Qt 4.8 version check for QPainter::clipBoundingRect()
  58578. into a GraphicsContextPlatformPrivate method.
  58579. * platform/graphics/qt/GraphicsContextQt.cpp:
  58580. (WebCore::GraphicsContextPlatformPrivate::clipBoundingRect):
  58581. (WebCore::GraphicsContext::beginTransparencyLayer):
  58582. (WebCore::GraphicsContext::clipOut):
  58583. (WebCore::GraphicsContext::clipOutEllipseInRect):
  58584. 2010-08-22 Juha Savolainen <juha.savolainen@weego.fi>
  58585. Reviewed by Kenneth Rohde Christiansen.
  58586. [Qt] Add QTouchEvents support for WebKit2
  58587. https://bugs.webkit.org/show_bug.cgi?id=44330
  58588. This patch adds support for QTouchEvents in WebKit2. A new WebEvent-class
  58589. is created for touchevents, WebTouchEvent. Also touchpoints needed a new
  58590. class, WebPlatformTouchPoint. This is similar solution like in other
  58591. events(like MouseEvent) on WebKit2. These classes are introduced in WebEvent.h
  58592. Also there was a need to create an empty constructor to PlatformTouchPoint-class.
  58593. * platform/PlatformTouchPoint.h:
  58594. (WebCore::PlatformTouchPoint::PlatformTouchPoint):
  58595. 2010-08-22 Daniel Bates <dbates@rim.com>
  58596. Reviewed by Eric Seidel.
  58597. Encapsulate document marker management into DocumentMarkerController
  58598. https://bugs.webkit.org/show_bug.cgi?id=44383
  58599. Moves the document marker management code in Document.cpp into its own
  58600. class called DocumentMarkerController.
  58601. No functionality was changed, so no new tests.
  58602. * Android.mk: Added DocumentMarkerController.cpp
  58603. * CMakeLists.txt: Ditto.
  58604. * GNUmakefile.am: Added DocumentMarkerController.cpp and DocumentMarkerController.h.
  58605. * WebCore.exp.in: Substituted symbols __ZN7WebCore24DocumentMarkerController13removeMarkersENS_14DocumentMarker10MarkerTypeE
  58606. and __ZN7WebCore24DocumentMarkerController23renderedRectsForMarkersENS_14DocumentMarker10MarkerTypeE for
  58607. __ZN7WebCore8Document13removeMarkersENS_14DocumentMarker10MarkerTypeE and
  58608. __ZN7WebCore8Document23renderedRectsForMarkersENS_14DocumentMarker10MarkerTypeE, respectively.
  58609. * WebCore.gypi: Added DocumentMarkerController.cpp and DocumentMarkerController.h.
  58610. * WebCore.pro: Ditto.
  58611. * WebCore.vcproj/WebCore.vcproj: Ditto.
  58612. * WebCore.xcodeproj/project.pbxproj: Ditto.
  58613. * dom/Document.cpp:
  58614. (WebCore::Document::removedLastRef): Modified to call DocumentMarkerController::detach().
  58615. (WebCore::Document::~Document): Removed "deleteAllValues(m_markers)" as DocumentMarkerController
  58616. is stored in OwnPtr; so it will be destroyed automatically on Document destruction.
  58617. (WebCore::Document::textInserted): Modified to use marker controller.
  58618. (WebCore::Document::textRemoved): Ditto.
  58619. * dom/Document.h:
  58620. (WebCore::Document::markers): Added.
  58621. * dom/DocumentMarkerController.cpp: Added.
  58622. (WebCore::placeholderRectForMarker):
  58623. (WebCore::DocumentMarkerController::detach):
  58624. (WebCore::DocumentMarkerController::addMarker):
  58625. (WebCore::DocumentMarkerController::removeMarkers):
  58626. (WebCore::DocumentMarkerController::copyMarkers):
  58627. (WebCore::DocumentMarkerController::markerContainingPoint):
  58628. (WebCore::DocumentMarkerController::markersForNode):
  58629. (WebCore::DocumentMarkerController::renderedRectsForMarkers):
  58630. (WebCore::DocumentMarkerController::repaintMarkers):
  58631. (WebCore::DocumentMarkerController::setRenderedRectForMarker):
  58632. (WebCore::DocumentMarkerController::invalidateRenderedRectsForMarkersInRect):
  58633. (WebCore::DocumentMarkerController::shiftMarkers):
  58634. (WebCore::DocumentMarkerController::setMarkersActive):
  58635. * dom/DocumentMarkerController.h: Added.
  58636. (WebCore::DocumentMarkerController::~DocumentMarkerController):
  58637. * editing/Editor.cpp:
  58638. (WebCore::Editor::ignoreSpelling): Modified to use marker controller.
  58639. (WebCore::findFirstMisspellingInRange): Ditto.
  58640. (WebCore::findFirstGrammarDetailInRange): Ditto.
  58641. (WebCore::Editor::advanceToNextMisspelling): Ditto.
  58642. (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Ditto.
  58643. (WebCore::Editor::changeBackToReplacedString): Ditto.
  58644. * editing/SplitTextNodeCommand.cpp:
  58645. (WebCore::SplitTextNodeCommand::doApply): Ditto.
  58646. (WebCore::SplitTextNodeCommand::doUnapply): Ditto.
  58647. * page/Frame.cpp:
  58648. (WebCore::Frame::markAllMatchesForText): Ditto.
  58649. (WebCore::Frame::setMarkedTextMatchesAreHighlighted): Ditto.
  58650. (WebCore::Frame::respondToChangedSelection): Ditto.
  58651. * page/FrameView.cpp:
  58652. (WebCore::FrameView::getTickmarks): Ditto.
  58653. (WebCore::FrameView::paintContents): Ditto.
  58654. * page/Page.cpp:
  58655. (WebCore::Page::unmarkAllTextMatches): Ditto.
  58656. * rendering/HitTestResult.cpp:
  58657. (WebCore::HitTestResult::spellingToolTip): Ditto.
  58658. (WebCore::HitTestResult::replacedString): Ditto.
  58659. * rendering/InlineTextBox.cpp:
  58660. (WebCore::InlineTextBox::paintSpellingOrGrammarMarker): Ditto.
  58661. (WebCore::InlineTextBox::paintTextMatchMarker): Ditto.
  58662. (WebCore::InlineTextBox::computeRectForReplacementMarker): Ditto.
  58663. (WebCore::InlineTextBox::paintDocumentMarkers): Ditto.
  58664. * rendering/SVGInlineTextBox.cpp:
  58665. (WebCore::SVGInlineTextBox::computeTextMatchMarkerRect): Ditto.
  58666. 2010-08-22 Jian Li <jianli@chromium.org>
  58667. Reviewed by Darin Fisher.
  58668. Add the blob URL member to FormData.
  58669. https://bugs.webkit.org/show_bug.cgi?id=44387
  58670. This is in preparation to switch blob implementation to using BlobData
  58671. model. When a blob is added to a FormData, it is represented as a blob
  58672. URL in the list.
  58673. * platform/network/FormData.cpp:
  58674. (WebCore::FormData::appendBlob):
  58675. * platform/network/FormData.h:
  58676. (WebCore::FormDataElement::FormDataElement):
  58677. (WebCore::FormDataElement::):
  58678. (WebCore::operator==):
  58679. 2010-08-22 Eric Seidel <eric@webkit.org>
  58680. Reviewed by Adam Barth.
  58681. HTML5 TreeBuilder builds wrong DOM for <a><svg><tr><input></a>
  58682. https://bugs.webkit.org/show_bug.cgi?id=44390
  58683. The HTML5 spec has changed since Adam and I original wrote
  58684. the HTMLTreeBuilder. Most important for this change was resolution of:
  58685. http://www.w3.org/Bugs/Public/show_bug.cgi?id=9580
  58686. I also removed our "phrasing" tag support since that was also removed
  58687. from the spec as part of other bug fixes.
  58688. This is tested by tonyg's <a><svg><tr><input></a> test in adoption01.dat.
  58689. * html/HTMLTreeBuilder.cpp:
  58690. (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag):
  58691. (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
  58692. (WebCore::HTMLTreeBuilder::furthestBlockForFormattingElement):
  58693. (WebCore::HTMLTreeBuilder::processEndTag):
  58694. 2010-08-22 Andreas Kling <andreas.kling@nokia.com>
  58695. Reviewed by Ariya Hidayat.
  58696. [Qt] TransparencyLayer: Always use anti-aliasing and smooth pixmap transform
  58697. https://bugs.webkit.org/show_bug.cgi?id=44394
  58698. * platform/graphics/qt/TransparencyLayer.h:
  58699. (WebCore::TransparencyLayer::TransparencyLayer): Set the Antialiasing
  58700. and SmoothPixmapTransforms render hints for all TransparencyLayers.
  58701. 2010-08-22 Andreas Kling <andreas.kling@nokia.com>
  58702. Reviewed by Ariya Hidayat.
  58703. [Qt] Gradient: Support inner radius larger than outer radius
  58704. https://bugs.webkit.org/show_bug.cgi?id=44392
  58705. * platform/graphics/qt/GradientQt.cpp:
  58706. (WebCore::Gradient::platformGradient): Reverse the (radial) gradient if r0 > r1.
  58707. 2010-08-22 Ariya Hidayat <ariya@sencha.com>
  58708. Reviewed by Dirk Schulze.
  58709. [Qt] Layer approach to support generic shadow handling
  58710. https://bugs.webkit.org/show_bug.cgi?id=44380
  58711. The pair beginShadowLayer and endShadowLayer creates a temporary image
  58712. where the caller can draw onto, using the returned QPainter. When
  58713. endShadowLayer is called, the temporary image will be filtered, using
  58714. the specified shadow color and blur radius, and drawn to the graphics
  58715. context.
  58716. * platform/graphics/GraphicsContext.h:
  58717. * platform/graphics/qt/ContextShadow.cpp:
  58718. (WebCore::ContextShadow::beginShadowLayer):
  58719. (WebCore::ContextShadow::endShadowLayer):
  58720. * platform/graphics/qt/ContextShadow.h:
  58721. * platform/graphics/qt/GraphicsContextQt.cpp:
  58722. (WebCore::GraphicsContext::fillRect):
  58723. (WebCore::GraphicsContext::contextShadow):
  58724. 2010-08-21 Eric Carlson <eric.carlson@apple.com>
  58725. Reviewed by Dan Bernstein.
  58726. Media engine should not be asked to open all urls
  58727. https://bugs.webkit.org/show_bug.cgi?id=44370
  58728. * platform/graphics/MediaPlayer.cpp:
  58729. (WebCore::MediaPlayer::load): Do nothing with urls with a type attribute that would be
  58730. rejected by canPlayType().
  58731. 2010-08-21 Ariya Hidayat <ariya@sencha.com>
  58732. Reviewed by Kenneth Rohde Christiansen.
  58733. [Qt] Faster bounding rect for the shadow clip region
  58734. https://bugs.webkit.org/show_bug.cgi?id=44369
  58735. Like in r65650, we should use the faster QPainter::clipBoundingRect
  58736. when it is available.
  58737. * platform/graphics/qt/ContextShadow.cpp:
  58738. (WebCore::ContextShadow::drawShadowRect):
  58739. 2010-08-20 Girish Ramakrishnan <girish@forwardbias.in>
  58740. Reviewed by Ariya Hidayat.
  58741. [Qt] When using the raster graphics system on Maemo5, allow
  58742. Flash to render directly into the raster window surface.
  58743. wmode=transparent is now supported as a result of this change.
  58744. https://bugs.webkit.org/show_bug.cgi?id=44043
  58745. * plugins/qt/PluginViewQt.cpp:
  58746. (WebCore::PluginView::paintUsingImageSurfaceExtension):
  58747. 2010-08-20 Alexey Proskuryakov <ap@apple.com>
  58748. Reviewed by Brady Eidson.
  58749. https://bugs.webkit.org/show_bug.cgi?id=38428
  58750. HTTP code 500 (and other non-4xx codes) wrongfully treated as success for subresources
  58751. Test: http/tests/misc/script-500.html
  58752. * loader/loader.cpp: (WebCore::Loader::Host::didReceiveData): Treat all HTTP codes >= 400 as
  58753. error ones, since they are.
  58754. 2010-08-20 Tony Gentilcore <tonyg@chromium.org>
  58755. Reviewed by Adam Barth.
  58756. Crash in WebCore::Node::createRendererIfNeeded()
  58757. https://bugs.webkit.org/show_bug.cgi?id=44129
  58758. * dom/ContainerNode.cpp:
  58759. (WebCore::ContainerNode::insertBefore): Factor out core bit to insertBetween.
  58760. (WebCore::ContainerNode::insertBetween): Factored out of insertBefore.
  58761. (WebCore::ContainerNode::parserInsertBefore): Similar to insertBefore, but doesn't handle reparenting or dispatch DOM mutation events.
  58762. (WebCore::ContainerNode::removeChild): Factor out core bit to removeBetween.
  58763. (WebCore::ContainerNode::removeBetween): Facotred out of removeChild.
  58764. (WebCore::ContainerNode::parserRemoveChild): Similar to removeChild, but doesn't handle reparenting or dispatch DOM mutation events.
  58765. (WebCore::ContainerNode::addChildCommon):
  58766. (WebCore::ContainerNode::parserAddChild):
  58767. (WebCore::ContainerNode::legacyParserAddChild):
  58768. * dom/ContainerNode.h:
  58769. * dom/Node.cpp:
  58770. (WebCore::Node::parserRemoveChild):
  58771. (WebCore::Node::parserInsertBefore):
  58772. * dom/Node.h:
  58773. * html/HTMLConstructionSite.cpp:
  58774. (WebCore::HTMLConstructionSite::attach):
  58775. (WebCore::HTMLConstructionSite::attachAtSite): Use new parserInsertBefore.
  58776. * html/HTMLTreeBuilder.cpp:
  58777. (WebCore::HTMLTreeBuilder::passTokenToLegacyParser):
  58778. (WebCore::HTMLTreeBuilder::reparentChildren):
  58779. (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): Was missing a key bit from the spec about removing the old parent if it exists.
  58780. 2010-08-20 Kinuko Yasuda <kinuko@chromium.org>
  58781. Unreviewed; build fix. Had included wrong version of build file.
  58782. 2010-08-20 Martin Robinson <mrobinson@igalia.com>
  58783. Reviewed by Joseph Pecoraro.
  58784. [GTK] Inspector extensions tests fail on GTK+ bots because onSelectionChanged is missing
  58785. https://bugs.webkit.org/show_bug.cgi?id=44342
  58786. * GNUmakefile.am: Fix dependency tracking for copied web inspector files.
  58787. 2010-08-20 Kinuko Yasuda <kinuko@chromium.org>
  58788. Reviewed by Darin Fisher.
  58789. Add Callback implementation for FileSystem API
  58790. https://bugs.webkit.org/show_bug.cgi?id=44349
  58791. No new tests; tests will be added later.
  58792. * CMakeLists.txt:
  58793. * GNUmakefile.am:
  58794. * WebCore.gypi:
  58795. * WebCore.pro:
  58796. * WebCore.vcproj/WebCore.vcproj:
  58797. * WebCore.xcodeproj/project.pbxproj:
  58798. * storage/FileSystemCallbacks.cpp: Added.
  58799. * storage/FileSystemCallbacks.h: Added.
  58800. * storage/EntryCallback.h: Nits fix
  58801. * storage/FileSystemCallback.h: Nits fix
  58802. 2010-08-20 Andreas Kling <andreas.kling@nokia.com>
  58803. Reviewed by Ariya Hidayat.
  58804. [Qt] WebKit does not compile with --3d-canvas
  58805. https://bugs.webkit.org/show_bug.cgi?id=44335
  58806. - PlatformGLObject => Platform3DObject
  58807. - Implemented getAttachedShaders()
  58808. - Implemented bufferData() and bufferSubData() for ArrayBuffer*
  58809. - Removed reference to nonexistent variable in getImageData()
  58810. * platform/graphics/qt/GraphicsContext3DQt.cpp:
  58811. (WebCore::GraphicsContext3DInternal::GraphicsContext3DInternal):
  58812. (WebCore::GraphicsContext3D::attachShader):
  58813. (WebCore::GraphicsContext3D::getAttachedShaders):
  58814. (WebCore::GraphicsContext3D::bindAttribLocation):
  58815. (WebCore::GraphicsContext3D::bindBuffer):
  58816. (WebCore::GraphicsContext3D::bindFramebuffer):
  58817. (WebCore::GraphicsContext3D::bindRenderbuffer):
  58818. (WebCore::GraphicsContext3D::bindTexture):
  58819. (WebCore::GraphicsContext3D::bufferData):
  58820. (WebCore::GraphicsContext3D::bufferSubData):
  58821. (WebCore::GraphicsContext3D::compileShader):
  58822. (WebCore::GraphicsContext3D::detachShader):
  58823. (WebCore::GraphicsContext3D::framebufferRenderbuffer):
  58824. (WebCore::GraphicsContext3D::framebufferTexture2D):
  58825. (WebCore::GraphicsContext3D::getActiveAttrib):
  58826. (WebCore::GraphicsContext3D::getActiveUniform):
  58827. (WebCore::GraphicsContext3D::getAttribLocation):
  58828. (WebCore::GraphicsContext3D::isBuffer):
  58829. (WebCore::GraphicsContext3D::isFramebuffer):
  58830. (WebCore::GraphicsContext3D::isProgram):
  58831. (WebCore::GraphicsContext3D::isRenderbuffer):
  58832. (WebCore::GraphicsContext3D::isShader):
  58833. (WebCore::GraphicsContext3D::isTexture):
  58834. (WebCore::GraphicsContext3D::linkProgram):
  58835. (WebCore::GraphicsContext3D::shaderSource):
  58836. (WebCore::GraphicsContext3D::useProgram):
  58837. (WebCore::GraphicsContext3D::validateProgram):
  58838. (WebCore::GraphicsContext3D::getProgramiv):
  58839. (WebCore::GraphicsContext3D::getProgramInfoLog):
  58840. (WebCore::GraphicsContext3D::getShaderiv):
  58841. (WebCore::GraphicsContext3D::getShaderInfoLog):
  58842. (WebCore::GraphicsContext3D::getShaderSource):
  58843. (WebCore::GraphicsContext3D::getUniformfv):
  58844. (WebCore::GraphicsContext3D::getUniformiv):
  58845. (WebCore::GraphicsContext3D::getUniformLocation):
  58846. (WebCore::GraphicsContext3D::getImageData):
  58847. * platform/graphics/qt/GraphicsLayerQt.h:
  58848. 2010-08-20 Dan Bernstein <mitz@apple.com>
  58849. Reviewed by Dave Kilzer.
  58850. #ifdef-out some Leopard-and-earlier code.
  58851. * platform/graphics/mac/FontCustomPlatformData.cpp:
  58852. (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
  58853. 2010-08-20 Kenneth Russell <kbr@google.com>
  58854. Unreviewed, speculative Chromium build fix. Forward declare
  58855. IntSize in WebGLRenderingContext.h and include IntSize.h in .cpp.
  58856. * html/canvas/WebGLRenderingContext.cpp:
  58857. * html/canvas/WebGLRenderingContext.h:
  58858. 2010-08-20 Eric Carlson <eric.carlson@apple.com>
  58859. Reviewed by Dan Bernstein.
  58860. Media element canPlayType("application/octet-stream") not handled correctly
  58861. https://bugs.webkit.org/show_bug.cgi?id=44343
  58862. Test: media/media-can-play-octet-stream.html
  58863. * platform/graphics/MediaPlayer.cpp:
  58864. (WebCore::applicationOctetStream): New, accessor for static string used more than once.
  58865. (WebCore::textPlain): Ditto.
  58866. (WebCore::codecs): Ditto.
  58867. (WebCore::chooseBestEngineForTypeAndCodecs): Special case "application/octet-stream".
  58868. (WebCore::MediaPlayer::load): Use static static string methods.
  58869. (WebCore::MediaPlayer::supportsType): Special case "application/octet-stream".
  58870. 2010-08-20 Adrienne Walker <enne@google.com>
  58871. Reviewed by Kenneth Russell.
  58872. Implement HTMLVideoElement support for texImage2D and texSubImage2D
  58873. https://bugs.webkit.org/show_bug.cgi?id=33852
  58874. Test: fast/canvas/webgl/tex-image-and-sub-image-2d-with-video.html
  58875. * html/canvas/WebGLRenderingContext.cpp:
  58876. (WebCore::WebGLRenderingContext::WebGLRenderingContext):
  58877. (WebCore::WebGLRenderingContext::videoFrameToImage):
  58878. (WebCore::WebGLRenderingContext::texImage2D):
  58879. (WebCore::WebGLRenderingContext::texSubImage2D):
  58880. (WebCore::WebGLRenderingContext::LRUImageBufferCache::LRUImageBufferCache):
  58881. (WebCore::WebGLRenderingContext::LRUImageBufferCache::imageBuffer):
  58882. (WebCore::WebGLRenderingContext::LRUImageBufferCache::bubbleToFront):
  58883. * html/canvas/WebGLRenderingContext.h:
  58884. 2010-08-20 Dumitru Daniliuc <dumi@chromium.org>
  58885. Reviewed by Adam Barth.
  58886. Removing an incorrect ASSERT.
  58887. https://bugs.webkit.org/show_bug.cgi?id=44151
  58888. A failure in the preflight step of a transaction wrapper does not
  58889. guarantee that the transaction is rolled back (and it shouldn't).
  58890. Test: storage/change-version-no-crash-on-preflight-failure.html
  58891. * storage/SQLTransaction.cpp:
  58892. (WebCore::SQLTransaction::openTransactionAndPreflight):
  58893. 2010-08-20 David Leong <david.leong@nokia.com>
  58894. Reviewed by Laszlo Gombos.
  58895. [Qt] Update Symbian capabilities to remove AllFiles and DRM
  58896. Add CONFIG(production) variation for set of DLL capabilities.
  58897. DRM and AllFiles capabilities need to be audited for the sis
  58898. package to be signed.
  58899. No new tests.
  58900. * WebCore.pro: Updated Symbian Capabilities.
  58901. 2010-08-20 Joseph Pecoraro <joepeck@webkit.org>
  58902. Reviewed by David Kilzer.
  58903. Do Not Copy Subversion Related Files in Inspector Build Phase
  58904. https://bugs.webkit.org/show_bug.cgi?id=44353
  58905. * WebCore.xcodeproj/project.pbxproj: remove .svn directories in the "Copy Inspector Resources" build phase.
  58906. 2010-08-19 Ryosuke Niwa <rniwa@webkit.org>
  58907. Reviewed by Adam Barth.
  58908. style correction in markup.cpp
  58909. https://bugs.webkit.org/show_bug.cgi?id=44318
  58910. Make markup.cpp pass check-webkit-style.
  58911. No new tests are added since this is a cleanup.
  58912. * editing/markup.cpp:
  58913. (WebCore::MarkupAccumulator::appendAttributeValue):
  58914. (WebCore::appendEscapedContent):
  58915. (WebCore::MarkupAccumulator::appendStartMarkup):
  58916. (WebCore::completeURLs):
  58917. (WebCore::isElementPresentational):
  58918. (WebCore::isSpecialAncestorBlock):
  58919. (WebCore::shouldIncludeWrapperForFullySelectedRoot):
  58920. (WebCore::createMarkup):
  58921. (WebCore::fillContainerFromString):
  58922. (WebCore::createFragmentFromText):
  58923. (WebCore::createFragmentFromNodes):
  58924. 2010-08-20 Tony Chang <tony@chromium.org>
  58925. Reviewed by Adam Barth.
  58926. crash when trying to access a stale Node pointer in FocusController::setFocusedNode
  58927. https://bugs.webkit.org/show_bug.cgi?id=44226
  58928. Test: fast/events/focus-change-crash2.html
  58929. * page/FocusController.cpp:
  58930. (WebCore::FocusController::setFocusedNode): add a ref to prevent the focused node from being deleted
  58931. 2010-08-20 Simon Fraser <simon.fraser@apple.com>
  58932. Reviewed by Dan Bernstein.
  58933. <rdar://problem/8245719> backface-visibility and reflections don't play nicely together.
  58934. On elements with a reflection and backface-visibility: hidden, set the doubleSided property on the
  58935. reflection flattening layer so that backface-visibility works in all configurations.
  58936. Test: compositing/reflections/backface-hidden-reflection.html
  58937. * platform/graphics/mac/GraphicsLayerCA.mm:
  58938. (WebCore::GraphicsLayerCA::updateBackfaceVisibility): Call setDoubleSided: on the structural
  58939. layer for reflections.
  58940. (WebCore::GraphicsLayerCA::ensureStructuralLayer): Fix a comment typo, and call updateBackfaceVisibility()
  58941. when we gain a structural layer.
  58942. 2010-08-20 Simon Fraser <simon.fraser@apple.com>
  58943. Reviewed by Dan Bernstein.
  58944. Slider labels do not update as you move the sliders on this page
  58945. https://bugs.webkit.org/show_bug.cgi?id=41020
  58946. When repainting after layout in a multicol element, we need to adjust the
  58947. repaint rect for the columns.
  58948. Test: fast/repaint/multicol-repaint.html
  58949. * rendering/RenderBlock.cpp:
  58950. (WebCore::RenderBlock::layoutBlock):
  58951. 2010-08-20 Jian Li <jianli@chromium.org>
  58952. Reviewed by David Levin.
  58953. Move FileStreamClient to platform and add AsyncFileStream interface.
  58954. https://bugs.webkit.org/show_bug.cgi?id=44224
  58955. * GNUmakefile.am:
  58956. * WebCore.gypi:
  58957. * WebCore.pro:
  58958. * WebCore.vcproj/WebCore.vcproj:
  58959. * WebCore.xcodeproj/project.pbxproj:
  58960. * html/FileStreamProxy.cpp: Account for the change.
  58961. (WebCore::FileStreamProxy::FileStreamProxy):
  58962. (WebCore::FileStreamProxy::stop):
  58963. * html/FileStreamProxy.h: Make it derive from AsyncFileStream.h.
  58964. * platform/AsyncFileStream.h: Added.
  58965. * platform/FileStreamClient.h: Renamed from WebCore/html/FileStreamClient.h.
  58966. 2010-08-20 Abhishek Arya <inferno@chromium.org>
  58967. Reviewed by Darin Fisher.
  58968. Prevent use of stale notification presenter pointer in notifications by instead using
  58969. a notification center pointer and deriving the presenter from it. Notification presenter
  58970. gets properly destroyed using disconnectFrame function inside notification center. Add
  58971. null checks for notification presenter.
  58972. https://bugs.webkit.org/show_bug.cgi?id=43645
  58973. Test: fast/notifications/notifications-window-close-crash.html
  58974. * notifications/Notification.cpp:
  58975. (WebCore::Notification::Notification):
  58976. (WebCore::Notification::create):
  58977. (WebCore::Notification::show):
  58978. (WebCore::Notification::cancel):
  58979. (WebCore::Notification::contextDestroyed):
  58980. (WebCore::Notification::finishLoading):
  58981. * notifications/Notification.h:
  58982. (WebCore::Notification::detachPresenter):
  58983. * notifications/NotificationCenter.h:
  58984. (WebCore::NotificationCenter::createHTMLNotification):
  58985. (WebCore::NotificationCenter::createNotification):
  58986. 2010-08-20 Martin Robinson <mrobinson@igalia.com>
  58987. Reviewed by Xan Lopez.
  58988. r64526 broke the GTK+-3 build
  58989. https://bugs.webkit.org/show_bug.cgi?id=44254
  58990. No new tests, as this is covered by manual-tests/cursor.html.
  58991. * platform/gtk/CursorGtk.cpp:
  58992. (WebCore::createPixmapFromBits): Added this method which turns the inline data
  58993. structures into GdkPixmaps using Cairo and GDK-Cairo.
  58994. (WebCore::createNamedCursor): Modified this method to use the new helper.
  58995. * platform/gtk/CursorGtk.h: Changed all inline data structures to be unsigned
  58996. char arrays (which Cairo requires). The progress cursor is known in X11 icon themes
  58997. as "left_ptr_watch." This change to the name preserves the old behavior of taking this
  58998. icon from the theme when available. It seems that this worked in the past due to a fluke
  58999. or failure of the previous code.
  59000. 2010-08-20 Martin Robinson <mrobinson@igalia.com>
  59001. Reviewed by Dirk Schulze.
  59002. [Cairo] Eliminate full-surface copy from canvas.drawImage(...)
  59003. https://bugs.webkit.org/show_bug.cgi?id=44190
  59004. Covered by canvas layout tests.
  59005. * platform/graphics/cairo/ImageBufferCairo.cpp:
  59006. (WebCore::ImageBuffer::drawsUsingCopy): Return false now.
  59007. (WebCore::ImageBuffer::clip): Add a link to the bug which tracks this feature.
  59008. (WebCore::ImageBuffer::draw): Construct the bitmap image without the full-surface copy.
  59009. (WebCore::ImageBuffer::drawPattern): Ditto.
  59010. 2010-08-20 Alejandro G. Castro <alex@igalia.com>
  59011. Reviewed by Xan Lopez.
  59012. [REGRESSION] r65608 broke gtk distcheck
  59013. https://bugs.webkit.org/show_bug.cgi?id=44333
  59014. Define the inspector.html as a noinst_DATA intead of using the dir
  59015. suffix, which is used for installation.
  59016. * GNUmakefile.am:
  59017. 2010-08-19 Pavel Podivilov <podivilov@chromium.org>
  59018. Reviewed by Yury Semikhatsky.
  59019. Web Inspector: implement breaking on DOM node subtree mutations.
  59020. https://bugs.webkit.org/show_bug.cgi?id=42886
  59021. Add two entries to Web Inspector DOM element context menu:
  59022. 1. "Stop on subtree modifications": will break on adding/removing of any element which is a child of the DOM element
  59023. 2. "Remove breakpoints": will remove all breakpoints associated with the DOM element
  59024. * English.lproj/localizedStrings.js:
  59025. * bindings/js/ScriptDebugServer.cpp:
  59026. (WebCore::ScriptDebugServer::breakProgram):
  59027. * bindings/js/ScriptDebugServer.h:
  59028. * bindings/v8/ScriptDebugServer.cpp:
  59029. (WebCore::ScriptDebugServer::breakProgram):
  59030. (WebCore::ScriptDebugServer::breakProgramCallback):
  59031. (WebCore::ScriptDebugServer::handleV8DebugEvent):
  59032. * bindings/v8/ScriptDebugServer.h:
  59033. * inspector/Inspector.idl:
  59034. * inspector/InspectorDOMAgent.cpp:
  59035. (WebCore::InspectorDOMAgent::~InspectorDOMAgent):
  59036. (WebCore::InspectorDOMAgent::discardBindings):
  59037. (WebCore::InspectorDOMAgent::setDOMBreakpoint):
  59038. (WebCore::InspectorDOMAgent::removeDOMBreakpoint):
  59039. (WebCore::InspectorDOMAgent::didInsertDOMNode):
  59040. (WebCore::InspectorDOMAgent::didRemoveDOMNode):
  59041. (WebCore::InspectorDOMAgent::hasBreakpoint):
  59042. (WebCore::InspectorDOMAgent::pauseOnBreakpoint):
  59043. (WebCore::InspectorDOMAgent::updateSubtreeBreakpoints):
  59044. * inspector/InspectorDOMAgent.h:
  59045. * inspector/front-end/ElementsTreeOutline.js:
  59046. (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
  59047. * inspector/front-end/Settings.js:
  59048. 2010-08-20 Yury Semikhatsky <yurys@chromium.org>
  59049. Reviewed by Pavel Feldman.
  59050. Web Inspector: discard InjectedScript reference on ScriptState when clearing injected scripts
  59051. https://bugs.webkit.org/show_bug.cgi?id=44328
  59052. Otherwise if the reference is not cleared we may remove InjectedScript from the
  59053. map on InjectedScriptHost but keep it on ScriptState and try to reuse it later.
  59054. * bindings/js/JSInjectedScriptHostCustom.cpp:
  59055. (WebCore::InjectedScriptHost::discardInjectedScript):
  59056. * bindings/v8/V8HiddenPropertyName.h:
  59057. * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
  59058. (WebCore::InjectedScriptHost::discardInjectedScript):
  59059. (WebCore::InjectedScriptHost::injectedScriptFor):
  59060. * inspector/InjectedScript.h:
  59061. (WebCore::InjectedScript::scriptState):
  59062. * inspector/InjectedScriptHost.cpp:
  59063. (WebCore::InjectedScriptHost::discardInjectedScripts):
  59064. * inspector/InjectedScriptHost.h:
  59065. 2010-08-20 Nikolas Zimmermann <nzimmermann@rim.com>
  59066. Reviewed by Dirk Schulze.
  59067. Clippers are rasterized, when applied to scaled target object
  59068. https://bugs.webkit.org/show_bug.cgi?id=44325
  59069. Use SVGImageBufferTools logic for RenderSVGResourceClipper, just like RenderSVGResourceMasker/Gradient,
  59070. to avoid pixelation, when the clipper is applied to a scaled target object, or when the document is scaled.
  59071. Test: svg/clip-path/clip-path-pixelation.svg
  59072. * rendering/RenderSVGResourceClipper.cpp:
  59073. (WebCore::RenderSVGResourceClipper::applyClippingToContext):
  59074. (WebCore::RenderSVGResourceClipper::createClipData):
  59075. * rendering/RenderSVGResourceClipper.h:
  59076. 2010-08-20 Andreas Kling <andreas.kling@nokia.com>
  59077. Reviewed by Kenneth Rohde Christiansen.
  59078. [Qt] Initialize GDK before loading plugins
  59079. https://bugs.webkit.org/show_bug.cgi?id=44324
  59080. Attempt to call gdk_init_check() before loading any plugins.
  59081. This prevents various crashes and freezes in Adobe's Flash plugin.
  59082. * plugins/qt/PluginPackageQt.cpp:
  59083. (WebCore::initializeGdkIfPossible):
  59084. (WebCore::PluginPackage::load):
  59085. 2010-08-20 Dan Bernstein <mitz@apple.com>
  59086. Reviewed by Mark Rowe.
  59087. Follow-up to r41020.
  59088. No change in behavior, thus no new tests.
  59089. * platform/graphics/mac/FontPlatformDataMac.mm:
  59090. (WebCore::FontPlatformData::FontPlatformData): Asserted that the NSFont parameter is not nil,
  59091. and removed nil check.
  59092. (WebCore::FontPlatformData::setFont): Asserted that the NSFont parameter is not nil and that
  59093. this is not the deleted value, and removed code to handle those cases.
  59094. 2010-08-19 Vincent Scheib <scheib@chromium.org>
  59095. Reviewed by David Levin.
  59096. [chromium] TilingData::tilePositionY has typo of X where Y should be used
  59097. https://bugs.webkit.org/show_bug.cgi?id=44195
  59098. Corrected error, and rewrote functions to use for loop instead of recursion.
  59099. Unit Tests added to WebKit/chromium/tests/TilingDataTest.cpp
  59100. * platform/graphics/chromium/TilingData.cpp:
  59101. (WebCore::TilingData::tilePositionX):
  59102. (WebCore::TilingData::tilePositionY):
  59103. 2010-08-19 Mihai Parparita <mihaip@chromium.org>
  59104. Reviewed by Brady Eidson.
  59105. Assertion failure when going back inside frame during onload
  59106. https://bugs.webkit.org/show_bug.cgi?id=44217
  59107. Fix assertion failure when doing a history.back() within the main frame
  59108. during onload of a child frame. This would happen when
  59109. HISTORY_ALWAYS_ASYNC was set to 0, because we would only compare the
  59110. current frame document sequence numbers when determining if we're in the
  59111. same document, instead of also recursing over child frames.
  59112. Test: fast/history/history-back-within-subframe-hash.html
  59113. * history/HistoryItem.cpp:
  59114. (WebCore::HistoryItem::hasSameDocuments):
  59115. * history/HistoryItem.h:
  59116. * loader/RedirectScheduler.cpp:
  59117. (WebCore::RedirectScheduler::scheduleHistoryNavigation):
  59118. 2010-08-19 Balazs Kelemen <kb@inf.u-szeged.hu>
  59119. Reviewed by Antonio Gomes.
  59120. [Qt] Fix cursor change propagation
  59121. https://bugs.webkit.org/show_bug.cgi?id=44250
  59122. No functional change so new tests.
  59123. Propagate the setCursor callback to the PageClient via the HostWindow instead of preassuming
  59124. the concrete type of the ChromeClient (what was generally wrong and actually incompatible with WebKit2).
  59125. * platform/qt/WidgetQt.cpp:
  59126. (WebCore::Widget::setCursor):
  59127. 2010-08-19 Vangelis Kokkevis <vangelis@chromium.org>
  59128. Reviewed by Kenneth Russell.
  59129. [chromium] Rearranging the accelerated compositing code such that the
  59130. layer rendering logic now lives in the layer classes rather than the
  59131. compositor. This lifts the restriction of having one texture per layer
  59132. and significantly cleans up the compositor code. This change mostly
  59133. resulted in a lot of code moving around files. Noteworthy changes
  59134. include:
  59135. * Made LayerChromium a proper based class for layers that mostly handles
  59136. the updates to the layer properties and superlayer / sublayer updates.
  59137. * Introduced a new layer type, ContentLayerChromium, which handles
  59138. layers that require a GraphicsContext to render their content.
  59139. * ImageLayerChromium and VideoLayerChromium now derive from
  59140. ContentLayerChromium as they share the same shader and draw function.
  59141. * Removed TransformLayerChromium as its functionality is now replaced by
  59142. the base LayerChromium class.
  59143. * Re-arranged the order in which the members of LayerChromium are defined
  59144. in the header file to form a more reasonable logical grouping.
  59145. * Changed LayerRendererChromium to use the shader creation and drawing
  59146. methods defined in the layer classes. As a result, a lot of GL code was
  59147. removed from the implementation file.
  59148. * Eliminated randomly dispersed calls to check for GL errors by a macro (GLC)
  59149. which allows turning error testing on/off with a single define (DEBUG_GL_CALLS
  59150. defined in LayerRendererChromium.h)
  59151. * Replaced the previous layer render loop with two traversals of the layer
  59152. hierarchy, the first to update transforms and opacity values and the
  59153. second to render the layers. Eliminated global Z sorting of all layers as
  59154. it was wrong.
  59155. https://bugs.webkit.org/show_bug.cgi?id=44148
  59156. Test: Verified that pages using the compositor and compositor
  59157. layout tests have not regressed.
  59158. * WebCore.gypi:
  59159. * platform/graphics/chromium/CanvasLayerChromium.cpp:
  59160. (WebCore::CanvasLayerChromium::SharedValues::SharedValues):
  59161. (WebCore::CanvasLayerChromium::SharedValues::~SharedValues):
  59162. (WebCore::CanvasLayerChromium::updateContents):
  59163. (WebCore::CanvasLayerChromium::draw):
  59164. * platform/graphics/chromium/CanvasLayerChromium.h:
  59165. (WebCore::CanvasLayerChromium::SharedValues::canvasShaderProgram):
  59166. (WebCore::CanvasLayerChromium::SharedValues::shaderSamplerLocation):
  59167. (WebCore::CanvasLayerChromium::SharedValues::shaderMatrixLocation):
  59168. (WebCore::CanvasLayerChromium::SharedValues::shaderAlphaLocation):
  59169. (WebCore::CanvasLayerChromium::SharedValues::initialized):
  59170. * platform/graphics/chromium/ContentLayerChromium.cpp: Added.
  59171. (WebCore::ContentLayerChromium::SharedValues::SharedValues):
  59172. (WebCore::ContentLayerChromium::SharedValues::~SharedValues):
  59173. (WebCore::ContentLayerChromium::create):
  59174. (WebCore::ContentLayerChromium::ContentLayerChromium):
  59175. (WebCore::ContentLayerChromium::~ContentLayerChromium):
  59176. (WebCore::ContentLayerChromium::updateContents):
  59177. (WebCore::ContentLayerChromium::updateTextureRect):
  59178. (WebCore::ContentLayerChromium::draw):
  59179. * platform/graphics/chromium/ContentLayerChromium.h: Added.
  59180. (WebCore::ContentLayerChromium::drawsContent):
  59181. (WebCore::ContentLayerChromium::SharedValues::contentShaderProgram):
  59182. (WebCore::ContentLayerChromium::SharedValues::shaderSamplerLocation):
  59183. (WebCore::ContentLayerChromium::SharedValues::shaderMatrixLocation):
  59184. (WebCore::ContentLayerChromium::SharedValues::shaderAlphaLocation):
  59185. (WebCore::ContentLayerChromium::SharedValues::initialized):
  59186. * platform/graphics/chromium/GraphicsLayerChromium.cpp:
  59187. (WebCore::GraphicsLayerChromium::GraphicsLayerChromium):
  59188. (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
  59189. * platform/graphics/chromium/ImageLayerChromium.cpp:
  59190. (WebCore::ImageLayerChromium::ImageLayerChromium):
  59191. (WebCore::ImageLayerChromium::updateContents):
  59192. * platform/graphics/chromium/ImageLayerChromium.h:
  59193. * platform/graphics/chromium/LayerChromium.cpp:
  59194. (WebCore::loadShader):
  59195. (WebCore::LayerChromium::SharedValues::SharedValues):
  59196. (WebCore::LayerChromium::SharedValues::~SharedValues):
  59197. (WebCore::LayerChromium::LayerChromium):
  59198. (WebCore::LayerChromium::~LayerChromium):
  59199. (WebCore::LayerChromium::createShaderProgram):
  59200. (WebCore::LayerChromium::toGLMatrix):
  59201. (WebCore::LayerChromium::drawTexturedQuad):
  59202. (WebCore::LayerChromium::drawDebugBorder):
  59203. (WebCore::LayerChromium::prepareForDraw):
  59204. * platform/graphics/chromium/LayerChromium.h:
  59205. (WebCore::LayerChromium::getSublayers):
  59206. (WebCore::LayerChromium::setPosition):
  59207. (WebCore::LayerChromium::contentsDirty):
  59208. (WebCore::LayerChromium::drawsContent):
  59209. (WebCore::LayerChromium::updateContents):
  59210. (WebCore::LayerChromium::draw):
  59211. (WebCore::LayerChromium::SharedValues::quadVerticesVbo):
  59212. (WebCore::LayerChromium::SharedValues::quadElementsVbo):
  59213. (WebCore::LayerChromium::SharedValues::maxTextureSize):
  59214. (WebCore::LayerChromium::SharedValues::borderShaderProgram):
  59215. (WebCore::LayerChromium::SharedValues::borderShaderMatrixLocation):
  59216. (WebCore::LayerChromium::SharedValues::borderShaderColorLocation):
  59217. (WebCore::LayerChromium::SharedValues::initialized):
  59218. (WebCore::LayerChromium::layerRenderer):
  59219. * platform/graphics/chromium/LayerRendererChromium.cpp:
  59220. (WebCore::LayerRendererChromium::LayerRendererChromium):
  59221. (WebCore::LayerRendererChromium::~LayerRendererChromium):
  59222. (WebCore::LayerRendererChromium::debugGLCall):
  59223. (WebCore::LayerRendererChromium::useShader):
  59224. (WebCore::LayerRendererChromium::drawLayers):
  59225. (WebCore::LayerRendererChromium::createLayerTexture):
  59226. (WebCore::LayerRendererChromium::updateLayersRecursive):
  59227. (WebCore::LayerRendererChromium::drawLayersRecursive):
  59228. (WebCore::LayerRendererChromium::drawLayer):
  59229. (WebCore::LayerRendererChromium::checkTextureSize):
  59230. (WebCore::LayerRendererChromium::initializeSharedObjects):
  59231. (WebCore::LayerRendererChromium::cleanupSharedObjects):
  59232. * platform/graphics/chromium/LayerRendererChromium.h:
  59233. (WebCore::LayerRendererChromium::projectionMatrix):
  59234. (WebCore::LayerRendererChromium::layerSharedValues):
  59235. (WebCore::LayerRendererChromium::contentLayerSharedValues):
  59236. (WebCore::LayerRendererChromium::canvasLayerSharedValues):
  59237. * platform/graphics/chromium/TransformLayerChromium.cpp: Removed.
  59238. * platform/graphics/chromium/TransformLayerChromium.h: Removed.
  59239. * platform/graphics/chromium/VideoLayerChromium.cpp:
  59240. (WebCore::VideoLayerChromium::VideoLayerChromium):
  59241. (WebCore::VideoLayerChromium::updateContents):
  59242. (WebCore::VideoLayerChromium::createTextureRect):
  59243. * platform/graphics/chromium/VideoLayerChromium.h:
  59244. 2010-08-19 David Kilzer <ddkilzer@apple.com>
  59245. BUILD FIX: Fix Mac build after Windows WebKit2 changes for Netscape Plug-ins
  59246. * WebCore.exp.in:
  59247. (WebCore::ScrollView::contentsToWindow): Added export.
  59248. 2010-08-19 David Kilzer <ddkilzer@apple.com>
  59249. BUILD FIX #3: <http://webkit.org/b/44285> Fix compilation with NETSCAPE_PLUGIN_API disabled
  59250. Still trying to make Qt Linux Release minimal buildbot happy.
  59251. * plugins/PluginViewNone.cpp: Compile missing methods for Qt.
  59252. 2010-08-19 David Kilzer <ddkilzer@apple.com>
  59253. BUILD FIX: <http://webkit.org/b/44285> Fix compilation with NETSCAPE_PLUGIN_API disabled
  59254. Reviewed by Joseph Pecoraro.
  59255. * plugins/PluginView.cpp: Added #if ENABLE(NETSCAPE_PLUGIN_API)
  59256. and #endif macros around the source to fix the Qt Linux Release
  59257. Minimal build.
  59258. 2010-08-19 Stephen White <senorblanco@chromium.org>
  59259. Reviewed by Kenneth Russell.
  59260. [CHROMIUM] Assert w/canvas image draw
  59261. https://bugs.webkit.org/show_bug.cgi?id=44279
  59262. Don't use bitmap->pixelRef()->getPixels() directly; prefer
  59263. bitmap->pixels() and an SkAutoLockPixels. Also, make sure to set
  59264. the backing store state to Software when it was None. This handles
  59265. missing draws when the first call is software. Finally, remove some
  59266. spurious prepareForSoftwareDraw() calls in addPath() and beginPath().
  59267. It's really the fillPath() or strokePath() that matters.
  59268. Covered by LayoutTests/fast/canvas/arc360.html and others.
  59269. * platform/graphics/skia/GraphicsContextSkia.cpp:
  59270. (WebCore::GraphicsContext::addPath):
  59271. (WebCore::GraphicsContext::beginPath):
  59272. Remove spurious prepareForSoftwareDraw() calls.
  59273. * platform/graphics/skia/ImageSkia.cpp:
  59274. (WebCore::drawBitmapGLES2):
  59275. Lock SkBitmap's pixels, and use ->getPixels().
  59276. * platform/graphics/skia/PlatformContextSkia.cpp:
  59277. (WebCore::PlatformContextSkia::prepareForSoftwareDraw):
  59278. Switch backing store state to Software when it was None.
  59279. 2010-08-19 David Kilzer <ddkilzer@apple.com>
  59280. <http://webkit.org/b/44285> Fix compilation with NETSCAPE_PLUGIN_API disabled
  59281. Reviewed by Joseph Pecoraro.
  59282. * WebCore.exp.in:
  59283. (WebCore::HTMLPlugInElement::getNPObject): Moved from general
  59284. section into ENABLE(NETSCAPE_PLUGIN_API) section.
  59285. (WebCore::FrameView::windowClipRectForLayer): Moved from
  59286. ENABLE(NETSCAPE_PLUGIN_API) section to general section since
  59287. it's used by WebKit2.
  59288. * plugins/PluginView.h: Added #if ENABLE(NETSCAPE_PLUGIN_API)
  59289. and #endif macros as needed to make iOS WebKit build with
  59290. NETSCAPE_PLUGIN_API disabled.
  59291. * plugins/PluginViewNone.cpp: Ditto.
  59292. (WebCore::PluginView::platformGetValueStatic):
  59293. 2010-08-17 Eric Seidel <eric@webkit.org>
  59294. Reviewed by Adam Barth.
  59295. Make DocumentParser safer to use
  59296. https://bugs.webkit.org/show_bug.cgi?id=43055
  59297. Make DocumentParser and its subclasses RefCounted, and protect
  59298. HTMLDocumentParser during parsing. It's possible for a parser to
  59299. get deleted if certain actions (e.g., a document.write()) occur
  59300. synchronously.
  59301. The original version of this patch was written by Nate Chapin.
  59302. DocumentParser doesn't actually have to be fully RefCounted, since
  59303. the only two things which should ever hold a reference to it are
  59304. Document and DocumentParser itself. However using RefCounted and
  59305. RefPtr was easier/cleaner than inventing a custom ref() scheme.
  59306. This deploys a new "detach()" method throughout the parsing
  59307. framework. detach() causes the parser to disconnect from the
  59308. document so that no further modifications will be made to the
  59309. document while any possible DocumentParser stacks are unwound.
  59310. The irony of this patch is that the new detach() system is never
  59311. used, since Document always outlives the DocumentParser in all of
  59312. our layout tests. There is an ASSERT in ~Document() to verify
  59313. that the DocumentParser will not outlive the Document.
  59314. However I expect that we will soon either find new test cases, or change
  59315. the architecture in such a way that DocumentParser will outlive
  59316. Document. At which point, the detach() plumbing will be crucial.
  59317. Right now detach() serves as a safe-guard against use-after-free bugs
  59318. for any case where DocumentParser does outlive the Document.
  59319. This also fixes test cases attached to:
  59320. https://bugs.webkit.org/show_bug.cgi?id=42099
  59321. Tests: fast/frames/document-write-in-iframe-onload.html
  59322. fast/frames/set-parent-src-synchronously.html
  59323. fast/parser/document-close-iframe-load.html
  59324. fast/parser/document-close-nested-iframe-load.html
  59325. fast/parser/iframe-sets-parent-to-javascript-url.html
  59326. * dom/Document.cpp:
  59327. - Added a new detachParser() call to be used anywhere we
  59328. used to call m_parser.clear().
  59329. There is an ASSERT in ~DocumentParser which ensures that
  59330. we get this right.
  59331. (WebCore::Document::removedLastRef):
  59332. (WebCore::Document::~Document):
  59333. (WebCore::Document::createParser):
  59334. (WebCore::Document::detachParser):
  59335. (WebCore::Document::cancelParsing):
  59336. (WebCore::Document::implicitOpen):
  59337. - removed redundant m_parser.clear()
  59338. (WebCore::Document::implicitClose):
  59339. * dom/Document.h:
  59340. * dom/DocumentParser.cpp:
  59341. (WebCore::DocumentParser::~DocumentParser):
  59342. - ASSERT that callers always call detach() before destruction.
  59343. - This ASSERT might prove too cumbersome, but for now it's useful.
  59344. (WebCore::DocumentParser::detach):
  59345. * dom/DocumentParser.h:
  59346. * dom/RawDataDocumentParser.h:
  59347. * dom/XMLDocumentParser.cpp:
  59348. (WebCore::XMLDocumentParser::finish):
  59349. - Add a FIXME explaining part of the reason why
  59350. stopParsing() and detach() are separate concepts.
  59351. * dom/XMLDocumentParser.h:
  59352. (WebCore::XMLDocumentParser::create):
  59353. * dom/XMLDocumentParserLibxml2.cpp:
  59354. (WebCore::XMLDocumentParser::parseDocumentFragment):
  59355. * dom/XMLDocumentParserQt.cpp:
  59356. (WebCore::XMLDocumentParser::parseDocumentFragment):
  59357. * html/HTMLConstructionSite.cpp:
  59358. (WebCore::HTMLConstructionSite::detach):
  59359. (WebCore::HTMLConstructionSite::dispatchDocumentElementAvailableIfNeeded):
  59360. * html/HTMLConstructionSite.h:
  59361. * html/HTMLDocument.cpp:
  59362. (WebCore::HTMLDocument::createParser):
  59363. * html/HTMLDocument.h:
  59364. * html/HTMLDocumentParser.cpp:
  59365. - We need to protect(this) before calling into any code
  59366. which might cause the parser to be destroyed.
  59367. (WebCore::HTMLDocumentParser::~HTMLDocumentParser):
  59368. (WebCore::HTMLDocumentParser::detach):
  59369. (WebCore::HTMLDocumentParser::resumeParsingAfterYield):
  59370. (WebCore::HTMLDocumentParser::pumpTokenizer):
  59371. (WebCore::HTMLDocumentParser::insert):
  59372. (WebCore::HTMLDocumentParser::append):
  59373. (WebCore::HTMLDocumentParser::end):
  59374. (WebCore::HTMLDocumentParser::finish):
  59375. (WebCore::HTMLDocumentParser::notifyFinished):
  59376. (WebCore::HTMLDocumentParser::executeScriptsWaitingForStylesheets):
  59377. (WebCore::HTMLDocumentParser::parseDocumentFragment):
  59378. * html/HTMLDocumentParser.h:
  59379. (WebCore::HTMLDocumentParser::create):
  59380. * html/HTMLScriptRunner.cpp:
  59381. (WebCore::HTMLScriptRunner::detach):
  59382. (WebCore::HTMLScriptRunner::executeParsingBlockingScript):
  59383. (WebCore::HTMLScriptRunner::executeScript):
  59384. (WebCore::HTMLScriptRunner::executeScriptsWaitingForStylesheets):
  59385. (WebCore::HTMLScriptRunner::runScript):
  59386. * html/HTMLScriptRunner.h:
  59387. * html/HTMLTreeBuilder.cpp:
  59388. (WebCore::HTMLTreeBuilder::detach):
  59389. (WebCore::HTMLTreeBuilder::passTokenToLegacyParser):
  59390. (WebCore::HTMLTreeBuilder::finished):
  59391. * html/HTMLTreeBuilder.h:
  59392. * html/HTMLViewSourceDocument.cpp:
  59393. (WebCore::HTMLViewSourceDocument::createParser):
  59394. * html/HTMLViewSourceDocument.h:
  59395. * html/HTMLViewSourceParser.cpp:
  59396. (WebCore::HTMLViewSourceParser::HTMLViewSourceParser):
  59397. * html/HTMLViewSourceParser.h:
  59398. (WebCore::HTMLViewSourceParser::create):
  59399. * loader/FTPDirectoryDocument.cpp:
  59400. (WebCore::FTPDirectoryDocumentParser::create):
  59401. (WebCore::FTPDirectoryDocument::createParser):
  59402. * loader/FTPDirectoryDocument.h:
  59403. * loader/ImageDocument.cpp:
  59404. (WebCore::ImageDocumentParser::create):
  59405. (WebCore::ImageDocumentParser::ImageDocumentParser):
  59406. (WebCore::ImageDocument::createParser):
  59407. * loader/ImageDocument.h:
  59408. * loader/MediaDocument.cpp:
  59409. (WebCore::MediaDocumentParser::create):
  59410. (WebCore::MediaDocument::createParser):
  59411. * loader/MediaDocument.h:
  59412. * loader/PluginDocument.cpp:
  59413. (WebCore::PluginDocumentParser::create):
  59414. (WebCore::PluginDocument::createParser):
  59415. * loader/PluginDocument.h:
  59416. * loader/SinkDocument.cpp:
  59417. (WebCore::SinkDocumentParser::create):
  59418. (WebCore::SinkDocument::createParser):
  59419. * loader/SinkDocument.h:
  59420. * loader/TextDocument.cpp:
  59421. (WebCore::TextDocumentParser::create):
  59422. (WebCore::TextDocument::createParser):
  59423. (WebCore::createTextDocumentParser):
  59424. * loader/TextDocument.h:
  59425. 2010-08-19 David Kilzer <ddkilzer@apple.com>
  59426. Fix compilation of SelectElement.cpp with ARROW_KEYS_POP_MENU == 0
  59427. Reviewed by Simon Fraser.
  59428. * dom/SelectElement.cpp:
  59429. (WebCore::SelectElement::menuListDefaultEventHandler): Added
  59430. UNUSED_PARAM() macro for htmlForm argument when
  59431. ARROW_KEYS_POP_MENU defined as zero.
  59432. 2010-08-19 Laszlo Gombos <laszlo.1.gombos@nokia.com>
  59433. Reviewed by Simon Hausmann.
  59434. [Qt] Disable XSLT for production configuration
  59435. https://bugs.webkit.org/show_bug.cgi?id=37445
  59436. Introduce a new CONFIG option to maintain stable configuration for
  59437. the QtWebKit port and disable XSLT for the stable configuration
  59438. because of bug 37445.
  59439. No new tests as there is no new functionality.
  59440. * features.pri:
  59441. 2010-08-18 Zhenyao Mo <zmo@google.com>
  59442. Reviewed by Kenneth Russell.
  59443. Implement strict type checking in js bindings for WebGL functions
  59444. https://bugs.webkit.org/show_bug.cgi?id=44202
  59445. Test: fast/canvas/webgl/bad-arguments-test.html
  59446. * bindings/js/JSWebGLRenderingContextCustom.cpp: Add type check for wrapper types and DOMString and throw error in case of mismatch.
  59447. (WebCore::JSWebGLRenderingContext::getAttachedShaders):
  59448. (WebCore::JSWebGLRenderingContext::getProgramParameter):
  59449. (WebCore::JSWebGLRenderingContext::getShaderParameter):
  59450. (WebCore::JSWebGLRenderingContext::getUniform):
  59451. (WebCore::dataFunctionf):
  59452. (WebCore::dataFunctioni):
  59453. (WebCore::dataFunctionMatrix):
  59454. * bindings/scripts/CodeGeneratorJS.pm: Ditto.
  59455. * bindings/scripts/CodeGeneratorV8.pm: Ditto.
  59456. * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: Ditto.
  59457. (WebCore::V8WebGLRenderingContext::getAttachedShadersCallback):
  59458. (WebCore::V8WebGLRenderingContext::getProgramParameterCallback):
  59459. (WebCore::V8WebGLRenderingContext::getShaderParameterCallback):
  59460. (WebCore::V8WebGLRenderingContext::getUniformCallback):
  59461. (WebCore::vertexAttribAndUniformHelperf):
  59462. (WebCore::uniformHelperi):
  59463. (WebCore::uniformMatrixHelper):
  59464. * html/canvas/WebGLRenderingContext.idl: Add attribute StrictTypeChecking for WebGL functions.
  59465. 2010-08-19 Simon Fraser <simon.fraser@apple.com>
  59466. Reviewed by Sam Weinig.
  59467. Clean up some selection code
  59468. https://bugs.webkit.org/show_bug.cgi?id=44314
  59469. Change the concept of "layout" in SelectionController to "updateCaretRect", renaming
  59470. methods accordingly.
  59471. Move selection and printing methods in RenderView.h into groups.
  59472. No behavioral changes.
  59473. * editing/SelectionController.cpp:
  59474. (WebCore::SelectionController::SelectionController):
  59475. (WebCore::SelectionController::setSelection):
  59476. (WebCore::SelectionController::modify):
  59477. (WebCore::SelectionController::setCaretRectNeedsUpdate):
  59478. (WebCore::SelectionController::updateCaretRect):
  59479. (WebCore::SelectionController::localCaretRect):
  59480. (WebCore::SelectionController::recomputeCaretRect): Test m_caretRectNeedsUpdate first.
  59481. (WebCore::SelectionController::invalidateCaretRect):
  59482. * editing/SelectionController.h:
  59483. * page/FrameView.cpp:
  59484. (WebCore::FrameView::layout):
  59485. * rendering/RenderLayer.cpp:
  59486. (WebCore::RenderLayer::scrollToOffset):
  59487. * rendering/RenderView.h:
  59488. (WebCore::RenderView::selectionStart):
  59489. (WebCore::RenderView::selectionEnd):
  59490. (WebCore::RenderView::printRect):
  59491. (WebCore::RenderView::setPrintRect):
  59492. 2010-08-19 Simon Fraser <simon.fraser@apple.com>
  59493. Fix Chromium build.
  59494. * svg/SVGElement.cpp:
  59495. (WebCore::SVGElement::attributeChanged):
  59496. 2010-08-19 Simon Fraser <simon.fraser@apple.com>
  59497. Reviewed by Nikolas Zimmermann.
  59498. HTMLElement::isContentEditable() can cause an updateStyleIfNeeded() to happen in the middle of layout
  59499. https://bugs.webkit.org/show_bug.cgi?id=21834
  59500. <rdar://problem/8093653&8261394>
  59501. If we're in the middle of layout, or painting, and something causes updateStyleIfNeeded() to
  59502. get called, then we can end up entering recalcStyle() during layout or painting. This is bad
  59503. because it can create/destry the renderers and RenderLayers which are in use by layout/painting.
  59504. This is the cause of a number of random crashers, some of which show up more frequently
  59505. in content which uses accelerated compositing.
  59506. The changes here:
  59507. 1. Add an assertion in Document::updateStyleIfNeeded() that we are not laying out or painting.
  59508. 2. Remove calls to updateStyleIfNeeded() in editing and caret painting code
  59509. 3. Pass along information to CTM and BBox-related SVG methods to indicate whether it's safe
  59510. to update style.
  59511. Tested by new assertions and existing tests.
  59512. * dom/Document.cpp:
  59513. (WebCore::Document::updateStyleIfNeeded): New assertion that we are not mid-layout or painting.
  59514. (WebCore::command): Call updateStyleIfNeeded() to ensure that subsequent calls to isContentEditable()
  59515. return the correct result.
  59516. * dom/Element.cpp:
  59517. (WebCore::Element::focus): Move the supportsFocus() call to after style has been updated.
  59518. * editing/SelectionController.cpp:
  59519. (WebCore::SelectionController::localCaretRect):
  59520. (WebCore::SelectionController::caretRepaintRect):
  59521. (WebCore::SelectionController::paintCaret):
  59522. * editing/SelectionController.h:
  59523. (WebCore::SelectionController::localCaretRectForPainting): When painting, use localCaretRectForPainting()
  59524. which does not update style. Make localCaretRect() non-const so allowing it to update style without ugly casts.
  59525. * html/HTMLElement.cpp:
  59526. (WebCore::HTMLElement::isContentEditable): Don't call updateStyleIfNeeded() here.
  59527. (WebCore::HTMLElement::isContentRichlyEditable): Ditto.
  59528. (WebCore::HTMLElement::contentEditable): Ditto.
  59529. * page/FrameView.h:
  59530. (WebCore::FrameView::isMidLayout): New accessor, used for asserting.
  59531. * rendering/RenderPath.cpp:
  59532. (WebCore::fillAndStrokePath): Pass DisallowStyleUpdate to getScreenCTM since we are painting.
  59533. * rendering/RenderSVGResourceContainer.cpp:
  59534. (WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke): This is only called when
  59535. painting, so use DisallowStyleUpdate.
  59536. * svg/SVGElement.cpp:
  59537. (WebCore::SVGElement::attributeChanged): Changes to the style attribute should not have
  59538. side effects, since a call to Element::getAttribute() is allowed to result in a call to
  59539. setAttribute() for the style attribute. To avoid updateStyleIfNeeded() during painting,
  59540. this must not cause SVG to do extra work.
  59541. * svg/SVGLocatable.cpp: Pass StyleUpdateStrategy down to these methods to indicate
  59542. whether it's OK to update style.
  59543. (WebCore::SVGLocatable::getBBox):
  59544. (WebCore::SVGLocatable::computeCTM):
  59545. (WebCore::SVGLocatable::getTransformToElement):
  59546. * svg/SVGLocatable.h:
  59547. (WebCore::SVGLocatable::):
  59548. * svg/SVGStyledLocatableElement.cpp:
  59549. (WebCore::SVGStyledLocatableElement::getBBox):
  59550. (WebCore::SVGStyledLocatableElement::getCTM):
  59551. (WebCore::SVGStyledLocatableElement::getScreenCTM):
  59552. * svg/SVGStyledLocatableElement.h:
  59553. * svg/SVGStyledTransformableElement.cpp:
  59554. (WebCore::SVGStyledTransformableElement::getCTM):
  59555. (WebCore::SVGStyledTransformableElement::getScreenCTM):
  59556. (WebCore::SVGStyledTransformableElement::getBBox):
  59557. * svg/SVGStyledTransformableElement.h:
  59558. * svg/SVGTextElement.cpp:
  59559. (WebCore::SVGTextElement::getBBox):
  59560. (WebCore::SVGTextElement::getCTM):
  59561. (WebCore::SVGTextElement::getScreenCTM):
  59562. * svg/SVGTextElement.h:
  59563. 2010-08-19 Ryosuke Niwa <rniwa@webkit.org>
  59564. Reviewed by Darin Adler.
  59565. Range, EAnnotateForInterchange, and EAbsoluteURLs should be member variables of MarkupAccumulator
  59566. https://bugs.webkit.org/show_bug.cgi?id=44229
  59567. No new tests are added since this is a clean up.
  59568. * editing/markup.cpp:
  59569. (WebCore::MarkupAccumulator::MarkupAccumulator): Added shouldResolveURLs, shouldAnnotate, and range.
  59570. (WebCore::MarkupAccumulator::shouldResolveURLs): Private inline accessor for m_shouldResolveURLs.
  59571. (WebCore::MarkupAccumulator::shouldAnnotate): Private inline accessor for m_shouldAnnotate.
  59572. (WebCore::MarkupAccumulator::appendEndTag): Renamed local variable result to markup.
  59573. (WebCore::MarkupAccumulator::appendStartTag): Removed range, annotate, shouldResolveURLs from the function arguments.
  59574. (WebCore::MarkupAccumulator::wrapWithNode): Ditto.
  59575. (WebCore::MarkupAccumulator::appendStartMarkup): Ditto.
  59576. (WebCore::serializeNodes): Ditto and uses MarkupAccumulator.
  59577. (WebCore::createMarkup): Uses MarkupAccumulator.
  59578. (WebCore::serializeNodesWithNamespaces): Ditto.
  59579. 2010-08-19 Pavel Feldman <pfeldman@chromium.org>
  59580. Reviewed by Yury Semikhatsky.
  59581. Web Inspector: do not dump inspector errors into the inspected window console.
  59582. https://bugs.webkit.org/show_bug.cgi?id=44272
  59583. * inspector/front-end/inspector.js:
  59584. (WebInspector.reportProtocolError):
  59585. 2010-08-19 Jeremy Orlow <jorlow@chromium.org>
  59586. Chromium build fix.
  59587. Use ASSERT_UNUSED on variables that aren't used besides by the ASSERT.
  59588. * storage/IDBDatabaseBackendImpl.cpp:
  59589. (WebCore::IDBDatabaseBackendImpl::createObjectStore):
  59590. (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
  59591. (WebCore::IDBDatabaseBackendImpl::loadObjectStores):
  59592. * storage/IDBObjectStoreBackendImpl.cpp:
  59593. (WebCore::IDBObjectStoreBackendImpl::get):
  59594. (WebCore::IDBObjectStoreBackendImpl::put):
  59595. (WebCore::IDBObjectStoreBackendImpl::remove):
  59596. (WebCore::IDBObjectStoreBackendImpl::createIndex):
  59597. (WebCore::IDBObjectStoreBackendImpl::removeIndex):
  59598. (WebCore::IDBObjectStoreBackendImpl::openCursor):
  59599. (WebCore::IDBObjectStoreBackendImpl::loadIndexes):
  59600. 2010-08-19 Andrey Kosyakov <caseq@chromium.org>
  59601. Reviewed by Pavel Feldman.
  59602. Web Inspector: expose Panel.onSelectionChanged in extension API
  59603. https://bugs.webkit.org/show_bug.cgi?id=44171
  59604. * inspector/front-end/ExtensionAPI.js:
  59605. (injectedExtensionAPI.PanelImpl):
  59606. (injectedExtensionAPI):
  59607. 2010-08-19 Andrei Popescu <andreip@google.com>
  59608. Reviewed by Jeremy Orlow.
  59609. [IndexedDB] Abort idle IDBTransactions when the JS context they were created in finishes execution.
  59610. https://bugs.webkit.org/show_bug.cgi?id=44101
  59611. This change also introduces the TransactionCoordinator, which will be used
  59612. to schedule transactions for execution.
  59613. Test: storage/indexeddb/transaction-basics.html
  59614. * WebCore.gypi:
  59615. * bindings/v8/V8DOMWrapper.cpp:
  59616. (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
  59617. * bindings/v8/V8Proxy.cpp:
  59618. (WebCore::V8Proxy::runScript):
  59619. (WebCore::V8Proxy::callFunction):
  59620. (WebCore::V8Proxy::didLeaveScriptContext):
  59621. * bindings/v8/V8Proxy.h:
  59622. * dom/EventTarget.cpp:
  59623. (WebCore::EventTarget::toIDBTransaction):
  59624. * dom/EventTarget.h:
  59625. * page/PageGroup.h:
  59626. (WebCore::PageGroup::hasIDBFactory):
  59627. * storage/IDBAbortEvent.cpp: Added.
  59628. (WebCore::IDBAbortEvent::create):
  59629. (WebCore::IDBAbortEvent::IDBAbortEvent):
  59630. (WebCore::IDBAbortEvent::~IDBAbortEvent):
  59631. * storage/IDBAbortEvent.h: Added.
  59632. (WebCore::IDBAbortEvent::isIDBAbortEvent):
  59633. * storage/IDBDatabase.cpp:
  59634. (WebCore::IDBDatabase::transaction):
  59635. * storage/IDBDatabaseBackendImpl.cpp:
  59636. (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl):
  59637. (WebCore::IDBDatabaseBackendImpl::transaction):
  59638. * storage/IDBDatabaseBackendImpl.h:
  59639. (WebCore::IDBDatabaseBackendImpl::create):
  59640. * storage/IDBDatabaseBackendInterface.h:
  59641. * storage/IDBFactoryBackendImpl.cpp:
  59642. (WebCore::IDBFactoryBackendImpl::IDBFactoryBackendImpl):
  59643. (WebCore::IDBFactoryBackendImpl::open):
  59644. (WebCore::IDBFactoryBackendImpl::abortPendingTransactions):
  59645. * storage/IDBFactoryBackendImpl.h:
  59646. * storage/IDBFactoryBackendInterface.h:
  59647. * storage/IDBPendingTransactionMonitor.cpp: Added.
  59648. (WebCore::IDBPendingTransactionMonitor::addPendingTransaction):
  59649. (WebCore::IDBPendingTransactionMonitor::removePendingTransaction):
  59650. (WebCore::IDBPendingTransactionMonitor::clearPendingTransactions):
  59651. (WebCore::IDBPendingTransactionMonitor::pendingTransactions):
  59652. * storage/IDBPendingTransactionMonitor.h: Added.
  59653. * storage/IDBTransaction.cpp:
  59654. (WebCore::IDBTransaction::IDBTransaction):
  59655. (WebCore::IDBTransaction::onAbort):
  59656. (WebCore::IDBTransaction::id):
  59657. (WebCore::IDBTransaction::stop):
  59658. (WebCore::IDBTransaction::timerFired):
  59659. * storage/IDBTransaction.h:
  59660. * storage/IDBTransactionBackendInterface.h:
  59661. * storage/IDBTransactionCallbacks.h: Added.
  59662. (WebCore::IDBTransactionCallbacks::~IDBTransactionCallbacks):
  59663. * storage/IDBTransactionCoordinator.cpp: Added.
  59664. (WebCore::IDBTransactionBackendImpl::~IDBTransactionBackendImpl):
  59665. (WebCore::IDBTransactionBackendImpl::create):
  59666. (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
  59667. (WebCore::IDBTransactionBackendImpl::objectStore):
  59668. (WebCore::IDBTransactionBackendImpl::mode):
  59669. (WebCore::IDBTransactionBackendImpl::scheduleTask):
  59670. (WebCore::IDBTransactionBackendImpl::abort):
  59671. (WebCore::IDBTransactionBackendImpl::sqliteDatabase):
  59672. (WebCore::IDBTransactionBackendImpl::id):
  59673. (WebCore::IDBTransactionBackendImpl::setCallbacks):
  59674. (WebCore::IDBTransactionCoordinator::IDBTransactionCoordinator):
  59675. (WebCore::IDBTransactionCoordinator::~IDBTransactionCoordinator):
  59676. (WebCore::IDBTransactionCoordinator::createTransaction):
  59677. (WebCore::IDBTransactionCoordinator::abort):
  59678. * storage/IDBTransactionCoordinator.h: Added.
  59679. (WebCore::IDBTransactionCoordinator::create):
  59680. 2010-08-19 Pavel Feldman <pfeldman@chromium.org>
  59681. Reviewed by Yury Semikhatsky.
  59682. Chromium DevTools: There is no need in resource-based InjectedScript.js source.
  59683. Now that we populate front-end after its onload handler, we don't need
  59684. to install injected script early. Exposing injected script source on the WebCore
  59685. level here.
  59686. https://bugs.webkit.org/show_bug.cgi?id=44029
  59687. * inspector/InjectedScriptHost.h:
  59688. (WebCore::InjectedScriptHost::injectedScriptSource):
  59689. 2010-08-18 Jeremy Orlow <jorlow@chromium.org>
  59690. Reviewed by Steve Block.
  59691. Implement persistance for IndexedDB ObjectStores
  59692. https://bugs.webkit.org/show_bug.cgi?id=44164
  59693. Get rid of the in-memory storage of ObjectStores and instead
  59694. use SQL backed memory.
  59695. Existing tests give most of the coverage. Will update the manual
  59696. test in the next patch (which will also re-work database.description).
  59697. * manual-tests/indexed-database.html: Get rid of race where you can click before the page loads.
  59698. * platform/sql/SQLiteStatement.cpp: Add two helper functions
  59699. (WebCore::SQLiteStatement::bindInt):
  59700. (WebCore::SQLiteStatement::isColumnNull):
  59701. * platform/sql/SQLiteStatement.h:
  59702. * storage/IDBCursorBackendImpl.cpp:
  59703. * storage/IDBDatabaseBackendImpl.cpp:
  59704. (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl):
  59705. (WebCore::IDBDatabaseBackendImpl::createObjectStore):
  59706. (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
  59707. (WebCore::IDBDatabaseBackendImpl::importObjectStores):
  59708. * storage/IDBDatabaseBackendImpl.h:
  59709. (WebCore::IDBDatabaseBackendImpl::sqliteDatabase):
  59710. * storage/IDBFactoryBackendImpl.cpp:
  59711. (WebCore::createTables):
  59712. * storage/IDBIndexBackendImpl.cpp:
  59713. (WebCore::IDBIndexBackendImpl::IDBIndexBackendImpl):
  59714. (WebCore::IDBIndexBackendImpl::sqliteDatabase):
  59715. * storage/IDBIndexBackendImpl.h:
  59716. (WebCore::IDBIndexBackendImpl::create):
  59717. * storage/IDBObjectStoreBackendImpl.cpp:
  59718. (WebCore::IDBObjectStoreBackendImpl::IDBObjectStoreBackendImpl):
  59719. (WebCore::whereClause):
  59720. (WebCore::bindKey):
  59721. (WebCore::IDBObjectStoreBackendImpl::get):
  59722. (WebCore::IDBObjectStoreBackendImpl::put):
  59723. (WebCore::IDBObjectStoreBackendImpl::remove):
  59724. (WebCore::IDBObjectStoreBackendImpl::createIndex):
  59725. (WebCore::IDBObjectStoreBackendImpl::removeIndex):
  59726. (WebCore::IDBObjectStoreBackendImpl::openCursor):
  59727. (WebCore::IDBObjectStoreBackendImpl::importIndexes):
  59728. (WebCore::IDBObjectStoreBackendImpl::sqliteDatabase):
  59729. * storage/IDBObjectStoreBackendImpl.h:
  59730. (WebCore::IDBObjectStoreBackendImpl::create):
  59731. (WebCore::IDBObjectStoreBackendImpl::database):
  59732. 2010-08-19 Nikolas Zimmermann <nzimmermann@rim.com>
  59733. Reviewed by Dirk Schulze.
  59734. Pattern is rasterized
  59735. https://bugs.webkit.org/show_bug.cgi?id=41396
  59736. SVG pattern size changed when resizing browser
  59737. https://bugs.webkit.org/show_bug.cgi?id=38704
  59738. Incorrect pattern tilling
  59739. https://bugs.webkit.org/show_bug.cgi?id=41603
  59740. Apply same fixes to <pattern> that <mask> recently received. Build the tile image in absolute coordinates,
  59741. to avoid pixelation, when the target element is scaled. Also fixes problems when zooming into patterns.
  59742. Clamp ImageBuffer sizes to RenderSVGRoots viewport, now that gradient/pattern and mask buffers are created
  59743. in absolute coordinates -> no more huge image buffer allocations, that could fail.
  59744. Drop overflow="visible" support for <pattern>, which complicates the code a lot. Neither Opera nor Firefox
  59745. support this, and SVG 1.1 2nd Edition says that the rendering behaviour is "undefined".
  59746. Tests: svg/batik/paints/patternRegions-positioned-objects.svg
  59747. svg/custom/pattern-incorrect-tiling.svg
  59748. svg/custom/pattern-no-pixelation.svg
  59749. svg/transforms/text-with-mask-with-svg-transform.svg
  59750. * rendering/PaintInfo.h:
  59751. (WebCore::PaintInfo::applyTransform): Don't alter the repaint rect if it's infinite (only affects SVG).
  59752. (WebCore::PaintInfo::infiniteRect): Moved from RenderLayer into PaintInfo, as applyTransform() needs it.
  59753. * rendering/RenderLayer.cpp:
  59754. (WebCore::RenderLayer::calculateClipRects): s/ClipRects::infiniteRect/PaintInfo::infiniteRect/
  59755. * rendering/RenderLayer.h: Moved infiniteRect() to PaintInfo.
  59756. * rendering/RenderLayerBacking.cpp:
  59757. (WebCore::clipBox): s/ClipRects::infiniteRect/PaintInfo::infiniteRect/
  59758. * rendering/RenderLayerCompositor.cpp:
  59759. (WebCore::RenderLayerCompositor::clippedByAncestor): Ditto.
  59760. * rendering/RenderSVGResourceGradient.cpp:
  59761. (WebCore::createMaskAndSwapContextForTextGradient): Clamp image buffer size, use new SVGImageBufferTools helper methods for that.
  59762. (WebCore::clipToTextMask): Adapt to renames/code changes in SVGImageBufferTools.
  59763. (WebCore::RenderSVGResourceGradient::applyResource): Ditto.
  59764. * rendering/RenderSVGResourceMasker.cpp:
  59765. (WebCore::RenderSVGResourceMasker::applyResource): lamp image buffer size, use new SVGImageBufferTools helper methods for that.
  59766. (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage): Adapt to renames/code changes in SVGImageBufferTools.
  59767. * rendering/RenderSVGResourceMasker.h:
  59768. * rendering/RenderSVGResourcePattern.cpp:
  59769. (WebCore::RenderSVGResourcePattern::applyResource): Rewrite to create tile image buffers in absolute coordinates, avoids pixelation artefacts.
  59770. (WebCore::calculatePatternBoundaries):
  59771. (WebCore::RenderSVGResourcePattern::buildTileImageTransform):
  59772. (WebCore::RenderSVGResourcePattern::createTileImage):
  59773. * rendering/RenderSVGResourcePattern.h:
  59774. * rendering/SVGImageBufferTools.cpp:
  59775. (WebCore::SVGImageBufferTools::transformationToOutermostSVGCoordinateSystem): Helper method, concating all localToParentTransforms() up until RenderSVGRoot is reached.
  59776. (WebCore::SVGImageBufferTools::createImageBuffer): Simplified.
  59777. (WebCore::SVGImageBufferTools::clipToImageBuffer): Rename absoluteTargetRect to clampedAbsoluteTargetRect.
  59778. (WebCore::SVGImageBufferTools::roundedImageBufferSize): New helper method to centralize FloatSize -> IntSize rounding, when creating image buffers.
  59779. (WebCore::SVGImageBufferTools::clampedAbsoluteTargetRectForRenderer): New helper methods to clamp an image buffer rect against the viewport.
  59780. * rendering/SVGImageBufferTools.h:
  59781. * rendering/SVGRenderSupport.cpp:
  59782. (WebCore::SVGRenderSupport::renderSubtreeToImage): Use PaintInfo::infiniteRect() as repaint rect, to avoid any culling.
  59783. (WebCore::SVGRenderSupport::findTreeRootObject): Renamed from svgRootTreeObject, and expose it.
  59784. (WebCore::SVGRenderSupport::layoutChildren): s/svgRootTreeObject/findTreeRootObject/.
  59785. * rendering/SVGRenderSupport.h:
  59786. * svg/SVGSVGElement.cpp:
  59787. (WebCore::SVGSVGElement::setCurrentTranslate): Be sure to relayout on invalidation, otherwhise resources are not updated, and we have to update them, as they depend on the absolute transform.
  59788. 2010-08-19 Alejandro G. Castro <alex@igalia.com>
  59789. Reviewed by Dirk Schulze.
  59790. [GTK] The size of the shadow image uses the standard deviation
  59791. size instead of the blur radius
  59792. https://bugs.webkit.org/show_bug.cgi?id=40793
  59793. The kernelSize variable was renamed to radius and recalculated
  59794. considering the CSS3 specification
  59795. http://www.w3.org/TR/css3-background/#the-box-shadow, and the
  59796. visual result of other browsers. The HTML5 canvas shadow standard
  59797. deviation calculation that was used, was not appropiate for the
  59798. blur distance specified in the CSS3.
  59799. * platform/graphics/GraphicsContext.h:
  59800. * platform/graphics/cairo/FontCairo.cpp:
  59801. (WebCore::Font::drawGlyphs):
  59802. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  59803. (WebCore::GraphicsContext::calculateShadowBufferDimensions):
  59804. Changed the calculation, now we use the parameter in the style
  59805. directly as recomended in the CSS3 standard.
  59806. (WebCore::drawPathShadow):
  59807. (WebCore::drawBorderlessRectShadow):
  59808. (WebCore::GraphicsContext::createPlatformShadow): We get the
  59809. standard deviation from the radius using the new function and we
  59810. create the filter with that deviation.
  59811. * platform/graphics/cairo/ImageCairo.cpp:
  59812. (WebCore::BitmapImage::draw):
  59813. * platform/graphics/filters/FEGaussianBlur.cpp:
  59814. (WebCore::FEGaussianBlur::calculateStdDeviation): Added this
  59815. function that gets the standard deviation from the blur
  59816. radius. Required in the CSS3 case where we have this radio and we
  59817. need the deviation to initialize the algorithm.
  59818. * platform/graphics/filters/FEGaussianBlur.h:
  59819. 2010-08-19 Andreas Kling <andreas.kling@nokia.com>
  59820. Reviewed by Kenneth Rohde Christiansen.
  59821. [Qt] Avoid unnecessary string copy in TextCodecQt::decode()
  59822. https://bugs.webkit.org/show_bug.cgi?id=44232
  59823. * platform/text/qt/TextCodecQt.cpp:
  59824. (WebCore::TextCodecQt::decode): Use String::append(const UChar*, int)
  59825. to avoid creating a temporary string.
  59826. 2010-08-19 Philippe Normand <pnormand@igalia.com>
  59827. Reviewed by Gustavo Noronha Silva.
  59828. [GStreamer] GTK XOverlay support in GStreamerGWorld
  59829. https://bugs.webkit.org/show_bug.cgi?id=39474
  59830. GStreamerGWorld now catches synchronous messages coming from the
  59831. sinks and creates a GTK window where the video can be overlayed if
  59832. fullscreen display is requested using enterFullscreen.
  59833. * GNUmakefile.am:
  59834. * platform/graphics/gstreamer/GStreamerGWorld.cpp:
  59835. (WebCore::gstGWorldSyncMessageCallback):
  59836. (WebCore::GStreamerGWorld::GStreamerGWorld):
  59837. (WebCore::GStreamerGWorld::~GStreamerGWorld):
  59838. (WebCore::GStreamerGWorld::enterFullscreen):
  59839. (WebCore::GStreamerGWorld::exitFullscreen):
  59840. (WebCore::GStreamerGWorld::setWindowOverlay):
  59841. * platform/graphics/gstreamer/GStreamerGWorld.h:
  59842. (WebCore::GStreamerGWorld::pipeline):
  59843. (WebCore::GStreamerGWorld::platformVideoWindow):
  59844. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  59845. * platform/graphics/gstreamer/PlatformVideoWindow.h: Added.
  59846. (WebCore::PlatformVideoWindow::createWindow):
  59847. (WebCore::PlatformVideoWindow::window):
  59848. (WebCore::PlatformVideoWindow::videoWindowId):
  59849. * platform/graphics/gstreamer/PlatformVideoWindowGtk.cpp: Added.
  59850. (PlatformVideoWindow::PlatformVideoWindow):
  59851. 2010-08-19 Eric Uhrhane <ericu@chromium.org>
  59852. Reviewed by David Levin.
  59853. Add idl and mock classes for FileWriter.
  59854. https://bugs.webkit.org/show_bug.cgi?id=44075
  59855. No new tests, since there's no new functionality.
  59856. New do-nothing classes, but the real IDL:
  59857. * FileWriter.idl:
  59858. * FileWriter.h:
  59859. * FileWriter.cpp:
  59860. The build file changes to include the above:
  59861. * CMakeLists.txt:
  59862. * DerivedSources.cpp:
  59863. * DerivedSources.make:
  59864. * GNUmakefile.am:
  59865. * WebCore.gypi:
  59866. * WebCore.pri:
  59867. * WebCore.pro:
  59868. * WebCore.vcproj/WebCore.vcproj:
  59869. * WebCore.xcodeproj/project.pbxproj:
  59870. Added FileWriter event names and required EventTarget changes.
  59871. * dom/EventNames.h:
  59872. * dom/EventTarget.cpp:
  59873. (WebCore::EventTarget::toFileWriter):
  59874. * dom/EventTarget.h:
  59875. 2010-08-18 Andreas Kling <andreas.kling@nokia.com>
  59876. Rubber-stamped by Ariya Hidayat.
  59877. [Qt] Remove unused variable in GraphicsContext::fillRect()
  59878. * platform/graphics/qt/GraphicsContextQt.cpp:
  59879. (WebCore::GraphicsContext::fillRect):
  59880. 2010-08-18 Ariya Hidayat <ariya@sencha.com>
  59881. Reviewed by Kenneth Rohde Christiansen.
  59882. [Qt] Short lived shadow buffer for blur operation
  59883. https://bugs.webkit.org/show_bug.cgi?id=44094
  59884. ContextShadow needs a scratch image as the buffer for the blur filter.
  59885. Instead of creating and destroying the buffer for every operation,
  59886. we create a buffer which will be automatically purged via a timer.
  59887. * platform/graphics/qt/ContextShadow.cpp:
  59888. (WebCore::):
  59889. (WebCore::ShadowBuffer::ShadowBuffer):
  59890. (WebCore::ShadowBuffer::scratchImage):
  59891. (WebCore::ShadowBuffer::schedulePurge):
  59892. (WebCore::ShadowBuffer::purgeBuffer):
  59893. (WebCore::ContextShadow::drawShadowRect):
  59894. 2010-08-18 Alexey Marinichev <amarinichev@chromium.org>
  59895. Reviewed by Darin Fisher.
  59896. [chromium] scrolling issues when accelerated compositor is enabled
  59897. https://bugs.webkit.org/show_bug.cgi?id=43992
  59898. Corrected scroll position not being updated, and an off-by-half error.
  59899. Int cast and floorf are taken out because they produce incorrect
  59900. transformation matrix. The information lost there is not immediately
  59901. obvious because of rounding that happens when texture is mapped with
  59902. GL_NEAREST filtering mode. These errors accumulate, and after some
  59903. scrolling it becomes more apparent.
  59904. To test the former, follow instructions in the bug. To test the
  59905. latter, change GL_NEAREST to GL_LINEAR in LayerRendererChromium.cpp.
  59906. Scrolling should work properly for all window sizes, without blurring
  59907. images and shifting them to the left.
  59908. * platform/graphics/chromium/LayerRendererChromium.cpp:
  59909. (WebCore::LayerRendererChromium::drawLayers):
  59910. 2010-08-18 Simon Hausmann <simon.hausmann@nokia.com>
  59911. Reviewed by Ariya Hidayat.
  59912. [Qt] Implement GraphicsContext::clipOut more efficiently
  59913. https://bugs.webkit.org/show_bug.cgi?id=43416
  59914. The current implementation of clipOut uses QPainter::clipRegion().boundingRect(),
  59915. which is a very slow function because it converts the entire clip region - which
  59916. may potentially contain a complex path - into a set of QRegion rectangles, just
  59917. to throw away all that information and use the bounding rect.
  59918. QTBUG-12618 implements a faster function in QPainter: QPainter::clipBoundingRect().
  59919. * platform/graphics/qt/GraphicsContextQt.cpp:
  59920. (WebCore::GraphicsContext::clipOut): Use QPainter::clipBoundingRect() with Qt >= 4.8.
  59921. (WebCore::GraphicsContext::clipOutEllipseInRect): Ditto.
  59922. 2010-08-18 Martin Robinson <mrobinson@igalia.com>
  59923. Reviewed by Gustavo Noronha Silva.
  59924. [GTK] Since the GSEAL changes moz_gtk_scrollbar_button_paint fiddles the widget allocation but doesn't preserve it
  59925. https://bugs.webkit.org/show_bug.cgi?id=44211
  59926. No new tests as we do not currently use the scrollbar button painting
  59927. code. Tests for this issue will be enabled when we have pixel tests
  59928. for WebCore-drawn interior frame scrollbars.
  59929. * platform/gtk/GtkVersioning.h: Add backward-compatible functions for getting
  59930. and setting the widget allocation.
  59931. * platform/gtk/gtk2drawing.c:
  59932. (moz_gtk_scrollbar_button_paint): Use new backward-compatible functions for getting
  59933. and setting the widget allocation.
  59934. 2010-08-18 Ryosuke Niwa <rniwa@webkit.org>
  59935. Reviewed by Darin Adler.
  59936. Group functions in markup.cpp into MarkupAccumulatorWrapper
  59937. https://bugs.webkit.org/show_bug.cgi?id=43936
  59938. Renamed MarkupAccumulatorWrapper to MarkupAccumulator and moved the MarkupAccumulatorWrapper
  59939. to the top of markup.cpp. Made various functions private member functions of MarkupAccumulator.
  59940. No new tests are added since this is a cleanup.
  59941. * editing/markup.cpp:
  59942. (WebCore::MarkupAccumulator::):
  59943. (WebCore::MarkupAccumulator::MarkupAccumulator):
  59944. (WebCore::MarkupAccumulator::appendString):
  59945. (WebCore::MarkupAccumulator::appendStartTag):
  59946. (WebCore::MarkupAccumulator::appendEndTag):
  59947. (WebCore::MarkupAccumulator::wrapWithNode):
  59948. (WebCore::MarkupAccumulator::wrapWithStyleNode):
  59949. (WebCore::MarkupAccumulator::takeResults):
  59950. (WebCore::MarkupAccumulator::appendAttributeValue):
  59951. (WebCore::MarkupAccumulator::escapeContentText):
  59952. (WebCore::MarkupAccumulator::appendQuotedURLAttributeValue):
  59953. (WebCore::MarkupAccumulator::stringValueForRange):
  59954. (WebCore::MarkupAccumulator::ucharRange):
  59955. (WebCore::MarkupAccumulator::appendUCharRange):
  59956. (WebCore::MarkupAccumulator::renderedText):
  59957. (WebCore::MarkupAccumulator::shouldAddNamespaceElement):
  59958. (WebCore::MarkupAccumulator::shouldAddNamespaceAttribute):
  59959. (WebCore::MarkupAccumulator::appendNamespace):
  59960. (WebCore::MarkupAccumulator::appendDocumentType):
  59961. (WebCore::MarkupAccumulator::removeExteriorStyles):
  59962. (WebCore::MarkupAccumulator::appendStartMarkup):
  59963. (WebCore::MarkupAccumulator::shouldSelfClose):
  59964. (WebCore::MarkupAccumulator::appendEndMarkup):
  59965. (WebCore::serializeNodes):
  59966. (WebCore::createMarkup):
  59967. (WebCore::serializeNodesWithNamespaces):
  59968. 2010-08-18 Beth Dakin <bdakin@apple.com>
  59969. Reviewed by Sam Weinig.
  59970. Fix for https://bugs.webkit.org/show_bug.cgi?id=44207 Empty mfrac
  59971. and empty munderover cause crashes
  59972. -and corresponding-
  59973. <rdar://problem/8325160>
  59974. This is just a matter of adding null checks in the right places.
  59975. * mathml/RenderMathMLFraction.cpp:
  59976. (WebCore::RenderMathMLFraction::baselinePosition):
  59977. * mathml/RenderMathMLUnderOver.cpp:
  59978. (WebCore::RenderMathMLUnderOver::baselinePosition):
  59979. 2010-08-18 Jian Li <jianli@chromium.org>
  59980. Reviewed by David Levin.
  59981. Move FileStream to platform.
  59982. https://bugs.webkit.org/show_bug.cgi?id=44213
  59983. In addition to moving files over, FileStream has been changed to remove
  59984. ExceptionCode dependency. Also update FileStreamProxy and FileRead to
  59985. account for this change.
  59986. * Android.mk:
  59987. * GNUmakefile.am:
  59988. * WebCore.gypi:
  59989. * WebCore.pro:
  59990. * WebCore.vcproj/WebCore.vcproj:
  59991. * WebCore.xcodeproj/project.pbxproj:
  59992. * html/FileReader.cpp:
  59993. (WebCore::FileReader::didOpen):
  59994. * html/FileReader.h:
  59995. * html/FileStream.cpp: Removed.
  59996. * html/FileStream.h: Removed.
  59997. * html/FileStreamClient.h:
  59998. (WebCore::FileStreamClient::didTruncate):
  59999. (WebCore::FileStreamClient::didOpen):
  60000. * html/FileStreamProxy.cpp:
  60001. (WebCore::didOpen):
  60002. (WebCore::FileStreamProxy::openForReadOnFileThread):
  60003. (WebCore::FileStreamProxy::openForWriteOnFileThread):
  60004. (WebCore::FileStreamProxy::write):
  60005. (WebCore::FileStreamProxy::writeOnFileThread):
  60006. (WebCore::didTruncate):
  60007. (WebCore::FileStreamProxy::truncateOnFileThread):
  60008. * html/FileStreamProxy.h:
  60009. * platform/FileStream.cpp: Renamed from WebCore/FileStream.cpp and updated.
  60010. * platform/FileStream.h: Renamed from WebCore/FileStream.h and updated.
  60011. 2010-08-18 Jian Li <jianli@chromium.org>
  60012. Reviewed by Darin Fisher.
  60013. Chromium side implementation of blob data and blob registry.
  60014. https://bugs.webkit.org/show_bug.cgi?id=43871
  60015. Wrap !PLATFORM(CHROMIUM) around blobRegistry() so that chromium uses the
  60016. implementation in WebKit Chromium.
  60017. * platform/network/BlobRegistryImpl.cpp:
  60018. 2010-08-18 Martin Robinson <mrobinson@igalia.com>
  60019. Reviewed by Gustavo Noronha Silva.
  60020. [GTK] Bots are showing lots of GTK_IS_CONTAINER critical warnings
  60021. https://bugs.webkit.org/show_bug.cgi?id=40990
  60022. Instead of relying on the ScrollView's adjustment members to determine if a
  60023. Scrollbar should be native or just a shell of the parent's scrollbar (main frame
  60024. scrollbar), just check if this ScrollView has a parent. This will ensure the
  60025. correct behavior when main frame scrollbar's are created after the ScrollView's
  60026. containing adjustments go away.
  60027. Lack of warnings during tests are the test for this fix.
  60028. * platform/gtk/ScrollViewGtk.cpp:
  60029. (WebCore::ScrollView::createScrollbar): Decide what type of scrollbar to make based
  60030. on the result of the parent() method.
  60031. * platform/gtk/ScrollbarGtk.cpp:
  60032. (ScrollbarGtk::ScrollbarGtk): Allow for an m_adjustment which is null.
  60033. (ScrollbarGtk::attachAdjustment): Ditto.
  60034. (ScrollbarGtk::updateThumbPosition): Ditto.
  60035. (ScrollbarGtk::updateThumbProportion): Ditto.
  60036. 2010-08-18 Adam Barth <abarth@webkit.org>
  60037. Reviewed by David Levin.
  60038. NOT_REACHED is reachable in SVGLength
  60039. https://bugs.webkit.org/show_bug.cgi?id=44150
  60040. The author of this code was confused. This code is reachable. We just
  60041. haven't implemented it yet.
  60042. * svg/SVGLength.cpp:
  60043. (WebCore::SVGLength::setValue):
  60044. 2010-08-18 Balazs Kelemen <kb@inf.u-szeged.hu>
  60045. Reviewed by Antonio Gomes.
  60046. [Qt] Use LAZY_NATIVE_CURSOR
  60047. https://bugs.webkit.org/show_bug.cgi?id=44062
  60048. No functional change so new tests.
  60049. Change Cursor behaviour to match the LAZY_NATIVE_CURSOR policy.
  60050. * platform/Cursor.h: Typedef PlatformCursor to be a QCursor* to be able create it dynamically.
  60051. (WebCore::Cursor::Cursor): Remove the ifdef for Qt.
  60052. * platform/qt/CursorQt.cpp: Remove the Cursors class since we have the static cursor instances
  60053. for the common cursor types in Cursor.cpp. Move the logic that maps the cursor types to
  60054. QCursor instances into ensurePlatformCursor.
  60055. (WebCore::Cursor::Cursor):
  60056. (WebCore::Cursor::~Cursor):
  60057. (WebCore::Cursor::operator=):
  60058. (WebCore::createCustomCursor):
  60059. (WebCore::Cursor::ensurePlatformCursor):
  60060. * platform/qt/WidgetQt.cpp:
  60061. (WebCore::Widget::setCursor): Adjust to the PlatformCursor change.
  60062. 2010-08-18 Andreas Kling <andreas.kling@nokia.com>
  60063. Reviewed by Darin Adler.
  60064. CSS: Make rgb() and rgba() fast paths case-insensitive
  60065. https://bugs.webkit.org/show_bug.cgi?id=44107
  60066. Also inlined the string comparisons against "rgb(" and "rgba("
  60067. which is faster and avoids creating a temporary String object.
  60068. * css/CSSParser.cpp:
  60069. (WebCore::mightBeRGBA):
  60070. (WebCore::mightBeRGB):
  60071. (WebCore::CSSParser::parseColor):
  60072. 2010-08-18 Jian Li <jianli@chromium.org>
  60073. Reviewed by Darin Fisher.
  60074. Change BlobStorageData to reuse BlobData.
  60075. https://bugs.webkit.org/show_bug.cgi?id=44188
  60076. Also addressed Darin's feedbacks for bug 44116.
  60077. * html/ThreadableBlobRegistry.cpp:
  60078. (WebCore::registerBlobURLTask):
  60079. (WebCore::registerBlobURLFromTask):
  60080. (WebCore::unregisterBlobURLTask):
  60081. * platform/network/BlobData.cpp:
  60082. (WebCore::BlobData::appendData):
  60083. * platform/network/BlobData.h:
  60084. (WebCore::BlobDataItem::BlobDataItem):
  60085. * platform/network/BlobRegistry.h:
  60086. * platform/network/BlobRegistryImpl.cpp:
  60087. (WebCore::blobRegistry):
  60088. (WebCore::BlobRegistryImpl::appendStorageItems):
  60089. (WebCore::BlobRegistryImpl::registerBlobURL):
  60090. * platform/network/BlobRegistryImpl.h:
  60091. * platform/network/BlobStorageData.h:
  60092. (WebCore::BlobStorageData::create):
  60093. (WebCore::BlobStorageData::contentType):
  60094. (WebCore::BlobStorageData::contentDisposition):
  60095. (WebCore::BlobStorageData::items):
  60096. (WebCore::BlobStorageData::BlobStorageData):
  60097. 2010-08-18 David Hyatt <hyatt@apple.com>
  60098. Reviewed by Martin Robinson.
  60099. https://bugs.webkit.org/show_bug.cgi?id=44193
  60100. Fix a typo in my previous canvas checkin. m_in->resultImage() was originally m_in2->resultImage(),
  60101. and I accidentally changed it when swapping the order of the arguments.
  60102. * platform/graphics/filters/FEComposite.cpp:
  60103. (WebCore::FEComposite::apply):
  60104. 2010-08-18 Stephen White <senorblanco@chromium.org>
  60105. Reviewed by Darin Fisher.
  60106. [CHROMIUM] Eliminate a memcpy() from the canvas.drawImage(canvas, ...) path.
  60107. https://bugs.webkit.org/show_bug.cgi?id=44115
  60108. This is the Skia followup to Dave Hyatt's patch in r65449.
  60109. Covered by canvas layout tests.
  60110. * platform/graphics/skia/BitmapImageSingleFrameSkia.h:
  60111. Add a "copyPixels" argument to the create() static to indicate if
  60112. the caller wants the pixels to be copied or ref'ed.
  60113. * platform/graphics/skia/ImageBufferSkia.cpp:
  60114. (WebCore::ImageBuffer::drawsUsingCopy):
  60115. We don't use the always-copy path anymore, so return false.
  60116. (WebCore::ImageBuffer::copyImage):
  60117. Force a copy here.
  60118. (WebCore::ImageBuffer::draw):
  60119. (WebCore::ImageBuffer::drawPattern):
  60120. Create a temporary BitampImageSingleFrameSkia wrapped around the
  60121. canvas's bitmap, and draw with it immediately. If drawing to our own
  60122. canvas, copy the pixels, otherwise just shallow copy.
  60123. * platform/graphics/skia/ImageSkia.cpp:
  60124. (WebCore::BitmapImageSingleFrameSkia::BitmapImageSingleFrameSkia):
  60125. Make the constructor take an SkBitmap to be wrapped.
  60126. (WebCore::BitmapImageSingleFrameSkia::create):
  60127. Implement the "copyPixels" flag: if true, do a deep copy, otherwise
  60128. do a shallow copy.
  60129. * platform/graphics/skia/NativeImageSkia.cpp:
  60130. (WebCore::NativeImageSkia::NativeImageSkia):
  60131. * platform/graphics/skia/NativeImageSkia.h:
  60132. Implement a new constructor that shallow-copies the given SkBitmap.
  60133. 2010-08-18 Mahesh Kulkarni <mahesh.kulkarni@nokia.com>
  60134. Reviewed by Steve Block.
  60135. [Qt] Request for permission before starting Geolocation service
  60136. https://bugs.webkit.org/show_bug.cgi?id=42027
  60137. Handles starting location acquisition when request is granted for ports using
  60138. "!CLIENT_BASED_GEOLOCATION and PREEMPT_GEOLOCATION_PERMISSION" policy
  60139. Only Qt port as of today uses the above combination. Enable
  60140. PREEMPT_GEOLOCATION_PERMISSION for qt port.
  60141. Below tests cover these changes on platform using PREEMPT_GEOLOCATION_PERMISSION
  60142. - fast/dom/Geolocation/delayed-permission-allowed.html
  60143. - fast/dom/Geolocation/delayed-permission-denied.html
  60144. - fast/dom/Geolocation/delayed-permission-allowed-for-multiple-requests.html
  60145. - fast/dom/Geolocation/delayed-permission-denied-for-multiple-requests.html
  60146. * WebCore.pro:
  60147. * page/Geolocation.cpp:
  60148. (WebCore::Geolocation::handlePendingPermissionNotifiers):
  60149. 2010-08-18 Andreas Kling <andreas.kling@nokia.com>
  60150. Reviewed by Darin Adler.
  60151. CanvasStyle method naming cleanup
  60152. https://bugs.webkit.org/show_bug.cgi?id=44184
  60153. Renamed the various create() overloads to reflect what they're
  60154. constructing the CanvasStyle from.
  60155. The unused CanvasStyle::create(grayLevel) and accompanying constructor
  60156. were removed.
  60157. Also renamed the isEquivalentColor overloads to isEquivalent{RGBA,CMYKA}
  60158. * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
  60159. (WebCore::toHTMLCanvasStyle):
  60160. * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
  60161. (WebCore::toCanvasStyle):
  60162. * html/canvas/CanvasRenderingContext2D.cpp:
  60163. (WebCore::CanvasRenderingContext2D::State::State):
  60164. (WebCore::CanvasRenderingContext2D::setStrokeColor):
  60165. (WebCore::CanvasRenderingContext2D::setFillColor):
  60166. * html/canvas/CanvasStyle.cpp:
  60167. (WebCore::CanvasStyle::createFromString):
  60168. (WebCore::CanvasStyle::createFromStringWithOverrideAlpha):
  60169. (WebCore::CanvasStyle::createFromGradient):
  60170. (WebCore::CanvasStyle::createFromPattern):
  60171. (WebCore::CanvasStyle::isEquivalentRGBA):
  60172. (WebCore::CanvasStyle::isEquivalentCMYKA):
  60173. * html/canvas/CanvasStyle.h:
  60174. (WebCore::CanvasStyle::createFromRGBA):
  60175. (WebCore::CanvasStyle::createFromGrayLevelWithAlpha):
  60176. (WebCore::CanvasStyle::createFromRGBAChannels):
  60177. (WebCore::CanvasStyle::createFromCMYKAChannels):
  60178. 2010-08-18 Girish Ramakrishnan <girish@forwardbias.in>
  60179. Reviewed by Kenneth Rohde Christiansen.
  60180. [Qt] Implement Maemo5 local rendering NPAPI extension. See
  60181. https://wiki.mozilla.org/Plugins:NokiaMaemoImageSurface for details.
  60182. With the local rendering extension, Flash will paint into a 16-bit surface.
  60183. For wmode=transparent, Flash expects the surface to contain the contents
  60184. beneath it. As it is tricky to implement the content propagation across all
  60185. graphics systems, transparent Flash is not supported. We just fill the surface
  60186. with white and wmode=transparent behaves the same as wmode=opaque with a white
  60187. background.
  60188. https://bugs.webkit.org/show_bug.cgi?id=44043
  60189. * WebCore.pro:
  60190. * plugins/PluginView.cpp:
  60191. (WebCore::PluginView::setValue):
  60192. (WebCore::PluginView::PluginView):
  60193. * plugins/PluginView.h:
  60194. * plugins/qt/PluginViewQt.cpp:
  60195. (WebCore::PluginView::updatePluginWidget):
  60196. (WebCore::PluginView::paintUsingImageSurfaceExtension):
  60197. (WebCore::PluginView::paint):
  60198. (WebCore::PluginView::platformGetValueStatic):
  60199. 2010-08-18 Sheriff Bot <webkit.review.bot@gmail.com>
  60200. Unreviewed, rolling out r65603.
  60201. http://trac.webkit.org/changeset/65603
  60202. https://bugs.webkit.org/show_bug.cgi?id=44179
  60203. 4 tests crash on Qt bot (Requested by Ossy on #webkit).
  60204. * WebCore.pro:
  60205. * page/Geolocation.cpp:
  60206. (WebCore::Geolocation::handlePendingPermissionNotifiers):
  60207. 2010-08-18 Ryuan Choi <ryuan.choi@samsung.com>
  60208. Unreviewed. Attempted build fix for EFL
  60209. [EFL]REGRESSION(65530) need to fix build break
  60210. https://bugs.webkit.org/show_bug.cgi?id=44154
  60211. * CMakeListsEfl.txt:
  60212. 2010-08-18 Ilya Tikhonovsky <loislo@chromium.org>
  60213. Unreviewed qt build fix.
  60214. * WebCore.pri:
  60215. 2010-08-17 Ilya Tikhonovsky <loislo@chromium.org>
  60216. Reviewed by Yury Semikhatsky.
  60217. Web Inspector: replace hand written InspectorBackendStub.js with generated one.
  60218. New command-line flag was added to combine-javascript-resources.
  60219. It specifies the location of generated scripts.
  60220. https://bugs.webkit.org/show_bug.cgi?id=43791
  60221. * GNUmakefile.am:
  60222. * WebCore.gyp/WebCore.gyp:
  60223. * WebCore.gypi:
  60224. * WebCore.pri:
  60225. * WebCore.pro:
  60226. * WebCore.vcproj/WebCore.vcproj:
  60227. * WebCore.xcodeproj/project.pbxproj:
  60228. * combine-javascript-resources:
  60229. * inspector/CodeGeneratorInspector.pm:
  60230. * inspector/front-end/InspectorBackendStub.js: Removed.
  60231. * inspector/front-end/WebKit.qrc:
  60232. 2010-08-18 Andrey Kosyakov <caseq@chromium.org>
  60233. Reviewed by Pavel Feldman.
  60234. Web Inspector: extension panels do not occupy entire panel client area.
  60235. https://bugs.webkit.org/show_bug.cgi?id=44167
  60236. * inspector/front-end/ExtensionServer.js:
  60237. (WebInspector.ExtensionServer.prototype._onCreatePanel):
  60238. (WebInspector.ExtensionServer.prototype._createClientIframe):
  60239. 2010-08-18 Dirk Schulze <krit@webkit.org>
  60240. Reviewed by Nikolas Zimmermann.
  60241. Use SVGPathParser logic to traverse states of a Path
  60242. https://bugs.webkit.org/show_bug.cgi?id=44009
  60243. Move the getPathSegAtLength logic from SVGPathSegList into a new SVGPathConsumer
  60244. class: SVGPathTraversalStateBuilder.
  60245. This allows us to get a SVGPathSeg at a given length for SVGPathByteStreams and SVGPathSegLists.
  60246. It is also possible to use unaltered SVG path data, instead of just normalized path data.
  60247. This is the final preparation to provide normalized and unaltered SVGPathSegLists
  60248. on SVGPathElement.
  60249. * Android.mk:
  60250. * CMakeLists.txt:
  60251. * GNUmakefile.am:
  60252. * WebCore.gypi:
  60253. * WebCore.pro:
  60254. * WebCore.vcproj/WebCore.vcproj:
  60255. * WebCore.xcodeproj/project.pbxproj:
  60256. * svg/SVGAllInOne.cpp:
  60257. * svg/SVGPathBuilder.h:
  60258. (WebCore::SVGPathBuilder::nextPathSegment):
  60259. (WebCore::SVGPathBuilder::quitEarlier):
  60260. * svg/SVGPathByteStreamBuilder.h:
  60261. (WebCore::SVGPathByteStreamBuilder::nextPathSegment):
  60262. (WebCore::SVGPathByteStreamBuilder::quitEarlier):
  60263. * svg/SVGPathConsumer.h:
  60264. * svg/SVGPathElement.cpp:
  60265. (WebCore::SVGPathElement::getPathSegAtLength):
  60266. * svg/SVGPathElement.h:
  60267. * svg/SVGPathElement.idl:
  60268. * svg/SVGPathParser.cpp:
  60269. (WebCore::SVGPathParser::parsePathDataFromSource):
  60270. * svg/SVGPathParserFactory.cpp:
  60271. (WebCore::globalSVGPathTraversalStateBuilder):
  60272. (WebCore::SVGPathParserFactory::getSVGPathSegAtLengthFromSVGPathSegList):
  60273. * svg/SVGPathParserFactory.h:
  60274. * svg/SVGPathSegList.cpp:
  60275. * svg/SVGPathSegList.h:
  60276. * svg/SVGPathSegListBuilder.h:
  60277. (WebCore::SVGPathSegListBuilder::nextPathSegment):
  60278. (WebCore::SVGPathSegListBuilder::quitEarlier):
  60279. * svg/SVGPathStringBuilder.h:
  60280. (WebCore::SVGPathStringBuilder::nextPathSegment):
  60281. (WebCore::SVGPathStringBuilder::quitEarlier):
  60282. * svg/SVGPathTraversalStateBuilder.cpp: Added. New Consumer for SVGPathParser.
  60283. (WebCore::SVGPathTraversalStateBuilder::SVGPathTraversalStateBuilder):
  60284. (WebCore::SVGPathTraversalStateBuilder::moveTo):
  60285. (WebCore::SVGPathTraversalStateBuilder::lineTo):
  60286. (WebCore::SVGPathTraversalStateBuilder::curveToCubic):
  60287. (WebCore::SVGPathTraversalStateBuilder::closePath):
  60288. (WebCore::SVGPathTraversalStateBuilder::setDesiredLength):
  60289. (WebCore::SVGPathTraversalStateBuilder::quitEarlier):
  60290. (WebCore::SVGPathTraversalStateBuilder::nextPathSegment):
  60291. (WebCore::SVGPathTraversalStateBuilder::pathSegmentIndex):
  60292. * svg/SVGPathTraversalStateBuilder.h: Added.
  60293. (WebCore::SVGPathTraversalStateBuilder::setCurrentTraversalState):
  60294. (WebCore::SVGPathTraversalStateBuilder::cleanup):
  60295. (WebCore::SVGPathTraversalStateBuilder::lineToHorizontal):
  60296. (WebCore::SVGPathTraversalStateBuilder::lineToVertical):
  60297. (WebCore::SVGPathTraversalStateBuilder::curveToCubicSmooth):
  60298. (WebCore::SVGPathTraversalStateBuilder::curveToQuadratic):
  60299. (WebCore::SVGPathTraversalStateBuilder::curveToQuadraticSmooth):
  60300. (WebCore::SVGPathTraversalStateBuilder::arcTo):
  60301. 2010-08-18 Mahesh Kulkarni <mahesh.kulkarni@nokia.com>
  60302. Reviewed by Steve Block.
  60303. [Qt] Request for permission before starting Geolocation service
  60304. https://bugs.webkit.org/show_bug.cgi?id=42027
  60305. Handles starting location acquisition when request is granted for ports using
  60306. "!CLIENT_BASED_GEOLOCATION and PREEMPT_GEOLOCATION_PERMISSION" policy
  60307. Only Qt port as of today uses the above combination. Enable
  60308. PREEMPT_GEOLOCATION_PERMISSION for qt port.
  60309. Below tests cover these changes on platform using PREEMPT_GEOLOCATION_PERMISSION
  60310. - fast/dom/Geolocation/delayed-permission-allowed.html
  60311. - fast/dom/Geolocation/delayed-permission-denied.html
  60312. - fast/dom/Geolocation/delayed-permission-allowed-for-multiple-requests.html
  60313. - fast/dom/Geolocation/delayed-permission-denied-for-multiple-requests.html
  60314. * WebCore.pro:
  60315. * page/Geolocation.cpp:
  60316. (WebCore::Geolocation::handlePendingPermissionNotifiers):
  60317. 2010-08-18 Sheriff Bot <webkit.review.bot@gmail.com>
  60318. Unreviewed, rolling out r65595.
  60319. http://trac.webkit.org/changeset/65595
  60320. https://bugs.webkit.org/show_bug.cgi?id=44161
  60321. qt build failed (Requested by loislo on #webkit).
  60322. * GNUmakefile.am:
  60323. * WebCore.gyp/WebCore.gyp:
  60324. * WebCore.gypi:
  60325. * WebCore.pri:
  60326. * WebCore.pro:
  60327. * WebCore.vcproj/copyInspectorFiles.cmd:
  60328. * WebCore.xcodeproj/project.pbxproj:
  60329. * combine-javascript-resources:
  60330. * inspector/CodeGeneratorInspector.pm:
  60331. * inspector/front-end/InspectorBackendStub.js: Added.
  60332. (WebInspector.InspectorBackendStub):
  60333. (WebInspector.InspectorBackendStub.prototype._registerDelegate):
  60334. (WebInspector.InspectorBackendStub.prototype.sendMessageToBackend):
  60335. * inspector/front-end/InspectorBackendStub.qrc: Removed.
  60336. * inspector/front-end/WebKit.qrc:
  60337. 2010-08-18 Pavel Feldman <pfeldman@chromium.org>
  60338. Reviewed by Yury Semikhatsky.
  60339. Web Inspector: make objectId of string type instead of object.
  60340. https://bugs.webkit.org/show_bug.cgi?id=44160
  60341. * WebCore.xcodeproj/project.pbxproj:
  60342. * inspector/front-end/InjectedScript.js:
  60343. (injectedScriptConstructor.):
  60344. * inspector/front-end/InjectedScriptAccess.js:
  60345. (get InjectedScriptAccess.getForObjectId):
  60346. * inspector/front-end/RemoteObject.js:
  60347. (WebInspector.RemoteObject.prototype.getProperties):
  60348. (WebInspector.RemoteObject.prototype.setPropertyValue):
  60349. (WebInspector.RemoteObject.prototype.pushNodeToFrontend):
  60350. 2010-08-17 Ilya Tikhonovsky <loislo@chromium.org>
  60351. Reviewed by Yury Semikhatsky.
  60352. Web Inspector: replace hand written InspectorBackendStub.js by generated one.
  60353. New command-line flag was added to combine-javascript-resources.
  60354. It specifies the location of generated scripts.
  60355. https://bugs.webkit.org/show_bug.cgi?id=43791
  60356. * GNUmakefile.am:
  60357. * WebCore.gyp/WebCore.gyp:
  60358. * WebCore.gypi:
  60359. * WebCore.pri:
  60360. * WebCore.pro:
  60361. * WebCore.vcproj/WebCore.vcproj:
  60362. * WebCore.xcodeproj/project.pbxproj:
  60363. * combine-javascript-resources:
  60364. * inspector/CodeGeneratorInspector.pm:
  60365. * inspector/front-end/InspectorBackendStub.js: Removed.
  60366. * inspector/front-end/WebKit.qrc:
  60367. 2010-08-18 Shinichiro Hamaji <hamaji@chromium.org>
  60368. Reviewed by Dimitri Glazkov.
  60369. Printer font is different from screen font
  60370. https://bugs.webkit.org/show_bug.cgi?id=43340
  60371. Not testable because PNG output in layoutTestController.setPrinting
  60372. for chromium isn't implemented yet.
  60373. * platform/graphics/FontDescription.h: Use screen font even for printing on Mac Chromium
  60374. (WebCore::FontDescription::setUsePrinterFont):
  60375. 2010-08-18 Renata Hodovan <reni@inf.u-szeged.hu>
  60376. Reviewed by Dirk Schulze.
  60377. Fix displaying problem of feTurbulence.
  60378. https://bugs.webkit.org/show_bug.cgi?id=44111
  60379. Change the order of calculating turbulenceFunctionResult
  60380. and clamping it. Furthermore remove the unnecessary rounding of m_seed.
  60381. Add a new test for checking the change of seed's value.
  60382. Test: svg/W3C-SVG-1.1/filters-turb-02-f.svg
  60383. * svg/graphics/filters/SVGFETurbulence.cpp:
  60384. (WebCore::FETurbulence::initPaint):
  60385. (WebCore::FETurbulence::calculateTurbulenceValueForPoint):
  60386. (WebCore::FETurbulence::apply):
  60387. 2010-08-17 Gavin Barraclough <barraclough@apple.com>
  60388. Reviewed by Sam Weinig.
  60389. Bug 44146 - Remove toDouble/toUInt32 methods from UString.
  60390. These methods all implement JavaScript language specific behaviour, and as such
  60391. are not suited to being on a generic string object. They are also inefficient
  60392. and incorrectly used, refactor & cleanup. Uses of these methods really divide
  60393. out into two cases.
  60394. ToNumber:
  60395. Uses of toDouble from JSString and from parseFloat are implementing ecma's
  60396. ToNumber conversion from strings (see ecma-262 9.3.1), so UString::toDouble
  60397. should largely just be moved out to a global jsToNumber function. ToNumber is
  60398. capable of recognizing either decimal or hexadecimal numbers, but parseFloat
  60399. should only recognize decimal values. This is currently handled by testing for
  60400. hexadecimal before calling toDouble, which should unnecessary - instead we can
  60401. just split out the two parts to the grammar into separate functions. Also,
  60402. strtod recognizes a set of literals (nan, inf, and infinity - all with any
  60403. capitalization) - which are not defined by any of the specs we are implementing.
  60404. To handle this we need to perform additional work in toDouble to convert the
  60405. unsupported cases of infinities back to NaNs. Instead we should simply remove
  60406. support for this literals from strtod. This should provide a more desirable
  60407. behaviour for all clients of strtod.
  60408. Indexed properties:
  60409. Uses of the toStrictUInt32 methods are were all converting property names to
  60410. indices, and all uses of toUInt32 were incorrect; in all cases we should have
  60411. been calling toUInt32. This error results in some incorrect behaviour in the
  60412. DOM (accessing property "0 " of a NodeList should fail; it currently does not).
  60413. Move this method onto Identifier (our canonical property name), and make it
  60414. always perform a strict conversion. Add a layout test to check NodeList does
  60415. convert indexed property names correctly.
  60416. Test: fast/dom/NodeList/nodelist-item-with-index.html
  60417. * WebCore.xcodeproj/project.pbxproj:
  60418. * bindings/js/JSDOMWindowCustom.cpp:
  60419. (WebCore::JSDOMWindow::getOwnPropertySlot):
  60420. (WebCore::JSDOMWindow::getOwnPropertyDescriptor):
  60421. * bindings/js/JSHTMLAllCollectionCustom.cpp:
  60422. (WebCore::callHTMLAllCollection):
  60423. (WebCore::JSHTMLAllCollection::item):
  60424. * bindings/js/JSHTMLCollectionCustom.cpp:
  60425. (WebCore::callHTMLCollection):
  60426. (WebCore::JSHTMLCollection::item):
  60427. * bindings/js/JSNodeListCustom.cpp:
  60428. (WebCore::callNodeList):
  60429. * bindings/scripts/CodeGeneratorJS.pm:
  60430. * bridge/runtime_array.cpp:
  60431. (JSC::RuntimeArray::getOwnPropertySlot):
  60432. (JSC::RuntimeArray::getOwnPropertyDescriptor):
  60433. (JSC::RuntimeArray::put):
  60434. 2010-08-18 Adam Barth <abarth@webkit.org>
  60435. Reviewed by Adele Peterson.
  60436. Null dereference in DOMSelection::deleteFromDocument
  60437. https://bugs.webkit.org/show_bug.cgi?id=44153
  60438. deleteFromDocument checks selection->isNone() before calling
  60439. selection->selection().toNormalizedRange(), but toNormalizedRange()
  60440. notes that it needs to updateLayout(), which can make the selection
  60441. isNone() again. In that case, we crash on a NULL pointer in
  60442. deleteFromDocument. I don't know how to trigger that situation in a
  60443. test, but cross_fuzz was able to hit it, so we should fix it.
  60444. * page/DOMSelection.cpp:
  60445. (WebCore::DOMSelection::deleteFromDocument):
  60446. 2010-08-17 Girish Ramakrishnan <girish@forwardbias.in>
  60447. Reviewed by Antonio Gomes.
  60448. [Qt] On Maemo5, there is no libgdk-x11-2.0.so symlink. Look for
  60449. libgdk-x11-2.0.so.0 instead on X11 and Maemo5.
  60450. https://bugs.webkit.org/show_bug.cgi?id=44043
  60451. * plugins/qt/PluginViewQt.cpp:
  60452. (WebCore::getPluginDisplay):
  60453. 2010-08-17 Ariya Hidayat <ariya@sencha.com>
  60454. Reviewed by Antonio Gomes.
  60455. [Qt] Remove unused ContextShadowParameter class in GraphicsContextQt
  60456. https://bugs.webkit.org/show_bug.cgi?id=44142
  60457. The class is not needed anymore after r65425.
  60458. We know have dedicated ContextShadow in its own file.
  60459. * platform/graphics/qt/GraphicsContextQt.cpp:
  60460. 2010-08-17 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org>
  60461. Reviewed by Darin Adler.
  60462. Add NetworkingContext to avoid layer violations
  60463. https://bugs.webkit.org/show_bug.cgi?id=42292
  60464. Preparation: Just add the files to the build system.
  60465. * GNUmakefile.am: Added new files.
  60466. * WebCore.gypi: Ditto.
  60467. * WebCore.pro: Ditto.
  60468. * WebCore.vcproj/WebCore.vcproj: Ditto.
  60469. * WebCore.xcodeproj/project.pbxproj: Ditto.
  60470. * loader/FrameNetworkingContext.h: Added.
  60471. * platform/network/NetworkingContext.h: Added.
  60472. Placeholders with tentative code that might be changed when landing
  60473. the rest of it.
  60474. 2010-08-17 Mihai Parparita <mihaip@chromium.org>
  60475. Reviewed by Darin Fisher.
  60476. Back button after Google search result click broken
  60477. https://bugs.webkit.org/show_bug.cgi?id=44086
  60478. Test: fast/history/redirect-via-iframe.html
  60479. isLoadingInAPISense doesn't quite map to onload (it also returns true
  60480. if frames are loading, even after the parent frame has fired its onload
  60481. handler). Instead, add a flag for the onload event being fired, and
  60482. use that.
  60483. * loader/DocumentLoader.cpp:
  60484. (WebCore::DocumentLoader::DocumentLoader):
  60485. * loader/DocumentLoader.h:
  60486. (WebCore::DocumentLoader::handledOnloadEvents):
  60487. (WebCore::DocumentLoader::wasOnloadHandled):
  60488. * loader/FrameLoader.cpp:
  60489. (WebCore::FrameLoader::handledOnloadEvents):
  60490. * loader/RedirectScheduler.cpp:
  60491. (WebCore::RedirectScheduler::mustLockBackForwardList):
  60492. 2010-08-17 Steve Block <steveblock@google.com>
  60493. Reviewed by Jeremy Orlow.
  60494. Geolocation clearWatch() needs to protect against invalid IDs
  60495. https://bugs.webkit.org/show_bug.cgi?id=44096
  60496. If the ID passed to clearWatch() is invalid, we early-out.
  60497. Test: fast/dom/Geolocation/clear-watch-invalid-id-crash.html
  60498. * page/Geolocation.cpp:
  60499. (WebCore::Geolocation::Watchers::set):
  60500. (WebCore::Geolocation::Watchers::remove):
  60501. (WebCore::Geolocation::watchPosition):
  60502. (WebCore::Geolocation::clearWatch):
  60503. 2010-08-17 Stephen White <senorblanco@chromium.org>
  60504. Reviewed by David Levin.
  60505. Allow non-Skia ports to compile with ENABLE(ACCELERATED_2D_CANVAS).
  60506. https://bugs.webkit.org/show_bug.cgi?id=44130
  60507. No tests; if it compiles, it's good.
  60508. * html/canvas/CanvasRenderingContext2D.cpp:
  60509. (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
  60510. Fix a warning (treated as error).
  60511. * platform/graphics/GraphicsContext.cpp:
  60512. (WebCore::GraphicsContext::setGraphicsContext3D):
  60513. (WebCore::GraphicsContext::syncSoftwareCanvas):
  60514. * platform/graphics/GraphicsContext.h:
  60515. Make setGraphicsContext3D() and syncSoftwareCanvas() stubbed out,
  60516. but still present in non-Skia ports. This allows Chrome Mac to
  60517. compile with ENABLE(ACCELERATED_2D_CANVAS) (although it isn't hooked
  60518. up yet, it should at least compile).
  60519. 2010-08-17 Brady Eidson <beidson@apple.com>
  60520. Reviewed by Sam Weinig.
  60521. Navigating back/forward during a modal dialog causes a crash when the modal dialog is dismissed.
  60522. <rdar://problem/8313579> and https://bugs.webkit.org/show_bug.cgi?id=44131
  60523. No new tests. (Especially since DRT doesn't spin inner run loops at all, it would be a significant
  60524. effort to give it the ability to perform the back/forward navigation in the background to reproduce
  60525. this bug)
  60526. Manual tests in place of layout tests:
  60527. * manual-tests/back-forward-during-alert-1.html: Added.
  60528. * manual-tests/back-forward-during-alert-2.html: Added.
  60529. * page/Page.cpp:
  60530. (WebCore::Page::goToItem):
  60531. 2010-08-17 Ojan Vafai <ojan@chromium.org>
  60532. Reviewed by Tony Chang.
  60533. selectionStart clobbered if textarea isn't focused
  60534. https://bugs.webkit.org/show_bug.cgi?id=43814
  60535. If a text control is blurred, setting selectionStart/end should use
  60536. the cached selection value, which is currently stored on the form
  60537. control element.
  60538. Test: fast/forms/text-control-select-blurred.html
  60539. * rendering/RenderTextControl.cpp:
  60540. (WebCore::RenderTextControl::setSelectionStart):
  60541. (WebCore::RenderTextControl::setSelectionEnd):
  60542. 2010-08-17 Dmitry Titov <dimich@chromium.org>
  60543. Reviewed by David Levin.
  60544. MessagePort.close() crashes if the owning context was destroyed.
  60545. https://bugs.webkit.org/show_bug.cgi?id=43140
  60546. Test: fast/events/message-port-context-destroyed.html
  60547. * dom/MessagePort.cpp:
  60548. (WebCore::MessagePort::postMessage):
  60549. (WebCore::MessagePort::start):
  60550. (WebCore::MessagePort::close):
  60551. (WebCore::MessagePort::contextDestroyed):
  60552. Use isEntangled() method to gate various operations on MessagePort. This method also takes into account m_closed bit.
  60553. * dom/ScriptExecutionContext.cpp:
  60554. (WebCore::ScriptExecutionContext::stopActiveDOMObjects):
  60555. (WebCore::ScriptExecutionContext::closeMessagePorts):
  60556. * dom/ScriptExecutionContext.h:
  60557. Add closeMessagePorts() method that closes message ports at the same moments when other ActiveDOMObjects are stopped.
  60558. 2010-08-17 Fady Samuel <fsamuel@chromium.org>
  60559. Reviewed by David Hyatt.
  60560. Updated table cell hit testing and painting to use binary search instead of linear scan.
  60561. Improved Table Hit Testing and Painting Performance
  60562. https://bugs.webkit.org/show_bug.cgi?id=43933
  60563. Tests: fast/table/simple_paint.html
  60564. tables/hittesting/filltable-emptycells.html
  60565. tables/hittesting/filltable-levels.html
  60566. tables/hittesting/filltable-outline.html
  60567. tables/hittesting/filltable-rtl.html
  60568. tables/hittesting/filltable-stress.html
  60569. * rendering/RenderTableSection.cpp:
  60570. (WebCore::RenderTableSection::paintObject): Dirty rect determined using binary search.
  60571. (WebCore::RenderTableSection::nodeAtPoint): Cell hit determined using binary search
  60572. 2010-08-17 Abhishek Arya <inferno@chromium.org>
  60573. Reviewed by Dave Hyatt.
  60574. Only destroy empty anonymous block when it is columns or column span block
  60575. in RenderBlock::removeChild.
  60576. https://bugs.webkit.org/show_bug.cgi?id=44035
  60577. Test: fast/block/basic/empty-anonymous-block-remove-crash.html
  60578. * rendering/RenderBlock.cpp:
  60579. (WebCore::RenderBlock::removeChild):
  60580. 2010-08-17 Darin Fisher <darin@chromium.org>
  60581. Reviewed by Darin Adler.
  60582. [Chromium] REGRESSION: Incorrect repaint on scrolling with position:fixed elements
  60583. https://bugs.webkit.org/show_bug.cgi?id=42949
  60584. This is a partial revert of http://trac.webkit.org/changeset/63907
  60585. * page/FrameView.cpp:
  60586. (WebCore::FrameView::scrollPositionChangedViaPlatformWidget):
  60587. (WebCore::FrameView::scrollPositionChanged):
  60588. * platform/ScrollView.cpp:
  60589. (WebCore::ScrollView::valueChanged):
  60590. 2010-08-17 Sheriff Bot <webkit.review.bot@gmail.com>
  60591. Unreviewed, rolling out r65528.
  60592. http://trac.webkit.org/changeset/65528
  60593. https://bugs.webkit.org/show_bug.cgi?id=44123
  60594. "Broke a bunch of canvas tests on Chrome win/linux."
  60595. (Requested by senorblanco on #webkit).
  60596. * platform/graphics/skia/BitmapImageSingleFrameSkia.h:
  60597. (WebCore::BitmapImageSingleFrameSkia::BitmapImageSingleFrameSkia):
  60598. * platform/graphics/skia/ImageBufferSkia.cpp:
  60599. (WebCore::ImageBuffer::drawsUsingCopy):
  60600. (WebCore::ImageBuffer::copyImage):
  60601. (WebCore::ImageBuffer::draw):
  60602. (WebCore::ImageBuffer::drawPattern):
  60603. * platform/graphics/skia/ImageSkia.cpp:
  60604. (WebCore::BitmapImageSingleFrameSkia::create):
  60605. * platform/graphics/skia/NativeImageSkia.cpp:
  60606. * platform/graphics/skia/NativeImageSkia.h:
  60607. 2010-08-17 Martin Robinson <mrobinson@igalia.com>
  60608. Reviewed by David Hyatt.
  60609. [Cairo] Remove unnecessary full-surface copies from ImageCairo and GraphicsContextCairo
  60610. https://bugs.webkit.org/show_bug.cgi?id=44076
  60611. No new tests as functionality has not changed.
  60612. * GNUmakefile.am: Added GRefPtrCairo to the sources list.
  60613. * platform/graphics/cairo/GRefPtrCairo.cpp: Added.
  60614. (WTF::refGPtr): Added specializations for cairo_t and cairo_surface_t.
  60615. (WTF::derefGPtr):
  60616. * platform/graphics/cairo/GRefPtrCairo.h: Added.
  60617. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  60618. (WebCore::GraphicsContext::createPlatformShadow): Access the image surface directly
  60619. from the ImageBuffer instead of wrapping it in an Image.
  60620. * platform/graphics/cairo/ImageCairo.cpp:
  60621. (WebCore::Image::drawPattern): Create the temporary surface using cairo primitives
  60622. instead of through the platform-independent WebCore code.
  60623. 2010-08-17 Martin Robinson <mrobinson@igalia.com>
  60624. [GTK] Clean up WebCore/platform/graphics/gtk/ImageGtk.cpp
  60625. https://bugs.webkit.org/show_bug.cgi?id=44069
  60626. No new tests as functionality has not changed.
  60627. * GNUmakefile.am: Add WEBKITGTK_API_VERSION_STRING definition, which
  60628. allows WebCore to use this as well.
  60629. * platform/graphics/gtk/ImageGtk.cpp:
  60630. (getWebKitDataDirectory): Added this helper.
  60631. (WebCore::Image::loadPlatformResource): Use GOwnPtr for gchar pointers and
  60632. use the new getWebKitDataDirectory helper.
  60633. * platform/gtk/GOwnPtrGtk.cpp: Move the GtkIconInfo template specialization to this file.
  60634. (WTF::GtkIconInfo): Added this forward declaration.
  60635. * platform/gtk/GOwnPtrGtk.h: Declaration for new template specialization.
  60636. 2010-08-17 Stephen White <senorblanco@chromium.org>
  60637. Reviewed by Darin Fisher.
  60638. [CHROMIUM] Eliminate a memcpy() from the canvas.drawImage(canvas, ...) path.
  60639. This is the Skia followup to Dave Hyatt's patch in r65449.
  60640. https://bugs.webkit.org/show_bug.cgi?id=44115
  60641. Covered by canvas layout tests.
  60642. * platform/graphics/skia/BitmapImageSingleFrameSkia.h:
  60643. Add a "copyPixels" argument to the create() static to indicate if
  60644. the caller wants the pixels to be copied or ref'ed.
  60645. * platform/graphics/skia/ImageBufferSkia.cpp:
  60646. (WebCore::ImageBuffer::drawsUsingCopy):
  60647. We don't use the always-copy path anymore, so return false.
  60648. (WebCore::ImageBuffer::copyImage):
  60649. Shouldn't get here anymore, so ASSERT_NOT_REACHED.
  60650. (WebCore::ImageBuffer::draw):
  60651. (WebCore::ImageBuffer::drawPattern):
  60652. Create a temporary BitampImageSingleFrameSkia wrapped around the
  60653. canvas's bitmap, and draw with it immediately. If drawing to our own
  60654. canvas, copy the pixels, otherwise just shallow copy.
  60655. * platform/graphics/skia/ImageSkia.cpp:
  60656. (WebCore::BitmapImageSingleFrameSkia::BitmapImageSingleFrameSkia):
  60657. Make the constructor take an SkBitmap to be wrapped.
  60658. (WebCore::BitmapImageSingleFrameSkia::create):
  60659. Implement the "copyPixels" flag: if true, do a deep copy, otherwise
  60660. do a shallow copy.
  60661. * platform/graphics/skia/NativeImageSkia.cpp:
  60662. (WebCore::NativeImageSkia::NativeImageSkia):
  60663. * platform/graphics/skia/NativeImageSkia.h:
  60664. Implement a new constructor that shallow-copies the given SkBitmap.
  60665. 2010-08-17 Jian Li <jianli@chromium.org>
  60666. Reviewed by Darin Fisher.
  60667. Move BlobRegistry interface and implementation to platform/network
  60668. https://bugs.webkit.org/show_bug.cgi?id=44116
  60669. Also move BlobData and BlobStorageData since they're part of BlobRegistry
  60670. implementation.
  60671. * Android.mk:
  60672. * CMakeLists.txt:
  60673. * GNUmakefile.am:
  60674. * WebCore.gypi:
  60675. * WebCore.pro:
  60676. * WebCore.vcproj/WebCore.vcproj:
  60677. * WebCore.xcodeproj/project.pbxproj:
  60678. * platform/network/BlobData.cpp: Renamed from WebCore/platform/BlobData.cpp.
  60679. * platform/network/BlobData.h: Renamed from WebCore/platform/BlobData.h.
  60680. * platform/network/BlobRegistry.h: Renamed from WebCore/platform/BlobRegistry.h.
  60681. * platform/network/BlobRegistryImpl.cpp: Renamed from WebCore/html/BlobRegistryImpl.cpp.
  60682. * platform/network/BlobRegistryImpl.h: Renamed from WebCore/html/BlobRegistryImpl.h.
  60683. * platform/network/BlobStorageData.h: Renamed from WebCore/html/BlobStorageData.h.
  60684. 2010-08-17 Andreas Kling <andreas.kling@nokia.com>
  60685. Reviewed by Ariya Hidayat.
  60686. [Qt] Path: Fast approximation of stroke bounding rects
  60687. https://bugs.webkit.org/show_bug.cgi?id=44014
  60688. In canvas's stroke(), use QPainterPath::controlPointRect() to calculate
  60689. a slightly larger bounding rect in a fraction of the time.
  60690. * html/canvas/CanvasRenderingContext2D.cpp:
  60691. (WebCore::CanvasRenderingContext2D::stroke):
  60692. 2010-08-17 Girish Ramakrishnan <girish@forwardbias.in>
  60693. Reviewed by Kenneth Rohde Christiansen.
  60694. Set PluginQuirkRequiresDefaultScreenDepth for all Flash versions and not
  60695. just Flash 10.
  60696. https://bugs.webkit.org/show_bug.cgi?id=44043
  60697. * plugins/PluginPackage.cpp:
  60698. (WebCore::PluginPackage::determineQuirks):
  60699. 2010-08-17 Jian Li <jianli@chromium.org>
  60700. Reviewed by David Levin.
  60701. Change FileStream implementation to prepare for blob resource handling.
  60702. https://bugs.webkit.org/show_bug.cgi?id=43985
  60703. Change FileStream to support synchronous usage only. All the asychronous
  60704. logics are moved to FileStreamProxy. Update the existing FileReader code
  60705. to adapt to this change.
  60706. * html/FileReader.cpp: Account for FileStreamProxy changes.
  60707. (WebCore::FileReader::didStart):
  60708. (WebCore::FileReader::didGetSize):
  60709. (WebCore::FileReader::didOpen):
  60710. (WebCore::FileReader::didRead):
  60711. * html/FileReader.h:
  60712. * html/FileStream.cpp: Remove m_client and make all calls synchronous only.
  60713. (WebCore::FileStream::FileStream):
  60714. (WebCore::FileStream::start):
  60715. (WebCore::FileStream::stop):
  60716. (WebCore::FileStream::getSize):
  60717. (WebCore::FileStream::openForRead):
  60718. (WebCore::FileStream::openForWrite):
  60719. (WebCore::FileStream::close):
  60720. (WebCore::FileStream::read):
  60721. (WebCore::FileStream::write):
  60722. (WebCore::FileStream::truncate):
  60723. * html/FileStream.h: Add getSize() and make all calls synchronous by adding return values.
  60724. (WebCore::FileStream::create):
  60725. * html/FileStreamClient.h: Account for FileStreamProxy changes.
  60726. (WebCore::FileStreamClient::didRead):
  60727. (WebCore::FileStreamClient::didTruncate):
  60728. (WebCore::FileStreamClient::didOpen):
  60729. * html/FileStreamProxy.cpp: All the logics to handle asynchronous calls are wrapped here.
  60730. (WebCore::FileStreamProxy::FileStreamProxy):
  60731. (WebCore::FileStreamProxy::create):
  60732. (WebCore::FileStreamProxy::fileThread):
  60733. (WebCore::didStart):
  60734. (WebCore::FileStreamProxy::startOnFileThread):
  60735. (WebCore::FileStreamProxy::stop):
  60736. (WebCore::derefProxyOnContext):
  60737. (WebCore::FileStreamProxy::stopOnFileThread):
  60738. (WebCore::didGetSize):
  60739. (WebCore::FileStreamProxy::getSize):
  60740. (WebCore::FileStreamProxy::getSizeOnFileThread):
  60741. (WebCore::didOpen):
  60742. (WebCore::FileStreamProxy::openForRead):
  60743. (WebCore::FileStreamProxy::openForReadOnFileThread):
  60744. (WebCore::FileStreamProxy::openForWrite):
  60745. (WebCore::FileStreamProxy::openForWriteOnFileThread):
  60746. (WebCore::FileStreamProxy::close):
  60747. (WebCore::FileStreamProxy::closeOnFileThread):
  60748. (WebCore::didRead):
  60749. (WebCore::FileStreamProxy::read):
  60750. (WebCore::FileStreamProxy::readOnFileThread):
  60751. (WebCore::didWrite):
  60752. (WebCore::FileStreamProxy::write):
  60753. (WebCore::FileStreamProxy::writeOnFileThread):
  60754. (WebCore::didTruncate):
  60755. (WebCore::FileStreamProxy::truncate):
  60756. (WebCore::FileStreamProxy::truncateOnFileThread):
  60757. * html/FileStreamProxy.h:
  60758. * html/FileThreadTask.h: Change all methods to return void since return value is not needed now.
  60759. 2010-08-17 Dimitri Glazkov <dglazkov@chromium.org>
  60760. Returned WebCore.xcodeproj to default settings after http://trac.webkit.org/changeset/65468/trunk/WebCore/WebCore.xcodeproj/project.pbxproj.
  60761. * WebCore.xcodeproj/project.pbxproj: Removed developmentRegion = English line.
  60762. 2010-08-17 Dimitri Glazkov <dglazkov@chromium.org>
  60763. Reviewed by Eric Seidel.
  60764. Eliminate extra traversal of the tree when determining ability to lazy-attach a Node.
  60765. https://bugs.webkit.org/show_bug.cgi?id=43749
  60766. Land the actual change that I intended to land in http://trac.webkit.org/changeset/65508.
  60767. Neither SVG nor inputs/counters shadow DOM are traveling down this path (they home-bake their attachment),
  60768. so the check for shadow tree existence isn't needed.
  60769. Gives a small, but consistent win in Dromaeo's DOM Modification test.
  60770. * dom/Node.h:
  60771. (WebCore::Node::canLazyAttach): Changed to always return true.
  60772. 2010-08-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
  60773. Reviewed by Eric Carlson.
  60774. Restore intrinsic size of video elements after loading poster
  60775. The element might already have the instrinsic size of the video, in
  60776. which case we don't want to override it witht that of the image.
  60777. * rendering/RenderVideo.cpp: call updateIntrinsicSize() to restore size
  60778. 2010-08-17 Mahesh Kulkarni <mahesh.kulkarni@nokia.com>
  60779. Reviewed by Steve Block.
  60780. Geolocation preemptive permissions policy is buggy
  60781. https://bugs.webkit.org/show_bug.cgi?id=42811
  60782. While waiting for permission, m_startRequestPermissionNotifier was
  60783. used to consider only one pending request. This patch implements a set
  60784. m_pendingForPermissionNotifiers to maintain set of pending requests.
  60785. When user grants/denies permission all listeners will be notified.
  60786. Also fixed issue with hasZeroTimeout() where startTimerIfNeeded() has
  60787. to start irrespective of permission state
  60788. Tests: fast/dom/Geolocation/delayed-permission-allowed-for-multiple-requests.html
  60789. fast/dom/Geolocation/delayed-permission-denied-for-multiple-requests.html
  60790. * WebCore.pro:
  60791. * page/Geolocation.cpp:
  60792. (WebCore::Geolocation::startRequest):
  60793. (WebCore::Geolocation::setIsAllowed):
  60794. (WebCore::Geolocation::startUpdating):
  60795. (WebCore::Geolocation::handlePendingPermissionNotifiers):
  60796. * page/Geolocation.h:
  60797. 2010-08-11 Jeremy Orlow <jorlow@chromium.org>
  60798. Beginnings of IndexedDB persistance + IDBDatabase.description fleshed out
  60799. https://bugs.webkit.org/show_bug.cgi?id=43744
  60800. The beginnings of a SQLite backend for IndexedDB. Right now, only persists
  60801. meta-data for the database. The rest is coming in future patches. Adds
  60802. a manual test to verify persistance.
  60803. Test: storage/indexeddb/database-description.html
  60804. + a manual test
  60805. * Android.mk:
  60806. * CMakeLists.txt:
  60807. * GNUmakefile.am:
  60808. * WebCore.gypi:
  60809. * WebCore.vcproj/WebCore.vcproj:
  60810. * WebCore.xcodeproj/project.pbxproj:
  60811. * manual-tests/indexed-database.html: Added.
  60812. * page/SecurityOrigin.cpp:
  60813. (WebCore::SecurityOrigin::databaseIdentifier):
  60814. * platform/FileSystem.cpp: Added.
  60815. (WebCore::):
  60816. (WebCore::shouldEscapeUChar):
  60817. (WebCore::encodeForFileName):
  60818. * platform/FileSystem.h:
  60819. * storage/IDBDatabase.cpp:
  60820. (WebCore::IDBDatabase::IDBDatabase):
  60821. * storage/IDBDatabase.h:
  60822. (WebCore::IDBDatabase::description):
  60823. * storage/IDBDatabaseBackendImpl.cpp:
  60824. (WebCore::extractMetaData):
  60825. (WebCore::setMetaData):
  60826. (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl):
  60827. (WebCore::IDBDatabaseBackendImpl::setDescription):
  60828. * storage/IDBDatabaseBackendImpl.h:
  60829. (WebCore::IDBDatabaseBackendImpl::create):
  60830. * storage/IDBFactory.h:
  60831. * storage/IDBFactory.idl:
  60832. * storage/IDBFactoryBackendImpl.cpp:
  60833. (WebCore::IDBFactoryBackendImpl::IDBFactoryBackendImpl):
  60834. (WebCore::IDBFactoryBackendImpl::~IDBFactoryBackendImpl):
  60835. (WebCore::openSQLiteDatabase):
  60836. (WebCore::createTables):
  60837. (WebCore::IDBFactoryBackendImpl::open):
  60838. * storage/IDBFactoryBackendImpl.h:
  60839. (WebCore::IDBFactoryBackendImpl::create):
  60840. 2010-08-17 Dimitri Glazkov <dglazkov@chromium.org>
  60841. Reviewed by Eric Seidel.
  60842. Eliminate extra traversal of the tree when determining ability to lazy-attach a Node.
  60843. https://bugs.webkit.org/show_bug.cgi?id=43749
  60844. Neither SVG nor inputs/counters shadow DOM are traveling down this path (they home-bake their attachment),
  60845. so the check for shadow tree existence isn't needed.
  60846. Gives a small, but consisten win in Dromaeo's DOM Modification test.
  60847. * dom/Node.cpp: Removed canLazyAttach declaration.
  60848. * dom/Node.h:
  60849. (WebCore::Node::canLazyAttach): Changed to always return true.
  60850. 2010-08-17 Pavel Feldman <pfeldman@chromium.org>
  60851. Reviewed by Yury Semikhatsky.
  60852. Web Inspector: [CRASH] Console formatting crashes after cross-domain navigation.
  60853. https://bugs.webkit.org/show_bug.cgi?id=44103
  60854. * bindings/js/JSInjectedScriptHostCustom.cpp:
  60855. (WebCore::InjectedScriptHost::injectedScriptFor):
  60856. * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
  60857. (WebCore::InjectedScriptHost::injectedScriptFor):
  60858. * inspector/ConsoleMessage.cpp:
  60859. (WebCore::ConsoleMessage::addToFrontend):
  60860. 2010-08-17 Yury Semikhatsky <yurys@chromium.org>
  60861. Reviewed by Pavel Feldman.
  60862. Web Inspector: upstream Chromium debugger step tests
  60863. https://bugs.webkit.org/show_bug.cgi?id=44106
  60864. Tests: inspector/debugger-step-in.html
  60865. inspector/debugger-step-out.html
  60866. inspector/debugger-step-over.html
  60867. * bindings/js/ScriptDebugServer.cpp:
  60868. (WebCore::ScriptDebugServer::returnEvent): check that debugger is still attached after continue to ensure
  60869. that current call frame is not 0.
  60870. 2010-08-17 Ademar de Souza Reis Jr <ademar.reis@openbossa.org>
  60871. Reviewed by David Levin.
  60872. Trivial fix removing the self-inclusion of a couple of header files.
  60873. Self inclusion in Document.h and RenderTheme.h
  60874. https://bugs.webkit.org/show_bug.cgi?id=44065
  60875. * dom/Document.h:
  60876. * rendering/RenderTheme.h:
  60877. 2010-08-17 No'am Rosenthal <noam.rosenthal@nokia.com>
  60878. Reviewed by Ariya Hidayat.
  60879. [Qt] Move the accelerated compositing build flag to the right place
  60880. https://bugs.webkit.org/show_bug.cgi?id=43882
  60881. No new tests: build fix.
  60882. * WebCore.pro:
  60883. 2010-08-17 Sheriff Bot <webkit.review.bot@gmail.com>
  60884. Unreviewed, rolling out r65500.
  60885. http://trac.webkit.org/changeset/65500
  60886. https://bugs.webkit.org/show_bug.cgi?id=44108
  60887. Qt bots failed to compile. (Requested by loislo on #webkit).
  60888. * GNUmakefile.am:
  60889. * WebCore.gyp/WebCore.gyp:
  60890. * WebCore.gypi:
  60891. * WebCore.pri:
  60892. * WebCore.pro:
  60893. * WebCore.vcproj/copyInspectorFiles.cmd:
  60894. * WebCore.xcodeproj/project.pbxproj:
  60895. * combine-javascript-resources:
  60896. * inspector/CodeGeneratorInspector.pm:
  60897. * inspector/front-end/InspectorBackendStub.js: Added.
  60898. (WebInspector.InspectorBackendStub):
  60899. (WebInspector.InspectorBackendStub.prototype._registerDelegate):
  60900. (WebInspector.InspectorBackendStub.prototype.sendMessageToBackend):
  60901. * inspector/front-end/InspectorBackendStub.qrc: Removed.
  60902. * inspector/front-end/WebKit.qrc:
  60903. 2010-08-17 Ilya Tikhonovsky <loislo@chromium.org>
  60904. Reviewed by Yury Semikhatsky.
  60905. Web Inspector: replace hand written InspectorBackendStub.js by generated one.
  60906. New command-line flag was added to combine-javascript-resources.
  60907. It specifies the location of generated scripts.
  60908. https://bugs.webkit.org/show_bug.cgi?id=43791
  60909. * GNUmakefile.am:
  60910. * WebCore.gyp/WebCore.gyp:
  60911. * WebCore.gypi:
  60912. * WebCore.pri:
  60913. * WebCore.pro:
  60914. * WebCore.vcproj/WebCore.vcproj:
  60915. * WebCore.xcodeproj/project.pbxproj:
  60916. * combine-javascript-resources:
  60917. * inspector/CodeGeneratorInspector.pm:
  60918. * inspector/front-end/InspectorBackendStub.js: Removed.
  60919. * inspector/front-end/WebKit.qrc:
  60920. 2010-08-17 Pavel Feldman <pfeldman@chromium.org>
  60921. Reviewed by Pavel Feldman.
  60922. Web Inspector: get rid of node and scoped object-specific ids.
  60923. https://bugs.webkit.org/show_bug.cgi?id=44097
  60924. * inspector/front-end/ConsoleView.js:
  60925. * inspector/front-end/ElementsTreeOutline.js:
  60926. (WebInspector.ElementsTreeElement.prototype._createTooltipForNode):
  60927. * inspector/front-end/EventListenersSidebarPane.js:
  60928. * inspector/front-end/InjectedScript.js:
  60929. (injectedScriptConstructor.):
  60930. (injectedScriptConstructor):
  60931. * inspector/front-end/InjectedScriptAccess.js:
  60932. (InjectedScriptAccess):
  60933. (InjectedScriptAccess.getForNode):
  60934. (InjectedScriptAccess._installHandler.InjectedScriptAccess.prototype.methodName):
  60935. (InjectedScriptAccess._installHandler):
  60936. * inspector/front-end/PropertiesSidebarPane.js:
  60937. (WebInspector.PropertiesSidebarPane.prototype.update):
  60938. * inspector/front-end/RemoteObject.js:
  60939. (WebInspector.RemoteObjectId):
  60940. (WebInspector.RemoteObject.resolveNode):
  60941. * inspector/front-end/ScriptsPanel.js:
  60942. 2010-08-17 Xan Lopez <xlopez@igalia.com>
  60943. Reviewed by Gustavo Noronha.
  60944. [GTK] Fix wrapping of core Events in the bindings
  60945. https://bugs.webkit.org/show_bug.cgi?id=44095
  60946. Return the proper GObject type instead of hardcoding
  60947. WebKitDOMEvent for all Event types.
  60948. * bindings/gobject/GObjectEventListener.cpp:
  60949. (WebCore::GObjectEventListener::handleEvent):
  60950. * bindings/gobject/WebKitDOMBinding.cpp:
  60951. (WebKit::kit):
  60952. 2010-08-17 Xan Lopez <xlopez@igalia.com>
  60953. Reviewed by Gustavo Noronha.
  60954. Revert supposed build-fix which was in fact reverting a previous
  60955. build fix which was correct (oh dear).
  60956. * GNUmakefile.am:
  60957. 2010-08-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
  60958. Reviewed by Antonio Gomes.
  60959. [Qt] Add media element support for preload=none
  60960. * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
  60961. * platform/graphics/qt/MediaPlayerPrivateQt.h:
  60962. 2010-08-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
  60963. Reviewed by Antonio Gomes.
  60964. [Qt] Pre-roll media when loading media elements
  60965. This ensures we get correct size-hints from QtMultimedia, as well as
  60966. the media states Buffering and Buffered instead of Loading and Loaded,
  60967. which we use to transition into MediaPlayer::HaveEnoughData.
  60968. * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
  60969. * platform/graphics/qt/MediaPlayerPrivateQt.h:
  60970. 2010-08-16 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
  60971. Reviewed by Kenneth Rohde Christiansen.
  60972. [Qt] Fix missing default controls for stand-alone media elements
  60973. https://bugs.webkit.org/show_bug.cgi?id=35427
  60974. * css/mediaControlsQt.css:
  60975. 2010-08-17 Ariya Hidayat <ariya@sencha.com>
  60976. Reviewed by Kenneth Rohde Christiansen.
  60977. [Qt] Reduce the size of the shadow buffer to the clip region
  60978. https://bugs.webkit.org/show_bug.cgi?id=44091
  60979. Instead of allocating the buffer image (for the blur support) as big
  60980. as the rectangle which casts the shadow, we limit the size to the
  60981. current clip region.
  60982. * platform/graphics/qt/ContextShadow.cpp:
  60983. (WebCore::ContextShadow::drawShadowRect):
  60984. 2010-08-17 Philippe Normand <pnormand@igalia.com>
  60985. Reviewed by Martin Robinson.
  60986. [GStreamer] media/invalid-media-url-crash.html fails
  60987. https://bugs.webkit.org/show_bug.cgi?id=42960
  60988. Implemented two ResourceHandleClient callbacks that need to notify
  60989. downstream GStreamer elements of errors while accessing the
  60990. resource.
  60991. * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
  60992. (StreamingClient::wasBlocked):
  60993. (StreamingClient::cannotShowURL):
  60994. 2010-08-16 Gavin Barraclough <barraclough@apple.com>
  60995. Rubber stamped by Sam Weinig
  60996. Remove unnecessary includes from UString.h, add new includes as necessary.
  60997. * dom/ScriptExecutionContext.h:
  60998. * loader/appcache/ApplicationCache.cpp:
  60999. 2010-08-16 Andreas Kling <andreas.kling@nokia.com>
  61000. Reviewed by Darin Adler.
  61001. CSS: Add fast-path for rgba() color parsing
  61002. https://bugs.webkit.org/show_bug.cgi?id=42965
  61003. Test: fast/canvas/rgba-parsing.html
  61004. * css/CSSParser.cpp:
  61005. (WebCore::CSSParser::parseColor): Extended with support for rgba().
  61006. (WebCore::parseAlphaValue): Added, parses an alpha value using
  61007. WTF::strtod() (if necessary) and clamps between 0 and 1.
  61008. (WebCore::isTenthAlpha):
  61009. 2010-08-16 Kinuko Yasuda <kinuko@chromium.org>
  61010. Reviewed by Dumitru Daniliuc.
  61011. Add idl and mock classes for FileSystem API's {File,Directory}Entry and related interfaces
  61012. https://bugs.webkit.org/show_bug.cgi?id=43993
  61013. Adding DirectoryEntry, DirectoryReader, EntriesCallback and FileEntry as defined in HTML5 FileSystem API.
  61014. http://dev.w3.org/2009/dap/file-system/file-dir-sys.html
  61015. Also adding Makefile entries for idl and mock classes added in changeset 64414 (except for Android platforms).
  61016. Tests will be added when we add underlying implementation.
  61017. * CMakeLists.txt:
  61018. * DerivedSources.cpp:
  61019. * DerivedSources.make:
  61020. * GNUmakefile.am:
  61021. * WebCore.gypi:
  61022. * WebCore.pri:
  61023. * WebCore.pro:
  61024. * WebCore.vcproj/WebCore.vcproj:
  61025. * WebCore.xcodeproj/project.pbxproj:
  61026. * storage/DOMFileSystem.cpp:
  61027. (WebCore::DOMFileSystem::root):
  61028. * storage/DOMFileSystem.h:
  61029. * storage/DOMFileSystem.idl:
  61030. * storage/DirectoryEntry.cpp: Added.
  61031. * storage/DirectoryEntry.h: Added.
  61032. * storage/DirectoryEntry.idl: Added.
  61033. * storage/DirectoryReader.cpp: Added.
  61034. * storage/DirectoryReader.h: Added.
  61035. * storage/DirectoryReader.idl: Added.
  61036. * storage/EntriesCallback.h: Added.
  61037. * storage/EntriesCallback.idl: Added.
  61038. * storage/EntryArray.cpp: Added.
  61039. * storage/EntryArray.h: Added.
  61040. * storage/EntryArray.idl: Added.
  61041. * storage/Entry.cpp:
  61042. (WebCore::Entry::Entry):
  61043. (WebCore::Entry::getMetadata):
  61044. (WebCore::Entry::moveTo):
  61045. (WebCore::Entry::copyTo):
  61046. (WebCore::Entry::remove):
  61047. (WebCore::Entry::getParent):
  61048. * storage/Entry.h:
  61049. (WebCore::Entry::isFile):
  61050. (WebCore::Entry::isDirectory):
  61051. * storage/Entry.idl:
  61052. * storage/FileEntry.cpp: Added.
  61053. * storage/FileEntry.h: Added.
  61054. * storage/FileEntry.idl: Added.
  61055. 2010-08-16 Andreas Kling <andreas.kling@nokia.com>
  61056. Reviewed by Ariya Hidayat.
  61057. [Qt] Path::closeSubpath() should only close the last subpath if it has >1 point
  61058. https://bugs.webkit.org/show_bug.cgi?id=44061
  61059. Spec link:
  61060. http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-closepath
  61061. Test: fast/canvas/canvas-closePath-single-point.html
  61062. * platform/graphics/Path.h: Add a Qt-only member to track the last subpath.
  61063. * platform/graphics/qt/PathQt.cpp:
  61064. (WebCore::Path::closeSubpath): Only close the last subpath if it
  61065. has more than 1 point. Otherwise behave as moveTo(first point in last subpath)
  61066. (WebCore::Path::Path):
  61067. (WebCore::Path::operator=):
  61068. (WebCore::Path::moveTo):
  61069. (WebCore::Path::transform):
  61070. 2010-08-16 Nate Chapin <japhet@chromium.org>
  61071. Unreviewed, Chromium mac build fix (with help from jamesr).
  61072. * platform/chromium/ScrollbarThemeChromiumMac.mm:
  61073. (WebCore::ScrollbarThemeChromiumMac::paint):
  61074. 2010-08-16 Gavin Barraclough <barraclough@apple.com>
  61075. Reviewed by Sam Weinig
  61076. Bug 44080 - String find/reverseFind methods need tidying up
  61077. These methods have a couple of problems with their interface, and implementation.
  61078. These methods take and int index, and return an int - however this is problematic
  61079. since on 64-bit string indices may have a full 32-bit range. This spills out into
  61080. surrounding code, which unsafely casts string indices from unsigned to int. Code
  61081. checking the result of these methods check for a mix of "== -1", "< 0", and
  61082. "== notFound". Clean this up by changing these methods to take an unsigned
  61083. starting index, and return a size_t. with a failed match indicated by notFound.
  61084. reverseFind also has a special meaning for the starting index argument, in that a
  61085. negative index is interpreted as an offset back from the end of the string. Remove
  61086. this functionality, in the (1!) case where it is used we should just calculate the
  61087. offset by subtracting from the string's length.
  61088. The implementation has a few problems too. The code is not in webkit style, in
  61089. using assorted abbreviations in variable names, and implementations of similar
  61090. find methods with differing argument types were unnecessarily inconsistent. When
  61091. find is passed const char* data the string would be handled as latin1 (zero
  61092. extended to UTF-16) for all characters but the first; this is sign extended.
  61093. Case-insensitive find is broken for unicode strings; the hashing optimization is
  61094. not unicode safe, and could result in false negatives.
  61095. Unify UString find methods to match String.
  61096. * css/CSSSelector.cpp:
  61097. (WebCore::CSSSelector::RareData::parseNth):
  61098. * css/CSSStyleDeclaration.cpp:
  61099. (WebCore::CSSStyleDeclaration::setProperty):
  61100. * css/CSSStyleSelector.cpp:
  61101. (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
  61102. * dom/Document.cpp:
  61103. (WebCore::Document::getImageMap):
  61104. * editing/CompositeEditCommand.cpp:
  61105. (WebCore::CompositeEditCommand::inputText):
  61106. * editing/InsertTextCommand.cpp:
  61107. (WebCore::InsertTextCommand::input):
  61108. * editing/TextIterator.cpp:
  61109. (WebCore::TextIterator::handleTextBox):
  61110. * editing/TypingCommand.cpp:
  61111. (WebCore::TypingCommand::insertText):
  61112. * editing/markup.cpp:
  61113. (WebCore::fillContainerFromString):
  61114. (WebCore::createFragmentFromText):
  61115. * html/File.cpp:
  61116. (WebCore::File::Init):
  61117. * html/HTMLAnchorElement.cpp:
  61118. (WebCore::HTMLAnchorElement::setHost):
  61119. * html/HTMLEmbedElement.cpp:
  61120. (WebCore::HTMLEmbedElement::parseMappedAttribute):
  61121. * html/HTMLFormControlElement.cpp:
  61122. (WebCore::HTMLTextFormControlElement::isPlaceholderEmpty):
  61123. * html/HTMLObjectElement.cpp:
  61124. (WebCore::HTMLObjectElement::parseMappedAttribute):
  61125. * inspector/InspectorDOMAgent.cpp:
  61126. (WebCore::InspectorDOMAgent::performSearch):
  61127. * loader/CrossOriginPreflightResultCache.cpp:
  61128. (WebCore::parseAccessControlAllowList):
  61129. * loader/MainResourceLoader.cpp:
  61130. (WebCore::MainResourceLoader::substituteMIMETypeFromPluginDatabase):
  61131. * loader/appcache/ApplicationCacheStorage.cpp:
  61132. (WebCore::parseHeader):
  61133. (WebCore::parseHeaders):
  61134. * loader/icon/IconFetcher.cpp:
  61135. (WebCore::parseIconLink):
  61136. * page/DOMWindow.cpp:
  61137. (WebCore::DOMWindow::parseModalDialogFeatures):
  61138. * page/SecurityOrigin.cpp:
  61139. (WebCore::SecurityOrigin::createFromDatabaseIdentifier):
  61140. * page/UserContentURLPattern.cpp:
  61141. (WebCore::UserContentURLPattern::parse):
  61142. * page/XSSAuditor.cpp:
  61143. (WebCore::XSSAuditor::findInRequest):
  61144. * platform/ContentType.cpp:
  61145. (WebCore::ContentType::parameter):
  61146. (WebCore::ContentType::type):
  61147. * platform/KURL.cpp:
  61148. (WebCore::KURL::lastPathComponent):
  61149. (WebCore::KURL::setProtocol):
  61150. (WebCore::decodeURLEscapeSequences):
  61151. (WebCore::substituteBackslashes):
  61152. (WebCore::mimeTypeFromDataURL):
  61153. * platform/Length.cpp:
  61154. (WebCore::newCoordsArray):
  61155. (WebCore::newLengthArray):
  61156. * platform/LinkHash.cpp:
  61157. (WebCore::findSlashDotDotSlash):
  61158. (WebCore::findSlashSlash):
  61159. (WebCore::findSlashDotSlash):
  61160. (WebCore::cleanPath):
  61161. * platform/MIMETypeRegistry.cpp:
  61162. (WebCore::MIMETypeRegistry::getMIMETypeForPath):
  61163. * platform/SchemeRegistry.cpp:
  61164. (WebCore::SchemeRegistry::shouldTreatURLAsLocal):
  61165. * platform/graphics/MediaPlayer.cpp:
  61166. (WebCore::MediaPlayer::load):
  61167. * platform/mac/DragImageMac.mm:
  61168. (WebCore::createDragImageIconForCachedImage):
  61169. * platform/network/CredentialStorage.cpp:
  61170. (WebCore::protectionSpaceMapKeyFromURL):
  61171. (WebCore::findDefaultProtectionSpaceForURL):
  61172. * platform/network/HTTPParsers.cpp:
  61173. (WebCore::skipWhiteSpace):
  61174. (WebCore::skipToken):
  61175. (WebCore::parseHTTPRefresh):
  61176. (WebCore::filenameFromHTTPContentDisposition):
  61177. (WebCore::findCharsetInMediaType):
  61178. (WebCore::parseXSSProtectionHeader):
  61179. (WebCore::extractReasonPhraseFromHTTPStatusLine):
  61180. * platform/network/ResourceResponseBase.cpp:
  61181. (WebCore::ResourceResponseBase::isAttachment):
  61182. (WebCore::parseCacheHeader):
  61183. * rendering/RenderEmbeddedObject.cpp:
  61184. (WebCore::RenderEmbeddedObject::updateWidget):
  61185. * storage/Entry.cpp:
  61186. (WebCore::Entry::Entry):
  61187. * svg/SVGFont.cpp:
  61188. (WebCore::isCompatibleGlyph):
  61189. * svg/SVGURIReference.cpp:
  61190. (WebCore::SVGURIReference::getTarget):
  61191. * svg/animation/SVGSMILElement.cpp:
  61192. (WebCore::SVGSMILElement::parseClockValue):
  61193. (WebCore::SVGSMILElement::parseCondition):
  61194. * xml/XPathFunctions.cpp:
  61195. (WebCore::XPath::FunSubstringBefore::evaluate):
  61196. (WebCore::XPath::FunSubstringAfter::evaluate):
  61197. (WebCore::XPath::FunTranslate::evaluate):
  61198. (WebCore::XPath::FunLang::evaluate):
  61199. * xml/XPathParser.cpp:
  61200. (WebCore::XPath::Parser::expandQName):
  61201. 2010-08-16 Ryosuke Niwa <rniwa@webkit.org>
  61202. Reviewed by Tony Chang.
  61203. REGRESSION(r65208): editing/pasteboard/smart-paste-003.html and smart-paste-004.html crash on Windows Chromium
  61204. https://bugs.webkit.org/show_bug.cgi?id=44070
  61205. The crash was caused by start or end node being removed in pushDownInlineStyleAroundNode.
  61206. It made start and end orphaned, and caused s.node() to be detached from the document.
  61207. Fixed the crash by using nodes passed to pushDownInlineStyleAroundNode for start and end if the original
  61208. start and end are orphaned because pushDownInlineStyleAroundNode won't prune targetNode.
  61209. Test: editing/pasteboard/smart-paste-003-trailing-whitespace.html
  61210. * editing/ApplyStyleCommand.cpp:
  61211. (WebCore::ApplyStyleCommand::removeInlineStyle):
  61212. 2010-08-16 James Robinson <jamesr@chromium.org>
  61213. Compile fix. Remove ANGLEWebKitBridge classes from Chromium build. They are unused.
  61214. * WebCore.gypi:
  61215. 2010-08-16 Vincent Scheib <scheib@chromium.org>
  61216. Reviewed by Dimitri Glazkov.
  61217. Canvas2D does not support images larger than system's GPU max texture size
  61218. https://bugs.webkit.org/show_bug.cgi?id=43864
  61219. A new class "TilingData" has been created that provides logic for
  61220. splitting a large image into a series of smaller tiles.
  61221. GLES2Texture and CLES2Canvas are modified to use the TilingData to
  61222. split images on texture upload and render one logical image as many smaller
  61223. images.
  61224. TilingData is tested via unit tests in WebKit/chromium/tests/TilingDataTest.cpp
  61225. * WebCore.gypi:
  61226. * platform/graphics/chromium/GLES2Canvas.cpp:
  61227. (WebCore::GLES2Canvas::drawTexturedRect):
  61228. (WebCore::GLES2Canvas::drawTexturedRectTile):
  61229. * platform/graphics/chromium/GLES2Canvas.h:
  61230. * platform/graphics/chromium/GLES2Texture.cpp:
  61231. (WebCore::GLES2Texture::GLES2Texture):
  61232. (WebCore::GLES2Texture::~GLES2Texture):
  61233. (WebCore::GLES2Texture::create):
  61234. (WebCore::copySubRect):
  61235. (WebCore::GLES2Texture::load):
  61236. (WebCore::GLES2Texture::bindTile):
  61237. * platform/graphics/chromium/GLES2Texture.h:
  61238. (WebCore::GLES2Texture::tiles):
  61239. * platform/graphics/chromium/TilingData.cpp: Added.
  61240. (WebCore::computeNumTiles):
  61241. (WebCore::TilingData::TilingData):
  61242. (WebCore::TilingData::tileXIndexFromSrcCoord):
  61243. (WebCore::TilingData::tileYIndexFromSrcCoord):
  61244. (WebCore::TilingData::tileBounds):
  61245. (WebCore::TilingData::tileBoundsWithBorder):
  61246. (WebCore::TilingData::tileBoundsNormalized):
  61247. (WebCore::TilingData::tilePositionX):
  61248. (WebCore::TilingData::tilePositionY):
  61249. (WebCore::TilingData::tileSizeX):
  61250. (WebCore::TilingData::tileSizeY):
  61251. (WebCore::TilingData::overlappedTileIndices):
  61252. (WebCore::TilingData::intersectDrawQuad):
  61253. * platform/graphics/chromium/TilingData.h: Added.
  61254. (WebCore::TilingData::maxTextureSize):
  61255. (WebCore::TilingData::totalSizeX):
  61256. (WebCore::TilingData::totalSizeY):
  61257. (WebCore::TilingData::numTiles):
  61258. (WebCore::TilingData::numTilesX):
  61259. (WebCore::TilingData::numTilesY):
  61260. (WebCore::TilingData::tileIndex):
  61261. (WebCore::TilingData::tileXIndex):
  61262. (WebCore::TilingData::tileYIndex):
  61263. (WebCore::TilingData::TilingData):
  61264. (WebCore::TilingData::assertTile):
  61265. * platform/graphics/skia/ImageSkia.cpp:
  61266. (WebCore::BitmapImage::draw):
  61267. * platform/graphics/skia/PlatformContextSkia.cpp:
  61268. (WebCore::PlatformContextSkia::uploadSoftwareToHardware):
  61269. 2010-08-16 David Hyatt <hyatt@apple.com>
  61270. Reviewed by Anders Carlsson.
  61271. https://bugs.webkit.org/show_bug.cgi?id=43507, stop ImageBuffer from copying its data when rendering after canvas changes happen.
  61272. This patch renames ImageBuffer::image() to ImageBuffer::copyImage(). The new method always returns a new copy that is a current
  61273. snapshot of the ImageBuffer.
  61274. To draw an ImageBuffer, you now use new GraphicsContext calls: drawImageBuffer. Platforms can then optimize these calls to draw
  61275. efficiently without having to copy the bits of the ImageBuffer into an Image.
  61276. * WebCore.xcodeproj/project.pbxproj:
  61277. * css/CSSCanvasValue.cpp:
  61278. (WebCore::CSSCanvasValue::image):
  61279. * html/HTMLCanvasElement.cpp:
  61280. (WebCore::HTMLCanvasElement::willDraw):
  61281. (WebCore::HTMLCanvasElement::reset):
  61282. (WebCore::HTMLCanvasElement::paint):
  61283. (WebCore::HTMLCanvasElement::setSurfaceSize):
  61284. (WebCore::HTMLCanvasElement::copiedImage):
  61285. (WebCore::HTMLCanvasElement::clearCopiedImage):
  61286. * html/HTMLCanvasElement.h:
  61287. * html/canvas/CanvasPattern.cpp:
  61288. (WebCore::CanvasPattern::CanvasPattern):
  61289. * html/canvas/CanvasPattern.h:
  61290. (WebCore::CanvasPattern::create):
  61291. * html/canvas/CanvasRenderingContext2D.cpp:
  61292. (WebCore::CanvasRenderingContext2D::drawImage):
  61293. (WebCore::CanvasRenderingContext2D::createPattern):
  61294. (WebCore::CanvasRenderingContext2D::drawTextInternal):
  61295. * html/canvas/WebGLRenderingContext.cpp:
  61296. (WebCore::WebGLRenderingContext::paintRenderingResultsToCanvas):
  61297. (WebCore::WebGLRenderingContext::reshape):
  61298. (WebCore::WebGLRenderingContext::texImage2D):
  61299. (WebCore::WebGLRenderingContext::texSubImage2D):
  61300. * html/canvas/WebGLRenderingContext.h:
  61301. (WebCore::WebGLRenderingContext::paintsIntoCanvasBuffer):
  61302. * platform/graphics/GeneratedImage.cpp:
  61303. (WebCore::GeneratedImage::drawPattern):
  61304. * platform/graphics/GraphicsContext.cpp:
  61305. (WebCore::GraphicsContext::drawImageBuffer):
  61306. (WebCore::GraphicsContext::clipToImageBuffer):
  61307. * platform/graphics/GraphicsContext.h:
  61308. * platform/graphics/GraphicsContext3D.h:
  61309. (WebCore::GraphicsContext3D::paintsIntoCanvasBuffer):
  61310. * platform/graphics/Image.h:
  61311. * platform/graphics/ImageBuffer.h:
  61312. (WebCore::ImageBuffer::width):
  61313. (WebCore::ImageBuffer::height):
  61314. * platform/graphics/Pattern.cpp:
  61315. (WebCore::Pattern::Pattern):
  61316. * platform/graphics/Pattern.h:
  61317. (WebCore::Pattern::create):
  61318. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  61319. * platform/graphics/cairo/ImageBufferCairo.cpp:
  61320. (WebCore::ImageBuffer::drawsUsingCopy):
  61321. (WebCore::ImageBuffer::copyImage):
  61322. (WebCore::ImageBuffer::clip):
  61323. (WebCore::ImageBuffer::draw):
  61324. (WebCore::ImageBuffer::drawPattern):
  61325. * platform/graphics/cg/GraphicsContextCG.cpp:
  61326. * platform/graphics/cg/ImageBufferCG.cpp:
  61327. (WebCore::ImageBuffer::ImageBuffer):
  61328. (WebCore::ImageBuffer::drawsUsingCopy):
  61329. (WebCore::ImageBuffer::copyImage):
  61330. (WebCore::ImageBuffer::draw):
  61331. (WebCore::ImageBuffer::drawPattern):
  61332. (WebCore::ImageBuffer::clip):
  61333. * platform/graphics/cg/ImageBufferData.h:
  61334. * platform/graphics/filters/FEColorMatrix.cpp:
  61335. (WebCore::FEColorMatrix::apply):
  61336. * platform/graphics/filters/FEComposite.cpp:
  61337. (WebCore::FEComposite::apply):
  61338. * platform/graphics/filters/SourceAlpha.cpp:
  61339. (WebCore::SourceAlpha::apply):
  61340. * platform/graphics/filters/SourceGraphic.cpp:
  61341. (WebCore::SourceGraphic::apply):
  61342. * platform/graphics/mac/GraphicsContext3DMac.mm:
  61343. * platform/graphics/qt/GraphicsContext3DQt.cpp:
  61344. * platform/graphics/qt/GraphicsContextQt.cpp:
  61345. * platform/graphics/qt/ImageBufferData.h:
  61346. * platform/graphics/qt/ImageBufferQt.cpp:
  61347. (WebCore::ImageBufferData::ImageBufferData):
  61348. (WebCore::ImageBuffer::drawsUsingCopy):
  61349. (WebCore::ImageBuffer::copyImage):
  61350. (WebCore::ImageBuffer::draw):
  61351. (WebCore::ImageBuffer::drawPattern):
  61352. (WebCore::ImageBuffer::clip):
  61353. * platform/graphics/skia/GraphicsContextSkia.cpp:
  61354. * platform/graphics/skia/ImageBufferSkia.cpp:
  61355. (WebCore::ImageBuffer::drawsUsingCopy):
  61356. (WebCore::ImageBuffer::copyImage):
  61357. (WebCore::ImageBuffer::clip):
  61358. (WebCore::):
  61359. * platform/graphics/wx/GraphicsContextWx.cpp:
  61360. * platform/graphics/wx/ImageBufferWx.cpp:
  61361. (WebCore::ImageBuffer::drawsUsingCopy):
  61362. (WebCore::ImageBuffer::copyImage):
  61363. (WebCore::ImageBuffer::clip):
  61364. (WebCore::ImageBuffer::draw):
  61365. (WebCore::ImageBuffer::drawPattern):
  61366. * platform/mac/ScrollbarThemeMac.mm:
  61367. (WebCore::ScrollbarThemeMac::paint):
  61368. * rendering/RenderBoxModelObject.cpp:
  61369. (WebCore::RenderBoxModelObject::paintFillLayerExtended):
  61370. * rendering/RenderSVGResourceClipper.cpp:
  61371. (WebCore::RenderSVGResourceClipper::applyClippingToContext):
  61372. * rendering/RenderSVGResourceFilter.cpp:
  61373. (WebCore::RenderSVGResourceFilter::postApplyResource):
  61374. * rendering/RenderSVGResourceGradient.cpp:
  61375. (WebCore::clipToTextMask):
  61376. * rendering/RenderSVGResourceMasker.cpp:
  61377. (WebCore::RenderSVGResourceMasker::applyResource):
  61378. * rendering/RenderSVGResourcePattern.cpp:
  61379. (WebCore::RenderSVGResourcePattern::buildPattern):
  61380. * rendering/RenderThemeMac.mm:
  61381. (WebCore::RenderThemeMac::paintProgressBar):
  61382. * svg/SVGFEImageElement.cpp:
  61383. (WebCore::SVGFEImageElement::build):
  61384. * svg/graphics/SVGImage.cpp:
  61385. (WebCore::SVGImage::nativeImageForCurrentFrame):
  61386. * svg/graphics/SVGImage.h:
  61387. * svg/graphics/filters/SVGFEMerge.cpp:
  61388. (WebCore::FEMerge::apply):
  61389. * svg/graphics/filters/SVGFEOffset.cpp:
  61390. (WebCore::FEOffset::apply):
  61391. * svg/graphics/filters/SVGFETile.cpp:
  61392. (WebCore::FETile::apply):
  61393. 2010-08-16 Paul Sawaya <psawaya@apple.com>
  61394. Reviewed by Chris Marrin.
  61395. Added shader validation via ANGLE
  61396. https://bugs.webkit.org/show_bug.cgi?id=42405
  61397. Added validation to WebGL via ANGLE
  61398. * Configurations/WebCore.xcconfig:
  61399. * WebCore.gypi:
  61400. * WebCore.xcodeproj/project.pbxproj:
  61401. * platform/graphics/ANGLEWebKitBridge.cpp: Added.
  61402. (WebCore::ANGLEWebKitBridge::ANGLEWebKitBridge):
  61403. (WebCore::ANGLEWebKitBridge::~ANGLEWebKitBridge):
  61404. (WebCore::ANGLEWebKitBridge::validateShaderSource):
  61405. * platform/graphics/ANGLEWebKitBridge.h: Added.
  61406. (WebCore::):
  61407. (WebCore::ANGLEWebKitBridge::setResources):
  61408. * platform/graphics/GraphicsContext3D.h:
  61409. (WebCore::GraphicsContext3D::):
  61410. * platform/graphics/mac/GraphicsContext3DMac.mm:
  61411. (WebCore::GraphicsContext3D::GraphicsContext3D):
  61412. (WebCore::GraphicsContext3D::compileShader):
  61413. (WebCore::GraphicsContext3D::shaderSource):
  61414. (WebCore::GraphicsContext3D::getShaderiv):
  61415. (WebCore::GraphicsContext3D::getShaderInfoLog):
  61416. (WebCore::GraphicsContext3D::getShaderSource):
  61417. 2010-08-16 Kevin Ollivier <kevino@theolliviers.com>
  61418. [wx] Build fix, do not build WebCore as a convenience library as this leads to
  61419. errors in the Win build w/export symbols and causes problems with DOM bindings
  61420. debugging in gdb.
  61421. * wscript: Removed.
  61422. 2010-08-16 Ilya Tikhonovsky <loislo@chromium.org>
  61423. Reviewed by Adam Roben.
  61424. Current implementation of WebCore post-build step on windows platform is error prone.
  61425. It would be better to extract the script into external file.
  61426. https://bugs.webkit.org/show_bug.cgi?id=44058
  61427. * WebCore.vcproj/WebCore.vcproj:
  61428. * WebCore.vcproj/copyForwardingHeaders.cmd: Added.
  61429. * WebCore.vcproj/copyInspectorFiles.cmd: Added.
  61430. 2010-08-16 Kevin Ollivier <kevino@theolliviers.com>
  61431. [wx] Fix typo in previous build fix.
  61432. * platform/graphics/WOFFFileFormat.cpp:
  61433. 2010-08-16 Alex Milowski <alex@milowski.com>
  61434. Reviewed by David Levin.
  61435. Added the configuration of the MathML related files.
  61436. * WebCore.gyp/WebCore.gyp:
  61437. * WebCore.gypi:
  61438. 2010-08-16 Pavel Feldman <pfeldman@chromium.org>
  61439. Not reviewed: fix Leopard Release inspector tests.
  61440. * inspector/front-end/inspector.js:
  61441. 2010-08-16 Marcus Bulach <bulach@chromium.org>
  61442. Reviewed by Jeremy Orlow.
  61443. Implements IDBKeyPath extractor.
  61444. https://bugs.webkit.org/show_bug.cgi?id=43276
  61445. Unit-test IDBKeyPathExtractorTest.cpp.
  61446. LayoutTests will arrive as IndexedDB infrastructure is fleshed out.
  61447. * bindings/v8/IDBBindingUtilities.cpp:
  61448. (WebCore::getValueFrom):
  61449. (WebCore::createIDBKeyFromSerializedValueAndKeyPath):
  61450. * bindings/v8/IDBBindingUtilities.h:
  61451. 2010-08-13 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
  61452. Reviewed by Kenneth Rohde Christiansen and Martin Robinson.
  61453. [GTK] GTK+ drawing idle starved
  61454. https://bugs.webkit.org/show_bug.cgi?id=43994
  61455. Tune down the priority of the shared timers to guarantee GTK+ has
  61456. an opportunity to redraw.
  61457. * platform/gtk/SharedTimerGtk.cpp:
  61458. (WebCore::setSharedTimerFireTime):
  61459. 2010-08-16 Leandro Pereira <leandro@profusion.mobi>
  61460. [EFL] Build fix after r65366.
  61461. EFL port does not support automated tests yet.
  61462. * CMakeLists.txt: Use if (VAR) instead of if (${VAR}) to check if
  61463. they're empty.
  61464. 2010-08-16 Pavel Feldman <pfeldman@chromium.org>
  61465. Reviewed by Yury Semikhatsky.
  61466. Web Inspector: Make InjectedScript proto-based.
  61467. https://bugs.webkit.org/show_bug.cgi?id=44028
  61468. * inspector/front-end/InjectedScript.js:
  61469. (injectedScriptConstructor):
  61470. (injectedScriptConstructor.):
  61471. 2010-08-16 Csaba Osztrogonác <ossy@webkit.org>
  61472. Reviewed by Adam Roben.
  61473. Fix warning in WebCore/plugins/win/PluginPackageWin.cpp
  61474. https://bugs.webkit.org/show_bug.cgi?id=43920
  61475. * plugins/win/PluginPackageWin.cpp:
  61476. (WebCore::PluginPackage::fetchInfo):
  61477. 2010-08-16 Pavel Feldman <pfeldman@chromium.org>
  61478. Not reviewed. Touch inspector file to force frontend deployment.
  61479. * inspector/InspectorController.cpp:
  61480. 2010-08-16 Kevin Ollivier <kevino@theolliviers.com>
  61481. [wx] Build fix for non-Win ports on Windows.
  61482. * platform/graphics/WOFFFileFormat.cpp:
  61483. 2010-08-16 Adam Langley <agl@chromium.org>
  61484. Reviewed by Tony Chang.
  61485. [chromium] Improve spacing support for complex text on Linux
  61486. https://bugs.webkit.org/show_bug.cgi?id=39014
  61487. Previously, our complex text support ignored word-spacing,
  61488. justification and letter-spacing. This fixes the first two issues and
  61489. allows us to render Scribd's HTML5 documents much better.
  61490. Test: fast/text/atsui-spacing-features.html
  61491. * platform/graphics/chromium/FontLinux.cpp:
  61492. (WebCore::TextRunWalker::TextRunWalker):
  61493. (WebCore::TextRunWalker::setWordSpacingAdjustment):
  61494. (WebCore::TextRunWalker::setLetterSpacingAdjustment):
  61495. (WebCore::TextRunWalker::setPadding):
  61496. (WebCore::TextRunWalker::setGlyphXPositions):
  61497. (WebCore::TextRunWalker::isCodepointSpace):
  61498. (WebCore::Font::drawComplexText):
  61499. (WebCore::Font::floatWidthForComplexText):
  61500. (WebCore::Font::offsetForPositionForComplexText):
  61501. (WebCore::Font::selectionRectForComplexText):
  61502. 2010-08-16 Csaba Osztrogonác <ossy@webkit.org>
  61503. Reviewed by Kenneth Rohde Christiansen.
  61504. Fix warnings: unknown conversion type character 'l' in format
  61505. https://bugs.webkit.org/show_bug.cgi?id=43359
  61506. * loader/icon/IconDatabase.cpp:
  61507. (WebCore::IconDatabase::performURLImport): Replace %zu with %lu, because Windows doesn't understand z modifier.
  61508. (WebCore::IconDatabase::pruneUnretainedIcons): Use %I64i intsead of %lli on Windows.
  61509. * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
  61510. (WebCore::MediaPlayerPrivate::totalTimeChanged): Use %I64d intsead of %lld on Windows.
  61511. * platform/sql/SQLiteDatabase.cpp:
  61512. (WebCore::SQLiteDatabase::setMaximumSize): Use %I64i intsead of %lli on Windows.
  61513. * storage/DatabaseTracker.cpp:
  61514. (WebCore::DatabaseTracker::setQuota): Use %I64u intsead of %llu on Windows.
  61515. 2010-08-16 Csaba Osztrogonác <ossy@webkit.org>
  61516. Reviewed by Kenneth Rohde Christiansen.
  61517. Fix warnings: unknown conversion type character 'l' in format
  61518. https://bugs.webkit.org/show_bug.cgi?id=43359
  61519. * loader/FTPDirectoryParser.cpp: Use %I64u format specifier instead of %llu on Windows.
  61520. (WebCore::parseOneFTPLine):
  61521. 2010-08-16 Ariya Hidayat <ariya@sencha.com>
  61522. Reviewed by Kenneth Rohde Christiansen.
  61523. [Qt] Shadow blur for rectangle fill
  61524. https://bugs.webkit.org/show_bug.cgi?id=44025
  61525. The blur implementation follows the approximation of Gaussian blur
  61526. with three successive box blurs, working on the alpha channel only.
  61527. (see http://www.w3.org/TR/SVG/filters.html#feGaussianBlur).
  61528. * WebCore.pro: Refer to ContexShadow.* files.
  61529. * platform/graphics/qt/ContextShadow.cpp: Added.
  61530. (WebCore::ContextShadow::ContextShadow):
  61531. (WebCore::ContextShadow::clear):
  61532. (WebCore::blurHorizontal): Box blurs in horizontal direction, working
  61533. on QImage (in-place).
  61534. (WebCore::shadowBlur): Main blur function which just calls the
  61535. above blurHorizontal function twice, once with transposed image
  61536. (equivalent as it would have done vertical box blurs).
  61537. (WebCore::ContextShadow::drawShadowRect):
  61538. * platform/graphics/qt/ContextShadow.h: Added.
  61539. (WebCore::ContextShadow::):
  61540. * platform/graphics/qt/GraphicsContextQt.cpp:
  61541. (WebCore::GraphicsContextPlatformPrivate::hasShadow):
  61542. (WebCore::GraphicsContext::restorePlatformState):
  61543. (WebCore::GraphicsContext::fillRect): Use ContextShadow for the shadow.
  61544. (WebCore::GraphicsContext::setPlatformShadow):
  61545. 2010-08-16 Andras Becsi <abecsi@webkit.org>
  61546. Rubber-stamped by Gustavo Noronha Silva.
  61547. [GTK] Build fix for MathML code generation.
  61548. No new tests needed.
  61549. * GNUmakefile.am:
  61550. 2010-08-16 Sheriff Bot <webkit.review.bot@gmail.com>
  61551. Unreviewed, rolling out r65414.
  61552. http://trac.webkit.org/changeset/65414
  61553. https://bugs.webkit.org/show_bug.cgi?id=44055
  61554. GTL & QT tests failing. (Requested by pfeldman on #webkit).
  61555. * inspector/front-end/InjectedScript.js:
  61556. (injectedScriptConstructor):
  61557. (injectedScriptConstructor.):
  61558. 2010-08-16 Ariya Hidayat <ariya@sencha.com>
  61559. Reviewed by Antonio Gomes.
  61560. [Qt] Save and restore shadow state in GraphicsContextQt
  61561. https://bugs.webkit.org/show_bug.cgi?id=44031
  61562. This is needed after r65362.
  61563. Use a new class ContextShadowParameter to track and keep the shadow
  61564. state. We use this rather than using GraphicsContextState to allow
  61565. possible optimizations (right now only to determine the shadow type,
  61566. but in future it might cover things like cached scratch image,
  61567. persistent shader, etc).
  61568. * platform/graphics/qt/GraphicsContextQt.cpp:
  61569. (WebCore::ContextShadowParameter::):
  61570. (WebCore::ContextShadowParameter::ContextShadowParameter):
  61571. (WebCore::ContextShadowParameter::clear):
  61572. (WebCore::GraphicsContextPlatformPrivate::hasShadow):
  61573. (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
  61574. (WebCore::GraphicsContext::savePlatformState):
  61575. (WebCore::GraphicsContext::restorePlatformState):
  61576. (WebCore::GraphicsContext::drawRect):
  61577. (WebCore::GraphicsContext::drawLine):
  61578. (WebCore::GraphicsContext::strokeArc):
  61579. (WebCore::GraphicsContext::drawConvexPolygon):
  61580. (WebCore::GraphicsContext::fillPath):
  61581. (WebCore::GraphicsContext::strokePath):
  61582. (WebCore::GraphicsContext::fillRect):
  61583. (WebCore::GraphicsContext::fillRoundedRect):
  61584. (WebCore::GraphicsContext::setPlatformShadow):
  61585. (WebCore::GraphicsContext::clearPlatformShadow):
  61586. 2010-07-28 Marcus Bulach <bulach@chromium.org>
  61587. Reviewed by Adam Barth.
  61588. Implement IDBKeyPath parser.
  61589. https://bugs.webkit.org/show_bug.cgi?id=42976
  61590. IDBKeyPath is an internal class, exposed only for unit tests for now.
  61591. It'll allow indexed database implementation to traverse a given key path and obtain the corresponding properties
  61592. from a SerializedScriptValue.
  61593. * WebCore.gypi:
  61594. * storage/IDBKeyPath.cpp: Added.
  61595. (WebCore::IDBKeyPath::create):
  61596. (WebCore::IDBKeyPath::IDBKeyPath):
  61597. (WebCore::IDBKeyPath::~IDBKeyPath):
  61598. (WebCore::IDBKeyPath::hasNext):
  61599. (WebCore::IDBKeyPath::next):
  61600. (WebCore::IDBKeyPath::identifier):
  61601. (WebCore::IDBKeyPath::hasIndex):
  61602. (WebCore::IDBKeyPath::indexValue):
  61603. (WebCore::IDBKeyPath::parserError):
  61604. (WebCore::IDBKeyPath::parse):
  61605. (WebCore::IDBKeyPath::Lexer::lex):
  61606. (WebCore::isSafeIdentifierStartCharacter):
  61607. (WebCore::isSafeIdentifierCharacter):
  61608. (WebCore::IDBKeyPath::Lexer::lexIdentifier):
  61609. (WebCore::IDBKeyPath::Lexer::lexNumber):
  61610. * storage/IDBKeyPath.h: Added.
  61611. (WebCore::IDBKeyPath::Token::Token):
  61612. (WebCore::IDBKeyPath::):
  61613. (WebCore::IDBKeyPath::Lexer::Lexer):
  61614. (WebCore::IDBKeyPath::Lexer::next):
  61615. (WebCore::IDBKeyPath::Lexer::currentToken):
  61616. 2010-08-13 Steve Block <steveblock@google.com>
  61617. Reviewed by Alexey Proskuryakov.
  61618. Geolocation requests in progress when the frame is disconnected should invoke the error callback
  61619. https://bugs.webkit.org/show_bug.cgi?id=43974
  61620. If requests are ongoing when the Frame is disconnected, we abort them with a fatal error.
  61621. To do this, when Geolocation::disconnectFrame() is called we call cancelAllRequests() to
  61622. set a fatal error on all ongoing requests. Once the requests have made their error
  61623. callbacks, they are deleted. Note that we check at callback time that the script
  61624. execution context for the callback is still valid, so it's safe to attempt these
  61625. callbacks even after the Geolocation object's Frame has gone.
  61626. This requires a change to allow multiple calls to GeoNotifier::setFatalError().
  61627. For repeated calls, we do not replace the existing error. This ensures that when
  61628. permission has been denied and the frame is then disconnected, the error callback
  61629. reports the permission error, as required by the spec.
  61630. Tests: fast/dom/Geolocation/disconnected-frame.html
  61631. fast/dom/Geolocation/disconnected-frame-permission-denied.html
  61632. * page/Geolocation.cpp:
  61633. (WebCore::Geolocation::GeoNotifier::setFatalError):
  61634. (WebCore::Geolocation::disconnectFrame):
  61635. (WebCore::Geolocation::startRequest):
  61636. (WebCore::Geolocation::cancelAllRequests):
  61637. * page/Geolocation.h:
  61638. 2010-08-16 Pavel Feldman <pfeldman@chromium.org>
  61639. Reviewed by Joseph Pecoraro.
  61640. Web Inspector: upstream frontend-side WebSocket transport.
  61641. https://bugs.webkit.org/show_bug.cgi?id=43970
  61642. Chromium already has an alternate WebSocket-based communication channel with
  61643. the backend. Upstreaming it in this change. We will agree on the URI
  61644. of the remote service as the protocol matures.
  61645. * inspector/front-end/inspector.js:
  61646. (.WebInspector.socket.onmessage):
  61647. (.WebInspector.socket.onerror):
  61648. (.WebInspector.socket.onopen):
  61649. (WebInspector.loaded):
  61650. (WebInspector.doLoadedDone):
  61651. (WebInspector_syncDispatch):
  61652. 2010-08-16 Pavel Feldman <pfeldman@chromium.org>
  61653. Reviewed by Yury Semikhatsky.
  61654. Web Inspector: Make InjectedScript proto-based.
  61655. https://bugs.webkit.org/show_bug.cgi?id=44028
  61656. * inspector/front-end/InjectedScript.js:
  61657. (injectedScriptConstructor):
  61658. (injectedScriptConstructor.):
  61659. * inspector/front-end/inspector.js:
  61660. (WebInspector.loaded):
  61661. 2010-08-16 Pavel Feldman <pfeldman@chromium.org>
  61662. Reviewed by Joseph Pecoraro.
  61663. Web Inspector: [REGRESSION] console's clear command does not work.
  61664. https://bugs.webkit.org/show_bug.cgi?id=44027
  61665. Test: inspector/console-command-clear.html
  61666. * inspector/Inspector.idl:
  61667. * inspector/InspectorBackend.cpp:
  61668. * inspector/InspectorBackend.h:
  61669. * inspector/InspectorController.cpp:
  61670. (WebCore::InspectorController::clearConsoleMessages):
  61671. * inspector/front-end/ConsoleView.js:
  61672. (WebInspector.ConsoleView.prototype.requestClearMessages):
  61673. * inspector/front-end/inspector.js:
  61674. (WebInspector.consoleMessagesCleared):
  61675. 2010-08-16 Jeremy Orlow <jorlow@chromium.org>
  61676. Ugh, the #if ENABLE() was supposed to be added to Settings not GroupSettings.
  61677. * page/GroupSettings.cpp:
  61678. (WebCore::GroupSettings::GroupSettings):
  61679. (WebCore::GroupSettings::setLocalStorageQuotaBytes):
  61680. * page/GroupSettings.h:
  61681. * page/Settings.cpp:
  61682. (WebCore::Settings::Settings):
  61683. * page/Settings.h:
  61684. 2010-08-16 Jeremy Orlow <jorlow@chromium.org>
  61685. Last build fix?
  61686. * page/PageGroup.cpp:
  61687. (WebCore::PageGroup::PageGroup):
  61688. 2010-08-16 Jeremy Orlow <jorlow@chromium.org>
  61689. Ugh...another build fix.
  61690. * page/GroupSettings.cpp:
  61691. (WebCore::GroupSettings::GroupSettings):
  61692. * page/GroupSettings.h:
  61693. 2010-08-16 Jeremy Orlow <jorlow@chromium.org>
  61694. Build fix.
  61695. * GNUmakefile.am:
  61696. 2010-08-16 Jeremy Orlow <jorlow@chromium.org>
  61697. Build fix.
  61698. * page/PageGroup.cpp:
  61699. (WebCore::PageGroup::localStorage):
  61700. 2010-08-13 Jeremy Orlow <jorlow@chromium.org>
  61701. Some settings are linked to the PageGroup not the Page. Create a new class for those.
  61702. https://bugs.webkit.org/show_bug.cgi?id=43794
  61703. Since persistient storage is shared between pages, there's no way to modify
  61704. some settings related to it on a per page basis. As such, it's not technically
  61705. correct for these settings to be on the Page's settings. Create a new class
  61706. called GroupSettings, move group-wide local storage setting there (the other we
  61707. can't), and add a new setting for IndexedDB's path (which is prompting this change).
  61708. No behavior has changed, so no tests.
  61709. * Android.mk:
  61710. * CMakeLists.txt:
  61711. * GNUmakefile.am:
  61712. * WebCore.gypi:
  61713. * WebCore.pro:
  61714. * WebCore.vcproj/WebCore.vcproj:
  61715. * WebCore.xcodeproj/project.pbxproj:
  61716. * page/GroupSettings.cpp: Added.
  61717. (WebCore::GroupSettings::GroupSettings):
  61718. (WebCore::GroupSettings::setLocalStorageQuotaBytes):
  61719. (WebCore::GroupSettings::setLocalStorageDatabasePath):
  61720. (WebCore::GroupSettings::setIndexedDBDatabasePath):
  61721. * page/GroupSettings.h: Added.
  61722. (WebCore::GroupSettings::create):
  61723. (WebCore::GroupSettings::localStorageQuotaBytes):
  61724. (WebCore::GroupSettings::localStorageDatabasePath):
  61725. (WebCore::GroupSettings::indexedDBDatabasePath):
  61726. * page/PageGroup.cpp:
  61727. (WebCore::PageGroup::PageGroup):
  61728. (WebCore::PageGroup::localStorage):
  61729. * page/PageGroup.h:
  61730. (WebCore::PageGroup::groupSettings):
  61731. * page/Settings.cpp:
  61732. (WebCore::Settings::Settings):
  61733. (WebCore::Settings::setSessionStorageQuota):
  61734. * page/Settings.h:
  61735. 2010-08-16 Adam Barth <abarth@webkit.org>
  61736. Reviewed by Alexey Proskuryakov.
  61737. HTML5 fragment parsing doesn't load iframes
  61738. https://bugs.webkit.org/show_bug.cgi?id=44038
  61739. Previously, this code assumed that every source iframe was actually
  61740. attached to a render tree. It tried to "keep the iframe alive" as it
  61741. moved documents. However, if the iframe wasn't attached to begin with,
  61742. it was never "alive," so trying to keep a dead iframe alive lead to a
  61743. ... zombie iframe.
  61744. Test: fast/frames/adopt-from-created-document.html
  61745. * dom/Document.cpp:
  61746. (WebCore::Document::adoptNode):
  61747. 2010-08-13 MORITA Hajime <morrita@google.com>
  61748. Reviewed by Tony Chang.
  61749. https://bugs.webkit.org/show_bug.cgi?id=43778
  61750. Dropping should fire textInput event
  61751. This change:
  61752. - added TextEvent::m_isDrop to distinguish drop-initiated events.
  61753. - added to dispatch TextEvent from DragController before making a side effect
  61754. and cancel the side effect if the event prevents default
  61755. Tests: editing/pasteboard/drop-text-events-sideeffect.html
  61756. editing/pasteboard/drop-text-events.html
  61757. * dom/TextEvent.cpp:
  61758. (WebCore::TextEvent::createForDrop): Added.
  61759. (WebCore::TextEvent::TextEvent):
  61760. * dom/TextEvent.h:
  61761. (WebCore::TextEvent::isDrop): Added.
  61762. * editing/Editor.cpp:
  61763. (WebCore::Editor::handleTextEvent):
  61764. (WebCore::Editor::findEventTargetFrom): Extracted from findEventTargetFromSelection().
  61765. (WebCore::Editor::findEventTargetFromSelection):
  61766. * editing/Editor.h:
  61767. * page/DragController.cpp:
  61768. (WebCore::DragController::dispatchTextInputEventFor): Added.
  61769. (WebCore::DragController::concludeEditDrag): Added an event dispatch path.
  61770. * page/DragController.h:
  61771. 2010-08-15 Ariya Hidayat <ariya@sencha.com>
  61772. Unreviewed, rolling out r65393.
  61773. http://trac.webkit.org/changeset/65393
  61774. https://bugs.webkit.org/show_bug.cgi?id=44031
  61775. Breaks some canvas tests.
  61776. * platform/graphics/qt/GraphicsContextQt.cpp:
  61777. (WebCore::GraphicsContextPlatformPrivate::):
  61778. (WebCore::GraphicsContextPlatformPrivate::hasShadow):
  61779. (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
  61780. (WebCore::GraphicsContext::savePlatformState):
  61781. (WebCore::GraphicsContext::restorePlatformState):
  61782. (WebCore::GraphicsContext::strokeArc):
  61783. (WebCore::GraphicsContext::drawConvexPolygon):
  61784. (WebCore::GraphicsContext::fillPath):
  61785. (WebCore::GraphicsContext::strokePath):
  61786. (WebCore::GraphicsContext::fillRect):
  61787. (WebCore::GraphicsContext::fillRoundedRect):
  61788. (WebCore::GraphicsContext::setPlatformShadow):
  61789. (WebCore::GraphicsContext::clearPlatformShadow):
  61790. 2010-08-15 Ariya Hidayat <ariya@sencha.com>
  61791. Reviewed by Antonio Gomes.
  61792. [Qt] Save and restore shadow state in GraphicsContextQt
  61793. https://bugs.webkit.org/show_bug.cgi?id=44031
  61794. This is needed after r65362.
  61795. Use a new class ContextShadowParameter to track and keep the shadow
  61796. state. We use this rather than using GraphicsContextState to allow
  61797. possible optimizations (right now only to determine the shadow type,
  61798. but in future it might cover things like cached scratch image,
  61799. persistent shader, etc).
  61800. * platform/graphics/qt/GraphicsContextQt.cpp:
  61801. (WebCore::ContextShadowParameter::):
  61802. (WebCore::ContextShadowParameter::ContextShadowParameter):
  61803. (WebCore::ContextShadowParameter::clear):
  61804. (WebCore::GraphicsContextPlatformPrivate::hasShadow):
  61805. (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
  61806. (WebCore::GraphicsContext::savePlatformState):
  61807. (WebCore::GraphicsContext::restorePlatformState):
  61808. (WebCore::GraphicsContext::drawRect):
  61809. (WebCore::GraphicsContext::drawLine):
  61810. (WebCore::GraphicsContext::strokeArc):
  61811. (WebCore::GraphicsContext::drawConvexPolygon):
  61812. (WebCore::GraphicsContext::fillPath):
  61813. (WebCore::GraphicsContext::strokePath):
  61814. (WebCore::GraphicsContext::fillRect):
  61815. (WebCore::GraphicsContext::fillRoundedRect):
  61816. (WebCore::GraphicsContext::setPlatformShadow):
  61817. (WebCore::GraphicsContext::clearPlatformShadow):
  61818. 2010-08-15 Ariya Hidayat <ariya@sencha.com>
  61819. Reviewed by Antonio Gomes.
  61820. [Qt] Border should not cast shadows
  61821. https://bugs.webkit.org/show_bug.cgi?id=44015
  61822. Shadows should be not casted except for brush fill (which is not what
  61823. drawLine and drawRect are supposed to do).
  61824. * platform/graphics/qt/GraphicsContextQt.cpp:
  61825. (WebCore::GraphicsContext::drawRect): Remove shadow painting,
  61826. (WebCore::GraphicsContext::drawLine): ditto.
  61827. 2010-08-15 Ryuan Choi <ryuan.choi@samsung.com>
  61828. Reviewed by Antonio Gomes.
  61829. [EFL] Build error on r65378
  61830. https://bugs.webkit.org/show_bug.cgi?id=44019
  61831. Change build script for HTMLEntityNames.json instead of HTMLEntityNames.gperf
  61832. * CMakeLists.txt:
  61833. 2010-08-15 Kevin Ollivier <kevino@theolliviers.com>
  61834. [wx] Build fix, add missing header.
  61835. * platform/graphics/WOFFFileFormat.cpp:
  61836. 2010-08-15 Kevin Ollivier <kevino@theolliviers.com>
  61837. [wx] Build fix, don't build PluginDataNone.cpp even on GTK as PluginDataWx.cpp compiles.
  61838. * wscript:
  61839. 2010-08-15 Adam Barth <abarth@webkit.org>
  61840. Reviewed by Eric Seidel.
  61841. document.write() doesn't flush plain text
  61842. https://bugs.webkit.org/show_bug.cgi?id=8961
  61843. Originally I thought we should buffer the character tokens until we've
  61844. reached the end of the input stream, but that's not how the spec
  61845. handles things (it emits the character tokens one-by-one).
  61846. Tests: fast/tokenizer/flush-characters-in-document-write-evil.html
  61847. fast/tokenizer/flush-characters-in-document-write.html
  61848. * html/HTMLTokenizer.cpp:
  61849. (WebCore::HTMLTokenizer::emitEndOfFile):
  61850. (WebCore::HTMLTokenizer::nextToken):
  61851. (WebCore::HTMLTokenizer::haveBufferedCharacterToken):
  61852. - Renamed this function now that it's simplier.
  61853. * html/HTMLTokenizer.h:
  61854. 2010-08-15 Adam Barth <abarth@webkit.org>
  61855. Reviewed by Eric Seidel.
  61856. Don't try to replace a non-existent document after executing JavaScript URLs
  61857. https://bugs.webkit.org/show_bug.cgi?id=44024
  61858. Synchronous JavaScript execution is evil. Previously, the frame was
  61859. deleted after executing the JavaScript URL, so we'd get confused when
  61860. we tried to replace its document.
  61861. Test: fast/frames/javascript-url-for-deleted-frame.html
  61862. * bindings/ScriptControllerBase.cpp:
  61863. (WebCore::ScriptController::executeIfJavaScriptURL):
  61864. 2010-08-14 Sheriff Bot <webkit.review.bot@gmail.com>
  61865. Unreviewed, rolling out r65374.
  61866. http://trac.webkit.org/changeset/65374
  61867. https://bugs.webkit.org/show_bug.cgi?id=44018
  61868. broke a myriad of svg tests (Requested by kling on #webkit).
  61869. * platform/graphics/qt/PathQt.cpp:
  61870. (WebCore::Path::strokeBoundingRect):
  61871. 2010-08-14 Eric Seidel <eric@webkit.org>
  61872. Reviewed by Adam Barth.
  61873. XSLTProcessor.transformToFragment should not pass contextElement to html/xml document parsers
  61874. https://bugs.webkit.org/show_bug.cgi?id=44017
  61875. This fixes two tests which otherwise would fail when the
  61876. HTML5 TreeBuilder is enabled for fragment parsing.
  61877. This revealed a bug in HTMLTreeBuilder() which I fixed as well.
  61878. * html/HTMLTreeBuilder.cpp:
  61879. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  61880. * xml/XSLTProcessor.cpp:
  61881. (WebCore::createFragmentFromSource):
  61882. 2010-08-14 Andreas Kling <andreas.kling@nokia.com>
  61883. Reviewed by Ariya Hidayat.
  61884. [Qt] Path: Fast approximation of stroke bounding rects
  61885. https://bugs.webkit.org/show_bug.cgi?id=44014
  61886. * platform/graphics/qt/PathQt.cpp:
  61887. (WebCore::Path::strokeBoundingRect): Use QPainterPath::controlPointRect()
  61888. to calculate a slightly larger bounding rect in a fraction of the time.
  61889. 2010-08-14 Eric Seidel <eric@webkit.org>
  61890. Reviewed by Adam Barth.
  61891. Move innerHTML off of Range::createContextualFragment
  61892. https://bugs.webkit.org/show_bug.cgi?id=44011
  61893. This makes all the editing tests stop failing under the
  61894. HTML5 TreeBuilder.
  61895. In a previous patch Adam disabled some of the (wrong) code
  61896. in createContextualFragment when in html5 treebuilder mode.
  61897. The problem is that the editing code depends on
  61898. createContextualFragment (as well as the Range DOM API),
  61899. so we have to leave this code in until we can figure
  61900. out if it's right or wrong behavior for the Range API.
  61901. This patch moves innerHTML/outerHTML off of using
  61902. createContextualFragment and instead calls
  61903. DocumentFragment::parseHTML directly (which is much simpler).
  61904. I expect Adam and I will end up turning on the HTML5 TreeBuilder
  61905. in the next couple days, and most of the if branches I added
  61906. here will go away for good.
  61907. I renamed Element::createContextualFragment to
  61908. deprecatedCreateContextualFragment, to indicate that it's a
  61909. dead API. The editing code should move off of it and consider
  61910. using DocumentFragment::parseHTML instead.
  61911. * dom/Element.cpp:
  61912. (WebCore::Element::deprecatedCreateContextualFragment):
  61913. * dom/Element.h:
  61914. * dom/Range.cpp:
  61915. (WebCore::Range::createContextualFragment):
  61916. * editing/markup.cpp:
  61917. (WebCore::createFragmentFromMarkup):
  61918. * html/HTMLElement.cpp:
  61919. (WebCore::useLegacyTreeBuilder):
  61920. (WebCore::HTMLElement::deprecatedCreateContextualFragment):
  61921. (WebCore::HTMLElement::setInnerHTML):
  61922. (WebCore::HTMLElement::setOuterHTML):
  61923. * html/HTMLElement.h:
  61924. 2010-08-14 Tasuku Suzuki <tasuku.suzuki@nokia.com>
  61925. Reviewed by Antonio Gomes.
  61926. [Qt] Fix compilation with QT_NO_LINEEDIT
  61927. https://bugs.webkit.org/show_bug.cgi?id=38324
  61928. * bridge/qt/qt_runtime.cpp:
  61929. (JSC::Bindings::convertValueToQVariant):
  61930. (JSC::Bindings::convertQVariantToValue):
  61931. 2010-08-14 Rob Buis <rwlbuis@gmail.com>
  61932. Reviewed by Dirk Schulze.
  61933. IE SVG empty path test fails
  61934. https://bugs.webkit.org/show_bug.cgi?id=44008
  61935. Change createLine to allow creating zero-length lines. This makes it possible
  61936. to have markers and line-caps applied to zero-length lines.
  61937. Test: svg/custom/marker-empty-path.svg
  61938. * platform/graphics/Path.cpp:
  61939. (WebCore::Path::createLine):
  61940. 2010-08-14 Patrick Gansterer <paroga@paroga.com>
  61941. Reviewed by Kenneth Rohde Christiansen.
  61942. [CMake] Move SQL files into a IF (ENABLE_DATABASE) section
  61943. https://bugs.webkit.org/show_bug.cgi?id=43979
  61944. * CMakeLists.txt:
  61945. 2010-08-14 Matthew Delaney <mdelaney@apple.com>
  61946. Reviewed by Kenneth Rohde Christiansen.
  61947. Canvas is not reset when setting canvas.width
  61948. https://bugs.webkit.org/show_bug.cgi?id=43341
  61949. * html/HTMLCanvasElement.cpp:
  61950. (WebCore::HTMLCanvasElement::reset): Moved the call to
  61951. hasCreatedImageBuffer up *before* the call to setSurface since setSurface
  61952. sets hasCreatedImageBuffer to false every time.
  61953. 2010-08-14 Patrick Gansterer <paroga@paroga.com>
  61954. Reviewed by Kenneth Rohde Christiansen.
  61955. [CMake] Set target properties only if available
  61956. https://bugs.webkit.org/show_bug.cgi?id=43978
  61957. * CMakeLists.txt:
  61958. 2010-08-14 Dirk Schulze <krit@webkit.org>
  61959. Unreviewed sort of Xcode project file.
  61960. * WebCore.xcodeproj/project.pbxproj:
  61961. 2010-08-14 Ariya Hidayat <ariya@sencha.com>
  61962. Reviewed by Simon Hausmann and Kenneth Rohde Christiansen.
  61963. [Qt] Refactor shadow state handling in GraphicsContextQt
  61964. https://bugs.webkit.org/show_bug.cgi?id=44006
  61965. * platform/graphics/qt/GraphicsContextQt.cpp:
  61966. (WebCore::GraphicsContextPlatformPrivate::): Added shadow states as
  61967. member variables.
  61968. (WebCore::GraphicsContextPlatformPrivate::hasShadow): Convenient
  61969. function to check whether there is shadow or not.
  61970. (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
  61971. (WebCore::GraphicsContext::drawRect): Use shadow states instead of
  61972. calling getShadow.
  61973. (WebCore::GraphicsContext::drawLine): ditto.
  61974. (WebCore::GraphicsContext::strokeArc): ditto.
  61975. (WebCore::GraphicsContext::drawConvexPolygon): ditto.
  61976. (WebCore::GraphicsContext::fillPath): ditto.
  61977. (WebCore::GraphicsContext::strokePath): ditto.
  61978. (WebCore::GraphicsContext::fillRect): Removes the use of helper function
  61979. drawBorderlessRectShadow as the code already becomes a lot simpler.
  61980. (WebCore::GraphicsContext::fillRoundedRect): Removes the use of helper
  61981. function drawFilledShadowPath as the code already becomes a lot simpler.
  61982. (WebCore::GraphicsContext::setPlatformShadow): Store shadow states
  61983. and find out the shadow type (complexity) for future use.
  61984. (WebCore::GraphicsContext::clearPlatformShadow): Reset shadow states.
  61985. 2010-08-13 Adam Barth <abarth@webkit.org>
  61986. Reviewed by Eric Seidel.
  61987. Rename some concepts in HTML entity search to be more self-documenting
  61988. https://bugs.webkit.org/show_bug.cgi?id=44004
  61989. Start and end are now first and last, which lets us use some better
  61990. names for the statics in HTMLEntityTable.
  61991. * html/HTMLEntityParser.cpp:
  61992. (WebCore::consumeHTMLEntity):
  61993. * html/HTMLEntitySearch.cpp:
  61994. (WebCore::HTMLEntitySearch::HTMLEntitySearch):
  61995. (WebCore::HTMLEntitySearch::findFirst):
  61996. (WebCore::HTMLEntitySearch::findLast):
  61997. (WebCore::HTMLEntitySearch::advance):
  61998. * html/HTMLEntitySearch.h:
  61999. (WebCore::HTMLEntitySearch::isEntityPrefix):
  62000. (WebCore::HTMLEntitySearch::mostRecentMatch):
  62001. (WebCore::HTMLEntitySearch::fail):
  62002. * html/HTMLEntityTable.h:
  62003. 2010-08-13 Adam Barth <abarth@webkit.org>
  62004. Fix ASSERT in XML entity parsing. You can't advance the entity search
  62005. if you've already discovered that your string is not an entity.
  62006. * html/HTMLEntityParser.cpp:
  62007. (WebCore::decodeNamedEntity):
  62008. 2010-08-13 Eric Seidel <eric@webkit.org>
  62009. Unreviewed. Attempt at fixing Chromium build.
  62010. Add support for MathML entities
  62011. https://bugs.webkit.org/show_bug.cgi?id=43949
  62012. * WebCore.gyp/WebCore.gyp:
  62013. - I have no clue if this is right or not.
  62014. 2010-08-13 Eric Seidel <eric@webkit.org>
  62015. Unreviewed. Attempted build fix for Windows.
  62016. Add support for MathML entities
  62017. https://bugs.webkit.org/show_bug.cgi?id=43949
  62018. * DerivedSources.cpp:
  62019. - Add HTMLEntityTable.cpp
  62020. 2010-08-09 Adam Barth <abarth@webkit.org>
  62021. Reviewed by Eric Seidel.
  62022. Add support for MathML entities
  62023. https://bugs.webkit.org/show_bug.cgi?id=43949
  62024. Implementing the HTML5 entity parsing algorithm require refactoring how
  62025. we search for entity names. Instead of using a perfect hash, we now
  62026. use a sorted list. As we advance through the input, we walk down a
  62027. binary search of the table looking for an entity.
  62028. Using this data structure lets us keep track of whether the current
  62029. string is a prefix of an existing entity, which we need for the
  62030. algorithm. In a future patch, I plan to add some indices to the
  62031. table, which should let us narrow down the range of interesting entries
  62032. more quickly.
  62033. The one nasty piece of the algorithm is if we walk too far down the
  62034. input and we need to back up to a previous match. In this patch, we
  62035. accomplish this by rewinding the input and consuming a known number of
  62036. characters to resync the source.
  62037. * WebCore.xcodeproj/project.pbxproj:
  62038. * html/HTMLEntityParser.cpp:
  62039. (WebCore::consumeHTMLEntity):
  62040. * html/HTMLEntitySearch.cpp: Added.
  62041. (WebCore::):
  62042. (WebCore::HTMLEntitySearch::HTMLEntitySearch):
  62043. (WebCore::HTMLEntitySearch::compare):
  62044. (WebCore::HTMLEntitySearch::findStart):
  62045. (WebCore::HTMLEntitySearch::findEnd):
  62046. (WebCore::HTMLEntitySearch::advance):
  62047. * html/HTMLEntitySearch.h: Added.
  62048. (WebCore::HTMLEntitySearch::isEntityPrefix):
  62049. (WebCore::HTMLEntitySearch::currentValue):
  62050. (WebCore::HTMLEntitySearch::lastMatch):
  62051. (WebCore::HTMLEntitySearch::):
  62052. (WebCore::HTMLEntitySearch::fail):
  62053. * html/HTMLEntityTable.h: Added.
  62054. (WebCore::HTMLEntityTableEntry::lastCharacter):
  62055. 2010-08-13 Tony Gentilcore <tonyg@chromium.org>
  62056. Reviewed by Eric Seidel.
  62057. Refactor HTMLScriptRunner to allow deferred scripts to share code
  62058. https://bugs.webkit.org/show_bug.cgi?id=43736
  62059. No new tests because no functional change
  62060. * html/HTMLScriptRunner.cpp:
  62061. (WebCore::HTMLScriptRunner::sourceFromPendingScript): Make const to enforce the idea that it doesn't change m_parsingBlockingScript.
  62062. (WebCore::HTMLScriptRunner::executeParsingBlockingScript): Rename to make it clear this deals with the parsing blocking script and refactor to use executePendingScriptAndDispatchEvent.
  62063. (WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent): Factored out of executePendingScript, this can be used for executing any external script.
  62064. (WebCore::HTMLScriptRunner::executeScript): This can be used for executing any inline or external script. ASSERTs moved to the two calling points.
  62065. (WebCore::HTMLScriptRunner::executeParsingBlockingScripts): Moved method.
  62066. (WebCore::HTMLScriptRunner::requestParsingBlockingScript): Factored out requestPendingScript.
  62067. (WebCore::HTMLScriptRunner::requestPendingScript): Factored out from reqeustParsingBlockingScript.
  62068. (WebCore::HTMLScriptRunner::runScript):
  62069. * html/HTMLScriptRunner.h:
  62070. 2010-08-13 Gavin Barraclough <barraclough@apple.com>
  62071. Windows build fix.
  62072. * WebCore.xcodeproj/project.pbxproj:
  62073. * platform/win/SharedBufferWin.cpp:
  62074. 2010-08-13 Gavin Barraclough <barraclough@apple.com>
  62075. Rubber stamped by Sam Weinig.
  62076. Switch String::/UString::ascii() to return a CString.
  62077. * WebCore.xcodeproj/project.pbxproj:
  62078. * bridge/c/c_class.cpp:
  62079. (JSC::Bindings::CClass::methodsNamed):
  62080. (JSC::Bindings::CClass::fieldNamed):
  62081. * bridge/jni/jsc/JNIBridgeJSC.cpp:
  62082. (JavaField::valueFromInstance):
  62083. (JavaField::setValueToInstance):
  62084. * bridge/jni/jsc/JavaInstanceJSC.cpp:
  62085. (JavaInstance::invokeMethod):
  62086. * bridge/objc/objc_class.mm:
  62087. (JSC::Bindings::ObjcClass::methodsNamed):
  62088. (JSC::Bindings::ObjcClass::fieldNamed):
  62089. * bridge/objc/objc_instance.mm:
  62090. (ObjcInstance::setValueOfUndefinedField):
  62091. (ObjcInstance::getValueOfUndefinedField):
  62092. * loader/icon/IconRecord.cpp:
  62093. * platform/sql/SQLiteDatabase.cpp:
  62094. * platform/sql/SQLiteStatement.cpp:
  62095. * storage/SQLStatement.cpp:
  62096. 2010-08-13 Mihai Parparita <mihaip@chromium.org>
  62097. Reviewed by Dimitri Glazkov.
  62098. Session history should skip over JS redirects
  62099. https://bugs.webkit.org/show_bug.cgi?id=42861
  62100. Lock the back/forward list for location changes and form submits that
  62101. happen before the onload event fires that are not the result of user
  62102. gestures.
  62103. Made form submission (at the ScheduledFormSubmission level) more similar
  62104. to ScheduledURLNavigation by having it call clientRedirected too, fixing
  62105. a long-standing FIXME.
  62106. Test: fast/history/gesture-before-onload-location-href.html,
  62107. fast/history/gesture-before-onload-form-submit.html and updated
  62108. expectations for http/tests/history tests that used to fail.
  62109. * loader/FormSubmission.cpp:
  62110. (WebCore::FormSubmission::requestURL):
  62111. (WebCore::FormSubmission::populateFrameLoadRequest):
  62112. * loader/FormSubmission.h:
  62113. * loader/RedirectScheduler.cpp:
  62114. (WebCore::ScheduledFormSubmission::ScheduledFormSubmission):
  62115. (WebCore::ScheduledFormSubmission::fire):
  62116. (WebCore::ScheduledFormSubmission::didStartTimer):
  62117. (WebCore::ScheduledFormSubmission::didStopTimer):
  62118. (WebCore::RedirectScheduler::scheduleRedirect):
  62119. (WebCore::RedirectScheduler::mustLockBackForwardList):
  62120. (WebCore::RedirectScheduler::scheduleLocationChange):
  62121. (WebCore::RedirectScheduler::scheduleFormSubmission):
  62122. * loader/RedirectScheduler.h:
  62123. 2010-08-13 Leandro Pereira <leandro@profusion.mobi>
  62124. [EFL] Unreviewed build fix.
  62125. These changes were supposed to be landed on r65319, but due to some
  62126. svn-apply/commit-queue bug it wasn't fully applied. A bug was filed
  62127. by Patrick Gansterer (author of the changes in this commit):
  62128. https://bugs.webkit.org/show_bug.cgi?id=43981
  62129. * CMakeLists.txt: Update calls to GENERATE_GPERF and
  62130. GENERATE_GRAMMAR macros.
  62131. 2010-08-13 Chris Fleizach <cfleizach@apple.com>
  62132. AX: isNativeCheckbox does not work as advertised
  62133. https://bugs.webkit.org/show_bug.cgi?id=43872
  62134. Re-adding this patch after it was erroneously rolled out.
  62135. Test: platform/mac/accessibility/native-vs-nonnative-checkboxes.html
  62136. * accessibility/AccessibilityRenderObject.cpp:
  62137. (WebCore::AccessibilityRenderObject::isInputImage):
  62138. (WebCore::AccessibilityRenderObject::isNativeCheckboxOrRadio):
  62139. * dom/InputElement.h:
  62140. * html/HTMLInputElement.h:
  62141. (WebCore::HTMLInputElement::isCheckbox):
  62142. 2010-08-13 Sheriff Bot <webkit.review.bot@gmail.com>
  62143. Unreviewed, rolling out r65331.
  62144. http://trac.webkit.org/changeset/65331
  62145. https://bugs.webkit.org/show_bug.cgi?id=43980
  62146. This patch breaks some shadow tests on Qt Linux release
  62147. (Requested by ariya on #webkit).
  62148. * platform/graphics/qt/GraphicsContextQt.cpp:
  62149. (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
  62150. (WebCore::GraphicsContext::drawRect):
  62151. (WebCore::GraphicsContext::drawLine):
  62152. (WebCore::GraphicsContext::strokeArc):
  62153. (WebCore::GraphicsContext::drawConvexPolygon):
  62154. (WebCore::drawFilledShadowPath):
  62155. (WebCore::GraphicsContext::fillPath):
  62156. (WebCore::GraphicsContext::strokePath):
  62157. (WebCore::drawBorderlessRectShadow):
  62158. (WebCore::GraphicsContext::fillRect):
  62159. (WebCore::GraphicsContext::fillRoundedRect):
  62160. (WebCore::GraphicsContext::setPlatformShadow):
  62161. (WebCore::GraphicsContext::clearPlatformShadow):
  62162. 2010-08-13 Kinuko Yasuda <kinuko@chromium.org>
  62163. Reviewed by David Levin.
  62164. Update run-bindings-tests expectations
  62165. https://bugs.webkit.org/show_bug.cgi?id=43944
  62166. The results have become out of sync after changeset 64552 and 65269.
  62167. Test: WebKitTools/Scripts/run-bindings-tests
  62168. * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
  62169. (webkit_dom_test_callback_callback_with_class1param):
  62170. (webkit_dom_test_callback_callback_with_class2param):
  62171. (webkit_dom_test_callback_callback_with_non_bool_return_type):
  62172. * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
  62173. * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  62174. (webkit_dom_test_obj_void_method_with_args):
  62175. (webkit_dom_test_obj_int_method_with_args):
  62176. (webkit_dom_test_obj_obj_method):
  62177. (webkit_dom_test_obj_obj_method_with_args):
  62178. (webkit_dom_test_obj_method_that_requires_all_args):
  62179. (webkit_dom_test_obj_method_that_requires_all_args_and_throws):
  62180. (webkit_dom_test_obj_serialized_value):
  62181. (webkit_dom_test_obj_idb_key):
  62182. (webkit_dom_test_obj_with_dynamic_frame_and_user_gesture):
  62183. (webkit_dom_test_obj_with_dynamic_frame_and_user_gesture_asad):
  62184. (webkit_dom_test_obj_with_script_state_obj):
  62185. (webkit_dom_test_obj_with_script_state_obj_exception):
  62186. (webkit_dom_test_obj_get_read_only_string_attr):
  62187. (webkit_dom_test_obj_get_read_only_test_obj_attr):
  62188. (webkit_dom_test_obj_get_string_attr):
  62189. (webkit_dom_test_obj_set_string_attr):
  62190. (webkit_dom_test_obj_get_test_obj_attr):
  62191. (webkit_dom_test_obj_set_test_obj_attr):
  62192. (webkit_dom_test_obj_get_xml_obj_attr):
  62193. (webkit_dom_test_obj_set_xml_obj_attr):
  62194. (webkit_dom_test_obj_get_reflected_string_attr):
  62195. (webkit_dom_test_obj_set_reflected_string_attr):
  62196. (webkit_dom_test_obj_get_reflected_url_attr):
  62197. (webkit_dom_test_obj_set_reflected_url_attr):
  62198. (webkit_dom_test_obj_get_reflected_non_empty_url_attr):
  62199. (webkit_dom_test_obj_set_reflected_non_empty_url_attr):
  62200. (webkit_dom_test_obj_get_reflected_custom_url_attr):
  62201. (webkit_dom_test_obj_set_reflected_custom_url_attr):
  62202. (webkit_dom_test_obj_get_reflected_custom_non_empty_url_attr):
  62203. (webkit_dom_test_obj_set_reflected_custom_non_empty_url_attr):
  62204. (webkit_dom_test_obj_get_string_attr_with_getter_exception):
  62205. (webkit_dom_test_obj_set_string_attr_with_getter_exception):
  62206. (webkit_dom_test_obj_get_string_attr_with_setter_exception):
  62207. (webkit_dom_test_obj_set_string_attr_with_setter_exception):
  62208. (webkit_dom_test_obj_get_script_string_attr):
  62209. (webkit_dom_test_obj_get_hash):
  62210. (webkit_dom_test_obj_class_init):
  62211. * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  62212. * bindings/scripts/test/JS/JSTestObj.cpp:
  62213. (WebCore::jsTestObjPrototypeFunctionOverloadedMethod):
  62214. 2010-08-13 Ariya Hidayat <ariya@sencha.com>
  62215. Reviewed by Simon Hausmann.
  62216. [Qt] Canvas and CSS: blur option in shadow not working
  62217. https://bugs.webkit.org/show_bug.cgi?id=34479
  62218. Patch 1: Refactor shadow states handling.
  62219. * platform/graphics/qt/GraphicsContextQt.cpp:
  62220. (WebCore::GraphicsContextPlatformPrivate::): Added shadow states as
  62221. member variables.
  62222. (WebCore::GraphicsContextPlatformPrivate::hasShadow): Convenient
  62223. function to check whether there is shadow or not.
  62224. (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
  62225. (WebCore::GraphicsContext::drawRect): Use shadow states instead of
  62226. calling getShadow.
  62227. (WebCore::GraphicsContext::drawLine): ditto.
  62228. (WebCore::GraphicsContext::strokeArc): ditto.
  62229. (WebCore::GraphicsContext::drawConvexPolygon): ditto.
  62230. (WebCore::GraphicsContext::fillPath): ditto.
  62231. (WebCore::GraphicsContext::strokePath): ditto.
  62232. (WebCore::GraphicsContext::fillRect): Removes the use of helper function
  62233. drawBorderlessRectShadow as the code already becomes a lot simpler.
  62234. (WebCore::GraphicsContext::fillRoundedRect): Removes the use of helper
  62235. function drawFilledShadowPath as the code already becomes a lot simpler.
  62236. (WebCore::GraphicsContext::setPlatformShadow): Store shadow states
  62237. and find out the shadow type (complexity) for future use.
  62238. (WebCore::GraphicsContext::clearPlatformShadow): Reset shadow states.
  62239. 2010-08-11 Zhenyao Mo <zmo@google.com>
  62240. Reviewed by Dimitri Glazkov.
  62241. Regression in linking of programs
  62242. https://bugs.webkit.org/show_bug.cgi?id=43820
  62243. Shaders and programs shouldn't be deleted until their attachments are removed, therefore, we need to track the attach/detach/useProgram.
  62244. * html/canvas/WebGLObject.cpp: Track the object attachment count and whether it should really be deleted.
  62245. (WebCore::WebGLObject::WebGLObject):
  62246. (WebCore::WebGLObject::setObject):
  62247. (WebCore::WebGLObject::deleteObject):
  62248. * html/canvas/WebGLObject.h: Track the object attachment count and whether it should really be deleted.
  62249. (WebCore::WebGLObject::onAttached):
  62250. (WebCore::WebGLObject::onDetached):
  62251. (WebCore::WebGLObject::getAttachmentCount):
  62252. * html/canvas/WebGLProgram.cpp: Track the attached shaders.
  62253. (WebCore::WebGLProgram::WebGLProgram):
  62254. (WebCore::WebGLProgram::deleteObjectImpl):
  62255. (WebCore::WebGLProgram::getAttachedShader):
  62256. (WebCore::WebGLProgram::attachShader):
  62257. (WebCore::WebGLProgram::detachShader):
  62258. * html/canvas/WebGLProgram.h: Track the attached shaders.
  62259. * html/canvas/WebGLRenderingContext.cpp:
  62260. (WebCore::WebGLRenderingContext::attachShader): Track the attachment of a shader to a program.
  62261. (WebCore::WebGLRenderingContext::deleteProgram): Detach shaders.
  62262. (WebCore::WebGLRenderingContext::detachShader): Track the attachment of a shader to a program.
  62263. (WebCore::WebGLRenderingContext::validateWebGLObject): Also check if object == 0.
  62264. (WebCore::WebGLRenderingContext::linkProgram): Using the cached attached shaders instead of query from driver.
  62265. (WebCore::WebGLRenderingContext::useProgram): Track the attachment of a program to the current rendering pipeline.
  62266. 2010-08-13 Steve Block <steveblock@google.com>
  62267. Reviewed by Alexey Proskuryakov.
  62268. Geolocation activity started after frame has been disconnected can cause crash
  62269. https://bugs.webkit.org/show_bug.cgi?id=39879
  62270. New requests started after the Frame has been disconnected are ignored. We do
  62271. not invoke the error callback as this would allow buggy or malicious pages to
  62272. hose the CPU. Such a page could hold a reference to a Geolocation object from
  62273. a since closed Page and register new requests from the error callback to
  62274. create an infinite loop.
  62275. Tests: fast/dom/Geolocation/disconnected-frame-already.html
  62276. * page/Geolocation.cpp:
  62277. 2010-08-13 Satish Sampath <satish@chromium.org>
  62278. Reviewed by Jeremy Orlow.
  62279. Support for multiple speech enabled elements in same page.
  62280. https://bugs.webkit.org/show_bug.cgi?id=43922
  62281. * page/SpeechInput.cpp: Generates request ids as necessary when each speech enabled input element gets
  62282. created/destroyed and multiplexes the listener callbacks to the appropriate input element based on the request id.
  62283. (WebCore::SpeechInput::SpeechInput):
  62284. (WebCore::SpeechInput::~SpeechInput):
  62285. (WebCore::SpeechInput::registerListener):
  62286. (WebCore::SpeechInput::unregisterListener):
  62287. (WebCore::SpeechInput::didCompleteRecording):
  62288. (WebCore::SpeechInput::didCompleteRecognition):
  62289. (WebCore::SpeechInput::setRecognitionResult):
  62290. (WebCore::SpeechInput::startRecognition):
  62291. (WebCore::SpeechInput::stopRecording):
  62292. (WebCore::SpeechInput::cancelRecognition):
  62293. * page/SpeechInput.h:
  62294. * page/SpeechInputClient.h: Now requires a one time set for the WebCore::SpeechInputListener and
  62295. takes in a 'requestId' for all calls.
  62296. * page/SpeechInputListener.h: Now returns the above mentioned requestId in all the listener callbacks for
  62297. identifying which input element the event goes to.
  62298. * platform/mock/SpeechInputClientMock.cpp:
  62299. (WebCore::SpeechInputClientMock::SpeechInputClientMock):
  62300. (WebCore::SpeechInputClientMock::setListener):
  62301. (WebCore::SpeechInputClientMock::startRecognition):
  62302. (WebCore::SpeechInputClientMock::stopRecording):
  62303. (WebCore::SpeechInputClientMock::cancelRecognition):
  62304. (WebCore::SpeechInputClientMock::timerFired):
  62305. * platform/mock/SpeechInputClientMock.h:
  62306. * rendering/TextControlInnerElements.cpp:
  62307. (WebCore::InputFieldSpeechButtonElement::InputFieldSpeechButtonElement):
  62308. (WebCore::InputFieldSpeechButtonElement::~InputFieldSpeechButtonElement):
  62309. (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
  62310. (WebCore::InputFieldSpeechButtonElement::speechInput):
  62311. (WebCore::InputFieldSpeechButtonElement::didCompleteRecording):
  62312. (WebCore::InputFieldSpeechButtonElement::didCompleteRecognition):
  62313. (WebCore::InputFieldSpeechButtonElement::setRecognitionResult):
  62314. * rendering/TextControlInnerElements.h:
  62315. 2010-08-13 Eric Carlson <eric.carlson@apple.com>
  62316. Reviewed by David Kilzer.
  62317. HTMLMediaElement::prepareForLoad should cancel current plug-in proxy media player
  62318. https://bugs.webkit.org/show_bug.cgi?id=43923
  62319. * html/HTMLMediaElement.cpp:
  62320. (WebCore::HTMLMediaElement::prepareForLoad): Tell mediaPlayer to cancel the current load
  62321. if it already exists.
  62322. 2010-08-12 Stephen White <senorblanco@chromium.org>
  62323. Reviewed by David Levin.
  62324. [CHROMIUM] Use the BGRA format for canvas 2D accel upload and readbacks.
  62325. https://bugs.webkit.org/show_bug.cgi?id=43804
  62326. Use the BGRA format from GraphicsContext3D, if supported. Also keep a
  62327. texture around for uploads, rather than re-creating it each time.
  62328. Covered by many layout tests (once we're running them).
  62329. * platform/graphics/chromium/GLES2Texture.cpp:
  62330. (WebCore::convertFormat):
  62331. Move convertFormat() ahead of texture creation, so we can check for
  62332. BGRA support.
  62333. (WebCore::GLES2Texture::create):
  62334. Use convertFormat() to determine the correct format and types to use;
  62335. use the returned format also for internalFormat, since GLES2 insists
  62336. they match.
  62337. * platform/graphics/skia/PlatformContextSkia.cpp:
  62338. (WebCore::PlatformContextSkia::setGraphicsContext3D):
  62339. Clear the upload texture when a new context is set.
  62340. (WebCore::PlatformContextSkia::uploadSoftwareToHardware):
  62341. Use m_uploadTexture instead of creating a new one each time.
  62342. (WebCore::PlatformContextSkia::readbackHardwareToSoftware):
  62343. When the context supports it, use the BGRA format for readbacks
  62344. instead of swizzling.
  62345. * platform/graphics/skia/PlatformContextSkia.h:
  62346. Add m_uploadTexture for consecutive uploads.
  62347. 2010-08-13 Simon Hausmann <simon.hausmann@nokia.com>
  62348. Reviewed by Ariya Hidayat.
  62349. [Qt] Clean up mobile feature useage
  62350. https://bugs.webkit.org/show_bug.cgi?id=43968
  62351. * WebCore.pro: Replaced use of Nokia specific platform scopes with concrete
  62352. feature names.
  62353. 2010-08-13 Pavel Feldman <pfeldman@chromium.org>
  62354. Reviewed by Yury Semikhatsky.
  62355. Web Inspector: rename InspectorValue::push and set to
  62356. push{Value|Object|Array} and set{...}.
  62357. https://bugs.webkit.org/show_bug.cgi?id=43966
  62358. * bindings/js/ScriptProfile.cpp:
  62359. (WebCore::buildInspectorObjectFor):
  62360. * bindings/js/ScriptValue.cpp:
  62361. (WebCore::jsToInspectorValue):
  62362. * bindings/v8/ScriptCallStack.cpp:
  62363. (WebCore::ScriptCallStack::stackTrace):
  62364. * bindings/v8/ScriptProfile.cpp:
  62365. (WebCore::buildInspectorObjectFor):
  62366. * bindings/v8/ScriptValue.cpp:
  62367. (WebCore::v8ToInspectorValue):
  62368. * inspector/CodeGeneratorInspector.pm:
  62369. * inspector/ConsoleMessage.cpp:
  62370. (WebCore::ConsoleMessage::addToFrontend):
  62371. * inspector/Inspector.idl:
  62372. * inspector/InspectorApplicationCacheAgent.cpp:
  62373. (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCache):
  62374. (WebCore::InspectorApplicationCacheAgent::buildArrayForApplicationCacheResources):
  62375. * inspector/InspectorController.cpp:
  62376. (WebCore::InspectorController::buildArrayForCookies):
  62377. (WebCore::InspectorController::getDOMStorageEntries):
  62378. (WebCore::InspectorController::getProfileHeaders):
  62379. (WebCore::InspectorController::getProfile):
  62380. * inspector/InspectorDOMAgent.cpp:
  62381. (WebCore::InspectorDOMAgent::getEventListenersForNode):
  62382. (WebCore::InspectorDOMAgent::buildObjectForNode):
  62383. (WebCore::InspectorDOMAgent::buildArrayForContainerChildren):
  62384. (WebCore::InspectorDOMAgent::getStyles):
  62385. (WebCore::InspectorDOMAgent::getAllStyles):
  62386. (WebCore::InspectorDOMAgent::getRuleRanges):
  62387. (WebCore::InspectorDOMAgent::buildObjectForAttributeStyles):
  62388. (WebCore::InspectorDOMAgent::buildArrayForCSSRules):
  62389. (WebCore::InspectorDOMAgent::buildArrayForPseudoElements):
  62390. (WebCore::InspectorDOMAgent::buildObjectForStyle):
  62391. (WebCore::InspectorDOMAgent::populateObjectWithStyleProperties):
  62392. (WebCore::InspectorDOMAgent::buildArrayForDisabledStyleProperties):
  62393. (WebCore::InspectorDOMAgent::buildObjectForStyleSheet):
  62394. (WebCore::InspectorDOMAgent::buildObjectForRule):
  62395. * inspector/InspectorDebuggerAgent.cpp:
  62396. (WebCore::InspectorDebuggerAgent::saveBreakpoints):
  62397. * inspector/InspectorResource.cpp:
  62398. (WebCore::InspectorResource::updateScriptObject):
  62399. * inspector/InspectorStorageAgent.cpp:
  62400. (WebCore::):
  62401. (WebCore::InspectorStorageAgent::executeSQL):
  62402. * inspector/InspectorTimelineAgent.cpp:
  62403. (WebCore::InspectorTimelineAgent::pushGCEventRecords):
  62404. (WebCore::InspectorTimelineAgent::didInstallTimer):
  62405. (WebCore::InspectorTimelineAgent::didRemoveTimer):
  62406. (WebCore::InspectorTimelineAgent::didScheduleResourceRequest):
  62407. (WebCore::InspectorTimelineAgent::willSendResourceRequest):
  62408. (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
  62409. (WebCore::InspectorTimelineAgent::didMarkTimeline):
  62410. (WebCore::InspectorTimelineAgent::addRecordToTimeline):
  62411. (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
  62412. * inspector/InspectorValues.cpp:
  62413. (WebCore::):
  62414. (WebCore::InspectorValue::asValue):
  62415. (WebCore::InspectorValue::asObject):
  62416. (WebCore::InspectorValue::asArray):
  62417. (WebCore::InspectorObject::asObject):
  62418. (WebCore::InspectorArray::asArray):
  62419. * inspector/InspectorValues.h:
  62420. (WebCore::InspectorObject::setBool):
  62421. (WebCore::InspectorObject::setNumber):
  62422. (WebCore::InspectorObject::setString):
  62423. (WebCore::InspectorObject::setValue):
  62424. (WebCore::InspectorObject::setObject):
  62425. (WebCore::InspectorObject::setArray):
  62426. (WebCore::InspectorArray::pushValue):
  62427. (WebCore::InspectorArray::pushObject):
  62428. (WebCore::InspectorArray::pushArray):
  62429. * inspector/ScriptBreakpoint.cpp:
  62430. (WebCore::ScriptBreakpoint::inspectorObjectFromSourceBreakpoints):
  62431. * inspector/TimelineRecordFactory.cpp:
  62432. (WebCore::TimelineRecordFactory::createGenericRecord):
  62433. 2010-08-13 Sheriff Bot <webkit.review.bot@gmail.com>
  62434. Unreviewed, rolling out r65204.
  62435. http://trac.webkit.org/changeset/65204
  62436. https://bugs.webkit.org/show_bug.cgi?id=43965
  62437. Caused a lot of test crashes in Chromium (Requested by yutak
  62438. on #webkit).
  62439. * accessibility/AccessibilityRenderObject.cpp:
  62440. (WebCore::AccessibilityRenderObject::isInputImage):
  62441. (WebCore::AccessibilityRenderObject::isNativeCheckboxOrRadio):
  62442. * dom/InputElement.h:
  62443. * html/HTMLInputElement.h:
  62444. 2010-08-13 Anton Muhin <antonm@chromium.org>
  62445. Reviewed by Nate Chapin.
  62446. Reapplying http://trac.webkit.org/changeset/65284 after fixed include.
  62447. [v8] Create callbacks for named access of elements from document object on fly.
  62448. https://bugs.webkit.org/show_bug.cgi?id=43725
  62449. That should speed up access to methods on document as there is no need to
  62450. consult with interceptor before invoking the method.
  62451. This reapplies http://trac.webkit.org/changeset/60670 reverted with
  62452. http://trac.webkit.org/changeset/63845. The main difference is in treatment
  62453. of removed named elements: we don't remove an accessor any more, but leave it.
  62454. Therefore any accessor should be able to treat the case when there is no
  62455. expando property.
  62456. * bindings/scripts/CodeGeneratorV8.pm:
  62457. * bindings/v8/ScriptController.cpp:
  62458. (WebCore::ScriptController::namedItemAdded):
  62459. (WebCore::ScriptController::namedItemRemoved):
  62460. * bindings/v8/V8DOMWindowShell.cpp:
  62461. (WebCore::checkDocumentWrapper):
  62462. (WebCore::V8DOMWindowShell::updateDocumentWrapperCache):
  62463. (WebCore::getter):
  62464. (WebCore::V8DOMWindowShell::namedItemAdded):
  62465. (WebCore::V8DOMWindowShell::namedItemRemoved):
  62466. * bindings/v8/V8DOMWindowShell.h:
  62467. * bindings/v8/V8DOMWrapper.cpp:
  62468. (WebCore::V8DOMWrapper::instantiateV8Object):
  62469. * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
  62470. (WebCore::V8HTMLDocument::WrapInShadowObject):
  62471. (WebCore::V8HTMLDocument::GetNamedProperty):
  62472. (WebCore::V8HTMLDocument::allAccessorSetter):
  62473. (WebCore::toV8):
  62474. * html/HTMLDocument.cpp:
  62475. (WebCore::HTMLDocument::removeItemFromMap):
  62476. 2010-08-13 Pavel Feldman <pfeldman@chromium.org>
  62477. Reviewed by Yury Semikhatsky.
  62478. Web Inspector: remove openInInspectorWindow and evaluateAndStringify from InjectedScript.
  62479. https://bugs.webkit.org/show_bug.cgi?id=43854
  62480. * inspector/Inspector.idl:
  62481. * inspector/InspectorController.cpp:
  62482. (WebCore::InspectorController::openInInspectedWindow):
  62483. * inspector/InspectorController.h:
  62484. * inspector/front-end/ExtensionServer.js:
  62485. (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage.callback):
  62486. (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage):
  62487. * inspector/front-end/InjectedScript.js:
  62488. (injectedScriptConstructor):
  62489. * inspector/front-end/InjectedScriptAccess.js:
  62490. * inspector/front-end/InspectorBackendStub.js:
  62491. (WebInspector.InspectorBackendStub):
  62492. * inspector/front-end/ResourcesPanel.js:
  62493. (WebInspector.ResourceSidebarTreeElement.prototype.ondblclick):
  62494. 2010-08-13 Fumitoshi Ukai <ukai@chromium.org>
  62495. Reviewed by Alexey Proskuryakov.
  62496. flaky websocket/tests/frame-length-overflow.html
  62497. https://bugs.webkit.org/show_bug.cgi?id=43902
  62498. Add m_shouldDiscardReceivedData flag to indicate it will no longer
  62499. receive data from network.
  62500. * websockets/WebSocketChannel.cpp:
  62501. (WebCore::WebSocketChannel::WebSocketChannel):
  62502. (WebCore::WebSocketChannel::didReceiveData):
  62503. (WebCore::WebSocketChannel::didFail):
  62504. (WebCore::WebSocketChannel::processBuffer):
  62505. - when frame length overflows, we couldn't process data any more.
  62506. clear buffer and mark m_shouldDiscardReceivedData true to make sure
  62507. it doesn't process the same buffer again.
  62508. * websockets/WebSocketChannel.h:
  62509. 2010-08-13 Dirk Schulze <krit@webkit.org>
  62510. Reviewed by Nikolas Zimmermann.
  62511. Use SVGPathByteStream to animate SVGPath
  62512. https://bugs.webkit.org/show_bug.cgi?id=43929
  62513. Use SVGPathByteStream to perform animations of Paths. SVGPathBlender blends
  62514. the starting point to the end point according to the current progress value.
  62515. Cleanup SVGPathSegList, by removing the unnecessary legacy blending code.
  62516. No new tests because no functional changes.
  62517. * Android.mk:
  62518. * CMakeLists.txt:
  62519. * GNUmakefile.am:
  62520. * WebCore.gypi:
  62521. * WebCore.pro:
  62522. * WebCore.vcproj/WebCore.vcproj:
  62523. * WebCore.xcodeproj/project.pbxproj:
  62524. * svg/SVGAllInOne.cpp:
  62525. * svg/SVGAnimateElement.cpp:
  62526. (WebCore::SVGAnimateElement::SVGAnimateElement):
  62527. (WebCore::SVGAnimateElement::calculateAnimatedValue):
  62528. (WebCore::SVGAnimateElement::calculateFromAndToValues):
  62529. (WebCore::SVGAnimateElement::resetToBaseValue):
  62530. (WebCore::SVGAnimateElement::applyResultsToTarget):
  62531. * svg/SVGAnimateElement.h:
  62532. * svg/SVGPathBlender.cpp: Added.
  62533. (WebCore::SVGPathBlender::SVGPathBlender):
  62534. (WebCore::SVGPathBlender::~SVGPathBlender):
  62535. (WebCore::SVGPathBlender::blendAnimatedFloat):
  62536. (WebCore::SVGPathBlender::blendAnimatedFloatPoint):
  62537. (WebCore::SVGPathBlender::blendMoveToSegment):
  62538. (WebCore::SVGPathBlender::blendLineToSegment):
  62539. (WebCore::SVGPathBlender::blendLineToHorizontalSegment):
  62540. (WebCore::SVGPathBlender::blendLineToVerticalSegment):
  62541. (WebCore::SVGPathBlender::blendCurveToCubicSegment):
  62542. (WebCore::SVGPathBlender::blendCurveToCubicSmoothSegment):
  62543. (WebCore::SVGPathBlender::blendCurveToQuadraticSegment):
  62544. (WebCore::SVGPathBlender::blendCurveToQuadraticSmoothSegment):
  62545. (WebCore::SVGPathBlender::blendArcToSegment):
  62546. (WebCore::SVGPathBlender::blendAnimatedPath):
  62547. (WebCore::SVGPathBlender::cleanup):
  62548. * svg/SVGPathBlender.h: Added.
  62549. * svg/SVGPathParserFactory.cpp:
  62550. (WebCore::globalSVGPathBlender):
  62551. (WebCore::SVGPathParserFactory::buildAnimatedSVGPathByteStream):
  62552. * svg/SVGPathParserFactory.h:
  62553. * svg/SVGPathSegList.cpp:
  62554. (WebCore::SVGPathSegList::getPathSegAtLength):
  62555. * svg/SVGPathSegList.h:
  62556. (WebCore::SVGPathSegList::create):
  62557. * svg/SVGPointList.cpp:
  62558. (WebCore::adjustAnimatedValue):
  62559. 2010-08-12 Nikolas Zimmermann <nzimmermann@rim.com>
  62560. Reviewed by Dirk Schulze.
  62561. Window size changes + resources on absolute sized content leads to pixelation
  62562. https://bugs.webkit.org/show_bug.cgi?id=43921
  62563. Avoid pixelation when using resources on absolute sized objects. Be sure to invalidate the used resources if window size changes.
  62564. Otherwhise masks etc. will be scaled up and pixelate. As nice side-effect, this fixes run-webkit-tests --singly svg/W3C-SVG-1.1, which
  62565. used to produce wrong results for the gradient tests, as the window size change from 800x600 for 480x360 (svg/W3C-SVG-1.1 specific DRT quirk)
  62566. didn't invalidate the resources.
  62567. Renamed invalidateClient -> removeClientFromCache and invalidateClients -> removeAllClientsFromCache.
  62568. Add a boolean "markForInvalidation" parameter, that controls wheter the clients should be marked for repaint/boundaries invalidation/layout
  62569. or wheter we only want to notify the parents that the resource changed, to avoid doing unncessary work in SVGRenderSupport::layoutChildren.
  62570. Test: svg/custom/absolute-sized-content-with-resources.xhtml
  62571. * rendering/RenderSVGGradientStop.cpp:
  62572. (WebCore::RenderSVGGradientStop::styleDidChange): Don't do anything for StyleDifferenceEqual.
  62573. * rendering/RenderSVGImage.cpp:
  62574. (WebCore::RenderSVGImage::imageChanged):
  62575. * rendering/RenderSVGResource.cpp:
  62576. (WebCore::RenderSVGResource::markForLayoutAndParentResourceInvalidation):
  62577. * rendering/RenderSVGResource.h:
  62578. * rendering/RenderSVGResourceClipper.cpp:
  62579. (WebCore::RenderSVGResourceClipper::removeAllClientsFromCache):
  62580. (WebCore::RenderSVGResourceClipper::removeClientFromCache):
  62581. * rendering/RenderSVGResourceClipper.h:
  62582. * rendering/RenderSVGResourceContainer.cpp:
  62583. (WebCore::RenderSVGResourceContainer::layout):
  62584. (WebCore::RenderSVGResourceContainer::idChanged):
  62585. (WebCore::RenderSVGResourceContainer::markAllClientsForInvalidation):
  62586. (WebCore::RenderSVGResourceContainer::markClientForInvalidation):
  62587. * rendering/RenderSVGResourceContainer.h:
  62588. (WebCore::RenderSVGResourceContainer::):
  62589. * rendering/RenderSVGResourceFilter.cpp:
  62590. (WebCore::RenderSVGResourceFilter::removeAllClientsFromCache):
  62591. (WebCore::RenderSVGResourceFilter::removeClientFromCache):
  62592. (WebCore::RenderSVGResourceFilter::postApplyResource):
  62593. * rendering/RenderSVGResourceFilter.h:
  62594. * rendering/RenderSVGResourceGradient.cpp:
  62595. (WebCore::RenderSVGResourceGradient::removeAllClientsFromCache):
  62596. (WebCore::RenderSVGResourceGradient::removeClientFromCache):
  62597. (WebCore::RenderSVGResourceGradient::applyResource):
  62598. * rendering/RenderSVGResourceGradient.h:
  62599. * rendering/RenderSVGResourceMarker.cpp:
  62600. (WebCore::RenderSVGResourceMarker::layout):
  62601. (WebCore::RenderSVGResourceMarker::removeAllClientsFromCache):
  62602. (WebCore::RenderSVGResourceMarker::removeClientFromCache):
  62603. * rendering/RenderSVGResourceMarker.h:
  62604. * rendering/RenderSVGResourceMasker.cpp:
  62605. (WebCore::RenderSVGResourceMasker::removeAllClientsFromCache):
  62606. (WebCore::RenderSVGResourceMasker::removeClientFromCache):
  62607. * rendering/RenderSVGResourceMasker.h:
  62608. * rendering/RenderSVGResourcePattern.cpp:
  62609. (WebCore::RenderSVGResourcePattern::removeAllClientsFromCache):
  62610. (WebCore::RenderSVGResourcePattern::removeClientFromCache):
  62611. (WebCore::RenderSVGResourcePattern::applyResource):
  62612. * rendering/RenderSVGResourcePattern.h:
  62613. * rendering/RenderSVGResourceSolidColor.h:
  62614. (WebCore::RenderSVGResourceSolidColor::removeAllClientsFromCache):
  62615. (WebCore::RenderSVGResourceSolidColor::removeClientFromCache):
  62616. * rendering/SVGRenderSupport.cpp:
  62617. (WebCore::invalidateResourcesOfChildren): Add new helper funtion recursively invalidating resources of a sub render tree.
  62618. (WebCore::SVGRenderSupport::layoutChildren): Keep track of all objects that didn't need layout, as we still have to invalidate their resources, if window size changes.
  62619. * rendering/SVGResources.cpp:
  62620. (WebCore::SVGResources::removeClientFromCache):
  62621. (WebCore::SVGResources::resourceDestroyed):
  62622. * rendering/SVGResources.h:
  62623. * rendering/SVGResourcesCache.cpp:
  62624. (WebCore::SVGResourcesCache::clientLayoutChanged):
  62625. 2010-08-13 Pavel Feldman <pfeldman@chromium.org>
  62626. Reviewed by Yury Semikhatsky.
  62627. Chromium DevTools: [CRASH] Autocomplete on arrays causes crashes.
  62628. https://bugs.webkit.org/show_bug.cgi?id=43955
  62629. * bindings/v8/ScriptValue.cpp:
  62630. (WebCore::v8ToInspectorValue):
  62631. 2010-08-13 Gavin Barraclough <barraclough@apple.com>
  62632. Reviewed by Sam Weinig
  62633. Unify UString::UTF8String() & String::utf8() methods,
  62634. remove UString::cost() & make atArrayIndex a free function.
  62635. * WebCore.xcodeproj/project.pbxproj:
  62636. * bindings/js/JSDOMWindowCustom.cpp:
  62637. (WebCore::JSDOMWindow::getOwnPropertySlot):
  62638. (WebCore::JSDOMWindow::getOwnPropertyDescriptor):
  62639. * bridge/NP_jsobject.cpp:
  62640. (_NPN_Enumerate):
  62641. * bridge/c/c_utility.cpp:
  62642. (JSC::Bindings::convertValueToNPVariant):
  62643. * bridge/jni/JNIBridge.cpp:
  62644. (JavaParameter::JavaParameter):
  62645. (JavaMethod::JavaMethod):
  62646. (JavaMethod::signature):
  62647. (JavaMethod::methodID):
  62648. * bridge/jni/JNIBridge.h:
  62649. (JSC::Bindings::JavaString::utf8):
  62650. (JSC::Bindings::JavaParameter::type):
  62651. (JSC::Bindings::JavaMethod::returnType):
  62652. * bridge/jni/jni_jsobject.mm:
  62653. (JavaJSObject::call):
  62654. (JavaJSObject::eval):
  62655. (JavaJSObject::getMember):
  62656. (JavaJSObject::setMember):
  62657. (JavaJSObject::removeMember):
  62658. (JavaJSObject::convertJObjectToValue):
  62659. * bridge/jni/jsc/JNIBridgeJSC.cpp:
  62660. (JavaField::JavaField):
  62661. (JavaField::valueFromInstance):
  62662. (JavaField::setValueToInstance):
  62663. * bridge/jni/jsc/JNIBridgeJSC.h:
  62664. (JSC::Bindings::JavaField::type):
  62665. * bridge/jni/jsc/JavaInstanceJSC.cpp:
  62666. (JavaInstance::invokeMethod):
  62667. * bridge/jni/jsc/JavaStringJSC.h:
  62668. (JSC::Bindings::JavaStringImpl::utf8):
  62669. * bridge/runtime_array.cpp:
  62670. (JSC::RuntimeArray::getOwnPropertySlot):
  62671. (JSC::RuntimeArray::getOwnPropertyDescriptor):
  62672. (JSC::RuntimeArray::put):
  62673. 2010-08-12 Yury Semikhatsky <yurys@chromium.org>
  62674. Reviewed by Pavel Feldman.
  62675. Web Inspector: allow interrupting long running JS to execute inspector command
  62676. https://bugs.webkit.org/show_bug.cgi?id=43900
  62677. * bindings/v8/ScriptDebugServer.cpp:
  62678. (WebCore::):
  62679. (WebCore::ScriptDebugServer::pause):
  62680. (WebCore::ScriptDebugServer::interruptAndRun):
  62681. (WebCore::ScriptDebugServer::runPendingTasks):
  62682. (WebCore::ScriptDebugServer::handleV8DebugEvent):
  62683. * bindings/v8/ScriptDebugServer.h:
  62684. (WebCore::ScriptDebugServer::Task::~Task):
  62685. 2010-08-12 Sheriff Bot <webkit.review.bot@gmail.com>
  62686. Unreviewed, rolling out r65295.
  62687. http://trac.webkit.org/changeset/65295
  62688. https://bugs.webkit.org/show_bug.cgi?id=43950
  62689. It broke 4 sputnik tests (Requested by Ossy on #webkit).
  62690. * WebCore.xcodeproj/project.pbxproj:
  62691. * bindings/js/JSDOMWindowCustom.cpp:
  62692. (WebCore::JSDOMWindow::getOwnPropertySlot):
  62693. (WebCore::JSDOMWindow::getOwnPropertyDescriptor):
  62694. * bridge/NP_jsobject.cpp:
  62695. (_NPN_Enumerate):
  62696. * bridge/c/c_utility.cpp:
  62697. (JSC::Bindings::convertValueToNPVariant):
  62698. * bridge/jni/JNIBridge.cpp:
  62699. (JavaParameter::JavaParameter):
  62700. (JavaMethod::JavaMethod):
  62701. (JavaMethod::signature):
  62702. (JavaMethod::methodID):
  62703. * bridge/jni/JNIBridge.h:
  62704. (JSC::Bindings::JavaString::UTF8String):
  62705. (JSC::Bindings::JavaParameter::type):
  62706. (JSC::Bindings::JavaMethod::returnType):
  62707. * bridge/jni/jni_jsobject.mm:
  62708. (JavaJSObject::call):
  62709. (JavaJSObject::eval):
  62710. (JavaJSObject::getMember):
  62711. (JavaJSObject::setMember):
  62712. (JavaJSObject::removeMember):
  62713. (JavaJSObject::convertJObjectToValue):
  62714. * bridge/jni/jsc/JNIBridgeJSC.cpp:
  62715. (JavaField::JavaField):
  62716. (JavaField::valueFromInstance):
  62717. (JavaField::setValueToInstance):
  62718. * bridge/jni/jsc/JNIBridgeJSC.h:
  62719. (JSC::Bindings::JavaField::type):
  62720. * bridge/jni/jsc/JavaInstanceJSC.cpp:
  62721. (JavaInstance::invokeMethod):
  62722. * bridge/jni/jsc/JavaStringJSC.h:
  62723. (JSC::Bindings::JavaStringImpl::UTF8String):
  62724. * bridge/runtime_array.cpp:
  62725. (JSC::RuntimeArray::getOwnPropertySlot):
  62726. (JSC::RuntimeArray::getOwnPropertyDescriptor):
  62727. (JSC::RuntimeArray::put):
  62728. 2010-08-12 Pavel Feldman <pfeldman@chromium.org>
  62729. Not reviewed. Fixed typo in inspector js.
  62730. Follow up to r65300.
  62731. * inspector/front-end/inspector.js:
  62732. (WebInspector.log.isLogAvailable):
  62733. 2010-08-12 Pavel Feldman <pfeldman@chromium.org>
  62734. Reviewed by Yury Semikhatsky.
  62735. Web Inspector: Make getPrototypes return objects, not names.
  62736. https://bugs.webkit.org/show_bug.cgi?id=43934
  62737. * inspector/front-end/InjectedScript.js:
  62738. (injectedScriptConstructor):
  62739. (injectedScriptConstructor.):
  62740. * inspector/front-end/PropertiesSidebarPane.js:
  62741. (WebInspector.PropertiesSidebarPane.prototype.update.callback):
  62742. * inspector/front-end/inspector.js:
  62743. (WebInspector.log):
  62744. 2010-08-12 James Robinson <jamesr@chromium.org>
  62745. Unreviewed, rolling out r65284 and r65288. Broke chromium compile.
  62746. https://bugs.webkit.org/show_bug.cgi?id=43725
  62747. http://trac.webkit.org/changeset/65284
  62748. http://trac.webkit.org/changeset/65288
  62749. * bindings/scripts/CodeGeneratorV8.pm:
  62750. * bindings/v8/ScriptController.cpp:
  62751. (WebCore::ScriptController::namedItemAdded):
  62752. (WebCore::ScriptController::namedItemRemoved):
  62753. * bindings/v8/V8DOMWindowShell.cpp:
  62754. (WebCore::V8DOMWindowShell::updateDocumentWrapperCache):
  62755. * bindings/v8/V8DOMWindowShell.h:
  62756. * bindings/v8/V8DOMWrapper.cpp:
  62757. (WebCore::V8DOMWrapper::instantiateV8Object):
  62758. * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
  62759. (WebCore::V8HTMLDocument::namedPropertyDeleter):
  62760. (WebCore::V8HTMLDocument::namedPropertyGetter):
  62761. (WebCore::V8HTMLDocument::indexedPropertyGetter):
  62762. (WebCore::V8HTMLDocument::allAccessorSetter):
  62763. (WebCore::toV8):
  62764. * html/HTMLDocument.cpp:
  62765. (WebCore::HTMLDocument::removeItemFromMap):
  62766. 2010-08-12 Gavin Barraclough <barraclough@apple.com>
  62767. Reviewed by Sam Weinig
  62768. Unify UString::UTF8String() & String::utf8() methods,
  62769. remove UString::cost() & make atArrayIndex a free function.
  62770. * WebCore.xcodeproj/project.pbxproj:
  62771. * bindings/js/JSDOMWindowCustom.cpp:
  62772. (WebCore::JSDOMWindow::getOwnPropertySlot):
  62773. (WebCore::JSDOMWindow::getOwnPropertyDescriptor):
  62774. * bridge/NP_jsobject.cpp:
  62775. (_NPN_Enumerate):
  62776. * bridge/c/c_utility.cpp:
  62777. (JSC::Bindings::convertValueToNPVariant):
  62778. * bridge/jni/JNIBridge.cpp:
  62779. (JavaParameter::JavaParameter):
  62780. (JavaMethod::JavaMethod):
  62781. (JavaMethod::signature):
  62782. (JavaMethod::methodID):
  62783. * bridge/jni/JNIBridge.h:
  62784. (JSC::Bindings::JavaString::utf8):
  62785. (JSC::Bindings::JavaParameter::type):
  62786. (JSC::Bindings::JavaMethod::returnType):
  62787. * bridge/jni/jni_jsobject.mm:
  62788. (JavaJSObject::call):
  62789. (JavaJSObject::eval):
  62790. (JavaJSObject::getMember):
  62791. (JavaJSObject::setMember):
  62792. (JavaJSObject::removeMember):
  62793. (JavaJSObject::convertJObjectToValue):
  62794. * bridge/jni/jsc/JNIBridgeJSC.cpp:
  62795. (JavaField::JavaField):
  62796. (JavaField::valueFromInstance):
  62797. (JavaField::setValueToInstance):
  62798. * bridge/jni/jsc/JNIBridgeJSC.h:
  62799. (JSC::Bindings::JavaField::type):
  62800. * bridge/jni/jsc/JavaInstanceJSC.cpp:
  62801. (JavaInstance::invokeMethod):
  62802. * bridge/jni/jsc/JavaStringJSC.h:
  62803. (JSC::Bindings::JavaStringImpl::utf8):
  62804. * bridge/runtime_array.cpp:
  62805. (JSC::RuntimeArray::getOwnPropertySlot):
  62806. (JSC::RuntimeArray::getOwnPropertyDescriptor):
  62807. (JSC::RuntimeArray::put):
  62808. 2010-08-12 Gavin Barraclough <barraclough@apple.com>
  62809. Speculative build fix for chromium bindings (someone added the old include style!).
  62810. * bindings/v8/V8DOMWindowShell.h:
  62811. 2010-08-12 MORITA Hajime <morrita@google.com>
  62812. Reviewed by Tony Chang.
  62813. [Refactoring] TextEvent class has to many flags
  62814. https://bugs.webkit.org/show_bug.cgi?id=43893
  62815. Turned TextEvent::m_isLineBreak, TextEvent::m_isBacktab, TextEvent::m_isPaste
  62816. into single TextEvent::m_inputType enumeration.
  62817. No functional change. No new tests.
  62818. * dom/TextEvent.cpp:
  62819. (WebCore::TextEvent::selectInputType):
  62820. (WebCore::TextEvent::create):
  62821. (WebCore::TextEvent::createForPlainTextPaste):
  62822. (WebCore::TextEvent::createForFragmentPaste):
  62823. (WebCore::TextEvent::TextEvent):
  62824. * dom/TextEvent.h:
  62825. (WebCore::TextEvent::):
  62826. (WebCore::TextEvent::isLineBreak):
  62827. (WebCore::TextEvent::isBackTab):
  62828. (WebCore::TextEvent::isPaste):
  62829. * page/EventHandler.cpp:
  62830. (WebCore::EventHandler::handleTextInputEvent):
  62831. 2010-08-12 Kenneth Russell <kbr@google.com>
  62832. Reviewed by David Levin.
  62833. Delete obsolete CanvasNumberArray
  62834. https://bugs.webkit.org/show_bug.cgi?id=38619
  62835. Deleted unreferenced code. Built WebKit and Chromium to test.
  62836. * Android.derived.jscbindings.mk:
  62837. * Android.derived.v8bindings.mk:
  62838. * Android.jscbindings.mk:
  62839. * Android.mk:
  62840. * bindings/js/JSCanvasNumberArrayCustom.cpp: Removed.
  62841. * html/canvas/CanvasNumberArray.cpp: Removed.
  62842. * html/canvas/CanvasNumberArray.h: Removed.
  62843. * html/canvas/CanvasNumberArray.idl: Removed.
  62844. 2010-08-12 Anton Muhin <antonm@chromium.org>
  62845. Reviewed by Nate Chapin.
  62846. [v8] Create callbacks for named access of elements from document object on fly.
  62847. https://bugs.webkit.org/show_bug.cgi?id=43725
  62848. That should speed up access to methods on document as there is no need to
  62849. consult with interceptor before invoking the method.
  62850. This reapplies http://trac.webkit.org/changeset/60670 reverted with
  62851. http://trac.webkit.org/changeset/63845. The main difference is in treatment
  62852. of removed named elements: we don't remove an accessor any more, but leave it.
  62853. Therefore any accessor should be able to treat the case when there is no
  62854. expando property.
  62855. * bindings/scripts/CodeGeneratorV8.pm:
  62856. * bindings/v8/ScriptController.cpp:
  62857. (WebCore::ScriptController::namedItemAdded):
  62858. (WebCore::ScriptController::namedItemRemoved):
  62859. * bindings/v8/V8DOMWindowShell.cpp:
  62860. (WebCore::checkDocumentWrapper):
  62861. (WebCore::V8DOMWindowShell::updateDocumentWrapperCache):
  62862. (WebCore::getter):
  62863. (WebCore::V8DOMWindowShell::namedItemAdded):
  62864. (WebCore::V8DOMWindowShell::namedItemRemoved):
  62865. * bindings/v8/V8DOMWindowShell.h:
  62866. * bindings/v8/V8DOMWrapper.cpp:
  62867. (WebCore::V8DOMWrapper::instantiateV8Object):
  62868. * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
  62869. (WebCore::V8HTMLDocument::WrapInShadowObject):
  62870. (WebCore::V8HTMLDocument::GetNamedProperty):
  62871. (WebCore::V8HTMLDocument::allAccessorSetter):
  62872. (WebCore::toV8):
  62873. * html/HTMLDocument.cpp:
  62874. (WebCore::HTMLDocument::removeItemFromMap):
  62875. 2010-08-12 Dimitri Glazkov <dglazkov@chromium.org>
  62876. Reviewed by Adam Barth.
  62877. Ensure that parser doesn't attach children that have been removed by JavaScript event handlers.
  62878. https://bugs.webkit.org/show_bug.cgi?id=43813
  62879. This patch re-fixes bug 40742 in a way that keeps allowing HTMLLinkElement
  62880. to lazy-attach.
  62881. * html/HTMLConstructionSite.cpp:
  62882. (WebCore::HTMLConstructionSite::attach): Added parent check.
  62883. * html/HTMLLinkElement.cpp: Basically undoes changes introduced by r61424.
  62884. * html/HTMLLinkElement.h: Ditto.
  62885. 2010-08-12 Justin Schuh <jschuh@chromium.org>
  62886. Reviewed by Dumitru Daniliuc.
  62887. Clear PluginData's page pointer on page refresh
  62888. https://bugs.webkit.org/show_bug.cgi?id=43888
  62889. Test: plugins/access-after-page-destroyed.html
  62890. * page/Page.cpp:
  62891. (WebCore::Page::refreshPlugins):
  62892. 2010-08-12 Zhenyao Mo <zmo@google.com>
  62893. Reviewed by Dimitri Glazkov.
  62894. getParameter(STENCIL_VALUE_MASK) (and others) returns the wrong value
  62895. https://bugs.webkit.org/show_bug.cgi?id=31842
  62896. * html/canvas/WebGLRenderingContext.cpp:
  62897. (WebCore::WebGLRenderingContext::getUnsignedLongParameter): Casting from int to unsigned long correctly.
  62898. 2010-08-12 Pavel Feldman <pfeldman@chromium.org>
  62899. Reviewed by Joseph Pecoraro.
  62900. Web Inspector: mimic FireBug's array detection.
  62901. https://bugs.webkit.org/show_bug.cgi?id=30974
  62902. * inspector/front-end/InjectedScript.js:
  62903. (injectedScriptConstructor):
  62904. 2010-08-12 Zhenyao Mo <zmo@google.com>
  62905. Reviewed by Dimitri Glazkov.
  62906. regression in generateMipmap
  62907. https://bugs.webkit.org/show_bug.cgi?id=43873
  62908. * html/canvas/WebGLTexture.cpp:
  62909. (WebCore::WebGLTexture::generateMipmapLevelInfo): should set m_needToUseBlackTexture to false if generateMipmapLevelInfo runs through successfully.
  62910. 2010-08-12 Ariya Hidayat <ariya@sencha.com>
  62911. Reviewed by David Hyatt.
  62912. [Qt] Split TransparencyLayer into its own header file.
  62913. https://bugs.webkit.org/show_bug.cgi?id=43935
  62914. * WebCore.pro: Include TransparencyLayer.h.
  62915. * platform/graphics/qt/GraphicsContextQt.cpp:
  62916. * platform/graphics/qt/TransparencyLayer.h: Added.
  62917. (WebCore::TransparencyLayer::TransparencyLayer):
  62918. (WebCore::TransparencyLayer::operator=):
  62919. 2010-08-12 François Sausset <sausset@gmail.com>
  62920. Reviewed by Beth Dakin.
  62921. Horizontal padding should be 0 on mrow elements.
  62922. https://bugs.webkit.org/show_bug.cgi?id=43908
  62923. Updated tests in /mathml
  62924. * css/mathml.css:
  62925. (mrow, mfenced):
  62926. (mfenced):
  62927. 2010-08-12 Aaron Boodman <aa@chromium.org>
  62928. Reviewed by David Hyatt.
  62929. Make the cascade level of "user" styles configurable
  62930. https://bugs.webkit.org/show_bug.cgi?id=43457
  62931. * WebCore.exp.in:
  62932. * css/CSSStyleSelector.cpp:
  62933. (WebCore::CSSStyleSelector::CSSStyleSelector):
  62934. * dom/Document.cpp:
  62935. (WebCore::Document::pageGroupUserSheets):
  62936. * page/PageGroup.cpp:
  62937. (WebCore::PageGroup::addUserStyleSheetToWorld):
  62938. * page/PageGroup.h:
  62939. * page/UserStyleSheet.h:
  62940. (WebCore::UserStyleSheet::):
  62941. (WebCore::UserStyleSheet::UserStyleSheet):
  62942. (WebCore::UserStyleSheet::level):
  62943. 2010-08-12 Jian Li <jianli@chromium.org>
  62944. Fix qt build break.
  62945. * html/ThreadableBlobRegistry.cpp:
  62946. (WebCore::postTaskToMainThread):
  62947. 2010-08-12 Jian Li <jianli@chromium.org>
  62948. Reviewed by David Levin.
  62949. Add ThreadableBlobRegistry to support calling BlobRegistry methods in
  62950. main thread.
  62951. https://bugs.webkit.org/show_bug.cgi?id=43874
  62952. * Android.mk:
  62953. * CMakeLists.txt:
  62954. * GNUmakefile.am:
  62955. * WebCore.gypi:
  62956. * WebCore.pro:
  62957. * WebCore.vcproj/WebCore.vcproj:
  62958. * WebCore.xcodeproj/project.pbxproj:
  62959. * dom/ScriptExecutionContext.cpp:
  62960. (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
  62961. (WebCore::ScriptExecutionContext::addBlob):
  62962. (WebCore::ScriptExecutionContext::removeBlob):
  62963. (WebCore::ScriptExecutionContext::createPublicBlobURL):
  62964. (WebCore::ScriptExecutionContext::revokePublicBlobURL):
  62965. * dom/ScriptExecutionContext.h:
  62966. * html/Blob.cpp:
  62967. (WebCore::Blob::Blob):
  62968. (WebCore::Blob::~Blob):
  62969. (WebCore::Blob::contextDestroyed):
  62970. * html/Blob.h:
  62971. * html/BlobRegistryImpl.cpp:
  62972. (WebCore::BlobRegistryImpl::registerBlobURL):
  62973. (WebCore::BlobRegistryImpl::unregisterBlobURL):
  62974. (WebCore::BlobRegistryImpl::getBlobDataFromURL):
  62975. * html/ThreadableBlobRegistry.cpp: Added.
  62976. * html/ThreadableBlobRegistry.h: Added.
  62977. 2010-08-12 Csaba Osztrogonác <ossy@webkit.org>
  62978. Reviewed by Darin Adler.
  62979. generate-bindings.pl should generate warning free code
  62980. https://bugs.webkit.org/show_bug.cgi?id=43353
  62981. * bindings/scripts/CodeGeneratorJS.pm: Suggested parentheses added around && within ||
  62982. 2010-08-11 Ryosuke Niwa <rniwa@webkit.org>
  62983. Reviewed by Kent Tamura.
  62984. merge MarkupAccumulator and MarkupAccumulatorWrapper
  62985. https://bugs.webkit.org/show_bug.cgi?id=43834
  62986. Removed MarkupAccumulator and added serializeNodesWithNamespaces to use MarkupAccumulatorWrapper
  62987. in both versions of createMarkup. Accumulation of nodes done manually in serializeNodes is
  62988. now done by MarkupAccumulatorWrapper as done in the original MarkupAccumulator.
  62989. No new tests added since this is a cleanup.
  62990. * editing/markup.cpp:
  62991. (WebCore::MarkupAccumulatorWrapper::MarkupAccumulatorWrapper): Takes vector of nodes and set it to m_nodes.
  62992. (WebCore::MarkupAccumulatorWrapper::insertOpenTag): Adds node to m_nodes.
  62993. (WebCore::MarkupAccumulatorWrapper::wrapWithNode): Adds node to m_nodes.
  62994. (WebCore::serializeNodes): Adding node to nodes is moved into MarkupAccumulatorWrapper.
  62995. (WebCore::createMarkup): Instantiates MarkupAccumulatorWrapper.
  62996. (WebCore::serializeNodesWithNamespaces): Renamed from MarkupAccumulator::appendMarkup.
  62997. 2010-08-12 Dirk Schulze <krit@webkit.org>
  62998. Unreviewed sort of Xcode project file.
  62999. * WebCore.xcodeproj/project.pbxproj:
  63000. 2010-08-12 Ben Murdoch <benm@google.com>
  63001. Reviewed by Pavel Feldman.
  63002. InspectorController.h missing InspectorObject forward declaration
  63003. https://bugs.webkit.org/show_bug.cgi?id=43913
  63004. Build fix so no new tests.
  63005. * inspector/InspectorController.h: Adds the necessary forward declaration.
  63006. 2010-08-12 Hui Huang <hui.2.huang@nokia.com>
  63007. Reviewed by Eric Seidel.
  63008. m_windowRect is not updated because parent of PluginView is not
  63009. set when updatePluginWidget is called. plugin gets wrong window
  63010. size on setwindow.
  63011. https://bugs.webkit.org/show_bug.cgi?id=43635
  63012. * plugins/symbian/PluginViewSymbian.cpp:
  63013. (WebCore::PluginView::setParent):
  63014. 2010-08-12 Pavel Feldman <pfeldman@chromium.org>
  63015. Not reviewed, re-apply r65241 and 65243.
  63016. Web Inspector: brush up object proxies, introduce remote object model.
  63017. https://bugs.webkit.org/show_bug.cgi?id=43847
  63018. * WebCore.gypi:
  63019. * WebCore.vcproj/WebCore.vcproj:
  63020. * inspector/front-end/AuditRules.js:
  63021. (WebInspector.AuditRules.CssInHeadRule.prototype.doRun):
  63022. (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun):
  63023. * inspector/front-end/ConsoleView.js:
  63024. (WebInspector.ConsoleView.prototype.doEvalInWindow):
  63025. (WebInspector.ConsoleView.prototype._enterKeyPressed.printResult):
  63026. (WebInspector.ConsoleView.prototype._enterKeyPressed):
  63027. (WebInspector.ConsoleView.prototype._format):
  63028. (WebInspector.ConsoleView.prototype._formatarray):
  63029. (WebInspector.ConsoleView.prototype._formatAsArrayEntry):
  63030. (WebInspector.ConsoleMessage.prototype._format):
  63031. (WebInspector.ConsoleCommandResult):
  63032. * inspector/front-end/DOMAgent.js:
  63033. (WebInspector.DOMNode):
  63034. * inspector/front-end/ElementsPanel.js:
  63035. (WebInspector.ElementsPanel.prototype.performSearch):
  63036. * inspector/front-end/ElementsTreeOutline.js:
  63037. (WebInspector.ElementsTreeElement.prototype._createTooltipForNode):
  63038. * inspector/front-end/EventListenersSidebarPane.js:
  63039. ():
  63040. * inspector/front-end/InjectedScript.js:
  63041. (injectedScriptConstructor):
  63042. (injectedScriptConstructor.):
  63043. * inspector/front-end/ObjectPropertiesSection.js:
  63044. (WebInspector.ObjectPropertiesSection.prototype.update):
  63045. (WebInspector.ObjectPropertiesSection.prototype.updateProperties):
  63046. (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate):
  63047. (WebInspector.ObjectPropertyTreeElement.prototype.update):
  63048. (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression):
  63049. * inspector/front-end/ObjectProxy.js: Removed.
  63050. * inspector/front-end/PropertiesSidebarPane.js:
  63051. (WebInspector.PropertiesSidebarPane.prototype.update.callback):
  63052. * inspector/front-end/RemoteObject.js: Added.
  63053. (WebInspector.RemoteObjectId):
  63054. (WebInspector.RemoteObject):
  63055. (WebInspector.RemoteObject.fromPrimitiveValue):
  63056. (WebInspector.RemoteObject.fromNode):
  63057. (WebInspector.RemoteObject.fromPayload):
  63058. (WebInspector.RemoteObject.type):
  63059. (WebInspector.RemoteObject.prototype.get objectId):
  63060. (WebInspector.RemoteObject.prototype.get type):
  63061. (WebInspector.RemoteObject.prototype.get description):
  63062. (WebInspector.RemoteObject.prototype.get hasChildren):
  63063. (WebInspector.RemoteObject.prototype.isError):
  63064. (WebInspector.RemoteObject.prototype.getPropertyValueDescriptions):
  63065. (WebInspector.RemoteObject.prototype.getOwnProperties):
  63066. (WebInspector.RemoteObject.prototype.getProperties.remoteObjectBinder):
  63067. (WebInspector.RemoteObjectProperty):
  63068. * inspector/front-end/ScopeChainSidebarPane.js:
  63069. (WebInspector.ScopeChainSidebarPane.prototype.update):
  63070. * inspector/front-end/ScriptsPanel.js:
  63071. (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame.updatingCallbackWrapper):
  63072. (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame):
  63073. (WebInspector.ScriptsPanel.prototype.doEvalInCallFrame):
  63074. * inspector/front-end/SourceFrame.js:
  63075. (WebInspector.SourceFrame.prototype._showPopup.evaluateCallback):
  63076. (WebInspector.SourceFrame.prototype._showPopup):
  63077. (WebInspector.SourceFrame.prototype._evalSelectionInCallFrame):
  63078. * inspector/front-end/WatchExpressionsSidebarPane.js:
  63079. (WebInspector.WatchExpressionsSection.prototype.update):
  63080. (WebInspector.WatchExpressionTreeElement.prototype.update):
  63081. * inspector/front-end/WebKit.qrc:
  63082. * inspector/front-end/inspector.html:
  63083. * inspector/front-end/inspector.js:
  63084. (WebInspector.log.logMessage):
  63085. (WebInspector.log):
  63086. * inspector/front-end/utilities.js:
  63087. ():
  63088. 2010-08-11 Stephen White <senorblanco@chromium.org>
  63089. Reviewed by David Levin.
  63090. Add support for BGRA pixel format to GraphicsContext3D.
  63091. https://bugs.webkit.org/show_bug.cgi?id=43858
  63092. Although this has been standard in desktop GL since 1.2, it's an
  63093. extension in GL ES 2.0, so a query function is provided to check
  63094. for support. Since they differ on semantics (GL ES 2.0 requires
  63095. TexImage2D()'s format and internalFormat to match, while desktop GL
  63096. will not accept BGRA as an internalFormat), the stub implementation
  63097. returns false until these quirks have been implemented and tested on
  63098. each port.
  63099. * platform/graphics/GraphicsContext3D.cpp:
  63100. (WebCore::GraphicsContext3D::supportsBGRA):
  63101. Add implementation for non-chromium platforms which returns false.
  63102. * platform/graphics/GraphicsContext3D.h:
  63103. (WebCore::GraphicsContext3D::):
  63104. Add query function (supportsBGRA()) and the BGRA_EXT token.
  63105. 2010-08-12 Pavel Feldman <pfeldman@chromium.org>
  63106. Not reviewed. Rolling out r65241 and 65243 for breaking inspector tests.
  63107. 2010-08-12 Pavel Feldman <pfeldman@chromium.org>
  63108. Not reviewed. Adding the file missing in r65241.
  63109. * inspector/front-end/RemoteObject.js: Added.
  63110. (WebInspector.RemoteObjectId):
  63111. (WebInspector.RemoteObject):
  63112. (WebInspector.RemoteObject.fromPrimitiveValue):
  63113. (WebInspector.RemoteObject.fromNode):
  63114. (WebInspector.RemoteObject.fromPayload):
  63115. (WebInspector.RemoteObject.type):
  63116. (WebInspector.RemoteObject.prototype.get objectId):
  63117. (WebInspector.RemoteObject.prototype.get type):
  63118. (WebInspector.RemoteObject.prototype.get description):
  63119. (WebInspector.RemoteObject.prototype.get hasChildren):
  63120. (WebInspector.RemoteObject.prototype.isError):
  63121. (WebInspector.RemoteObject.prototype.getPropertyValueDescriptions):
  63122. (WebInspector.RemoteObject.prototype.getOwnProperties):
  63123. (WebInspector.RemoteObject.prototype.getProperties.remoteObjectBinder):
  63124. (WebInspector.RemoteObjectProperty):
  63125. 2010-08-12 Pavel Feldman <pfeldman@chromium.org>
  63126. Reviewed by Yury Semikhatsky.
  63127. Web Inspector: brush up object proxies, introduce remote object model.
  63128. https://bugs.webkit.org/show_bug.cgi?id=43847
  63129. * WebCore.gypi:
  63130. * WebCore.vcproj/WebCore.vcproj:
  63131. * inspector/front-end/AuditRules.js:
  63132. (WebInspector.AuditRules.CssInHeadRule.prototype.doRun):
  63133. (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun):
  63134. * inspector/front-end/ConsoleView.js:
  63135. (WebInspector.ConsoleView.prototype.doEvalInWindow):
  63136. (WebInspector.ConsoleView.prototype._enterKeyPressed.printResult):
  63137. (WebInspector.ConsoleView.prototype._enterKeyPressed):
  63138. (WebInspector.ConsoleView.prototype._format):
  63139. (WebInspector.ConsoleView.prototype._formatnode):
  63140. (WebInspector.ConsoleView.prototype._formatarray):
  63141. (WebInspector.ConsoleView.prototype._formatAsArrayEntry):
  63142. (WebInspector.ConsoleMessage.prototype._format):
  63143. (WebInspector.ConsoleCommandResult):
  63144. * inspector/front-end/DOMAgent.js:
  63145. (WebInspector.DOMNode):
  63146. * inspector/front-end/ElementsTreeOutline.js:
  63147. (WebInspector.ElementsTreeElement.prototype._createTooltipForNode):
  63148. * inspector/front-end/EventListenersSidebarPane.js:
  63149. * inspector/front-end/InjectedScript.js:
  63150. (injectedScriptConstructor):
  63151. (injectedScriptConstructor.):
  63152. * inspector/front-end/ObjectPropertiesSection.js:
  63153. (WebInspector.ObjectPropertiesSection.prototype.update):
  63154. (WebInspector.ObjectPropertiesSection.prototype.updateProperties):
  63155. (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate):
  63156. (WebInspector.ObjectPropertyTreeElement.prototype.update):
  63157. (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression):
  63158. * inspector/front-end/ObjectProxy.js: Removed.
  63159. * inspector/front-end/PropertiesSidebarPane.js:
  63160. (WebInspector.PropertiesSidebarPane.prototype.update.callback):
  63161. * inspector/front-end/RemoteObject.js: Added.
  63162. (WebInspector.RemoteObjectId):
  63163. (WebInspector.RemoteObject):
  63164. (WebInspector.RemoteObject.fromPrimitiveValue):
  63165. (WebInspector.RemoteObject.fromErrorMessage):
  63166. (WebInspector.RemoteObject.fromNode):
  63167. (WebInspector.RemoteObject.fromPayload):
  63168. (WebInspector.RemoteObject.type):
  63169. (WebInspector.RemoteObject.prototype.get objectId):
  63170. (WebInspector.RemoteObject.prototype.get type):
  63171. (WebInspector.RemoteObject.prototype.get description):
  63172. (WebInspector.RemoteObject.prototype.get hasChildren):
  63173. (WebInspector.RemoteObject.prototype.isError):
  63174. (WebInspector.RemoteObject.prototype.getPropertyValueDescriptions):
  63175. (WebInspector.RemoteObject.prototype.getOwnProperties):
  63176. (WebInspector.RemoteObject.prototype.getProperties.remoteObjectBinder):
  63177. (WebInspector.RemoteObjectProperty):
  63178. * inspector/front-end/ScopeChainSidebarPane.js:
  63179. (WebInspector.ScopeChainSidebarPane.prototype.update):
  63180. * inspector/front-end/ScriptsPanel.js:
  63181. (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame.updatingCallbackWrapper):
  63182. (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame):
  63183. (WebInspector.ScriptsPanel.prototype.doEvalInCallFrame):
  63184. * inspector/front-end/SourceFrame.js:
  63185. (WebInspector.SourceFrame.prototype._showPopup.evaluateCallback):
  63186. (WebInspector.SourceFrame.prototype._showPopup):
  63187. (WebInspector.SourceFrame.prototype._evalSelectionInCallFrame):
  63188. * inspector/front-end/WatchExpressionsSidebarPane.js:
  63189. (WebInspector.WatchExpressionsSection.prototype.update):
  63190. (WebInspector.WatchExpressionTreeElement.prototype.update):
  63191. * inspector/front-end/WebKit.qrc:
  63192. * inspector/front-end/inspector.html:
  63193. * inspector/front-end/inspector.js:
  63194. (WebInspector.log.logMessage):
  63195. (WebInspector.log):
  63196. * inspector/front-end/utilities.js:
  63197. 2010-08-12 Ben Murdoch <benm@google.com>
  63198. Reviewed by Steve Block.
  63199. V8 code generator does not add V8BindingMacros.h include in all places it is needed
  63200. https://bugs.webkit.org/show_bug.cgi?id=43907
  63201. Adds the V8BindingMacros.h header before using the STRING_TO_V8PARAMETER_EXCEPTION_BLOCK
  63202. macro.
  63203. Build fix so no new tests.
  63204. * bindings/scripts/CodeGeneratorV8.pm: include the header at the right time.
  63205. 2010-08-12 Jeremy Orlow <jorlow@chromium.org>
  63206. Revert for now
  63207. https://bugs.webkit.org/show_bug.cgi?id=43794
  63208. * Android.mk:
  63209. * CMakeLists.txt:
  63210. * GNUmakefile.am:
  63211. * WebCore.exp.in:
  63212. * WebCore.gypi:
  63213. * WebCore.pro:
  63214. * WebCore.vcproj/WebCore.vcproj:
  63215. * WebCore.xcodeproj/project.pbxproj:
  63216. * page/GroupSettings.cpp: Removed.
  63217. * page/GroupSettings.h: Removed.
  63218. * page/PageGroup.cpp:
  63219. (WebCore::PageGroup::PageGroup):
  63220. (WebCore::PageGroup::localStorage):
  63221. * page/PageGroup.h:
  63222. * page/Settings.cpp:
  63223. (WebCore::Settings::Settings):
  63224. (WebCore::Settings::setLocalStorageQuota):
  63225. (WebCore::Settings::setLocalStorageDatabasePath):
  63226. * page/Settings.h:
  63227. (WebCore::Settings::localStorageQuota):
  63228. (WebCore::Settings::localStorageDatabasePath):
  63229. 2010-08-12 Nikolas Zimmermann <nzimmermann@rim.com>
  63230. Not reviewed. Follow up to Jeremys fix, just remove the context parameter, it's not needed anymore.
  63231. * rendering/RenderSVGResourceGradient.cpp:
  63232. (WebCore::createMaskAndSwapContextForTextGradient):
  63233. * rendering/RenderSVGResourceMasker.cpp:
  63234. (WebCore::RenderSVGResourceMasker::applyResource):
  63235. * rendering/SVGImageBufferTools.cpp:
  63236. (WebCore::SVGImageBufferTools::createImageBuffer):
  63237. * rendering/SVGImageBufferTools.h:
  63238. 2010-08-12 Jeremy Orlow <jorlow@chromium.org>
  63239. Build fix.
  63240. * rendering/SVGImageBufferTools.cpp:
  63241. (WebCore::SVGImageBufferTools::createImageBuffer):
  63242. 2010-08-12 Nikolas Zimmermann <nzimmermann@rim.com>
  63243. Reviewed by Dirk Schulze.
  63244. SVG masking performance very slow
  63245. https://bugs.webkit.org/show_bug.cgi?id=43622
  63246. Create ImageBuffers only as large as the final rendered size on screen. Only gradient on text on CG handled this correctly so far.
  63247. Refactored the code into a new SVGImageBufferTools class, and use the code from RenderSVGResourceMasker -> makes the IE9 demo SVG dice usable.
  63248. Clippers, Patterns and Filters remain to be converted.
  63249. Test: svg/zoom/page/zoom-mask-with-percentages.svg
  63250. * Android.mk: Add SVGImageBufferTools.* to build.
  63251. * CMakeLists.txt: Ditto.
  63252. * GNUmakefile.am: Ditto.
  63253. * WebCore.gypi: Ditto.
  63254. * WebCore.pro: Ditto.
  63255. * WebCore.xcodeproj/project.pbxproj: Ditto.
  63256. * rendering/RenderSVGAllInOne.cpp: Ditto.
  63257. * rendering/RenderSVGResourceGradient.cpp: Refactored CG gradient specific "create image buffer in absolute coordinates" code into SVGImageBufferTools class.
  63258. (WebCore::createMaskAndSwapContextForTextGradient):
  63259. (WebCore::clipToTextMask):
  63260. (WebCore::RenderSVGResourceGradient::applyResource):
  63261. * rendering/RenderSVGResourceMasker.cpp: Use new SVGImageBufferTools class, to avoid pixelation when zooming and to create image buffers as big as the final rendered size on screen, not more.
  63262. (WebCore::RenderSVGResourceMasker::invalidateClients):
  63263. (WebCore::RenderSVGResourceMasker::applyResource):
  63264. (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
  63265. (WebCore::RenderSVGResourceMasker::calculateMaskContentRepaintRect):
  63266. (WebCore::RenderSVGResourceMasker::resourceBoundingBox):
  63267. * rendering/RenderSVGResourceMasker.h:
  63268. * rendering/SVGImageBufferTools.cpp: Added.
  63269. (WebCore::SVGImageBufferTools::absoluteTransformFromContext):
  63270. (WebCore::SVGImageBufferTools::createImageBuffer):
  63271. (WebCore::SVGImageBufferTools::clipToImageBuffer):
  63272. * rendering/SVGImageBufferTools.h: Added.
  63273. (WebCore::SVGImageBufferTools::SVGImageBufferTools):
  63274. (WebCore::SVGImageBufferTools::~SVGImageBufferTools):
  63275. 2010-08-10 Jeremy Orlow <jorlow@chromium.org>
  63276. Reviewed by Adam Barth.
  63277. Some settings are linked to the PageGroup not the Page. Create a new class for those.
  63278. https://bugs.webkit.org/show_bug.cgi?id=43794
  63279. Since persistient storage is shared between pages, there's no way to modify
  63280. some settings related to it on a per page basis. As such, it's not technically
  63281. correct for these settings to be on the Page's settings. Create a new class
  63282. called GroupSettings, move the 2 group-wide local storage settings there, and
  63283. add a new setting for IndexedDB's path (which is prompting this change).
  63284. No behavior has changed, so no tests.
  63285. * Android.mk:
  63286. * CMakeLists.txt:
  63287. * GNUmakefile.am:
  63288. * WebCore.exp.in:
  63289. * WebCore.gypi:
  63290. * WebCore.pro:
  63291. * WebCore.vcproj/WebCore.vcproj:
  63292. * WebCore.xcodeproj/project.pbxproj:
  63293. * page/PageGroup.cpp:
  63294. (WebCore::PageGroup::PageGroup):
  63295. (WebCore::PageGroup::localStorage):
  63296. * page/PageGroup.h:
  63297. (WebCore::PageGroup::groupSettings):
  63298. * page/Settings.cpp:
  63299. (WebCore::Settings::Settings):
  63300. (WebCore::Settings::setSessionStorageQuota):
  63301. * page/Settings.h:
  63302. 2010-08-12 Benjamin Poulain <benjamin.poulain@nokia.com>
  63303. Reviewed by Simon Hausmann.
  63304. [Qt] Decode images directly to QPixmap
  63305. https://bugs.webkit.org/show_bug.cgi?id=40797
  63306. Use the new API of Qt 4.7 to decode data from the image
  63307. reader directly to QPixmap.
  63308. This allow us to use JDCT_IFAST when decoding jpeg images
  63309. to pixmap, and to decode animated GIF images, while still
  63310. using in-place conversion of color space.
  63311. * platform/graphics/qt/ImageDecoderQt.cpp:
  63312. (WebCore::ImageDecoderQt::setData):
  63313. (WebCore::ImageDecoderQt::internalHandleCurrentImage):
  63314. 2010-07-14 Marcus Bulach <bulach@chromium.org>
  63315. Reviewed by darin@apple.com.
  63316. Removes DontCheckEnums from some IDLs and fixes the corresponding enums.
  63317. https://bugs.webkit.org/show_bug.cgi?id=42278
  63318. This is a follow-up to https://bugs.webkit.org/show_bug.cgi?id=42250: it fixes some IDL/.h and enables generating compile-time checks for enums.
  63319. Tests: idls should generate valid code.
  63320. * dom/Node.h:
  63321. (WebCore::Node::):
  63322. * dom/Node.idl:
  63323. * dom/OverflowEvent.h:
  63324. (WebCore::OverflowEvent::):
  63325. * dom/OverflowEvent.idl:
  63326. * html/FileReader.cpp:
  63327. (WebCore::FileReader::readyState):
  63328. * html/FileReader.h:
  63329. (WebCore::FileReader::):
  63330. * html/FileReader.idl:
  63331. 2010-08-12 Alejandro G. Castro <alex@igalia.com>
  63332. Reviewed by David Levin.
  63333. The #if clause enabling a feature should avoid the all includes of
  63334. the feature
  63335. https://bugs.webkit.org/show_bug.cgi?id=43866
  63336. Modified the position of the guard to avoid including all the
  63337. headers if the feature controlling the guard is not enabled.
  63338. * dom/make_names.pl:
  63339. 2010-08-12 Sheriff Bot <webkit.review.bot@gmail.com>
  63340. Unreviewed, rolling out r65221.
  63341. http://trac.webkit.org/changeset/65221
  63342. https://bugs.webkit.org/show_bug.cgi?id=43896
  63343. Broke snow leopard build. (Requested by dave_levin on
  63344. #webkit).
  63345. * platform/graphics/GraphicsContext3D.cpp:
  63346. * platform/graphics/GraphicsContext3D.h:
  63347. (WebCore::GraphicsContext3D::):
  63348. 2010-08-11 Stephen White <senorblanco@chromium.org>
  63349. Reviewed by David Levin.
  63350. Add support for BGRA pixel format to GraphicsContext3D.
  63351. https://bugs.webkit.org/show_bug.cgi?id=43858
  63352. Although this has been standard in desktop GL since 1.2, it's an
  63353. extension in GL ES 2.0, so a query function is provided to check
  63354. for support. Since they differ on semantics (GL ES 2.0 requires
  63355. TexImage2D()'s format and internalFormat to match, while desktop GL
  63356. will not accept BGRA as an internalFormat), the stub implementation
  63357. returns false until these quirks have been implemented and tested on
  63358. each port.
  63359. * platform/graphics/GraphicsContext3D.cpp:
  63360. (WebCore::GraphicsContext3D::supportsBGRA):
  63361. Add implementation for non-chromium platforms which returns false.
  63362. * platform/graphics/GraphicsContext3D.h:
  63363. (WebCore::GraphicsContext3D::):
  63364. Add query function (supportsBGRA()) and the BGRA_EXT token.
  63365. 2010-08-11 Satish Sampath <satish@chromium.org>
  63366. Reviewed by Kent Tamura.
  63367. Handle clicks and recognition events for the speech input button
  63368. https://bugs.webkit.org/show_bug.cgi?id=43857
  63369. * rendering/RenderInputSpeech.cpp:
  63370. (WebCore::RenderInputSpeech::paintInputFieldSpeechButton): Selects the image based on current state.
  63371. * rendering/TextControlInnerElements.cpp:
  63372. (WebCore::InputFieldSpeechButtonElement::InputFieldSpeechButtonElement):
  63373. (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
  63374. (WebCore::InputFieldSpeechButtonElement::set_state): Switch to a new state and update the UI.
  63375. (WebCore::InputFieldSpeechButtonElement::didCompleteRecording):
  63376. (WebCore::InputFieldSpeechButtonElement::didCompleteRecognition):
  63377. * rendering/TextControlInnerElements.h:
  63378. (WebCore::InputFieldSpeechButtonElement::):
  63379. (WebCore::InputFieldSpeechButtonElement::state):
  63380. 2010-08-11 Fumitoshi Ukai <ukai@chromium.org>
  63381. Reviewed by Alexey Proskuryakov.
  63382. REGRESSION(65135): format specifier warnings
  63383. https://bugs.webkit.org/show_bug.cgi?id=43876
  63384. * websockets/WebSocketChannel.cpp:
  63385. (WebCore::WebSocketChannel::appendToBuffer): cast size_t to unsigned long for %lu.
  63386. (WebCore::WebSocketChannel::processBuffer): cast size_t to unsigned long for %lu.
  63387. 2010-08-11 Kevin Ollivier <kevino@theolliviers.com>
  63388. [wx] Build fix, don't generate WebDOMEventTarget.h/.cpp as we use the ones in bindings/cpp.
  63389. * DerivedSources.make:
  63390. 2010-08-11 Tony Gentilcore <tonyg@chromium.org>
  63391. Reviewed by Adam Barth.
  63392. Make PendingScript copyable so that it can be stored in containers
  63393. https://bugs.webkit.org/show_bug.cgi?id=43875
  63394. This will be useful for storing PendingScripts in a Vector or Deque for
  63395. async and defer scripts.
  63396. No new tests because no functional changes.
  63397. * dom/PendingScript.h:
  63398. (WebCore::PendingScript::PendingScript):
  63399. (WebCore::PendingScript::operator=):
  63400. 2010-08-11 Victoria Kirst <vrk@google.com>
  63401. Reviewed by David Levin.
  63402. Fixing a regression in the UI for Mac default audio/video controls.
  63403. https://bugs.webkit.org/show_bug.cgi?id=43750
  63404. * rendering/RenderThemeChromiumMac.h:
  63405. * rendering/RenderThemeChromiumMac.mm:
  63406. (WebCore::RenderThemeChromiumMac::paintMediaVolumeSliderContainer):
  63407. (WebCore::RenderThemeChromiumMac::paintMediaSliderThumb):
  63408. (WebCore::RenderThemeChromiumMac::volumeSliderOffsetFromMuteButton):
  63409. 2010-08-11 Adam Barth <abarth@webkit.org>
  63410. Reviewed by Eric Seidel.
  63411. HTML TreeBuilder hits ASSERT in fragment case with insertAdjacentHTML and colgroup
  63412. https://bugs.webkit.org/show_bug.cgi?id=43758
  63413. This patch conditionalizes some LegacyHTMLTreeBuilder-specific code in
  63414. HTMLElement::createContextualFragment that interferes with the new
  63415. HTMLTreeBuilder. Doing that exposes the above ASSERT, which I've fixed
  63416. in this patch too. Fixing that ASSERT involved a small refactoring in
  63417. ExternalCharacterTokenBuffer.
  63418. * html/HTMLElement.cpp:
  63419. (WebCore::HTMLElement::createContextualFragment):
  63420. * html/HTMLTreeBuilder.cpp:
  63421. (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::skipLeadingWhitespace):
  63422. (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeLeadingWhitespace):
  63423. (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeLeadingNonWhitespace):
  63424. (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::skipLeading):
  63425. (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeLeading):
  63426. (WebCore::HTMLTreeBuilder::processCharacterBuffer):
  63427. 2010-08-11 Adam Barth <abarth@webkit.org>
  63428. Reviewed by Eric Seidel.
  63429. Conditionalize wrong fragment parsing code to pass more HTML5lib tests
  63430. https://bugs.webkit.org/show_bug.cgi?id=43877
  63431. This code exists to support the LegacyHTMLTreeBuilder. Unfortunately,
  63432. it causes problems for the new HTMLTreeBuilder (which is more
  63433. self-contained).
  63434. * dom/Element.cpp:
  63435. (WebCore::Element::createContextualFragment):
  63436. 2010-08-11 Ryosuke Niwa <rniwa@webkit.org>
  63437. Reviewed by Tony Chang.
  63438. Can't unbold text in div in font-weight span
  63439. https://bugs.webkit.org/show_bug.cgi?id=26871
  63440. The bug was caused by removeInlineStyle not being able to include styled inline nodes around the start.
  63441. Solved this problem by pushing down all inline styles instead of just text-decorations.
  63442. This approach allows removeInlineStyle to remove styled ancestors properly and generates compact markups.
  63443. Test: editing/style/push-down-inline-styles.html
  63444. * editing/ApplyStyleCommand.cpp:
  63445. (WebCore::ApplyStyleCommand::removeCSSStyle): No longer removes attributes or node when mode == RemoveNone.
  63446. (WebCore::ApplyStyleCommand::highestAncestorWithConflictingInlineStyle): Calls shouldRemoveInlineStyleFromElement
  63447. to determine the highest ancestor whose style needs to be pushed down.
  63448. (WebCore::ApplyStyleCommand::extractInlineStyleToPushDown): Renamed from extractTextDecorationStyle.
  63449. Extracts all inline CSS properties specified instead of just text decorations.
  63450. (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown): Renamed from applyTextDecorationStyle.
  63451. Applies inline styles using addInlineStyleIfNeeded or adds inline CSS values.
  63452. (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): Renamed from pushDownTextDecorationStyleAroundNode.
  63453. (WebCore::ApplyStyleCommand::removeInlineStyle): Calls pushDownTextDecorationStyleAroundNode.
  63454. * editing/ApplyStyleCommand.h:
  63455. * editing/DeleteSelectionCommand.cpp:
  63456. (WebCore::DeleteSelectionCommand::mergeParagraphs): Prevents moveParagraph from preserving
  63457. the style of an empty paragraph when merged with the previous paragraph because we don't use that style anyways.
  63458. 2010-08-11 Julien Chaffraix <jchaffraix@codeaurora.org>
  63459. Reviewed by Ariya Hidayat.
  63460. Remove dead code in CSSStyleSelector.
  63461. https://bugs.webkit.org/show_bug.cgi?id=43805
  63462. * css/CSSStyleSelector.cpp: Remove some debugging code that
  63463. was compiled out.
  63464. 2010-08-11 Chris Fleizach <cfleizach@apple.com>
  63465. Reviewed by Beth Dakin.
  63466. AX: isNativeCheckbox does not work as advertised
  63467. https://bugs.webkit.org/show_bug.cgi?id=43872
  63468. Test: platform/mac/accessibility/native-vs-nonnative-checkboxes.html
  63469. * accessibility/AccessibilityRenderObject.cpp:
  63470. (WebCore::AccessibilityRenderObject::isInputImage):
  63471. Only say it's an input image if its role has not been overriden
  63472. (WebCore::AccessibilityRenderObject::isNativeCheckboxOrRadio):
  63473. * dom/InputElement.h:
  63474. Add methods to query if it's a checkbox or radio button type element.
  63475. * html/HTMLInputElement.h:
  63476. (WebCore::HTMLInputElement::isCheckbox):
  63477. 2010-08-11 Kenneth Russell <kbr@google.com>
  63478. Reviewed by David Levin.
  63479. Remove obsolete WebGLArray type names
  63480. https://bugs.webkit.org/show_bug.cgi?id=43885
  63481. Deleted aliases to obsolete WebGLArray type names. Updated
  63482. affected layout tests, synchronizing them with the versions in the
  63483. Khronos repository where appropriate. Ran all layout tests.
  63484. * bindings/js/JSDOMWindowCustom.cpp:
  63485. * page/DOMWindow.idl:
  63486. 2010-08-11 Steve Block <steveblock@google.com>
  63487. Reviewed by David Levin.
  63488. [chromium] Geolocation breaks the compile if ENABLE_GEOLOCATION is set to 0
  63489. https://bugs.webkit.org/show_bug.cgi?id=43753
  63490. This change guards the entire contents of the V8 custom bindings files
  63491. with ENABLE(GEOLOCATION) to match JSC.
  63492. No new tests, build fix only.
  63493. * bindings/v8/custom/V8CustomPositionCallback.cpp:
  63494. * bindings/v8/custom/V8CustomPositionErrorCallback.cpp:
  63495. * bindings/v8/custom/V8GeolocationCustom.cpp:
  63496. 2010-08-11 Kwang Yul Seo <skyul@company100.net>
  63497. Reviewed by David Levin.
  63498. Include <wtf/UnusedParam.h> in GraphicsContextSkia.cpp
  63499. https://bugs.webkit.org/show_bug.cgi?id=43843
  63500. wtf/UnusedParam.h must be included because UNUSED_PARAM macro is used.
  63501. * platform/graphics/skia/GraphicsContextSkia.cpp:
  63502. 2010-08-11 Nico Weber <thakis@chromium.org>
  63503. Reviewed by David Levin.
  63504. [chromium/mac]: Fix colors in compositing mode
  63505. https://bugs.webkit.org/show_bug.cgi?id=43823
  63506. The textures are drawn by opengl, which doesn't do any color space
  63507. correction -- it assumes everything is in the device color space
  63508. already. Hence, when drawing into the memory that will be uploaded
  63509. as opengl texture, use the device color space.
  63510. * platform/graphics/chromium/ImageLayerChromium.cpp:
  63511. (WebCore::ImageLayerChromium::updateTextureContents):
  63512. * platform/graphics/chromium/LayerChromium.cpp:
  63513. (WebCore::LayerChromium::updateTextureContents):
  63514. * platform/graphics/chromium/LayerRendererChromium.cpp:
  63515. (WebCore::LayerRendererChromium::setRootLayerCanvasSize):
  63516. 2010-08-11 Kenneth Russell <kbr@google.com>
  63517. Reviewed by Dimitri Glazkov.
  63518. Remove obsolete texImage2D and texSubImage2D entry points
  63519. https://bugs.webkit.org/show_bug.cgi?id=40320
  63520. No new tests; covered by existing WebGL tests.
  63521. * html/canvas/WebGLRenderingContext.cpp:
  63522. * html/canvas/WebGLRenderingContext.h:
  63523. * html/canvas/WebGLRenderingContext.idl:
  63524. 2010-08-11 Gavin Barraclough <barraclough@apple.com>
  63525. Windows build fix.
  63526. * platform/win/BString.cpp:
  63527. (WebCore::BString::BString):
  63528. 2010-08-11 Gavin Barraclough <barraclough@apple.com>
  63529. Qt build fix II.
  63530. * WebCore.xcodeproj/project.pbxproj:
  63531. * bridge/qt/qt_runtime.cpp:
  63532. (JSC::Bindings::convertValueToQVariant):
  63533. 2010-08-11 Gavin Barraclough <barraclough@apple.com>
  63534. Qt build fix.
  63535. * WebCore.xcodeproj/project.pbxproj:
  63536. * bridge/qt/qt_runtime.cpp:
  63537. (JSC::Bindings::convertValueToQVariant):
  63538. 2010-08-11 Steve Block <steveblock@google.com>
  63539. Reviewed by Jeremy Orlow.
  63540. Need EmptyDeviceOrientationClient and EmptyDeviceMotionClient for use with SVGImage
  63541. https://bugs.webkit.org/show_bug.cgi?id=43848
  63542. Tested by existing DeviceOrientation tests.
  63543. * loader/EmptyClients.h:
  63544. (WebCore::EmptyDeviceMotionClient::setController):
  63545. (WebCore::EmptyDeviceMotionClient::startUpdating):
  63546. (WebCore::EmptyDeviceMotionClient::stopUpdating):
  63547. (WebCore::EmptyDeviceMotionClient::currentDeviceMotion):
  63548. (WebCore::EmptyDeviceOrientationClient::setController):
  63549. (WebCore::EmptyDeviceOrientationClient::startUpdating):
  63550. (WebCore::EmptyDeviceOrientationClient::stopUpdating):
  63551. (WebCore::EmptyDeviceOrientationClient::lastOrientation):
  63552. * svg/graphics/SVGImage.cpp:
  63553. (WebCore::SVGImage::dataChanged):
  63554. 2010-08-11 Rob Buis <rwlbuis@gmail.com>
  63555. Reviewed by Dan Bernstein.
  63556. https://bugs.webkit.org/show_bug.cgi?id=42042
  63557. An empty value for xml:lang isn't considered
  63558. Revert last line change of my patch ; it happens to
  63559. behave correctly and same as before, but makes the
  63560. use case of empty values unneededly slower.
  63561. No new tests. (No change in behavior)
  63562. * css/CSSStyleSelector.cpp:
  63563. (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
  63564. 2010-08-11 Kevin Ollivier <kevino@theolliviers.com>
  63565. [wx, WebDOM] Build fix. Fix callback params and WebCore::String -> WTF::String fixes.
  63566. * bindings/cpp/WebDOMCustomVoidCallback.cpp: Added.
  63567. (WebDOMCustomVoidCallback::WebDOMCustomVoidCallback):
  63568. (WebDOMCustomVoidCallback::~WebDOMCustomVoidCallback):
  63569. (WebDOMCustomVoidCallback::handleEvent):
  63570. (toWebCore):
  63571. * bindings/cpp/WebDOMCustomVoidCallback.h: Added.
  63572. (WebDOMCustomVoidCallback::create):
  63573. * bindings/cpp/WebDOMHTMLDocumentCustom.cpp:
  63574. (documentWrite):
  63575. * bindings/cpp/WebDOMString.cpp:
  63576. (WebDOMString::equals):
  63577. * bindings/scripts/CodeGeneratorCPP.pm:
  63578. * bindings/scripts/test/CPP/WebDOMTestCallback.cpp:
  63579. (WebDOMTestCallback::callbackWithClass1Param):
  63580. (WebDOMTestCallback::callbackWithClass2Param):
  63581. (WebDOMTestCallback::callbackWithNonBoolReturnType):
  63582. * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
  63583. * bindings/scripts/test/V8/V8TestInterface.h:
  63584. * bindings/scripts/test/V8/V8TestObj.h:
  63585. * wscript:
  63586. 2010-08-11 Gavin Barraclough <barraclough@apple.com>
  63587. Rubber stamps by Darin Adler & Sam Weinig.
  63588. Bug 43867 - Some UString cleanup
  63589. Change JSC::UString data(), size(), and from(), to characters(), length(), and number() to match WTF::String.
  63590. Move string concatenation methods to a new header to simplify down UString.h. Remove is8Bit().
  63591. * WebCore.xcodeproj/project.pbxproj:
  63592. * bindings/js/JSCSSStyleDeclarationCustom.cpp:
  63593. (WebCore::hasCSSPropertyNamePrefix):
  63594. (WebCore::cssPropertyName):
  63595. * bindings/js/JSLocationCustom.cpp:
  63596. (WebCore::JSLocation::setPort):
  63597. * bindings/js/ScriptDebugServer.cpp:
  63598. (WebCore::ScriptDebugServer::dispatchDidParseSource):
  63599. * bindings/js/ScriptString.h:
  63600. (WebCore::ScriptString::size):
  63601. * bindings/js/ScriptValue.cpp:
  63602. (WebCore::jsToInspectorValue):
  63603. * bindings/objc/WebScriptObject.mm:
  63604. (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
  63605. * bridge/jni/jni_jsobject.mm:
  63606. (JavaJSObject::convertValueToJObject):
  63607. * bridge/jni/jsc/JNIUtilityPrivate.cpp:
  63608. (JSC::Bindings::convertArrayInstanceToJavaArray):
  63609. (JSC::Bindings::convertValueToJValue):
  63610. * bridge/objc/objc_runtime.mm:
  63611. (JSC::Bindings::callObjCFallbackObject):
  63612. 2010-08-10 David Hyatt <hyatt@apple.com>
  63613. Reviewed by Dan Bernstein.
  63614. https://bugs.webkit.org/show_bug.cgi?id=43806, add ability to paginate screen content.
  63615. Add a new boolean to Document to indicate that content should be paginated. This is checked when doing page breaks
  63616. and in a couple of other cases.
  63617. * dom/Document.cpp:
  63618. (WebCore::Document::Document):
  63619. * dom/Document.h:
  63620. (WebCore::Document::paginatedForScreen):
  63621. (WebCore::Document::setPaginatedForScreen):
  63622. (WebCore::Document::paginated):
  63623. * rendering/RenderBlock.cpp:
  63624. (WebCore::RenderBlock::paintChildren):
  63625. (WebCore::RenderBlock::calcColumnWidth):
  63626. * rendering/RenderBox.cpp:
  63627. (WebCore::RenderBox::calcHeight):
  63628. * rendering/RenderView.cpp:
  63629. (WebCore::RenderView::paint):
  63630. 2010-08-11 Adam Barth <abarth@webkit.org>
  63631. Windows build fix. Turns out we need to unconditionally include
  63632. HTMLEntityNames.cpp now that LegacyHTMLDocumentParser doesn't exist.
  63633. * html/HTMLEntityParser.cpp:
  63634. 2010-08-11 Eric Carlson <eric.carlson@apple.com>
  63635. Reviewed by Darin Adler.
  63636. Inserting a <source> element should immediately set networkState to NETWORK_NO_SOURCE.
  63637. https://bugs.webkit.org/show_bug.cgi?id=42897
  63638. A <source> element inserted as a child of a media element with a networkState of NETWORK_EMPTY
  63639. should cause the networkState to immediately change to NETWORK_NO_SOURCE.
  63640. * WebCore.xcodeproj/project.pbxproj:
  63641. * html/HTMLMediaElement.cpp:
  63642. (WebCore::HTMLMediaElement::HTMLMediaElement): Remove unused variable m_processingLoad.
  63643. (WebCore::HTMLMediaElement::prepareForLoad): Set m_networkState to NETWORK_NO_SOURCE.
  63644. (WebCore::HTMLMediaElement::loadInternal): Remove unused variable m_processingLoad.
  63645. (WebCore::HTMLMediaElement::selectMediaResource): No need to change m_networkState, it was done in prepareForLoad.
  63646. * html/HTMLMediaElement.h:
  63647. * html/HTMLSourceElement.cpp:
  63648. (WebCore::HTMLSourceElement::insertedIntoTree): Renamed from insertedIntoDocument because we want
  63649. to do this setup whether or not the parent media element is in the document.
  63650. * html/HTMLSourceElement.h:
  63651. 2010-08-11 Adam Barth <abarth@webkit.org>
  63652. Rubber-stamped by Eric Seidel.
  63653. Delete LegacyHTMLDocumentParser and LegacyPreloadScanner
  63654. https://bugs.webkit.org/show_bug.cgi?id=43836
  63655. These classes are bit-rotting disturbingly quickly. We removed the
  63656. last dependencies on these classes and so we can remove them.
  63657. We might need to preserve some of their particular quirks to handle
  63658. some legacy applications, but our current thinking is to do that with
  63659. individual settings that affect the new parser.
  63660. * Android.mk:
  63661. * CMakeLists.txt:
  63662. * GNUmakefile.am:
  63663. * WebCore.gypi:
  63664. * WebCore.pro:
  63665. * WebCore.vcproj/WebCore.vcproj:
  63666. * WebCore.xcodeproj/project.pbxproj:
  63667. * dom/Document.cpp:
  63668. * dom/DocumentFragment.cpp:
  63669. (WebCore::DocumentFragment::parseHTML):
  63670. * dom/DocumentParser.h:
  63671. * dom/XMLDocumentParserLibxml2.cpp:
  63672. * dom/XMLDocumentParserQt.cpp:
  63673. * html/HTMLConstructionSite.cpp:
  63674. * html/HTMLDocument.cpp:
  63675. (WebCore::HTMLDocument::createParser):
  63676. * html/HTMLEntityParser.cpp:
  63677. (WebCore::decodeNamedEntity):
  63678. * html/HTMLEntityParser.h:
  63679. * html/HTMLFormControlElement.cpp:
  63680. * html/HTMLTreeBuilder.cpp:
  63681. * html/HTMLViewSourceDocument.cpp:
  63682. (WebCore::HTMLViewSourceDocument::createParser):
  63683. * html/LegacyHTMLDocumentParser.cpp: Removed.
  63684. * html/LegacyHTMLDocumentParser.h: Removed.
  63685. * html/LegacyHTMLTreeBuilder.cpp:
  63686. * html/LegacyPreloadScanner.cpp: Removed.
  63687. * html/LegacyPreloadScanner.h: Removed.
  63688. * loader/FTPDirectoryDocument.cpp:
  63689. (WebCore::FTPDirectoryDocumentParser::FTPDirectoryDocumentParser):
  63690. (WebCore::FTPDirectoryDocumentParser::appendEntry):
  63691. (WebCore::FTPDirectoryDocumentParser::createTDForFilename):
  63692. (WebCore::processFilesizeString):
  63693. (WebCore::wasLastDayOfMonth):
  63694. (WebCore::processFileDateString):
  63695. (WebCore::FTPDirectoryDocumentParser::parseAndAppendOneLine):
  63696. (WebCore::FTPDirectoryDocumentParser::loadDocumentTemplate):
  63697. (WebCore::FTPDirectoryDocumentParser::createBasicDocument):
  63698. (WebCore::FTPDirectoryDocumentParser::append):
  63699. (WebCore::FTPDirectoryDocumentParser::finish):
  63700. * page/XSSAuditor.cpp:
  63701. (WebCore::XSSAuditor::decodeHTMLEntities):
  63702. * page/XSSAuditor.h:
  63703. * platform/text/SegmentedString.cpp:
  63704. (WebCore::SegmentedString::prepend):
  63705. 2010-08-11 Chris Jerdonek <cjerdonek@webkit.org>
  63706. Reviewed by Adam Barth.
  63707. Refactored FrameLoader::createWindow() out of the FrameLoader class
  63708. since FrameLoader should not be responsible for creating windows.
  63709. https://bugs.webkit.org/show_bug.cgi?id=39156
  63710. No new functionality, so no new tests.
  63711. * bindings/generic/BindingDOMWindow.h:
  63712. (WebCore::::createWindow):
  63713. - Updated the call to FrameLoader's createWindow().
  63714. * bindings/js/JSDOMWindowCustom.cpp:
  63715. (WebCore::createWindow):
  63716. - Updated the call to FrameLoader's createWindow().
  63717. * loader/FrameLoader.cpp:
  63718. (WebCore::createWindowFromFrameLoader):
  63719. - Made FrameLoader::createWindow() non-member, non-friend and changed it
  63720. to accept Frame* parameters instead of FrameLoader*.
  63721. * loader/FrameLoader.h:
  63722. - Updated the header file to reflect the above change to FrameLoader.cpp.
  63723. 2010-08-11 Ilya Tikhonovsky <loislo@chromium.org>
  63724. Reviewed by Pavel Feldman.
  63725. WebInspector: small refactoring for CodeGeneratorInspector.
  63726. all "notify" methods are generating in InspectorFrontend
  63727. the other methods are generating in InspectorBackend.
  63728. https://bugs.webkit.org/show_bug.cgi?id=43849
  63729. * inspector/CodeGeneratorInspector.pm:
  63730. 2010-08-11 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
  63731. Reviewed by Xan Lopez.
  63732. [GTK] Misc improvements to the scrolling code
  63733. https://bugs.webkit.org/show_bug.cgi?id=41926
  63734. Refactor code that uses deprecated ways of dealing with the
  63735. adjustments to use the GtkVersioning infrastructure.
  63736. * GNUmakefile.am:
  63737. * platform/gtk/GtkVersioning.cpp: Added.
  63738. * platform/gtk/GtkVersioning.h:
  63739. * platform/gtk/ScrollViewGtk.cpp:
  63740. * platform/gtk/ScrollbarGtk.cpp:
  63741. (ScrollbarGtk::detachAdjustment):
  63742. (ScrollbarGtk::updateThumbPosition):
  63743. (ScrollbarGtk::updateThumbProportion):
  63744. 2010-08-11 Nate Chapin <japhet@chromium.org>
  63745. Chromium mac build fix (variables weren't being initialized).
  63746. * platform/graphics/filters/FEGaussianBlur.cpp:
  63747. (WebCore::FEGaussianBlur::apply): Initalize dxLeft, dxRight, dyLeft, dyRight.
  63748. 2010-08-11 Pavel Feldman <pfeldman@chromium.org>
  63749. Reviewed by Yury Semikhatsky.
  63750. Web Inspector: apply correct fix to storage panel status bar buttons.
  63751. https://bugs.webkit.org/show_bug.cgi?id=43846
  63752. * inspector/front-end/DatabaseTableView.js:
  63753. (WebInspector.DatabaseTableView.prototype.get statusBarItems):
  63754. * inspector/front-end/StoragePanel.js:
  63755. (WebInspector.StoragePanel.prototype._genericViewSetup):
  63756. 2010-08-11 Kevin Ollivier <kevino@theolliviers.com>
  63757. Reviewed by Adam Barth.
  63758. Override operator= for C++ DOM binding classes with private structs
  63759. and update C++ DOM bindings test results.
  63760. https://bugs.webkit.org/show_bug.cgi?id=43735
  63761. * bindings/cpp/WebDOMEventTarget.cpp:
  63762. (WebDOMEventTarget::operator=):
  63763. * bindings/cpp/WebDOMEventTarget.h:
  63764. * bindings/scripts/CodeGeneratorCPP.pm:
  63765. * bindings/scripts/test/CPP/WebDOMTestCallback.cpp:
  63766. (WebDOMTestCallback::operator=):
  63767. * bindings/scripts/test/CPP/WebDOMTestCallback.h:
  63768. * bindings/scripts/test/CPP/WebDOMTestInterface.cpp:
  63769. (WebDOMTestInterface::operator=):
  63770. * bindings/scripts/test/CPP/WebDOMTestInterface.h:
  63771. * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
  63772. (WebDOMTestObj::operator=):
  63773. * bindings/scripts/test/CPP/WebDOMTestObj.h:
  63774. 2010-08-11 Julie Parent <jparent@chromium.org>
  63775. Reviewed by Justin Garcia.
  63776. Crash in replaceSelectionCommand with RTL text.
  63777. https://bugs.webkit.org/show_bug.cgi?id=41485
  63778. For text with mixed directionality, sort the text boxes before
  63779. computing gaps, since that code assumes the boxes are in order.
  63780. Test: editing/execCommand/insert-image-on-top-of-directional-text.html
  63781. * editing/CompositeEditCommand.cpp:
  63782. (WebCore::CompositeEditCommand::deleteInsignificantText): Sort boxes
  63783. like we do in TextIterator before computing gaps.
  63784. * editing/TextIterator.cpp:
  63785. (WebCore::TextIterator::handleTextNode): Use new compareByStart
  63786. rather than compareBoxStart. No functional change.
  63787. * rendering/InlineTextBox.h:
  63788. (WebCore::InlineTextBox::compareByStart): Moved compareBoxStart
  63789. from TextIterator here so it can be used in multiple places.
  63790. 2010-08-11 Fumitoshi Ukai <ukai@chromium.org>
  63791. Unreviewed build fix of Leopard Intel Debug (Build)
  63792. * websockets/WebSocketChannel.cpp:
  63793. (WebCore::WebSocketChannel::processBuffer): use %lu, instead of %ul
  63794. 2010-08-11 Alejandro G. Castro <alex@igalia.com>
  63795. Reviewed by Dirk Schulze.
  63796. Fixes to the gaussian blur algorithm
  63797. https://bugs.webkit.org/show_bug.cgi?id=41605
  63798. Added the recomendations of SVG regarding the kernel size
  63799. calculation for the approximation of the gaussian
  63800. blur. http://www.w3.org/TR/SVG/filters.html#feGaussianBlurElement.
  63801. Modified also some variable names to clarify algorithm, reviewed
  63802. the situation where both standard deviations are 0.
  63803. * platform/graphics/filters/FEGaussianBlur.cpp:
  63804. (WebCore::FEGaussianBlur::FEGaussianBlur):
  63805. (WebCore::FEGaussianBlur::stdDeviationX):
  63806. (WebCore::FEGaussianBlur::setStdDeviationX):
  63807. (WebCore::FEGaussianBlur::stdDeviationY):
  63808. (WebCore::FEGaussianBlur::setStdDeviationY):
  63809. (WebCore::boxBlur):
  63810. (WebCore::FEGaussianBlur::kernelPosition): Added the SVG kernel
  63811. position recomendation.
  63812. (WebCore::FEGaussianBlur::apply):
  63813. (WebCore::FEGaussianBlur::externalRepresentation):
  63814. * platform/graphics/filters/FEGaussianBlur.h:
  63815. 2010-08-11 Kristian Monsen <kristianm@google.com>
  63816. Reviewed by Steve Block.
  63817. Compile fix for Android, added include for <wtf/text/Cstring.h, this
  63818. did not get included in Android.
  63819. https://bugs.webkit.org/show_bug.cgi?id=41517
  63820. Build fix only, no new tests.
  63821. * page/PrintContext.cpp:
  63822. 2010-08-11 Fumitoshi Ukai <ukai@chromium.org>
  63823. Reviewed by Alexey Proskuryakov.
  63824. Fix length calculation to be more robust.
  63825. https://bugs.webkit.org/show_bug.cgi?id=43777
  63826. Test: websocket/tests/frame-length-overflow.html
  63827. * websockets/WebSocketChannel.cpp:
  63828. (WebCore::WebSocketChannel::appendToBuffer): len is size_t.
  63829. - add sanity check for integer wraps.
  63830. (WebCore::WebSocketChannel::skipBuffer): len is size_t.
  63831. (WebCore::WebSocketChannel::processBuffer): length is size_t.
  63832. - add sanity check for integer wraps.
  63833. * websockets/WebSocketChannel.h: change m_bufferSize and len to size_t.
  63834. 2010-08-10 Eric Seidel <eric@webkit.org>
  63835. Reviewed by Adam Barth.
  63836. Fix three ASSERTs hit with the HTML5 TreeBuilder in fragment mode
  63837. https://bugs.webkit.org/show_bug.cgi?id=43762
  63838. In fixing the insertAdjacentHTML I had to make small changes to
  63839. the error logic, which ended up bringing us closer to HTML5.
  63840. Test: fast/dom/HTMLElement/insertAdjacentHTML-errors.html
  63841. * html/HTMLConstructionSite.cpp:
  63842. (WebCore::HTMLConstructionSite::attach):
  63843. - This ASSERT was just wrong, the child should not be attached
  63844. in the case the parent is not attached.
  63845. * html/HTMLElement.cpp:
  63846. (WebCore::contextElementForInsertion):
  63847. - This is part of HTML5, needed to know what to call the
  63848. HTML or XML parsers with. The previous code always passed
  63849. "this" which is wrong in the case of beforeBegin or afterEnd insertion.
  63850. (WebCore::HTMLElement::insertAdjacentHTML):
  63851. - Use the right contextElement now that we know how to compute it.
  63852. * html/HTMLTreeBuilder.cpp:
  63853. (WebCore::HTMLTreeBuilder::processEndTagForInCell):
  63854. - This ASSERT is direct from the spec, but it's wrong, so I've filed a spec bug.
  63855. 2010-08-11 Adam Barth <abarth@webkit.org>
  63856. Attempt to fix Windows build.
  63857. * platform/win/COMPtr.h:
  63858. (WTF::):
  63859. 2010-08-11 Adam Barth <abarth@webkit.org>
  63860. Reviewed by Eric Seidel.
  63861. Port view-source to new parser
  63862. https://bugs.webkit.org/show_bug.cgi?id=43746
  63863. This patch switches the view-source mode for frames over to using the
  63864. new HTML parsing infrastructure. This patch is an architectural change
  63865. to how we parser view source documents.
  63866. Previously, the LegacyHTMLDocumentParser would output a "guide string"
  63867. that consided of the inter-attribute whitespace and various "control"
  63868. characters. The HTMLViewSourceDocument would then interpret this guide
  63869. string to approximately reconstruct the source of the original document
  63870. and colorize various syntatic constructs.
  63871. Unfortunately, that approach is inherently low-fidelity. It's not
  63872. really feasible to reconstruct the input document from the token
  63873. stream. The old view source mode also had a number of hacks in the old
  63874. parser (e.g., to turn of decoding of HTML entities).
  63875. Instead of trying to reconstruct the original document from the token
  63876. stream, we use the segmentation information given by the tokens to
  63877. colorize the input document itself. Each token now caries information
  63878. about where in the input stream it came from and where various
  63879. subcomponents (e.g., attribute names and values) are located. This
  63880. approach is higher fidelity because we use this segmentation
  63881. information to colorize the original input instead of attempting to
  63882. reconstruct the original input.
  63883. * Android.mk:
  63884. * CMakeLists.txt:
  63885. * GNUmakefile.am:
  63886. * WebCore.gypi:
  63887. * WebCore.pro:
  63888. * WebCore.vcproj/WebCore.vcproj:
  63889. * WebCore.xcodeproj/project.pbxproj:
  63890. * html/HTMLDocumentParser.cpp:
  63891. * html/HTMLToken.h:
  63892. (WebCore::HTMLToken::clear):
  63893. (WebCore::HTMLToken::startIndex):
  63894. (WebCore::HTMLToken::length):
  63895. (WebCore::HTMLToken::end):
  63896. * html/HTMLViewSourceDocument.cpp:
  63897. (WebCore::HTMLViewSourceDocument::createParser):
  63898. (WebCore::HTMLViewSourceDocument::addSource):
  63899. (WebCore::HTMLViewSourceDocument::processDoctypeToken):
  63900. (WebCore::HTMLViewSourceDocument::processTagToken):
  63901. (WebCore::HTMLViewSourceDocument::processCommentToken):
  63902. (WebCore::HTMLViewSourceDocument::processCharacterToken):
  63903. (WebCore::HTMLViewSourceDocument::addRange):
  63904. * html/HTMLViewSourceDocument.h:
  63905. * html/HTMLViewSourceParser.cpp: Added.
  63906. (WebCore::HTMLViewSourceParser::~HTMLViewSourceParser):
  63907. (WebCore::HTMLViewSourceParser::insert):
  63908. (WebCore::HTMLViewSourceParser::pumpTokenizer):
  63909. (WebCore::HTMLViewSourceParser::append):
  63910. (WebCore::HTMLViewSourceParser::sourceForToken):
  63911. (WebCore::HTMLViewSourceParser::updateTokenizerState):
  63912. (WebCore::HTMLViewSourceParser::finish):
  63913. (WebCore::HTMLViewSourceParser::finishWasCalled):
  63914. * html/HTMLViewSourceParser.h: Added.
  63915. (WebCore::HTMLViewSourceParser::HTMLViewSourceParser):
  63916. (WebCore::HTMLViewSourceParser::document):
  63917. * html/LegacyHTMLDocumentParser.cpp:
  63918. (WebCore::LegacyHTMLDocumentParser::processToken):
  63919. (WebCore::LegacyHTMLDocumentParser::processDoctypeToken):
  63920. 2010-08-11 Yoshiki Hayashi <yhayashi@google.com>
  63921. Reviewed by Shinichiro Hamaji.
  63922. Make form controls, textarea, legend and datagrid treat width:
  63923. auto as specified in stretching vertical flexbox. Otherwise it's
  63924. treated as intrinsic as before.
  63925. https://bugs.webkit.org/show_bug.cgi?id=17918
  63926. Test: fast/flexbox/vertical-box-form-controls.html
  63927. * css/CSSStyleSelector.cpp:
  63928. (WebCore::CSSStyleSelector::adjustRenderStyle):
  63929. * rendering/RenderBox.cpp:
  63930. (WebCore::RenderBox::sizesToIntrinsicWidth):
  63931. 2010-08-10 Darin Adler <darin@apple.com>
  63932. Reviewed by Sam Weinig.
  63933. Add leakRef and clear to all RefPtr variants
  63934. https://bugs.webkit.org/show_bug.cgi?id=42389
  63935. * platform/win/COMPtr.h: Changed all uses of "template <...>" to instead do
  63936. "template<...>". Defined many of the inlined functions outside the class
  63937. definition, to avoid style checker warnings about multiple statements on
  63938. a single line and for slightly better clarity of the class definition itself.
  63939. Renamed releaseRef to leakRef. Added a releaseRef that calls leakRef so we
  63940. don't have to rename all callers at once. Added a clear function. Changed
  63941. the hash table code so it doesn't need to call releaseRef, and so it uses
  63942. the hash table deleted value hooks already present within the class.
  63943. 2010-08-10 Ariya Hidayat <ariya@sencha.com>
  63944. [Qt] Fix build warning: remove reference to html/BlobRegistryImp.h
  63945. * WebCore.pro:
  63946. 2010-08-10 Alexey Proskuryakov <ap@apple.com>
  63947. Reviewed by Darin Adler.
  63948. https://bugs.webkit.org/show_bug.cgi?id=43803
  63949. <rdar://problem/6988023> Only the last Korean character can be shown if font style is enabled while typing (43803)
  63950. Test: platform/mac/editing/input/bold-node.html
  63951. * editing/Editor.cpp: (WebCore::Editor::setComposition): It is not clear to me what the
  63952. "baseNode == extentNode" check is about in this function , but let's try to make it more
  63953. likely that it passes.
  63954. 2010-08-10 Hayato Ito <hayato@chromium.org>
  63955. Reviewed by Kent Tamura.
  63956. Make CSSSelector::specificity() non-recursive.
  63957. https://bugs.webkit.org/show_bug.cgi?id=43784
  63958. This change is one of the required changes to fix the following master bug:
  63959. https://bugs.webkit.org/show_bug.cgi?id=42806
  63960. No functional change, thus no tests.
  63961. * css/CSSSelector.cpp:
  63962. (WebCore::CSSSelector::specificity):
  63963. (WebCore::CSSSelector::specificityForOneSelector):
  63964. (WebCore::CSSSelector::specificityForPage):
  63965. * css/CSSSelector.h:
  63966. 2010-08-10 Matthew Delaney <mdelaney@apple.com>
  63967. Reviewed by Darin Adler.
  63968. 2d.path.clip.empty.html test is failing
  63969. https://bugs.webkit.org/show_bug.cgi?id=43161
  63970. * platform/graphics/cg/GraphicsContextCG.cpp:
  63971. (WebCore::GraphicsContext::clip):
  63972. Catching the empty path case from being sent directly to
  63973. CGContextClip - which would ignore it. Instead, using
  63974. CGContextClip with a CGRectZero to achieve the desired
  63975. behavior of reducing the clipping region to nothing.
  63976. 2010-08-10 Gyuyoung Kim <gyuyoung.kim@samsung.com>
  63977. Reviewed by Antonio Gomes.
  63978. [EFL] Add video files to enable video in WebKit EFL
  63979. https://bugs.webkit.org/show_bug.cgi?id=43790
  63980. Add files regarding html5 video to CMakeList.txt for WebKit Efl.
  63981. But, this patch is not run html5 video on WebKit EFL yet.
  63982. * CMakeLists.txt: Add files related to html5video.
  63983. * platform/efl/LocalizedStringsEfl.cpp: Add functions for html5 video.
  63984. (WebCore::localizedMediaControlElementString):
  63985. (WebCore::localizedMediaControlElementHelpText):
  63986. (WebCore::localizedMediaTimeDescription):
  63987. * platform/graphics/MediaPlayer.cpp:
  63988. (WebCore::installedMediaEngines): Disable MediaPlayerPrivate::r
  63989. egisterMediaEngine for WebKit EFL.
  63990. 2010-08-10 Patrick Gansterer <paroga@paroga.com>
  63991. Reviewed by Nikolas Zimmermann.
  63992. Add a toRenderSVGImage function
  63993. https://bugs.webkit.org/show_bug.cgi?id=43789
  63994. Add a function for casting to RenderSVGImage and use it.
  63995. * rendering/RenderSVGImage.h:
  63996. (WebCore::toRenderSVGImage):
  63997. * rendering/RenderTreeAsText.cpp:
  63998. (WebCore::write):
  63999. * rendering/SVGRenderTreeAsText.cpp:
  64000. (WebCore::writeSVGImage):
  64001. * rendering/SVGRenderTreeAsText.h:
  64002. * svg/SVGImageElement.cpp:
  64003. (WebCore::SVGImageElement::attach):
  64004. 2010-08-10 Adam Barth <abarth@webkit.org>
  64005. Reviewed by Eric Seidel.
  64006. Clients of HTMLTokenizer should be able to see where characters went in the token
  64007. https://bugs.webkit.org/show_bug.cgi?id=43766
  64008. When viewing the source of a document, we want to colorize different
  64009. parts of the input depending on how they were tokenized. In this
  64010. patch, we expose the internal segmentation of a token by recording the
  64011. start and end offsets for each attribute name and each attribute value.
  64012. * html/HTMLToken.h:
  64013. (WebCore::HTMLToken::addNewAttribute):
  64014. (WebCore::HTMLToken::beginAttributeName):
  64015. (WebCore::HTMLToken::endAttributeName):
  64016. (WebCore::HTMLToken::beginAttributeValue):
  64017. (WebCore::HTMLToken::endAttributeValue):
  64018. (WebCore::HTMLToken::appendToAttributeName):
  64019. (WebCore::HTMLToken::appendToAttributeValue):
  64020. (WebCore::AtomicHTMLToken::AtomicHTMLToken):
  64021. * html/HTMLTokenizer.cpp:
  64022. (WebCore::HTMLTokenizer::nextToken):
  64023. 2010-08-10 Dumitru Daniliuc <dumi@chromium.org>
  64024. Reviewed by David Levin.
  64025. Do not post a sync task to the DB thread if it's terminating.
  64026. https://bugs.webkit.org/show_bug.cgi?id=43676
  64027. * bindings/generic/ActiveDOMCallback.cpp: The context can
  64028. sometimes be NULL. Check if it's NULL instead of asserting that
  64029. it's not.
  64030. (WebCore::ActiveDOMCallback::ActiveDOMCallback):
  64031. * dom/ActiveDOMObject.cpp:
  64032. (WebCore::ActiveDOMObject::ActiveDOMObject):
  64033. * storage/Database.cpp: Do not post a sync task to the DB thread
  64034. if the DB thread is terminating. Also, when a task is destroyed,
  64035. ASSERT that it was completed, or that it had no synchronizer.
  64036. (WebCore::Database::openAndVerifyVersion):
  64037. (WebCore::Database::markAsDeletedAndClose):
  64038. (WebCore::Database::tableNames):
  64039. * storage/DatabaseTask.cpp:
  64040. (WebCore::DatabaseTaskSynchronizer::DatabaseTaskSynchronizer):
  64041. (WebCore::DatabaseTask::~DatabaseTask):
  64042. (WebCore::DatabaseTask::performTask):
  64043. * storage/DatabaseTask.h:
  64044. (WebCore::DatabaseTaskSynchronizer::hasCheckedForTermination):
  64045. (WebCore::DatabaseTaskSynchronizer::setHasCheckedForTermination):
  64046. (WebCore::DatabaseTask::hasSynchronizer):
  64047. (WebCore::DatabaseTask::hasCheckedForTermination):
  64048. * storage/DatabaseThread.cpp:
  64049. (WebCore::DatabaseThread::terminationRequested):
  64050. (WebCore::DatabaseThread::scheduleTask):
  64051. (WebCore::DatabaseThread::scheduleImmediateTask):
  64052. * storage/DatabaseThread.h:
  64053. 2010-08-10 Gavin Barraclough <barraclough@apple.com>
  64054. Qt build fix.
  64055. * bridge/qt/qt_runtime.cpp:
  64056. (JSC::Bindings::convertValueToQVariant):
  64057. 2010-08-10 Jian Li <jianli@chromium.org>
  64058. Fix more build break.
  64059. * bindings/v8/SerializedScriptValue.cpp:
  64060. (WebCore::ZigZag::Reader::readBlob):
  64061. (WebCore::ZigZag::Reader::readFile):
  64062. * dom/ScriptExecutionContext.cpp:
  64063. (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
  64064. (WebCore::ScriptExecutionContext::revokeBlobURL):
  64065. * dom/ScriptExecutionContext.h:
  64066. * html/Blob.cpp:
  64067. (WebCore::Blob::slice):
  64068. 2010-08-10 Gavin Barraclough <barraclough@apple.com>
  64069. Rubber stamped by Sam Weinig
  64070. Bug 43817 - Remove UString::Rep
  64071. UString::Rep has for a long time been replaced by UStringImpl (Rep
  64072. remaining as a typedef). UStringImpl has since been removed too
  64073. (unified with StringImpl). Remove Rep, rename rep() to impl() and
  64074. m_rep to m_impl. Also add impl() method to Identifier, and rename
  64075. its UString member from _ustring to m_string.
  64076. * bindings/js/JSDOMBinding.cpp:
  64077. (WebCore::findAtomicString):
  64078. * bindings/js/JSDOMBinding.h:
  64079. (WebCore::ustringToString):
  64080. (WebCore::identifierToString):
  64081. (WebCore::ustringToAtomicString):
  64082. (WebCore::identifierToAtomicString):
  64083. * bindings/js/SerializedScriptValue.h:
  64084. (WebCore::SerializedScriptValueData::SerializedScriptValueData):
  64085. * bridge/IdentifierRep.cpp:
  64086. (WebCore::IdentifierRep::get):
  64087. * bridge/c/c_class.cpp:
  64088. (JSC::Bindings::CClass::methodsNamed):
  64089. (JSC::Bindings::CClass::fieldNamed):
  64090. * bridge/jni/jsc/JavaClassJSC.cpp:
  64091. (JavaClass::JavaClass):
  64092. (JavaClass::methodsNamed):
  64093. (JavaClass::fieldNamed):
  64094. * bridge/jni/jsc/JavaStringJSC.h:
  64095. (JSC::Bindings::JavaStringImpl::~JavaStringImpl):
  64096. (JSC::Bindings::JavaStringImpl::init):
  64097. (JSC::Bindings::JavaStringImpl::UTF8String):
  64098. (JSC::Bindings::JavaStringImpl::uchars):
  64099. (JSC::Bindings::JavaStringImpl::length):
  64100. (JSC::Bindings::JavaStringImpl::uString):
  64101. * bridge/jsc/BridgeJSC.h:
  64102. 2010-08-10 Jian Li <jianli@chromium.org>
  64103. Fix qt build break.
  64104. * html/BlobRegistryImpl.cpp:
  64105. * html/BlobRegistryImpl.h:
  64106. * html/BlobURL.cpp:
  64107. * html/BlobURL.h:
  64108. * platform/BlobRegistry.h:
  64109. 2010-08-10 Jian Li <jianli@chromium.org>
  64110. Reviewed by David Levin.
  64111. Add the support to register the blob data.
  64112. https://bugs.webkit.org/show_bug.cgi?id=43600
  64113. This is the first step towards adding Blob URL support. The blob has
  64114. an internal URL (used by FileReader) and public URLs (used by Blob.url).
  64115. The URL and its associated data are managed by BlobRegistry interface.
  64116. This patch does not remove the usage of BlobItem. It will be removed
  64117. when all the blob data support is hooked up and the new tests will be
  64118. added then.
  64119. * CMakeLists.txt:
  64120. * GNUmakefile.am:
  64121. * WebCore.gypi:
  64122. * WebCore.pro:
  64123. * WebCore.vcproj/WebCore.vcproj:
  64124. * WebCore.xcodeproj/project.pbxproj:
  64125. * bindings/js/SerializedScriptValue.cpp:
  64126. (WebCore::SerializedBlob::create):
  64127. (WebCore::SerializedBlob::url):
  64128. (WebCore::SerializedBlob::type):
  64129. (WebCore::SerializedBlob::size):
  64130. (WebCore::SerializedBlob::SerializedBlob):
  64131. (WebCore::SerializedFile::create):
  64132. (WebCore::SerializedFile::path):
  64133. (WebCore::SerializedFile::url):
  64134. (WebCore::SerializedFile::type):
  64135. (WebCore::SerializedFile::SerializedFile):
  64136. (WebCore::SerializedFileList::item):
  64137. (WebCore::SerializedFileList::SerializedFileList):
  64138. (WebCore::SerializedScriptValueData::SerializedScriptValueData):
  64139. (WebCore::SharedSerializedData::asBlob):
  64140. (WebCore::SharedSerializedData::asFile):
  64141. (WebCore::SerializingTreeWalker::convertIfTerminal):
  64142. (WebCore::DeserializingTreeWalker::convertIfTerminal):
  64143. (WebCore::TeardownTreeWalker::convertIfTerminal):
  64144. * bindings/js/SerializedScriptValue.h:
  64145. (WebCore::SerializedScriptValueData::):
  64146. (WebCore::SerializedScriptValueData::asString):
  64147. (WebCore::SerializedScriptValueData::asBlob):
  64148. (WebCore::SerializedScriptValueData::asFile):
  64149. * bindings/v8/SerializedScriptValue.cpp:
  64150. (WebCore::ZigZag::Writer::writeBlob):
  64151. (WebCore::ZigZag::Writer::writeFile):
  64152. (WebCore::ZigZag::Writer::writeFileList):
  64153. (WebCore::ZigZag::Writer::doWriteUintHelper):
  64154. (WebCore::ZigZag::Writer::doWriteUint32):
  64155. (WebCore::ZigZag::Writer::doWriteUint64):
  64156. (WebCore::ZigZag::Serializer::writeBlob):
  64157. (WebCore::ZigZag::Serializer::writeFile):
  64158. (WebCore::ZigZag::Reader::readBlob):
  64159. (WebCore::ZigZag::Reader::readFile):
  64160. (WebCore::ZigZag::Reader::readFileList):
  64161. (WebCore::ZigZag::Reader::doReadUintHelper):
  64162. (WebCore::ZigZag::Reader::doReadUint32):
  64163. (WebCore::ZigZag::Reader::doReadUint64):
  64164. * dom/ScriptExecutionContext.cpp:
  64165. (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
  64166. (WebCore::ScriptExecutionContext::trackBlobURL):
  64167. (WebCore::ScriptExecutionContext::revokeBlobURL):
  64168. * dom/ScriptExecutionContext.h:
  64169. * html/Blob.cpp:
  64170. (WebCore::Blob::Blob):
  64171. (WebCore::Blob::~Blob):
  64172. (WebCore::Blob::createPublicURL):
  64173. * html/Blob.h:
  64174. (WebCore::Blob::create):
  64175. (WebCore::Blob::url):
  64176. * html/BlobRegistryImpl.cpp: Added.
  64177. * html/BlobRegistryImpl.h: Added.
  64178. * html/BlobStorageData.h: Added.
  64179. * html/BlobURL.cpp: Added.
  64180. * html/BlobURL.h: Added.
  64181. * html/File.cpp:
  64182. (WebCore::File::File):
  64183. * html/File.h:
  64184. (WebCore::File::create):
  64185. * platform/BlobData.cpp: Added.
  64186. * platform/BlobData.h: Added.
  64187. * platform/BlobRegistry.h: Added.
  64188. 2010-08-10 Adam Barth <abarth@webkit.org>
  64189. Reviewed by Eric Seidel.
  64190. SegmentedString should keep track of how many characters it consumes
  64191. https://bugs.webkit.org/show_bug.cgi?id=43765
  64192. The easiest way to keep track of how many characters we've consumed
  64193. would be to increment a counter every time we advance, but that's too
  64194. slow. Instead, we keep track lazily and update our summary durning the
  64195. slow case of advance (which is sufficiently rare).
  64196. There's some subtly to how this works w.r.t. "unconsuming" characters
  64197. by pushing them back on the front of the segmented string. This isn't
  64198. really a "right answer" here because the notion of unconsuming input
  64199. isn't present in the API. This patch makes some assumptions about how
  64200. clients of this class use its API. In a future patch, we might want to
  64201. rename some of the method names to make this more explicit.
  64202. * platform/text/SegmentedString.cpp:
  64203. (WebCore::SegmentedString::operator=):
  64204. (WebCore::SegmentedString::append):
  64205. (WebCore::SegmentedString::prepend):
  64206. (WebCore::SegmentedString::advanceSubstring):
  64207. * platform/text/SegmentedString.h:
  64208. (WebCore::SegmentedSubstring::numberOfCharactersConsumed):
  64209. (WebCore::SegmentedString::SegmentedString):
  64210. (WebCore::SegmentedString::numberOfCharactersConsumed):
  64211. 2010-08-10 Gavin Barraclough <barraclough@apple.com>
  64212. Rubber stamped by Sam Weinig.
  64213. Bug 43816 - Remove UStringImpl
  64214. The class was actually removed a long time ago, replaced by StringImpl.
  64215. UStringImpl is just a typedef onto StringImpl. Remove this.
  64216. * WebCore.xcodeproj/project.pbxproj:
  64217. * bindings/js/JSDOMBinding.cpp:
  64218. (WebCore::findAtomicString):
  64219. 2010-08-09 Stephen White <senorblanco@chromium.org>
  64220. Reviewed by David Levin.
  64221. Prefer the medium-quality (bilinear) image resampling for 2D canvas on
  64222. Chromium.
  64223. https://bugs.webkit.org/show_bug.cgi?id=43646
  64224. This is what the accelerated path is going to do,
  64225. so do it in the software path as well.
  64226. * html/HTMLCanvasElement.cpp:
  64227. (WebCore::HTMLCanvasElement::createImageBuffer):
  64228. * platform/graphics/GraphicsContext.h:
  64229. 2010-08-10 Chris Fleizach <cfleizach@apple.com>
  64230. Reviewed by Dave Hyatt.
  64231. Removing an element from an anonymous block causes crash
  64232. https://bugs.webkit.org/show_bug.cgi?id=42309
  64233. There was a case where a continuation was added as a child, but if you asked
  64234. that child who is your parent, it would return the wrong answer.
  64235. The specific scenario was when a sibling of an element who was the start of a
  64236. continuation was present. Retrieving the parent object had then follow the sibling
  64237. chain and then follow the originating continuation chain.
  64238. Test: accessibility/removed-anonymous-block-child-causes-crash.html
  64239. * accessibility/AccessibilityRenderObject.cpp:
  64240. (WebCore::AccessibilityRenderObject::nextSibling):
  64241. Fix erroneous comment
  64242. (WebCore::nextContinuation):
  64243. (WebCore::AccessibilityRenderObject::renderParentObject):
  64244. Handle unhandled continuation case.
  64245. (WebCore::AccessibilityRenderObject::addChildren):
  64246. ASSERT that the parentObject() is the same when adding a new child.
  64247. 2010-08-10 Abhishek Arya <inferno@chromium.org>
  64248. Reviewed by David Hyatt.
  64249. Take checks for ruby base existence out of the ASSERTs.
  64250. https://bugs.webkit.org/show_bug.cgi?id=43795
  64251. Test: fast/ruby/ruby-remove-no-base.html
  64252. * rendering/RenderRubyRun.cpp:
  64253. (WebCore::RenderRubyRun::addChild):
  64254. (WebCore::RenderRubyRun::removeChild):
  64255. 2010-08-06 Zhenyao Mo <zmo@google.com>
  64256. Reviewed by Dimitri Glazkov.
  64257. texture functions should gen INVALID_OPERATION if no texture is bound
  64258. https://bugs.webkit.org/show_bug.cgi?id=42907
  64259. * html/canvas/WebGLRenderingContext.cpp:
  64260. (WebCore::WebGLRenderingContext::copyTexImage2D): Check if a texture is bound to target.
  64261. (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto.
  64262. (WebCore::WebGLRenderingContext::generateMipmap): Ditto.
  64263. (WebCore::WebGLRenderingContext::getTexParameter): Ditto.
  64264. (WebCore::WebGLRenderingContext::texImage2DBase): Ditto.
  64265. (WebCore::WebGLRenderingContext::texParameter): Ditto.
  64266. (WebCore::WebGLRenderingContext::texSubImage2DBase): Ditto.
  64267. (WebCore::WebGLRenderingContext::validateTextureBinding): Check if target is valid and if a texture is bound to it.
  64268. * html/canvas/WebGLRenderingContext.h: Declare validateTextureBinding().
  64269. 2010-08-10 Patrick Gansterer <paroga@paroga.com>
  64270. Reviewed by Sam Weinig.
  64271. [WINCE] Implement Path::currentPoint()
  64272. https://bugs.webkit.org/show_bug.cgi?id=42927
  64273. * platform/graphics/wince/PathWince.cpp:
  64274. (WebCore::Path::currentPoint):
  64275. 2010-08-10 Ariya Hidayat <ariya@sencha.com>
  64276. [Qt] Warning fix, remove reference to platform/text/StringImpl.h
  64277. * WebCore.pro:
  64278. 2010-08-10 Alice Liu <alice.liu@apple.com>
  64279. Chromium build fix attempt. not reviewed
  64280. * platform/text/TextBoundaries.cpp: use correct stringimplh include
  64281. 2010-08-10 Jian Li <jianli@chromium.org>
  64282. Chromium build fix.
  64283. * platform/graphics/chromium/FontPlatformDataChromiumWin.h:
  64284. * platform/graphics/chromium/FontPlatformDataLinux.cpp:
  64285. 2010-08-10 Johnny Ding <jnd@chromium.org>
  64286. Reviewed by Adam Barth.
  64287. Change the ScriptController::processingUserGesture to static method
  64288. and use dynamic(JSC binding)/entered(V8 binding) frame to check the user gesture.
  64289. https://bugs.webkit.org/show_bug.cgi?id=42827.
  64290. Test: fast/events/popup-blocked-from-iframe-script.html
  64291. * WebCore.order:
  64292. * bindings/js/JSDOMBinding.cpp:
  64293. (WebCore::processingUserGesture):
  64294. * bindings/js/JSDOMBinding.h:
  64295. * bindings/js/JSDOMWindowCustom.cpp:
  64296. (WebCore::JSDOMWindow::setLocation):
  64297. (WebCore::createWindow):
  64298. (WebCore::domWindowAllowPopUp):
  64299. (WebCore::JSDOMWindow::open):
  64300. (WebCore::JSDOMWindow::showModalDialog):
  64301. * bindings/js/JSDocumentCustom.cpp:
  64302. (WebCore::JSDocument::setLocation):
  64303. * bindings/js/JSLocationCustom.cpp:
  64304. (WebCore::navigateIfAllowed):
  64305. (WebCore::JSLocation::reload):
  64306. * bindings/js/ScriptController.cpp:
  64307. (WebCore::ScriptController::processingUserGesture):
  64308. * bindings/js/ScriptController.h:
  64309. * bindings/scripts/CodeGeneratorJS.pm:
  64310. * bindings/scripts/test/JS/JSTestObj.cpp:
  64311. (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGesture):
  64312. (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGestureASAD):
  64313. * bindings/v8/ScriptController.cpp:
  64314. (WebCore::ScriptController::processingUserGesture):
  64315. (WebCore::ScriptController::anyPageIsProcessingUserGesture):
  64316. * bindings/v8/ScriptController.h:
  64317. * bindings/v8/specialization/V8BindingState.cpp:
  64318. (WebCore::::processingUserGesture):
  64319. * loader/FrameLoader.cpp:
  64320. (WebCore::FrameLoader::isProcessingUserGesture):
  64321. 2010-08-10 Gavin Barraclough <barraclough@apple.com>
  64322. Chromium build fix
  64323. * platform/graphics/chromium/FontPlatformDataLinux.h:
  64324. 2010-08-10 Gavin Barraclough <barraclough@apple.com>
  64325. Rubber stamped by Sam Weinig.
  64326. Bug 43786 - Move AtomicStringHash from WebCore to WTF
  64327. Also remove deprecated string headers from WebCore/platform/text.
  64328. * ForwardingHeaders/wtf/text/AtomicStringHash.h: Added.
  64329. * GNUmakefile.am:
  64330. * WebCore.gypi:
  64331. * WebCore.pro:
  64332. * WebCore.vcproj/WebCore.vcproj:
  64333. * WebCore.xcodeproj/project.pbxproj:
  64334. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  64335. * bindings/cpp/WebDOMHTMLCollectionCustom.cpp:
  64336. * bindings/js/JSCSSStyleDeclarationCustom.cpp:
  64337. * bindings/js/JSClipboardCustom.cpp:
  64338. * bindings/js/JSDOMApplicationCacheCustom.cpp:
  64339. * bindings/js/JSDOMMimeTypeArrayCustom.cpp:
  64340. * bindings/js/JSDOMPluginArrayCustom.cpp:
  64341. * bindings/js/JSDOMPluginCustom.cpp:
  64342. * bindings/js/JSDOMStringMapCustom.cpp:
  64343. * bindings/js/JSDOMWindowCustom.cpp:
  64344. * bindings/js/JSDataGridColumnListCustom.cpp:
  64345. * bindings/js/JSHTMLAllCollectionCustom.cpp:
  64346. * bindings/js/JSHTMLCollectionCustom.cpp:
  64347. * bindings/js/JSMessagePortCustom.cpp:
  64348. * bindings/js/JSNodeListCustom.cpp:
  64349. * bindings/scripts/CodeGeneratorCPP.pm:
  64350. * bindings/scripts/CodeGeneratorJS.pm:
  64351. * bindings/scripts/CodeGeneratorV8.pm:
  64352. * bindings/scripts/test/CPP/WebDOMTestCallback.cpp:
  64353. * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
  64354. * bindings/scripts/test/V8/V8TestInterface.h:
  64355. * bindings/scripts/test/V8/V8TestObj.h:
  64356. * bindings/v8/ScriptDebugServer.h:
  64357. * bindings/v8/V8Binding.cpp:
  64358. * bindings/v8/V8Binding.h:
  64359. * bridge/jni/v8/JavaClassV8.h:
  64360. * css/CSSFontFaceSource.h:
  64361. * css/CSSFontSelector.cpp:
  64362. * css/CSSFontSelector.h:
  64363. * css/CSSNamespace.h:
  64364. * css/CSSParser.cpp:
  64365. * css/CSSParser.h:
  64366. * css/CSSParserValues.h:
  64367. * css/CSSStyleSelector.h:
  64368. * css/CSSVariablesDeclaration.h:
  64369. * css/MediaFeatureNames.h:
  64370. * css/MediaQueryExp.h:
  64371. * css/WebKitCSSKeyframesRule.h:
  64372. * dom/CustomEvent.h:
  64373. * dom/Document.cpp:
  64374. * dom/Event.cpp:
  64375. * dom/Event.h:
  64376. * dom/EventNames.h:
  64377. * dom/EventTarget.h:
  64378. * dom/InputElement.h:
  64379. * dom/MessagePort.cpp:
  64380. * dom/MessagePort.h:
  64381. * dom/NameNodeList.h:
  64382. * dom/NodeRareData.h:
  64383. * dom/QualifiedName.h:
  64384. * dom/ScriptElement.cpp:
  64385. * dom/SpaceSplitString.h:
  64386. * dom/TagNodeList.h:
  64387. * dom/XMLDocumentParser.h:
  64388. * editing/EditorCommand.cpp:
  64389. * history/mac/HistoryItemMac.mm:
  64390. * html/BlobBuilder.cpp:
  64391. * html/DataGridColumn.h:
  64392. * html/DataGridColumnList.cpp:
  64393. * html/HTMLDocument.h:
  64394. * html/HTMLInputElement.cpp:
  64395. * html/HTMLTokenizer.cpp:
  64396. * html/HTMLTokenizer.h:
  64397. * html/LegacyPreloadScanner.cpp:
  64398. * html/LegacyPreloadScanner.h:
  64399. * inspector/InspectorCSSStore.h:
  64400. * inspector/InspectorController.h:
  64401. * inspector/InspectorDOMAgent.cpp:
  64402. * inspector/InspectorDOMAgent.h:
  64403. * inspector/InspectorDebuggerAgent.h:
  64404. * inspector/InspectorValues.h:
  64405. * loader/Cache.h:
  64406. * loader/CrossOriginAccessControl.cpp:
  64407. * loader/CrossOriginPreflightResultCache.h:
  64408. * loader/DocLoader.h:
  64409. * loader/ImageLoader.h:
  64410. * loader/appcache/ApplicationCache.h:
  64411. * loader/appcache/ApplicationCacheStorage.h:
  64412. * loader/appcache/DOMApplicationCache.h:
  64413. * loader/icon/IconDatabase.h:
  64414. * loader/icon/IconRecord.h:
  64415. * loader/loader.h:
  64416. * notifications/Notification.h:
  64417. * page/FrameTree.h:
  64418. * page/Page.cpp:
  64419. * page/PageGroup.h:
  64420. * page/SecurityOrigin.h:
  64421. * page/Settings.h:
  64422. * page/WindowFeatures.cpp:
  64423. * page/animation/AnimationBase.h:
  64424. * page/animation/AnimationControllerPrivate.h:
  64425. * page/animation/CompositeAnimation.h:
  64426. * platform/Cookie.h:
  64427. * platform/KURL.cpp:
  64428. * platform/KURLGoogle.cpp:
  64429. * platform/KURLHash.h:
  64430. * platform/Length.cpp:
  64431. * platform/LinkHash.cpp:
  64432. * platform/LinkHash.h:
  64433. * platform/MIMETypeRegistry.cpp:
  64434. * platform/MIMETypeRegistry.h:
  64435. * platform/SchemeRegistry.h:
  64436. * platform/ThreadGlobalData.cpp:
  64437. * platform/ThreadGlobalData.h:
  64438. * platform/cf/BinaryPropertyList.cpp:
  64439. * platform/chromium/SearchPopupMenuChromium.cpp:
  64440. * platform/efl/ClipboardEfl.cpp:
  64441. * platform/efl/CookieJarEfl.cpp:
  64442. * platform/efl/PlatformKeyboardEventEfl.cpp:
  64443. * platform/graphics/FontCache.cpp:
  64444. * platform/graphics/FontFamily.h:
  64445. * platform/graphics/MediaPlayer.h:
  64446. * platform/graphics/cg/ImageSourceCGWin.cpp:
  64447. * platform/graphics/chromium/FontCacheChromiumWin.cpp:
  64448. * platform/graphics/chromium/FontCacheLinux.cpp:
  64449. * platform/graphics/chromium/FontUtilsChromiumWin.cpp:
  64450. * platform/graphics/chromium/LayerChromium.h:
  64451. * platform/graphics/filters/Filter.h:
  64452. * platform/graphics/mac/FontPlatformData.h:
  64453. * platform/graphics/mac/GraphicsLayerCA.h:
  64454. * platform/graphics/qt/FontCacheQt.cpp:
  64455. * platform/graphics/win/FontCacheWin.cpp:
  64456. * platform/graphics/win/FontPlatformDataCGWin.cpp:
  64457. * platform/graphics/win/FontPlatformDataCairoWin.cpp:
  64458. * platform/graphics/win/FontPlatformDataWin.cpp:
  64459. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
  64460. * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
  64461. * platform/graphics/win/WKCACFLayer.h:
  64462. * platform/graphics/wince/FontPlatformData.cpp:
  64463. * platform/graphics/wx/FontPlatformData.h:
  64464. * platform/gtk/ClipboardGtk.cpp:
  64465. * platform/gtk/DataObjectGtk.h:
  64466. * platform/haiku/ClipboardHaiku.cpp:
  64467. * platform/haiku/CookieJarHaiku.cpp:
  64468. * platform/haiku/SearchPopupMenuHaiku.cpp:
  64469. * platform/mac/SearchPopupMenuMac.mm:
  64470. * platform/mac/ThreadCheck.mm:
  64471. * platform/network/CredentialStorage.cpp:
  64472. * platform/network/HTTPHeaderMap.h:
  64473. * platform/network/cf/DNSCFNet.cpp:
  64474. * platform/network/curl/CookieJarCurl.cpp:
  64475. * platform/qt/ClipboardQt.cpp:
  64476. * platform/text/AtomicString.h: Removed.
  64477. * platform/text/AtomicStringHash.h: Removed.
  64478. * platform/text/AtomicStringImpl.h: Removed.
  64479. * platform/text/AtomicStringKeyedMRUCache.h:
  64480. * platform/text/StringBuilder.cpp:
  64481. * platform/text/StringHash.h: Removed.
  64482. * platform/text/StringImpl.h: Removed.
  64483. * platform/text/TextCodecLatin1.cpp:
  64484. * platform/text/TextCodecUTF16.cpp:
  64485. * platform/text/TextCodecUserDefined.cpp:
  64486. * platform/text/cf/HyphenationCF.cpp:
  64487. * platform/text/cf/StringImplCF.cpp:
  64488. * platform/text/mac/HyphenationMac.mm:
  64489. * platform/text/mac/StringImplMac.mm:
  64490. * platform/text/transcoder/FontTranscoder.h:
  64491. * platform/text/wince/TextCodecWinCE.cpp:
  64492. * platform/win/BString.cpp:
  64493. * platform/win/ClipboardWin.cpp:
  64494. * platform/win/SearchPopupMenuWin.cpp:
  64495. * platform/wince/SearchPopupMenuWince.cpp:
  64496. * platform/wx/ClipboardWx.cpp:
  64497. * plugins/DOMMimeTypeArray.cpp:
  64498. * plugins/DOMPlugin.cpp:
  64499. * plugins/DOMPluginArray.cpp:
  64500. * plugins/PluginDatabase.h:
  64501. * plugins/PluginPackage.h:
  64502. * plugins/PluginStream.h:
  64503. * rendering/RenderApplet.h:
  64504. * rendering/RenderText.cpp:
  64505. * rendering/style/BindingURI.h:
  64506. * rendering/style/ContentData.cpp:
  64507. * rendering/style/CounterContent.h:
  64508. * rendering/style/CounterDirectives.h:
  64509. * rendering/style/KeyframeList.h:
  64510. * rendering/style/StyleRareInheritedData.h:
  64511. * storage/AbstractDatabase.cpp:
  64512. * storage/DatabaseAuthorizer.h:
  64513. * storage/DatabaseTracker.h:
  64514. * storage/IDBDatabaseBackendImpl.h:
  64515. * storage/IDBFactoryBackendImpl.h:
  64516. * storage/IDBObjectStoreBackendImpl.h:
  64517. * storage/OriginQuotaManager.h:
  64518. * storage/OriginUsageRecord.h:
  64519. * storage/SQLTransactionCoordinator.h:
  64520. * storage/StorageAreaSync.h:
  64521. * storage/StorageMap.h:
  64522. * storage/StorageNamespaceImpl.cpp:
  64523. * storage/chromium/QuotaTracker.h:
  64524. * svg/SVGAltGlyphElement.h:
  64525. * svg/SVGDocumentExtensions.cpp:
  64526. * svg/SVGDocumentExtensions.h:
  64527. * svg/SVGFitToViewBox.cpp:
  64528. * svg/SVGLangSpace.h:
  64529. * svg/animation/SMILTimeContainer.h:
  64530. * svg/graphics/filters/SVGFilterBuilder.h:
  64531. * websockets/WebSocket.h:
  64532. * websockets/WebSocketChannel.cpp:
  64533. * websockets/WebSocketHandshake.cpp:
  64534. * websockets/WebSocketHandshakeResponse.cpp:
  64535. * wml/WMLPageState.h:
  64536. * workers/AbstractWorker.h:
  64537. * workers/DefaultSharedWorkerRepository.h:
  64538. * workers/Worker.h:
  64539. * workers/WorkerContext.h:
  64540. * xml/XMLHttpRequest.h:
  64541. * xml/XMLHttpRequestUpload.cpp:
  64542. * xml/XMLHttpRequestUpload.h:
  64543. * xml/XPathExpressionNode.h:
  64544. * xml/XPathNamespace.h:
  64545. * xml/XPathParser.cpp:
  64546. * xml/XSLTProcessor.h:
  64547. 2010-08-10 Pavel Feldman <pfeldman@chromium.org>
  64548. Not reviewed. Adding changes that escaped from r65072.
  64549. Web Inspector: move database processing to native layer.
  64550. https://bugs.webkit.org/show_bug.cgi?id=43788
  64551. * inspector/front-end/InspectorBackendStub.js:
  64552. (WebInspector.InspectorBackendStub):
  64553. * inspector/front-end/StoragePanel.js:
  64554. (WebInspector.StoragePanel.prototype._genericViewSetup):
  64555. 2010-08-10 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
  64556. Reviewed by Xan Lopez.
  64557. [GTK] Inputs of type 'search' have weird looking checkboxes instead of search/clear icons
  64558. https://bugs.webkit.org/show_bug.cgi?id=43760
  64559. Draw appropriate GTK+ stock images for search/clear icons in search entries.
  64560. * platform/gtk/RenderThemeGtk.cpp:
  64561. (WebCore::RenderThemeGtk::paintSearchFieldResultsButton):
  64562. (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration):
  64563. (WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
  64564. 2010-08-10 Pavel Feldman <pfeldman@chromium.org>
  64565. Not reviewed. Qt build fix, follow up for r65072.
  64566. * inspector/InspectorController.cpp:
  64567. (WebCore::InspectorController::releaseFrontendLifetimeAgents):
  64568. 2010-08-10 Pavel Feldman <pfeldman@chromium.org>
  64569. Reviewed by Yury Semikhatsky.
  64570. Web Inspector: move database processing to native layer.
  64571. https://bugs.webkit.org/show_bug.cgi?id=43788
  64572. * English.lproj/localizedStrings.js:
  64573. * WebCore.gypi:
  64574. * bindings/js/JSInjectedScriptHostCustom.cpp:
  64575. * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
  64576. * inspector/CodeGeneratorInspector.pm:
  64577. * inspector/InjectedScript.cpp:
  64578. (WebCore::InjectedScript::dispatch):
  64579. * inspector/InjectedScript.h:
  64580. * inspector/InjectedScriptHost.cpp:
  64581. * inspector/InjectedScriptHost.h:
  64582. * inspector/InjectedScriptHost.idl:
  64583. * inspector/Inspector.idl:
  64584. * inspector/InspectorBackend.cpp:
  64585. (WebCore::InspectorBackend::dispatchOnInjectedScript):
  64586. (WebCore::InspectorBackend::executeSQL):
  64587. * inspector/InspectorBackend.h:
  64588. * inspector/InspectorController.cpp:
  64589. (WebCore::InspectorController::connectFrontend):
  64590. (WebCore::InspectorController::releaseFrontendLifetimeAgents):
  64591. * inspector/InspectorController.h:
  64592. * inspector/InspectorDebuggerAgent.h:
  64593. * inspector/InspectorStorageAgent.cpp: Added.
  64594. (WebCore::):
  64595. (WebCore::InspectorStorageAgent::InspectorStorageAgent):
  64596. (WebCore::InspectorStorageAgent::~InspectorStorageAgent):
  64597. (WebCore::InspectorStorageAgent::executeSQL):
  64598. (WebCore::InspectorStorageAgent::clearFrontend):
  64599. * inspector/InspectorStorageAgent.h: Added.
  64600. (WebCore::InspectorStorageAgent::create):
  64601. (WebCore::InspectorStorageAgent::frontend):
  64602. * inspector/front-end/Database.js:
  64603. (WebInspector.Database.prototype.executeSql):
  64604. (WebInspector.sqlTransactionSucceeded):
  64605. (WebInspector.sqlTransactionFailed):
  64606. * inspector/front-end/DatabaseQueryView.js:
  64607. (WebInspector.DatabaseQueryView.prototype._queryFinished):
  64608. (WebInspector.DatabaseQueryView.prototype._queryError):
  64609. * inspector/front-end/DatabaseTableView.js:
  64610. (WebInspector.DatabaseTableView.prototype._queryFinished):
  64611. * inspector/front-end/InjectedScript.js:
  64612. * inspector/front-end/InjectedScriptAccess.js:
  64613. (InjectedScriptAccess._installHandler.InjectedScriptAccess.prototype.methodName):
  64614. (InjectedScriptAccess._installHandler):
  64615. * inspector/front-end/StoragePanel.js:
  64616. (WebInspector.StoragePanel.prototype.dataGridForResult):
  64617. 2010-08-10 Steve Block <steveblock@google.com>
  64618. Reviewed by Jeremy Orlow.
  64619. [V8] DeviceMotionEvent can not be used from JavaScript
  64620. https://bugs.webkit.org/show_bug.cgi?id=43785
  64621. This is tested by the existing tests fast/dom/DeviceMotion/create-event.html
  64622. and fast/dom/DeviceMotion/optional-event-properties.html.
  64623. * bindings/v8/custom/V8EventCustom.cpp:
  64624. (WebCore::toV8):
  64625. 2010-08-10 Balazs Kelemen <kb@inf.u-szeged.hu>
  64626. Reviewed by Antonio Gomes.
  64627. [Qt] Build WebKit2 into a static lib
  64628. https://bugs.webkit.org/show_bug.cgi?id=43621
  64629. Just build changes so no new tests.
  64630. * WebCore.pri: Moved feature detection logic into features.pri since we need this in WebKit2.pro as well.
  64631. * WebCore.pro: Moved the specification of the WebKit2 build to WebKit2.pro. Link against the static lib.
  64632. * features.pri: Added.
  64633. 2010-08-10 Yury Semikhatsky <yurys@chromium.org>
  64634. Reviewed by Pavel Feldman.
  64635. Web Inspector, Chromium: reloading of inspected page hits assert in InspectorController::enableDebuggerFromFrontend()
  64636. https://bugs.webkit.org/show_bug.cgi?id=43780
  64637. * inspector/CodeGeneratorInspector.pm:
  64638. * inspector/InspectorController.cpp:
  64639. (WebCore::InspectorController::enableDebuggerFromFrontend):
  64640. * inspector/InspectorController.h:
  64641. (WebCore::InspectorController::hasFrontend):
  64642. * inspector/InspectorDebuggerAgent.cpp:
  64643. (WebCore::InspectorDebuggerAgent::create):
  64644. (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
  64645. (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState):
  64646. (WebCore::InspectorDebuggerAgent::didParseSource):
  64647. (WebCore::InspectorDebuggerAgent::failedToParseSource):
  64648. (WebCore::InspectorDebuggerAgent::didPause):
  64649. (WebCore::InspectorDebuggerAgent::didContinue):
  64650. * inspector/InspectorDebuggerAgent.h:
  64651. 2010-08-10 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
  64652. Reviewed by Simon Hausmann.
  64653. Make sure NPAPI plugins get an initial setNPWindow on Mac
  64654. https://bugs.webkit.org/show_bug.cgi?id=43782
  64655. * plugins/mac/PluginViewMac.mm:
  64656. 2010-08-10 Dirk Schulze <krit@webkit.org>
  64657. Reviewed by Nikolas Zimmermann.
  64658. Use SVGPathParser to create SVG paths and to perform path animations
  64659. https://bugs.webkit.org/show_bug.cgi?id=43696
  64660. Removed toString() functions in all SVGPathSeg* objects as well as toPath() in SVGPathSegList.
  64661. These hacks were used to create a SVG path data string or a platform path from a SVGPathSegList.
  64662. Use the new SVGPathParser instead.
  64663. Doesn't affect any tests.
  64664. * svg/SVGAnimateElement.cpp:
  64665. (WebCore::SVGAnimateElement::applyResultsToTarget):
  64666. * svg/SVGPathElement.cpp:
  64667. (WebCore::SVGPathElement::toPathData):
  64668. * svg/SVGPathParserFactory.cpp:
  64669. (WebCore::SVGPathParserFactory::buildPathFromSVGPathSegList):
  64670. (WebCore::SVGPathParserFactory::buildStringFromByteStream):
  64671. (WebCore::SVGPathParserFactory::buildStringFromSVGPathSegList):
  64672. * svg/SVGPathParserFactory.h:
  64673. * svg/SVGPathSeg.cpp:
  64674. * svg/SVGPathSeg.h:
  64675. * svg/SVGPathSegArc.cpp:
  64676. * svg/SVGPathSegArc.h:
  64677. * svg/SVGPathSegClosePath.h:
  64678. (WebCore::SVGPathSegClosePath::pathSegTypeAsLetter):
  64679. * svg/SVGPathSegCurvetoCubic.h:
  64680. * svg/SVGPathSegCurvetoCubicSmooth.h:
  64681. * svg/SVGPathSegCurvetoQuadratic.h:
  64682. * svg/SVGPathSegLinetoHorizontal.h:
  64683. * svg/SVGPathSegLinetoVertical.h:
  64684. * svg/SVGPathSegList.cpp:
  64685. (WebCore::SVGPathSegList::getPathSegAtLength):
  64686. * svg/SVGPathSegList.h:
  64687. 2010-08-10 Sheriff Bot <webkit.review.bot@gmail.com>
  64688. Unreviewed, rolling out r65056.
  64689. http://trac.webkit.org/changeset/65056
  64690. https://bugs.webkit.org/show_bug.cgi?id=43773
  64691. "Clearly I missed something. I'm too tired to try and fix
  64692. now. Will re-land in the morning." (Requested by eseidel on
  64693. #webkit).
  64694. * html/HTMLConstructionSite.cpp:
  64695. (WebCore::HTMLConstructionSite::attach):
  64696. * html/HTMLElement.cpp:
  64697. (WebCore::HTMLElement::insertAdjacentHTML):
  64698. * html/HTMLTreeBuilder.cpp:
  64699. (WebCore::HTMLTreeBuilder::processEndTagForInCell):
  64700. 2010-08-10 Yoshiki Hayashi <yhayashi@google.com>
  64701. Reviewed by Kent Tamura.
  64702. Iterate over :first-letter so that it will be included in innerText.
  64703. https://bugs.webkit.org/show_bug.cgi?id=39863
  64704. Test: fast/dom/inner-text-first-letter.html
  64705. * editing/TextIterator.cpp:
  64706. (WebCore::TextIterator::TextIterator):
  64707. (WebCore::TextIterator::advance):
  64708. (WebCore::TextIterator::handleTextNode):
  64709. (WebCore::TextIterator::handleTextBox):
  64710. (WebCore::TextIterator::emitText):
  64711. * editing/TextIterator.h:
  64712. 2010-08-10 Kent Tamura <tkent@chromium.org>
  64713. Reviewed by Darin Adler.
  64714. Fix crashes by SelectionController::modify().
  64715. https://bugs.webkit.org/show_bug.cgi?id=43032
  64716. Test: editing/selection/selection-modify-crash.html
  64717. * editing/visible_units.cpp:
  64718. (WebCore::endOfDocument): Add NULL-check for document()->documentElement().
  64719. 2010-08-10 Dirk Schulze <krit@webkit.org>
  64720. Reviewed by Nikolas Zimmermann.
  64721. Add missing SVGPathSegList source for SVGPathParser
  64722. https://bugs.webkit.org/show_bug.cgi?id=43691
  64723. Added SVGPathSegListSource to parse normalized or unaltered SVGPathSegLists and transform
  64724. them to either a SVG path string, or a SVGPathByteStream. This will be needed to synchronize
  64725. all SVGPathSegLists and the SVG path string of the 'd' attribute.
  64726. Refactored SVGPathSource code, to read concrete path segments instead of type/flag/coordinates
  64727. from the data sources. This is a further abstraction and seperates the reading of content from
  64728. the parsing and interpreting.
  64729. Doesn't affect any tests.
  64730. * Android.mk:
  64731. * CMakeLists.txt:
  64732. * GNUmakefile.am:
  64733. * WebCore.gypi:
  64734. * WebCore.pro:
  64735. * WebCore.vcproj/WebCore.vcproj:
  64736. * WebCore.xcodeproj/project.pbxproj:
  64737. * svg/SVGAllInOne.cpp:
  64738. * svg/SVGPathByteStreamSource.cpp:
  64739. (WebCore::SVGPathByteStreamSource::parseSVGSegmentType):
  64740. (WebCore::SVGPathByteStreamSource::nextCommand):
  64741. (WebCore::SVGPathByteStreamSource::parseMoveToSegment):
  64742. (WebCore::SVGPathByteStreamSource::parseLineToSegment):
  64743. (WebCore::SVGPathByteStreamSource::parseLineToHorizontalSegment):
  64744. (WebCore::SVGPathByteStreamSource::parseLineToVerticalSegment):
  64745. (WebCore::SVGPathByteStreamSource::parseCurveToCubicSegment):
  64746. (WebCore::SVGPathByteStreamSource::parseCurveToCubicSmoothSegment):
  64747. (WebCore::SVGPathByteStreamSource::parseCurveToQuadraticSegment):
  64748. (WebCore::SVGPathByteStreamSource::parseCurveToQuadraticSmoothSegment):
  64749. (WebCore::SVGPathByteStreamSource::parseArcToSegment):
  64750. * svg/SVGPathByteStreamSource.h:
  64751. (WebCore::SVGPathByteStreamSource::moveToNextToken):
  64752. * svg/SVGPathParser.cpp:
  64753. (WebCore::SVGPathParser::parseMoveToSegment):
  64754. (WebCore::SVGPathParser::parseLineToSegment):
  64755. (WebCore::SVGPathParser::parseLineToHorizontalSegment):
  64756. (WebCore::SVGPathParser::parseLineToVerticalSegment):
  64757. (WebCore::SVGPathParser::parseCurveToCubicSegment):
  64758. (WebCore::SVGPathParser::parseCurveToCubicSmoothSegment):
  64759. (WebCore::SVGPathParser::parseCurveToQuadraticSegment):
  64760. (WebCore::SVGPathParser::parseCurveToQuadraticSmoothSegment):
  64761. (WebCore::SVGPathParser::parseArcToSegment):
  64762. * svg/SVGPathSegListSource.cpp: Added.
  64763. (WebCore::SVGPathSegListSource::SVGPathSegListSource):
  64764. (WebCore::SVGPathSegListSource::~SVGPathSegListSource):
  64765. (WebCore::SVGPathSegListSource::hasMoreData):
  64766. (WebCore::SVGPathSegListSource::parseSVGSegmentType):
  64767. (WebCore::SVGPathSegListSource::nextCommand):
  64768. (WebCore::SVGPathSegListSource::parseMoveToSegment):
  64769. (WebCore::SVGPathSegListSource::parseLineToSegment):
  64770. (WebCore::SVGPathSegListSource::parseLineToHorizontalSegment):
  64771. (WebCore::SVGPathSegListSource::parseLineToVerticalSegment):
  64772. (WebCore::SVGPathSegListSource::parseCurveToCubicSegment):
  64773. (WebCore::SVGPathSegListSource::parseCurveToCubicSmoothSegment):
  64774. (WebCore::SVGPathSegListSource::parseCurveToQuadraticSegment):
  64775. (WebCore::SVGPathSegListSource::parseCurveToQuadraticSmoothSegment):
  64776. (WebCore::SVGPathSegListSource::parseArcToSegment):
  64777. * svg/SVGPathSegListSource.h: Added.
  64778. (WebCore::SVGPathSegListSource::create):
  64779. (WebCore::SVGPathSegListSource::moveToNextToken):
  64780. * svg/SVGPathSource.h:
  64781. * svg/SVGPathStringSource.cpp:
  64782. (WebCore::SVGPathStringSource::parseMoveToSegment):
  64783. (WebCore::SVGPathStringSource::parseLineToSegment):
  64784. (WebCore::SVGPathStringSource::parseLineToHorizontalSegment):
  64785. (WebCore::SVGPathStringSource::parseLineToVerticalSegment):
  64786. (WebCore::SVGPathStringSource::parseCurveToCubicSegment):
  64787. (WebCore::SVGPathStringSource::parseCurveToCubicSmoothSegment):
  64788. (WebCore::SVGPathStringSource::parseCurveToQuadraticSegment):
  64789. (WebCore::SVGPathStringSource::parseCurveToQuadraticSmoothSegment):
  64790. (WebCore::SVGPathStringSource::parseArcToSegment):
  64791. * svg/SVGPathStringSource.h:
  64792. 2010-08-09 Ilya Tikhonovsky <loislo@chromium.org>
  64793. Reviewed by Yury Semikhatsky.
  64794. Web Inspector: small refactoring for CodeGeneratorInspector.
  64795. A number of push calls were replaced by embedded text.
  64796. Just for improve code readability.
  64797. https://bugs.webkit.org/show_bug.cgi?id=43770
  64798. * inspector/CodeGeneratorInspector.pm:
  64799. 2010-08-09 Eric Seidel <eric@webkit.org>
  64800. Reviewed by Adam Barth.
  64801. Fix three ASSERTs hit with the HTML5 TreeBuilder in fragment mode
  64802. https://bugs.webkit.org/show_bug.cgi?id=43762
  64803. In fixing the insertAdjacentHTML I had to make small changes to
  64804. the error logic, which ended up bringing us closer to HTML5.
  64805. Test: fast/dom/HTMLElement/insertAdjacentHTML-errors.html
  64806. * html/HTMLConstructionSite.cpp:
  64807. (WebCore::HTMLConstructionSite::attach):
  64808. - This ASSERT was just wrong, the child should not be attached
  64809. in the case the parent is not attached.
  64810. * html/HTMLElement.cpp:
  64811. (WebCore::contextElementForInsertion):
  64812. - This is part of HTML5, needed to know what to call the
  64813. HTML or XML parsers with. The previous code always passed
  64814. "this" which is wrong in the case of beforeBegin or afterEnd insertion.
  64815. (WebCore::HTMLElement::insertAdjacentHTML):
  64816. - Use the right contextElement now that we know how to compute it.
  64817. * html/HTMLTreeBuilder.cpp:
  64818. (WebCore::HTMLTreeBuilder::processEndTagForInCell):
  64819. - This ASSERT is direct from the spec, but it's wrong, so I've filed a spec bug.
  64820. 2010-08-09 Yury Semikhatsky <yurys@chromium.org>
  64821. Reviewed by Pavel Feldman.
  64822. Web Inspector: remove InspectorFrontend class and use RemoteInspectorFrontend instead.
  64823. https://bugs.webkit.org/show_bug.cgi?id=43726
  64824. * CMakeLists.txt:
  64825. * GNUmakefile.am:
  64826. * WebCore.gypi:
  64827. * WebCore.pro:
  64828. * WebCore.vcproj/WebCore.vcproj:
  64829. * WebCore.xcodeproj/project.pbxproj:
  64830. * inspector/InspectorController.cpp:
  64831. (WebCore::InspectorController::connectFrontend):
  64832. (WebCore::InspectorController::close):
  64833. (WebCore::InspectorController::disconnectFrontend):
  64834. * inspector/InspectorController.h:
  64835. * inspector/InspectorFrontend.cpp: Removed.
  64836. * inspector/InspectorFrontend.h: Removed.
  64837. 2010-08-09 Ilya Tikhonovsky <loislo@chromium.org>
  64838. Reviewed by Pavel Feldman.
  64839. Web Inspector: Remove obsolete JS wrappers for did* methods.
  64840. https://bugs.webkit.org/show_bug.cgi?id=43738
  64841. * inspector/CodeGeneratorInspector.pm:
  64842. * inspector/Inspector.idl:
  64843. * inspector/front-end/BreakpointManager.js:
  64844. * inspector/front-end/Callback.js:
  64845. * inspector/front-end/ConsoleView.js:
  64846. * inspector/front-end/DOMAgent.js:
  64847. * inspector/front-end/DOMStorage.js:
  64848. * inspector/front-end/Database.js:
  64849. * inspector/front-end/InjectedScriptAccess.js:
  64850. * inspector/front-end/ProfilesPanel.js:
  64851. * inspector/front-end/ResourcesPanel.js:
  64852. * inspector/front-end/ScriptView.js:
  64853. * inspector/front-end/ScriptsPanel.js:
  64854. * inspector/front-end/inspector.js:
  64855. (WebInspector.reportProtocolError):
  64856. 2010-08-09 Gavin Barraclough <barraclough@apple.com>
  64857. Qt build fix attempt VIII.
  64858. * dom/QualifiedName.cpp:
  64859. (WebCore::QualifiedName::toString):
  64860. * dom/XMLDocumentParserQt.cpp:
  64861. (WebCore::handleElementNamespaces):
  64862. 2010-08-09 Gavin Barraclough <barraclough@apple.com>
  64863. Qt build fix attempt VII.
  64864. * dom/QualifiedName.cpp:
  64865. (WebCore::QualifiedName::toString):
  64866. * dom/XMLDocumentParserQt.cpp:
  64867. (WebCore::handleElementNamespaces):
  64868. 2010-08-09 Gavin Barraclough <barraclough@apple.com>
  64869. Qt build fix attempt VI.
  64870. * dom/QualifiedName.cpp:
  64871. (WebCore::QualifiedName::toString):
  64872. * dom/XMLDocumentParserQt.cpp:
  64873. (WebCore::handleElementNamespaces):
  64874. 2010-08-09 Gavin Barraclough <barraclough@apple.com>
  64875. Qt build fix attempt V.
  64876. * dom/QualifiedName.cpp:
  64877. (WebCore::QualifiedName::toString):
  64878. * dom/XMLDocumentParserQt.cpp:
  64879. (WebCore::handleElementNamespaces):
  64880. 2010-08-09 Gavin Barraclough <barraclough@apple.com>
  64881. Qt build fix attempt IV.
  64882. * css/CSSSelector.cpp:
  64883. (WebCore::CSSSelector::selectorText):
  64884. * dom/QualifiedName.cpp:
  64885. (WebCore::QualifiedName::toString):
  64886. * dom/XMLDocumentParserQt.cpp:
  64887. (WebCore::handleElementNamespaces):
  64888. 2010-08-09 Gavin Barraclough <barraclough@apple.com>
  64889. Speculative chromium build fix.
  64890. * platform/graphics/chromium/FontCacheChromiumWin.cpp:
  64891. (WebCore::charactersAreAllASCII):
  64892. 2010-08-09 Gavin Barraclough <barraclough@apple.com>
  64893. Qt build fix III.
  64894. * css/CSSSelector.cpp:
  64895. 2010-08-09 Adam Barth <abarth@webkit.org>
  64896. Reviewed by Eric Seidel.
  64897. Remove error-prone external SegementedSubstring contructor
  64898. https://bugs.webkit.org/show_bug.cgi?id=43752
  64899. There's a lot of code that assumes that SegmentedString takes ownership
  64900. of its substrings. For example, when the HTML parser pauses and
  64901. resumes asynchronously, it could explode if SegmentedString didn't own
  64902. its substrings.
  64903. Prior to this patch, there was a constructor that let
  64904. SegmentedSubstring use an external string buffer. It turns out it was
  64905. only used in a handful of places, but I'd rather pay the memcpy of
  64906. these small strings than risk having them used after free.
  64907. * bindings/js/JSHTMLDocumentCustom.cpp:
  64908. (WebCore::documentWrite):
  64909. * html/LegacyHTMLDocumentParser.cpp:
  64910. (WebCore::LegacyHTMLDocumentParser::parseNonHTMLText):
  64911. (WebCore::LegacyHTMLDocumentParser::scriptHandler):
  64912. (WebCore::LegacyHTMLDocumentParser::parseComment):
  64913. * platform/text/SegmentedString.h:
  64914. (WebCore::SegmentedString::SegmentedString):
  64915. 2010-08-09 Gavin Barraclough <barraclough@apple.com>
  64916. Speculative Qt build fix.
  64917. * css/CSSSelector.cpp:
  64918. 2010-08-09 Gavin Barraclough <barraclough@apple.com>
  64919. Speculative gtk build fix.
  64920. * plugins/gtk/PluginViewGtk.cpp:
  64921. (WebCore::PluginView::handlePostReadFile):
  64922. 2010-08-06 Gavin Barraclough <barraclough@apple.com>
  64923. Rubber stamped by Sam Weinig
  64924. Bug 43594 - Add string forwards to Forward.h
  64925. This allows us to remove forward declarations for these classes from
  64926. WebCore/WebKit (a step in moving these class from WebCore:: to WTF::).
  64927. * WebCore.xcodeproj/project.pbxproj:
  64928. * accessibility/AXObjectCache.h:
  64929. * accessibility/AccessibilityARIAGrid.h:
  64930. * accessibility/AccessibilityListBoxOption.h:
  64931. * accessibility/AccessibilityObject.h:
  64932. * accessibility/AccessibilityRenderObject.h:
  64933. * accessibility/AccessibilityTable.h:
  64934. * bindings/cpp/WebDOMCString.h:
  64935. * bindings/cpp/WebDOMString.h:
  64936. * bindings/gobject/ConvertToUTF8String.h:
  64937. * bindings/js/DOMWrapperWorld.h:
  64938. * bindings/js/JSDOMBinding.h:
  64939. * bindings/js/JSDOMWindowBase.h:
  64940. * bindings/js/JSMessagePortCustom.h:
  64941. * bindings/js/JavaScriptCallFrame.h:
  64942. * bindings/js/ScriptController.h:
  64943. * bindings/js/ScriptProfile.h:
  64944. * bindings/js/ScriptSourceProvider.h:
  64945. * bindings/js/ScriptString.h:
  64946. * bindings/js/WorkerScriptController.h:
  64947. * bindings/objc/DOMImplementationFront.h:
  64948. * bindings/v8/ScheduledAction.h:
  64949. * bindings/v8/ScriptController.h:
  64950. * bindings/v8/V8DOMWindowShell.h:
  64951. * bindings/v8/V8Proxy.h:
  64952. * bindings/v8/V8Utilities.h:
  64953. * bindings/v8/custom/V8CustomXPathNSResolver.h:
  64954. * bridge/c/c_utility.h:
  64955. * css/CSSFontSelector.h:
  64956. * css/CSSHelper.h:
  64957. * css/CSSOMUtils.h:
  64958. * css/CSSPrimitiveValue.h:
  64959. * css/MediaList.h:
  64960. * css/StyleBase.h:
  64961. * css/StyleSheetList.h:
  64962. * css/WebKitCSSKeyframesRule.h:
  64963. * dom/CheckedRadioButtons.h:
  64964. * dom/DOMImplementation.h:
  64965. * dom/DocumentMarker.h:
  64966. * dom/DynamicNodeList.h:
  64967. * dom/EventTarget.h:
  64968. * dom/MessagePort.h:
  64969. * dom/MessagePortChannel.h:
  64970. * dom/NameNodeList.h:
  64971. * dom/Node.h:
  64972. * dom/NodeList.h:
  64973. * dom/OptionGroupElement.h:
  64974. * dom/ScriptExecutionContext.h:
  64975. * dom/SelectElement.h:
  64976. * dom/ViewportArguments.h:
  64977. * dom/make_names.pl:
  64978. * editing/HTMLInterchange.h:
  64979. * editing/htmlediting.h:
  64980. * editing/markup.h:
  64981. * html/CollectionCache.h:
  64982. * html/DOMFormData.h:
  64983. * html/DataGridColumnList.h:
  64984. * html/DateComponents.h:
  64985. * html/FileStream.h:
  64986. * html/FileStreamProxy.h:
  64987. * html/FormDataList.h:
  64988. (WebCore::FormDataList::appendData):
  64989. * html/HTMLCollection.h:
  64990. * html/HTMLElementStack.h:
  64991. * html/HTMLFormattingElementList.h:
  64992. * html/HTMLParserQuirks.h:
  64993. * html/HTMLQuoteElement.h:
  64994. * html/HTMLScriptRunnerHost.h:
  64995. * html/StepRange.h:
  64996. * html/canvas/CanvasGradient.h:
  64997. * html/canvas/CanvasNumberArray.h:
  64998. * html/canvas/CanvasPattern.h:
  64999. * inspector/InjectedScript.h:
  65000. * inspector/InspectorCSSStore.h:
  65001. * inspector/InspectorClient.h:
  65002. * inspector/InspectorFrontendClient.h:
  65003. * inspector/InspectorValues.h:
  65004. * inspector/ScriptDebugListener.h:
  65005. * loader/CachedResourceClient.h:
  65006. * loader/CrossOriginAccessControl.h:
  65007. * loader/DocumentThreadableLoader.h:
  65008. * loader/FrameLoaderClient.h:
  65009. * loader/RedirectScheduler.h:
  65010. * loader/SubframeLoader.h:
  65011. * loader/appcache/DOMApplicationCache.h:
  65012. * loader/archive/ArchiveFactory.h:
  65013. * loader/icon/IconDatabaseClient.h:
  65014. * notifications/NotificationPresenter.h:
  65015. * page/Chrome.h:
  65016. * page/ChromeClient.h:
  65017. * page/Console.h:
  65018. * page/ContextMenuClient.h:
  65019. * page/DOMSelection.h:
  65020. * page/EditorClient.h:
  65021. * page/EventHandler.h:
  65022. * page/FrameView.h:
  65023. * page/GeolocationPositionCache.h:
  65024. * page/History.h:
  65025. * page/Location.h:
  65026. * page/Navigator.h:
  65027. * page/NavigatorBase.h:
  65028. * page/PluginHalterClient.h:
  65029. * page/PrintContext.h:
  65030. * page/SpeechInput.h:
  65031. * page/SpeechInputListener.h:
  65032. * page/animation/AnimationController.h:
  65033. * platform/CookieJar.h:
  65034. * platform/CrossThreadCopier.h:
  65035. * platform/DragImage.h:
  65036. * platform/FileSystem.h:
  65037. * platform/Language.h:
  65038. * platform/Length.h:
  65039. * platform/LinkHash.h:
  65040. * platform/LocalizationStrategy.h:
  65041. * platform/LocalizedStrings.h:
  65042. * platform/Logging.h:
  65043. * platform/Pasteboard.h:
  65044. * platform/PopupMenuClient.h:
  65045. * platform/SearchPopupMenu.h:
  65046. * platform/Widget.h:
  65047. * platform/cf/BinaryPropertyList.h:
  65048. * platform/chromium/ChromiumBridge.h:
  65049. * platform/chromium/ClipboardUtilitiesChromium.h:
  65050. * platform/cocoa/KeyEventCocoa.h:
  65051. * platform/graphics/Color.h:
  65052. * platform/graphics/FontCache.h:
  65053. * platform/graphics/FontData.h:
  65054. * platform/graphics/FontSelector.h:
  65055. * platform/graphics/GraphicsTypes.h:
  65056. * platform/graphics/Icon.h:
  65057. * platform/graphics/ImageBuffer.h:
  65058. * platform/graphics/ImageSource.h:
  65059. * platform/graphics/MediaPlayer.h:
  65060. * platform/graphics/MediaPlayerPrivate.h:
  65061. * platform/graphics/Path.h:
  65062. * platform/graphics/StringTruncator.h:
  65063. * platform/graphics/cairo/FontCustomPlatformData.h:
  65064. * platform/graphics/cairo/FontPlatformData.h:
  65065. * platform/graphics/cg/FontPlatformData.h:
  65066. * platform/graphics/cg/ImageSourceCG.h:
  65067. * platform/graphics/chromium/FontCustomPlatformData.h:
  65068. * platform/graphics/chromium/FontPlatformDataChromiumWin.h:
  65069. * platform/graphics/chromium/FontPlatformDataLinux.h:
  65070. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
  65071. * platform/graphics/haiku/FontCustomPlatformData.h:
  65072. * platform/graphics/mac/FontCustomPlatformData.h:
  65073. * platform/graphics/mac/FontPlatformData.h:
  65074. * platform/graphics/qt/FontCustomPlatformData.h:
  65075. * platform/graphics/qt/FontPlatformData.h:
  65076. * platform/graphics/win/FontCustomPlatformData.h:
  65077. * platform/graphics/win/FontCustomPlatformDataCairo.h:
  65078. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
  65079. * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
  65080. * platform/graphics/wince/FontPlatformData.h:
  65081. * platform/graphics/wince/MediaPlayerPrivateWince.h:
  65082. * platform/graphics/wince/MediaPlayerProxy.h:
  65083. * platform/graphics/wx/FontCustomPlatformData.h:
  65084. * platform/graphics/wx/FontPlatformData.h:
  65085. * platform/mac/PasteboardHelper.h:
  65086. * platform/network/DNS.h:
  65087. * platform/network/FormData.h:
  65088. * platform/network/FormDataBuilder.h:
  65089. * platform/network/HTTPParsers.h:
  65090. * platform/text/Hyphenation.h:
  65091. * platform/text/LineEnding.h:
  65092. * platform/text/TextCodec.h:
  65093. * platform/text/TextEncoding.h:
  65094. * platform/text/TextStream.h:
  65095. * platform/win/BString.h:
  65096. * platform/win/ClipboardUtilitiesWin.h:
  65097. * platform/win/WCDataObject.h:
  65098. * platform/win/WebCoreTextRenderer.h:
  65099. * plugins/DOMMimeType.h:
  65100. * plugins/DOMMimeTypeArray.h:
  65101. * plugins/DOMPlugin.h:
  65102. * plugins/DOMPluginArray.h:
  65103. * rendering/CounterNode.h:
  65104. * rendering/HitTestResult.h:
  65105. * rendering/RenderObjectChildList.h:
  65106. * rendering/RenderText.h:
  65107. * rendering/RenderTreeAsText.h:
  65108. * rendering/TextControlInnerElements.h:
  65109. * rendering/style/ContentData.h:
  65110. * rendering/style/RenderStyle.h:
  65111. * storage/DatabaseAuthorizer.h:
  65112. * storage/DatabaseTrackerClient.h:
  65113. * storage/SQLTransaction.h:
  65114. * storage/SQLTransactionSync.h:
  65115. * storage/Storage.h:
  65116. * storage/chromium/DatabaseObserver.h:
  65117. * svg/SVGAnimatedTemplate.h:
  65118. * svg/SVGDocumentExtensions.h:
  65119. * svg/SVGGlyphElement.h:
  65120. * svg/SVGHKernElement.h:
  65121. * svg/SVGNumberList.h:
  65122. * svg/SVGPointList.h:
  65123. * svg/SVGPreserveAspectRatio.h:
  65124. * svg/SVGStylable.h:
  65125. * svg/SVGTests.h:
  65126. * svg/SVGTransformList.h:
  65127. * svg/SVGTransformable.h:
  65128. * svg/SVGVKernElement.h:
  65129. * websockets/ThreadableWebSocketChannel.h:
  65130. * websockets/ThreadableWebSocketChannelClientWrapper.h:
  65131. * websockets/WebSocket.h:
  65132. * websockets/WebSocketChannel.h:
  65133. * websockets/WebSocketHandshakeResponse.h:
  65134. * wml/WMLErrorHandling.h:
  65135. * wml/WMLPageState.h:
  65136. * wml/WMLVariables.h:
  65137. * workers/DefaultSharedWorkerRepository.h:
  65138. * workers/SharedWorkerRepository.h:
  65139. * workers/Worker.h:
  65140. * workers/WorkerContextProxy.h:
  65141. * workers/WorkerLoaderProxy.h:
  65142. * workers/WorkerLocation.h:
  65143. * workers/WorkerMessagingProxy.h:
  65144. * workers/WorkerReportingProxy.h:
  65145. * workers/WorkerThread.h:
  65146. * xml/DOMParser.h:
  65147. * xml/XMLHttpRequestUpload.h:
  65148. * xml/XPathEvaluator.h:
  65149. * xml/XPathExpression.h:
  65150. * xml/XPathNSResolver.h:
  65151. * xml/XPathResult.h:
  65152. * xml/XPathUtil.h:
  65153. 2010-08-09 Nat Duca <nduca@chromium.org>
  65154. Reviewed by Dimitri Glazkov.
  65155. [chromium] Blue line visible at the right hand side of the window with accelerated compositor
  65156. https://bugs.webkit.org/show_bug.cgi?id=43748
  65157. Correct the ortho projection matrix for the root layer, which was
  65158. too large by 0.5px in both width and height. For even view sizes,
  65159. this would cause the viewport to appear 1 pixel too small.
  65160. Fixing this requires removal of several 0.5 correction factors
  65161. that were previously added to compensate for the too-large viewport.
  65162. Finally, compute the translation for the root layer quad using
  65163. floating point rather than integer arithmetic. This avoids us losing
  65164. a key half-pixel of translation when the width of the window is odd.
  65165. To test, size window to even/odd dimensions. No blue line should be visible.
  65166. * platform/graphics/chromium/LayerRendererChromium.cpp:
  65167. (WebCore::LayerRendererChromium::drawLayers):
  65168. 2010-08-09 Ryosuke Niwa <rniwa@webkit.org>
  65169. Reviewed by Justin Garcia.
  65170. fontColorChangesComputedStyle, fontSizeChangesComputedStyle, and fontFaceChangesComputedStyle should be removed
  65171. https://bugs.webkit.org/show_bug.cgi?id=43465
  65172. Removed fontColorChangesComputedStyle, fontSizeChangesComputedStyle, and fontFaceChangesComputedStyle
  65173. because StyleChange's applyFontColor, applyFontFace, and applyFontSize all return false
  65174. if there was no difference between the new font color, font size, font face and that of the computed style.
  65175. Also added a work-around for the bug 28282 in getPropertiesNotInComputedStyle with a test so that
  65176. the above change will not add a redundant font or span element.
  65177. Test: editing/style/fore-color-by-name.html
  65178. * editing/ApplyStyleCommand.cpp:
  65179. (WebCore::getRGBAFontColor): Added.
  65180. (WebCore::StyleChange::extractTextStyles): Calls getRGBAFontColor.
  65181. (WebCore::getPropertiesNotInComputedStyle): Removes color property manually by checking the RGBA values.
  65182. (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded): See above.
  65183. 2010-08-09 Kenneth Russell <kbr@google.com>
  65184. Reviewed by David Levin.
  65185. Fix compilation of VideoLayerChromium on Mac OS X with compositor
  65186. https://bugs.webkit.org/show_bug.cgi?id=43757
  65187. No new tests; build fix only (associated functionality not implemented yet).
  65188. * platform/graphics/chromium/VideoLayerChromium.cpp:
  65189. (WebCore::VideoLayerChromium::VideoLayerChromium):
  65190. (WebCore::VideoLayerChromium::updateTextureContents):
  65191. (WebCore::VideoLayerChromium::createTextureRect):
  65192. (WebCore::VideoLayerChromium::updateTextureRect):
  65193. * platform/graphics/chromium/VideoLayerChromium.h:
  65194. 2010-08-09 Ariya Hidayat <ariya@sencha.com>
  65195. Reviewed by Kenneth Rohde Christiansen.
  65196. [Qt] Need to implement GraphicsContextQt::clipConvexPolygon()
  65197. https://bugs.webkit.org/show_bug.cgi?id=41310
  65198. Based on the prototype code by Simon Hausmann.
  65199. * platform/graphics/qt/GraphicsContextQt.cpp:
  65200. (WebCore::GraphicsContext::clipConvexPolygon):
  65201. * rendering/RenderObject.h:
  65202. 2010-08-09 Chris Fleizach <cfleizach@apple.com>
  65203. Reviewed by David Kilzer.
  65204. AX: Placeholder value for text fields not exposed like it should be
  65205. https://bugs.webkit.org/show_bug.cgi?id=43598
  65206. * accessibility/AccessibilityObject.cpp:
  65207. (WebCore::AccessibilityObject::placeholderValue):
  65208. * accessibility/AccessibilityObject.h:
  65209. * accessibility/AccessibilityRenderObject.cpp:
  65210. (WebCore::AccessibilityRenderObject::title):
  65211. * accessibility/mac/AccessibilityObjectWrapper.mm:
  65212. (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
  65213. (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
  65214. 2010-08-09 Ryosuke Niwa <rniwa@webkit.org>
  65215. Reviewed by Justin Garcia.
  65216. Undo fails in RemoveCSSPropertyCommand when the corresponding style attribute is removed
  65217. https://bugs.webkit.org/show_bug.cgi?id=43639
  65218. The bug was caused when RemoveCSSPropertyCommand is called with CSSMutableStyleDeclaration of some styled element,
  65219. and the style attribute of the element is removed subsequently. When the attribute removal is undone, new instance of
  65220. CSSMutableStyleDeclaration is created and RemoveCSSPropertyCommand's m_style became detached from the element.
  65221. Modified RemoveCSSPropertyCommand to store the styled element directly instead of its CSSMutableStyleDeclaration.
  65222. Test: editing/undo/remove-css-property-and-remove-style.html
  65223. * WebCore.order:
  65224. * editing/ApplyStyleCommand.cpp:
  65225. (WebCore::ApplyStyleCommand::removeCSSStyle): Calls removeCSSProperty.
  65226. (WebCore::ApplyStyleCommand::extractTextDecorationStyle): Calls removeCSSProperty.
  65227. * editing/CompositeEditCommand.cpp:
  65228. (WebCore::CompositeEditCommand::removeCSSProperty): Takes StyledElement instead of CSSMutableStyleDeclaration.
  65229. * editing/CompositeEditCommand.h:
  65230. * editing/RemoveCSSPropertyCommand.cpp:
  65231. (WebCore::RemoveCSSPropertyCommand::RemoveCSSPropertyCommand): Takes StyledElement instead of CSSMutableStyleDeclaration.
  65232. (WebCore::RemoveCSSPropertyCommand::doApply): See above.
  65233. (WebCore::RemoveCSSPropertyCommand::doUnapply): See above.
  65234. * editing/RemoveCSSPropertyCommand.h:
  65235. (WebCore::RemoveCSSPropertyCommand::create): See above.
  65236. 2010-08-09 Ryosuke Niwa <rniwa@webkit.org>
  65237. Reviewed by Tony Chang.
  65238. Use getIdentifierValue to obtain direction and unicode-bidi properties in ApplyStyleCommand
  65239. https://bugs.webkit.org/show_bug.cgi?id=43699
  65240. Deployed getIdentifierValue in various parts of ApplyStyleCommand where
  65241. direction and unicode-bidi properties were obtained manually.
  65242. No new tests since this is a cleanup.
  65243. * editing/ApplyStyleCommand.cpp:
  65244. (WebCore::getIdentifierValue): Takes CSSStyleDeclaration instead of CSSMutableStyleDeclaration.
  65245. (WebCore::ApplyStyleCommand::splitAncestorsWithUnicodeBidi): Calls getIdentifierValue.
  65246. (WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock): Calls getIdentifierValue.
  65247. (WebCore::ApplyStyleCommand::applyInlineStyle): Calls getIdentifierValue.
  65248. * editing/ApplyStyleCommand.h:
  65249. 2010-08-09 Adam Barth <abarth@webkit.org>
  65250. Reviewed by Eric Seidel.
  65251. Remove trailing whitespace in HTMLViewSourceDocument.cpp
  65252. https://bugs.webkit.org/show_bug.cgi?id=43741
  65253. No behavior change. The whitespace was distracting me while porting
  65254. this class to the new parser.
  65255. * html/HTMLViewSourceDocument.cpp:
  65256. (WebCore::HTMLViewSourceDocument::createContainingTable):
  65257. (WebCore::HTMLViewSourceDocument::addViewSourceToken):
  65258. (WebCore::HTMLViewSourceDocument::addLine):
  65259. (WebCore::HTMLViewSourceDocument::addText):
  65260. (WebCore::HTMLViewSourceDocument::addLink):
  65261. 2010-08-09 Eric Seidel <eric@webkit.org>
  65262. Reviewed by Adam Barth.
  65263. Use the HTML5 TreeBuilder for Fragment Parsing
  65264. https://bugs.webkit.org/show_bug.cgi?id=43586
  65265. The bulk of this change is just a transcription of the HTML5 spec:
  65266. http://www.whatwg.org/specs/web-apps/current-work/multipage/the-end.html#fragment-case
  65267. DocumentParser() now sets the right tokenizer state before handling
  65268. fragments. Since default code path uses the HTML5 tokenizer with the
  65269. legacy tree builder, this fixes 2 tokenizer-state tests for the html5lib.
  65270. This fixes 2 more tree-builder tests when the html5 treebuilder is enabled too.
  65271. * dom/DocumentFragment.cpp:
  65272. (WebCore::DocumentFragment::parseHTML):
  65273. - HTML5 implementation of fragment parsing requires the context element (parent)
  65274. pointer. The legacy implementation handles all parsing branches which require
  65275. the context element outside of the parser itself, which likely produces "wrong"
  65276. results. We'll remove those branches when we turn on the HMTL5 fragment parser.
  65277. (WebCore::DocumentFragment::parseXML):
  65278. - Rename "parent" to "contextElement" to match the HTML path (and the HTML5 spec).
  65279. * dom/DocumentFragment.h:
  65280. * dom/Element.cpp:
  65281. (WebCore::Element::createContextualFragment):
  65282. - Pass the contextElement (this).
  65283. * html/HTMLConstructionSite.cpp:
  65284. (WebCore::HTMLConstructionSite::setForm):
  65285. - Needed by for the fragment case.
  65286. (WebCore::HTMLConstructionSite::insertHTMLBodyStartTagInBody):
  65287. - I'm not sure this method should exist, it only has one caller.
  65288. but for now, I've moved the fragment case FIXME out to the
  65289. one caller and implemented it.
  65290. * html/HTMLConstructionSite.h:
  65291. * html/HTMLDocumentParser.cpp:
  65292. (WebCore::HTMLNames::tokenizerStateForContextElement):
  65293. - Part of the fragment case handling for the HTML5 parser.
  65294. (WebCore::HTMLDocumentParser::HTMLDocumentParser):
  65295. - Set the Tokenizer state based on the contextElement.
  65296. (WebCore::HTMLDocumentParser::parseDocumentFragment):
  65297. - Take a contextElement argument.
  65298. * html/HTMLDocumentParser.h:
  65299. * html/HTMLElement.cpp:
  65300. (WebCore::HTMLElement::setInnerHTML):
  65301. - Added a FIXME before the branches the old parser used to avoid ever needing
  65302. to pass a context element when parsing HTML fragments.
  65303. (WebCore::HTMLElement::insertAdjacentHTML):
  65304. - Pass the context element.
  65305. * html/HTMLTokenizer.h:
  65306. * html/HTMLTreeBuilder.cpp:
  65307. - I added a new helper class FragmentParsingContext to simplify the two
  65308. HTMLTreeBuilder constructors and hide the existence of m_dummyDocumentForFragmentParse.
  65309. - I also removed m_isParsingFragment and replaced it with an isParsingFragment() function.
  65310. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  65311. (WebCore::HTMLTreeBuilder::FragmentParsingContext::FragmentParsingContext):
  65312. (WebCore::HTMLTreeBuilder::FragmentParsingContext::document):
  65313. (WebCore::HTMLTreeBuilder::FragmentParsingContext::~FragmentParsingContext):
  65314. (WebCore::HTMLTreeBuilder::passTokenToLegacyParser):
  65315. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  65316. - I had to implement two notImplemented() states in order to get most of the
  65317. layout tests to pass when using the HTML5 parser fragment case.
  65318. (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup):
  65319. (WebCore::HTMLTreeBuilder::processStartTagForInTable):
  65320. (WebCore::HTMLTreeBuilder::processStartTag):
  65321. (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
  65322. (WebCore::HTMLTreeBuilder::processEndTagForInTableBody):
  65323. (WebCore::HTMLTreeBuilder::processEndTagForInRow):
  65324. (WebCore::HTMLTreeBuilder::processEndTagForInCell):
  65325. (WebCore::HTMLTreeBuilder::processCaptionEndTagForInCaption):
  65326. (WebCore::HTMLTreeBuilder::processTrEndTagForInRow):
  65327. (WebCore::HTMLTreeBuilder::processTableEndTagForInTable):
  65328. (WebCore::HTMLTreeBuilder::processEndTag):
  65329. (WebCore::HTMLTreeBuilder::processCharacterBuffer):
  65330. (WebCore::HTMLTreeBuilder::processEndOfFile):
  65331. (WebCore::HTMLTreeBuilder::finished):
  65332. - The HTML5 parsing algorithm fragment case uses a dummy document to handle all the parsing
  65333. and then moves all the children from the dummy document over into a DocumentFragment
  65334. when the parse is done. We could avoid this adopt step by making the TreeBuilder a bit
  65335. more complicated, but I'm not sure that's necessary (yet).
  65336. * html/HTMLTreeBuilder.h:
  65337. (WebCore::HTMLTreeBuilder::isParsingFragment):
  65338. (WebCore::HTMLTreeBuilder::FragmentParsingContext::fragment):
  65339. (WebCore::HTMLTreeBuilder::FragmentParsingContext::contextElement):
  65340. (WebCore::HTMLTreeBuilder::FragmentParsingContext::scriptingPermission):
  65341. * xml/XSLTProcessor.cpp:
  65342. (WebCore::createFragmentFromSource):
  65343. 2010-08-09 Dumitru Daniliuc <dumi@chromium.org>
  65344. Reviewed by Adam Barth.
  65345. Auto-generate most HTML5 DB bindings.
  65346. https://bugs.webkit.org/show_bug.cgi?id=43382
  65347. * Android.jscbindings.mk: Remove {JS|V8}Database{Sync}Custom.cpp
  65348. and the custom implementations of openDatabase{Sync}().
  65349. * Android.v8bindings.mk:
  65350. * CMakeLists.txt:
  65351. * GNUmakefile.am:
  65352. * WebCore.gypi:
  65353. * WebCore.pro:
  65354. * WebCore.vcproj/WebCore.vcproj:
  65355. * WebCore.xcodeproj/project.pbxproj:
  65356. * bindings/js/JSBindingsAllInOne.cpp:
  65357. * bindings/js/JSDOMWindowCustom.cpp:
  65358. * bindings/js/JSDatabaseCustom.cpp: Removed.
  65359. * bindings/js/JSDatabaseSyncCustom.cpp: Removed.
  65360. * bindings/js/JSWorkerContextCustom.cpp:
  65361. * bindings/v8/custom/V8DOMWindowCustom.cpp:
  65362. * bindings/v8/custom/V8DatabaseCustom.cpp: Removed.
  65363. * bindings/v8/custom/V8DatabaseSyncCustom.cpp: Removed.
  65364. * bindings/v8/custom/V8WorkerContextCustom.cpp:
  65365. * bindings/scripts/CodeGeneratorGObject.pm: Change the code generators
  65366. to check that each value can be converted to the respective
  65367. argument type.
  65368. * bindings/scripts/CodeGeneratorJS.pm:
  65369. * bindings/scripts/CodeGeneratorV8.pm:
  65370. * bindings/scripts/test/JS/JSTestCallback.cpp:
  65371. (WebCore::JSTestCallback::~JSTestCallback):
  65372. * bindings/scripts/test/JS/JSTestObj.cpp:
  65373. (WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs):
  65374. (WebCore::jsTestObjPrototypeFunctionIntMethodWithArgs):
  65375. (WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
  65376. (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgs):
  65377. (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
  65378. (WebCore::jsTestObjPrototypeFunctionSerializedValue):
  65379. (WebCore::jsTestObjPrototypeFunctionIdbKey):
  65380. (WebCore::jsTestObjPrototypeFunctionCustomArgsAndException):
  65381. (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndArg):
  65382. (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndOptionalArg):
  65383. (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGesture):
  65384. (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGestureASAD):
  65385. (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalArg):
  65386. (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg):
  65387. (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs):
  65388. (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackArg):
  65389. (WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg):
  65390. (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackAndOptionalArg):
  65391. (WebCore::jsTestObjPrototypeFunctionOverloadedMethod1):
  65392. (WebCore::jsTestObjPrototypeFunctionOverloadedMethod2):
  65393. (WebCore::jsTestObjPrototypeFunctionOverloadedMethod3):
  65394. (WebCore::jsTestObjPrototypeFunctionOverloadedMethod4):
  65395. * bindings/scripts/test/V8/V8TestObj.cpp:
  65396. (WebCore::TestObjInternal::voidMethodWithArgsCallback):
  65397. (WebCore::TestObjInternal::intMethodWithArgsCallback):
  65398. (WebCore::TestObjInternal::objMethodWithArgsCallback):
  65399. (WebCore::TestObjInternal::methodThatRequiresAllArgsCallback):
  65400. (WebCore::TestObjInternal::methodThatRequiresAllArgsAndThrowsCallback):
  65401. (WebCore::TestObjInternal::idbKeyCallback):
  65402. (WebCore::TestObjInternal::customArgsAndExceptionCallback):
  65403. (WebCore::TestObjInternal::withDynamicFrameAndArgCallback):
  65404. (WebCore::TestObjInternal::withDynamicFrameAndOptionalArgCallback):
  65405. (WebCore::TestObjInternal::withDynamicFrameAndUserGestureCallback):
  65406. (WebCore::TestObjInternal::withDynamicFrameAndUserGestureASADCallback):
  65407. (WebCore::TestObjInternal::methodWithOptionalArgCallback):
  65408. (WebCore::TestObjInternal::methodWithNonOptionalArgAndOptionalArgCallback):
  65409. (WebCore::TestObjInternal::methodWithNonOptionalArgAndTwoOptionalArgsCallback):
  65410. (WebCore::TestObjInternal::methodWithNonCallbackArgAndCallbackArgCallback):
  65411. (WebCore::TestObjInternal::methodWithCallbackAndOptionalArgCallback):
  65412. (WebCore::TestObjInternal::overloadedMethod1Callback):
  65413. (WebCore::TestObjInternal::overloadedMethod2Callback):
  65414. (WebCore::TestObjInternal::overloadedMethod3Callback):
  65415. (WebCore::TestObjInternal::overloadedMethod4Callback):
  65416. (WebCore::):
  65417. (WebCore::ConfigureV8TestObjTemplate):
  65418. * bindings/v8/custom/V8BindingMacros.h:
  65419. * bindings/v8/V8Binding.h: Minor changes required to support the
  65420. auto-generated bindings.
  65421. (WebCore::V8Parameter::V8Parameter):
  65422. * bindings/v8/custom/V8SQLTransactionCustom.cpp:
  65423. (WebCore::V8SQLTransaction::executeSqlCallback):
  65424. * bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:
  65425. (WebCore::V8SQLTransactionSync::executeSqlCallback):
  65426. * page/DOMWindow.idl:
  65427. * storage/Database.cpp:
  65428. (WebCore::Database::transaction):
  65429. (WebCore::Database::readTransaction):
  65430. (WebCore::Database::runTransaction):
  65431. * storage/Database.h:
  65432. * storage/Database.idl:
  65433. * storage/DatabaseSync.cpp:
  65434. (WebCore::DatabaseSync::transaction):
  65435. (WebCore::DatabaseSync::readTransaction):
  65436. (WebCore::DatabaseSync::runTransaction):
  65437. * storage/DatabaseSync.h:
  65438. * storage/DatabaseSync.idl:
  65439. * workers/WorkerContext.idl:
  65440. 2010-08-09 Adam Barth <abarth@webkit.org>
  65441. Reviewed by Eric Seidel.
  65442. Move HTMLViewSourceDocument from legacyParserAddChild to parserAddChild
  65443. https://bugs.webkit.org/show_bug.cgi?id=43740
  65444. This removes the DTD checks, which aren't needed for view source
  65445. documents.
  65446. * html/HTMLViewSourceDocument.cpp:
  65447. (WebCore::HTMLViewSourceDocument::createContainingTable):
  65448. (WebCore::HTMLViewSourceDocument::addSpanWithClassName):
  65449. (WebCore::HTMLViewSourceDocument::addLine):
  65450. (WebCore::HTMLViewSourceDocument::addText):
  65451. (WebCore::HTMLViewSourceDocument::addLink):
  65452. 2010-08-09 Dan Bernstein <mitz@apple.com>
  65453. Reviewed by Simon Fraser.
  65454. Fixed an uninitialized member variable in the Color(CGColorRef) constructor.
  65455. * platform/graphics/cg/ColorCG.cpp:
  65456. (WebCore::Color::Color): Initialize m_valid to true if the color is not 0.
  65457. 2010-08-09 James Robinson <jamesr@chromium.org>
  65458. Chromium compile fix, unreviewed.
  65459. * platform/graphics/skia/PlatformContextSkia.cpp:
  65460. (WebCore::PlatformContextSkia::~PlatformContextSkia):
  65461. (WebCore::PlatformContextSkia::setGraphicsContext3D):
  65462. 2010-08-09 James Robinson <jamesr@chromium.org>
  65463. Reviewed by Dimitri Glazkov.
  65464. [chromium] Add a PrepareTextureCallback to the chromium canvas layer compositor to upload mixed-mode results before compositing
  65465. https://bugs.webkit.org/show_bug.cgi?id=43656
  65466. When compositing an accelerated canvas that is using both hardware and software drawing,
  65467. we need a callback before compositing the layer to make sure that we upload any software
  65468. drawn results to the texture. This will go away as soon as implement all draw calls
  65469. in hardware.
  65470. To test, run any canvas demo that runs in mixed mode and verifies that the software results
  65471. always show up.
  65472. * platform/graphics/chromium/CanvasLayerChromium.cpp:
  65473. (WebCore::CanvasLayerChromium::updateTextureContents):
  65474. * platform/graphics/chromium/CanvasLayerChromium.h:
  65475. (WebCore::CanvasLayerChromium::setPrepareTextureCallback):
  65476. * platform/graphics/skia/PlatformContextSkia.cpp:
  65477. (WebCore::PrepareTextureCallbackImpl::create):
  65478. (WebCore::PrepareTextureCallbackImpl::willPrepareTexture):
  65479. (WebCore::PrepareTextureCallbackImpl::PrepareTextureCallbackImpl):
  65480. (WebCore::PlatformContextSkia::setGraphicsContext3D):
  65481. 2010-08-09 Zhenyao Mo <zmo@google.com>
  65482. Reviewed by David Levin.
  65483. sizeInBytes should be removed
  65484. https://bugs.webkit.org/show_bug.cgi?id=43693
  65485. * html/canvas/WebGLRenderingContext.cpp:
  65486. (WebCore::WebGLRenderingContext::sizeInBytes): Don't generate GL errors. Generate them in the callers instead.
  65487. (WebCore::WebGLRenderingContext::vertexAttribPointer): Generate GL error if sizeInBytes fails.
  65488. * html/canvas/WebGLRenderingContext.h: Make sizeInBytes private helper.
  65489. * html/canvas/WebGLRenderingContext.idl: Remove sizeInBytes.
  65490. 2010-08-09 Eric Carlson <eric.carlson@apple.com>
  65491. Reviewed by Darin Adler.
  65492. https://bugs.webkit.org/show_bug.cgi?id=43702
  65493. <video> element does not resize correctly
  65494. * html/HTMLMediaElement.cpp:
  65495. (WebCore::HTMLMediaElement::setReadyState): RenderVideo::videoSizeChanged is gone, just use
  65496. updateFromElement instead.
  65497. (WebCore::HTMLMediaElement::mediaPlayerDurationChanged): Ditto.
  65498. (WebCore::HTMLMediaElement::mediaPlayerSizeChanged): Ditto.
  65499. * html/HTMLVideoElement.cpp:
  65500. (WebCore::HTMLVideoElement::parseMappedAttribute): Clear the image loader and cached image when
  65501. the 'poster' attribute is changed and we aren't displaying a poster.
  65502. * rendering/RenderVideo.cpp:
  65503. (WebCore::RenderVideo::RenderVideo):
  65504. (WebCore::RenderVideo::intrinsicSizeChanged): videoSizeChanged -> updateIntrinsicSize.
  65505. (WebCore::RenderVideo::updateIntrinsicSize): Renamed from videoSizeChanged, calculate initial
  65506. intrinsic size with calculateIntrinsicSize
  65507. (WebCore::RenderVideo::calculateIntrinsicSize): New, calculate size according to current spec.
  65508. (WebCore::RenderVideo::imageChanged): Reset intrinsic size to default when poster fails to load.
  65509. (WebCore::RenderVideo::updatePlayer): Call updateIntrinsicSize.
  65510. * rendering/RenderVideo.h: Renamed videoSizeChanged to updateIntrinsicSize and make private.
  65511. 2010-08-09 Marcus Bulach <bulach@chromium.org>
  65512. Reviewed by Jeremy Orlow.
  65513. Fixes custom JS bindings for IDBCursor after r64828.
  65514. https://bugs.webkit.org/show_bug.cgi?id=43729
  65515. Build fix, no tests.
  65516. * WebCore.xcodeproj/project.pbxproj:
  65517. * bindings/js/JSIDBAnyCustom.cpp:
  65518. (WebCore::toJS):
  65519. * storage/IDBObjectStore.h:
  65520. 2010-08-09 Sheriff Bot <webkit.review.bot@gmail.com>
  65521. Unreviewed, rolling out r64993.
  65522. http://trac.webkit.org/changeset/64993
  65523. https://bugs.webkit.org/show_bug.cgi?id=43734
  65524. broke chromium compile (Requested by jamesr on #webkit).
  65525. * platform/graphics/chromium/CanvasLayerChromium.cpp:
  65526. (WebCore::CanvasLayerChromium::updateTextureContents):
  65527. * platform/graphics/chromium/CanvasLayerChromium.h:
  65528. * platform/graphics/skia/PlatformContextSkia.cpp:
  65529. (WebCore::PlatformContextSkia::~PlatformContextSkia):
  65530. (WebCore::PlatformContextSkia::setGraphicsContext3D):
  65531. 2010-08-09 James Robinson <jamesr@chromium.org>
  65532. Reviewed by Dimitri Glazkov.
  65533. [chromium] Add a PrepareTextureCallback to the chromium canvas layer compositor to upload mixed-mode results before compositing
  65534. https://bugs.webkit.org/show_bug.cgi?id=43656
  65535. When compositing an accelerated canvas that is using both hardware and software drawing,
  65536. we need a callback before compositing the layer to make sure that we upload any software
  65537. drawn results to the texture. This will go away as soon as implement all draw calls
  65538. in hardware.
  65539. To test, run any canvas demo that runs in mixed mode and verifies that the software results
  65540. always show up.
  65541. * platform/graphics/chromium/CanvasLayerChromium.cpp:
  65542. (WebCore::CanvasLayerChromium::updateTextureContents):
  65543. * platform/graphics/chromium/CanvasLayerChromium.h:
  65544. (WebCore::CanvasLayerChromium::setPrepareTextureCallback):
  65545. * platform/graphics/skia/PlatformContextSkia.cpp:
  65546. (WebCore::PrepareTextureCallbackImpl::create):
  65547. (WebCore::PrepareTextureCallbackImpl::willPrepareTexture):
  65548. (WebCore::PrepareTextureCallbackImpl::PrepareTextureCallbackImpl):
  65549. (WebCore::PlatformContextSkia::setGraphicsContext3D):
  65550. 2010-08-09 Dominic Cooney <dominicc@google.com>
  65551. Reviewed by Adam Barth.
  65552. Moves window.open logic into the generic bindings.
  65553. This patch moves window.open logic from V8 into the generic
  65554. bindings so it could be shared with JSC. JSC sharing is not in
  65555. this patch. This patch is of the same flavor/intent as 33201.
  65556. https://bugs.webkit.org/show_bug.cgi?id=41392
  65557. * bindings/generic/BindingDOMWindow.h:
  65558. (WebCore::::createWindow):
  65559. (WebCore::::open):
  65560. (WebCore::::completeURL):
  65561. * bindings/generic/BindingSecurity.h:
  65562. (WebCore::::allowPopUp):
  65563. (WebCore::::shouldAllowNavigation):
  65564. * bindings/v8/V8Binding.h:
  65565. (WebCore::V8Binding::emptyScriptValue):
  65566. * bindings/v8/V8Utilities.cpp:
  65567. (WebCore::transferHiddenDependency):
  65568. (WebCore::processingUserGesture):
  65569. (WebCore::shouldAllowNavigation):
  65570. (WebCore::completeURL):
  65571. * bindings/v8/custom/V8ArrayBufferCustom.cpp:
  65572. * bindings/v8/custom/V8DOMWindowCustom.cpp:
  65573. (WebCore::V8DOMWindow::showModalDialogCallback):
  65574. (WebCore::V8DOMWindow::openCallback):
  65575. * bindings/v8/specialization/V8BindingState.cpp:
  65576. (WebCore::::getActiveFrame):
  65577. (WebCore::::getFirstFrame):
  65578. (WebCore::::processingUserGesture):
  65579. * bindings/v8/specialization/V8BindingState.h:
  65580. (WebCore::):
  65581. 2010-08-09 Marcus Bulach <bulach@chromium.org>
  65582. Reviewed by Darin Adler.
  65583. Fixes xcode project issues after r64828:
  65584. https://bugs.webkit.org/show_bug.cgi?id=43638
  65585. Build fix, no tests (sort-Xcode-project-file should not throw any warnings).
  65586. * WebCore.xcodeproj/project.pbxproj: fixed IDBCursor and related IndexedDB files, and re-ran sort-Xcode-project-file.
  65587. 2010-08-09 Ilya Tikhonovsky <loislo@chromium.org>
  65588. Reviewed by Pavel Feldman.
  65589. Web Inspector: Remove callId argument from all backend agents' methods.
  65590. https://bugs.webkit.org/show_bug.cgi?id=43723
  65591. * inspector/CodeGeneratorInspector.pm:
  65592. * inspector/InspectorApplicationCacheAgent.cpp:
  65593. (WebCore::InspectorApplicationCacheAgent::getApplicationCaches):
  65594. * inspector/InspectorApplicationCacheAgent.h:
  65595. * inspector/InspectorBackend.cpp:
  65596. (WebCore::InspectorBackend::getProfilerLogLines):
  65597. (WebCore::InspectorBackend::clearConsoleMessages):
  65598. (WebCore::InspectorBackend::getDatabaseTableNames):
  65599. * inspector/InspectorBackend.h:
  65600. * inspector/InspectorController.cpp:
  65601. (WebCore::InspectorController::getCookies):
  65602. (WebCore::InspectorController::getDOMStorageEntries):
  65603. (WebCore::InspectorController::setDOMStorageItem):
  65604. (WebCore::InspectorController::removeDOMStorageItem):
  65605. (WebCore::InspectorController::getProfileHeaders):
  65606. (WebCore::InspectorController::getProfile):
  65607. (WebCore::InspectorController::getResourceContent):
  65608. * inspector/InspectorController.h:
  65609. * inspector/InspectorDOMAgent.cpp:
  65610. (WebCore::InspectorDOMAgent::getChildNodes):
  65611. (WebCore::InspectorDOMAgent::setAttribute):
  65612. (WebCore::InspectorDOMAgent::removeAttribute):
  65613. (WebCore::InspectorDOMAgent::removeNode):
  65614. (WebCore::InspectorDOMAgent::changeTagName):
  65615. (WebCore::InspectorDOMAgent::getOuterHTML):
  65616. (WebCore::InspectorDOMAgent::setOuterHTML):
  65617. (WebCore::InspectorDOMAgent::setTextNodeValue):
  65618. (WebCore::InspectorDOMAgent::getEventListenersForNode):
  65619. (WebCore::InspectorDOMAgent::getStyles):
  65620. (WebCore::InspectorDOMAgent::getAllStyles):
  65621. (WebCore::InspectorDOMAgent::getStyleSheet):
  65622. (WebCore::InspectorDOMAgent::getRuleRanges):
  65623. (WebCore::InspectorDOMAgent::getInlineStyle):
  65624. (WebCore::InspectorDOMAgent::getComputedStyle):
  65625. (WebCore::InspectorDOMAgent::applyStyleText):
  65626. (WebCore::InspectorDOMAgent::setStyleText):
  65627. (WebCore::InspectorDOMAgent::setStyleProperty):
  65628. (WebCore::InspectorDOMAgent::toggleStyleEnabled):
  65629. (WebCore::InspectorDOMAgent::setRuleSelector):
  65630. (WebCore::InspectorDOMAgent::addRule):
  65631. (WebCore::InspectorDOMAgent::pushNodeByPathToFrontend):
  65632. * inspector/InspectorDOMAgent.h:
  65633. * inspector/InspectorDebuggerAgent.cpp:
  65634. (WebCore::InspectorDebuggerAgent::setBreakpoint):
  65635. (WebCore::InspectorDebuggerAgent::editScriptSource):
  65636. (WebCore::InspectorDebuggerAgent::getScriptSource):
  65637. * inspector/InspectorDebuggerAgent.h:
  65638. 2010-08-09 François Sausset <sausset@gmail.com>
  65639. Reviewed by Kenneth Rohde Christiansen.
  65640. Take into account style color to draw MathML mroot radical.
  65641. https://bugs.webkit.org/show_bug.cgi?id=43628
  65642. Test: mathml/presentation/roots.xhtml
  65643. * mathml/RenderMathMLRoot.cpp:
  65644. (WebCore::RenderMathMLRoot::paint):
  65645. 2010-08-09 François Sausset <sausset@gmail.com>
  65646. Reviewed by Kenneth Rohde Christiansen.
  65647. Implement MathML deprecated style attributes
  65648. https://bugs.webkit.org/show_bug.cgi?id=43503
  65649. Test: mathml/presentation/attributes.xhtml
  65650. * mathml/MathMLElement.cpp:
  65651. (WebCore::MathMLElement::mapToEntry):
  65652. (WebCore::MathMLElement::parseMappedAttribute):
  65653. * mathml/mathattrs.in:
  65654. 2010-08-09 Ilya Tikhonovsky <loislo@chromium.org>
  65655. Reviewed by Yury Semikhatsky.
  65656. Web Inspector: remove unnecessary did* methods from RemoteInspectorFrontend.
  65657. https://bugs.webkit.org/show_bug.cgi?id=43721
  65658. * inspector/CodeGeneratorInspector.pm:
  65659. 2010-08-09 Andreas Kling <andreas.kling@nokia.com>
  65660. Reviewed by Antonio Gomes.
  65661. Canvas: Fast-path for setting the already set color with setStrokeColor() and setFillColor()
  65662. https://bugs.webkit.org/show_bug.cgi?id=43718
  65663. Avoid creating CanvasStyle objects when setting the same fill or stroke color using
  65664. the WebKit-specific setters of CanvasRenderingContext2D.
  65665. * html/canvas/CanvasRenderingContext2D.cpp:
  65666. (WebCore::CanvasRenderingContext2D::setStrokeColor):
  65667. (WebCore::CanvasRenderingContext2D::setFillColor):
  65668. * html/canvas/CanvasStyle.cpp:
  65669. (WebCore::CanvasStyle::isEquivalentColor):
  65670. * html/canvas/CanvasStyle.h: Added CanvasStyle::isEquivalentColor() overloads
  65671. for RGBA and CMYKA channel values.
  65672. 2010-08-09 Pavel Feldman <pfeldman@chromium.org>
  65673. Reviewed by Yury Semikhatsky.
  65674. Web Inspector: restore original last panel restore logic.
  65675. https://bugs.webkit.org/show_bug.cgi?id=43719
  65676. * inspector/front-end/inspector.js:
  65677. (WebInspector.showPanel):
  65678. 2010-08-09 Dumitru Daniliuc <dumi@chromium.org>
  65679. Unreviewed, fixing the builds after r64967.
  65680. * CMakeLists.txt:
  65681. * GNUmakefile.am:
  65682. * WebCore.pro:
  65683. * WebCore.vcproj/WebCore.vcproj:
  65684. 2010-05-27 MORITA Hajime <morrita@google.com>
  65685. Reviewed by Ojan Vafai.
  65686. <http://webkit.org/b/36359>
  65687. Double clicking page's last editable inline element causes assertion failure.
  65688. <http://webkit.org/b/36360>
  65689. Double clicking page's first editable inline element cannot select a word.
  65690. nextBoundary() and previousBoundary() assumed that editable
  65691. boundaries are on block-level elements, But it can appear on
  65692. inline-level elements. So we start boundary look-up from the given
  65693. node, instead of the containingBlock of the given node.
  65694. Also, added TextIteratorEndsAtEditingBoundary to
  65695. BackwardsCharacterIterator, otherwise, the VisiblePosition
  65696. returned by BackwardsCharacterIterator might cross an editing
  65697. boundary.
  65698. Test: editing/selection/doubleclick-inline-first-last-contenteditable.html
  65699. * dom/Position.cpp:
  65700. (WebCore::Position::parentEditingBoundary): Added.
  65701. * dom/Position.h:
  65702. * editing/TextIterator.cpp:
  65703. (WebCore::TextIterator::TextIterator):
  65704. (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
  65705. (WebCore::SimplifiedBackwardsTextIterator::advance):
  65706. (WebCore::SimplifiedBackwardsTextIterator::crossesEditingBoundary): Added.
  65707. (WebCore::SimplifiedBackwardsTextIterator::setCurrentNode): Added.
  65708. (WebCore::SimplifiedBackwardsTextIterator::clearCurrentNode): Added.
  65709. (WebCore::BackwardsCharacterIterator::BackwardsCharacterIterator):
  65710. * editing/TextIterator.h:
  65711. (WebCore::):
  65712. * editing/visible_units.cpp:
  65713. (WebCore::previousBoundary):
  65714. (WebCore::nextBoundary):
  65715. 2010-08-09 Ilya Tikhonovsky <loislo@chromium.org>
  65716. Reviewed by Yury Semikhatsky.
  65717. WebInspector: Current implementation of showPanel is a bit complicated.
  65718. It is using internal enum for all the panels and this is the problem because
  65719. we should change a lot of code for a new panel.
  65720. https://bugs.webkit.org/show_bug.cgi?id=43711
  65721. * WebCore.exp.in:
  65722. * inspector/Inspector.idl:
  65723. * inspector/InspectorController.cpp:
  65724. (WebCore::InspectorController::InspectorController):
  65725. (WebCore::InspectorController::storeLastActivePanel):
  65726. (WebCore::InspectorController::connectFrontend):
  65727. (WebCore::InspectorController::showPanel):
  65728. (WebCore::InspectorController::disconnectFrontend):
  65729. * inspector/InspectorController.h:
  65730. * inspector/InspectorFrontend.cpp:
  65731. * inspector/InspectorFrontend.h:
  65732. * inspector/front-end/ElementsTreeOutline.js:
  65733. (WebInspector.ElementsTreeElement.prototype.selectOnMouseDown):
  65734. * inspector/front-end/ExtensionServer.js:
  65735. (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource):
  65736. * inspector/front-end/inspector.js:
  65737. (WebInspector.documentClick.followLink):
  65738. (WebInspector.documentClick):
  65739. (WebInspector.toggleSearchingForNode):
  65740. (WebInspector.showPanel):
  65741. (WebInspector.selectDatabase):
  65742. (WebInspector.selectDOMStorage):
  65743. (WebInspector.showProfileForURL):
  65744. 2010-08-09 Ariya Hidayat <ariya@sencha.com>
  65745. Reviewed by Kenneth Rohde Christiansen.
  65746. [Qt] GraphicsContext::clipOut(IntRect) ignores the transformation matrix.
  65747. https://bugs.webkit.org/show_bug.cgi?id=43705
  65748. Just like clipOut(Path), which is taken care in r60796 already,
  65749. clipOut(IntRect) must transform the window bounding box properly.
  65750. * platform/graphics/qt/GraphicsContextQt.cpp:
  65751. (WebCore::GraphicsContext::clipOut):
  65752. 2010-08-09 François Sausset <sausset@gmail.com>
  65753. Reviewed by Kenneth Rohde Christiansen.
  65754. Implement mfenced MathML element
  65755. Update stretchy operator code to take into account new brackets and to tune layout parameters
  65756. https://bugs.webkit.org/show_bug.cgi?id=42472
  65757. Test: mathml/presentation/fenced.xhtml
  65758. * WebCore.xcodeproj/project.pbxproj:
  65759. * mathml/MathMLInlineContainerElement.cpp:
  65760. (WebCore::MathMLInlineContainerElement::MathMLInlineContainerElement):
  65761. (WebCore::MathMLInlineContainerElement::createRenderer):
  65762. * mathml/RenderMathMLFenced.cpp: Added.
  65763. (WebCore::RenderMathMLFenced::RenderMathMLFenced):
  65764. (WebCore::RenderMathMLFenced::updateFromElement):
  65765. (WebCore::RenderMathMLFenced::makeOperatorStyle):
  65766. (WebCore::RenderMathMLFenced::makeFences):
  65767. (WebCore::RenderMathMLFenced::addChild):
  65768. (WebCore::RenderMathMLFenced::layout):
  65769. * mathml/RenderMathMLFenced.h: Added.
  65770. * mathml/RenderMathMLOperator.cpp:
  65771. (WebCore::RenderMathMLOperator::RenderMathMLOperator):
  65772. (WebCore::RenderMathMLOperator::stretchToHeight):
  65773. (WebCore::):
  65774. (WebCore::RenderMathMLOperator::updateFromElement):
  65775. (WebCore::RenderMathMLOperator::createStackableStyle):
  65776. (WebCore::RenderMathMLOperator::createGlyph):
  65777. 2010-08-08 ryuan choi <ryuan.choi@samsung.com>
  65778. Reviewed by Darin Adler.
  65779. REGRESSION(64898,64949) build break because of wrong filename
  65780. https://bugs.webkit.org/show_bug.cgi?id=43701
  65781. add SVGPathStringSource.cpp and modify SVGPathSourceString.cpp to
  65782. SVGPathStringSource.cpp
  65783. simple fixing build break, so No new tests.
  65784. * CMakeLists.txt:
  65785. 2010-08-08 Ariya Hidayat <ariya@sencha.com>
  65786. Reviewed by Antonio Gomes.
  65787. Inconsistent Qt version checks
  65788. https://bugs.webkit.org/show_bug.cgi?id=43695
  65789. Use QT_VERSION_CHECK macro instead of encoded hex.
  65790. * platform/graphics/qt/ImageBufferQt.cpp:
  65791. (WebCore::getImageData):
  65792. * platform/network/qt/NetworkStateNotifierPrivate.h:
  65793. * platform/network/qt/NetworkStateNotifierQt.cpp:
  65794. * platform/network/qt/QNetworkReplyHandler.cpp:
  65795. (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
  65796. (WebCore::QNetworkReplyHandler::start):
  65797. * platform/qt/RenderThemeQt.cpp:
  65798. (WebCore::RenderThemeQt::paintMediaSliderTrack):
  65799. 2010-08-08 Csaba Osztrogonác <ossy@webkit.org>
  65800. Reviewed by Antonio Gomes.
  65801. Web Inspector: Fix warning in WebCore/inspector/InspectorDebuggerAgent.cpp
  65802. https://bugs.webkit.org/show_bug.cgi?id=43698
  65803. * inspector/InspectorDebuggerAgent.cpp:
  65804. (WebCore::InspectorDebuggerAgent::editScriptSource): Add suggested parentheses.
  65805. 2010-08-05 MORITA Hajime <morrita@google.com>
  65806. Reviewed by Tony Chang.
  65807. Pasting should fire textInput event.
  65808. https://bugs.webkit.org/show_bug.cgi?id=42958
  65809. - Extended TextEvents to hold paste-specific parameters
  65810. - Did fire TextEvents at where we originally did immediate pastes.
  65811. - Factored out TextEvent handling from EventHandler::defaultTextInputEventHandler()
  65812. to Editor::handleTextEvent() because it's solely done by the editor.
  65813. - move actual pasting logic to Editor::handleTextEvent()
  65814. Test: editing/pasteboard/paste-text-events.html
  65815. * WebCore.exp.in:
  65816. * dom/TextEvent.cpp:
  65817. (WebCore::TextEvent::create):
  65818. (WebCore::TextEvent::createForPlainTextPaste):
  65819. (WebCore::TextEvent::createForFragmentPaste):
  65820. (WebCore::TextEvent::TextEvent):
  65821. * dom/TextEvent.h:
  65822. (WebCore::TextEvent::isPaste):
  65823. (WebCore::TextEvent::shouldSmartReplace):
  65824. (WebCore::TextEvent::shouldMatchStyle):
  65825. (WebCore::TextEvent::pastingFragment):
  65826. * editing/Editor.cpp:
  65827. (WebCore::Editor::handleTextEvent):
  65828. (WebCore::Editor::pasteAsPlainText):
  65829. (WebCore::Editor::pasteAsFragment):
  65830. (WebCore::Editor::pasteAsPlainTextWithPasteboard):
  65831. (WebCore::Editor::pasteWithPasteboard):
  65832. (WebCore::Editor::dispatchCPPEvent):
  65833. (WebCore::Editor::findEventTargetFromSelection):
  65834. * editing/Editor.h:
  65835. * page/EventHandler.cpp:
  65836. (WebCore::EventHandler::defaultTextInputEventHandler):
  65837. 2010-08-08 Kevin Ollivier <kevino@theolliviers.com>
  65838. [wx] Build fix, add member needed to compile Mac-specific font code.
  65839. * platform/graphics/wx/FontPlatformData.h:
  65840. (WebCore::FontPlatformData::ctFont):
  65841. 2010-08-08 Csaba Osztrogonác <ossy@webkit.org>
  65842. Reviewed by Eric Seidel.
  65843. [Qt] Fix warnings in WebCore/platform/WindowsKeyboardCodes.h
  65844. https://bugs.webkit.org/show_bug.cgi?id=43360
  65845. * platform/WindowsKeyboardCodes.h: Undef macros which are also defined in MinGW/include/winuser.h to aviod gcc redefinition warning
  65846. 2010-08-08 James Robinson <jamesr@chromium.org>
  65847. Reviewed by Adam Barth.
  65848. Set the shouldLazyAttach flag to true in the tree builder's adoption agency algorithm
  65849. https://bugs.webkit.org/show_bug.cgi?id=43610
  65850. Sets the shouldLazyAttach flag to true for appendChild() calls inside the HTML tree
  65851. builder's adoption agency flag. This is a speedup assuming that nodes subjected
  65852. to the adoption agency are likely to be frequently reparented, and thus it is better
  65853. to delay creating the render tree until later (when hopefully the DOM is finalized).
  65854. On my mac pro this speeds up fast/parser/residual-style-hang.html by 2.6X.
  65855. * html/HTMLTreeBuilder.cpp:
  65856. (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
  65857. 2010-08-08 Nikita Vasilyev <me@elv1s.ru>
  65858. Reviewed by Pavel Feldman.
  65859. Web Inspector: speed-up Element.prototype.removeChildren
  65860. https://bugs.webkit.org/show_bug.cgi?id=43687
  65861. * inspector/front-end/utilities.js:
  65862. (Element.prototype.removeChildren):
  65863. 2010-08-08 Ilya Tikhonovsky <loislo@chromium.org>
  65864. Reviewed by Pavel Feldman.
  65865. WebInspector: remove hand written InspectorFrontend from almost all places.
  65866. https://bugs.webkit.org/show_bug.cgi?id=43630
  65867. * inspector/ConsoleMessage.cpp:
  65868. * inspector/InjectedScriptHost.cpp:
  65869. (WebCore::InjectedScriptHost::pushNodePathToFrontend):
  65870. * inspector/InjectedScriptHost.h:
  65871. * inspector/Inspector.idl:
  65872. * inspector/InspectorBackend.cpp:
  65873. * inspector/InspectorController.cpp:
  65874. (WebCore::InspectorController::inspectedPageDestroyed):
  65875. (WebCore::InspectorController::inspect):
  65876. (WebCore::InspectorController::focusNode):
  65877. (WebCore::InspectorController::windowVisible):
  65878. (WebCore::InspectorController::addConsoleMessage):
  65879. (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
  65880. (WebCore::InspectorController::setSearchingForNode):
  65881. (WebCore::InspectorController::setMonitoringXHR):
  65882. (WebCore::InspectorController::connectFrontend):
  65883. (WebCore::InspectorController::show):
  65884. (WebCore::InspectorController::showPanel):
  65885. (WebCore::InspectorController::close):
  65886. (WebCore::InspectorController::disconnectFrontend):
  65887. (WebCore::InspectorController::populateScriptObjects):
  65888. (WebCore::InspectorController::didCommitLoad):
  65889. (WebCore::InspectorController::enableResourceTracking):
  65890. (WebCore::InspectorController::disableResourceTracking):
  65891. (WebCore::InspectorController::startTimelineProfiler):
  65892. (WebCore::InspectorController::stopTimelineProfiler):
  65893. (WebCore::InspectorController::postWorkerNotificationToFrontend):
  65894. (WebCore::InspectorController::didCreateWorker):
  65895. (WebCore::InspectorController::didDestroyWorker):
  65896. (WebCore::InspectorController::toggleRecordButton):
  65897. (WebCore::InspectorController::enableProfiler):
  65898. (WebCore::InspectorController::disableProfiler):
  65899. (WebCore::InspectorController::enableDebuggerFromFrontend):
  65900. (WebCore::InspectorController::enableDebugger):
  65901. (WebCore::InspectorController::disableDebugger):
  65902. (WebCore::InspectorController::evaluateForTestInFrontend):
  65903. * inspector/InspectorFrontend.cpp:
  65904. * inspector/InspectorFrontend.h:
  65905. * inspector/InspectorFrontendClientLocal.cpp:
  65906. * inspector/TimelineRecordFactory.cpp:
  65907. 2010-08-08 Dan Bernstein <mitz@apple.com>
  65908. Try to fix the Chromium Mac build after r64915.
  65909. * platform/graphics/chromium/FontPlatformDataChromiumMac.mm:
  65910. (WebCore::FontPlatformData::ctFont): Copied from mac/FontPlatformDataMac.mm.
  65911. 2010-08-08 Dirk Schulze <krit@webkit.org>
  65912. Reviewed by Nikolas Zimmermann.
  65913. Add missing String builder for SVGPathParser
  65914. https://bugs.webkit.org/show_bug.cgi?id=43682
  65915. Introduces SVGPathStringBuilder. SVGPathParser clients, like normalized and unaltered
  65916. SVGPathSegLists or SVGPathByteStreams, can be parsed and transformed to a string.
  65917. StringBuilder can create a string of individual strings, seperated by spaces now.
  65918. Share more code in SVGPathParserFactory and use a common general concept to manage SVG path
  65919. data parsing.
  65920. Doesn't affect any tests.
  65921. * Android.mk:
  65922. * GNUmakefile.am:
  65923. * WebCore.gypi:
  65924. * WebCore.pro:
  65925. * WebCore.vcproj/WebCore.vcproj:
  65926. * WebCore.xcodeproj/project.pbxproj:
  65927. * platform/text/StringBuilder.cpp:
  65928. (WebCore::StringBuilder::toString): Added possibility to use a space between individual strings.
  65929. * platform/text/StringBuilder.h: Cleanup according to WebKit style.
  65930. (WebCore::):
  65931. (WebCore::StringBuilder::StringBuilder):
  65932. (WebCore::StringBuilder::setNonNull):
  65933. (WebCore::StringBuilder::isNull):
  65934. * svg/SVGAllInOne.cpp:
  65935. * svg/SVGPathBuilder.h:
  65936. (WebCore::SVGPathBuilder::cleanup): Clear all references.
  65937. * svg/SVGPathByteStreamBuilder.h:
  65938. (WebCore::SVGPathByteStreamBuilder::cleanup): dito.
  65939. * svg/SVGPathConsumer.h:
  65940. * svg/SVGPathParser.cpp:
  65941. (WebCore::SVGPathParser::cleanup): dito.
  65942. * svg/SVGPathParser.h:
  65943. * svg/SVGPathParserFactory.cpp: Cleanup of factory. More code get shared.
  65944. (WebCore::globalSVGPathBuilder):
  65945. (WebCore::globalSVGPathSegListBuilder):
  65946. (WebCore::globalSVGPathByteStreamBuilder):
  65947. (WebCore::globalSVGPathStringBuilder):
  65948. (WebCore::globalSVGPathParser):
  65949. (WebCore::SVGPathParserFactory::buildPathFromString):
  65950. (WebCore::SVGPathParserFactory::buildPathFromByteStream):
  65951. (WebCore::SVGPathParserFactory::buildSVGPathSegListFromString):
  65952. (WebCore::SVGPathParserFactory::buildSVGPathSegListFromByteStream):
  65953. (WebCore::SVGPathParserFactory::buildStringFromByteStream):
  65954. (WebCore::SVGPathParserFactory::buildSVGPathByteStreamFromString):
  65955. * svg/SVGPathParserFactory.h:
  65956. * svg/SVGPathSegListBuilder.h:
  65957. (WebCore::SVGPathSegListBuilder::cleanup):
  65958. * svg/SVGPathStringBuilder.cpp: Added. Build string from parsed SVG data.
  65959. (WebCore::SVGPathStringBuilder::SVGPathStringBuilder):
  65960. (WebCore::SVGPathStringBuilder::moveTo):
  65961. (WebCore::SVGPathStringBuilder::lineTo):
  65962. (WebCore::SVGPathStringBuilder::lineToHorizontal):
  65963. (WebCore::SVGPathStringBuilder::lineToVertical):
  65964. (WebCore::SVGPathStringBuilder::curveToCubic):
  65965. (WebCore::SVGPathStringBuilder::curveToCubicSmooth):
  65966. (WebCore::SVGPathStringBuilder::curveToQuadratic):
  65967. (WebCore::SVGPathStringBuilder::curveToQuadraticSmooth):
  65968. (WebCore::SVGPathStringBuilder::arcTo):
  65969. (WebCore::SVGPathStringBuilder::closePath):
  65970. * svg/SVGPathStringBuilder.h: Added.
  65971. (WebCore::SVGPathStringBuilder::cleanup):
  65972. (WebCore::SVGPathStringBuilder::result):
  65973. 2010-08-08 Adam Barth <abarth@webkit.org>
  65974. Reviewed by Eric Seidel.
  65975. cross_fuzz WebCore::SelectionController::isFocusedAndActive ReadAV@NULL (9e865de49b1800ec790dcc35d8ebd069)
  65976. https://bugs.webkit.org/show_bug.cgi?id=43040
  65977. The pointer from Document to Frame can be null. See http://webkit.org/coding/major-objects.html.
  65978. * css/CSSStyleSelector.cpp:
  65979. (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
  65980. 2010-08-08 Adam Barth <abarth@webkit.org>
  65981. Reviewed by Dimitri Glazkov.
  65982. frame()->selection() can't be null
  65983. https://bugs.webkit.org/show_bug.cgi?id=43681
  65984. SelectionController is a component of Frame. If frame is non-null, it
  65985. can't possibly be null.
  65986. * html/HTMLAnchorElement.cpp:
  65987. (WebCore::HTMLAnchorElement::setActive):
  65988. 2010-08-08 Adam Barth <abarth@webkit.org>
  65989. Reviewed by Dimitri Glazkov.
  65990. SVGLength uses ASSERTs to validate user input
  65991. https://bugs.webkit.org/show_bug.cgi?id=43680
  65992. ASSERTs aren't in release builds, so we can't use them to validate user
  65993. input! We've seen a bunch of examples of this in SVG code. It might
  65994. be worth auditing all the code to remove this misguided pattern.
  65995. Test: svg/dom/svg-length-units.html
  65996. * svg/SVGLength.cpp:
  65997. (WebCore::SVGLength::newValueSpecifiedUnits):
  65998. (WebCore::SVGLength::convertToSpecifiedUnits):
  65999. 2010-08-07 Adam Barth <abarth@webkit.org>
  66000. Reviewed by Sam Weinig.
  66001. Empty strings can have more than one ref
  66002. https://bugs.webkit.org/show_bug.cgi?id=43666
  66003. These asserts are trying to say that we have a thread-safe copy of the
  66004. string, but they're not accurate for empty strings because we use a
  66005. special static empty string that magically has infinite refs.
  66006. * storage/OriginUsageRecord.cpp:
  66007. (WebCore::OriginUsageRecord::addDatabase):
  66008. (WebCore::OriginUsageRecord::markDatabase):
  66009. 2010-08-07 Gyuyoung Kim <gyuyoung.kim@samsung.com>
  66010. Reviewed by Eric Seidel.
  66011. [WML] Add KURL parameter to WMLDocument::create()
  66012. https://bugs.webkit.org/show_bug.cgi?id=43173
  66013. To fix build break in WML, url parameter is added. Because,
  66014. Document class has url parameter.
  66015. * wml/WMLDocument.cpp:
  66016. (WebCore::WMLDocument::WMLDocument):
  66017. * wml/WMLDocument.h:
  66018. (WebCore::WMLDocument::create): Add an url parameter to create() method
  66019. 2010-08-07 Gyuyoung Kim <gyuyoung.kim@samsung.com>
  66020. Reviewed by Eric Seidel.
  66021. [WML] Change getIDAttribute() with getIdAttribute()
  66022. https://bugs.webkit.org/show_bug.cgi?id=43175
  66023. Change getIDAttribute() with getIdAttribute() because function
  66024. name was changed.
  66025. * wml/WMLCardElement.cpp:
  66026. (WebCore::WMLCardElement::findNamedCardInDocument): Change getIDAttribute() with getIdAttribute().
  66027. 2010-08-07 Mihai Parparita <mihaip@chromium.org>
  66028. Reviewed by Adam Barth.
  66029. WebTiming does not take page cache into account
  66030. https://bugs.webkit.org/show_bug.cgi?id=42772
  66031. When restoring a page from the page cache, reset its DocumentLoadTiming
  66032. struct and record navigationStart.
  66033. Test: fast/events/onunload-back-to-page-cache.html
  66034. * loader/DocumentLoadTiming.h: removed Noncopyable, since it's just a simple struct.
  66035. * loader/DocumentLoader.h:
  66036. (WebCore::DocumentLoader::resetTiming): Added method.
  66037. * loader/FrameLoader.cpp:
  66038. (WebCore::FrameLoader::stopLoading): Uncommented assert.
  66039. (WebCore::FrameLoader::loadProvisionalItemFromCachedPage): Added resetTiming() call.
  66040. 2010-08-07 Zoltan Horvath <zoltan@webkit.org>
  66041. Reviewed by Eric Seidel.
  66042. Allow custom memory allocation control for EventHandlingState struct
  66043. https://bugs.webkit.org/show_bug.cgi?id=43548
  66044. Inherits the following class from FastAllocBase because it is
  66045. instantiated by 'new':
  66046. struct name - instantiated at: WebCore/
  66047. EventHandlingState - html/HTMLInputElement.cpp:2051
  66048. * html/HTMLInputElement.cpp:
  66049. 2010-08-07 Jay Civelli <jcivelli@chromium.org>
  66050. Reviewed by Eric Seidel.
  66051. [Chromium] Remove unecessary focus code.
  66052. https://bugs.webkit.org/show_bug.cgi?id=43542
  66053. * platform/chromium/ChromiumBridge.h:
  66054. * platform/chromium/WidgetChromium.cpp:
  66055. (WebCore::Widget::setFocus):
  66056. 2010-08-07 Gyuyoung Kim <gyuyoung.kim@samsung.com>
  66057. Reviewed by Eric Seidel.
  66058. [WML] Include FormDataBuilder.h in WMLGoElement.h
  66059. https://bugs.webkit.org/show_bug.cgi?id=43177
  66060. To fix build breaks in WMLGoElement.cpp, FormDataBuilder.h needs to be included.
  66061. * wml/WMLGoElement.cpp: Include FormDataBuilder.h
  66062. 2010-08-07 Gyuyoung Kim <gyuyoung.kim@samsung.com>
  66063. Reviewed by Eric Seidel.
  66064. [WML] Add dummy argument to SelectElement::defaultEventHandler() in WMLSelectElement
  66065. https://bugs.webkit.org/show_bug.cgi?id=43176
  66066. * wml/WMLSelectElement.cpp:
  66067. (WebCore::WMLSelectElement::defaultEventHandler): Sets NULL parameter to SelectElement::defaultEventHandler.
  66068. 2010-08-07 Gyuyoung Kim <gyuyoung.kim@samsung.com>
  66069. Reviewed by Eric Seidel.
  66070. [WML] Change DocumentParser with ScriptableDocumentParser in WMLDocument
  66071. https://bugs.webkit.org/show_bug.cgi?id=43174
  66072. * wml/WMLDocument.cpp:
  66073. (WebCore::WMLDocument::finishedParsing): Change DocumentParser with ScriptableDocumentParser.
  66074. 2010-08-07 Dan Bernstein <mitz@apple.com>
  66075. Reviewed by Sam Weinig.
  66076. Use ctFont() to get the CTFont.
  66077. * platform/graphics/mac/FontMac.mm:
  66078. (WebCore::showGlyphsWithAdvances):
  66079. 2010-08-07 Adam Barth <abarth@webkit.org>
  66080. Reviewed by Sam Weinig.
  66081. document->documentElement can always be null
  66082. https://bugs.webkit.org/show_bug.cgi?id=43677
  66083. This ASSERT is bogus.
  66084. * css/StyleMedia.cpp:
  66085. (WebCore::StyleMedia::matchMedium):
  66086. 2010-08-07 Dan Bernstein <mitz@apple.com>
  66087. Reviewed by Anders Carlsson.
  66088. <rdar://problem/8285090> First word on a line doesn’t hyphenate properly
  66089. https://bugs.webkit.org/show_bug.cgi?id=43679
  66090. Test: fast/text/hyphenate-first-word.html
  66091. * rendering/RenderBlockLineLayout.cpp:
  66092. (WebCore::tryHyphenating): The character at lastSpace is not necessarily a whitespace character
  66093. before the current word. It can also be part of the word, such as when the word is the first
  66094. one on the line. Include the charcater at lastSpace in the string passed to lastHyphenLocation().
  66095. 2010-08-07 Dan Bernstein <mitz@apple.com>
  66096. Build fix
  66097. * platform/graphics/SimpleFontData.h:
  66098. 2010-08-07 Dan Bernstein <mitz@apple.com>
  66099. Reviewed by Anders Carlsson.
  66100. Created a separate SimpleFontData constructor exclusively for SVG fonts and moved the CTFontRef
  66101. from SimpleFontData to FontPlatformData.
  66102. https://bugs.webkit.org/show_bug.cgi?id=43674
  66103. * config.h: Moved definitions of WTF_USE_CORE_TEXT and WTF_USE_ATSUI from here to wtf/Platform.h.
  66104. * css/CSSFontFaceSource.cpp:
  66105. (WebCore::CSSFontFaceSource::getFontData): Use new SimpleFontData constructor for SVG fonts.
  66106. * platform/graphics/SimpleFontData.cpp:
  66107. (WebCore::SimpleFontData::SimpleFontData): Separated into two constructors, one for
  66108. PlatformFontData-based fonts and one for SVG fonts.
  66109. * platform/graphics/SimpleFontData.h: Moved the m_CTFont member variable and the getCTFont()
  66110. accessor from here…
  66111. * platform/graphics/mac/FontPlatformData.h: …to here, renaming the latter ctFont().
  66112. * platform/graphics/mac/FontPlatformDataMac.mm:
  66113. (WebCore::FontPlatformData::FontPlatformData): Copy m_CTFont.
  66114. (WebCore::FontPlatformData::operator=): Copy m_CTFont.
  66115. (WebCore::FontPlatformData::setFont): Clear m_CTFont.
  66116. (WebCore::FontPlatformData::ctFont): Moved here from SimpleFontDataCoreText.cpp and renamed.
  66117. * platform/graphics/mac/SimpleFontDataCoreText.cpp:
  66118. (WebCore::SimpleFontData::getCFStringAttributes): Updated to use FontPlatformData::ctFont().
  66119. * svg/SVGFontData.cpp:
  66120. (WebCore::SVGFontData::SVGFontData): Added an assertion.
  66121. 2010-08-07 Adam Barth <abarth@webkit.org>
  66122. Reviewed by Dimitri Glazkov.
  66123. Regression: Memory corruption in tree builder
  66124. https://bugs.webkit.org/show_bug.cgi?id=43672
  66125. Turns out this ASSERT was wrong and we need the branch. Yay for
  66126. test-driven development.
  66127. * html/HTMLTreeBuilder.cpp:
  66128. (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
  66129. 2010-08-07 Dirk Schulze <krit@webkit.org>
  66130. Unreviewed build-fix.
  66131. Come up with a more efficient way to represent Path segments
  66132. https://bugs.webkit.org/show_bug.cgi?id=41159
  66133. Landed wrong version of the patch.
  66134. * svg/SVGPathByteStreamSource.cpp:
  66135. (WebCore::SVGPathByteStreamSource::SVGPathByteStreamSource):
  66136. (WebCore::SVGPathByteStreamSource::hasMoreData):
  66137. * svg/SVGPathByteStreamSource.h:
  66138. (WebCore::SVGPathByteStreamSource::moveToNextToken):
  66139. * svg/SVGPathParserFactory.cpp:
  66140. (WebCore::SVGPathParserFactory::buildSVGPathSegListFromByteStream):
  66141. (WebCore::SVGPathParserFactory::createSVGPathByteStreamFromString):
  66142. * svg/SVGPathParserFactory.h:
  66143. 2010-08-07 Dirk Schulze <krit@webkit.org>
  66144. Reviewed by Nikolas Zimmermann.
  66145. Come up with a more efficient way to represent Path segments
  66146. https://bugs.webkit.org/show_bug.cgi?id=41159
  66147. Introduce SVGPathByteStream as a fast and efficient way to organize the synchronization
  66148. of Path, SVG path data string and SVGPathSegList in normalized and unaltered modes.
  66149. Extended SVGPathParserFactory to accept SVGPathByteStreams as input source and to create
  66150. a SVGPathByteStream from a SVG path data string.
  66151. Doesn't affect any tests.
  66152. * Android.mk:
  66153. * CMakeLists.txt:
  66154. * GNUmakefile.am:
  66155. * WebCore.gypi:
  66156. * WebCore.pro:
  66157. * WebCore.vcproj/WebCore.vcproj:
  66158. * svg/SVGAllInOne.cpp:
  66159. * svg/SVGPathByteStream.h: Added.
  66160. (WebCore::):
  66161. (WebCore::SVGPathByteStream::create):
  66162. (WebCore::SVGPathByteStream::data):
  66163. (WebCore::SVGPathByteStream::begin):
  66164. (WebCore::SVGPathByteStream::end):
  66165. (WebCore::SVGPathByteStream::append):
  66166. (WebCore::SVGPathByteStream::clear):
  66167. (WebCore::SVGPathByteStream::isEmpty):
  66168. (WebCore::SVGPathByteStream::SVGPathByteStream):
  66169. * svg/SVGPathByteStreamBuilder.cpp: Added.
  66170. (WebCore::SVGPathByteStreamBuilder::SVGPathByteStreamBuilder):
  66171. (WebCore::SVGPathByteStreamBuilder::moveTo):
  66172. (WebCore::SVGPathByteStreamBuilder::lineTo):
  66173. (WebCore::SVGPathByteStreamBuilder::lineToHorizontal):
  66174. (WebCore::SVGPathByteStreamBuilder::lineToVertical):
  66175. (WebCore::SVGPathByteStreamBuilder::curveToCubic):
  66176. (WebCore::SVGPathByteStreamBuilder::curveToCubicSmooth):
  66177. (WebCore::SVGPathByteStreamBuilder::curveToQuadratic):
  66178. (WebCore::SVGPathByteStreamBuilder::curveToQuadraticSmooth):
  66179. (WebCore::SVGPathByteStreamBuilder::arcTo):
  66180. (WebCore::SVGPathByteStreamBuilder::closePath):
  66181. * svg/SVGPathByteStreamBuilder.h: Added.
  66182. (WebCore::SVGPathByteStreamBuilder::setCurrentByteStream):
  66183. (WebCore::SVGPathByteStreamBuilder::writeType):
  66184. (WebCore::SVGPathByteStreamBuilder::writeFlag):
  66185. (WebCore::SVGPathByteStreamBuilder::writeFloat):
  66186. (WebCore::SVGPathByteStreamBuilder::writeFloatPoint):
  66187. (WebCore::SVGPathByteStreamBuilder::writeSegmentType):
  66188. * svg/SVGPathByteStreamSource.cpp: Added.
  66189. (WebCore::SVGPathByteStreamSource::SVGPathByteStreamSource):
  66190. (WebCore::SVGPathByteStreamSource::~SVGPathByteStreamSource):
  66191. (WebCore::SVGPathByteStreamSource::hasMoreData):
  66192. (WebCore::SVGPathByteStreamSource::parseFloat):
  66193. (WebCore::SVGPathByteStreamSource::parseFlag):
  66194. (WebCore::SVGPathByteStreamSource::parseSVGSegmentType):
  66195. (WebCore::SVGPathByteStreamSource::nextCommand):
  66196. * svg/SVGPathByteStreamSource.h: Added.
  66197. (WebCore::SVGPathByteStreamSource::create):
  66198. (WebCore::SVGPathByteStreamSource::readType):
  66199. (WebCore::SVGPathByteStreamSource::readFlag):
  66200. (WebCore::SVGPathByteStreamSource::readFloat):
  66201. (WebCore::SVGPathByteStreamSource::readSVGSegmentType):
  66202. (WebCore::SVGPathByteStreamSource::readFloatPoint):
  66203. * svg/SVGPathParserFactory.cpp:
  66204. (WebCore::globalSVGPathByteStreamBuilder):
  66205. (WebCore::SVGPathParserFactory::buildPathFromByteStream):
  66206. (WebCore::SVGPathParserFactory::buildSVGPathSegListFromByteStream):
  66207. (WebCore::SVGPathParserFactory::buildSVGPathByteStreamFromString):
  66208. * svg/SVGPathParserFactory.h:
  66209. 2010-08-07 Dirk Schulze <krit@webkit.org>
  66210. Not reviewed. Sort Xcode project file.
  66211. * WebCore.xcodeproj/project.pbxproj:
  66212. 2010-08-07 Sheriff Bot <webkit.review.bot@gmail.com>
  66213. Unreviewed, rolling out r64904.
  66214. http://trac.webkit.org/changeset/64904
  66215. https://bugs.webkit.org/show_bug.cgi?id=43671
  66216. Broke the Qt Windows builders. (Requested by bbandix on
  66217. #webkit).
  66218. * WebCore.pri:
  66219. * WebCore.pro:
  66220. * features.pri: Removed.
  66221. 2010-08-07 Balazs Kelemen <kb@inf.u-szeged.hu>
  66222. Reviewed by Eric Seidel.
  66223. [Qt] Build WebKit2 into a static lib
  66224. https://bugs.webkit.org/show_bug.cgi?id=43621
  66225. Just build changes so no new tests.
  66226. * WebCore.pri: Moved feature detection logic into features.pri since we need this in WebKit2.pro as well.
  66227. * WebCore.pro: Moved the specification of the WebKit2 build to WebKit2.pro. Link against the static lib.
  66228. * features.pri: Added.
  66229. 2010-08-07 Nikolas Zimmermann <nzimmermann@rim.com>
  66230. Reviewed by Daniel Bates.
  66231. Pattern fill with image not rendered after reload
  66232. https://bugs.webkit.org/show_bug.cgi?id=41596
  66233. Fixed by a one-liner. Instead of just invalidating it's own resources, images also have to update
  66234. resources in the ancestor chain, if imageChanged() has been called (for example, a slow loading image)
  66235. Test: http/tests/misc/slow-loading-image-in-pattern.html
  66236. * rendering/RenderSVGImage.cpp:
  66237. (WebCore::RenderSVGImage::imageChanged):
  66238. 2010-08-06 Dirk Schulze <krit@webkit.org>
  66239. Reviewed by Nikolas Zimmermann.
  66240. Generalize SVGPathParser to allow more than just strings as input source
  66241. https://bugs.webkit.org/show_bug.cgi?id=43618
  66242. Generalize SVGPathParser, by allowing different parsing sources than just strings.
  66243. For now only a SVGPathStringSource is available, parsing from bytestreams follows soon.
  66244. Each client that wants to parse strings, like Path or SVGPathSegList objects, only
  66245. needs to use the new central SVGPathParserFactory, which glues consumer and sources together.
  66246. Moved the SVGPathSegType enum from SVGPathSeg class in WebCore namespace, for
  66247. easier access throughout the SVG code.
  66248. Doesn't affect any tests.
  66249. * Android.mk:
  66250. * CMakeLists.txt
  66251. * GNUmakefile.am:
  66252. * WebCore.gypi:
  66253. * WebCore.pro:
  66254. * WebCore.vcproj/WebCore.vcproj:
  66255. * WebCore.xcodeproj/project.pbxproj
  66256. * svg/SVGAllInOne.cpp:
  66257. * svg/SVGAnimateElement.cpp:
  66258. (WebCore::SVGAnimateElement::calculateFromAndToValues):
  66259. * svg/SVGAnimateMotionElement.cpp:
  66260. (WebCore::SVGAnimateMotionElement::parseMappedAttribute):
  66261. * svg/SVGGlyphElement.cpp:
  66262. (WebCore::parsePathData):
  66263. * svg/SVGPathBuilder.cpp:
  66264. (WebCore::SVGPathBuilder::SVGPathBuilder):
  66265. (WebCore::SVGPathBuilder::moveTo):
  66266. (WebCore::SVGPathBuilder::lineTo):
  66267. (WebCore::SVGPathBuilder::curveToCubic):
  66268. (WebCore::SVGPathBuilder::closePath):
  66269. * svg/SVGPathBuilder.h:
  66270. (WebCore::SVGPathBuilder::setCurrentPath):
  66271. (WebCore::SVGPathBuilder::arcTo):
  66272. * svg/SVGPathConsumer.h:
  66273. * svg/SVGPathElement.cpp:
  66274. (WebCore::SVGPathElement::parseMappedAttribute):
  66275. * svg/SVGPathParser.cpp:
  66276. (WebCore::SVGPathParser::SVGPathParser):
  66277. (WebCore::SVGPathParser::parseClosePathSegment):
  66278. (WebCore::SVGPathParser::parseMoveToSegment):
  66279. (WebCore::SVGPathParser::parseLineToSegment):
  66280. (WebCore::SVGPathParser::parseLineToHorizontalSegment):
  66281. (WebCore::SVGPathParser::parseLineToVerticalSegment):
  66282. (WebCore::SVGPathParser::parseCurveToCubicSegment):
  66283. (WebCore::SVGPathParser::parseCurveToCubicSmoothSegment):
  66284. (WebCore::SVGPathParser::parseCurveToQuadraticSegment):
  66285. (WebCore::SVGPathParser::parseCurveToQuadraticSmoothSegment):
  66286. (WebCore::SVGPathParser::parseArcToSegment):
  66287. (WebCore::SVGPathParser::parsePathDataFromSource):
  66288. (WebCore::SVGPathParser::decomposeArcToCubic):
  66289. * svg/SVGPathParser.h:
  66290. (WebCore::SVGPathParser::setCurrentConsumer):
  66291. * svg/SVGPathParserFactory.cpp: Added.
  66292. (WebCore::globalSVGPathBuilder):
  66293. (WebCore::globalSVGPathSegListBuilder):
  66294. (WebCore::globalSVGPathParser):
  66295. (WebCore::SVGPathParserFactory::self):
  66296. (WebCore::SVGPathParserFactory::SVGPathParserFactory):
  66297. (WebCore::SVGPathParserFactory::~SVGPathParserFactory):
  66298. (WebCore::SVGPathParserFactory::buildPathFromString):
  66299. (WebCore::SVGPathParserFactory::buildSVGPathSegListFromString):
  66300. * svg/SVGPathParserFactory.h: Added.
  66301. * svg/SVGPathSeg.h:
  66302. (WebCore::):
  66303. (WebCore::SVGPathSeg::~SVGPathSeg):
  66304. (WebCore::SVGPathSeg::):
  66305. (WebCore::SVGPathSeg::pathSegType):
  66306. (WebCore::SVGPathSeg::pathSegTypeAsLetter):
  66307. (WebCore::SVGPathSeg::toString):
  66308. (WebCore::SVGPathSeg::associatedAttributeName):
  66309. (WebCore::SVGPathSeg::SVGPathSeg):
  66310. (WebCore::SVGPathSegSingleCoord::SVGPathSegSingleCoord):
  66311. (WebCore::SVGPathSegSingleCoord::setX):
  66312. (WebCore::SVGPathSegSingleCoord::x):
  66313. (WebCore::SVGPathSegSingleCoord::setY):
  66314. (WebCore::SVGPathSegSingleCoord::y):
  66315. (WebCore::SVGPathSegSingleCoord::toString):
  66316. * svg/SVGPathSegList.cpp:
  66317. (WebCore::SVGPathSegList::getPathSegAtLength):
  66318. (WebCore::SVGPathSegList::toPathData):
  66319. (WebCore::SVGPathSegList::createAnimated):
  66320. * svg/SVGPathSegListBuilder.cpp:
  66321. (WebCore::SVGPathSegListBuilder::SVGPathSegListBuilder):
  66322. (WebCore::SVGPathSegListBuilder::moveTo):
  66323. (WebCore::SVGPathSegListBuilder::lineTo):
  66324. (WebCore::SVGPathSegListBuilder::curveToCubic):
  66325. (WebCore::SVGPathSegListBuilder::curveToCubicSmooth):
  66326. (WebCore::SVGPathSegListBuilder::curveToQuadratic):
  66327. (WebCore::SVGPathSegListBuilder::curveToQuadraticSmooth):
  66328. (WebCore::SVGPathSegListBuilder::arcTo):
  66329. * svg/SVGPathSegListBuilder.h:
  66330. (WebCore::SVGPathSegListBuilder::setCurrentSVGPathSegList):
  66331. * svg/SVGPathSource.h: Added.
  66332. (WebCore::SVGPathSource::~SVGPathSource):
  66333. (WebCore::SVGPathSource::SVGPathSource):
  66334. * svg/SVGPathStringSource.cpp: Added.
  66335. (WebCore::SVGPathStringSource::SVGPathStringSource):
  66336. (WebCore::SVGPathStringSource::~SVGPathStringSource):
  66337. (WebCore::SVGPathStringSource::endOfStream):
  66338. (WebCore::SVGPathStringSource::parseFloat):
  66339. (WebCore::SVGPathStringSource::parseFlag):
  66340. (WebCore::SVGPathStringSource::skipSpaces):
  66341. (WebCore::SVGPathStringSource::parseSVGSegmentType):
  66342. (WebCore::SVGPathStringSource::hasRemainingCoordinatesInCurrentCommand):
  66343. * svg/SVGPathStringSource.h: Added.
  66344. (WebCore::SVGPathStringSource::create):
  66345. 2010-08-06 Robert Hogan <robert@webkit.org>
  66346. Reviewed by Adam Barth.
  66347. Define setPrivateBrowsingEnabled()
  66348. https://bugs.webkit.org/show_bug.cgi?id=42283
  66349. Define the scope of 'private browsing' in WebKit
  66350. See also https://bugs.webkit.org/show_bug.cgi?id=41801
  66351. * page/Settings.h:
  66352. 2010-08-06 Adam Barth <abarth@webkit.org>
  66353. Reviewed by Eric Seidel.
  66354. REGRESSION (r64712): YouTube video pages have contents of <noembed> elements overlapping the video description
  66355. https://bugs.webkit.org/show_bug.cgi?id=43605
  66356. The old parser used to drop <noembed> on the floor. We're supposed to
  66357. add it to the DOM, but we don't want to create a renderer for it.
  66358. * html/HTMLElement.cpp:
  66359. (WebCore::HTMLElement::rendererIsNeeded):
  66360. 2010-08-06 Tony Gentilcore <tonyg@chromium.org>
  66361. Reviewed by Adam Barth.
  66362. Fix style violations in Document
  66363. https://bugs.webkit.org/show_bug.cgi?id=43657
  66364. No new tests because no new functionality.
  66365. * dom/Document.cpp:
  66366. (WebCore::acceptsEditingFocus):
  66367. (WebCore::Document::Document):
  66368. (WebCore::Document::importNode):
  66369. (WebCore::Document::adoptNode):
  66370. (WebCore::Document::getElementById):
  66371. (WebCore::Document::readyState):
  66372. (WebCore::Document::createTreeWalker):
  66373. (WebCore::Document::shouldScheduleLayout):
  66374. (WebCore::Document::nextFocusableNode):
  66375. (WebCore::Document::previousFocusableNode):
  66376. (WebCore::Document::nodeAbsIndex):
  66377. (WebCore::Document::nodeWithAbsIndex):
  66378. (WebCore::Document::childTypeAllowed):
  66379. (WebCore::Document::canReplaceChild):
  66380. (WebCore::Document::recalcStyleSelector):
  66381. (WebCore::Document::setFocusedNode):
  66382. (WebCore::Document::attachNodeIterator):
  66383. (WebCore::Document::detachNodeIterator):
  66384. (WebCore::Document::parseQualifiedName):
  66385. (WebCore::Document::getImageMap):
  66386. (WebCore::Document::setInPageCache):
  66387. (WebCore::Document::addMarker):
  66388. (WebCore::Document::copyMarkers):
  66389. (WebCore::Document::shiftMarkers):
  66390. (WebCore::Document::setMarkersActive):
  66391. (WebCore::Document::parentDocument):
  66392. (WebCore::Document::topDocument):
  66393. (WebCore::FormElementKeyHash::hash):
  66394. (WebCore::Document::initSecurityContext):
  66395. * dom/Document.h:
  66396. (WebCore::Document::incDOMTreeVersion):
  66397. (WebCore::Document::domTreeVersion):
  66398. 2010-08-06 Eric Carlson <eric.carlson@apple.com>
  66399. Unreviewed, release Qt build fix.
  66400. * rendering/RenderLayerBacking.cpp:
  66401. (WebCore::RenderLayerBacking::containsPaintedContent): Guard call to toRenderVideo()
  66402. with #if ENABLE(VIDEO).
  66403. 2010-08-06 Eric Carlson <eric.carlson@apple.com>
  66404. Reviewed by Simon Fraser.
  66405. HTML5 "video" tag with poster frame defined "flashes" right before movie displays
  66406. https://bugs.webkit.org/show_bug.cgi?id=37591
  66407. <rdar://problem/5650561>
  66408. If a video element has a poster frame, display it until the playback is requested or the movie's
  66409. time is changed.
  66410. Test: compositing/video/video-poster.html
  66411. * html/HTMLMediaElement.cpp:
  66412. (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_displayMode.
  66413. (WebCore::HTMLMediaElement::prepareForLoad): Set m_displayMode to Unknown.
  66414. (WebCore::HTMLMediaElement::loadResource): Call updateDisplayState to let it set configure
  66415. the poster, if necessary.
  66416. (WebCore::HTMLMediaElement::noneSupported): updatePosterImage -> updateDisplayState.
  66417. (WebCore::HTMLMediaElement::setNetworkState): Ditto.
  66418. (WebCore::HTMLMediaElement::setReadyState): Ditto.
  66419. (WebCore::HTMLMediaElement::finishSeek): Set display mode to Video so a video frame will be
  66420. displayed if a poster is currently visible.
  66421. (WebCore::HTMLMediaElement::mediaPlayerRepaint): updatePosterImage -> updateDisplayState.
  66422. (WebCore::HTMLMediaElement::updatePlayState): Set display mode to Video.
  66423. * html/HTMLMediaElement.h:
  66424. (WebCore::HTMLMediaElement::displayMode): New.
  66425. (WebCore::HTMLMediaElement::setDisplayMode): Ditto.
  66426. (WebCore::HTMLMediaElement::updateDisplayState): Ditto.
  66427. * html/HTMLVideoElement.cpp:
  66428. (WebCore::HTMLVideoElement::HTMLVideoElement): Remove m_shouldDisplayPosterImage.
  66429. (WebCore::HTMLVideoElement::attach): Call shouldDisplayPosterImage instead of checking
  66430. m_shouldDisplayPosterImage directly.
  66431. (WebCore::HTMLVideoElement::detach): Ditto.
  66432. (WebCore::HTMLVideoElement::parseMappedAttribute): Set m_displayMode to Unknown before calling
  66433. updateDisplayState so shouldDisplayPosterImage() will return the correct result. Remove the
  66434. PLUGIN_PROXY_FOR_VIDEO code, it is now in updateDisplayState.
  66435. (WebCore::HTMLVideoElement::setDisplayMode): Renamed from updatePosterImage and rework logic
  66436. so we tell the media engine it is OK to display video frames when there is no poster, or
  66437. once the media engine has something to display and the movie has started or seeked.
  66438. (WebCore::HTMLVideoElement::updateDisplayState): New, manage display mode based on poster
  66439. attribute.
  66440. * html/HTMLVideoElement.h:
  66441. (WebCore::HTMLVideoElement::shouldDisplayPosterImage):
  66442. * platform/graphics/MediaPlayer.cpp:
  66443. (WebCore::MediaPlayer::prepareForRendering): New, call media engine's prepareForRendering.
  66444. * platform/graphics/MediaPlayer.h:
  66445. * platform/graphics/MediaPlayerPrivate.h:
  66446. (WebCore::MediaPlayerPrivateInterface::prepareForRendering):
  66447. * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
  66448. * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
  66449. (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): Initialize m_isAllowedToRender.
  66450. (WebCore::MediaPlayerPrivate::setUpVideoRendering):
  66451. (WebCore::MediaPlayerPrivate::isReadyForVideoSetup): Renamed from isReadyForRendering.
  66452. (WebCore::MediaPlayerPrivate::prepareForRendering): New, set m_isAllowedToRender and
  66453. inform the client that render tree should be updated so we correctly switch from showing
  66454. the poster, which often doens't use a layer, to showing video frames, which do.
  66455. (WebCore::MediaPlayerPrivate::updateStates): Don't call setUpVideoRendering until
  66456. isReadyForVideoSetup() returns true.
  66457. (WebCore::MediaPlayerPrivate::supportsAcceleratedRendering): isReadyForRendering -> isReadyForVideoSetup
  66458. * rendering/RenderLayerBacking.cpp:
  66459. (WebCore::RenderLayerBacking::containsPaintedContent): Only consider video when displaying
  66460. video frames so a poster won't force compositing mode.
  66461. * rendering/RenderLayerCompositor.cpp:
  66462. (WebCore::RenderLayerCompositor::requiresCompositingForVideo): Ditto.
  66463. * rendering/RenderVideo.cpp:
  66464. (WebCore::RenderVideo::shouldDisplayVideo): New, return true when not displaying a poster.
  66465. * rendering/RenderVideo.h:
  66466. 2010-08-06 James Robinson <jamesr@chromium.org>
  66467. Reviewed by Simon Fraser.
  66468. Accelerated 2d canvases should get compositing layers
  66469. https://bugs.webkit.org/show_bug.cgi?id=43362
  66470. Allows for 2d canvas rendering contexts to use a GraphicsContext3D for
  66471. accelerated rendering. The rendering context holds the GraphicsContext3D
  66472. alive and exposes it to the compositor. The 3d context itself is passed
  66473. down through the GraphicsContext to use for actual rendering:
  66474. https://bug-43362-attachments.webkit.org/attachment.cgi?id=63557
  66475. This approach will let us simultaneously prototype accelerated techniques
  66476. for canvas 2d and revise the design of canvas elements without destabilizing
  66477. all ports.
  66478. * html/HTMLCanvasElement.cpp:
  66479. (WebCore::HTMLCanvasElement::getContext):
  66480. (WebCore::HTMLCanvasElement::willDraw):
  66481. (WebCore::HTMLCanvasElement::makeRenderingResultsAvailable):
  66482. * html/canvas/CanvasRenderingContext.h:
  66483. (WebCore::CanvasRenderingContext::paintRenderingResultsToCanvas):
  66484. * html/canvas/CanvasRenderingContext2D.cpp:
  66485. (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
  66486. (WebCore::CanvasRenderingContext2D::isAccelerated):
  66487. (WebCore::CanvasRenderingContext2D::reset):
  66488. (WebCore::CanvasRenderingContext2D::willDraw):
  66489. (WebCore::CanvasRenderingContext2D::paintRenderingResultsToCanvas):
  66490. * html/canvas/CanvasRenderingContext2D.h:
  66491. (WebCore::CanvasRenderingContext2D::graphicsContext3D):
  66492. * html/canvas/WebGLRenderingContext.cpp:
  66493. (WebCore::WebGLRenderingContext::paintRenderingResultsToCanvas):
  66494. * html/canvas/WebGLRenderingContext.h:
  66495. * platform/graphics/GraphicsContext.h:
  66496. * platform/graphics/skia/GraphicsContextSkia.cpp:
  66497. (WebCore::GraphicsContext::syncSoftwareCanvas):
  66498. 2010-08-06 Eric Seidel <eric@webkit.org>
  66499. Reviewed by Chris Fleizach.
  66500. Make AX Code use more specific RenderObject subclass types
  66501. https://bugs.webkit.org/show_bug.cgi?id=43632
  66502. No functional change, thus no tests.
  66503. * accessibility/AXObjectCache.cpp:
  66504. (WebCore::nodeHasRole):
  66505. - Make this take a String instead of AtomicString, to avoid
  66506. thrashing the atomic string hash.
  66507. It would be better to take a const char* here, except
  66508. one caller passes nullAtom.
  66509. (WebCore::createFromRenderer):
  66510. - Split this out from getOrCreate to make it simpler.
  66511. - No longer needs to deal with setting a "result"
  66512. pointer and can instead just return.
  66513. - I've also made this function use RenderBoxModelObject*
  66514. where appropriate.
  66515. (WebCore::AXObjectCache::getOrCreate):
  66516. * accessibility/AXObjectCache.h:
  66517. * accessibility/AccessibilityImageMapLink.cpp:
  66518. (WebCore::AccessibilityImageMapLink::AccessibilityImageMapLink):
  66519. - Fix style.
  66520. * accessibility/AccessibilityMenuList.cpp:
  66521. (WebCore::AccessibilityMenuList::AccessibilityMenuList):
  66522. - Use a more specific type.
  66523. (WebCore::AccessibilityMenuList::renderer):
  66524. * accessibility/AccessibilityMenuList.h:
  66525. (WebCore::AccessibilityMenuList::create):
  66526. * accessibility/AccessibilityMenuListPopup.cpp:
  66527. - Need RenderMenuList.h since renderer() is a RenderMenuList*
  66528. * accessibility/AccessibilityObject.cpp:
  66529. (WebCore::renderListItemContainerForNode):
  66530. * accessibility/AccessibilityRenderObject.cpp:
  66531. (WebCore::AccessibilityRenderObject::renderBoxModelObject):
  66532. - New helper function, similar to Node::renderBoxModelObject()
  66533. (WebCore::isInlineWithContinuation):
  66534. (WebCore::AccessibilityRenderObject::isNativeImage):
  66535. (WebCore::AccessibilityRenderObject::isAttachment):
  66536. (WebCore::AccessibilityRenderObject::isMultiSelectable):
  66537. (WebCore::AccessibilityRenderObject::isReadOnly):
  66538. (WebCore::AccessibilityRenderObject::isFieldset):
  66539. (WebCore::AccessibilityRenderObject::actionElement):
  66540. (WebCore::AccessibilityRenderObject::stringValue):
  66541. (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
  66542. (WebCore::AccessibilityRenderObject::setValue):
  66543. (WebCore::AccessibilityRenderObject::widget):
  66544. (WebCore::AccessibilityRenderObject::visiblePositionForPoint):
  66545. (WebCore::AccessibilityRenderObject::doAccessibilityHitTest):
  66546. (WebCore::AccessibilityRenderObject::renderObjectIsObservable):
  66547. (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
  66548. (WebCore::AccessibilityRenderObject::addChildren):
  66549. (WebCore::msaaRoleForRenderer):
  66550. * accessibility/AccessibilityRenderObject.h:
  66551. * accessibility/AccessibilityTable.cpp:
  66552. (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
  66553. * accessibility/AccessibilityTable.h:
  66554. - Remove unneeded "using namespace std".
  66555. 2010-08-06 Tony Gentilcore <tonyg@chromium.org>
  66556. Reviewed by Eric Seidel.
  66557. Factor an AsyncScriptRunner out of Document
  66558. https://bugs.webkit.org/show_bug.cgi?id=43633
  66559. This copies the existing implementation exactly. In the future
  66560. this will use PendingScript which handles ref counting without
  66561. the need for those manual ref()/deref()s. This is also currently
  66562. a trivial class, but a little more logic will be added to it to
  66563. support <script async>.
  66564. No new tests because no new functionality.
  66565. * Android.mk:
  66566. * CMakeLists.txt:
  66567. * GNUmakefile.am:
  66568. * WebCore.gypi:
  66569. * WebCore.pro:
  66570. * WebCore.vcproj/WebCore.vcproj:
  66571. * WebCore.xcodeproj/project.pbxproj:
  66572. * dom/AsyncScriptRunner.cpp: Added.
  66573. (WebCore::AsyncScriptRunner::AsyncScriptRunner):
  66574. (WebCore::AsyncScriptRunner::~AsyncScriptRunner):
  66575. (WebCore::AsyncScriptRunner::executeScriptSoon):
  66576. (WebCore::AsyncScriptRunner::suspend):
  66577. (WebCore::AsyncScriptRunner::resume):
  66578. (WebCore::AsyncScriptRunner::timerFired):
  66579. * dom/AsyncScriptRunner.h: Added.
  66580. (WebCore::AsyncScriptRunner::create):
  66581. (WebCore::AsyncScriptRunner::hasPendingScripts):
  66582. * dom/Document.cpp:
  66583. (WebCore::Document::Document):
  66584. (WebCore::Document::~Document):
  66585. * dom/Document.h:
  66586. (WebCore::Document::asyncScriptRunner):
  66587. * dom/ScriptElement.cpp:
  66588. (WebCore::ScriptElementData::notifyFinished):
  66589. * page/PageGroupLoadDeferrer.cpp:
  66590. (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
  66591. (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
  66592. 2010-08-06 James Robinson <jamesr@chromium.org>
  66593. Reviewed by Dimitri Glazkov.
  66594. [chromium] Implement GLES2Canvas/Texture in terms of GraphicsContext3D instead of direct OpenGL calls
  66595. https://bugs.webkit.org/show_bug.cgi?id=43608
  66596. This converts all OpenGL calls in GLES2(Canvas|Texture) to calls on the corresponding GraphicsContext3D
  66597. API, due to feedback on https://bugs.webkit.org/show_bug.cgi?id=43362. Nearly all the changes are
  66598. applying the regex s/gl([A-Z])/m_context->%1</ and removing unnecessary makeCurrent() calls.
  66599. Other changes hilighted below.
  66600. * platform/graphics/chromium/GLES2Canvas.cpp:
  66601. (WebCore::affineTo3x3):
  66602. (WebCore::GLES2Canvas::GLES2Canvas):
  66603. (WebCore::GLES2Canvas::~GLES2Canvas):
  66604. (WebCore::GLES2Canvas::clearRect):
  66605. (WebCore::GLES2Canvas::fillRect):
  66606. (WebCore::GLES2Canvas::drawTexturedRect):
  66607. (WebCore::GLES2Canvas::applyCompositeOperator):
  66608. (WebCore::GLES2Canvas::getQuadVertices):
  66609. (WebCore::GLES2Canvas::getQuadIndices):
  66610. - use new typed XXArray classes for buffer uploads
  66611. (WebCore::loadShader):
  66612. (WebCore::GLES2Canvas::getSimpleProgram):
  66613. (WebCore::GLES2Canvas::getTexProgram):
  66614. (WebCore::GLES2Canvas::createTexture):
  66615. (WebCore::GLES2Canvas::checkGLError):
  66616. * platform/graphics/chromium/GLES2Canvas.h:
  66617. (WebCore::GLES2Canvas::context):
  66618. * platform/graphics/chromium/GLES2Texture.cpp:
  66619. (WebCore::GLES2Texture::GLES2Texture):
  66620. (WebCore::GLES2Texture::~GLES2Texture):
  66621. (WebCore::GLES2Texture::create):
  66622. (WebCore::convertFormat):
  66623. (WebCore::GLES2Texture::load):
  66624. (WebCore::GLES2Texture::bind):
  66625. * platform/graphics/chromium/GLES2Texture.h:
  66626. * platform/graphics/skia/GraphicsContextSkia.cpp:
  66627. (WebCore::GraphicsContext::fillRect):
  66628. - add a missing restore() call to the H/W path
  66629. * platform/graphics/skia/ImageSkia.cpp:
  66630. (WebCore::drawBitmapGLES2):
  66631. * platform/graphics/skia/PlatformContextSkia.cpp:
  66632. (WebCore::PlatformContextSkia::setGraphicsContext3D):
  66633. (WebCore::PlatformContextSkia::uploadSoftwareToHardware):
  66634. - avoid applying CTM to uploads
  66635. (WebCore::PlatformContextSkia::readbackHardwareToSoftware):
  66636. * platform/graphics/skia/PlatformContextSkia.h:
  66637. 2010-08-06 James Robinson <jamesr@chromium.org>
  66638. Reviewed by Simon Fraser.
  66639. Composited canvas should be treated the same by the compositor and not be WebGL specific
  66640. https://bugs.webkit.org/show_bug.cgi?id=43589
  66641. This treats all GraphicsContext3D-backed layers the same instead of special casing WebGL.
  66642. The cross-platform change is to rename GraphicsLayer::setContentsToWebGL() to
  66643. GraphicsLayer::setContentsToCanvas() and to rename all implementations.
  66644. This patch also renames the chromium class used for accelerating these layers.
  66645. Cross platform changes:
  66646. * WebCore.gypi:
  66647. * platform/graphics/GraphicsLayer.h:
  66648. (WebCore::GraphicsLayer::setContentsToCanvas):
  66649. Rename the function on the base class. GraphicsLayerCA and GraphicsLayerChromium implement this.
  66650. * rendering/RenderLayerBacking.cpp:
  66651. (WebCore::isAcceleratedCanvas):
  66652. Helper function to see if a renderer is associated with an accelerated compositing layer.
  66653. (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
  66654. (WebCore::RenderLayerBacking::containsPaintedContent):
  66655. (WebCore::RenderLayerBacking::rendererContentChanged):
  66656. Chromium specific changes:
  66657. * platform/graphics/chromium/CanvasLayerChromium.cpp: Added.
  66658. (WebCore::CanvasLayerChromium::create):
  66659. (WebCore::CanvasLayerChromium::CanvasLayerChromium):
  66660. (WebCore::CanvasLayerChromium::textureId):
  66661. (WebCore::CanvasLayerChromium::updateTextureContents):
  66662. (WebCore::CanvasLayerChromium::setContext):
  66663. * platform/graphics/chromium/CanvasLayerChromium.h: Added.
  66664. (WebCore::CanvasLayerChromium::drawsContent):
  66665. (WebCore::CanvasLayerChromium::ownsTexture):
  66666. (WebCore::CanvasLayerChromium::shaderProgramId):
  66667. (WebCore::CanvasLayerChromium::setShaderProgramId):
  66668. * platform/graphics/chromium/GraphicsLayerChromium.cpp:
  66669. (WebCore::GraphicsLayerChromium::setContentsNeedsDisplay):
  66670. (WebCore::GraphicsLayerChromium::setContentsToCanvas):
  66671. * platform/graphics/chromium/GraphicsLayerChromium.h:
  66672. (WebCore::GraphicsLayerChromium::):
  66673. * platform/graphics/chromium/LayerRendererChromium.cpp:
  66674. (WebCore::LayerRendererChromium::drawLayer):
  66675. (WebCore::LayerRendererChromium::initializeSharedGLObjects):
  66676. * platform/graphics/chromium/LayerRendererChromium.h:
  66677. (WebCore::LayerRendererChromium::):
  66678. * platform/graphics/chromium/WebGLLayerChromium.cpp: Removed.
  66679. * platform/graphics/chromium/WebGLLayerChromium.h: Removed.
  66680. Mac specific changes:
  66681. * platform/graphics/mac/GraphicsLayerCA.h:
  66682. (WebCore::GraphicsLayerCA::):
  66683. * platform/graphics/mac/GraphicsLayerCA.mm:
  66684. (WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers):
  66685. (WebCore::GraphicsLayerCA::updateContentsCanvasLayer):
  66686. (WebCore::GraphicsLayerCA::setContentsToCanvas):
  66687. 2010-08-06 Patrick Gansterer <paroga@paroga.com>
  66688. Reviewed by Eric Seidel.
  66689. Add PluginView::bindingInstance() to PluginViewNone
  66690. https://bugs.webkit.org/show_bug.cgi?id=42936
  66691. * bindings/js/ScriptControllerEfl.cpp:
  66692. (WebCore::ScriptController::createScriptInstanceForWidget): Removed workaround.
  66693. * plugins/PluginViewNone.cpp: Added property svn:eol-style.
  66694. (WebCore::PluginView::bindingInstance): Added missing method and use it on WinCE.
  66695. 2010-08-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
  66696. Reviewed by Xan Lopez.
  66697. Use new "package" name also for the directory where the inspector
  66698. support files are installed.
  66699. * GNUmakefile.am:
  66700. 2010-08-06 Jian Li <jianli@chromium.org>
  66701. Fix chromium build break.
  66702. * inspector/InspectorDebuggerAgent.h:
  66703. 2010-08-06 Dirk Schulze <krit@webkit.org>
  66704. Not reviewed. Sort Xcode project file.
  66705. * WebCore.xcodeproj/project.pbxproj:
  66706. 2010-08-06 Jessie Berlin <jberlin@apple.com>
  66707. Roll out http://trac.webkit.org/changeset/64801, which broke the Safari Windows Build.
  66708. Unreviewed.
  66709. * accessibility/AXObjectCache.h:
  66710. * accessibility/AccessibilityARIAGrid.h:
  66711. * accessibility/AccessibilityListBoxOption.h:
  66712. * accessibility/AccessibilityObject.h:
  66713. * accessibility/AccessibilityRenderObject.h:
  66714. * accessibility/AccessibilityTable.h:
  66715. * bindings/cpp/WebDOMCString.h:
  66716. * bindings/cpp/WebDOMString.h:
  66717. * bindings/gobject/ConvertToUTF8String.h:
  66718. * bindings/js/DOMWrapperWorld.h:
  66719. * bindings/js/JSDOMBinding.h:
  66720. * bindings/js/JSDOMWindowBase.h:
  66721. * bindings/js/JSMessagePortCustom.h:
  66722. * bindings/js/JavaScriptCallFrame.h:
  66723. * bindings/js/ScriptController.h:
  66724. * bindings/js/ScriptProfile.h:
  66725. * bindings/js/ScriptSourceProvider.h:
  66726. * bindings/js/ScriptString.h:
  66727. * bindings/js/WorkerScriptController.h:
  66728. * bindings/objc/DOMImplementationFront.h:
  66729. * bindings/v8/ScheduledAction.h:
  66730. * bindings/v8/ScriptController.h:
  66731. * bindings/v8/V8DOMWindowShell.h:
  66732. * bindings/v8/V8Proxy.h:
  66733. * bindings/v8/V8Utilities.h:
  66734. * bindings/v8/custom/V8CustomXPathNSResolver.h:
  66735. * bridge/c/c_utility.h:
  66736. * css/CSSFontSelector.h:
  66737. * css/CSSHelper.h:
  66738. * css/CSSOMUtils.h:
  66739. * css/CSSPrimitiveValue.h:
  66740. * css/MediaList.h:
  66741. * css/StyleBase.h:
  66742. * css/StyleSheetList.h:
  66743. * css/WebKitCSSKeyframesRule.h:
  66744. * dom/CheckedRadioButtons.h:
  66745. * dom/DOMImplementation.h:
  66746. * dom/DocumentMarker.h:
  66747. * dom/DynamicNodeList.h:
  66748. * dom/EventTarget.h:
  66749. * dom/MessagePort.h:
  66750. * dom/MessagePortChannel.h:
  66751. * dom/NameNodeList.h:
  66752. * dom/Node.h:
  66753. * dom/NodeList.h:
  66754. * dom/OptionGroupElement.h:
  66755. * dom/ScriptExecutionContext.h:
  66756. * dom/SelectElement.h:
  66757. * dom/ViewportArguments.h:
  66758. * dom/make_names.pl:
  66759. * editing/HTMLInterchange.h:
  66760. * editing/htmlediting.h:
  66761. * editing/markup.h:
  66762. * html/CollectionCache.h:
  66763. * html/DOMFormData.h:
  66764. * html/DataGridColumnList.h:
  66765. * html/DateComponents.h:
  66766. * html/FileStream.h:
  66767. * html/FileStreamProxy.h:
  66768. * html/FormDataList.h:
  66769. (WebCore::FormDataList::appendData):
  66770. * html/HTMLCollection.h:
  66771. * html/HTMLElementStack.h:
  66772. * html/HTMLFormattingElementList.h:
  66773. * html/HTMLParserQuirks.h:
  66774. * html/HTMLQuoteElement.h:
  66775. * html/HTMLScriptRunnerHost.h:
  66776. * html/StepRange.h:
  66777. * html/canvas/CanvasGradient.h:
  66778. * html/canvas/CanvasNumberArray.h:
  66779. * html/canvas/CanvasPattern.h:
  66780. * inspector/InjectedScript.h:
  66781. * inspector/InspectorCSSStore.h:
  66782. * inspector/InspectorClient.h:
  66783. * inspector/InspectorFrontendClient.h:
  66784. * inspector/InspectorValues.h:
  66785. * inspector/ScriptDebugListener.h:
  66786. * loader/CachedResourceClient.h:
  66787. * loader/CrossOriginAccessControl.h:
  66788. * loader/DocumentThreadableLoader.h:
  66789. * loader/FrameLoaderClient.h:
  66790. * loader/RedirectScheduler.h:
  66791. * loader/SubframeLoader.h:
  66792. * loader/appcache/DOMApplicationCache.h:
  66793. * loader/archive/ArchiveFactory.h:
  66794. * loader/icon/IconDatabaseClient.h:
  66795. * notifications/NotificationPresenter.h:
  66796. * page/Chrome.h:
  66797. * page/ChromeClient.h:
  66798. * page/Console.h:
  66799. * page/ContextMenuClient.h:
  66800. * page/DOMSelection.h:
  66801. * page/EditorClient.h:
  66802. * page/EventHandler.h:
  66803. * page/FrameView.h:
  66804. * page/GeolocationPositionCache.h:
  66805. * page/History.h:
  66806. * page/Location.h:
  66807. * page/Navigator.h:
  66808. * page/NavigatorBase.h:
  66809. * page/PluginHalterClient.h:
  66810. * page/PrintContext.h:
  66811. * page/SpeechInput.h:
  66812. * page/SpeechInputListener.h:
  66813. * page/animation/AnimationController.h:
  66814. * platform/CookieJar.h:
  66815. * platform/CrossThreadCopier.h:
  66816. * platform/DragImage.h:
  66817. * platform/FileSystem.h:
  66818. * platform/Language.h:
  66819. * platform/Length.h:
  66820. * platform/LinkHash.h:
  66821. * platform/LocalizationStrategy.h:
  66822. * platform/LocalizedStrings.h:
  66823. * platform/Logging.h:
  66824. * platform/Pasteboard.h:
  66825. * platform/PopupMenuClient.h:
  66826. * platform/SearchPopupMenu.h:
  66827. * platform/Widget.h:
  66828. * platform/cf/BinaryPropertyList.h:
  66829. * platform/chromium/ChromiumBridge.h:
  66830. * platform/chromium/ClipboardUtilitiesChromium.h:
  66831. * platform/cocoa/KeyEventCocoa.h:
  66832. * platform/graphics/Color.h:
  66833. * platform/graphics/FontCache.h:
  66834. * platform/graphics/FontData.h:
  66835. * platform/graphics/FontSelector.h:
  66836. * platform/graphics/GraphicsTypes.h:
  66837. * platform/graphics/Icon.h:
  66838. * platform/graphics/ImageBuffer.h:
  66839. * platform/graphics/ImageSource.h:
  66840. * platform/graphics/MediaPlayer.h:
  66841. * platform/graphics/MediaPlayerPrivate.h:
  66842. * platform/graphics/Path.h:
  66843. * platform/graphics/StringTruncator.h:
  66844. * platform/graphics/cairo/FontCustomPlatformData.h:
  66845. * platform/graphics/cairo/FontPlatformData.h:
  66846. * platform/graphics/cg/FontPlatformData.h:
  66847. * platform/graphics/cg/ImageSourceCG.h:
  66848. * platform/graphics/chromium/FontCustomPlatformData.h:
  66849. * platform/graphics/chromium/FontPlatformDataChromiumWin.h:
  66850. * platform/graphics/chromium/FontPlatformDataLinux.h:
  66851. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
  66852. * platform/graphics/haiku/FontCustomPlatformData.h:
  66853. * platform/graphics/mac/FontCustomPlatformData.h:
  66854. * platform/graphics/mac/FontPlatformData.h:
  66855. * platform/graphics/qt/FontCustomPlatformData.h:
  66856. * platform/graphics/qt/FontPlatformData.h:
  66857. * platform/graphics/win/FontCustomPlatformData.h:
  66858. * platform/graphics/win/FontCustomPlatformDataCairo.h:
  66859. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
  66860. * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
  66861. * platform/graphics/wince/FontPlatformData.h:
  66862. * platform/graphics/wince/MediaPlayerPrivateWince.h:
  66863. * platform/graphics/wince/MediaPlayerProxy.h:
  66864. * platform/graphics/wx/FontCustomPlatformData.h:
  66865. * platform/graphics/wx/FontPlatformData.h:
  66866. * platform/mac/PasteboardHelper.h:
  66867. * platform/network/DNS.h:
  66868. * platform/network/FormData.h:
  66869. * platform/network/FormDataBuilder.h:
  66870. * platform/network/HTTPParsers.h:
  66871. * platform/text/Hyphenation.h:
  66872. * platform/text/LineEnding.h:
  66873. * platform/text/TextCodec.h:
  66874. * platform/text/TextEncoding.h:
  66875. * platform/text/TextStream.h:
  66876. * platform/win/BString.h:
  66877. * platform/win/ClipboardUtilitiesWin.h:
  66878. * platform/win/WCDataObject.h:
  66879. * platform/win/WebCoreTextRenderer.h:
  66880. * plugins/DOMMimeType.h:
  66881. * plugins/DOMMimeTypeArray.h:
  66882. * plugins/DOMPlugin.h:
  66883. * plugins/DOMPluginArray.h:
  66884. * rendering/CounterNode.h:
  66885. * rendering/HitTestResult.h:
  66886. * rendering/RenderObjectChildList.h:
  66887. * rendering/RenderText.h:
  66888. * rendering/RenderTreeAsText.h:
  66889. * rendering/TextControlInnerElements.h:
  66890. * rendering/style/ContentData.h:
  66891. * rendering/style/RenderStyle.h:
  66892. * storage/DatabaseAuthorizer.h:
  66893. * storage/DatabaseTrackerClient.h:
  66894. * storage/SQLTransaction.h:
  66895. * storage/SQLTransactionSync.h:
  66896. * storage/Storage.h:
  66897. * storage/chromium/DatabaseObserver.h:
  66898. * svg/SVGAnimatedTemplate.h:
  66899. * svg/SVGDocumentExtensions.h:
  66900. * svg/SVGGlyphElement.h:
  66901. * svg/SVGHKernElement.h:
  66902. * svg/SVGNumberList.h:
  66903. * svg/SVGPointList.h:
  66904. * svg/SVGPreserveAspectRatio.h:
  66905. * svg/SVGStylable.h:
  66906. * svg/SVGTests.h:
  66907. * svg/SVGTransformList.h:
  66908. * svg/SVGTransformable.h:
  66909. * svg/SVGVKernElement.h:
  66910. * websockets/ThreadableWebSocketChannel.h:
  66911. * websockets/ThreadableWebSocketChannelClientWrapper.h:
  66912. * websockets/WebSocket.h:
  66913. * websockets/WebSocketChannel.h:
  66914. * websockets/WebSocketHandshakeResponse.h:
  66915. * wml/WMLErrorHandling.h:
  66916. * wml/WMLPageState.h:
  66917. * wml/WMLVariables.h:
  66918. * workers/DefaultSharedWorkerRepository.h:
  66919. * workers/SharedWorkerRepository.h:
  66920. * workers/Worker.h:
  66921. * workers/WorkerContextProxy.h:
  66922. * workers/WorkerLoaderProxy.h:
  66923. * workers/WorkerLocation.h:
  66924. * workers/WorkerMessagingProxy.h:
  66925. * workers/WorkerReportingProxy.h:
  66926. * workers/WorkerThread.h:
  66927. * xml/DOMParser.h:
  66928. * xml/XMLHttpRequestUpload.h:
  66929. * xml/XPathEvaluator.h:
  66930. * xml/XPathExpression.h:
  66931. * xml/XPathNSResolver.h:
  66932. * xml/XPathResult.h:
  66933. * xml/XPathUtil.h:
  66934. 2010-08-04 Zhenyao Mo <zmo@google.com>
  66935. Reviewed by Dimitri Glazkov.
  66936. WebGLBuffer::associateBufferData(ArrayBufferView* array) copies incorrect data for sliced views
  66937. https://bugs.webkit.org/show_bug.cgi?id=42124
  66938. * html/canvas/WebGLBuffer.cpp:
  66939. (WebCore::WebGLBuffer::associateBufferDataImpl): Helper function that's called by all associateBufferData().
  66940. (WebCore::WebGLBuffer::associateBufferData): Call associateBufferDataImpl().
  66941. (WebCore::WebGLBuffer::associateBufferSubDataImpl): Helper function that's called by all associateBufferSubData().
  66942. (WebCore::WebGLBuffer::associateBufferSubData): Call associateBufferSubDataImpl().
  66943. * html/canvas/WebGLBuffer.h: Declare helper functions.
  66944. 2010-08-06 Adam Barth <abarth@webkit.org>
  66945. Reviewed by Eric Seidel.
  66946. noembed should respect whether plugins are enabled
  66947. https://bugs.webkit.org/show_bug.cgi?id=43611
  66948. This instruction isn't in the HTML5 spec, but it seems like the right
  66949. thing to do. I suspect this is because the spec doesn't understand
  66950. that plugins can be disabled.
  66951. I'm not sure how we can test this in DumpRenderTree, but I'm open to
  66952. suggestions.
  66953. * html/HTMLTreeBuilder.cpp:
  66954. (WebCore::HTMLTreeBuilder::adjustedLexerState):
  66955. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  66956. (WebCore::HTMLTreeBuilder::processStartTagForInHead):
  66957. (WebCore::HTMLTreeBuilder::scriptEnabled):
  66958. (WebCore::HTMLTreeBuilder::pluginsEnabled):
  66959. * html/HTMLTreeBuilder.h:
  66960. 2010-08-06 Tony Gentilcore <tonyg@chromium.org>
  66961. Reviewed by Adam Barth.
  66962. Factor out PendingScript and protect its members
  66963. https://bugs.webkit.org/show_bug.cgi?id=43391
  66964. This will be shared by AsyncScriptRunner.
  66965. No new tests because no new functionality.
  66966. * Android.mk:
  66967. * CMakeLists.txt:
  66968. * GNUmakefile.am:
  66969. * WebCore.gypi:
  66970. * WebCore.pro:
  66971. * WebCore.vcproj/WebCore.vcproj:
  66972. * WebCore.xcodeproj/project.pbxproj:
  66973. * dom/PendingScript.cpp: Added.
  66974. (WebCore::PendingScript::~PendingScript):
  66975. (WebCore::PendingScript::element):
  66976. (WebCore::PendingScript::releaseElementAndClear):
  66977. (WebCore::PendingScript::setCachedScript):
  66978. (WebCore::PendingScript::cachedScript):
  66979. * dom/PendingScript.h: Added.
  66980. (WebCore::PendingScript::PendingScript):
  66981. (WebCore::PendingScript::startingLineNumber):
  66982. (WebCore::PendingScript::watchingForLoad):
  66983. (WebCore::PendingScript::setWatchingForLoad):
  66984. (WebCore::PendingScript::hasElement):
  66985. (WebCore::PendingScript::adoptElement):
  66986. (WebCore::PendingScript::notifyFinished):
  66987. * html/HTMLScriptRunner.cpp:
  66988. (WebCore::HTMLScriptRunner::sourceFromPendingScript):
  66989. (WebCore::HTMLScriptRunner::haveParsingBlockingScript):
  66990. (WebCore::HTMLScriptRunner::requestScript):
  66991. * html/HTMLScriptRunner.h:
  66992. 2010-08-06 Gyuyoung Kim <gyuyoung.kim@samsung.com>
  66993. Reviewed by Darin Adler.
  66994. Change permission to access methods in XMLDocumentParser.h
  66995. https://bugs.webkit.org/show_bug.cgi?id=43180
  66996. Change permission to access wellFormed(), lineNumber() and columnNumber()
  66997. in XMLDocumentParser.h. Because, the methods are used by WML.
  66998. * dom/XMLDocumentParser.h:
  66999. (WebCore::XMLDocumentParser::wellFormed): Change accebility permission.
  67000. 2010-08-06 Martin Robinson <mrobinson@igalia.com>
  67001. Reviewed by Gustavo Noronha Silva.
  67002. [GTK] Support for image drags
  67003. https://bugs.webkit.org/show_bug.cgi?id=40788
  67004. Add image drag-and-drop support for WebKit GTK+.
  67005. * platform/gtk/ClipboardGtk.cpp:
  67006. (WebCore::ClipboardGtk::setDragImage): Filled this stub.
  67007. (WebCore::ClipboardGtk::setDragImageElement): Filled this stub.
  67008. (WebCore::ClipboardGtk::createDragImage): Filled this stub.
  67009. (WebCore::ClipboardGtk::declareAndWriteDragImage): Write the image URL, markup, and image itself to the data object member.
  67010. * platform/gtk/ClipboardGtk.h: Brought method declarations into line with the parent class.
  67011. 2010-08-06 Yury Semikhatsky <yurys@chromium.org>
  67012. Reviewed by Pavel Feldman.
  67013. Web Inspector: extract debugger implementation into InspectorDebuggerAgent
  67014. https://bugs.webkit.org/show_bug.cgi?id=42340
  67015. * CMakeLists.txt:
  67016. * GNUmakefile.am:
  67017. * WebCore.gypi:
  67018. * WebCore.pro:
  67019. * WebCore.vcproj/WebCore.vcproj:
  67020. * WebCore.xcodeproj/project.pbxproj:
  67021. * inspector/CodeGeneratorInspector.pm:
  67022. * inspector/Inspector.idl:
  67023. * inspector/InspectorController.cpp:
  67024. (WebCore::InspectorController::InspectorController):
  67025. (WebCore::InspectorController::connectFrontend):
  67026. (WebCore::InspectorController::didCommitLoad):
  67027. (WebCore::InspectorController::enableDebuggerFromFrontend):
  67028. (WebCore::InspectorController::disableDebugger):
  67029. (WebCore::InspectorController::resume):
  67030. (WebCore::InspectorController::loadBreakpoints):
  67031. (WebCore::InspectorController::saveBreakpoints):
  67032. * inspector/InspectorController.h:
  67033. (WebCore::InspectorController::debuggerAgent):
  67034. * inspector/InspectorDebuggerAgent.cpp: Added.
  67035. (WebCore::md5Base16):
  67036. (WebCore::formatBreakpointId):
  67037. (WebCore::InspectorDebuggerAgent::create):
  67038. (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
  67039. (WebCore::InspectorDebuggerAgent::~InspectorDebuggerAgent):
  67040. (WebCore::InspectorDebuggerAgent::isDebuggerAlwaysEnabled):
  67041. (WebCore::InspectorDebuggerAgent::activateBreakpoints):
  67042. (WebCore::InspectorDebuggerAgent::deactivateBreakpoints):
  67043. (WebCore::InspectorDebuggerAgent::setBreakpoint):
  67044. (WebCore::InspectorDebuggerAgent::removeBreakpoint):
  67045. (WebCore::InspectorDebuggerAgent::editScriptSource):
  67046. (WebCore::InspectorDebuggerAgent::getScriptSource):
  67047. (WebCore::InspectorDebuggerAgent::pause):
  67048. (WebCore::InspectorDebuggerAgent::resume):
  67049. (WebCore::InspectorDebuggerAgent::stepOverStatement):
  67050. (WebCore::InspectorDebuggerAgent::stepIntoStatement):
  67051. (WebCore::InspectorDebuggerAgent::stepOutOfFunction):
  67052. (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState):
  67053. (WebCore::InspectorDebuggerAgent::clearForPageNavigation):
  67054. (WebCore::InspectorDebuggerAgent::currentCallFrames):
  67055. (WebCore::InspectorDebuggerAgent::loadBreakpoints):
  67056. (WebCore::InspectorDebuggerAgent::saveBreakpoints):
  67057. (WebCore::InspectorDebuggerAgent::didParseSource):
  67058. (WebCore::InspectorDebuggerAgent::failedToParseSource):
  67059. (WebCore::InspectorDebuggerAgent::didPause):
  67060. (WebCore::InspectorDebuggerAgent::didContinue):
  67061. (WebCore::InspectorDebuggerAgent::remoteFrontend):
  67062. * inspector/InspectorDebuggerAgent.h: Added.
  67063. * inspector/InspectorFrontend.cpp:
  67064. * inspector/InspectorFrontend.h:
  67065. * inspector/front-end/ScriptsPanel.js:
  67066. (WebInspector.ScriptsPanel):
  67067. 2010-08-06 Dean Jackson <dino@apple.com>
  67068. Reviewed by Simon Fraser and Steve Block.
  67069. https://bugs.webkit.org/show_bug.cgi?id=42865
  67070. Implement DeviceMotionEvent
  67071. Implement the DeviceMotionEvent interface as defined
  67072. in http://dev.w3.org/geo/api/spec-source-orientation.html
  67073. This is currently an empty implementation, in that there is
  67074. no motion client connected - the platform implementations
  67075. will need to do that.
  67076. Tests: fast/dom/DeviceMotion/create-event.html
  67077. fast/dom/DeviceMotion/optional-event-properties.html
  67078. fast/dom/DeviceMotion/window-property.html
  67079. * Android.derived.jscbindings.mk:
  67080. * Android.derived.v8bindings.mk:
  67081. * Android.jscbindings.mk:
  67082. * Android.mk:
  67083. * Android.v8bindings.mk:
  67084. * CMakeLists.txt:
  67085. * Configurations/FeatureDefines.xcconfig:
  67086. * DerivedSources.make:
  67087. * GNUmakefile.am:
  67088. * WebCore.gypi:
  67089. * WebCore.pro:
  67090. * WebCore.vcproj/WebCore.vcproj:
  67091. * WebCore.xcodeproj/project.pbxproj:
  67092. - Add new files for DeviceMotionEvent build support
  67093. * bindings/generic/RuntimeEnabledFeatures.cpp:
  67094. * bindings/generic/RuntimeEnabledFeatures.h:
  67095. - new runtime flags for device motion
  67096. * bindings/js/JSDeviceMotionEventCustom.cpp: Added.
  67097. * bindings/v8/custom/V8DeviceMotionEventCustom.cpp: Added.
  67098. - Custom JS binding to translate property access through
  67099. to the DeviceMotionData object that the Event holds
  67100. * bindings/js/JSEventCustom.cpp:
  67101. - Include the custom code for DeviceMotionEvent
  67102. * dom/DeviceMotionClient.h: Added.
  67103. - Pure virtual client for DeviceMotion access
  67104. * dom/DeviceMotionController.cpp: Added.
  67105. * dom/DeviceMotionController.h: Added.
  67106. - Controller class that manages event dispatch
  67107. * dom/DeviceMotionData.cpp: Added.
  67108. * dom/DeviceMotionData.h: Added.
  67109. - Representation of the data that comes from a device motion
  67110. client that is then used within the event.
  67111. * dom/DeviceMotionEvent.cpp: Added.
  67112. * dom/DeviceMotionEvent.h: Added.
  67113. * dom/DeviceMotionEvent.idl: Added.
  67114. - The actual event implementation
  67115. * dom/Document.cpp:
  67116. (WebCore::Document::createEvent):
  67117. - Update createEvent to allow "devicemotion" events
  67118. * dom/Event.cpp:
  67119. * dom/Event.h:
  67120. - isDeviceMotionEvent virtual method
  67121. * dom/EventNames.h:
  67122. - new "devicemotion" event type
  67123. * page/DOMWindow.cpp:
  67124. (WebCore::DOMWindow::addEventListener):
  67125. * page/DOMWindow.h:
  67126. * page/DOMWindow.idl:
  67127. - allow creation of "devicemotion" events and pass registration
  67128. through to the Page's deviceMotionController object
  67129. * page/Page.cpp:
  67130. * page/Page.h:
  67131. - new PageClient for deviceMotionController
  67132. 2010-08-06 Kavita Kanetkar <kkanetkar@chromium.org>
  67133. Reviewed by Joseph Pecoraro.
  67134. Web Inspector: Remove "Online/Offline" icon for Chrome's appcache devtools UI.
  67135. https://bugs.webkit.org/show_bug.cgi?id=43450
  67136. * inspector/front-end/ApplicationCacheItemsView.js:
  67137. (WebInspector.ApplicationCacheItemsView):
  67138. (WebInspector.ApplicationCacheItemsView.prototype.get statusBarItems):
  67139. (WebInspector.ApplicationCacheItemsView.prototype.updateNetworkState):
  67140. * inspector/front-end/Settings.js:
  67141. 2010-08-06 Pavel Feldman <pfeldman@chromium.org>
  67142. Not reviewed. Rolling out 64835, 64836 and 64839.
  67143. * Android.jscbindings.mk:
  67144. * Android.v8bindings.mk:
  67145. * CMakeLists.txt:
  67146. * GNUmakefile.am:
  67147. * WebCore.gypi:
  67148. * WebCore.pro:
  67149. * WebCore.vcproj/WebCore.vcproj:
  67150. * WebCore.xcodeproj/project.pbxproj:
  67151. * bindings/js/JSBindingsAllInOne.cpp:
  67152. * bindings/js/JSDOMWindowCustom.cpp:
  67153. (WebCore::JSDOMWindow::openDatabase):
  67154. * bindings/js/JSDatabaseCustom.cpp: Added.
  67155. (WebCore::JSDatabase::changeVersion):
  67156. (WebCore::createTransaction):
  67157. (WebCore::JSDatabase::transaction):
  67158. (WebCore::JSDatabase::readTransaction):
  67159. * bindings/js/JSDatabaseSyncCustom.cpp: Added.
  67160. (WebCore::JSDatabaseSync::changeVersion):
  67161. (WebCore::createTransaction):
  67162. (WebCore::JSDatabaseSync::transaction):
  67163. (WebCore::JSDatabaseSync::readTransaction):
  67164. * bindings/js/JSWorkerContextCustom.cpp:
  67165. (WebCore::JSWorkerContext::openDatabase):
  67166. (WebCore::JSWorkerContext::openDatabaseSync):
  67167. * bindings/scripts/CodeGeneratorGObject.pm:
  67168. * bindings/scripts/CodeGeneratorJS.pm:
  67169. * bindings/scripts/CodeGeneratorV8.pm:
  67170. * bindings/scripts/test/JS/JSTestCallback.cpp:
  67171. (WebCore::JSTestCallback::~JSTestCallback):
  67172. * bindings/scripts/test/JS/JSTestObj.cpp:
  67173. (WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs):
  67174. (WebCore::jsTestObjPrototypeFunctionIntMethodWithArgs):
  67175. (WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
  67176. (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgs):
  67177. (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
  67178. (WebCore::jsTestObjPrototypeFunctionSerializedValue):
  67179. (WebCore::jsTestObjPrototypeFunctionIdbKey):
  67180. (WebCore::jsTestObjPrototypeFunctionCustomArgsAndException):
  67181. (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndArg):
  67182. (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndOptionalArg):
  67183. (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGesture):
  67184. (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGestureASAD):
  67185. (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalArg):
  67186. (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg):
  67187. (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs):
  67188. (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackArg):
  67189. (WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg):
  67190. (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackAndOptionalArg):
  67191. (WebCore::jsTestObjPrototypeFunctionOverloadedMethod1):
  67192. (WebCore::jsTestObjPrototypeFunctionOverloadedMethod2):
  67193. (WebCore::jsTestObjPrototypeFunctionOverloadedMethod3):
  67194. (WebCore::jsTestObjPrototypeFunctionOverloadedMethod4):
  67195. * bindings/scripts/test/TestObj.idl:
  67196. * bindings/scripts/test/V8/V8TestObj.cpp:
  67197. (WebCore::TestObjInternal::voidMethodWithArgsCallback):
  67198. (WebCore::TestObjInternal::intMethodWithArgsCallback):
  67199. (WebCore::TestObjInternal::objMethodWithArgsCallback):
  67200. (WebCore::TestObjInternal::methodThatRequiresAllArgsCallback):
  67201. (WebCore::TestObjInternal::methodThatRequiresAllArgsAndThrowsCallback):
  67202. (WebCore::TestObjInternal::serializedValueCallback):
  67203. (WebCore::TestObjInternal::idbKeyCallback):
  67204. (WebCore::TestObjInternal::customArgsAndExceptionCallback):
  67205. (WebCore::TestObjInternal::withDynamicFrameAndArgCallback):
  67206. (WebCore::TestObjInternal::withDynamicFrameAndOptionalArgCallback):
  67207. (WebCore::TestObjInternal::withDynamicFrameAndUserGestureCallback):
  67208. (WebCore::TestObjInternal::withDynamicFrameAndUserGestureASADCallback):
  67209. (WebCore::TestObjInternal::methodWithOptionalArgCallback):
  67210. (WebCore::TestObjInternal::methodWithNonOptionalArgAndOptionalArgCallback):
  67211. (WebCore::TestObjInternal::methodWithNonOptionalArgAndTwoOptionalArgsCallback):
  67212. (WebCore::TestObjInternal::methodWithCallbackArgCallback):
  67213. (WebCore::TestObjInternal::methodWithNonCallbackArgAndCallbackArgCallback):
  67214. (WebCore::TestObjInternal::methodWithCallbackAndOptionalArgCallback):
  67215. (WebCore::TestObjInternal::overloadedMethod1Callback):
  67216. (WebCore::TestObjInternal::overloadedMethod2Callback):
  67217. (WebCore::TestObjInternal::overloadedMethod3Callback):
  67218. (WebCore::TestObjInternal::overloadedMethod4Callback):
  67219. (WebCore::):
  67220. (WebCore::ConfigureV8TestObjTemplate):
  67221. * bindings/v8/V8Binding.h:
  67222. (WebCore::String):
  67223. (WebCore::AtomicString):
  67224. * bindings/v8/custom/V8DOMWindowCustom.cpp:
  67225. (WebCore::V8DOMWindow::openDatabaseCallback):
  67226. * bindings/v8/custom/V8DatabaseCustom.cpp: Added.
  67227. (WebCore::V8Database::changeVersionCallback):
  67228. (WebCore::createTransaction):
  67229. (WebCore::V8Database::transactionCallback):
  67230. (WebCore::V8Database::readTransactionCallback):
  67231. * bindings/v8/custom/V8DatabaseSyncCustom.cpp: Added.
  67232. (WebCore::V8DatabaseSync::changeVersionCallback):
  67233. (WebCore::createTransaction):
  67234. (WebCore::V8DatabaseSync::transactionCallback):
  67235. (WebCore::V8DatabaseSync::readTransactionCallback):
  67236. * bindings/v8/custom/V8WorkerContextCustom.cpp:
  67237. (WebCore::V8WorkerContext::openDatabaseCallback):
  67238. (WebCore::V8WorkerContext::openDatabaseSyncCallback):
  67239. * page/DOMWindow.idl:
  67240. * storage/Database.cpp:
  67241. (WebCore::Database::transaction):
  67242. * storage/Database.h:
  67243. * storage/Database.idl:
  67244. * storage/DatabaseSync.cpp:
  67245. (WebCore::DatabaseSync::transaction):
  67246. * storage/DatabaseSync.h:
  67247. * storage/DatabaseSync.idl:
  67248. * workers/WorkerContext.idl:
  67249. 2010-08-06 Dumitru Daniliuc <dumi@chromium.org>
  67250. Unreviewed, fix the "GTK Linux 64-bit Debug" bot.
  67251. CodeGeneratorGObject.pm doesn't know yet how to auto-generate
  67252. callbacks, so we should not auto-generate functions that take
  67253. callbacks as parameters. This shouldn't break anything, because
  67254. all these functions were marked as ["Custom"] until now, and this
  67255. code generator skipped those functions anyway.
  67256. * bindings/scripts/CodeGeneratorGObject.pm:
  67257. 2010-08-06 Dumitru Daniliuc <dumi@chromium.org>
  67258. Unreviewed, "Qt Linux Realese minimal" build fix.
  67259. * bindings/scripts/CodeGeneratorJS.pm:
  67260. 2010-08-06 Dumitru Daniliuc <dumi@chromium.org>
  67261. Reviewed by Adam Barth.
  67262. Auto-generate all HTML5 DB bindings.
  67263. https://bugs.webkit.org/show_bug.cgi?id=43382
  67264. * Android.jscbindings.mk: Remove {JS|V8}Database{Sync}Custom.cpp
  67265. and the custom implementations of openDatabas{Sync}().
  67266. * Android.v8bindings.mk:
  67267. * CMakeLists.txt:
  67268. * GNUmakefile.am:
  67269. * WebCore.gypi:
  67270. * WebCore.pro:
  67271. * WebCore.vcproj/WebCore.vcproj:
  67272. * WebCore.xcodeproj/project.pbxproj:
  67273. * bindings/js/JSBindingsAllInOne.cpp:
  67274. * bindings/js/JSDOMWindowCustom.cpp:
  67275. * bindings/js/JSDatabaseCustom.cpp: Removed.
  67276. * bindings/js/JSDatabaseSyncCustom.cpp: Removed.
  67277. * bindings/js/JSWorkerContextCustom.cpp:
  67278. * bindings/v8/custom/V8DOMWindowCustom.cpp:
  67279. * bindings/v8/custom/V8DatabaseCustom.cpp: Removed.
  67280. * bindings/v8/custom/V8DatabaseSyncCustom.cpp: Removed.
  67281. * bindings/v8/custom/V8WorkerContextCustom.cpp:
  67282. * bindings/scripts/CodeGeneratorJS.pm: Change the code generators
  67283. to check that a value was passed for each non-optional argument,
  67284. and that the value can be converted to the argument type.
  67285. * bindings/scripts/CodeGeneratorV8.pm:
  67286. * bindings/scripts/test/JS/JSTestCallback.cpp:
  67287. (WebCore::JSTestCallback::~JSTestCallback):
  67288. * bindings/scripts/test/JS/JSTestObj.cpp:
  67289. (WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs):
  67290. (WebCore::jsTestObjPrototypeFunctionIntMethodWithArgs):
  67291. (WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
  67292. (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgs):
  67293. (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
  67294. (WebCore::jsTestObjPrototypeFunctionSerializedValue):
  67295. (WebCore::jsTestObjPrototypeFunctionIdbKey):
  67296. (WebCore::jsTestObjPrototypeFunctionCustomArgsAndException):
  67297. (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndArg):
  67298. (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndOptionalArg):
  67299. (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGesture):
  67300. (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGestureASAD):
  67301. (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalArg):
  67302. (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg):
  67303. (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs):
  67304. (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackArg):
  67305. (WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg):
  67306. (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackAndOptionalArg):
  67307. (WebCore::jsTestObjPrototypeFunctionOverloadedMethod1):
  67308. (WebCore::jsTestObjPrototypeFunctionOverloadedMethod2):
  67309. (WebCore::jsTestObjPrototypeFunctionOverloadedMethod3):
  67310. (WebCore::jsTestObjPrototypeFunctionOverloadedMethod4):
  67311. * bindings/scripts/test/TestObj.idl:
  67312. * bindings/scripts/test/V8/V8TestObj.cpp:
  67313. (WebCore::TestObjInternal::voidMethodWithArgsCallback):
  67314. (WebCore::TestObjInternal::intMethodWithArgsCallback):
  67315. (WebCore::TestObjInternal::objMethodWithArgsCallback):
  67316. (WebCore::TestObjInternal::methodThatRequiresAllArgsCallback):
  67317. (WebCore::TestObjInternal::methodThatRequiresAllArgsAndThrowsCallback):
  67318. (WebCore::TestObjInternal::serializedValueCallback):
  67319. (WebCore::TestObjInternal::idbKeyCallback):
  67320. (WebCore::TestObjInternal::customArgsAndExceptionCallback):
  67321. (WebCore::TestObjInternal::withDynamicFrameAndArgCallback):
  67322. (WebCore::TestObjInternal::withDynamicFrameAndOptionalArgCallback):
  67323. (WebCore::TestObjInternal::withDynamicFrameAndUserGestureCallback):
  67324. (WebCore::TestObjInternal::withDynamicFrameAndUserGestureASADCallback):
  67325. (WebCore::TestObjInternal::methodWithOptionalArgCallback):
  67326. (WebCore::TestObjInternal::methodWithNonOptionalArgAndOptionalArgCallback):
  67327. (WebCore::TestObjInternal::methodWithNonOptionalArgAndTwoOptionalArgsCallback):
  67328. (WebCore::TestObjInternal::methodWithCallbackArgCallback):
  67329. (WebCore::TestObjInternal::methodWithNonCallbackArgAndCallbackArgCallback):
  67330. (WebCore::TestObjInternal::methodWithCallbackAndOptionalArgCallback):
  67331. (WebCore::TestObjInternal::overloadedMethod1Callback):
  67332. (WebCore::TestObjInternal::overloadedMethod2Callback):
  67333. (WebCore::TestObjInternal::overloadedMethod3Callback):
  67334. (WebCore::TestObjInternal::overloadedMethod4Callback):
  67335. (WebCore::):
  67336. (WebCore::ConfigureV8TestObjTemplate):
  67337. * bindings/v8/V8Binding.h:
  67338. (WebCore::String):
  67339. (WebCore::AtomicString):
  67340. * page/DOMWindow.idl: Minor changes required by the auto-generated
  67341. bindings.
  67342. * storage/Database.cpp:
  67343. (WebCore::Database::transaction):
  67344. (WebCore::Database::readTransaction):
  67345. (WebCore::Database::runTransaction):
  67346. * storage/Database.h:
  67347. * storage/Database.idl:
  67348. * storage/DatabaseSync.cpp:
  67349. (WebCore::DatabaseSync::transaction):
  67350. (WebCore::DatabaseSync::readTransaction):
  67351. (WebCore::DatabaseSync::runTransaction):
  67352. * storage/DatabaseSync.h:
  67353. * storage/DatabaseSync.idl:
  67354. * workers/WorkerContext.idl:
  67355. 2010-08-06 Nikolas Zimmermann <nzimmermann@rim.com>
  67356. Not reviewed. Sort Xcode project file.
  67357. * WebCore.xcodeproj/project.pbxproj:
  67358. 2010-08-06 Nikolas Zimmermann <nzimmermann@rim.com>
  67359. Not reviewed. Fix warning, breaking win build.
  67360. * svg/SVGLength.cpp:
  67361. (WebCore::SVGLength::toCSSPrimitiveValue):
  67362. 2010-08-06 Alexey Proskuryakov <ap@apple.com>
  67363. Fix crashing Leopard and Gtk bots.
  67364. * platform/text/TextCodecICU.cpp: (WebCore::TextCodecICU::registerExtendedEncodingNames):
  67365. Don't register ISO8859-16, because older versions of ICU don't support ISO-8859-16, causing
  67366. crashes when we try to register an alias. Also, we don't need it, because Firefox doesn't
  67367. support this particular alias (it supports ISO8859-1 to ISO8859-15, but only supports the
  67368. main name for ISO-8859-16).
  67369. 2010-08-06 Nikolas Zimmermann <nzimmermann@rim.com>
  67370. Reviewed by Dirk Schulze.
  67371. SVG - stroke-width:0 bug with stroke other than "none"
  67372. https://bugs.webkit.org/show_bug.cgi?id=42387
  67373. Stop storing refcounted CSSValue/CSSValueList objects in SVGRenderStyle, replacing them with SVGLength types.
  67374. Allows us to directly specify default values for stroke-dashoffset/width in the SVGRenderStyle, fixing a problem
  67375. with stroke-width animations when resetting to the original stored baseVal, exposed in svg/W3C-1.1/animate-elem-40-t.svg
  67376. Originally discovered by Fady Samuel.
  67377. Test: svg/custom/path-zero-strokewidth.svg
  67378. * css/SVGCSSComputedStyleDeclaration.cpp:
  67379. (WebCore::strokeDashArrayToCSSValueList): New helper function converting from Vector<SVGLength> to CSSValueList.
  67380. (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue): Convert SVGLength values to CSSPrimitiveValues.
  67381. * css/SVGCSSStyleSelector.cpp:
  67382. (WebCore::CSSStyleSelector::applySVGProperty): Convert CSSPrimitiveValues to SVGLength objects, for SVGRenderStyle storage.
  67383. * rendering/RenderPath.cpp:
  67384. (WebCore::RenderPath::calculateMarkerBoundsIfNeeded): Just grab strokeWidth SVGLength value from SVGRenderSTyle, no need to call cssPrimitiveToLength anymore.
  67385. * rendering/RenderSVGText.cpp:
  67386. (WebCore::RenderSVGText::strokeBoundingBox): Ditto.
  67387. * rendering/SVGCharacterLayoutInfo.cpp:
  67388. (WebCore::calculateBaselineShift): Ditto (for baseline-shift).
  67389. * rendering/SVGInlineTextBox.cpp:
  67390. (WebCore::SVGInlineTextBox::buildLayoutInformation): Ditto (for kerning).
  67391. * rendering/SVGRenderSupport.cpp:
  67392. (WebCore::SVGRenderSupport::applyStrokeStyleToContext): Ditto (for stroke-width/stroke-dashoffset/stroke-dasharray).
  67393. * rendering/SVGRenderSupport.h:
  67394. * rendering/SVGRenderTreeAsText.cpp:
  67395. (WebCore::writeStyle): Ditto.
  67396. * rendering/SVGTextLayoutUtilities.cpp:
  67397. (WebCore::calculateCSSKerning): Ditto.
  67398. * rendering/SVGTextLayoutUtilities.h:
  67399. * rendering/style/SVGRenderStyle.cpp: Remove no longer needed cssPrimitiveToLength function.
  67400. * rendering/style/SVGRenderStyle.h: Stop storing RefPtr<CSSValue> / RefPtr<CSSValueList> but use SVGLength/Vector<SVGLength>.
  67401. (WebCore::SVGRenderStyle::initialStrokeDashArray): Allows us to specify correct default values, instead of null pointers.
  67402. (WebCore::SVGRenderStyle::initialBaselineShiftValue): Specify 0px default value.
  67403. (WebCore::SVGRenderStyle::initialKerning): Ditto.
  67404. (WebCore::SVGRenderStyle::initialStrokeDashOffset): Ditto.
  67405. (WebCore::SVGRenderStyle::initialStrokeWidth): Specify 1px default value.
  67406. (WebCore::SVGRenderStyle::setStrokeDashArray): Takes a Vector<SVGLength> now, not a PassRefPtr<CSSValueList>.
  67407. (WebCore::SVGRenderStyle::setStrokeWidth): Takes a SVGLength now, not a PassRefPtr<CSSValue>.
  67408. (WebCore::SVGRenderStyle::setStrokeDashOffset): Ditto.
  67409. (WebCore::SVGRenderStyle::setKerning): Ditto.
  67410. (WebCore::SVGRenderStyle::setStopColor): Pass Color as const-reference.
  67411. (WebCore::SVGRenderStyle::setFloodColor): Ditto.
  67412. (WebCore::SVGRenderStyle::setLightingColor): Ditto.
  67413. (WebCore::SVGRenderStyle::setBaselineShiftValue): Takes a SVGLength now, not a PassRefPtr<CSSValue>.
  67414. (WebCore::SVGRenderStyle::setShadow): Reformat, had wrong style.
  67415. (WebCore::SVGRenderStyle::setClipperResource): Pass String as const-reference.
  67416. (WebCore::SVGRenderStyle::setFilterResource): Ditto.
  67417. (WebCore::SVGRenderStyle::setMaskerResource): Ditto.
  67418. (WebCore::SVGRenderStyle::setMarkerStartResource): Ditto.
  67419. (WebCore::SVGRenderStyle::setMarkerMidResource): Ditto.
  67420. (WebCore::SVGRenderStyle::setMarkerEndResource): Ditto.
  67421. (WebCore::SVGRenderStyle::strokeDashArray): Return Vector<SVGLength>.
  67422. (WebCore::SVGRenderStyle::strokeWidth): Return SVGLength.
  67423. (WebCore::SVGRenderStyle::strokeDashOffset): Ditto.
  67424. (WebCore::SVGRenderStyle::kerning): Ditto.
  67425. (WebCore::SVGRenderStyle::baselineShiftValue): Ditto.
  67426. * rendering/style/SVGRenderStyleDefs.cpp:
  67427. (WebCore::StyleStrokeData::StyleStrokeData): Changed initialization order, to group stroke properties.
  67428. * rendering/style/SVGRenderStyleDefs.h: Store SVGLength values instead of reference counted CSS objects.
  67429. * svg/SVGLength.cpp:
  67430. (WebCore::SVGLength::SVGLength): Add copy constructor.
  67431. (WebCore::SVGLength::operator==): Add comparision operator.
  67432. (WebCore::SVGLength::operator!=): Ditto.
  67433. (WebCore::SVGLength::fromCSSPrimitiveValue): New static helper function to convert from a CSSPrimitiveValue.
  67434. (WebCore::SVGLength::toCSSPrimitiveValue): New static helper function to convert to a CSSPrimitiveValue.
  67435. * svg/SVGLength.h: Reindent.
  67436. 2010-08-06 Luiz Agostini <luiz.agostini@openbossa.org>
  67437. Reviewed by Kenneth Rohde Christiansen.
  67438. [Qt] Move Qt's popup menu implementation from WebCore to WebKit layer
  67439. https://bugs.webkit.org/show_bug.cgi?id=43427
  67440. After PopupMenu changes in bug 42592 class QtAbstractWebPopup became unecessary and
  67441. there is no need to keep any Qt specific code for popup menus in WebCore/platform/qt.
  67442. PopupMenuQt has been moved from WebCore/platform/qt to WebKit/qt/WebCoreSupport and
  67443. assumed the responsibilities of QtAbstractWebPopup. SearchPopupMenuQt has been moved
  67444. to WebKit/qt/WebCoreSupport as well.
  67445. All classes that previously inherited from QtAbstractWebPopup now inherit from
  67446. QWebSelectMethod and QtPlatformPlugin's method createSelectInputMethod now returns an
  67447. instance of class QWebSelectMethod instead of QtAbstractWebPopup.
  67448. * WebCore.pro:
  67449. * platform/qt/PopupMenuQt.cpp: Removed.
  67450. * platform/qt/PopupMenuQt.h: Removed.
  67451. * platform/qt/QtAbstractWebPopup.cpp: Removed.
  67452. * platform/qt/QtAbstractWebPopup.h: Removed.
  67453. * platform/qt/SearchPopupMenuQt.cpp: Removed.
  67454. * platform/qt/SearchPopupMenuQt.h: Removed.
  67455. 2010-08-05 Marcus Bulach <bulach@chromium.org>
  67456. Reviewed by Jeremy Orlow.
  67457. Initial bindings and plumbing for IDBCursor.
  67458. https://bugs.webkit.org/show_bug.cgi?id=41888
  67459. Test: storage/indexeddb/idb-opencursor.html
  67460. * Android.derived.jscbindings.mk:
  67461. * Android.derived.v8bindings.mk:
  67462. * Android.mk:
  67463. * CMakeLists.txt:
  67464. * DerivedSources.cpp:
  67465. * DerivedSources.make:
  67466. * GNUmakefile.am:
  67467. * WebCore.gypi:
  67468. * WebCore.pri:
  67469. * WebCore.pro:
  67470. * WebCore.vcproj/WebCore.vcproj:
  67471. * WebCore.xcodeproj/project.pbxproj:
  67472. * bindings/v8/custom/V8IDBAnyCustom.cpp:
  67473. (WebCore::toV8):
  67474. * storage/IDBAny.cpp:
  67475. (WebCore::IDBAny::idbCursor):
  67476. (WebCore::IDBAny::set):
  67477. * storage/IDBAny.h:
  67478. (WebCore::IDBAny::):
  67479. * storage/IDBCallbacks.h:
  67480. * storage/IDBCursor.cpp: Added.
  67481. (WebCore::IDBCursor::IDBCursor):
  67482. (WebCore::IDBCursor::~IDBCursor):
  67483. (WebCore::IDBCursor::direction):
  67484. (WebCore::IDBCursor::key):
  67485. (WebCore::IDBCursor::value):
  67486. (WebCore::IDBCursor::update):
  67487. (WebCore::IDBCursor::continueFunction):
  67488. (WebCore::IDBCursor::remove):
  67489. * storage/IDBCursor.h: Added.
  67490. (WebCore::IDBCursor::):
  67491. (WebCore::IDBCursor::create):
  67492. * storage/IDBCursor.idl: Added.
  67493. * storage/IDBCursorBackendImpl.cpp: Added.
  67494. (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):
  67495. (WebCore::IDBCursorBackendImpl::~IDBCursorBackendImpl):
  67496. (WebCore::IDBCursorBackendImpl::direction):
  67497. (WebCore::IDBCursorBackendImpl::key):
  67498. (WebCore::IDBCursorBackendImpl::value):
  67499. (WebCore::IDBCursorBackendImpl::update):
  67500. (WebCore::IDBCursorBackendImpl::continueFunction):
  67501. (WebCore::IDBCursorBackendImpl::remove):
  67502. * storage/IDBCursorBackendImpl.h: Added.
  67503. (WebCore::IDBCursorBackendImpl::create):
  67504. * storage/IDBCursorBackendInterface.h: Added.
  67505. (WebCore::IDBCursorBackendInterface::~IDBCursorBackendInterface):
  67506. * storage/IDBObjectStore.cpp:
  67507. (WebCore::IDBObjectStore::openCursor):
  67508. * storage/IDBObjectStore.h:
  67509. * storage/IDBObjectStore.idl:
  67510. * storage/IDBObjectStoreBackendImpl.cpp:
  67511. (WebCore::IDBObjectStoreBackendImpl::openCursor):
  67512. * storage/IDBObjectStoreBackendImpl.h:
  67513. * storage/IDBObjectStoreBackendInterface.h:
  67514. * storage/IDBRequest.cpp:
  67515. (WebCore::IDBRequest::onSuccess):
  67516. (WebCore::IDBRequest::timerFired):
  67517. * storage/IDBRequest.h:
  67518. 2010-08-06 Andrei Popescu <andreip@google.com>
  67519. Unreviewed, release build fix.
  67520. Leopard relase build is broken due to absolute path to JSIDBTransaction.cpp file present in Xcode project file.
  67521. https://bugs.webkit.org/show_bug.cgi?id=43616
  67522. * WebCore.xcodeproj/project.pbxproj:
  67523. 2010-08-05 Andrei Popescu <andreip@dhcp-172-16-14-12.lon.corp.google.com>
  67524. Reviewed by Jeremy Orlow.
  67525. [IndexedDB] IndexedDB is missing the Transaction interface.
  67526. https://bugs.webkit.org/show_bug.cgi?id=42970
  67527. Add IDBTransaction boilerplate.
  67528. No new tests, not functional yet.
  67529. * Android.derived.jscbindings.mk:
  67530. * Android.derived.v8bindings.mk:
  67531. * Android.mk:
  67532. * CMakeLists.txt:
  67533. * DerivedSources.cpp:
  67534. * DerivedSources.make:
  67535. * GNUmakefile.am:
  67536. * WebCore.gypi:
  67537. * WebCore.pri:
  67538. * WebCore.pro:
  67539. * WebCore.vcproj/WebCore.vcproj:
  67540. * WebCore.xcodeproj/project.pbxproj:
  67541. * dom/EventNames.h:
  67542. * storage/IDBDatabase.cpp:
  67543. (WebCore::IDBDatabase::transaction):
  67544. * storage/IDBDatabase.h:
  67545. * storage/IDBDatabase.idl:
  67546. * storage/IDBDatabaseBackendImpl.cpp:
  67547. (WebCore::IDBDatabaseBackendImpl::transaction):
  67548. * storage/IDBDatabaseBackendImpl.h:
  67549. * storage/IDBDatabaseBackendInterface.h:
  67550. * storage/IDBRequest.cpp:
  67551. (WebCore::IDBRequest::IDBRequest):
  67552. (WebCore::IDBRequest::canSuspend):
  67553. (WebCore::IDBRequest::timerFired):
  67554. (WebCore::IDBRequest::onEventCommon):
  67555. * storage/IDBRequest.h:
  67556. * storage/IDBTransaction.cpp: Added.
  67557. (WebCore::IDBTransaction::IDBTransaction):
  67558. (WebCore::IDBTransaction::~IDBTransaction):
  67559. (WebCore::IDBTransaction::mode):
  67560. (WebCore::IDBTransaction::db):
  67561. (WebCore::IDBTransaction::objectStore):
  67562. (WebCore::IDBTransaction::abort):
  67563. (WebCore::IDBTransaction::scriptExecutionContext):
  67564. (WebCore::IDBTransaction::canSuspend):
  67565. (WebCore::IDBTransaction::eventTargetData):
  67566. (WebCore::IDBTransaction::ensureEventTargetData):
  67567. * storage/IDBTransaction.h: Added.
  67568. (WebCore::IDBTransaction::create):
  67569. (WebCore::IDBTransaction::):
  67570. (WebCore::IDBTransaction::toIDBTransaction):
  67571. (WebCore::IDBTransaction::refEventTarget):
  67572. (WebCore::IDBTransaction::derefEventTarget):
  67573. * storage/IDBTransaction.idl: Added.
  67574. * storage/IDBTransactionBackendInterface.h: Added.
  67575. (WebCore::IDBTransactionBackendInterface::~IDBTransactionBackendInterface):
  67576. 2010-08-06 Rafael Antognolli <antognolli@profusion.mobi>
  67577. Unreviewed build fix.
  67578. [EFL] Regression (64735) build fix for efl.
  67579. https://bugs.webkit.org/show_bug.cgi?id=43564
  67580. Removing bindings/js/ScriptArray.cpp from the WebCore_SOURCES.
  67581. No new features, so no new tests.
  67582. * CMakeLists.txt:
  67583. 2010-08-05 Alexey Proskuryakov <ap@apple.com>
  67584. Fix http/tests/webarchive/test-css-url-encoding-shift-jis.html
  67585. For some reason, I didn't see the failure locally, but bots complain.
  67586. * platform/text/TextCodecICU.cpp: (WebCore::TextCodecICU::registerExtendedEncodingNames):
  67587. Register "shift-jis" (with dash instead of underscore). At least Firefox supports it.
  67588. 2010-08-05 Ben Murdoch <benm@google.com>
  67589. Reviewed by Simon Fraser.
  67590. Form button input elements lacking text in some cases after switching from
  67591. visibility:collapse to visibility:visible
  67592. https://bugs.webkit.org/show_bug.cgi?id=38050
  67593. A relayout is required after toggling visibility from collapse to another value.
  67594. Test: fast/css/visibility-collapse-form-buttons.html
  67595. * rendering/style/RenderStyle.cpp:
  67596. (WebCore::RenderStyle::diff): If we're toggling from visibility:collapse to another
  67597. visibility value (or vice versa) then we need to trigger a relayout.
  67598. 2010-08-05 Alexey Proskuryakov <ap@apple.com>
  67599. Reviewed by Darin Adler.
  67600. https://bugs.webkit.org/show_bug.cgi?id=43554
  67601. Way too many encoding aliases are treated as valid
  67602. <rdar://problem/7863399> Garbage characters displayed in some yesky.com pages.
  67603. <rdar://problem/7859068> Garbage characters displayed for most text at ceping.zhaopin.com
  67604. Test: http/tests/misc/bad-charset-alias.html
  67605. * loader/TextResourceDecoder.cpp: (WebCore::TextResourceDecoder::checkForCSSCharset):
  67606. Fix encoding name length computation. Previously, a trailing quote was ignored by
  67607. TextEncodingRegistry.
  67608. * platform/text/TextCodecICU.cpp: (WebCore::TextCodecICU::registerExtendedEncodingNames):
  67609. Added dashes to alias names that didn't have them. Added aliases prompted by regression tests.
  67610. * platform/text/TextCodecLatin1.cpp: (WebCore::TextCodecLatin1::registerEncodingNames):
  67611. Don't register 8859-1, other browsers do not support this encoding name.
  67612. * platform/text/TextEncoding.cpp: (WebCore::Latin1Encoding):
  67613. "Latin-1" is not a real encoding name, it's not known to Firefox or IE.
  67614. * platform/text/TextEncodingRegistry.cpp:
  67615. (WebCore::TextEncodingNameHash::equal): Changed to no longer ignore non-alphanumeric characters.
  67616. There is a good chance that we'll be missing support for some necessary alias names, but other
  67617. browsers don't ignore any characters when matching names.
  67618. (WebCore::TextEncodingNameHash::hash): Ditto.
  67619. (WebCore::checkExistingName): Re-formatted a line.
  67620. (WebCore::isUndesiredAlias): Added a filter to reject "8859_1" and any names containing commas.
  67621. (WebCore::addToTextEncodingNameMap): Used it.
  67622. (WebCore::atomicCanonicalTextEncodingName): Changed to no longer ignore non-alphanumeric characters.
  67623. 2010-08-05 Simon Hausmann <simon.hausmann@nokia.com>
  67624. Reviewed by Laszlo Gombos.
  67625. [Qt] Temporary files should not be created in the current directory
  67626. https://bugs.webkit.org/show_bug.cgi?id=43562
  67627. Don't create temporary files in the current directory, use QDir::tempPath()
  67628. instead, as suggested by the QTemporaryFile documentation.
  67629. * platform/qt/FileSystemQt.cpp:
  67630. (WebCore::openTemporaryFile):
  67631. 2010-08-05 François Sausset <sausset@gmail.com>
  67632. Reviewed by Kenneth Rohde Christiansen.
  67633. Make STIX font the default one to render MathML
  67634. https://bugs.webkit.org/show_bug.cgi?id=41961
  67635. * css/mathml.css:
  67636. (math):
  67637. 2010-08-05 Cosmin Truta <ctruta@chromium.org>
  67638. Reviewed by Eric Seidel.
  67639. Apply a stylistic fix to the patch 62640.
  67640. https://bug-41175-attachments.webkit.org/attachment.cgi?id=62640
  67641. https://bugs.webkit.org/show_bug.cgi?id=41175
  67642. * WebCore/platform/graphics/skia/ImageBufferSkia.cpp:
  67643. (getImageData):
  67644. 2010-08-05 Patrick Gansterer <paroga@paroga.com>
  67645. Reviewed by Adam Roben.
  67646. Make SearchPopupMenuWin more portable
  67647. https://bugs.webkit.org/show_bug.cgi?id=43527
  67648. Add #if PLATFORM(CF) around CoreFoundation code.
  67649. * platform/win/SearchPopupMenuWin.cpp:
  67650. (WebCore::SearchPopupMenuWin::enabled):
  67651. (WebCore::SearchPopupMenuWin::saveRecentSearches):
  67652. (WebCore::SearchPopupMenuWin::loadRecentSearches):
  67653. 2010-08-05 Sheriff Bot <webkit.review.bot@gmail.com>
  67654. Unreviewed, rolling out r63653.
  67655. http://trac.webkit.org/changeset/63653
  67656. https://bugs.webkit.org/show_bug.cgi?id=43592
  67657. regressed multiple background-images (Requested by smfr on
  67658. #webkit).
  67659. * manual-tests/css3-background-layer-count.html: Removed.
  67660. * rendering/style/FillLayer.cpp:
  67661. (WebCore::FillLayer::fillUnsetProperties):
  67662. (WebCore::FillLayer::cullEmptyLayers):
  67663. * rendering/style/RenderStyle.h:
  67664. (WebCore::InheritedFlags::adjustBackgroundLayers):
  67665. (WebCore::InheritedFlags::adjustMaskLayers):
  67666. 2010-08-05 Mark Rowe <mrowe@apple.com>
  67667. Reviewed by Jon Honeycutt.
  67668. Fix some leaks seen on the buildbot.
  67669. * platform/graphics/cg/GraphicsContext3DCG.cpp:
  67670. (WebCore::GraphicsContext3D::paintToCanvas): Adopt the newly-created CoreGraphics objects rather than sharing ownership
  67671. and over-incrementing their reference count. Also cleaned up the bizarre wrapping used for function arguments while I was
  67672. touching this code.
  67673. 2010-08-05 James Robinson <jamesr@chromium.org>
  67674. Rubber stamped by Eric Seidel.
  67675. [SVG] SVGPathSeg.cpp needs an #if ENABLE(SVG) guard
  67676. https://bugs.webkit.org/show_bug.cgi?id=43599
  67677. Matches the rest of the .cpp files in this directory.
  67678. * svg/SVGPathSeg.cpp:
  67679. 2010-08-05 Erik Arvidsson <arv@chromium.org>
  67680. Reviewed by Kent Tamura.
  67681. Calling setCustomValidity should trigger a layout
  67682. https://bugs.webkit.org/show_bug.cgi?id=43582
  67683. Test: fast/forms/setCustomValidity.html
  67684. * html/ValidityState.cpp:
  67685. (WebCore::ValidityState::setCustomErrorMessage): Call setNeedsValidityCheck to tell the system that the validity might have changed.
  67686. * html/ValidityState.h:
  67687. 2010-08-05 Sam Weinig <sam@webkit.org>
  67688. Reviewed by Anders Carlsson.
  67689. Add ability to get a JSValueRef for a node handle and a world
  67690. https://bugs.webkit.org/show_bug.cgi?id=43591
  67691. * WebCore.exp.in: Add exports.
  67692. 2010-08-05 Gavin Barraclough <barraclough@apple.com>
  67693. Rubber stamped by Sam Weinig
  67694. Bug 43594 - Add string forwards to Forward.h
  67695. This allows us to remove forward declarations for these classes from
  67696. WebCore/WebKit (a step in moving these class from WebCore:: to WTF::).
  67697. * WebCore.xcodeproj/project.pbxproj:
  67698. * accessibility/AXObjectCache.h:
  67699. * accessibility/AccessibilityARIAGrid.h:
  67700. * accessibility/AccessibilityListBoxOption.h:
  67701. * accessibility/AccessibilityObject.h:
  67702. * accessibility/AccessibilityRenderObject.h:
  67703. * accessibility/AccessibilityTable.h:
  67704. * bindings/cpp/WebDOMCString.h:
  67705. * bindings/cpp/WebDOMString.h:
  67706. * bindings/gobject/ConvertToUTF8String.h:
  67707. * bindings/js/DOMWrapperWorld.h:
  67708. * bindings/js/JSDOMBinding.h:
  67709. * bindings/js/JSDOMWindowBase.h:
  67710. * bindings/js/JSMessagePortCustom.h:
  67711. * bindings/js/JavaScriptCallFrame.h:
  67712. * bindings/js/ScriptController.h:
  67713. * bindings/js/ScriptProfile.h:
  67714. * bindings/js/ScriptSourceProvider.h:
  67715. * bindings/js/ScriptString.h:
  67716. * bindings/js/WorkerScriptController.h:
  67717. * bindings/objc/DOMImplementationFront.h:
  67718. * bindings/v8/ScheduledAction.h:
  67719. * bindings/v8/ScriptController.h:
  67720. * bindings/v8/V8DOMWindowShell.h:
  67721. * bindings/v8/V8Proxy.h:
  67722. * bindings/v8/V8Utilities.h:
  67723. * bindings/v8/custom/V8CustomXPathNSResolver.h:
  67724. * bridge/c/c_utility.h:
  67725. * css/CSSFontSelector.h:
  67726. * css/CSSHelper.h:
  67727. * css/CSSOMUtils.h:
  67728. * css/CSSPrimitiveValue.h:
  67729. * css/MediaList.h:
  67730. * css/StyleBase.h:
  67731. * css/StyleSheetList.h:
  67732. * css/WebKitCSSKeyframesRule.h:
  67733. * dom/CheckedRadioButtons.h:
  67734. * dom/DOMImplementation.h:
  67735. * dom/DocumentMarker.h:
  67736. * dom/DynamicNodeList.h:
  67737. * dom/EventTarget.h:
  67738. * dom/MessagePort.h:
  67739. * dom/MessagePortChannel.h:
  67740. * dom/NameNodeList.h:
  67741. * dom/Node.h:
  67742. * dom/NodeList.h:
  67743. * dom/OptionGroupElement.h:
  67744. * dom/ScriptExecutionContext.h:
  67745. * dom/SelectElement.h:
  67746. * dom/ViewportArguments.h:
  67747. * dom/make_names.pl:
  67748. * editing/HTMLInterchange.h:
  67749. * editing/htmlediting.h:
  67750. * editing/markup.h:
  67751. * html/CollectionCache.h:
  67752. * html/DOMFormData.h:
  67753. * html/DataGridColumnList.h:
  67754. * html/DateComponents.h:
  67755. * html/FileStream.h:
  67756. * html/FileStreamProxy.h:
  67757. * html/FormDataList.h:
  67758. (WebCore::FormDataList::appendData):
  67759. * html/HTMLCollection.h:
  67760. * html/HTMLElementStack.h:
  67761. * html/HTMLFormattingElementList.h:
  67762. * html/HTMLParserQuirks.h:
  67763. * html/HTMLQuoteElement.h:
  67764. * html/HTMLScriptRunnerHost.h:
  67765. * html/StepRange.h:
  67766. * html/canvas/CanvasGradient.h:
  67767. * html/canvas/CanvasNumberArray.h:
  67768. * html/canvas/CanvasPattern.h:
  67769. * inspector/InjectedScript.h:
  67770. * inspector/InspectorCSSStore.h:
  67771. * inspector/InspectorClient.h:
  67772. * inspector/InspectorFrontendClient.h:
  67773. * inspector/InspectorValues.h:
  67774. * inspector/ScriptDebugListener.h:
  67775. * loader/CachedResourceClient.h:
  67776. * loader/CrossOriginAccessControl.h:
  67777. * loader/DocumentThreadableLoader.h:
  67778. * loader/FrameLoaderClient.h:
  67779. * loader/RedirectScheduler.h:
  67780. * loader/SubframeLoader.h:
  67781. * loader/appcache/DOMApplicationCache.h:
  67782. * loader/archive/ArchiveFactory.h:
  67783. * loader/icon/IconDatabaseClient.h:
  67784. * notifications/NotificationPresenter.h:
  67785. * page/Chrome.h:
  67786. * page/ChromeClient.h:
  67787. * page/Console.h:
  67788. * page/ContextMenuClient.h:
  67789. * page/DOMSelection.h:
  67790. * page/EditorClient.h:
  67791. * page/EventHandler.h:
  67792. * page/FrameView.h:
  67793. * page/GeolocationPositionCache.h:
  67794. * page/History.h:
  67795. * page/Location.h:
  67796. * page/Navigator.h:
  67797. * page/NavigatorBase.h:
  67798. * page/PluginHalterClient.h:
  67799. * page/PrintContext.h:
  67800. * page/SpeechInput.h:
  67801. * page/SpeechInputListener.h:
  67802. * page/animation/AnimationController.h:
  67803. * platform/CookieJar.h:
  67804. * platform/CrossThreadCopier.h:
  67805. * platform/DragImage.h:
  67806. * platform/FileSystem.h:
  67807. * platform/Language.h:
  67808. * platform/Length.h:
  67809. * platform/LinkHash.h:
  67810. * platform/LocalizationStrategy.h:
  67811. * platform/LocalizedStrings.h:
  67812. * platform/Logging.h:
  67813. * platform/Pasteboard.h:
  67814. * platform/PopupMenuClient.h:
  67815. * platform/SearchPopupMenu.h:
  67816. * platform/Widget.h:
  67817. * platform/cf/BinaryPropertyList.h:
  67818. * platform/chromium/ChromiumBridge.h:
  67819. * platform/chromium/ClipboardUtilitiesChromium.h:
  67820. * platform/cocoa/KeyEventCocoa.h:
  67821. * platform/graphics/Color.h:
  67822. * platform/graphics/FontCache.h:
  67823. * platform/graphics/FontData.h:
  67824. * platform/graphics/FontSelector.h:
  67825. * platform/graphics/GraphicsTypes.h:
  67826. * platform/graphics/Icon.h:
  67827. * platform/graphics/ImageBuffer.h:
  67828. * platform/graphics/ImageSource.h:
  67829. * platform/graphics/MediaPlayer.h:
  67830. * platform/graphics/MediaPlayerPrivate.h:
  67831. * platform/graphics/Path.h:
  67832. * platform/graphics/StringTruncator.h:
  67833. * platform/graphics/cairo/FontCustomPlatformData.h:
  67834. * platform/graphics/cairo/FontPlatformData.h:
  67835. * platform/graphics/cg/FontPlatformData.h:
  67836. * platform/graphics/cg/ImageSourceCG.h:
  67837. * platform/graphics/chromium/FontCustomPlatformData.h:
  67838. * platform/graphics/chromium/FontPlatformDataChromiumWin.h:
  67839. * platform/graphics/chromium/FontPlatformDataLinux.h:
  67840. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
  67841. * platform/graphics/haiku/FontCustomPlatformData.h:
  67842. * platform/graphics/mac/FontCustomPlatformData.h:
  67843. * platform/graphics/mac/FontPlatformData.h:
  67844. * platform/graphics/qt/FontCustomPlatformData.h:
  67845. * platform/graphics/qt/FontPlatformData.h:
  67846. * platform/graphics/win/FontCustomPlatformData.h:
  67847. * platform/graphics/win/FontCustomPlatformDataCairo.h:
  67848. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
  67849. * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
  67850. * platform/graphics/wince/FontPlatformData.h:
  67851. * platform/graphics/wince/MediaPlayerPrivateWince.h:
  67852. * platform/graphics/wince/MediaPlayerProxy.h:
  67853. * platform/graphics/wx/FontCustomPlatformData.h:
  67854. * platform/graphics/wx/FontPlatformData.h:
  67855. * platform/mac/PasteboardHelper.h:
  67856. * platform/network/DNS.h:
  67857. * platform/network/FormData.h:
  67858. * platform/network/FormDataBuilder.h:
  67859. * platform/network/HTTPParsers.h:
  67860. * platform/text/Hyphenation.h:
  67861. * platform/text/LineEnding.h:
  67862. * platform/text/TextCodec.h:
  67863. * platform/text/TextEncoding.h:
  67864. * platform/text/TextStream.h:
  67865. * platform/win/BString.h:
  67866. * platform/win/ClipboardUtilitiesWin.h:
  67867. * platform/win/WCDataObject.h:
  67868. * platform/win/WebCoreTextRenderer.h:
  67869. * plugins/DOMMimeType.h:
  67870. * plugins/DOMMimeTypeArray.h:
  67871. * plugins/DOMPlugin.h:
  67872. * plugins/DOMPluginArray.h:
  67873. * rendering/CounterNode.h:
  67874. * rendering/HitTestResult.h:
  67875. * rendering/RenderObjectChildList.h:
  67876. * rendering/RenderText.h:
  67877. * rendering/RenderTreeAsText.h:
  67878. * rendering/TextControlInnerElements.h:
  67879. * rendering/style/ContentData.h:
  67880. * rendering/style/RenderStyle.h:
  67881. * storage/DatabaseAuthorizer.h:
  67882. * storage/DatabaseTrackerClient.h:
  67883. * storage/SQLTransaction.h:
  67884. * storage/SQLTransactionSync.h:
  67885. * storage/Storage.h:
  67886. * storage/chromium/DatabaseObserver.h:
  67887. * svg/SVGAnimatedTemplate.h:
  67888. * svg/SVGDocumentExtensions.h:
  67889. * svg/SVGGlyphElement.h:
  67890. * svg/SVGHKernElement.h:
  67891. * svg/SVGNumberList.h:
  67892. * svg/SVGPointList.h:
  67893. * svg/SVGPreserveAspectRatio.h:
  67894. * svg/SVGStylable.h:
  67895. * svg/SVGTests.h:
  67896. * svg/SVGTransformList.h:
  67897. * svg/SVGTransformable.h:
  67898. * svg/SVGVKernElement.h:
  67899. * websockets/ThreadableWebSocketChannel.h:
  67900. * websockets/ThreadableWebSocketChannelClientWrapper.h:
  67901. * websockets/WebSocket.h:
  67902. * websockets/WebSocketChannel.h:
  67903. * websockets/WebSocketHandshakeResponse.h:
  67904. * wml/WMLErrorHandling.h:
  67905. * wml/WMLPageState.h:
  67906. * wml/WMLVariables.h:
  67907. * workers/DefaultSharedWorkerRepository.h:
  67908. * workers/SharedWorkerRepository.h:
  67909. * workers/Worker.h:
  67910. * workers/WorkerContextProxy.h:
  67911. * workers/WorkerLoaderProxy.h:
  67912. * workers/WorkerLocation.h:
  67913. * workers/WorkerMessagingProxy.h:
  67914. * workers/WorkerReportingProxy.h:
  67915. * workers/WorkerThread.h:
  67916. * xml/DOMParser.h:
  67917. * xml/XMLHttpRequestUpload.h:
  67918. * xml/XPathEvaluator.h:
  67919. * xml/XPathExpression.h:
  67920. * xml/XPathNSResolver.h:
  67921. * xml/XPathResult.h:
  67922. * xml/XPathUtil.h:
  67923. 2010-08-05 Adam Barth <abarth@webkit.org>
  67924. Reviewed by Eric Seidel.
  67925. U+0000 is turned to U+FFFD (replacement character)
  67926. https://bugs.webkit.org/show_bug.cgi?id=42112
  67927. This patch introduces an intentional parsing difference from the HTML5
  67928. parsing specificiation. The spec requires us to convert NULL
  67929. characters to U+FFFD, but doing so causes compatibility issues with a
  67930. number of sites, including US Bank.
  67931. In this patch, we strip the null characters instead in certain cases.
  67932. Firefox has made a corresponding change. After gathering compatability
  67933. data, we hope to convince the HTML WG to adopt this change.
  67934. Tests: fast/tokenizer/null-in-text.html
  67935. fast/tokenizer/null-xss.html
  67936. * html/HTMLTokenizer.cpp:
  67937. (WebCore::HTMLTokenizer::HTMLTokenizer):
  67938. (WebCore::HTMLTokenizer::reset):
  67939. * html/HTMLTokenizer.h:
  67940. (WebCore::HTMLTokenizer::setSkipLeadingNewLineForListing):
  67941. (WebCore::HTMLTokenizer::forceNullCharacterReplacement):
  67942. (WebCore::HTMLTokenizer::setForceNullCharacterReplacement):
  67943. (WebCore::HTMLTokenizer::shouldSkipNullCharacters):
  67944. (WebCore::HTMLTokenizer::InputStreamPreprocessor::InputStreamPreprocessor):
  67945. (WebCore::HTMLTokenizer::InputStreamPreprocessor::peek):
  67946. * html/HTMLTreeBuilder.cpp:
  67947. (WebCore::HTMLTreeBuilder::passTokenToLegacyParser):
  67948. (WebCore::HTMLTreeBuilder::constructTreeFromToken):
  67949. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  67950. 2010-08-05 Andy Estes <aestes@apple.com>
  67951. Reviewed by David Kilzer.
  67952. Rename iOS-related OS and PLATFORM macros.
  67953. https://bugs.webkit.org/show_bug.cgi?id=43493
  67954. Rename WTF_OS_IPHONE_OS to WTF_OS_IOS, WTF_PLATFORM_IPHONE to
  67955. WTF_PLATFORM_IOS, and WTF_PLATFORM_IPHONE_SIMULATOR to
  67956. WTF_PLATFORM_IOS_SIMULATOR.
  67957. * platform/cocoa/KeyEventCocoa.mm:
  67958. * platform/iphone/KeyEventIPhone.mm:
  67959. * platform/network/Credential.h:
  67960. 2010-08-05 Anders Carlsson <andersca@apple.com>
  67961. Reviewed by Sam Weinig.
  67962. Use the visited link provider for visited links
  67963. https://bugs.webkit.org/show_bug.cgi?id=43583
  67964. Export Page::visitedStateChanged and Page::allvisitedStateChanged.
  67965. * WebCore.exp.in:
  67966. 2010-08-05 Eric Seidel <eric@webkit.org>
  67967. Reviewed by Nikolas Zimmermann.
  67968. Touching SVGNames should only rebuild hundreds of files, not thousands
  67969. https://bugs.webkit.org/show_bug.cgi?id=43308
  67970. Remove SVGNames.h include from several core SVG header files
  67971. which do not need to include it.
  67972. One of them, SVGPathSeg.h, required creation of an SVGPathSeg.cpp.
  67973. A bunch of SVGPathSeg* could remove PlatformString.h includes if
  67974. we moved their toString() methods into the .cpp files.
  67975. I re-indented on header to stop check-webkit-style from complaining.
  67976. I removed a couple mode lines I saw, since my understanding from
  67977. previous webkit-dev threads is that we plan to remove those all.
  67978. No functional change, thus no tests.
  67979. * Android.mk:
  67980. * CMakeLists.txt:
  67981. * GNUmakefile.am:
  67982. * WebCore.gypi:
  67983. * WebCore.pro:
  67984. * WebCore.xcodeproj/project.pbxproj:
  67985. * svg/SVGAllInOne.cpp:
  67986. * svg/SVGAngle.h:
  67987. * svg/SVGPathSeg.cpp: Added.
  67988. (WebCore::SVGPathSeg::~SVGPathSeg):
  67989. (WebCore::SVGPathSeg::pathSegType):
  67990. (WebCore::SVGPathSeg::pathSegTypeAsLetter):
  67991. (WebCore::SVGPathSeg::toString):
  67992. (WebCore::SVGPathSeg::associatedAttributeName):
  67993. (WebCore::SVGPathSegSingleCoord::toString):
  67994. * svg/SVGPathSeg.h:
  67995. (WebCore::SVGPathSegSingleCoord::SVGPathSegSingleCoord):
  67996. * svg/SVGPathSegArc.cpp:
  67997. (WebCore::SVGPathSegArc::toString):
  67998. * svg/SVGPathSegArc.h:
  67999. (WebCore::SVGPathSegArc::SVGPathSegArc):
  68000. * svg/SVGPathSegClosePath.h:
  68001. (WebCore::SVGPathSegClosePath::create):
  68002. (WebCore::SVGPathSegClosePath::pathSegType):
  68003. (WebCore::SVGPathSegClosePath::pathSegTypeAsLetter):
  68004. (WebCore::SVGPathSegClosePath::toString):
  68005. * svg/SVGPathSegCurvetoCubic.h:
  68006. * svg/SVGPathSegCurvetoCubicSmooth.h:
  68007. * svg/SVGPathSegCurvetoQuadratic.h:
  68008. * svg/SVGPathSegCurvetoQuadraticSmooth.h:
  68009. * svg/SVGPathSegLineto.h:
  68010. * svg/SVGPathSegLinetoHorizontal.h:
  68011. * svg/SVGPathSegLinetoVertical.h:
  68012. * svg/SVGPathSegMoveto.h:
  68013. * svg/SVGTransform.h:
  68014. 2010-08-05 Dirk Schulze <krit@webkit.org>
  68015. Unreviewed sort of Xcode project file.
  68016. * WebCore.xcodeproj/project.pbxproj:
  68017. 2010-08-05 Adam Barth <abarth@webkit.org>
  68018. Actually make HTMLEntityNames.json valid JSON.
  68019. * html/HTMLEntityNames.json:
  68020. 2010-08-05 Beth Dakin <bdakin@apple.com>
  68021. Reviewed by Kenneth Rohde Christiansen.
  68022. Fix for https://bugs.webkit.org/show_bug.cgi?id=43516 REGRESSION:
  68023. Huge number of memory leaks after enabling MathML
  68024. -and corresponding-
  68025. <rdar://problem/8274123>
  68026. Destroy the old children in
  68027. RenderMathMLOperator::updateFromElement() instead of just removing
  68028. them since just removing them will cause them to leak.
  68029. * mathml/RenderMathMLOperator.cpp:
  68030. (WebCore::RenderMathMLOperator::updateFromElement):
  68031. 2010-08-05 Tony Chang <tony@chromium.org>
  68032. Reviewed by David Hyatt.
  68033. Fix a crash when a hidden iframe with a custom scrollbar finishes loading an image.
  68034. https://bugs.webkit.org/show_bug.cgi?id=42724
  68035. Test: scrollbars/hidden-iframe-scrollbar-crash2.html
  68036. * page/FrameView.cpp:
  68037. (WebCore::FrameView::createScrollbar):
  68038. * rendering/RenderScrollbar.cpp:
  68039. (WebCore::RenderScrollbar::createCustomScrollbar): Pass in Frame
  68040. (WebCore::RenderScrollbar::RenderScrollbar): Pass in Frame
  68041. (WebCore::RenderScrollbar::owningRenderer): Use the frame to get the RenderBox
  68042. (WebCore::RenderScrollbar::getScrollbarPseudoStyle):
  68043. (WebCore::RenderScrollbar::updateScrollbarParts):
  68044. (WebCore::RenderScrollbar::updateScrollbarPart):
  68045. * rendering/RenderScrollbar.h:
  68046. * rendering/RenderScrollbarPart.cpp:
  68047. (WebCore::RenderScrollbarPart::computeScrollbarWidth): null check
  68048. (WebCore::RenderScrollbarPart::computeScrollbarHeight): null check
  68049. 2010-08-05 Yong Li <yoli@rim.com>
  68050. Reviewed by Adam Treat.
  68051. Fix the problem that down-sampling code doesn't work
  68052. for some GIF's. GIF reader can call setSize() multiple times.
  68053. We should clear the scaling maps before adding new entries.
  68054. Also add a fast path to check if the size has changed since last time.
  68055. https://bugs.webkit.org/show_bug.cgi?id=43501
  68056. * platform/image-decoders/ImageDecoder.cpp:
  68057. (WebCore::ImageDecoder::prepareScaleDataIfNecessary):
  68058. * platform/image-decoders/gif/GIFImageDecoder.cpp:
  68059. (WebCore::GIFImageDecoder::setSize):
  68060. 2010-08-05 Ilya Tikhonovsky <loislo@chromium.org>
  68061. Reviewed by Yury Semikhatsky.
  68062. WebInspector: In the current implementation of inspector agents we're calling
  68063. did methods manually. That is error prone and is bad from protocol point of view.
  68064. It would be better to call did methods automatically from the corresponding methods
  68065. of InspectorBackendDispatcher and report the results. As far as our protocol is
  68066. statefull this trick will keep it in the consistent state.
  68067. https://bugs.webkit.org/show_bug.cgi?id=43489
  68068. * inspector/CodeGeneratorInspector.pm:
  68069. * inspector/Inspector.idl:
  68070. * inspector/InspectorApplicationCacheAgent.cpp:
  68071. (WebCore::InspectorApplicationCacheAgent::getApplicationCaches):
  68072. * inspector/InspectorApplicationCacheAgent.h:
  68073. * inspector/InspectorBackend.cpp:
  68074. (WebCore::InspectorBackend::getProfilerLogLines):
  68075. (WebCore::InspectorBackend::setInjectedScriptSource):
  68076. (WebCore::InspectorBackend::dispatchOnInjectedScript):
  68077. (WebCore::InspectorBackend::clearConsoleMessages):
  68078. (WebCore::InspectorBackend::releaseWrapperObjectGroup):
  68079. (WebCore::InspectorBackend::getDatabaseTableNames):
  68080. * inspector/InspectorBackend.h:
  68081. * inspector/InspectorCSSStore.cpp:
  68082. (WebCore::InspectorCSSStore::inspectorStyleSheet):
  68083. * inspector/InspectorCSSStore.h:
  68084. * inspector/InspectorController.cpp:
  68085. (WebCore::InspectorController::InspectorController):
  68086. (WebCore::InspectorController::getCookies):
  68087. (WebCore::InspectorController::getDOMStorageEntries):
  68088. (WebCore::InspectorController::setDOMStorageItem):
  68089. (WebCore::InspectorController::removeDOMStorageItem):
  68090. (WebCore::InspectorController::getProfileHeaders):
  68091. (WebCore::InspectorController::getProfile):
  68092. (WebCore::InspectorController::editScriptSource):
  68093. (WebCore::InspectorController::getScriptSource):
  68094. (WebCore::InspectorController::setBreakpoint):
  68095. (WebCore::InspectorController::getResourceContent):
  68096. * inspector/InspectorController.h:
  68097. (WebCore::InspectorController::inspectorClient):
  68098. * inspector/InspectorDOMAgent.cpp:
  68099. (WebCore::InspectorDOMAgent::getChildNodes):
  68100. (WebCore::InspectorDOMAgent::setAttribute):
  68101. (WebCore::InspectorDOMAgent::removeAttribute):
  68102. (WebCore::InspectorDOMAgent::removeNode):
  68103. (WebCore::InspectorDOMAgent::changeTagName):
  68104. (WebCore::InspectorDOMAgent::getOuterHTML):
  68105. (WebCore::InspectorDOMAgent::setOuterHTML):
  68106. (WebCore::InspectorDOMAgent::setTextNodeValue):
  68107. (WebCore::InspectorDOMAgent::getEventListenersForNode):
  68108. (WebCore::InspectorDOMAgent::getStyles):
  68109. (WebCore::InspectorDOMAgent::getAllStyles):
  68110. (WebCore::InspectorDOMAgent::getStyleSheet):
  68111. (WebCore::InspectorDOMAgent::getRuleRanges):
  68112. (WebCore::InspectorDOMAgent::getInlineStyle):
  68113. (WebCore::InspectorDOMAgent::getComputedStyle):
  68114. (WebCore::InspectorDOMAgent::applyStyleText):
  68115. (WebCore::InspectorDOMAgent::setStyleText):
  68116. (WebCore::InspectorDOMAgent::setStyleProperty):
  68117. (WebCore::InspectorDOMAgent::toggleStyleEnabled):
  68118. (WebCore::InspectorDOMAgent::setRuleSelector):
  68119. (WebCore::InspectorDOMAgent::addRule):
  68120. (WebCore::InspectorDOMAgent::buildObjectForRule):
  68121. (WebCore::InspectorDOMAgent::pushNodeByPathToFrontend):
  68122. * inspector/InspectorDOMAgent.h:
  68123. * inspector/InspectorValues.cpp:
  68124. (WebCore::InspectorValue::asNumber):
  68125. (WebCore::InspectorBasicValue::asNumber):
  68126. * inspector/InspectorValues.h:
  68127. * inspector/front-end/Callback.js:
  68128. (WebInspector.Callback.prototype.processCallback):
  68129. (WebInspector.Callback.prototype.removeCallbackEntry):
  68130. * inspector/front-end/ElementsPanel.js:
  68131. (WebInspector.ElementsPanel.prototype.reset):
  68132. * inspector/front-end/inspector.js:
  68133. (WebInspector.reportProtocolError):
  68134. 2010-08-04 Kenneth Russell <kbr@google.com>
  68135. Reviewed by Dimitri Glazkov.
  68136. Style cleanups in WebGL
  68137. https://bugs.webkit.org/show_bug.cgi?id=38761
  68138. Cleaned up all style violations in WebGL-related files reported by
  68139. check-webkit-style. No logic or other changes. Built WebKit and
  68140. Chromium and ran WebGL layout tests.
  68141. * html/canvas/ArrayBuffer.cpp:
  68142. (WebCore::ArrayBuffer::ArrayBuffer):
  68143. (WebCore::ArrayBuffer::data):
  68144. (WebCore::ArrayBuffer::byteLength):
  68145. (WebCore::ArrayBuffer::~ArrayBuffer):
  68146. (WebCore::ArrayBuffer::tryAllocate):
  68147. * html/canvas/ArrayBufferView.cpp:
  68148. (WebCore::ArrayBufferView::setImpl):
  68149. * html/canvas/ArrayBufferView.h:
  68150. * html/canvas/TypedArrayBase.h:
  68151. * html/canvas/WebGLBuffer.cpp:
  68152. (WebCore::WebGLBuffer::deleteObjectImpl):
  68153. (WebCore::WebGLBuffer::associateBufferData):
  68154. * html/canvas/WebGLBuffer.h:
  68155. (WebCore::WebGLBuffer::~WebGLBuffer):
  68156. (WebCore::WebGLBuffer::elementArrayBuffer):
  68157. (WebCore::WebGLBuffer::getTarget):
  68158. (WebCore::WebGLBuffer::isBuffer):
  68159. * html/canvas/WebGLFramebuffer.cpp:
  68160. (WebCore::WebGLFramebuffer::deleteObjectImpl):
  68161. * html/canvas/WebGLFramebuffer.h:
  68162. (WebCore::WebGLFramebuffer::~WebGLFramebuffer):
  68163. (WebCore::WebGLFramebuffer::isDepthAttached):
  68164. (WebCore::WebGLFramebuffer::isStencilAttached):
  68165. (WebCore::WebGLFramebuffer::isDepthStencilAttached):
  68166. (WebCore::WebGLFramebuffer::isFramebuffer):
  68167. * html/canvas/WebGLGetInfo.cpp:
  68168. * html/canvas/WebGLGetInfo.h:
  68169. * html/canvas/WebGLObject.cpp:
  68170. (WebCore::WebGLObject::deleteObject):
  68171. * html/canvas/WebGLObject.h:
  68172. (WebCore::WebGLObject::object):
  68173. (WebCore::WebGLObject::detachContext):
  68174. (WebCore::WebGLObject::context):
  68175. (WebCore::WebGLObject::isBuffer):
  68176. (WebCore::WebGLObject::isFramebuffer):
  68177. (WebCore::WebGLObject::isProgram):
  68178. (WebCore::WebGLObject::isRenderbuffer):
  68179. (WebCore::WebGLObject::isShader):
  68180. (WebCore::WebGLObject::isTexture):
  68181. * html/canvas/WebGLProgram.cpp:
  68182. (WebCore::WebGLProgram::deleteObjectImpl):
  68183. * html/canvas/WebGLProgram.h:
  68184. (WebCore::WebGLProgram::~WebGLProgram):
  68185. (WebCore::WebGLProgram::isLinkFailureFlagSet):
  68186. (WebCore::WebGLProgram::setLinkFailureFlag):
  68187. (WebCore::WebGLProgram::isProgram):
  68188. * html/canvas/WebGLRenderbuffer.cpp:
  68189. (WebCore::WebGLRenderbuffer::deleteObjectImpl):
  68190. * html/canvas/WebGLRenderbuffer.h:
  68191. (WebCore::WebGLRenderbuffer::~WebGLRenderbuffer):
  68192. (WebCore::WebGLRenderbuffer::setInternalFormat):
  68193. (WebCore::WebGLRenderbuffer::getInternalFormat):
  68194. (WebCore::WebGLRenderbuffer::isInitialized):
  68195. (WebCore::WebGLRenderbuffer::setInitialized):
  68196. (WebCore::WebGLRenderbuffer::isRenderbuffer):
  68197. * html/canvas/WebGLRenderingContext.cpp:
  68198. (WebCore::WebGLRenderingContext::beginPaint):
  68199. (WebCore::WebGLRenderingContext::blendEquation):
  68200. (WebCore::WebGLRenderingContext::getActiveAttrib):
  68201. (WebCore::WebGLRenderingContext::getActiveUniform):
  68202. (WebCore::WebGLRenderingContext::getBufferParameter):
  68203. (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter):
  68204. (WebCore::WebGLRenderingContext::vertexAttribPointer):
  68205. * html/canvas/WebGLRenderingContext.h:
  68206. (WebCore::WebGLRenderingContext::is3d):
  68207. (WebCore::WebGLRenderingContext::isAccelerated):
  68208. (WebCore::WebGLRenderingContext::graphicsContext3D):
  68209. (WebCore::WebGLRenderingContext::cleanupAfterGraphicsCall):
  68210. (WebCore::WebGLRenderingContext::VertexAttribState::VertexAttribState):
  68211. (WebCore::WebGLRenderingContext::VertexAttribState::initValue):
  68212. * html/canvas/WebGLShader.cpp:
  68213. (WebCore::WebGLShader::deleteObjectImpl):
  68214. * html/canvas/WebGLShader.h:
  68215. (WebCore::WebGLShader::~WebGLShader):
  68216. (WebCore::WebGLShader::getType):
  68217. (WebCore::WebGLShader::isShader):
  68218. * html/canvas/WebGLTexture.cpp:
  68219. (WebCore::WebGLTexture::deleteObjectImpl):
  68220. * html/canvas/WebGLTexture.h:
  68221. (WebCore::WebGLTexture::~WebGLTexture):
  68222. (WebCore::WebGLTexture::isCubeMapRWrapModeInitialized):
  68223. (WebCore::WebGLTexture::setCubeMapRWrapModeInitialized):
  68224. (WebCore::WebGLTexture::isTexture):
  68225. (WebCore::WebGLTexture::LevelInfo::LevelInfo):
  68226. (WebCore::WebGLTexture::LevelInfo::setInfo):
  68227. * platform/graphics/GraphicsContext3D.h:
  68228. (WebCore::GraphicsContext3D::):
  68229. (WebCore::GraphicsContext3D::Attributes::Attributes):
  68230. (WebCore::GraphicsContext3D::platformGraphicsContext3D):
  68231. (WebCore::GraphicsContext3D::platformTexture):
  68232. (WebCore::GraphicsContext3D::platformLayer):
  68233. 2010-08-05 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>
  68234. Reviewed by Simon Hausmann.
  68235. Make the viewport meta tag parser support the Android
  68236. target-densitydpi extension.
  68237. http://webkit.org/b/43492
  68238. http://developer.android.com/reference/android/webkit/WebView.html
  68239. Section 'Building web pages to support different screen densities'
  68240. * dom/ViewportArguments.cpp:
  68241. (WebCore::setViewportFeature):
  68242. (WebCore::viewportErrorMessageTemplate):
  68243. * dom/ViewportArguments.h:
  68244. (WebCore::):
  68245. (WebCore::ViewportArguments::ViewportArguments):
  68246. (WebCore::ViewportArguments::hasCustomArgument):
  68247. 2010-08-05 Jian Li <jianli@chromium.org>
  68248. Reviewed by David Levin.
  68249. Unify blob related feature defines to ENABLE(BLOB).
  68250. https://bugs.webkit.org/show_bug.cgi?id=43081
  68251. * Configurations/FeatureDefines.xcconfig:
  68252. * GNUmakefile.am:
  68253. * WebCore.pri:
  68254. * bindings/js/JSEventTarget.cpp:
  68255. (WebCore::toJS):
  68256. * bindings/v8/V8DOMWrapper.cpp:
  68257. (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
  68258. * dom/EventTarget.cpp:
  68259. * dom/EventTarget.h:
  68260. * dom/ExceptionCode.h:
  68261. (WebCore::):
  68262. * dom/ScriptExecutionContext.cpp:
  68263. (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
  68264. * dom/ScriptExecutionContext.h:
  68265. * html/Blob.cpp:
  68266. * html/Blob.h:
  68267. * html/Blob.idl:
  68268. * html/FileError.h:
  68269. * html/FileError.idl:
  68270. * html/FileReader.cpp:
  68271. * html/FileReader.h:
  68272. * html/FileReader.idl:
  68273. * html/FileStream.cpp:
  68274. (WebCore::FileStream::openForRead):
  68275. * html/FileStream.h:
  68276. * html/FileStreamClient.h:
  68277. * html/FileStreamProxy.cpp:
  68278. * html/FileStreamProxy.h:
  68279. * html/FileThread.cpp:
  68280. * html/FileThread.h:
  68281. * page/DOMWindow.idl:
  68282. * platform/BlobItem.cpp:
  68283. (WebCore::getFileSnapshotModificationTime):
  68284. (WebCore::DataBlobItem::slice):
  68285. (WebCore::FileBlobItem::slice):
  68286. * platform/BlobItem.h:
  68287. * platform/network/FormData.cpp:
  68288. (WebCore::FormData::deepCopy):
  68289. (WebCore::FormData::appendFile):
  68290. (WebCore::FormData::appendItem):
  68291. (WebCore::FormData::appendKeyValuePairItems):
  68292. * platform/network/FormData.h:
  68293. (WebCore::operator==):
  68294. * platform/network/mac/FormDataStreamMac.mm:
  68295. (WebCore::closeCurrentStream):
  68296. (WebCore::advanceCurrentStream):
  68297. (WebCore::formCreate):
  68298. (WebCore::formRead):
  68299. (WebCore::setHTTPBody):
  68300. 2010-08-05 Xan Lopez <xlopez@igalia.com>
  68301. Reviewed by Gustavo Noronha.
  68302. When trying to wrap a Node we know is an Element fallback to a
  68303. simple Element wrapper in the worst case, not to Node.
  68304. * bindings/gobject/WebKitDOMBinding.cpp:
  68305. (WebKit::createWrapper):
  68306. 2010-08-05 François Sausset <sausset@gmail.com>
  68307. Reviewed by Kenneth Rohde Christiansen.
  68308. Implement basic values of MathML mathvariant attribute
  68309. https://bugs.webkit.org/show_bug.cgi?id=43481
  68310. Test: mathml/presentation/attributes.xhtml
  68311. * css/mathml.css:
  68312. (math[mathvariant="normal"], mstyle[mathvariant="normal"], mo[mathvariant="normal"], mn[mathvariant="normal"], mi[mathvariant="normal"], mtext[mathvariant="normal"], mspace[mathvariant="normal"], ms[mathvariant="normal"]):
  68313. (math[mathvariant="bold"], mstyle[mathvariant="bold"], mo[mathvariant="bold"], mn[mathvariant="bold"], mi[mathvariant="bold"], mtext[mathvariant="bold"], mspace[mathvariant="bold"], ms[mathvariant="bold"]):
  68314. (math[mathvariant="italic"], mstyle[mathvariant="italic"], mo[mathvariant="italic"], mn[mathvariant="italic"], mi[mathvariant="italic"], mtext[mathvariant="italic"], mspace[mathvariant="italic"], ms[mathvariant="italic"]):
  68315. (math[mathvariant="bold-italic"], mstyle[mathvariant="bold-italic"], mo[mathvariant="bold-italic"], mn[mathvariant="bold-italic"], mi[mathvariant="bold-italic"], mtext[mathvariant="bold-italic"], mspace[mathvariant="bold-italic"], ms[mathvariant="bold-italic"]):
  68316. * mathml/mathattrs.in:
  68317. 2010-08-05 Yury Semikhatsky <yurys@chromium.org>
  68318. Reviewed by Pavel Feldman.
  68319. Web Inspector: inspected page crashes when there is a cyclic reference in Object prototype
  68320. https://bugs.webkit.org/show_bug.cgi?id=43558
  68321. Test: inspector/debugger-cyclic-ref.html
  68322. * bindings/v8/ScriptValue.cpp:
  68323. (WebCore::v8ToInspectorValue):
  68324. 2010-08-05 Satish Sampath <satish@chromium.org>
  68325. Reviewed by Jeremy Orlow.
  68326. Fix rendering of speech button and enable layout tests
  68327. https://bugs.webkit.org/show_bug.cgi?id=43425
  68328. Rewrote the speech button rendering code to match how the spin buttons (for input type=number)
  68329. are implemented as the previous implementation did not work well on many platforms.
  68330. * rendering/RenderTextControlSingleLine.cpp:
  68331. (WebCore::RenderTextControlSingleLine::~RenderTextControlSingleLine):
  68332. (WebCore::RenderTextControlSingleLine::layout):
  68333. (WebCore::RenderTextControlSingleLine::nodeAtPoint):
  68334. (WebCore::RenderTextControlSingleLine::styleDidChange):
  68335. (WebCore::RenderTextControlSingleLine::hasControlClip):
  68336. (WebCore::RenderTextControlSingleLine::adjustControlHeightBasedOnLineHeight):
  68337. (WebCore::RenderTextControlSingleLine::createSubtreeIfNeeded):
  68338. (WebCore::RenderTextControlSingleLine::createInnerTextStyle):
  68339. (WebCore::RenderTextControlSingleLine::createSpeechButtonStyle):
  68340. (WebCore::RenderTextControlSingleLine::clientPaddingRight):
  68341. * rendering/RenderTextControlSingleLine.h:
  68342. * rendering/TextControlInnerElements.cpp:
  68343. (WebCore::InputFieldSpeechButtonElement::InputFieldSpeechButtonElement):
  68344. (WebCore::InputFieldSpeechButtonElement::create):
  68345. * rendering/TextControlInnerElements.h:
  68346. 2010-08-05 Andrey Kosyakov <caseq@chromium.org>
  68347. Reviewed by Pavel Feldman.
  68348. Web Inspector: Separated WebInspector extension API injection logic from other scripts that inspector injects.
  68349. Enabled injection of the API scripts even if inspector is disabled for inspector front-end page.
  68350. https://bugs.webkit.org/show_bug.cgi?id=43344
  68351. * inspector/InspectorController.cpp:
  68352. (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
  68353. (WebCore::InspectorController::setInspectorExtensionAPI):
  68354. * inspector/InspectorController.h:
  68355. * inspector/InspectorFrontendHost.cpp:
  68356. (WebCore::InspectorFrontendHost::setExtensionAPI):
  68357. 2010-08-05 Charles Wei <charles.wei@torchmobile.com.cn>
  68358. Reviewed by George Staikos.
  68359. <noscript> is working the other way around in some cases with xhtmlmp enabled
  68360. https://bugs.webkit.org/show_bug.cgi?id=43469
  68361. Test: fast/xhtmlmp/noscript-basic.xhtml
  68362. * dom/Document.cpp:
  68363. (WebCore::Document::Document):
  68364. 2010-08-05 Yury Semikhatsky <yurys@chromium.org>
  68365. Unreviewed. Fix Win compilation.
  68366. * bindings/js/JSBindingsAllInOne.cpp:
  68367. 2010-08-05 Simon Hausmann <simon.hausmann@nokia.com>
  68368. Reviewed by Tor Arne Vestbø.
  68369. [Qt] Clean up the input method handling
  68370. https://bugs.webkit.org/show_bug.cgi?id=43545
  68371. Changed input method hint interface to be more efficient by setting
  68372. all hints in one shot, like in QWidget.
  68373. * platform/qt/QWebPageClient.h:
  68374. 2010-08-05 Yury Semikhatsky <yurys@chromium.org>
  68375. Reviewed by Pavel Feldman.
  68376. Web Inspector: remove mutator methods from ScriptObject and remove ScriptArray.
  68377. We shouldn't modify JS objects from InspectorController, InspectorValues
  68378. should be used instead.
  68379. https://bugs.webkit.org/show_bug.cgi?id=43546
  68380. * GNUmakefile.am:
  68381. * WebCore.gypi:
  68382. * WebCore.pro:
  68383. * WebCore.vcproj/WebCore.vcproj:
  68384. * WebCore.xcodeproj/project.pbxproj:
  68385. * bindings/js/ScriptArray.cpp: Removed.
  68386. * bindings/js/ScriptArray.h: Removed.
  68387. * bindings/js/ScriptCallStack.h:
  68388. * bindings/js/ScriptObject.cpp:
  68389. * bindings/js/ScriptObject.h:
  68390. * bindings/v8/ScriptArray.cpp: Removed.
  68391. * bindings/v8/ScriptArray.h: Removed.
  68392. * bindings/v8/ScriptCallStack.h:
  68393. * bindings/v8/ScriptObject.cpp:
  68394. * bindings/v8/ScriptObject.h:
  68395. 2010-08-05 Ned Holbrook <nholbrook@apple.com>
  68396. Reviewed by Darin Adler.
  68397. ~5% complex layout performance improvement.
  68398. https://bugs.webkit.org/show_bug.cgi?id=43436
  68399. * platform/graphics/mac/ComplexTextController.h:
  68400. * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
  68401. (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): Use Vector rather than CFMutableData.
  68402. (WebCore::ComplexTextController::ComplexTextRun::createTextRunFromFontDataCoreText): Ditto.
  68403. (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText): Avoid typesetter allocation unless using typesetter options.
  68404. 2010-08-05 Steve Block <steveblock@google.com>
  68405. Reviewed by Jeremy Orlow.
  68406. targetReferenceFromResource() in SVGResources.cpp is missing an ENABLE(FILTERS) guard
  68407. https://bugs.webkit.org/show_bug.cgi?id=43550
  68408. Also updates an existing ENABLE(FILTERS) guard to avoid a compiler
  68409. warning 'case FilterResourceType not handled in switch' when FILTERS
  68410. is not enabled.
  68411. No new tests, build fix only.
  68412. * rendering/SVGResources.cpp:
  68413. (WebCore::targetReferenceFromResource):
  68414. (WebCore::SVGResources::resourceDestroyed):
  68415. 2010-08-05 Victoria Kirst <vrk@google.com>
  68416. Reviewed by David Levin.
  68417. Added logic to use glMapTexSubImage2D to write video layer to GPU
  68418. texture. Also fixes CPU usage problem from previous patch.
  68419. https://bugs.webkit.org/show_bug.cgi?id=43101
  68420. No change in user-visible functionality (since it isn't turned on),
  68421. so no new tests.
  68422. * platform/graphics/chromium/VideoLayerChromium.cpp:
  68423. (WebCore::VideoLayerChromium::VideoLayerChromium):
  68424. (WebCore::VideoLayerChromium::updateTextureContents):
  68425. (WebCore::VideoLayerChromium::createTextureRect):
  68426. (WebCore::VideoLayerChromium::updateTextureRect):
  68427. (WebCore::VideoLayerChromium::updateCompleted):
  68428. * platform/graphics/chromium/VideoLayerChromium.h:
  68429. 2010-08-05 Zoltan Horvath <zoltan@webkit.org>
  68430. Reviewed by Simon Hausmann.
  68431. Allow custom memory allocation control for ClipperData struct
  68432. https://bugs.webkit.org/show_bug.cgi?id=43337
  68433. Inherits the following class from FastAllocBase because it is
  68434. instantiated by 'new':
  68435. class name - instantiated at: WebCore/'location'
  68436. RenderLayerBacking - rendering/RenderSVGResourceClipper.cpp:165
  68437. * rendering/RenderSVGResourceClipper.h:
  68438. 2010-08-05 Zoltan Horvath <zoltan@webkit.org>
  68439. Reviewed by Simon Hausmann.
  68440. Allow custom memory allocation control for DoctypeData class
  68441. https://bugs.webkit.org/show_bug.cgi?id=43343
  68442. Inherits the following class from Noncopyable because it is
  68443. instantiated by 'new' and no need to be copyable:
  68444. class name - instantiated at: WebCore/'location'
  68445. DoctypeData - html/HTMLToken.h:113
  68446. * html/HTMLToken.h:
  68447. 2010-08-05 François Sausset <sausset@gmail.com>
  68448. Reviewed by Darin Adler.
  68449. Small style adjustments for MathML merror element.
  68450. https://bugs.webkit.org/show_bug.cgi?id=43432
  68451. * css/mathml.css:
  68452. (merror):
  68453. 2010-08-05 Yury Semikhatsky <yurys@chromium.org>
  68454. Reviewed by Pavel Feldman.
  68455. Web Inspector: forbid InspectorController to create script objects directly in the frontend
  68456. https://bugs.webkit.org/show_bug.cgi?id=43541
  68457. Cookie and AppCache data are now serialized into InspectorValues instead of
  68458. ScriptObjects. These were last usages of InspectorFrontend::newScript{Object,Array}
  68459. so we can remove them now and use only InspectorValues to pass data to the inspector
  68460. frontend.
  68461. * inspector/Inspector.idl:
  68462. * inspector/InspectorApplicationCacheAgent.cpp:
  68463. (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent):
  68464. (WebCore::InspectorApplicationCacheAgent::getApplicationCaches):
  68465. (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCache):
  68466. (WebCore::InspectorApplicationCacheAgent::buildArrayForApplicationCacheResources):
  68467. (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCacheResource):
  68468. * inspector/InspectorApplicationCacheAgent.h:
  68469. * inspector/InspectorController.cpp:
  68470. (WebCore::InspectorController::connectFrontend):
  68471. (WebCore::InspectorController::getCookies):
  68472. (WebCore::InspectorController::buildArrayForCookies):
  68473. (WebCore::InspectorController::buildObjectForCookie):
  68474. * inspector/InspectorController.h:
  68475. * inspector/InspectorFrontend.cpp:
  68476. (WebCore::InspectorFrontend::setRecordingProfile):
  68477. * inspector/InspectorFrontend.h:
  68478. 2010-08-05 Mario Sanchez Prada <msanchez@igalia.com>
  68479. Reviewed by Xan Lopez.
  68480. [GTK] Extra check needed at AccessibilityObject::visiblePositionRangeForRange
  68481. https://bugs.webkit.org/show_bug.cgi?id=43418
  68482. Ensure the renderer is a RenderText before calling toRenderText()
  68483. Also, simplified code a bit to avoid so many nested if's in that
  68484. part of the code, while keeping the same logic.
  68485. * accessibility/AccessibilityObject.cpp:
  68486. (WebCore::AccessibilityObject::visiblePositionRangeForRange):
  68487. 2010-08-05 Kwang Yul Seo <skyul@company100.net>
  68488. Reviewed by Kent Tamura.
  68489. [BREWMP] Define htonl, htons, ntohl and ntohs
  68490. https://bugs.webkit.org/show_bug.cgi?id=43397
  68491. In BREWMP, AEEStdLib.h provides macros for byte order conversion: HTONL, HTONS, NTOHL and NTOHS.
  68492. Use these macros to define htonl, htons, ntohl and ntohs used by WOFFFileFormat.cpp.
  68493. * platform/graphics/WOFFFileFormat.cpp:
  68494. 2010-08-04 Zoltan Herczeg <zherczeg@webkit.org>
  68495. Reviewed by Nikolas Zimmermann.
  68496. SVGFilterElement & SVGFE*Element don't support dynamic invalidation, when attributes change
  68497. https://bugs.webkit.org/show_bug.cgi?id=42244
  68498. Implementing svgAttributeChanged for SVGFESpotLightElement object.
  68499. Furthermore, invalidateFilter has been moved to SVGFilterElement, and
  68500. it is a static function now.
  68501. Tests: svg/dynamic-updates/SVGFESpotLightElement-dom-limitingConeAngle-attr.html
  68502. svg/dynamic-updates/SVGFESpotLightElement-dom-pointsAtX-attr.html
  68503. svg/dynamic-updates/SVGFESpotLightElement-dom-pointsAtY-attr.html
  68504. svg/dynamic-updates/SVGFESpotLightElement-dom-pointsAtZ-attr.html
  68505. svg/dynamic-updates/SVGFESpotLightElement-dom-specularExponent-attr.html
  68506. svg/dynamic-updates/SVGFESpotLightElement-dom-x-attr.html
  68507. svg/dynamic-updates/SVGFESpotLightElement-dom-y-attr.html
  68508. svg/dynamic-updates/SVGFESpotLightElement-dom-z-attr.html
  68509. svg/dynamic-updates/SVGFESpotLightElement-svgdom-limitingConeAngle-prop.html
  68510. svg/dynamic-updates/SVGFESpotLightElement-svgdom-pointsAtX-prop.html
  68511. svg/dynamic-updates/SVGFESpotLightElement-svgdom-pointsAtY-prop.html
  68512. svg/dynamic-updates/SVGFESpotLightElement-svgdom-pointsAtZ-prop.html
  68513. svg/dynamic-updates/SVGFESpotLightElement-svgdom-specularExponent-prop.html
  68514. svg/dynamic-updates/SVGFESpotLightElement-svgdom-x-prop.html
  68515. svg/dynamic-updates/SVGFESpotLightElement-svgdom-y-prop.html
  68516. svg/dynamic-updates/SVGFESpotLightElement-svgdom-z-prop.html
  68517. * svg/SVGFEDiffuseLightingElement.cpp:
  68518. (WebCore::SVGFEDiffuseLightingElement::svgAttributeChanged):
  68519. * svg/SVGFELightElement.cpp:
  68520. (WebCore::SVGFELightElement::svgAttributeChanged):
  68521. (WebCore::SVGFELightElement::childrenChanged):
  68522. * svg/SVGFELightElement.h:
  68523. * svg/SVGFEOffsetElement.cpp:
  68524. (WebCore::SVGFEOffsetElement::svgAttributeChanged):
  68525. * svg/SVGFESpecularLightingElement.cpp:
  68526. * svg/SVGFilterElement.h:
  68527. (WebCore::SVGFilterElement::invalidateFilter):
  68528. * svg/SVGFilterPrimitiveStandardAttributes.cpp:
  68529. (WebCore::SVGFilterPrimitiveStandardAttributes::svgAttributeChanged):
  68530. (WebCore::SVGFilterPrimitiveStandardAttributes::childrenChanged):
  68531. * svg/SVGFilterPrimitiveStandardAttributes.h:
  68532. 2010-08-05 Yury Semikhatsky <yurys@chromium.org>
  68533. Reviewed by Pavel Feldman.
  68534. Web Inspector: serialize DOM storage items to InspectorValues
  68535. https://bugs.webkit.org/show_bug.cgi?id=43486
  68536. * inspector/Inspector.idl:
  68537. * inspector/InspectorController.cpp:
  68538. (WebCore::InspectorController::populateScriptObjects):
  68539. (WebCore::InspectorController::didUseDOMStorage):
  68540. (WebCore::InspectorController::selectDOMStorage):
  68541. (WebCore::InspectorController::getDOMStorageEntries):
  68542. (WebCore::InspectorController::setDOMStorageItem):
  68543. (WebCore::InspectorController::removeDOMStorageItem):
  68544. * inspector/InspectorDOMStorageResource.cpp:
  68545. (WebCore::InspectorDOMStorageResource::bind):
  68546. * inspector/InspectorDOMStorageResource.h:
  68547. * inspector/InspectorFrontend.cpp:
  68548. * inspector/InspectorFrontend.h:
  68549. 2010-08-04 Eric Seidel <eric@webkit.org>
  68550. Reviewed by Adam Barth.
  68551. Enable HTML5 tree builder
  68552. https://bugs.webkit.org/show_bug.cgi?id=42804
  68553. Months of work into a single line code change.
  68554. Geez. Should have thought of this sooner.
  68555. * html/HTMLTreeBuilder.cpp:
  68556. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  68557. 2010-08-04 Kent Tamura <tkent@chromium.org>
  68558. Reviewed by Darin Adler.
  68559. Spin-button behavior improvement for out-of-range values
  68560. https://bugs.webkit.org/show_bug.cgi?id=43463
  68561. If the current value is smaller than the minimum value, the up
  68562. button should change the value to the minimum value. If the
  68563. current value is larger than the maximum value, the down button
  68564. should change the value to the maximum value.
  68565. Test: fast/forms/input-number-outofrange.html
  68566. * html/HTMLInputElement.cpp:
  68567. (WebCore::HTMLInputElement::stepUpFromRenderer):
  68568. 2010-08-04 Antonio Gomes <tonikitoo@webkit.org>
  68569. Reviewed by Daniel Bates.
  68570. Remove superfluous non-negative checks in HitTestResult:padding{Width|Height}
  68571. https://bugs.webkit.org/show_bug.cgi?id=43534
  68572. As pointed out by Steve Block in https://bugs.webkit.org/show_bug.cgi?id=40197#c54 ,
  68573. the non-negative checks present in both paddingWidth and paddingHeight methods of
  68574. HitTestResults class are superflous, after we changed the rect based hit testing logic
  68575. of invalid padding from IntSize(-1, -1) to IntSize(0, 0). Patch addresses this issue.
  68576. No new tests needed.
  68577. * rendering/HitTestResult.h:
  68578. (WebCore::HitTestResult::paddingWidth):
  68579. (WebCore::HitTestResult::paddingHeight):
  68580. 2010-08-04 Sheriff Bot <webkit.review.bot@gmail.com>
  68581. Unreviewed, rolling out r64674.
  68582. http://trac.webkit.org/changeset/64674
  68583. https://bugs.webkit.org/show_bug.cgi?id=43532
  68584. Doesn't work with HTML5 tree builder (Requested by tonyg-cr on
  68585. #webkit).
  68586. * html/HTMLDocumentParser.cpp:
  68587. (WebCore::HTMLDocumentParser::attemptToEnd):
  68588. (WebCore::HTMLDocumentParser::endIfDelayed):
  68589. * html/HTMLDocumentParser.h:
  68590. * html/HTMLScriptRunner.cpp:
  68591. (WebCore::HTMLScriptRunner::requestScript):
  68592. (WebCore::HTMLScriptRunner::runScript):
  68593. * html/HTMLScriptRunner.h:
  68594. 2010-08-04 Adam Barth <abarth@webkit.org>
  68595. Reviewed by Eric Seidel.
  68596. fast/parser/residual-style-hang.html hangs
  68597. https://bugs.webkit.org/show_bug.cgi?id=42950
  68598. We need to cap the iteration of the adoption agency algorithm to
  68599. prevent this hang. The legacy tree builder does this as well.
  68600. * html/HTMLTreeBuilder.cpp:
  68601. (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
  68602. 2010-08-04 Adam Barth <abarth@webkit.org>
  68603. Reviewed by Eric Seidel.
  68604. Pick up spec change w.r.t. figcaption and summary
  68605. https://bugs.webkit.org/show_bug.cgi?id=43075
  68606. * html/HTMLTreeBuilder.cpp:
  68607. (WebCore::HTMLTreeBuilder::processEndTagForInBody):
  68608. 2010-08-04 Adam Barth <abarth@webkit.org>
  68609. Reviewed by Eric Seidel.
  68610. Pick up spec change w.r.t. replacement character and <frameset>
  68611. https://bugs.webkit.org/show_bug.cgi?id=43073
  68612. Apparently this fixes parsing for some home router configuration pages.
  68613. * html/HTMLTreeBuilder.cpp:
  68614. (WebCore::HTMLTreeBuilder::processCharacterBuffer):
  68615. 2010-08-04 Gavin Barraclough <barraclough@apple.com>
  68616. Reviewed by Sam Weinig.
  68617. Bug 43515 - Fix small design issues with PageAllocation, split out PageReservation.
  68618. (add forwarding headers)
  68619. * ForwardingHeaders/wtf/Bitmap.h: Added.
  68620. * ForwardingHeaders/wtf/PageReservation.h: Added.
  68621. 2010-08-04 Zhenyao Mo <zmo@google.com>
  68622. Reviewed by Adam Barth.
  68623. getAttachedShaders takes wrong parameter type in WebGLRenderingContext.idl
  68624. https://bugs.webkit.org/show_bug.cgi?id=43517
  68625. * html/canvas/WebGLRenderingContext.idl: Fix the wrong parameter type in getAttachedShaders().
  68626. 2010-08-04 Kenneth Russell <kbr@google.com>
  68627. Reviewed by Dimitri Glazkov.
  68628. Rename CanvasObject to WebGLObject
  68629. https://bugs.webkit.org/show_bug.cgi?id=31564
  68630. Renamed CanvasObject to WebGLObject using do-webcore-rename script.
  68631. Because it seems the new convention is to not check in the changes
  68632. made to this script, only checking in its effects. No new tests;
  68633. built and ran WebGL in Safari and Chromium to test.
  68634. * Android.mk:
  68635. * WebCore.gypi:
  68636. * WebCore.pro:
  68637. * WebCore.xcodeproj/project.pbxproj:
  68638. * html/canvas/CanvasObject.cpp: Removed.
  68639. * html/canvas/CanvasObject.h: Removed.
  68640. * html/canvas/CanvasRenderingContext.h:
  68641. * html/canvas/WebGLBuffer.cpp:
  68642. (WebCore::WebGLBuffer::WebGLBuffer):
  68643. * html/canvas/WebGLBuffer.h:
  68644. * html/canvas/WebGLFramebuffer.cpp:
  68645. (WebCore::WebGLFramebuffer::WebGLFramebuffer):
  68646. (WebCore::WebGLFramebuffer::setAttachment):
  68647. (WebCore::WebGLFramebuffer::onAttachedObjectChange):
  68648. (WebCore::WebGLFramebuffer::isUninitialized):
  68649. (WebCore::WebGLFramebuffer::setInitialized):
  68650. * html/canvas/WebGLFramebuffer.h:
  68651. * html/canvas/WebGLObject.cpp: Copied from WebCore/html/canvas/CanvasObject.cpp.
  68652. (WebCore::WebGLObject::WebGLObject):
  68653. (WebCore::WebGLObject::~WebGLObject):
  68654. (WebCore::WebGLObject::setObject):
  68655. (WebCore::WebGLObject::deleteObject):
  68656. * html/canvas/WebGLObject.h: Copied from WebCore/html/canvas/CanvasObject.h.
  68657. * html/canvas/WebGLProgram.cpp:
  68658. (WebCore::WebGLProgram::WebGLProgram):
  68659. * html/canvas/WebGLProgram.h:
  68660. * html/canvas/WebGLRenderbuffer.cpp:
  68661. (WebCore::WebGLRenderbuffer::WebGLRenderbuffer):
  68662. * html/canvas/WebGLRenderbuffer.h:
  68663. * html/canvas/WebGLRenderingContext.cpp:
  68664. (WebCore::objectOrZero):
  68665. (WebCore::WebGLRenderingContext::validateWebGLObject):
  68666. (WebCore::WebGLRenderingContext::removeObject):
  68667. (WebCore::WebGLRenderingContext::addObject):
  68668. (WebCore::WebGLRenderingContext::detachAndRemoveAllObjects):
  68669. (WebCore::WebGLRenderingContext::findTexture):
  68670. (WebCore::WebGLRenderingContext::findRenderbuffer):
  68671. (WebCore::WebGLRenderingContext::findBuffer):
  68672. (WebCore::WebGLRenderingContext::findShader):
  68673. * html/canvas/WebGLRenderingContext.h:
  68674. * html/canvas/WebGLShader.cpp:
  68675. (WebCore::WebGLShader::WebGLShader):
  68676. * html/canvas/WebGLShader.h:
  68677. * html/canvas/WebGLTexture.cpp:
  68678. (WebCore::WebGLTexture::WebGLTexture):
  68679. * html/canvas/WebGLTexture.h:
  68680. * html/canvas/WebGLUniformLocation.h:
  68681. * platform/graphics/mac/GraphicsContext3DMac.mm:
  68682. * platform/graphics/qt/GraphicsContext3DQt.cpp:
  68683. 2010-08-04 Dan Bernstein <mitz@apple.com>
  68684. Build fix.
  68685. * platform/text/mac/HyphenationMac.mm:
  68686. (WebCore::lastHyphenLocation):
  68687. 2010-08-04 Dan Bernstein <mitz@apple.com>
  68688. Release build fix.
  68689. * platform/text/mac/HyphenationMac.mm:
  68690. (WebCore::lastHyphenLocation):
  68691. 2010-08-04 Mark Rowe <mrowe@apple.com>
  68692. Reviewed by Sam Weinig.
  68693. Don't leak FontDescription objects inside MathML.
  68694. * mathml/RenderMathMLOperator.cpp:
  68695. (WebCore::RenderMathMLOperator::updateFromElement): Don't unnecessarily allocate the FontDescription on the heap.
  68696. (WebCore::RenderMathMLOperator::createStackableStyle): Ditto.
  68697. 2010-08-04 Kenneth Russell <kbr@google.com>
  68698. Reviewed by Dimitri Glazkov.
  68699. Add ANGLE dependency for Chromium WebCore build
  68700. https://bugs.webkit.org/show_bug.cgi?id=43508
  68701. No new tests. Built modified version of patch from bug 42405 in
  68702. Chromium to test.
  68703. * WebCore.gyp/WebCore.gyp:
  68704. 2010-08-04 Dan Bernstein <mitz@apple.com>
  68705. Allow the language for hyphenation to be specified
  68706. https://bugs.webkit.org/show_bug.cgi?id=43467
  68707. Test: fast/text/hyphenate-locale.html
  68708. Added a -webkit-hyphenate-locale property whose value can be either auto or a locale identifier
  68709. string. The initial value is auto and the property is inherited. When the value is a locale
  68710. identifier, hyphenation should follow the rules for the specified locale.
  68711. * WebCore.xcodeproj/project.pbxproj: Added AtomicStringKeyedMRUCache.h.
  68712. * css/CSSComputedStyleDeclaration.cpp:
  68713. (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Handle -webkit-hyphenate-locale.
  68714. Updated for the renaming of RenderStyle::hyphenateCharacter() to hyphenationString().
  68715. * css/CSSParser.cpp:
  68716. (WebCore::CSSParser::parseValue): Parse -webkit-hyphenate-locale.
  68717. * css/CSSPropertyNames.in: Added -webkit-hyphenate-locale.
  68718. * css/CSSStyleSelector.cpp:
  68719. (WebCore::CSSStyleSelector::applyProperty): Apply the -webkit-hyphenate-locale property to the
  68720. RenderStyle. Updated for the renaming of RenderStyle::hyphenateCharacter() to hyphenationString().
  68721. * platform/text/AtomicStringKeyedMRUCache.h: Added.
  68722. (WebCore::AtomicStringKeyedMRUCache::get):
  68723. * platform/text/Hyphenation.cpp:
  68724. (WebCore::canHyphenate): Added an implementation that returns false.
  68725. (WebCore::lastHyphenLocation): Now asserts that it is not called, because it is an error to call
  68726. this function if canHyphenate() returned false.
  68727. * platform/text/Hyphenation.h:
  68728. Added canHyphenate(). Returns true if hyphenation is possible for the given locale identifier.
  68729. * platform/text/android/HyphenationAndroid.cpp:
  68730. (WebCore::canHyphenate): Added an implementation that returns true and a FIXME.
  68731. (WebCore::lastHyphenLocation): Added unused localeIdentifier parameter.
  68732. * platform/text/cf/HyphenationCF.cpp:
  68733. (WebCore::AtomicStringKeyedMRUCache<RetainPtr<CFLocaleRef> >::createValueForNullKey): Returns
  68734. the CFLocaleRef for the current search locale.
  68735. (WebCore::AtomicStringKeyedMRUCache<RetainPtr<CFLocaleRef> >::createValueForKey): Returns a
  68736. CFLocaleRef for the locale identifier.
  68737. (WebCore::canHyphenate): Added. Returns true.
  68738. (WebCore::lastHyphenLocation): Added localeIdentifier parameter, used to pass a CFLocaleRef to
  68739. the hyphenation function.
  68740. * platform/text/mac/HyphenationMac.mm:
  68741. (WebCore::AtomicStringKeyedMRUCache<bool>::createValueForNullKey): Returns whether the current
  68742. search locale is english.
  68743. (WebCore::AtomicStringKeyedMRUCache<bool>::createValueForKey): Returns whether the locale identifier
  68744. string identifies locale with the English language.
  68745. (WebCore::canHyphenate): Added. Returns true if the locale language is English.
  68746. (WebCore::lastHyphenLocation): Added localeIdentifier parameter and an assertion that its language
  68747. is English.
  68748. * rendering/RenderBlockLineLayout.cpp:
  68749. (WebCore::tryHyphenating): Added a locale identifier parameter, which is passed down to
  68750. lastHyphenLocation(). Added 1 to the value passed for the beforeIndex parameter to lastHyphenLocation(),
  68751. because the latter only returns values smaller than that index. The Mac implementation could
  68752. return a value equal to beforeIndex, but that is fixed in the WebKitSystemInterface part of this patch.
  68753. (WebCore::RenderBlock::findNextLineBreak): Only set canHyphenate to true if hyphenation is possible
  68754. for the specified hyphenation locale. Pass the hyphenation locale to tryHyphenating().
  68755. * rendering/style/RenderStyle.cpp:
  68756. (WebCore::RenderStyle::diff): Compare hyphenation locales.
  68757. (WebCore::RenderStyle::hyphenString): Updated for the renaming of hyphenateCharacter() to
  68758. hyphenationString().
  68759. * rendering/style/RenderStyle.h:
  68760. (WebCore::InheritedFlags::hyphenationString): Renamed hyphenateCharacter() to this.
  68761. (WebCore::InheritedFlags::hyphenationLocale): Added this accessor.
  68762. (WebCore::InheritedFlags::setHyphenationString): Renamed setHyphenateCharacter() to this.
  68763. (WebCore::InheritedFlags::setHyphenationLocale): Added this accessor.
  68764. (WebCore::InheritedFlags::initialHyphenationString): Renamed initialHyphenateCharacter() to this.
  68765. (WebCore::InheritedFlags::initialHyphenateLocale): Added. Returns the null atom, which represents a
  68766. value of auto.
  68767. * rendering/style/StyleRareInheritedData.cpp:
  68768. (WebCore::StyleRareInheritedData::StyleRareInheritedData): Copy the hyphenation locale. Updated for
  68769. rename.
  68770. (WebCore::StyleRareInheritedData::operator==): Compare the hyphenation locales. Updated for rename.
  68771. * rendering/style/StyleRareInheritedData.h:
  68772. 2010-08-04 Tony Gentilcore <tonyg@chromium.org>
  68773. Reviewed by Eric Seidel.
  68774. Support <script defer> as specified by HTML5
  68775. https://bugs.webkit.org/show_bug.cgi?id=40934
  68776. See: http://dev.w3.org/html5/spec/Overview.html#the-end
  68777. Tests: fast/dom/HTMLScriptElement/defer-double-defer-write.html
  68778. fast/dom/HTMLScriptElement/defer-double-write.html
  68779. fast/dom/HTMLScriptElement/defer-inline-script.html
  68780. fast/dom/HTMLScriptElement/defer-onbeforeload.html
  68781. fast/dom/HTMLScriptElement/defer-script-invalid-url.html
  68782. http/tests/misc/script-defer-after-slow-stylesheet.html
  68783. http/tests/misc/script-defer-write-slow-stylesheet.html
  68784. http/tests/misc/script-defer.html
  68785. * html/HTMLDocumentParser.cpp:
  68786. (WebCore::HTMLDocumentParser::attemptToEnd):
  68787. (WebCore::HTMLDocumentParser::endIfDelayed):
  68788. (WebCore::HTMLDocumentParser::executeScriptsWaitingForParsingAndEnd):
  68789. * html/HTMLDocumentParser.h:
  68790. * html/HTMLScriptRunner.cpp:
  68791. (WebCore::HTMLScriptRunner::executeScriptsWaitingForParsing):
  68792. (WebCore::HTMLScriptRunner::requestScript):
  68793. (WebCore::HTMLScriptRunner::requestParsingBlockingScript):
  68794. (WebCore::HTMLScriptRunner::requestDeferredScript):
  68795. (WebCore::HTMLScriptRunner::runScript):
  68796. * html/HTMLScriptRunner.h:
  68797. (WebCore::HTMLScriptRunner::PendingScript::PendingScript):
  68798. (WebCore::HTMLScriptRunner::PendingScript::operator=):
  68799. 2010-08-04 Kevin Ollivier <kevino@theolliviers.com>
  68800. [wx] Build fix for gcc not importing all symbols from convenience libraries.
  68801. Works on 10.6 only for Mac until the build system is reworked.
  68802. * bindings/scripts/CodeGeneratorCPP.pm: Add conditionals in impl. to header as well.
  68803. * wscript:
  68804. 2010-08-04 Kevin Ollivier <kevino@theolliviers.com>
  68805. [wx] Build fix. Enclose PlatformStrategy methods in USE(PLATFORM_STRATEGIES).
  68806. * platform/LocalizedStrings.cpp:
  68807. 2010-08-04 François Sausset <sausset@gmail.com>
  68808. Reviewed by Kenneth Rohde Christiansen.
  68809. Remove unnecessary calls to setStyle() in MathML code that made RenderLayer crash.
  68810. https://bugs.webkit.org/show_bug.cgi?id=42894
  68811. Test: mathml/presentation/style.xhtml
  68812. * mathml/MathMLInlineContainerElement.cpp:
  68813. (WebCore::MathMLInlineContainerElement::createRenderer):
  68814. * mathml/MathMLMathElement.cpp:
  68815. (WebCore::MathMLMathElement::createRenderer):
  68816. * mathml/MathMLTextElement.cpp:
  68817. (WebCore::MathMLTextElement::createRenderer):
  68818. 2010-08-03 Kenneth Russell <kbr@google.com>
  68819. Reviewed by Nate Chapin.
  68820. Move WebGL-specific code out of GraphicsContext3D so that G3D can be used as a generic accelerated drawing API
  68821. https://bugs.webkit.org/show_bug.cgi?id=43221
  68822. Added a helper function to extract the contents of WebGL objects
  68823. to reduce duplicated code and fix a couple of potential crashes
  68824. introduced in the previous refactoring.
  68825. No new tests; ran existing WebGL tests.
  68826. * html/canvas/WebGLRenderingContext.cpp:
  68827. (WebCore::WebGLRenderingContext::attachShader):
  68828. (WebCore::WebGLRenderingContext::bindAttribLocation):
  68829. (WebCore::WebGLRenderingContext::bindBuffer):
  68830. (WebCore::WebGLRenderingContext::bindFramebuffer):
  68831. (WebCore::WebGLRenderingContext::bindRenderbuffer):
  68832. (WebCore::WebGLRenderingContext::bindTexture):
  68833. (WebCore::WebGLRenderingContext::compileShader):
  68834. (WebCore::WebGLRenderingContext::detachShader):
  68835. (WebCore::WebGLRenderingContext::framebufferRenderbuffer):
  68836. (WebCore::WebGLRenderingContext::framebufferTexture2D):
  68837. (WebCore::WebGLRenderingContext::getActiveAttrib):
  68838. (WebCore::WebGLRenderingContext::getActiveUniform):
  68839. (WebCore::WebGLRenderingContext::getAttachedShaders):
  68840. (WebCore::WebGLRenderingContext::getAttribLocation):
  68841. (WebCore::WebGLRenderingContext::getProgramParameter):
  68842. (WebCore::WebGLRenderingContext::getProgramInfoLog):
  68843. (WebCore::WebGLRenderingContext::getShaderParameter):
  68844. (WebCore::WebGLRenderingContext::getShaderInfoLog):
  68845. (WebCore::WebGLRenderingContext::getShaderSource):
  68846. (WebCore::WebGLRenderingContext::getUniform):
  68847. (WebCore::WebGLRenderingContext::getUniformLocation):
  68848. (WebCore::WebGLRenderingContext::linkProgram):
  68849. (WebCore::WebGLRenderingContext::shaderSource):
  68850. (WebCore::WebGLRenderingContext::useProgram):
  68851. (WebCore::WebGLRenderingContext::validateProgram):
  68852. (WebCore::WebGLRenderingContext::handleNPOTTextures):
  68853. (WebCore::WebGLRenderingContext::restoreStatesAfterVertexAttrib0Simulation):
  68854. 2010-08-04 Mario Sanchez Prada <msanchez@igalia.com>
  68855. Reviewed by Jeremy Orlow.
  68856. [Gtk] Make sure DRT return the right AXTitle for controls
  68857. https://bugs.webkit.org/show_bug.cgi?id=39997
  68858. Fallback to the text under the given element as its name in case
  68859. it's a control element and has no associated label for it.
  68860. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  68861. (webkit_accessible_get_name):
  68862. 2010-08-02 Kenneth Russell <kbr@google.com>
  68863. Reviewed by Dimitri Glazkov.
  68864. Port Chromium's accelerated compositing to Mac OS X
  68865. https://bugs.webkit.org/show_bug.cgi?id=43398
  68866. No new tests. Tested manually with CSS 3D and WebGL tests.
  68867. * platform/graphics/chromium/GraphicsLayerChromium.cpp:
  68868. (WebCore::clearBorderColor):
  68869. (WebCore::clearLayerBackgroundColor):
  68870. - Fixed compilation problems with gcc.
  68871. * platform/graphics/chromium/ImageLayerChromium.cpp:
  68872. (WebCore::ImageLayerChromium::updateTextureContents):
  68873. - Added Core Graphics port.
  68874. * platform/graphics/chromium/LayerChromium.cpp:
  68875. (WebCore::LayerChromium::LayerChromium):
  68876. - Fixed compilation problems with gcc related to initialization
  68877. order of members.
  68878. (WebCore::LayerChromium::updateTextureContents):
  68879. (WebCore::LayerChromium::updateTextureRect):
  68880. - Ported to Core Graphics, adjusting for lower-left coordinate
  68881. system origin.
  68882. * platform/graphics/chromium/LayerRendererChromium.cpp:
  68883. (WebCore::LayerRendererChromium::LayerRendererChromium):
  68884. - Fixed compilation problems with gcc related to initialization
  68885. order of members.
  68886. (WebCore::LayerRendererChromium::setRootLayerCanvasSize):
  68887. - Ported to Core Graphics.
  68888. (WebCore::LayerRendererChromium::drawLayers):
  68889. - Added more debug-only error calls during drawing phase.
  68890. Adjusted scrolling and incremental updating code for Core
  68891. Graphics' lower-left coordinate system origin.
  68892. (WebCore::LayerRendererChromium::initializeSharedGLObjects):
  68893. - Removed color channel swizzling in Core Graphics port. Fixed
  68894. preexisting bug in initialization check of m_rootLayerTextureId.
  68895. * platform/graphics/chromium/LayerRendererChromium.h:
  68896. - Added needed data members for Core Graphics port.
  68897. 2010-08-04 Yury Semikhatsky <yurys@chromium.org>
  68898. Reviewed by Pavel Feldman.
  68899. Web Inspector: use InspectorValue to push dispatch results from the injected script
  68900. https://bugs.webkit.org/show_bug.cgi?id=43483
  68901. * bindings/js/JSInjectedScriptHostCustom.cpp:
  68902. (WebCore::JSInjectedScriptHost::reportDidDispatchOnInjectedScript):
  68903. * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
  68904. (WebCore::V8InjectedScriptHost::reportDidDispatchOnInjectedScriptCallback):
  68905. * inspector/InjectedScript.cpp:
  68906. (WebCore::InjectedScript::dispatch):
  68907. * inspector/InjectedScript.h:
  68908. * inspector/InjectedScriptHost.cpp:
  68909. (WebCore::InjectedScriptHost::reportDidDispatchOnInjectedScript):
  68910. (WebCore::InjectedScriptHost::remoteFrontend):
  68911. * inspector/InjectedScriptHost.h:
  68912. * inspector/Inspector.idl:
  68913. * inspector/InspectorBackend.cpp:
  68914. (WebCore::InspectorBackend::dispatchOnInjectedScript):
  68915. * inspector/InspectorController.cpp:
  68916. (WebCore::InspectorController::didContinue):
  68917. * inspector/InspectorFrontend.cpp:
  68918. * inspector/InspectorFrontend.h:
  68919. 2010-08-04 Abhishek Arya <inferno@chromium.org>
  68920. Unreviewed. Put missing equivalent js bindings check.
  68921. Forgot putting js bindings check in http://trac.webkit.org/changeset/64647. This fixes the qt crash.
  68922. * bindings/js/JSDesktopNotificationsCustom.cpp:
  68923. (WebCore::JSNotificationCenter::requestPermission):
  68924. 2010-08-04 Yury Semikhatsky <yurys@chromium.org>
  68925. Reviewed by Pavel Feldman.
  68926. Web Inspector: serialize database resources to InspectorValues
  68927. https://bugs.webkit.org/show_bug.cgi?id=43482
  68928. * inspector/Inspector.idl:
  68929. * inspector/InspectorBackend.cpp:
  68930. (WebCore::InspectorBackend::getDatabaseTableNames):
  68931. * inspector/InspectorController.cpp:
  68932. (WebCore::InspectorController::populateScriptObjects):
  68933. (WebCore::InspectorController::selectDatabase):
  68934. (WebCore::InspectorController::didOpenDatabase):
  68935. * inspector/InspectorController.h:
  68936. * inspector/InspectorDatabaseResource.cpp:
  68937. (WebCore::InspectorDatabaseResource::create):
  68938. (WebCore::InspectorDatabaseResource::InspectorDatabaseResource):
  68939. (WebCore::InspectorDatabaseResource::bind):
  68940. * inspector/InspectorDatabaseResource.h:
  68941. * inspector/InspectorFrontend.cpp:
  68942. * inspector/InspectorFrontend.h:
  68943. * storage/Database.cpp:
  68944. (WebCore::Database::openDatabase):
  68945. 2010-08-03 Abhishek Arya <inferno@chromium.org>
  68946. Reviewed by Alexey Proskuryakov.
  68947. Null the script execution context when disconnecting frame in notifications.
  68948. Make sure that script execution context is valid in notification requestPermission.
  68949. https://bugs.webkit.org/show_bug.cgi?id=43295
  68950. Tests: fast/notifications/notifications-document-close-crash.html
  68951. * bindings/v8/custom/V8NotificationCenterCustom.cpp:
  68952. (WebCore::V8NotificationCenter::requestPermissionCallback):
  68953. * notifications/NotificationCenter.cpp:
  68954. (WebCore::NotificationCenter::disconnectFrame):
  68955. 2010-08-03 Adam Roben <aroben@apple.com>
  68956. Turn on PLATFORM_STRATEGIES on Windows
  68957. Fixes <http://webkit.org/b/43431>.
  68958. Reviewed by Anders Carlsson.
  68959. * WebCore.vcproj/WebCore.vcproj: Added LocalizedStrings.cpp,
  68960. PlatformStrategies.h, LocalizationStrategy.h, PluginStrategy.h, and
  68961. VisitedLinkStrategy.h. Removed PluginDataWin.cpp
  68962. * platform/LocalizedStrings.cpp: Wrapped Mac-only functions in
  68963. PLATFORM(MAC) guards.
  68964. (WebCore::uploadFileText):
  68965. (WebCore::allFilesText):
  68966. Added these Windows-only functions.
  68967. * plugins/win/PluginDataWin.cpp: Removed.
  68968. 2010-08-04 Yury Semikhatsky <yurys@chromium.org>
  68969. Reviewed by Pavel Feldman.
  68970. Web Inspector: serialize CPU profiles to InspectorValues instead of
  68971. using JS wrappers.
  68972. https://bugs.webkit.org/show_bug.cgi?id=43475
  68973. * Android.jscbindings.mk:
  68974. * CMakeLists.txt:
  68975. * GNUmakefile.am:
  68976. * WebCore.pro:
  68977. * WebCore.vcproj/WebCore.vcproj:
  68978. * WebCore.xcodeproj/project.pbxproj:
  68979. * bindings/js/ScriptProfile.h:
  68980. * bindings/js/ScriptProfiler.cpp:
  68981. (WebCore::ScriptProfiler::stop):
  68982. * bindings/scripts/CodeGeneratorJS.pm:
  68983. * bindings/v8/ScriptProfile.cpp:
  68984. (WebCore::buildInspectorObjectFor):
  68985. (WebCore::ScriptProfile::buildInspectorObjectForHead):
  68986. * bindings/v8/ScriptProfile.h:
  68987. * inspector/Inspector.idl:
  68988. * inspector/InspectorController.cpp:
  68989. (WebCore::InspectorController::addProfile):
  68990. (WebCore::InspectorController::addProfileFinishedMessageToConsole):
  68991. (WebCore::InspectorController::getProfileHeaders):
  68992. (WebCore::InspectorController::getProfile):
  68993. (WebCore::InspectorController::createProfileHeader):
  68994. * inspector/InspectorController.h:
  68995. * inspector/InspectorFrontend.cpp:
  68996. * inspector/InspectorFrontend.h:
  68997. 2010-08-04 Andreas Kling <andreas.kling@nokia.com>
  68998. Reviewed by Simon Hausmann.
  68999. [Qt] Use a QImage for the stroke applier scratch context
  69000. This avoids leaking a server-side resource on some graphics systems.
  69001. * platform/graphics/qt/PathQt.cpp:
  69002. (WebCore::scratchContext):
  69003. 2010-08-03 Ben Murdoch <benm@google.com>
  69004. Reviewed by Darin Adler.
  69005. HTML5 parser may cause onload not to fire
  69006. https://bugs.webkit.org/show_bug.cgi?id=43423
  69007. If a complex page causes the HTML parser to yield,
  69008. then when parsing continues again and eventually
  69009. finishes, we are missing a call to endIfDelayed(). This
  69010. results in onload never being called.
  69011. Not for lack of trying, but it seems almost
  69012. impossible to write a reliable test for this bug,
  69013. due to the highly timing-dependent nature of the
  69014. bug. The link above contains further discussion and
  69015. attempts at writing a test.
  69016. * html/HTMLDocumentParser.cpp:
  69017. (WebCore::HTMLDocumentParser::resumeParsingAfterYield):
  69018. Add a call to endIfDelayed() after pumping the tokenizer
  69019. post the parser yielding to ensure that the parsing step
  69020. is completed properly and the onload event fires.
  69021. 2010-08-04 Dirk Schulze <krit@webkit.org>
  69022. Unreviewed sort of Xcode project file.
  69023. * WebCore.xcodeproj/project.pbxproj:
  69024. 2010-08-03 Darin Adler <darin@apple.com>
  69025. Reviewed by Dan Bernstein.
  69026. System color changes are not applied properly
  69027. https://bugs.webkit.org/show_bug.cgi?id=43468
  69028. * manual-tests/system-color-change.html: Added.
  69029. * rendering/RenderTheme.cpp:
  69030. (WebCore::RenderTheme::platformColorsDidChange): Added a call to
  69031. Page::setNeedsReapplyStyles, so all frames of all pages will recompute
  69032. in case they use system colors. It's rare for these colors to change,
  69033. so OK to do a little extra style computation.
  69034. 2010-08-04 Nikolas Zimmermann <nzimmermann@rim.com>
  69035. Not reviewed. Revert changed license in SVGFEOffsetElement.h, thanks Gabor for noticing.
  69036. * svg/SVGFEOffsetElement.h:
  69037. 2010-08-03 Alexey Proskuryakov <ap@apple.com>
  69038. Reviewed by Sam Weinig.
  69039. https://bugs.webkit.org/show_bug.cgi?id=42939
  69040. WebEditorClient::didBeginEditing is never called in WebKit2
  69041. * page/FocusController.cpp: (WebCore::FocusController::setFocused): Focusing a page without
  69042. a focused frame makes little sense, so WebKit used to focus a frame first when its view
  69043. became first responder. For viewless frames, WebKit cannot know what to focus. The assumption
  69044. here is that in all cases with null m_focusedFrame, it's the main frame that needs to be focused.
  69045. 2010-08-03 Gavin Barraclough <barraclough@apple.com>
  69046. Build fix following r64624.
  69047. * ForwardingHeaders/wtf/BitMap.h: Added.
  69048. 2010-08-03 Kent Tamura <tkent@chromium.org>
  69049. Reviewed by Ojan Vafai.
  69050. <input type=number> UI: Support wheel events
  69051. https://bugs.webkit.org/show_bug.cgi?id=42441
  69052. Test: fast/forms/input-number-wheel.html
  69053. * html/HTMLInputElement.cpp:
  69054. (WebCore::HTMLInputElement::defaultEventHandler):
  69055. Call stepUpFromRenderer() for wheelDeltaY.
  69056. 2010-08-03 Joseph Pecoraro <joepeck@webkit.org>
  69057. Reviewed by David Kilzer.
  69058. Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
  69059. https://bugs.webkit.org/show_bug.cgi?id=40627
  69060. Part 6 - LayoutTest and Cleanup
  69061. Test: http/tests/appcache/origin-quota.html
  69062. * loader/appcache/ApplicationCacheGroup.cpp:
  69063. (WebCore::ApplicationCacheGroup::scheduleReachedOriginQuotaCallback): made synchronous, as asynchronously the cache group was deleted too soon.
  69064. * loader/appcache/ApplicationCacheStorage.cpp:
  69065. (WebCore::ApplicationCacheStorage::storeUpdatedQuotaForOrigin): all storing operations should force the database to be created if needed.
  69066. 2010-08-03 Ryosuke Niwa <rniwa@webkit.org>
  69067. Reviewed by Eric Seidel.
  69068. extractAndNegateTextDecorationStyle and maxRangeOffset in ApplyStyleCommand.cpp should be deleted
  69069. https://bugs.webkit.org/show_bug.cgi?id=43437
  69070. Removed extractAndNegateTextDecorationStyle because we never push down text decorations added by CSS rules
  69071. as discussed on the bug 27809. Also removed pushDownTextDecorationStyleAtBoundaries because it only existed
  69072. to encapsulate the complexity of calling pushDownTextDecorationStyleAroundNode first with forceNegate = false
  69073. (calling pushDownTextDecorationStyleAroundNode) and again with forceNegate = true (calling extractAndNegateTextDecorationStyle)
  69074. after updating layout but neither the layout update nor the second call to pushDownTextDecorationStyleAroundNode
  69075. is needed after the removal of extractAndNegateTextDecorationStyle.
  69076. Also replaced maxRangeOffset by lastOffsetForEditing as FIXME (added by r48235) indicated.
  69077. No new tests added since this is a clean up.
  69078. * editing/ApplyStyleCommand.cpp:
  69079. (WebCore::ApplyStyleCommand::pushDownTextDecorationStyleAroundNode): No longer takes forceNegate as an argument.
  69080. (WebCore::ApplyStyleCommand::removeInlineStyle): Calls pushDownTextDecorationStyleAroundNode directly.
  69081. * editing/ApplyStyleCommand.h:
  69082. 2010-08-03 Ryosuke Niwa <rniwa@webkit.org>
  69083. Reviewed by Ojan Vafai.
  69084. Extract a function that serializes nodes from the range version of createMarkup
  69085. https://bugs.webkit.org/show_bug.cgi?id=43405
  69086. Extracted serializeNodes that serializes nodes from createMarkup.
  69087. No new tests added since this is a clean up.
  69088. * editing/markup.cpp:
  69089. (WebCore::serializeNodes): Added.
  69090. (WebCore::createMarkup): Calls serializeNodes.
  69091. 2010-08-03 Brian Weinstein <bweinstein@apple.com>
  69092. Fix the build by adding the needed MathML source files to WebCore's vcproj.
  69093. Also, Visual Studio did some drive-by resorting of the vcproj, the added
  69094. MathML files are the only important change.
  69095. * WebCore.vcproj/WebCore.vcproj:
  69096. 2010-08-03 Joseph Pecoraro <joepeck@webkit.org>
  69097. Reviewed by Nate Chapin.
  69098. Web Inspector: Missing ApplicationCache InspectorBackend Stub
  69099. https://bugs.webkit.org/show_bug.cgi?id=43265
  69100. Registered "getApplicationCaches".
  69101. * inspector/front-end/InspectorBackendStub.js:
  69102. (WebInspector.InspectorBackendStub):
  69103. 2010-08-03 Brian Weinstein <bweinstein@apple.com>
  69104. Fix the Windows build by adding WebCore/mathml to the list of paths to look for header
  69105. files.
  69106. * WebCore.vcproj/WebCoreCommon.vsprops:
  69107. 2010-08-03 Mark Rowe <mrowe@apple.com>
  69108. Fix the i386 build with a static_cast hammer.
  69109. * mathml/RenderMathMLFraction.cpp:
  69110. (WebCore::RenderMathMLFraction::layout):
  69111. 2010-08-03 Beth Dakin <bdakin@apple.com>
  69112. Speculative build fix for Leopard.
  69113. * mathml/RenderMathMLOperator.cpp:
  69114. * mathml/RenderMathMLRoot.cpp:
  69115. (WebCore::RenderMathMLRoot::paint):
  69116. (WebCore::RenderMathMLRoot::layout):
  69117. * mathml/RenderMathMLSquareRoot.cpp:
  69118. (WebCore::RenderMathMLSquareRoot::paint):
  69119. * mathml/RenderMathMLSubSup.cpp:
  69120. 2010-08-03 Beth Dakin <bdakin@apple.com>
  69121. Speculative build fix.
  69122. * css/mathml.css:
  69123. (mi):
  69124. (math[mathsize="small"], mstyle[mathsize="small"], mo[mathsize="small"], mn[mathsize="small"], mi[mathsize="small"], mtext[mathsize="small"], mspace[mathsize="small"], ms[mathsize="small"]):
  69125. (math[mathsize="normal"], mstyle[mathsize="normal"], mo[mathsize="normal"], mn[mathsize="normal"], mi[mathsize="normal"], mtext[mathsize="normal"], mspace[mathsize="normal"], ms[mathsize="normal"]):
  69126. (math[mathsize="big"], mstyle[mathsize="big"], mo[mathsize="big"], mn[mathsize="big"], mi[mathsize="big"], mtext[mathsize="big"], mspace[mathsize="big"], ms[mathsize="big"]):
  69127. 2010-08-03 Geoffrey Garen <ggaren@apple.com>
  69128. Reviewed by Mark Rowe.
  69129. https://bugs.webkit.org/show_bug.cgi?id=43444
  69130. PLATFORM(CF) is false on Windows in JavaScriptCore
  69131. Moved some PLATFORM(WIN) #defines down into JavaScriptCore.
  69132. * config.h: Moved WTF_PLATFORM_CF 1 and WTF_USE_PTHREADS 0 to wtf/Platform.h.
  69133. Removed #undef WTF_USE_WININET because wtf/Platform.h no longer #defines it.
  69134. 2010-08-03 Alex Milowski <alex@milowski.com>
  69135. Reviewed by Beth Dakin.
  69136. Changed the ENABLE_MATHML value to enable MathML by default.
  69137. * Configurations/FeatureDefines.xcconfig:
  69138. 2010-07-30 Stephen White <senorblanco@chromium.org>
  69139. Reviewed by Ojan Vafai.
  69140. Move PlatformContextSkia and NativeImageSkia into the WebCore namespace.
  69141. https://bugs.webkit.org/show_bug.cgi?id=43272
  69142. One wrinkle is that PlatformContext and NativeImagePtr are
  69143. typedef'ed outside outside the WebCore namespace block, so the
  69144. PlatformContextSkia and NativeImageSkia have to be forward-declared
  69145. explicitly within that namespace. Another solution might be to move
  69146. those declarations into the WebCore namespace block below, but that
  69147. would affect platforms other than Skia, so I leave it to the reviewer
  69148. to decide.
  69149. Test: if it compiles, you're happy.
  69150. * platform/graphics/GraphicsContext.h:
  69151. * platform/graphics/Image.h:
  69152. * platform/graphics/ImageSource.h:
  69153. * platform/graphics/skia/NativeImageSkia.cpp:
  69154. (WebCore::NativeImageSkia::hasResizedBitmap):
  69155. (WebCore::NativeImageSkia::shouldCacheResampling):
  69156. * platform/graphics/skia/NativeImageSkia.h:
  69157. * platform/graphics/skia/PlatformContextSkia.cpp:
  69158. (WebCore::PlatformContextSkia::State::State):
  69159. (WebCore::PlatformContextSkia::beginLayerClippedToImage):
  69160. (WebCore::PlatformContextSkia::drawRect):
  69161. (WebCore::PlatformContextSkia::setupPaintForStroking):
  69162. (WebCore::PlatformContextSkia::getStrokeStyle):
  69163. (WebCore::PlatformContextSkia::setStrokeStyle):
  69164. (WebCore::PlatformContextSkia::setTextDrawingMode):
  69165. (WebCore::PlatformContextSkia::interpolationQuality):
  69166. (WebCore::PlatformContextSkia::setInterpolationQuality):
  69167. (WebCore::PlatformContextSkia::getImageResamplingHint):
  69168. (WebCore::PlatformContextSkia::setImageResamplingHint):
  69169. (WebCore::PlatformContextSkia::clearImageResamplingHint):
  69170. (WebCore::PlatformContextSkia::applyClipFromImage):
  69171. (WebCore::PlatformContextSkia::setGLES2Context):
  69172. (WebCore::PlatformContextSkia::prepareForSoftwareDraw):
  69173. (WebCore::PlatformContextSkia::prepareForHardwareDraw):
  69174. (WebCore::PlatformContextSkia::syncSoftwareCanvas):
  69175. (WebCore::PlatformContextSkia::uploadSoftwareToHardware):
  69176. * platform/graphics/skia/PlatformContextSkia.h:
  69177. (WebCore::PlatformContextSkia::gpuCanvas):
  69178. * platform/graphics/skia/SkiaFontWin.cpp:
  69179. (WebCore::windowsCanHandleDrawTextShadow):
  69180. (WebCore::paintSkiaText):
  69181. * platform/graphics/skia/SkiaFontWin.h:
  69182. 2010-08-03 Adam Roben <aroben@apple.com>
  69183. Rename LocalizedStringsMac.mm to LocalizedStrings.cpp
  69184. LocalizedStringsMac.mm should be usable by other ports
  69185. https://bugs.webkit.org/show_bug.cgi?id=43441
  69186. Reviewed by Anders Carlsson.
  69187. * WebCore.xcodeproj/project.pbxproj: Updated the file's name and path.
  69188. * platform/LocalizedStrings.cpp: Renamed from
  69189. WebCore/platform/mac/LocalizedStringsMac.mm. Changed #imports to
  69190. #includes.
  69191. 2010-08-03 James Robinson <jamesr@chromium.org>
  69192. Reviewed by Darin Fisher.
  69193. Move WebGL-specific code out of GraphicsContext3D so that G3D can be used as a generic accelerated drawing API
  69194. https://bugs.webkit.org/show_bug.cgi?id=43221
  69195. Changes the GraphicsContext3D API to use Platform3DObjects instead of WebGLFoo* types like WebGLTexture.
  69196. WebGLRenderingContext still uses WebGLFoo types and converts to Platform3DObjects internally. Other
  69197. consumers of the GraphicsContext3D can use the Platform3DObject APIs directly without any ties to WebGL.
  69198. The majority of this change is purely mechanical. The less obvious changes are:
  69199. - move all null checking on WebGLFoo types to WebGLRenderingContext, instead of mixing them
  69200. between WebGLRenderingContext and the various port-specific implementations of GraphicsContext3D
  69201. - add a GraphicsContext3D getter to CanvasRenderingContext. This is needed for the readback
  69202. path on Chromium/mac. It may be possible to remove this, but I would prefer to do that
  69203. in a follow-up patch to minimize churn.
  69204. - move some texture cube map logic that existed only in the Chromium port of GC3D to
  69205. WebGLRenderingContext behind #if PLATFORM(CHROMIUM). I think this logic should either
  69206. exist for all ports or exist for none, but again I would rather change the behavior
  69207. in a different patch from this one.
  69208. * html/canvas/CanvasRenderingContext.h:
  69209. (WebCore::CanvasRenderingContext::graphicsContext3D):
  69210. * html/canvas/WebGLProgram.cpp:
  69211. (WebCore::WebGLProgram::cacheActiveAttribLocations):
  69212. * html/canvas/WebGLRenderingContext.cpp:
  69213. (WebCore::WebGLRenderingContext::attachShader):
  69214. (WebCore::WebGLRenderingContext::bindAttribLocation):
  69215. (WebCore::WebGLRenderingContext::bindBuffer):
  69216. (WebCore::WebGLRenderingContext::bindFramebuffer):
  69217. (WebCore::WebGLRenderingContext::bindRenderbuffer):
  69218. (WebCore::WebGLRenderingContext::bindTexture):
  69219. (WebCore::WebGLRenderingContext::compileShader):
  69220. (WebCore::WebGLRenderingContext::detachShader):
  69221. (WebCore::WebGLRenderingContext::framebufferRenderbuffer):
  69222. (WebCore::WebGLRenderingContext::framebufferTexture2D):
  69223. (WebCore::WebGLRenderingContext::getActiveAttrib):
  69224. (WebCore::WebGLRenderingContext::getActiveUniform):
  69225. (WebCore::WebGLRenderingContext::getAttachedShaders):
  69226. (WebCore::WebGLRenderingContext::getAttribLocation):
  69227. (WebCore::WebGLRenderingContext::getProgramParameter):
  69228. (WebCore::WebGLRenderingContext::getProgramInfoLog):
  69229. (WebCore::WebGLRenderingContext::getShaderParameter):
  69230. (WebCore::WebGLRenderingContext::getShaderInfoLog):
  69231. (WebCore::WebGLRenderingContext::getShaderSource):
  69232. (WebCore::WebGLRenderingContext::getUniform):
  69233. (WebCore::WebGLRenderingContext::getUniformLocation):
  69234. (WebCore::WebGLRenderingContext::isBuffer):
  69235. (WebCore::WebGLRenderingContext::isFramebuffer):
  69236. (WebCore::WebGLRenderingContext::isProgram):
  69237. (WebCore::WebGLRenderingContext::isRenderbuffer):
  69238. (WebCore::WebGLRenderingContext::isShader):
  69239. (WebCore::WebGLRenderingContext::isTexture):
  69240. (WebCore::WebGLRenderingContext::linkProgram):
  69241. (WebCore::WebGLRenderingContext::shaderSource):
  69242. (WebCore::WebGLRenderingContext::useProgram):
  69243. (WebCore::WebGLRenderingContext::validateProgram):
  69244. (WebCore::WebGLRenderingContext::handleNPOTTextures):
  69245. (WebCore::WebGLRenderingContext::createFallbackBlackTextures1x1):
  69246. (WebCore::WebGLRenderingContext::initVertexAttrib0):
  69247. (WebCore::WebGLRenderingContext::simulateVertexAttrib0):
  69248. (WebCore::WebGLRenderingContext::restoreStatesAfterVertexAttrib0Simulation):
  69249. * html/canvas/WebGLRenderingContext.h:
  69250. (WebCore::WebGLRenderingContext::graphicsContext3D):
  69251. * platform/graphics/GraphicsContext3D.h:
  69252. * platform/graphics/mac/GraphicsContext3DMac.mm:
  69253. (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas):
  69254. (WebCore::GraphicsContext3D::beginPaint):
  69255. (WebCore::GraphicsContext3D::attachShader):
  69256. (WebCore::GraphicsContext3D::bindAttribLocation):
  69257. (WebCore::GraphicsContext3D::bindBuffer):
  69258. (WebCore::GraphicsContext3D::bindFramebuffer):
  69259. (WebCore::GraphicsContext3D::bindRenderbuffer):
  69260. (WebCore::GraphicsContext3D::bindTexture):
  69261. (WebCore::GraphicsContext3D::compileShader):
  69262. (WebCore::GraphicsContext3D::detachShader):
  69263. (WebCore::GraphicsContext3D::framebufferRenderbuffer):
  69264. (WebCore::GraphicsContext3D::framebufferTexture2D):
  69265. (WebCore::GraphicsContext3D::getActiveAttrib):
  69266. (WebCore::GraphicsContext3D::getActiveUniform):
  69267. (WebCore::GraphicsContext3D::getAttachedShaders):
  69268. (WebCore::GraphicsContext3D::getAttribLocation):
  69269. (WebCore::GraphicsContext3D::isBuffer):
  69270. (WebCore::GraphicsContext3D::isFramebuffer):
  69271. (WebCore::GraphicsContext3D::isProgram):
  69272. (WebCore::GraphicsContext3D::isRenderbuffer):
  69273. (WebCore::GraphicsContext3D::isShader):
  69274. (WebCore::GraphicsContext3D::isTexture):
  69275. (WebCore::GraphicsContext3D::linkProgram):
  69276. (WebCore::GraphicsContext3D::shaderSource):
  69277. (WebCore::GraphicsContext3D::useProgram):
  69278. (WebCore::GraphicsContext3D::validateProgram):
  69279. (WebCore::GraphicsContext3D::getProgramiv):
  69280. (WebCore::GraphicsContext3D::getProgramInfoLog):
  69281. (WebCore::GraphicsContext3D::getShaderiv):
  69282. (WebCore::GraphicsContext3D::getShaderInfoLog):
  69283. (WebCore::GraphicsContext3D::getShaderSource):
  69284. (WebCore::GraphicsContext3D::getUniformfv):
  69285. (WebCore::GraphicsContext3D::getUniformiv):
  69286. (WebCore::GraphicsContext3D::getUniformLocation):
  69287. * platform/graphics/qt/GraphicsContext3DQt.cpp:
  69288. (WebCore::GraphicsContext3D::beginPaint):
  69289. (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas):
  69290. (WebCore::GraphicsContext3D::attachShader):
  69291. (WebCore::GraphicsContext3D::bindAttribLocation):
  69292. (WebCore::GraphicsContext3D::bindBuffer):
  69293. (WebCore::GraphicsContext3D::bindFramebuffer):
  69294. (WebCore::GraphicsContext3D::bindRenderbuffer):
  69295. (WebCore::GraphicsContext3D::bindTexture):
  69296. (WebCore::GraphicsContext3D::compileShader):
  69297. (WebCore::GraphicsContext3D::detachShader):
  69298. (WebCore::GraphicsContext3D::framebufferRenderbuffer):
  69299. (WebCore::GraphicsContext3D::framebufferTexture2D):
  69300. (WebCore::GraphicsContext3D::getActiveAttrib):
  69301. (WebCore::GraphicsContext3D::getActiveUniform):
  69302. (WebCore::GraphicsContext3D::getAttribLocation):
  69303. (WebCore::GraphicsContext3D::isBuffer):
  69304. (WebCore::GraphicsContext3D::isFramebuffer):
  69305. (WebCore::GraphicsContext3D::isProgram):
  69306. (WebCore::GraphicsContext3D::isRenderbuffer):
  69307. (WebCore::GraphicsContext3D::isShader):
  69308. (WebCore::GraphicsContext3D::isTexture):
  69309. (WebCore::GraphicsContext3D::linkProgram):
  69310. (WebCore::GraphicsContext3D::shaderSource):
  69311. (WebCore::GraphicsContext3D::useProgram):
  69312. (WebCore::GraphicsContext3D::validateProgram):
  69313. (WebCore::GraphicsContext3D::getProgramiv):
  69314. (WebCore::GraphicsContext3D::getProgramInfoLog):
  69315. (WebCore::GraphicsContext3D::getShaderiv):
  69316. (WebCore::GraphicsContext3D::getShaderInfoLog):
  69317. (WebCore::GraphicsContext3D::getShaderSource):
  69318. (WebCore::GraphicsContext3D::getUniformfv):
  69319. (WebCore::GraphicsContext3D::getUniformiv):
  69320. (WebCore::GraphicsContext3D::getUniformLocation):
  69321. 2010-08-03 Xan Lopez <xlopez@igalia.com>
  69322. Reviewed by Gustavo Noronha.
  69323. [GTK] Fix DOM event dispatch
  69324. https://bugs.webkit.org/show_bug.cgi?id=40847
  69325. Bind UI and Mouse events and add ad-hoc kit method for WebCore
  69326. Events.
  69327. * GNUmakefile.am:
  69328. * bindings/gobject/WebKitDOMBinding.cpp:
  69329. (WebKit::kit):
  69330. * bindings/gobject/WebKitDOMBinding.h:
  69331. * bindings/gobject/WebKitDOMEventTarget.cpp:
  69332. (WebKit::core):
  69333. * bindings/gobject/WebKitDOMEventTargetPrivate.h: Added.
  69334. * bindings/scripts/CodeGeneratorGObject.pm:
  69335. 2010-08-03 Nikolas Zimmermann <nzimmermann@rim.com>
  69336. Reviewed by Eric Seidel.
  69337. Cleanup all of svg/ code
  69338. https://bugs.webkit.org/show_bug.cgi?id=43311
  69339. Unify the license header in all files in svg/, to use the same template as most WebCore files use.
  69340. Unified email adress style, etc. all generated with a perl script attached to bug 43311.
  69341. * svg/...: Updated header template in all files, in the svg/ subdirectory.
  69342. 2010-08-03 Andrei Popescu <andreip@google.com>
  69343. Reviewed by Jeremy Orlow.
  69344. [IndexedDB] IDBObjectStoreRequest should be called IDBObjectStore
  69345. https://bugs.webkit.org/show_bug.cgi?id=43420
  69346. Renaming IDBObjectStoreRequest to IDBObjectStore.
  69347. No new tests needed, just refactoring.
  69348. * Android.derived.jscbindings.mk:
  69349. * Android.derived.v8bindings.mk:
  69350. * Android.mk:
  69351. * CMakeLists.txt:
  69352. * DerivedSources.cpp:
  69353. * DerivedSources.make:
  69354. * GNUmakefile.am:
  69355. * WebCore.gypi:
  69356. * WebCore.pri:
  69357. * WebCore.pro:
  69358. * WebCore.vcproj/WebCore.vcproj:
  69359. * WebCore.xcodeproj/project.pbxproj:
  69360. * bindings/js/JSIDBAnyCustom.cpp:
  69361. (WebCore::toJS):
  69362. * bindings/v8/custom/V8IDBAnyCustom.cpp:
  69363. (WebCore::toV8):
  69364. * storage/IDBAny.cpp:
  69365. (WebCore::IDBAny::idbObjectStore):
  69366. (WebCore::IDBAny::set):
  69367. * storage/IDBAny.h:
  69368. (WebCore::IDBAny::):
  69369. * storage/IDBCallbacks.h:
  69370. * storage/IDBDatabase.cpp:
  69371. (WebCore::IDBDatabase::objectStore):
  69372. * storage/IDBDatabase.h:
  69373. * storage/IDBDatabaseBackendImpl.cpp:
  69374. (WebCore::IDBDatabaseBackendImpl::createObjectStore):
  69375. (WebCore::IDBDatabaseBackendImpl::objectStore):
  69376. * storage/IDBDatabaseBackendImpl.h:
  69377. * storage/IDBDatabaseBackendInterface.h:
  69378. * storage/IDBObjectStore.cpp: Added.
  69379. (WebCore::IDBObjectStore::IDBObjectStore):
  69380. (WebCore::IDBObjectStore::name):
  69381. (WebCore::IDBObjectStore::keyPath):
  69382. (WebCore::IDBObjectStore::indexNames):
  69383. (WebCore::IDBObjectStore::get):
  69384. (WebCore::IDBObjectStore::add):
  69385. (WebCore::IDBObjectStore::put):
  69386. (WebCore::IDBObjectStore::remove):
  69387. (WebCore::IDBObjectStore::createIndex):
  69388. (WebCore::IDBObjectStore::index):
  69389. (WebCore::IDBObjectStore::removeIndex):
  69390. * storage/IDBObjectStore.h:
  69391. (WebCore::IDBObjectStore::create):
  69392. (WebCore::IDBObjectStore::~IDBObjectStore):
  69393. * storage/IDBObjectStore.idl: Added.
  69394. * storage/IDBObjectStoreBackendImpl.cpp: Added.
  69395. (WebCore::IDBObjectStoreBackendImpl::~IDBObjectStoreBackendImpl):
  69396. (WebCore::IDBObjectStoreBackendImpl::IDBObjectStoreBackendImpl):
  69397. (WebCore::IDBObjectStoreBackendImpl::indexNames):
  69398. (WebCore::IDBObjectStoreBackendImpl::get):
  69399. (WebCore::IDBObjectStoreBackendImpl::put):
  69400. (WebCore::IDBObjectStoreBackendImpl::remove):
  69401. (WebCore::IDBObjectStoreBackendImpl::createIndex):
  69402. (WebCore::IDBObjectStoreBackendImpl::index):
  69403. (WebCore::IDBObjectStoreBackendImpl::removeIndex):
  69404. * storage/IDBObjectStoreBackendImpl.h: Added.
  69405. (WebCore::IDBObjectStoreBackendImpl::create):
  69406. (WebCore::IDBObjectStoreBackendImpl::name):
  69407. (WebCore::IDBObjectStoreBackendImpl::keyPath):
  69408. * storage/IDBObjectStoreBackendInterface.h: Added.
  69409. (WebCore::IDBObjectStoreBackendInterface::~IDBObjectStoreBackendInterface):
  69410. * storage/IDBObjectStoreImpl.cpp: Removed.
  69411. * storage/IDBObjectStoreImpl.h: Removed.
  69412. * storage/IDBObjectStoreRequest.cpp: Removed.
  69413. * storage/IDBObjectStoreRequest.h: Removed.
  69414. * storage/IDBObjectStoreRequest.idl: Removed.
  69415. * storage/IDBRequest.cpp:
  69416. (WebCore::IDBRequest::onSuccess):
  69417. * storage/IDBRequest.h:
  69418. 2010-08-03 Martin Robinson <mrobinson@igalia.com>
  69419. Reviewed by Ojan Vafai.
  69420. [GTK] Incorrect keyIdentifier for print screen key events
  69421. https://bugs.webkit.org/show_bug.cgi?id=43422
  69422. Produce the correct keyIdentifier for GDK_Print (print screen).
  69423. * platform/gtk/KeyEventGtk.cpp:
  69424. (WebCore::keyIdentifierForGdkKeyCode):
  69425. 2010-08-03 Anton Muhin <antonm@chromium.org>
  69426. Reviewed by David Levin.
  69427. [v8] Get current memory usage and make it available on stack before crashing due to out of memory
  69428. https://bugs.webkit.org/show_bug.cgi?id=43426
  69429. That should allow us to diagnose the cases when the process just ran out of memory
  69430. and hence V8 failed to allocate more OS pages.
  69431. * bindings/v8/V8DOMWindowShell.cpp:
  69432. (WebCore::reportFatalErrorInV8):
  69433. 2010-08-03 Leandro Pereira <leandro@profusion.mobi>
  69434. Reviewed by Kenneth Rohde Christiansen.
  69435. [EFL] Implement HTML5 slider theme (using the scrollbar theme as base).
  69436. https://bugs.webkit.org/show_bug.cgi?id=43430
  69437. EFL port does not yet support automated tests.
  69438. * platform/efl/RenderThemeEfl.cpp:
  69439. (WebCore::RenderThemeEfl::paintThemePart):
  69440. (WebCore::RenderThemeEfl::edjeGroupFromFormType): Add Edje groups
  69441. for both vertical and horizontal sliders.
  69442. (WebCore::supportsFocus): Add sliders as focusable elements.
  69443. (WebCore::RenderThemeEfl::paintSliderTrack): Implement.
  69444. (WebCore::RenderThemeEfl::adjustSliderTrackStyle): Implement.
  69445. (WebCore::RenderThemeEfl::adjustSliderThumbStyle): Use
  69446. adjustSliderTrackStyle() implementation.
  69447. (WebCore::RenderThemeEfl::paintSliderThumb): Use paintSliderTrack()
  69448. implementation().
  69449. * platform/efl/RenderThemeEfl.h: Add SliderVertical and
  69450. * SliderHorizontal.
  69451. (WebCore::): Added prototypes for adjustSlider*/paintSlider*.
  69452. 2010-08-03 Alexander Pavlov <apavlov@chromium.org>
  69453. Reviewed by Joseph Pecoraro.
  69454. Web Inspector: incorrect absolute protocol-less URLs in tooltips of links in the ElementsTreeOutline
  69455. https://bugs.webkit.org/show_bug.cgi?id=43246
  69456. * inspector/front-end/inspector.js:
  69457. (WebInspector.completeURL):
  69458. 2010-08-03 Adam Roben <aroben@apple.com>
  69459. Compile out two Mac-only localized strings on non-Mac platforms
  69460. Fixes <http://webkit.org/b/43433> copyImageUnknownFileLabel and
  69461. AXARIAContentGroupText should only be compiled on Mac
  69462. Reviewed by Anders Carlsson.
  69463. * platform/LocalizationStrategy.h:
  69464. * platform/LocalizedStrings.h:
  69465. Wrapped copyImageUnknownFileLabel and AXARIAContentGroupText in
  69466. PLATFORM(MAC).
  69467. 2010-08-03 Kevin Ollivier <kevino@theolliviers.com>
  69468. [wx] Build fix, don't build some DOM bindings we don't use.
  69469. * wscript:
  69470. 2010-08-03 Martin Robinson <mrobinson@igalia.com>
  69471. Reviewed by Gustavo Noronha Silva.
  69472. [GTK] Remove a memory leak from CusorGtk.cpp
  69473. https://bugs.webkit.org/show_bug.cgi?id=43424
  69474. * platform/gtk/CursorGtk.cpp:
  69475. (WebCore::createNamedCursor):
  69476. (WebCore::createCustomCursor):
  69477. (WebCore::Cursor::ensurePlatformCursor):
  69478. * platform/gtk/KeyEventGtk.cpp:
  69479. (WebCore::keyIdentifierForGdkKeyCode):
  69480. 2010-08-03 Pavel Feldman <pfeldman@chromium.org>
  69481. Not reviewed: speculative chromium tests fix.
  69482. * inspector/front-end/ExtensionServer.js:
  69483. * inspector/front-end/inspector.js:
  69484. (WebInspector.loaded):
  69485. 2010-08-03 Csaba Osztrogonác <ossy@webkit.org>
  69486. Reviewed by Antonio Gomes.
  69487. Fix warning in WebCore/rendering/RenderBoxModelObject.cpp
  69488. https://bugs.webkit.org/show_bug.cgi?id=43412
  69489. * rendering/RenderBoxModelObject.cpp:
  69490. (WebCore::RenderBoxModelObject::clipBorderSidePolygon): Remove useless assignment.
  69491. 2010-08-03 Xan Lopez <xlopez@igalia.com>
  69492. Reviewed by Gustavo Noronha.
  69493. Make string parameters be 'const char*' instead of just 'char*'.
  69494. * bindings/scripts/CodeGeneratorGObject.pm:
  69495. 2010-08-03 Xan Lopez <xlopez@igalia.com>
  69496. Reviewed by Gustavo Noronha.
  69497. Get rid of extra spaces in the type strings.
  69498. * bindings/scripts/CodeGeneratorGObject.pm:
  69499. 2010-08-03 Csaba Osztrogonác <ossy@webkit.org>
  69500. Reviewed by Adam Roben.
  69501. Fix warning in WebCore/plugins/win/PluginMessageThrottlerWin.cpp
  69502. https://bugs.webkit.org/show_bug.cgi?id=43413
  69503. * plugins/win/PluginMessageThrottlerWin.cpp:
  69504. (WebCore::PluginMessageThrottlerWin::PluginMessageThrottlerWin): Modify initialization order.
  69505. 2010-08-03 Yury Semikhatsky <yurys@chromium.org>
  69506. Reviewed by Pavel Feldman.
  69507. Web Inspector: use InspectorValue to push resource data to the frontend
  69508. https://bugs.webkit.org/show_bug.cgi?id=43414
  69509. * inspector/Inspector.idl:
  69510. * inspector/InspectorController.cpp:
  69511. (WebCore::InspectorController::disconnectFrontend): destroy remote frontend object along with the old inspector frontend
  69512. (WebCore::InspectorController::populateScriptObjects):
  69513. (WebCore::InspectorController::didCommitLoad):
  69514. (WebCore::InspectorController::didLoadResourceFromMemoryCache):
  69515. (WebCore::InspectorController::identifierForInitialRequest):
  69516. (WebCore::InspectorController::mainResourceFiredDOMContentEvent):
  69517. (WebCore::InspectorController::mainResourceFiredLoadEvent):
  69518. (WebCore::InspectorController::willSendRequest):
  69519. (WebCore::InspectorController::didReceiveResponse):
  69520. (WebCore::InspectorController::didReceiveContentLength):
  69521. (WebCore::InspectorController::didFinishLoading):
  69522. (WebCore::InspectorController::didFailLoading):
  69523. (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
  69524. (WebCore::InspectorController::scriptImported):
  69525. * inspector/InspectorFrontend.cpp:
  69526. * inspector/InspectorFrontend.h:
  69527. * inspector/InspectorResource.cpp:
  69528. (WebCore::buildHeadersObject):
  69529. (WebCore::buildObjectForTiming):
  69530. (WebCore::InspectorResource::updateScriptObject):
  69531. * inspector/InspectorResource.h:
  69532. * inspector/front-end/inspector.js:
  69533. (WebInspector.updateResource):
  69534. 2010-08-03 Sheriff Bot <webkit.review.bot@gmail.com>
  69535. Unreviewed, rolling out r64539.
  69536. http://trac.webkit.org/changeset/64539
  69537. https://bugs.webkit.org/show_bug.cgi?id=43409
  69538. Accidently changed licenses in some files (Requested by
  69539. WildFox on #webkit).
  69540. * svg/...:
  69541. 2010-08-03 Andrei Popescu <andreip@google.com>
  69542. Unreviewed, build fix.
  69543. [IndexedDB] Chromium build is broken due to typo in WebCore.gypi:3501
  69544. https://bugs.webkit.org/show_bug.cgi?id=43408
  69545. Add missing ' in WebCore.gypi:3501.
  69546. * WebCore.gypi:
  69547. 2010-07-30 Andrei Popescu <andreip@dhcp-172-16-14-12.lon.corp.google.com>
  69548. Reviewed by Jeremy Orlow.
  69549. Rename IDBDatabaseRequest to IDBDatabase
  69550. https://bugs.webkit.org/show_bug.cgi?id=43250
  69551. No new tests, just refactoring.
  69552. * Android.derived.jscbindings.mk:
  69553. * Android.derived.v8bindings.mk:
  69554. * Android.mk:
  69555. * CMakeLists.txt:
  69556. * DerivedSources.cpp:
  69557. * DerivedSources.make:
  69558. * GNUmakefile.am:
  69559. * WebCore.gypi:
  69560. * WebCore.pri:
  69561. * WebCore.pro:
  69562. * WebCore.vcproj/WebCore.vcproj:
  69563. * WebCore.vcproj/WebCore.vcproj~: Added.
  69564. * WebCore.xcodeproj/project.pbxproj:
  69565. * WebCore.xcodeproj/project.pbxproj~: Added.
  69566. * bindings/js/JSIDBAnyCustom.cpp:
  69567. (WebCore::toJS):
  69568. * bindings/v8/custom/V8IDBAnyCustom.cpp:
  69569. (WebCore::toV8):
  69570. * storage/IDBAny.cpp:
  69571. (WebCore::IDBAny::idbDatabase):
  69572. (WebCore::IDBAny::set):
  69573. * storage/IDBAny.h:
  69574. (WebCore::IDBAny::):
  69575. * storage/IDBCallbacks.h:
  69576. * storage/IDBDatabase.cpp: Added.
  69577. (WebCore::IDBDatabase::IDBDatabase):
  69578. (WebCore::IDBDatabase::~IDBDatabase):
  69579. (WebCore::IDBDatabase::createObjectStore):
  69580. (WebCore::IDBDatabase::objectStore):
  69581. (WebCore::IDBDatabase::removeObjectStore):
  69582. * storage/IDBDatabase.h:
  69583. (WebCore::IDBDatabase::create):
  69584. (WebCore::IDBDatabase::name):
  69585. (WebCore::IDBDatabase::description):
  69586. (WebCore::IDBDatabase::version):
  69587. (WebCore::IDBDatabase::objectStores):
  69588. * storage/IDBDatabase.idl: Added.
  69589. * storage/IDBDatabaseBackendImpl.cpp: Added.
  69590. (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl):
  69591. (WebCore::IDBDatabaseBackendImpl::~IDBDatabaseBackendImpl):
  69592. (WebCore::IDBDatabaseBackendImpl::objectStores):
  69593. (WebCore::IDBDatabaseBackendImpl::createObjectStore):
  69594. (WebCore::IDBDatabaseBackendImpl::objectStore):
  69595. (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
  69596. * storage/IDBDatabaseBackendImpl.h: Added.
  69597. (WebCore::IDBDatabaseBackendImpl::create):
  69598. (WebCore::IDBDatabaseBackendImpl::name):
  69599. (WebCore::IDBDatabaseBackendImpl::description):
  69600. (WebCore::IDBDatabaseBackendImpl::version):
  69601. * storage/IDBDatabaseBackendInterface.h: Added.
  69602. (WebCore::IDBDatabaseBackendInterface::~IDBDatabaseBackendInterface):
  69603. * storage/IDBDatabaseImpl.cpp: Removed.
  69604. * storage/IDBDatabaseImpl.h: Removed.
  69605. * storage/IDBDatabaseRequest.cpp: Removed.
  69606. * storage/IDBDatabaseRequest.h: Removed.
  69607. * storage/IDBDatabaseRequest.idl: Removed.
  69608. * storage/IDBFactoryBackendImpl.cpp:
  69609. (WebCore::IDBFactoryBackendImpl::open):
  69610. * storage/IDBFactoryBackendImpl.h:
  69611. * storage/IDBRequest.cpp:
  69612. (WebCore::IDBRequest::onSuccess):
  69613. * storage/IDBRequest.h:
  69614. 2010-08-03 Satish Sampath <satish@chromium.org>
  69615. Reviewed by Kent Tamura.
  69616. Initiate speech input requests on click event
  69617. https://bugs.webkit.org/show_bug.cgi?id=43352
  69618. * rendering/TextControlInnerElements.cpp:
  69619. (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
  69620. 2010-08-02 Yury Semikhatsky <yurys@chromium.org>
  69621. Reviewed by Pavel Feldman.
  69622. Web Inspector: debugger code should serialize call frames to InspectorObjects instead of SerializedScriptValues.
  69623. https://bugs.webkit.org/show_bug.cgi?id=43339
  69624. No new tests. Refactoring.
  69625. * inspector/InjectedScript.cpp:
  69626. (WebCore::InjectedScript::callFrames):
  69627. * inspector/InjectedScript.h:
  69628. * inspector/Inspector.idl:
  69629. * inspector/InspectorController.cpp:
  69630. (WebCore::InspectorController::editScriptSource):
  69631. (WebCore::InspectorController::getScriptSource):
  69632. (WebCore::InspectorController::currentCallFrames):
  69633. (WebCore::InspectorController::didPause):
  69634. * inspector/InspectorController.h:
  69635. * inspector/front-end/InspectorBackendStub.js:
  69636. (WebInspector.InspectorBackendStub):
  69637. 2010-08-03 Nikolas Zimmermann <nzimmermann@rim.com>
  69638. Reviewed by Dirk Schulze.
  69639. Cleanup all of svg/ code
  69640. https://bugs.webkit.org/show_bug.cgi?id=43311
  69641. Unify the license header in all files in svg/, to use the same template as most WebCore files use.
  69642. Unified email adress style, etc. all generated with a perl script attached to bug 43311.i
  69643. * svg/...: Updated header template in all files, in the svg/ subdirectory.
  69644. 2010-08-03 Dumitru Daniliuc <dumi@chromium.org>
  69645. Reviewed by Adam Barth.
  69646. Turn all callbacks into ActiveDOMObjects and create callbacks in the correct context.
  69647. https://bugs.webkit.org/show_bug.cgi?id=40112
  69648. Test: http/tests/storage/callbacks-are-called-in-correct-context.html
  69649. * CMakeLists.txt: Added new files.
  69650. * DerivedSources.make:
  69651. * GNUmakefile.am:
  69652. * WebCore.gypi:
  69653. * WebCore.pro:
  69654. * WebCore.vcproj/WebCore.vcproj:
  69655. * WebCore.xcodeproj/project.pbxproj:
  69656. * bindings/generic/ActiveDOMCallback.cpp: Added. The base class
  69657. for all callbacks, that behaves like an ActiveDOMObject.
  69658. (WebCore::DestroyOnContextThreadTask::create):
  69659. (WebCore::DestroyOnContextThreadTask::performTask):
  69660. (WebCore::DestroyOnContextThreadTask::DestroyOnContextThreadTask):
  69661. (WebCore::ActiveDOMObjectCallbackImpl::ActiveDOMObjectCallbackImpl):
  69662. (WebCore::ActiveDOMObjectCallbackImpl::contextDestroyed):
  69663. (WebCore::ActiveDOMObjectCallbackImpl::canSuspend):
  69664. (WebCore::ActiveDOMObjectCallbackImpl::suspend):
  69665. (WebCore::ActiveDOMObjectCallbackImpl::resume):
  69666. (WebCore::ActiveDOMObjectCallbackImpl::stop):
  69667. (WebCore::ActiveDOMObjectCallbackImpl::canInvokeCallback):
  69668. (WebCore::ActiveDOMObjectCallbackImpl::scriptExecutionContext):
  69669. (WebCore::ActiveDOMObjectCallbackImpl::mutex):
  69670. (WebCore::destroyOnContextThread):
  69671. (WebCore::ActiveDOMCallback::ActiveDOMCallback):
  69672. (WebCore::ActiveDOMCallback::~ActiveDOMCallback):
  69673. (WebCore::ActiveDOMCallback::canInvokeCallback):
  69674. (WebCore::ActiveDOMCallback::scriptExecutionContext):
  69675. * bindings/generic/ActiveDOMCallback.h: Added.
  69676. * bindings/js/JSCustomSQLStatementErrorCallback.cpp: Pass the
  69677. right ScriptExecutionContext to the JSC callbacks.
  69678. (WebCore::JSSQLStatementErrorCallback::handleEvent):
  69679. * bindings/js/JSSQLTransactionCustom.cpp:
  69680. (WebCore::JSSQLTransaction::executeSql):
  69681. * bindings/scripts/CodeGeneratorJS.pm: Make all callbacks inherit
  69682. from ActiveDOMCallback, and make them use the right
  69683. ScriptExecutionContext.
  69684. * bindings/scripts/CodeGeneratorV8.pm:
  69685. * bindings/scripts/test/JS/JSTestCallback.cpp: Update the
  69686. expectations for the code generated by CodeGenerator{JS|V8}.pm.
  69687. (WebCore::JSTestCallback::JSTestCallback):
  69688. (WebCore::JSTestCallback::~JSTestCallback):
  69689. (WebCore::JSTestCallback::callbackWithClass1Param):
  69690. (WebCore::JSTestCallback::callbackWithClass2Param):
  69691. * bindings/scripts/test/JS/JSTestCallback.h:
  69692. * bindings/scripts/test/V8/V8TestCallback.cpp:
  69693. (WebCore::V8TestCallback::V8TestCallback):
  69694. (WebCore::V8TestCallback::callbackWithClass1Param):
  69695. (WebCore::V8TestCallback::callbackWithClass2Param):
  69696. * bindings/scripts/test/V8/V8TestCallback.h:
  69697. (WebCore::V8TestCallback::create):
  69698. * bindings/scripts/test/V8/V8TestObj.cpp:
  69699. (WebCore::TestObjInternal::methodWithCallbackArgCallback):
  69700. (WebCore::TestObjInternal::methodWithNonCallbackArgAndCallbackArgCallback):
  69701. (WebCore::TestObjInternal::methodWithCallbackAndOptionalArgCallback):
  69702. * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp: Pass
  69703. the right ScriptExecutionContext to the V8 callbacks.
  69704. (WebCore::V8SQLStatementErrorCallback::handleEvent):
  69705. * bindings/v8/custom/V8DOMWindowCustom.cpp:
  69706. (WebCore::V8DOMWindow::openDatabaseCallback):
  69707. * bindings/v8/custom/V8DatabaseCustom.cpp:
  69708. (WebCore::V8Database::changeVersionCallback):
  69709. (WebCore::createTransaction):
  69710. * bindings/v8/custom/V8DatabaseSyncCustom.cpp:
  69711. (WebCore::V8DatabaseSync::changeVersionCallback):
  69712. (WebCore::createTransaction):
  69713. * bindings/v8/custom/V8SQLTransactionCustom.cpp:
  69714. (WebCore::V8SQLTransaction::executeSqlCallback):
  69715. * bindings/v8/custom/V8WorkerContextCustom.cpp:
  69716. (WebCore::V8WorkerContext::openDatabaseCallback):
  69717. (WebCore::V8WorkerContext::openDatabaseSyncCallback):
  69718. * dom/ActiveDOMObject.cpp: Simplify the code.
  69719. (WebCore::ActiveDOMObject::ActiveDOMObject):
  69720. (WebCore::ActiveDOMObject::~ActiveDOMObject):
  69721. * storage/Database.cpp: CallbackClass::handleEvent() doesn't take
  69722. a ScriptExecutionContext anymore.
  69723. (WebCore::DatabaseCreationCallbackTask::performTask):
  69724. * storage/DatabaseCallback.h:
  69725. * storage/DatabaseSync.cpp:
  69726. (WebCore::DatabaseSync::openDatabaseSync):
  69727. * storage/EntryCallback.h:
  69728. * storage/ErrorCallback.h:
  69729. * storage/FileSystemCallback.h:
  69730. * storage/MetadataCallback.h:
  69731. * storage/SQLStatement.cpp:
  69732. (WebCore::SQLStatement::performCallback):
  69733. * storage/SQLStatementCallback.h:
  69734. * storage/SQLStatementErrorCallback.h:
  69735. * storage/SQLTransaction.cpp:
  69736. (WebCore::SQLTransaction::deliverTransactionCallback):
  69737. (WebCore::SQLTransaction::deliverTransactionErrorCallback):
  69738. * storage/SQLTransactionCallback.h:
  69739. * storage/SQLTransactionErrorCallback.h:
  69740. * storage/SQLTransactionSync.cpp:
  69741. (WebCore::SQLTransactionSync::execute):
  69742. * storage/SQLTransactionSyncCallback.h:
  69743. 2010-08-02 Ilya Tikhonovsky <loislo@chromium.org>
  69744. Reviewed by Yury Semikhatsky.
  69745. WebInspector: Trivial InspectorBackend functions were removed.
  69746. And now it is bit simpler to change Inspector API because we have
  69747. less number of abstraction layers.
  69748. https://bugs.webkit.org/show_bug.cgi?id=43402
  69749. * inspector/CodeGeneratorInspector.pm:
  69750. * inspector/Inspector.idl:
  69751. * inspector/InspectorBackend.cpp:
  69752. (WebCore::InspectorBackend::clearConsoleMessages):
  69753. (WebCore::InspectorBackend::releaseWrapperObjectGroup):
  69754. (WebCore::InspectorBackend::inspectorFrontend):
  69755. (WebCore::InspectorBackend::remoteFrontend):
  69756. * inspector/InspectorBackend.h:
  69757. (WebCore::InspectorBackend::inspectorDOMAgent):
  69758. (WebCore::InspectorBackend::inspectorApplicationCacheAgent):
  69759. * inspector/InspectorController.h:
  69760. 2010-08-03 Alexey Proskuryakov <ap@apple.com>
  69761. Unreviewed (emergency test fix).
  69762. REGRESSION (r64518): Most regression tests fail on ASSERT(shouldTrackVisitedLinks)
  69763. on Snow Leopard.
  69764. Platforms that use strategies now use a different code path than others, and that code path
  69765. lacks necessary checks. We don't have a Snow Leopard debug buildbot.
  69766. * page/PageGroup.cpp: (WebCore::PageGroup::addVisitedLinkHash): The private version of
  69767. addVisitedLink() must not be called when we're not tracking visited links.
  69768. 2010-08-02 Pavel Feldman <pfeldman@chromium.org>
  69769. Reviewed by Yury Semikhatsky.
  69770. Chromium DevTools: Get rid of DevTools RPC.
  69771. https://bugs.webkit.org/show_bug.cgi?id=43335
  69772. * bindings/js/ScriptProfiler.h:
  69773. (WebCore::ScriptProfiler::getProfilerLogLines):
  69774. * bindings/v8/ScriptProfiler.cpp:
  69775. (WebCore::ScriptProfiler::getProfilerLogLines):
  69776. * bindings/v8/ScriptProfiler.h:
  69777. * inspector/Inspector.idl:
  69778. * inspector/InspectorBackend.cpp:
  69779. (WebCore::InspectorBackend::takeHeapSnapshot):
  69780. (WebCore::InspectorBackend::getProfilerLogLines):
  69781. * inspector/InspectorBackend.h:
  69782. * inspector/InspectorController.cpp:
  69783. (WebCore::InspectorController::disableProfiler):
  69784. * inspector/InspectorController.h:
  69785. * inspector/InspectorFrontend.h:
  69786. * inspector/front-end/InspectorBackendStub.js:
  69787. (WebInspector.InspectorBackendStub):
  69788. 2010-08-02 Dan Bernstein <mitz@apple.com>
  69789. Rubber-stamped by Sam Weinig.
  69790. Removed temporary build rule introduced in r62594.
  69791. * DerivedSources.make:
  69792. 2010-08-02 Pavel Feldman <pfeldman@chromium.org>
  69793. Not reviewed. Rolling out r64525 for breaking chromium tests.
  69794. * bindings/v8/V8Proxy.cpp:
  69795. (WebCore::V8Proxy::retrieve):
  69796. 2010-08-02 Kevin Ollivier <kevino@theolliviers.com>
  69797. [wx] Build fix, add stubs for FontCustomPlatformData to compile code that uses them.
  69798. * css/CSSFontFaceSource.cpp:
  69799. * platform/graphics/wx/FontCustomPlatformData.cpp: Added.
  69800. (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
  69801. (WebCore::FontCustomPlatformData::fontPlatformData):
  69802. (WebCore::createFontCustomPlatformData):
  69803. (WebCore::FontCustomPlatformData::supportsFormat):
  69804. * platform/graphics/wx/FontCustomPlatformData.h: Added.
  69805. (WebCore::FontCustomPlatformData::FontCustomPlatformData):
  69806. * wscript:
  69807. 2010-08-02 Brady Eidson <beidson@apple.com>
  69808. Reviewed by NOBODY (Build fix, forgot to svn add this file)
  69809. * platform/VisitedLinkStrategy.h: Added.
  69810. (WebCore::VisitedLinkStrategy::~VisitedLinkStrategy):
  69811. 2010-08-02 Martin Robinson <mrobinson@igalia.com>
  69812. Reviewed by Gustavo Noronha Silva.
  69813. [GTK] WebKit2 requires lazy cursor support
  69814. https://bugs.webkit.org/show_bug.cgi?id=43053
  69815. Add lazy cursor support for GTK+. Lazy cursor support is used on some
  69816. WebKit2 ports to support changing the cursor.
  69817. No new tests, as this should not change functionality.
  69818. * platform/Cursor.h: Changed the m_platformCursor member to be a GRefPtr.
  69819. This simplifies the logic a great deal.
  69820. * platform/gtk/CursorGtk.cpp:
  69821. (WebCore::createNamedCursor): Added, adapted from existing code.
  69822. (WebCore::createCustomCursor): Added, adapted from existing code.
  69823. (WebCore::Cursor::ensurePlatformCursor): Added.
  69824. (WebCore::Cursor::Cursor): Added.
  69825. (WebCore::Cursor::operator=): Added.
  69826. (WebCore::Cursor::~Cursor): Added.
  69827. * platform/gtk/WidgetGtk.cpp:
  69828. (WebCore::Widget::setCursor): Call platformCusor now to get the actual GdkCursor.
  69829. 2010-08-02 Rajiv Makhijani <rajivmakhijani@chromium.org>
  69830. Reviewed by Adam Barth.
  69831. Committed by Dirk Pranke.
  69832. Bug 38705 - [v8] chromium fails http/tests/sandbox-inherit-to-initial-document-2
  69833. https://bugs.webkit.org/show_bug.cgi?id=38705
  69834. WebCore::V8Proxy::retrieve(Frame* frame) calls WebCore::ScriptController::canExecuteScripts
  69835. and returns 0 if canExecuteScripts is false. It should return the proxy regardless
  69836. of whether the frame can execute scripts.
  69837. * bindings/v8/V8Proxy.cpp:
  69838. (WebCore::V8Proxy::retrieve): Removed canExecuteScripts check.
  69839. 2010-08-02 Brady Eidson <beidson@apple.com>
  69840. Reviewed by Anders Carlsson.
  69841. Add VisitedLinkStrategy for each platform to implement
  69842. https://bugs.webkit.org/show_bug.cgi?id=43393
  69843. No new tests. (No change in behavior)
  69844. * WebCore.exp.in:
  69845. * WebCore.xcodeproj/project.pbxproj:
  69846. * css/CSSStyleSelector.cpp:
  69847. (WebCore::CSSStyleSelector::SelectorChecker::determineLinkStateSlowCase): Use VisitedLinkStrategy if it's enabled.
  69848. * loader/HistoryController.cpp:
  69849. (WebCore::addVisitedLink): Choose VisitedLinkStrategy if it's enabled, else fallback to PageGroup.
  69850. (WebCore::HistoryController::updateForStandardLoad): Use addVisitedLink helper.
  69851. (WebCore::HistoryController::updateForRedirectWithLockedBackForwardList): Ditto.
  69852. (WebCore::HistoryController::updateForClientRedirect): Ditto.
  69853. (WebCore::HistoryController::updateForSameDocumentNavigation): Ditto.
  69854. * platform/PlatformStrategies.h:
  69855. (WebCore::PlatformStrategies::visitedLinkStrategy):
  69856. (WebCore::PlatformStrategies::PlatformStrategies):
  69857. 2010-08-02 Chris Fleizach <cfleizach@apple.com>
  69858. Unreviewed, rolling out r64471.
  69859. http://trac.webkit.org/changeset/64471
  69860. https://bugs.webkit.org/show_bug.cgi?id=43005
  69861. Rolling out https://bugs.webkit.org/show_bug.cgi?id=43005
  69862. until further discussion
  69863. * Android.derived.v8bindings.mk:
  69864. * Android.jscbindings.mk:
  69865. * DerivedSources.cpp:
  69866. * DerivedSources.make:
  69867. * GNUmakefile.am:
  69868. * WebCore.gypi:
  69869. * WebCore.pri:
  69870. * WebCore.pro:
  69871. * WebCore.vcproj/WebCore.vcproj:
  69872. * WebCore.xcodeproj/project.pbxproj:
  69873. * accessibility/AXObjectCache.h:
  69874. (WebCore::AXObjectCache::):
  69875. * accessibility/Accessibility.cpp: Removed.
  69876. * accessibility/Accessibility.h: Removed.
  69877. * accessibility/Accessibility.idl: Removed.
  69878. * accessibility/AccessibilityObject.h:
  69879. * accessibility/ScreenReader.cpp: Removed.
  69880. * accessibility/ScreenReader.h: Removed.
  69881. * accessibility/ScreenReader.idl: Removed.
  69882. * accessibility/mac/AXObjectCacheMac.mm:
  69883. (WebCore::AXObjectCache::postPlatformNotification):
  69884. * accessibility/mac/AccessibilityObjectMac.mm:
  69885. * page/Navigator.cpp:
  69886. (WebCore::Navigator::disconnectFrame):
  69887. (WebCore::Navigator::mimeTypes):
  69888. * page/Navigator.h:
  69889. * page/Navigator.idl:
  69890. 2010-08-02 Ryosuke Niwa <rniwa@webkit.org>
  69891. Reviewed by Eric Seidel.
  69892. Range::create should not be calling deprecatedEditingOffset and node on start and end
  69893. https://bugs.webkit.org/show_bug.cgi?id=43385
  69894. Replaced node() and deprecatedEditingOffset() by containerNode() and computeOffsetInContainerNode().
  69895. No new tests added since this does not change the behavior.
  69896. * dom/Range.cpp:
  69897. (WebCore::Range::create):
  69898. 2010-08-02 Chris Fleizach <cfleizach@apple.com>
  69899. Unreviewed, rolling out r64472.
  69900. http://trac.webkit.org/changeset/64472
  69901. https://bugs.webkit.org/show_bug.cgi?id=43005
  69902. Rolling out https://bugs.webkit.org/show_bug.cgi?id=43005
  69903. until further discussion
  69904. * WebCore.vcproj/WebCore.vcproj:
  69905. 2010-08-02 Chris Fleizach <cfleizach@apple.com>
  69906. Unreviewed, rolling out r64476.
  69907. http://trac.webkit.org/changeset/64476
  69908. Rolling out https://bugs.webkit.org/show_bug.cgi?id=43005
  69909. until further discussion
  69910. * WebCore.vcproj/WebCore.vcproj:
  69911. 2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>
  69912. Reviewed by Darin Fisher.
  69913. PopupMenu refactoring in preparation to WebKit2
  69914. https://bugs.webkit.org/show_bug.cgi?id=42592
  69915. Classes PopupMenu and SearchPopupMenu have been made pure virtual.
  69916. * platform/PopupMenu.h:
  69917. (WebCore::PopupMenu::~PopupMenu):
  69918. * platform/SearchPopupMenu.h:
  69919. (WebCore::SearchPopupMenu::~SearchPopupMenu):
  69920. Classes RenderMenuList and RenderTexyControlSingleLine have been changed to use
  69921. the new pure virtual PopupMenu and SearchPopupMenu.
  69922. * rendering/RenderMenuList.cpp:
  69923. (WebCore::RenderMenuList::adjustInnerStyle):
  69924. (WebCore::RenderMenuList::showPopup):
  69925. * rendering/RenderMenuList.h:
  69926. * rendering/RenderTextControlSingleLine.cpp:
  69927. (WebCore::RenderTextControlSingleLine::~RenderTextControlSingleLine):
  69928. (WebCore::RenderTextControlSingleLine::addSearchResult):
  69929. (WebCore::RenderTextControlSingleLine::showPopup):
  69930. (WebCore::RenderTextControlSingleLine::hidePopup):
  69931. (WebCore::RenderTextControlSingleLine::updateFromElement):
  69932. (WebCore::RenderTextControlSingleLine::valueChanged):
  69933. * rendering/RenderTextControlSingleLine.h:
  69934. Chrome and ChromeClient were made responsible for providing instances of classes
  69935. PopupMenu and SearchPopupMenu to its users.
  69936. * loader/EmptyClients.h:
  69937. (WebCore::EmptyPopupMenu::show):
  69938. (WebCore::EmptyPopupMenu::hide):
  69939. (WebCore::EmptyPopupMenu::updateFromElement):
  69940. (WebCore::EmptyPopupMenu::disconnectClient):
  69941. (WebCore::EmptySearchPopupMenu::popupMenu):
  69942. (WebCore::EmptySearchPopupMenu::saveRecentSearches):
  69943. (WebCore::EmptySearchPopupMenu::loadRecentSearches):
  69944. (WebCore::EmptySearchPopupMenu::enabled):
  69945. (WebCore::EmptyChromeClient::selectItemWritingDirectionIsNatural):
  69946. (WebCore::EmptyChromeClient::createPopupMenu):
  69947. (WebCore::EmptyChromeClient::createSearchPopupMenu):
  69948. * page/Chrome.cpp:
  69949. (WebCore::Chrome::selectItemWritingDirectionIsNatural):
  69950. (WebCore::Chrome::createPopupMenu):
  69951. (WebCore::Chrome::createSearchPopupMenu):
  69952. * page/Chrome.h:
  69953. * page/ChromeClient.h:
  69954. Original contents of files PopupMenu.h and SearchPopupMenu.h have been splited
  69955. in several files, two for each platform (PopupMenuXXX.h and SearchPopupMenuXXX.h).
  69956. Each of new the files contain the concrete classes that inherit form PopupMenu or
  69957. SearchPopupMenu and are specific for the corresponding platform.
  69958. brew:
  69959. * platform/brew/PopupMenuBrew.cpp:
  69960. (WebCore::PopupMenuBrew::PopupMenuBrew):
  69961. (WebCore::PopupMenuBrew::~PopupMenuBrew):
  69962. (WebCore::PopupMenuBrew::disconnectClient):
  69963. (WebCore::PopupMenuBrew::show):
  69964. (WebCore::PopupMenuBrew::hide):
  69965. (WebCore::PopupMenuBrew::updateFromElement):
  69966. * platform/brew/PopupMenuBrew.h: Added.
  69967. (WebCore::PopupMenuBrew::client):
  69968. * platform/brew/SearchPopupMenuBrew.cpp:
  69969. (WebCore::SearchPopupMenuBrew::saveRecentSearches):
  69970. (WebCore::SearchPopupMenuBrew::loadRecentSearches):
  69971. (WebCore::SearchPopupMenuBrew::SearchPopupMenuBrew):
  69972. (WebCore::SearchPopupMenuBrew::enabled):
  69973. (WebCore::SearchPopupMenuBrew::popupMenu):
  69974. * platform/brew/SearchPopupMenuBrew.h: Added.
  69975. chromium:
  69976. * WebCore.gypi:
  69977. * platform/chromium/PopupMenuChromium.cpp:
  69978. (WebCore::PopupMenuChromium::PopupMenuChromium):
  69979. (WebCore::PopupMenuChromium::~PopupMenuChromium):
  69980. (WebCore::PopupMenuChromium::show):
  69981. (WebCore::PopupMenuChromium::hide):
  69982. (WebCore::PopupMenuChromium::updateFromElement):
  69983. (WebCore::PopupMenuChromium::disconnectClient):
  69984. * platform/chromium/PopupMenuChromium.h:
  69985. (WebCore::PopupMenuChromium::client):
  69986. * platform/chromium/SearchPopupMenuChromium.cpp:
  69987. (WebCore::SearchPopupMenuChromium::SearchPopupMenuChromium):
  69988. (WebCore::SearchPopupMenuChromium::popupMenu):
  69989. (WebCore::SearchPopupMenuChromium::enabled):
  69990. (WebCore::SearchPopupMenuChromium::saveRecentSearches):
  69991. (WebCore::SearchPopupMenuChromium::loadRecentSearches):
  69992. * platform/chromium/SearchPopupMenuChromium.h: Added.
  69993. efl:
  69994. * platform/efl/PopupMenuEfl.cpp:
  69995. (WebCore::PopupMenuEfl::PopupMenuEfl):
  69996. (WebCore::PopupMenuEfl::~PopupMenuEfl):
  69997. (WebCore::PopupMenuEfl::show):
  69998. (WebCore::PopupMenuEfl::hide):
  69999. (WebCore::PopupMenuEfl::updateFromElement):
  70000. (WebCore::PopupMenuEfl::disconnectClient):
  70001. * platform/efl/PopupMenuEfl.h: Added.
  70002. (WebCore::PopupMenuEfl::client):
  70003. * platform/efl/SearchPopupMenuEfl.cpp:
  70004. (WebCore::SearchPopupMenuEfl::SearchPopupMenuEfl):
  70005. (WebCore::SearchPopupMenuEfl::popupMenu):
  70006. (WebCore::SearchPopupMenuEfl::saveRecentSearches):
  70007. (WebCore::SearchPopupMenuEfl::loadRecentSearches):
  70008. (WebCore::SearchPopupMenuEfl::enabled):
  70009. * platform/efl/SearchPopupMenuEfl.h: Added.
  70010. gtk:
  70011. * GNUmakefile.am:
  70012. * platform/gtk/PopupMenuGtk.cpp:
  70013. (WebCore::PopupMenuGtk::PopupMenuGtk):
  70014. (WebCore::PopupMenuGtk::~PopupMenuGtk):
  70015. (WebCore::PopupMenuGtk::show):
  70016. (WebCore::PopupMenuGtk::hide):
  70017. (WebCore::PopupMenuGtk::updateFromElement):
  70018. (WebCore::PopupMenuGtk::disconnectClient):
  70019. (WebCore::PopupMenuGtk::menuItemActivated):
  70020. (WebCore::PopupMenuGtk::menuUnmapped):
  70021. (WebCore::PopupMenuGtk::menuPositionFunction):
  70022. (WebCore::PopupMenuGtk::menuRemoveItem):
  70023. * platform/gtk/PopupMenuGtk.h: Added.
  70024. (WebCore::PopupMenuGtk::client):
  70025. * platform/gtk/SearchPopupMenuGtk.cpp:
  70026. (WebCore::SearchPopupMenuGtk::SearchPopupMenuGtk):
  70027. (WebCore::SearchPopupMenuGtk::popupMenu):
  70028. (WebCore::SearchPopupMenuGtk::saveRecentSearches):
  70029. (WebCore::SearchPopupMenuGtk::loadRecentSearches):
  70030. (WebCore::SearchPopupMenuGtk::enabled):
  70031. * platform/gtk/SearchPopupMenuGtk.h: Added.
  70032. haiku:
  70033. * platform/haiku/PopupMenuHaiku.cpp:
  70034. (WebCore::HaikuPopup::HaikuPopup):
  70035. (WebCore::HaikuPopup::~HaikuPopup):
  70036. (WebCore::PopupMenuHaiku::PopupMenuHaiku):
  70037. (WebCore::PopupMenuHaiku::~PopupMenuHaiku):
  70038. (WebCore::PopupMenuHaiku::disconnectClient):
  70039. (WebCore::PopupMenuHaiku::show):
  70040. (WebCore::PopupMenuHaiku::hide):
  70041. (WebCore::PopupMenuHaiku::updateFromElement):
  70042. * platform/haiku/PopupMenuHaiku.h: Added.
  70043. (WebCore::PopupMenuHaiku::disconnectClient):
  70044. (WebCore::PopupMenuHaiku::client):
  70045. * platform/haiku/SearchPopupMenuHaiku.cpp:
  70046. (WebCore::SearchPopupMenuHaiku::SearchPopupMenuHaiku):
  70047. (WebCore::SearchPopupMenuHaiku::saveRecentSearches):
  70048. (WebCore::SearchPopupMenuHaiku::loadRecentSearches):
  70049. (WebCore::SearchPopupMenuHaiku::enabled):
  70050. (WebCore::SearchPopupMenuHaiku::popupMenu):
  70051. * platform/haiku/SearchPopupMenuHaiku.h: Added.
  70052. mac:
  70053. * WebCore.exp.in:
  70054. * WebCore.xcodeproj/project.pbxproj:
  70055. * platform/mac/PopupMenuMac.h: Added.
  70056. (WebCore::PopupMenuMac::disconnectClient):
  70057. (WebCore::PopupMenuMac::client):
  70058. * platform/mac/PopupMenuMac.mm:
  70059. (WebCore::PopupMenuMac::PopupMenuMac):
  70060. (WebCore::PopupMenuMac::~PopupMenuMac):
  70061. (WebCore::PopupMenuMac::clear):
  70062. (WebCore::PopupMenuMac::populate):
  70063. (WebCore::PopupMenuMac::show):
  70064. (WebCore::PopupMenuMac::hide):
  70065. (WebCore::PopupMenuMac::updateFromElement):
  70066. (WebCore::PopupMenuMac::itemWritingDirectionIsNatural):
  70067. * platform/mac/SearchPopupMenuMac.h: Added.
  70068. * platform/mac/SearchPopupMenuMac.mm:
  70069. (WebCore::SearchPopupMenuMac::SearchPopupMenuMac):
  70070. (WebCore::SearchPopupMenuMac::popupMenu):
  70071. (WebCore::SearchPopupMenuMac::enabled):
  70072. (WebCore::SearchPopupMenuMac::saveRecentSearches):
  70073. (WebCore::SearchPopupMenuMac::loadRecentSearches):
  70074. qt:
  70075. * WebCore.pro:
  70076. * platform/qt/PopupMenuQt.cpp:
  70077. (WebCore::PopupMenuQt::PopupMenuQt):
  70078. (WebCore::PopupMenuQt::~PopupMenuQt):
  70079. (WebCore::PopupMenuQt::disconnectClient):
  70080. (WebCore::PopupMenuQt::show):
  70081. (WebCore::PopupMenuQt::hide):
  70082. (WebCore::PopupMenuQt::updateFromElement):
  70083. * platform/qt/PopupMenuQt.h: Added.
  70084. * platform/qt/QtAbstractWebPopup.h:
  70085. * platform/qt/SearchPopupMenuQt.cpp:
  70086. (WebCore::SearchPopupMenuQt::SearchPopupMenuQt):
  70087. (WebCore::SearchPopupMenuQt::popupMenu):
  70088. (WebCore::SearchPopupMenuQt::saveRecentSearches):
  70089. (WebCore::SearchPopupMenuQt::loadRecentSearches):
  70090. (WebCore::SearchPopupMenuQt::enabled):
  70091. * platform/qt/SearchPopupMenuQt.h: Added.
  70092. win:
  70093. * WebCore.vcproj/WebCore.vcproj:
  70094. * platform/win/PopupMenuWin.cpp:
  70095. (WebCore::PopupMenuWin::PopupMenuWin):
  70096. (WebCore::PopupMenuWin::~PopupMenuWin):
  70097. (WebCore::PopupMenuWin::disconnectClient):
  70098. (WebCore::PopupMenuWin::popupClassName):
  70099. (WebCore::PopupMenuWin::show):
  70100. (WebCore::PopupMenuWin::hide):
  70101. (WebCore::PopupMenuWin::calculatePositionAndSize):
  70102. (WebCore::PopupMenuWin::setFocusedIndex):
  70103. (WebCore::PopupMenuWin::visibleItems):
  70104. (WebCore::PopupMenuWin::listIndexAtPoint):
  70105. (WebCore::PopupMenuWin::focusedIndex):
  70106. (WebCore::PopupMenuWin::focusFirst):
  70107. (WebCore::PopupMenuWin::focusLast):
  70108. (WebCore::PopupMenuWin::down):
  70109. (WebCore::PopupMenuWin::up):
  70110. (WebCore::PopupMenuWin::invalidateItem):
  70111. (WebCore::PopupMenuWin::clientRect):
  70112. (WebCore::PopupMenuWin::incrementWheelDelta):
  70113. (WebCore::PopupMenuWin::reduceWheelDelta):
  70114. (WebCore::PopupMenuWin::scrollToRevealSelection):
  70115. (WebCore::PopupMenuWin::updateFromElement):
  70116. (WebCore::PopupMenuWin::paint):
  70117. (WebCore::PopupMenuWin::valueChanged):
  70118. (WebCore::PopupMenuWin::invalidateScrollbarRect):
  70119. (WebCore::PopupMenuWin::registerClass):
  70120. (WebCore::PopupMenuWin::PopupMenuWndProc):
  70121. (WebCore::PopupMenuWin::wndProc):
  70122. * platform/win/PopupMenuWin.h: Added.
  70123. (WebCore::PopupMenuWin::client):
  70124. (WebCore::PopupMenuWin::scrollbar):
  70125. (WebCore::PopupMenuWin::itemHeight):
  70126. (WebCore::PopupMenuWin::windowRect):
  70127. (WebCore::PopupMenuWin::popupHandle):
  70128. (WebCore::PopupMenuWin::setWasClicked):
  70129. (WebCore::PopupMenuWin::wasClicked):
  70130. (WebCore::PopupMenuWin::setScrollOffset):
  70131. (WebCore::PopupMenuWin::scrollOffset):
  70132. (WebCore::PopupMenuWin::wheelDelta):
  70133. (WebCore::PopupMenuWin::scrollbarCapturingMouse):
  70134. (WebCore::PopupMenuWin::setScrollbarCapturingMouse):
  70135. * platform/win/SearchPopupMenuWin.cpp:
  70136. (WebCore::SearchPopupMenuWin::SearchPopupMenuWin):
  70137. (WebCore::SearchPopupMenuWin::popupMenu):
  70138. (WebCore::SearchPopupMenuWin::enabled):
  70139. (WebCore::SearchPopupMenuWin::saveRecentSearches):
  70140. (WebCore::SearchPopupMenuWin::loadRecentSearches):
  70141. * platform/win/SearchPopupMenuWin.h: Added.
  70142. wx:
  70143. * platform/wx/PopupMenuWx.cpp:
  70144. (WebCore::PopupMenuWx::PopupMenuWx):
  70145. (WebCore::PopupMenuWx::~PopupMenuWx):
  70146. (WebCore::PopupMenuWx::disconnectClient):
  70147. (WebCore::PopupMenuWx::show):
  70148. (WebCore::PopupMenuWx::OnMenuItemSelected):
  70149. (WebCore::PopupMenuWx::hide):
  70150. (WebCore::PopupMenuWx::updateFromElement):
  70151. * platform/wx/PopupMenuWx.h: Added.
  70152. (WebCore::PopupMenuWx::client):
  70153. * platform/wx/SearchPopupMenuWx.cpp:
  70154. (WebCore::SearchPopupMenuWx::SearchPopupMenuWx):
  70155. (WebCore::SearchPopupMenuWx::saveRecentSearches):
  70156. (WebCore::SearchPopupMenuWx::loadRecentSearches):
  70157. (WebCore::SearchPopupMenuWx::enabled):
  70158. (WebCore::SearchPopupMenuWx::popupMenu):
  70159. * platform/wx/SearchPopupMenuWx.h: Added.
  70160. 2010-08-02 Martin Robinson <mrobinson@igalia.com>
  70161. Reviewed by Xan Lopez.
  70162. [GTK] Use GdkPixbuf for ImageBuffer::toDataURL
  70163. https://bugs.webkit.org/show_bug.cgi?id=43088
  70164. Implement ImageBuffer::toDataURL with GdkPixbuf instead of Cairo. This
  70165. allows the method to support a larger variety of image types.
  70166. * GNUmakefile.am: Add new files to the source list.
  70167. * platform/MIMETypeRegistry.cpp:
  70168. (WebCore::initializeSupportedImageMIMETypesForEncoding):
  70169. Add the list of image types supported by GTK.
  70170. * platform/graphics/cairo/ImageBufferCairo.cpp:
  70171. * platform/graphics/gtk/CairoUtilities.cpp: Added.
  70172. (getCairoSurfacePixel): Move this method from ImageGtk.cpp.
  70173. (getGdkPixbufPixel): Move this method from ImageGtk.cpp.
  70174. (cairoImageSurfaceToGdkPixbuf): Move this method from ImageGtk.cpp.
  70175. * platform/graphics/gtk/CairoUtilities.h: Added.
  70176. * platform/graphics/gtk/ImageBufferGtk.cpp: Added.
  70177. (WebCore::ImageBuffer::toDataURL): Use GdkPixbuf to do the conversion to a data url.
  70178. * platform/graphics/gtk/ImageGtk.cpp:
  70179. (WebCore::BitmapImage::getGdkPixbuf): Use the new helper method in CairoUtilities.h.
  70180. 2010-08-02 Xan Lopez <xlopez@igalia.com>
  70181. Reviewed by Gustavo Noronha.
  70182. [GTK] Add support for the Audio element in the DOM bindings
  70183. https://bugs.webkit.org/show_bug.cgi?id=43313
  70184. The IDL definition of some HTMLMediaElement methods does not match
  70185. the C++ implementation API, take this fact into account when
  70186. generating the bindings.
  70187. * bindings/gobject/WebKitHTMLElementWrapperFactory.cpp:
  70188. (WebKit::createAudioWrapper):
  70189. (WebKit::createHTMLElementWrapper):
  70190. * bindings/scripts/CodeGeneratorGObject.pm:
  70191. 2010-08-02 Anders Carlsson <andersca@apple.com>
  70192. Reviewed by Sam Weinig.
  70193. Fix plug-in test failures and remove tests from the Skipped list
  70194. https://bugs.webkit.org/show_bug.cgi?id=43389
  70195. * WebCore.exp.in:
  70196. Export FrameLoader::cancelledError.
  70197. 2010-08-02 Brady Eidson <beidson@apple.com>
  70198. Reviewed by Anders Carlsson.
  70199. Basic WK2 visited link coloring
  70200. https://bugs.webkit.org/show_bug.cgi?id=43377
  70201. No new tests. (No change in behavior)
  70202. * WebCore.exp.in:
  70203. * page/PageGroup.cpp:
  70204. (WebCore::PageGroup::addVisitedLinkHash):
  70205. * page/PageGroup.h:
  70206. 2010-08-02 Martin Robinson <mrobinson@igalia.com>
  70207. Reviewed by Xan Lopez.
  70208. [GTK] Style cleanup for CairoPath.h
  70209. https://bugs.webkit.org/show_bug.cgi?id=43133
  70210. Turn CairoPath into a class, as it has a constructor and destructor.
  70211. Change raw member access to use the new accessor.
  70212. No new tests as functionality has not changed.
  70213. * platform/graphics/cairo/CairoPath.h: Cleanup and indentation fix.
  70214. (WebCore::CairoPath::CairoPath):
  70215. (WebCore::CairoPath::~CairoPath):
  70216. (WebCore::CairoPath::context):
  70217. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  70218. (WebCore::GraphicsContext::addPath): Convert raw member access to accessor access.
  70219. (WebCore::GraphicsContext::clip): Ditto.
  70220. * platform/graphics/cairo/PathCairo.cpp:
  70221. (WebCore::Path::Path): Ditto.
  70222. (WebCore::Path::operator=): Ditto.
  70223. (WebCore::Path::clear): Ditto.
  70224. (WebCore::Path::isEmpty): Ditto.
  70225. (WebCore::Path::currentPoint): Ditto.
  70226. (WebCore::Path::translate): Ditto.
  70227. (WebCore::Path::moveTo): Ditto.
  70228. (WebCore::Path::addLineTo): Ditto.
  70229. (WebCore::Path::addRect): Ditto.
  70230. (WebCore::Path::addQuadCurveTo): Ditto.
  70231. (WebCore::Path::addBezierCurveTo): Ditto.
  70232. (WebCore::Path::addArc): Ditto.
  70233. (WebCore::Path::addArcTo): Ditto.
  70234. (WebCore::Path::addEllipse): Ditto.
  70235. (WebCore::Path::closeSubpath): Ditto.
  70236. (WebCore::Path::boundingRect): Ditto.
  70237. (WebCore::Path::strokeBoundingRect): Ditto.
  70238. (WebCore::Path::contains): Ditto.
  70239. (WebCore::Path::strokeContains): Ditto.
  70240. (WebCore::Path::apply): Ditto.
  70241. (WebCore::Path::transform): Ditto.
  70242. (WebCore::Path::debugString): Ditto.
  70243. 2010-07-20 Ojan Vafai <ojan@chromium.org>
  70244. Reviewed by Eric Seidel.
  70245. focusing the body of a contentEditable iframe resets the selection
  70246. https://bugs.webkit.org/show_bug.cgi?id=42645
  70247. The selection shouldn't be reset to the beginning of the rootEditableElement
  70248. if it is already inside the rootEditableElement.
  70249. Test: editing/selection/focus-contenteditable-iframe.html
  70250. * dom/Element.cpp:
  70251. (WebCore::Element::updateFocusAppearance):
  70252. 2010-07-20 Ojan Vafai <ojan@chromium.org>
  70253. Reviewed by Eric Seidel.
  70254. focusing an unfocused contentEditable element should place the cursor at the beginning
  70255. https://bugs.webkit.org/show_bug.cgi?id=42646
  70256. r14666 made this change for the body and html elements, but not for all contentEditable
  70257. elements. Doing this for all contentEditable elements matches all other browsers.
  70258. * dom/Element.cpp:
  70259. (WebCore::Element::updateFocusAppearance):
  70260. 2010-08-02 Ryosuke Niwa <rniwa@webkit.org>
  70261. Reviewed by Kent Tamura.
  70262. Group functions used in createMarkup (range version) into a class so they are easier to understand
  70263. https://bugs.webkit.org/show_bug.cgi?id=43227
  70264. Added MarkupAccumulatorWrapper to group getStartMarkup, getEndMarkup, joinMarkups, and addStyleMarkup.
  70265. MarkupAccumulatorWrapper is intended to be merged with MarkupAccumulator in the future.
  70266. No new tests added since this is a clean up.
  70267. * editing/markup.cpp:
  70268. (WebCore::MarkupAccumulatorWrapper::MarkupAccumulatorWrapper): Added.
  70269. (WebCore::MarkupAccumulatorWrapper::insertString): Added.
  70270. (WebCore::MarkupAccumulatorWrapper::insertOpenTag): Added.
  70271. (WebCore::MarkupAccumulatorWrapper::insertEndTag): Added.
  70272. (WebCore::MarkupAccumulatorWrapper::wrapWithNode): Added.
  70273. (WebCore::MarkupAccumulatorWrapper::wrapWithStyleNode): Added.
  70274. (WebCore::MarkupAccumulatorWrapper::takeResults): Added.
  70275. (WebCore::createMarkup): Uses MarkupAccumulatorWrapper.
  70276. 2010-08-02 Brian Weinstein <bweinstein@apple.com>
  70277. Add a missing </File> tag to WebCore.vcproj.
  70278. * WebCore.vcproj/WebCore.vcproj:
  70279. 2010-08-02 Mario Sanchez Prada <msanchez@igalia.com>
  70280. Reviewed by Chris Fleizach.
  70281. [GTK] Implement support for get_character_extents and get_range_extents
  70282. https://bugs.webkit.org/show_bug.cgi?id=25677
  70283. Implement get_range_extents() and modify get_character_extents()
  70284. to properly work after "The Great Flattening" occurred in the ATK
  70285. objects hierarchy, some months ago.
  70286. In the case of the GTK port, not just the text controls should be
  70287. considered when it comes to these functions but also those
  70288. composite objects that would also allow to work with text ranges,
  70289. such as headings and links. To take care of this, a new function
  70290. AccessibilityObject::allowsTextRanges() was defined with a default
  70291. implementation in the header file and an specific one for GTK in
  70292. AccessibilityObjectAtk.cpp.
  70293. Based on a previous patch by Joanmarie Diggs.
  70294. * accessibility/AccessibilityObject.cpp:
  70295. (WebCore::AccessibilityObject::visiblePositionRangeForRange):
  70296. * accessibility/AccessibilityObject.h:
  70297. (WebCore::AccessibilityObject::allowsTextRanges): New
  70298. * accessibility/AccessibilityRenderObject.cpp:
  70299. (WebCore::AccessibilityRenderObject::visiblePositionForIndex):
  70300. (WebCore::AccessibilityRenderObject::doAXBoundsForRange):
  70301. * accessibility/gtk/AccessibilityObjectAtk.cpp:
  70302. (WebCore::AccessibilityObject::allowsTextRanges): New
  70303. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  70304. (textExtents):
  70305. (webkit_accessible_text_get_character_extents):
  70306. (webkit_accessible_text_get_range_extents):
  70307. (atk_text_interface_init):
  70308. 2010-08-02 Chris Fleizach <cfleizach@apple.com>
  70309. AX: Support methods for web apps to interact with the native accessibility APIs
  70310. https://bugs.webkit.org/show_bug.cgi?id=43005
  70311. Fix for windows build. No review.
  70312. * WebCore.vcproj/WebCore.vcproj:
  70313. 2010-08-02 Chris Fleizach <cfleizach@apple.com>
  70314. Reviewed by David Kilzer.
  70315. AX: Support methods for web apps to interact with the native accessibility APIs
  70316. https://bugs.webkit.org/show_bug.cgi?id=43005
  70317. Adds a new "accessibility" object that hangs off of "window.navigator".
  70318. This accessibility object will allow web apps to interact with native accessibility APIs
  70319. to provide a richer experience (for screen reader users primarily).
  70320. Test: platform/mac/accessibility/js-accessibility.html
  70321. * Android.derived.v8bindings.mk:
  70322. * Android.jscbindings.mk:
  70323. * DerivedSources.cpp:
  70324. * DerivedSources.make:
  70325. * GNUmakefile.am:
  70326. * WebCore.gypi:
  70327. * WebCore.pri:
  70328. * WebCore.pro:
  70329. * WebCore.vcproj/WebCore.vcproj:
  70330. * WebCore.xcodeproj/project.pbxproj:
  70331. * accessibility/AXObjectCache.h:
  70332. (WebCore::AXObjectCache::):
  70333. * accessibility/Accessibility.cpp: Added.
  70334. (WebCore::Accessibility::Accessibility):
  70335. (WebCore::Accessibility::~Accessibility):
  70336. (WebCore::Accessibility::disconnectFrame):
  70337. (WebCore::Accessibility::screenChanged):
  70338. (WebCore::Accessibility::elementsChanged):
  70339. (WebCore::Accessibility::screenReader):
  70340. * accessibility/Accessibility.h: Added.
  70341. (WebCore::Accessibility::create):
  70342. * accessibility/Accessibility.idl: Added.
  70343. * accessibility/AccessibilityObject.h:
  70344. (WebCore::AccessibilityObject::isScreenReaderRunning):
  70345. (WebCore::AccessibilityObject::screenReaderFocusedElement):
  70346. (WebCore::AccessibilityObject::screenReaderVersion):
  70347. * accessibility/ScreenReader.cpp: Added.
  70348. (WebCore::ScreenReader::ScreenReader):
  70349. (WebCore::ScreenReader::~ScreenReader):
  70350. (WebCore::ScreenReader::disconnectFrame):
  70351. (WebCore::ScreenReader::active):
  70352. (WebCore::ScreenReader::activeElement):
  70353. (WebCore::ScreenReader::version):
  70354. * accessibility/ScreenReader.h: Added.
  70355. (WebCore::ScreenReader::create):
  70356. * accessibility/ScreenReader.idl: Added.
  70357. * accessibility/mac/AXObjectCacheMac.mm:
  70358. (WebCore::AXObjectCache::postPlatformNotification):
  70359. * accessibility/mac/AccessibilityObjectMac.mm:
  70360. (WebCore::AccessibilityObject::isScreenReaderRunning):
  70361. (WebCore::AccessibilityObject::screenReaderFocusedElement):
  70362. (WebCore::AccessibilityObject::screenReaderVersion):
  70363. * page/Navigator.cpp:
  70364. (WebCore::Navigator::disconnectFrame):
  70365. (WebCore::Navigator::accessibility):
  70366. * page/Navigator.h:
  70367. * page/Navigator.idl:
  70368. 2010-08-02 Martin Robinson <mrobinson@igalia.com>
  70369. Reviewed by Xan Lopez.
  70370. [Gtk] DOM listeners get wrong keycodes for some keys
  70371. https://bugs.webkit.org/show_bug.cgi?id=35170
  70372. Emit the proper DOM keyCode for the print screen, keypad insert,
  70373. and keypad delete keys.
  70374. * platform/gtk/KeyEventGtk.cpp:
  70375. (WebCore::windowsKeyCodeForKeyEvent): Fix mapping between GDK key codes
  70376. and Windows key codes.
  70377. 2010-08-02 Dirk Schulze <krit@webkit.org>
  70378. Unreviewed sort of Xcode project file.
  70379. * WebCore.xcodeproj/project.pbxproj:
  70380. 2010-08-02 Kristian Monsen <kristianm@google.com>
  70381. Reviewed by Steve Block.
  70382. Compile fix for Android, adding guards around filter specific code.
  70383. https://bugs.webkit.org/show_bug.cgi?id=43338
  70384. This CL introduced the code:
  70385. http://trac.webkit.org/changeset/64196
  70386. Compile fix only, no new tests.
  70387. * rendering/SVGResourcesCycleSolver.cpp:
  70388. (WebCore::SVGResourcesCycleSolver::breakCycle):
  70389. 2010-08-02 Kristian Monsen <kristianm@google.com>
  70390. Reviewed by Steve Block.
  70391. Compile fix for Android, guard inspector code with ENABLE(INSPECTOR).
  70392. https://bugs.webkit.org/show_bug.cgi?id=43345
  70393. Code introduced in this CL:
  70394. http://trac.webkit.org/changeset/63891
  70395. No new tests, just a compile fix.
  70396. * bindings/v8/ScriptValue.cpp:
  70397. 2010-08-02 Jeremy Orlow <jorlow@chromium.org>
  70398. Speculative revert of 64425 due to Chromium instability
  70399. https://bugs.webkit.org/show_bug.cgi?id=43347
  70400. * GNUmakefile.am:
  70401. * WebCore.exp.in:
  70402. * WebCore.gypi:
  70403. * WebCore.pro:
  70404. * WebCore.vcproj/WebCore.vcproj:
  70405. * WebCore.xcodeproj/project.pbxproj:
  70406. * loader/EmptyClients.h:
  70407. * page/Chrome.cpp:
  70408. * page/Chrome.h:
  70409. * page/ChromeClient.h:
  70410. * platform/PopupMenu.h:
  70411. (WebCore::PopupMenu::create):
  70412. (WebCore::PopupMenu::disconnectClient):
  70413. (WebCore::PopupMenu::client):
  70414. (WebCore::PopupMenu::scrollbar):
  70415. (WebCore::PopupMenu::itemHeight):
  70416. (WebCore::PopupMenu::windowRect):
  70417. (WebCore::PopupMenu::popupHandle):
  70418. (WebCore::PopupMenu::setWasClicked):
  70419. (WebCore::PopupMenu::wasClicked):
  70420. (WebCore::PopupMenu::setScrollOffset):
  70421. (WebCore::PopupMenu::scrollOffset):
  70422. (WebCore::PopupMenu::wheelDelta):
  70423. (WebCore::PopupMenu::scrollbarCapturingMouse):
  70424. (WebCore::PopupMenu::setScrollbarCapturingMouse):
  70425. (WebCore::PopupMenu::isActive):
  70426. (WebCore::PopupMenu::scrollbarCornerPresent):
  70427. * platform/SearchPopupMenu.h:
  70428. (WebCore::SearchPopupMenu::create):
  70429. * platform/brew/PopupMenuBrew.cpp:
  70430. (WebCore::PopupMenu::PopupMenu):
  70431. (WebCore::PopupMenu::~PopupMenu):
  70432. (WebCore::PopupMenu::show):
  70433. (WebCore::PopupMenu::hide):
  70434. (WebCore::PopupMenu::updateFromElement):
  70435. (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  70436. * platform/brew/PopupMenuBrew.h: Removed.
  70437. * platform/brew/SearchPopupMenuBrew.cpp:
  70438. (WebCore::SearchPopupMenu::saveRecentSearches):
  70439. (WebCore::SearchPopupMenu::loadRecentSearches):
  70440. (WebCore::SearchPopupMenu::SearchPopupMenu):
  70441. (WebCore::SearchPopupMenu::enabled):
  70442. * platform/brew/SearchPopupMenuBrew.h: Removed.
  70443. * platform/chromium/PopupMenuChromium.cpp:
  70444. (WebCore::PopupMenu::PopupMenu):
  70445. (WebCore::PopupMenu::~PopupMenu):
  70446. (WebCore::PopupMenu::show):
  70447. (WebCore::PopupMenu::hide):
  70448. (WebCore::PopupMenu::updateFromElement):
  70449. (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  70450. * platform/chromium/PopupMenuChromium.h:
  70451. * platform/chromium/SearchPopupMenuChromium.cpp:
  70452. (WebCore::SearchPopupMenu::SearchPopupMenu):
  70453. (WebCore::SearchPopupMenu::enabled):
  70454. (WebCore::SearchPopupMenu::saveRecentSearches):
  70455. (WebCore::SearchPopupMenu::loadRecentSearches):
  70456. * platform/chromium/SearchPopupMenuChromium.h: Removed.
  70457. * platform/efl/PopupMenuEfl.cpp:
  70458. (WebCore::PopupMenu::PopupMenu):
  70459. (WebCore::PopupMenu::~PopupMenu):
  70460. (WebCore::PopupMenu::show):
  70461. (WebCore::PopupMenu::hide):
  70462. (WebCore::PopupMenu::updateFromElement):
  70463. (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  70464. * platform/efl/PopupMenuEfl.h: Removed.
  70465. * platform/efl/SearchPopupMenuEfl.cpp:
  70466. (WebCore::SearchPopupMenu::SearchPopupMenu):
  70467. (WebCore::SearchPopupMenu::saveRecentSearches):
  70468. (WebCore::SearchPopupMenu::loadRecentSearches):
  70469. (WebCore::SearchPopupMenu::enabled):
  70470. * platform/efl/SearchPopupMenuEfl.h: Removed.
  70471. * platform/gtk/PopupMenuGtk.cpp:
  70472. (WebCore::PopupMenu::PopupMenu):
  70473. (WebCore::PopupMenu::~PopupMenu):
  70474. (WebCore::PopupMenu::show):
  70475. (WebCore::PopupMenu::hide):
  70476. (WebCore::PopupMenu::updateFromElement):
  70477. (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  70478. (WebCore::PopupMenu::menuItemActivated):
  70479. (WebCore::PopupMenu::menuUnmapped):
  70480. (WebCore::PopupMenu::menuPositionFunction):
  70481. (WebCore::PopupMenu::menuRemoveItem):
  70482. * platform/gtk/PopupMenuGtk.h: Removed.
  70483. * platform/gtk/SearchPopupMenuGtk.cpp:
  70484. (WebCore::SearchPopupMenu::SearchPopupMenu):
  70485. (WebCore::SearchPopupMenu::saveRecentSearches):
  70486. (WebCore::SearchPopupMenu::loadRecentSearches):
  70487. (WebCore::SearchPopupMenu::enabled):
  70488. * platform/gtk/SearchPopupMenuGtk.h: Removed.
  70489. * platform/haiku/PopupMenuHaiku.cpp:
  70490. (WebCore::PopupMenuHaiku::PopupMenuHaiku):
  70491. (WebCore::PopupMenuHaiku::~PopupMenuHaiku):
  70492. (WebCore::PopupMenu::PopupMenu):
  70493. (WebCore::PopupMenu::~PopupMenu):
  70494. (WebCore::PopupMenu::show):
  70495. (WebCore::PopupMenu::hide):
  70496. (WebCore::PopupMenu::updateFromElement):
  70497. (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  70498. * platform/haiku/PopupMenuHaiku.h: Removed.
  70499. * platform/haiku/SearchPopupMenuHaiku.cpp:
  70500. (WebCore::SearchPopupMenu::SearchPopupMenu):
  70501. (WebCore::SearchPopupMenu::saveRecentSearches):
  70502. (WebCore::SearchPopupMenu::loadRecentSearches):
  70503. (WebCore::SearchPopupMenu::enabled):
  70504. * platform/haiku/SearchPopupMenuHaiku.h: Removed.
  70505. * platform/mac/PopupMenuMac.h: Removed.
  70506. * platform/mac/PopupMenuMac.mm:
  70507. (WebCore::PopupMenu::PopupMenu):
  70508. (WebCore::PopupMenu::~PopupMenu):
  70509. (WebCore::PopupMenu::clear):
  70510. (WebCore::PopupMenu::populate):
  70511. (WebCore::PopupMenu::show):
  70512. (WebCore::PopupMenu::hide):
  70513. (WebCore::PopupMenu::updateFromElement):
  70514. (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  70515. * platform/mac/SearchPopupMenuMac.h: Removed.
  70516. * platform/mac/SearchPopupMenuMac.mm:
  70517. (WebCore::SearchPopupMenu::SearchPopupMenu):
  70518. (WebCore::SearchPopupMenu::enabled):
  70519. (WebCore::SearchPopupMenu::saveRecentSearches):
  70520. (WebCore::SearchPopupMenu::loadRecentSearches):
  70521. * platform/qt/PopupMenuQt.cpp:
  70522. (WebCore::PopupMenu::PopupMenu):
  70523. (WebCore::PopupMenu::~PopupMenu):
  70524. (WebCore::PopupMenu::show):
  70525. (WebCore::PopupMenu::hide):
  70526. (WebCore::PopupMenu::updateFromElement):
  70527. (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  70528. * platform/qt/PopupMenuQt.h: Removed.
  70529. * platform/qt/QtAbstractWebPopup.h:
  70530. * platform/qt/SearchPopupMenuQt.cpp:
  70531. (WebCore::SearchPopupMenu::SearchPopupMenu):
  70532. (WebCore::SearchPopupMenu::saveRecentSearches):
  70533. (WebCore::SearchPopupMenu::loadRecentSearches):
  70534. (WebCore::SearchPopupMenu::enabled):
  70535. * platform/qt/SearchPopupMenuQt.h: Removed.
  70536. * platform/win/PopupMenuWin.cpp:
  70537. (WebCore::PopupMenu::PopupMenu):
  70538. (WebCore::PopupMenu::~PopupMenu):
  70539. (WebCore::PopupMenu::popupClassName):
  70540. (WebCore::PopupMenu::show):
  70541. (WebCore::PopupMenu::hide):
  70542. (WebCore::PopupMenu::calculatePositionAndSize):
  70543. (WebCore::PopupMenu::setFocusedIndex):
  70544. (WebCore::PopupMenu::visibleItems):
  70545. (WebCore::PopupMenu::listIndexAtPoint):
  70546. (WebCore::PopupMenu::focusedIndex):
  70547. (WebCore::PopupMenu::focusFirst):
  70548. (WebCore::PopupMenu::focusLast):
  70549. (WebCore::PopupMenu::down):
  70550. (WebCore::PopupMenu::up):
  70551. (WebCore::PopupMenu::invalidateItem):
  70552. (WebCore::PopupMenu::clientRect):
  70553. (WebCore::PopupMenu::incrementWheelDelta):
  70554. (WebCore::PopupMenu::reduceWheelDelta):
  70555. (WebCore::PopupMenu::scrollToRevealSelection):
  70556. (WebCore::PopupMenu::updateFromElement):
  70557. (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  70558. (WebCore::PopupMenu::paint):
  70559. (WebCore::PopupMenu::valueChanged):
  70560. (WebCore::PopupMenu::invalidateScrollbarRect):
  70561. (WebCore::PopupMenu::registerClass):
  70562. (WebCore::PopupMenu::PopupMenuWndProc):
  70563. (WebCore::PopupMenu::wndProc):
  70564. * platform/win/PopupMenuWin.h: Removed.
  70565. * platform/win/SearchPopupMenuWin.cpp:
  70566. (WebCore::SearchPopupMenu::SearchPopupMenu):
  70567. (WebCore::SearchPopupMenu::enabled):
  70568. (WebCore::SearchPopupMenu::saveRecentSearches):
  70569. (WebCore::SearchPopupMenu::loadRecentSearches):
  70570. * platform/win/SearchPopupMenuWin.h: Removed.
  70571. * platform/wx/PopupMenuWx.cpp:
  70572. (WebCore::PopupMenu::PopupMenu):
  70573. (WebCore::PopupMenu::~PopupMenu):
  70574. (WebCore::PopupMenu::show):
  70575. (WebCore::PopupMenu::OnMenuItemSelected):
  70576. (WebCore::PopupMenu::hide):
  70577. (WebCore::PopupMenu::updateFromElement):
  70578. (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  70579. * platform/wx/PopupMenuWx.h: Removed.
  70580. * platform/wx/SearchPopupMenuWx.cpp:
  70581. (WebCore::SearchPopupMenu::SearchPopupMenu):
  70582. (WebCore::SearchPopupMenu::saveRecentSearches):
  70583. (WebCore::SearchPopupMenu::loadRecentSearches):
  70584. (WebCore::SearchPopupMenu::enabled):
  70585. * platform/wx/SearchPopupMenuWx.h: Removed.
  70586. * rendering/RenderMenuList.cpp:
  70587. (WebCore::RenderMenuList::adjustInnerStyle):
  70588. (WebCore::RenderMenuList::showPopup):
  70589. * rendering/RenderMenuList.h:
  70590. * rendering/RenderTextControlSingleLine.cpp:
  70591. (WebCore::RenderTextControlSingleLine::~RenderTextControlSingleLine):
  70592. (WebCore::RenderTextControlSingleLine::addSearchResult):
  70593. (WebCore::RenderTextControlSingleLine::showPopup):
  70594. (WebCore::RenderTextControlSingleLine::hidePopup):
  70595. (WebCore::RenderTextControlSingleLine::updateFromElement):
  70596. (WebCore::RenderTextControlSingleLine::valueChanged):
  70597. * rendering/RenderTextControlSingleLine.h:
  70598. 2010-08-02 Markus Goetz <Markus.Goetz@nokia.com>
  70599. Reviewed by Kenneth Rohde Christiansen.
  70600. [Qt] Do not link to SharedBufferCF.cpp
  70601. The Qt port does not need this file.
  70602. We plan to implement the platformData()
  70603. for SharedBuffer at some point soon.
  70604. https://bugs.webkit.org/show_bug.cgi?id=43242
  70605. * WebCore.pro:
  70606. * platform/SharedBuffer.cpp:
  70607. 2010-08-02 Balazs Kelemen <kb@inf.u-szeged.hu>
  70608. Reviewed by Simon Hausmann.
  70609. [Qt] Generate forwarding headers for WebKit2
  70610. https://bugs.webkit.org/show_bug.cgi?id=43336
  70611. * WebCore.pri: Removed header copying logic.
  70612. * WebCore.pro: Add include paths for WebKit2.
  70613. 2010-08-02 Andrey Kosyakov <caseq@chromium.org>
  70614. Reviewed by Pavel Feldman.
  70615. Web Inspector: adding experimental support for WebInspector extensions API.
  70616. https://bugs.webkit.org/show_bug.cgi?id=40425
  70617. Tests: inspector/extensions-api.html
  70618. inspector/extensions.html
  70619. * WebCore.gypi:
  70620. * WebCore.vcproj/WebCore.vcproj:
  70621. * inspector/InspectorController.cpp:
  70622. (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
  70623. (WebCore::InspectorController::didCommitLoad):
  70624. * inspector/InspectorFrontendHost.cpp:
  70625. (WebCore::InspectorFrontendHost::setExtensionAPI):
  70626. * inspector/InspectorFrontendHost.h:
  70627. * inspector/InspectorFrontendHost.idl:
  70628. * inspector/front-end/ElementsPanel.js:
  70629. (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged):
  70630. (WebInspector.ElementsPanel):
  70631. * inspector/front-end/ExtensionAPI.js: Added. An API implementation that gets injected into the extension context.
  70632. (injectedExtensionAPI):
  70633. (injectedExtensionAPI.EventSinkImpl.prototype.addListener):
  70634. (injectedExtensionAPI.EventSinkImpl.prototype.removeListener):
  70635. (injectedExtensionAPI.EventSinkImpl.prototype._fire):
  70636. (injectedExtensionAPI.EventSink):
  70637. (injectedExtensionAPI.InspectorExtensionAPI):
  70638. (injectedExtensionAPI.InspectorExtensionAPI.prototype.log):
  70639. (injectedExtensionAPI.Resources.prototype.getAll):
  70640. (injectedExtensionAPI.Resources.prototype.get return):
  70641. (injectedExtensionAPI.Resources.prototype):
  70642. (injectedExtensionAPI.Panels):
  70643. (injectedExtensionAPI.Panels.prototype.create.callbackWrapper):
  70644. (injectedExtensionAPI.Panels.prototype.create):
  70645. (injectedExtensionAPI.PanelImpl):
  70646. (injectedExtensionAPI.PanelImpl.prototype.createSidebarPane.callbackWrapper):
  70647. (injectedExtensionAPI.PanelImpl.prototype.createSidebarPane):
  70648. (injectedExtensionAPI.ExtensionPanel):
  70649. (injectedExtensionAPI.ExtensionSidebarPaneImpl):
  70650. (injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setHeight):
  70651. (injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setExpanded):
  70652. (injectedExtensionAPI.InspectedWindow):
  70653. (injectedExtensionAPI.InspectedWindow.prototype.reload):
  70654. (injectedExtensionAPI.InspectedWindow.prototype.evaluate):
  70655. (injectedExtensionAPI.ExtensionServerClient.prototype.sendRequest):
  70656. (injectedExtensionAPI.ExtensionServerClient.prototype.registerHandler):
  70657. (injectedExtensionAPI.ExtensionServerClient.prototype.nextObjectId):
  70658. (injectedExtensionAPI.ExtensionServerClient.prototype._registerCallback):
  70659. (injectedExtensionAPI.ExtensionServerClient.prototype._onCallback):
  70660. (injectedExtensionAPI.ExtensionServerClient.prototype._onMessage):
  70661. (injectedExtensionAPI.expandURL):
  70662. (injectedExtensionAPI.):
  70663. * inspector/front-end/ExtensionPanel.js: Added. A class that provides WebInspector's Panel interface to the inspector, hosts extension panel within an IFrame and proxies Panel callbacks to the extension.
  70664. (WebInspector.ExtensionPanel):
  70665. (WebInspector.ExtensionPanel.prototype.get defaultFocusedElement):
  70666. (WebInspector.ExtensionPanel.prototype.updateMainViewWidth):
  70667. (WebInspector.ExtensionPanel.prototype.searchCanceled):
  70668. (WebInspector.ExtensionPanel.prototype.performSearch):
  70669. (WebInspector.ExtensionPanel.prototype.jumpToNextSearchResult):
  70670. (WebInspector.ExtensionPanel.prototype.jumpToPreviousSearchResult):
  70671. (WebInspector.ExtensionPanel.prototype._addStyleRule):
  70672. * inspector/front-end/ExtensionRegistryStub.js: Added. A stub for ExtensionRegistry class that is meant to provide a list of extensions. Actual implementations may be browser-specfic.
  70673. (.WebInspector.InspectorExtensionRegistryStub):
  70674. (.WebInspector.InspectorExtensionRegistryStub.prototype.getExtensionsAsync):
  70675. * inspector/front-end/ExtensionServer.js: Added. Communicates with ExtensionAPI via DOM messaging and proxies requests to WebInspector classes.
  70676. (WebInspector.ExtensionServer):
  70677. (WebInspector.ExtensionServer.prototype.notifyPanelShown):
  70678. (WebInspector.ExtensionServer.prototype.notifyObjectSelected):
  70679. (WebInspector.ExtensionServer.prototype.notifyResourceFinished):
  70680. (WebInspector.ExtensionServer.prototype.notifySearchAction):
  70681. (WebInspector.ExtensionServer.prototype.notifyInspectedPageLoaded):
  70682. (WebInspector.ExtensionServer.prototype.notifyInspectedURLChanged):
  70683. (WebInspector.ExtensionServer.prototype.notifyInspectorReset):
  70684. (WebInspector.ExtensionServer.prototype._convertResource):
  70685. (WebInspector.ExtensionServer.prototype._postNotification):
  70686. (WebInspector.ExtensionServer.prototype._onSubscribe):
  70687. (WebInspector.ExtensionServer.prototype._onUnsubscribe):
  70688. (WebInspector.ExtensionServer.prototype._onCreatePanel):
  70689. (WebInspector.ExtensionServer.prototype._onCreateSidebar):
  70690. (WebInspector.ExtensionServer.prototype._createClientIframe):
  70691. (WebInspector.ExtensionServer.prototype._onSetSidebarHeight):
  70692. (WebInspector.ExtensionServer.prototype._onSetSidebarExpansion):
  70693. (WebInspector.ExtensionServer.prototype._onLog):
  70694. (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage):
  70695. (WebInspector.ExtensionServer.prototype._onRevealAndSelect):
  70696. (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource):
  70697. (WebInspector.ExtensionServer.prototype._dispatchCallback):
  70698. (WebInspector.ExtensionServer.prototype._onGetResources):
  70699. (WebInspector.ExtensionServer.prototype.initExtensions):
  70700. (WebInspector.ExtensionServer.prototype._addExtensions):
  70701. (WebInspector.ExtensionServer.prototype._onWindowMessage):
  70702. (WebInspector.ExtensionServer.prototype._onmessage):
  70703. (WebInspector.ExtensionServer.prototype._registerHandler):
  70704. (WebInspector.ExtensionStatus):
  70705. (WebInspector.addExtensions):
  70706. * inspector/front-end/InjectedScript.js:
  70707. (injectedScriptConstructor):
  70708. * inspector/front-end/InjectedScriptAccess.js:
  70709. * inspector/front-end/InspectorFrontendHostStub.js:
  70710. (.WebInspector.InspectorFrontendHostStub.prototype.setExtensionAPI):
  70711. (.WebInspector.InspectorFrontendHostStub.prototype.canAttachWindow):
  70712. * inspector/front-end/WebKit.qrc:
  70713. * inspector/front-end/inspector.html:
  70714. * inspector/front-end/inspector.js:
  70715. (WebInspector.loaded):
  70716. (WebInspector.updateResource):
  70717. (WebInspector.reset):
  70718. (WebInspector.inspectedURLChanged):
  70719. (WebInspector.didCommitLoad):
  70720. 2010-08-02 Ilya Tikhonovsky <loislo@chromium.org>
  70721. Reviewed by Yury Semikhatsky.
  70722. WebInspector: Inspector is not working when it is loaded as html page.
  70723. https://bugs.webkit.org/show_bug.cgi?id=43334
  70724. * inspector/front-end/InspectorFrontendHostStub.js:
  70725. (.WebInspector.InspectorFrontendHostStub.prototype.canAttachWindow):
  70726. (.WebInspector.InspectorFrontendHostStub.prototype.sendMessageToBackend):
  70727. 2010-08-01 Nikolas Zimmermann <nzimmermann@rim.com>
  70728. Reviewed by Dirk Schulze.
  70729. SVG gradients do not update when scripted via xlink
  70730. https://bugs.webkit.org/show_bug.cgi?id=42953
  70731. Unify cycle detection logic for chainable (through xlink:href) and ordinary resources.
  70732. All operate on the render tree now, instead of falling back to the DOM tree for xlink:href queries.
  70733. When linking resources, register as regular client, so the regular update mechanisms work as expected.
  70734. <linearGradient id="foo"><stop../> </linearGradient>
  70735. <linearGradient id="bar" xlink:href="#foo"/>
  70736. <rect fill="url(#bar)"/>
  70737. Without that the rect won't receive invalidation notifications, as foo <-> bar had no connection.
  70738. Fixes the last outstanding class of invalidations. Also speeds up the cycle detetion, when using chained resources,
  70739. as no SVG DOM queries have to be executed anymore.
  70740. Test: svg/custom/js-update-stop-linked-gradient.svg
  70741. * rendering/RenderSVGResourceContainer.cpp:
  70742. (WebCore::RenderSVGResourceContainer::markAllClientsForInvalidation):
  70743. (WebCore::linkedResourceForContainer):
  70744. * rendering/SVGResources.cpp:
  70745. (WebCore::SVGResources::SVGResources):
  70746. (WebCore::chainableResourceTags):
  70747. (WebCore::targetReferenceFromResource):
  70748. (WebCore::registerPendingResource):
  70749. (WebCore::SVGResources::buildCachedResources):
  70750. (WebCore::SVGResources::invalidateClient):
  70751. (WebCore::SVGResources::resourceDestroyed):
  70752. (WebCore::SVGResources::buildSetOfResources):
  70753. (WebCore::SVGResources::setLinkedResource):
  70754. (WebCore::SVGResources::resetLinkedResource):
  70755. (WebCore::SVGResources::dump):
  70756. * rendering/SVGResources.h:
  70757. (WebCore::SVGResources::linkedResource):
  70758. * rendering/SVGResourcesCycleSolver.cpp:
  70759. (WebCore::SVGResourcesCycleSolver::resolveCycles):
  70760. (WebCore::SVGResourcesCycleSolver::breakCycle):
  70761. * rendering/SVGResourcesCycleSolver.h:
  70762. * svg/SVGFilterElement.cpp:
  70763. (WebCore::SVGFilterElement::SVGFilterElement):
  70764. * svg/SVGFilterElement.h:
  70765. * svg/SVGGradientElement.cpp:
  70766. (WebCore::SVGGradientElement::SVGGradientElement):
  70767. * svg/SVGGradientElement.h:
  70768. * svg/SVGLinearGradientElement.cpp:
  70769. (WebCore::SVGLinearGradientElement::collectGradientProperties):
  70770. * svg/SVGPatternElement.cpp:
  70771. (WebCore::SVGPatternElement::SVGPatternElement):
  70772. (WebCore::SVGPatternElement::collectPatternProperties):
  70773. * svg/SVGPatternElement.h:
  70774. * svg/SVGRadialGradientElement.cpp:
  70775. (WebCore::SVGRadialGradientElement::collectGradientProperties):
  70776. 2010-07-31 Dan Bernstein <mitz@apple.com>
  70777. Try to fix the Windows build when zlib is not available.
  70778. * platform/graphics/WOFFFileFormat.cpp:
  70779. 2010-07-31 Dan Bernstein <mitz@apple.com>
  70780. Try to fix the Windows build when zlib is not available.
  70781. * platform/graphics/WOFFFileFormat.cpp:
  70782. 2010-07-31 Dan Bernstein <mitz@apple.com>
  70783. Try to fix the Windows build when zlib is not available.
  70784. * platform/graphics/WOFFFileFormat.cpp:
  70785. 2010-07-31 Dan Bernstein <mitz@apple.com>
  70786. Fix typo in attempted build fix.
  70787. * platform/graphics/WOFFFileFormat.cpp:
  70788. 2010-07-31 Dan Bernstein <mitz@apple.com>
  70789. Try to fix the Windows build when zlib is not available.
  70790. * platform/graphics/WOFFFileFormat.cpp:
  70791. 2010-07-31 Dan Bernstein <mitz@apple.com>
  70792. Reviewed by Darin Adler.
  70793. <rdar://problem/8234766> Add WOFF support for @font-face
  70794. https://bugs.webkit.org/show_bug.cgi?id=31302
  70795. * WebCore.vcproj/WebCore.vcproj: Added WOFFFileFormat.{cpp,h}.
  70796. * WebCore.vcproj/WebCoreCommon.vsprops: Added $(WebKitLibraries)\include\zlib to the header search path.
  70797. * WebCore.xcodeproj/project.pbxproj: Added WOFFFileFormat.{cpp,h} and linking against libz.
  70798. * css/CSSFontFaceSrcValue.cpp:
  70799. (WebCore::CSSFontFaceSrcValue::isSupportedFormat): Replaced hard-coded list of supported formats with
  70800. call to FontCustomPlatformData::supportsFormat().
  70801. * platform/graphics/WOFFFileFormat.cpp: Added.
  70802. (WebCore::isWOFF): Checks if the buffer has the WOFF signature.
  70803. (WebCore::convertWOFFToSfnt): Extracts the sfnt payload of a WOFF package.
  70804. * platform/graphics/WOFFFileFormat.h: Added.
  70805. * platform/graphics/cairo/FontCustomPlatformData.cpp:
  70806. (WebCore::FontCustomPlatformData::supportsFormat): Added. Returns true for truetype and opentype.
  70807. * platform/graphics/cairo/FontCustomPlatformData.h:
  70808. * platform/graphics/chromium/FontCustomPlatformData.cpp:
  70809. (WebCore::FontCustomPlatformData::supportsFormat): Added. Returns true for truetype and opentype,
  70810. and also for woff if the OpenType sanitizer is enabled.
  70811. * platform/graphics/chromium/FontCustomPlatformData.h:
  70812. * platform/graphics/gtk/FontCustomPlatformDataPango.cpp:
  70813. (WebCore::FontCustomPlatformData::supportsFormat): Added. Returns false.
  70814. * platform/graphics/haiku/FontCustomPlatformData.cpp:
  70815. (WebCore::FontCustomPlatformData::supportsFormat): Ditto.
  70816. * platform/graphics/haiku/FontCustomPlatformData.h:
  70817. * platform/graphics/mac/FontCustomPlatformData.cpp:
  70818. (WebCore::freeSfntData):
  70819. (WebCore::createFontCustomPlatformData): If the OpenType font sanitizer is not enabled, use convertWOFFToSfnt().
  70820. (WebCore::FontCustomPlatformData::supportsFormat): Added. Returns true for truetype, opentype and woff.
  70821. * platform/graphics/mac/FontCustomPlatformData.h:
  70822. * platform/graphics/qt/FontCustomPlatformData.h:
  70823. * platform/graphics/qt/FontCustomPlatformDataQt.cpp:
  70824. (WebCore::FontCustomPlatformData::supportsFormat): Added. Returns true for truetype and opentype.
  70825. * platform/graphics/win/FontCustomPlatformData.cpp:
  70826. (WebCore::createFontCustomPlatformData): If the OpenType font sanitizer is not enabled, use convertWOFFToSfnt().
  70827. (WebCore::FontCustomPlatformData::supportsFormat): Added. Returns true for truetype, opentype and woff.
  70828. * platform/graphics/win/FontCustomPlatformData.h:
  70829. * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
  70830. (WebCore::FontCustomPlatformData::supportsFormat): Added. Returns true for truetype and opentype.
  70831. * platform/graphics/win/FontCustomPlatformDataCairo.h:
  70832. * platform/graphics/wince/FontCustomPlatformData.cpp:
  70833. (WebCore::FontCustomPlatformData::supportsFormat): Ditto.
  70834. * platform/graphics/wince/FontCustomPlatformData.h:
  70835. 2010-07-31 Ryosuke Niwa <rniwa@webkit.org>
  70836. Reviewed by Ojan Vafai.
  70837. SplitElementCommand shouldn't be duplicating id attribute
  70838. https://bugs.webkit.org/show_bug.cgi?id=27156
  70839. Modified SplitElementCommand to delete the id attribute from the second element when splitting an element.
  70840. Since this causes WebKit not to merge split elements, added shouldSplitElement to ApplyStyleCommand which
  70841. determines the necessity of splitting the element.
  70842. To share code between shouldSplitElement and removeInlineStyleFromElement (extracted from applyInlineStyle)
  70843. dontRemove was added as the 3rd argument to removeHTMLFontStyle, removeHTMLBidiEmbeddingStyle, and removeCSSStyle.
  70844. Test: editing/style/split-element-id-duplication.html
  70845. * editing/ApplyStyleCommand.cpp:
  70846. (WebCore::ApplyStyleCommand::applyBlockStyle): Added 3rd argument for removeCSSStyle.
  70847. (WebCore::ApplyStyleCommand::applyInlineStyle): Calls shouldSplitElement.
  70848. (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Extracted from removeInlineStyle.
  70849. (WebCore::ApplyStyleCommand::shouldRemoveInlineStyleFromElement): Inline helper for removeInlineStyleFromElement.
  70850. (WebCore::ApplyStyleCommand::removeHTMLFontStyle): Added dontRemove.
  70851. (WebCore::ApplyStyleCommand::removeHTMLBidiEmbeddingStyle): Added dontRemove.
  70852. (WebCore::ApplyStyleCommand::removeCSSStyle): Added dontRemove.
  70853. (WebCore::ApplyStyleCommand::removeInlineStyle): Calls removeInlineStyleFromElement.
  70854. (WebCore::ApplyStyleCommand::splitTextElementAtStart): Removed the call to splitTextAtStart.
  70855. Branching is now done in applyInlineStyle.
  70856. (WebCore::ApplyStyleCommand::splitTextElementAtEnd): Ditto for splitTextAtEnd.
  70857. (WebCore::ApplyStyleCommand::shouldSplitElement): Added.
  70858. * editing/ApplyStyleCommand.h:
  70859. * editing/SplitElementCommand.cpp:
  70860. (WebCore::SplitElementCommand::executeApply): Deletes the id attribute from the second element.
  70861. (WebCore::SplitElementCommand::doUnapply): Recovers the id attribute of the second element.
  70862. 2010-07-31 Luiz Agostini <luiz.agostini@openbossa.org>
  70863. Build fix: Windows.
  70864. * platform/win/PopupMenuWin.h:
  70865. 2010-07-31 Luiz Agostini <luiz.agostini@openbossa.org>
  70866. Windows build fix.
  70867. * platform/win/PopupMenuWin.cpp:
  70868. (WebCore::PopupMenuWin::PopupMenuWndProc):
  70869. 2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>
  70870. Reviewed by Darin Fisher.
  70871. PopupMenu refactoring in preparation to WebKit2
  70872. https://bugs.webkit.org/show_bug.cgi?id=42592
  70873. Classes PopupMenu and SearchPopupMenu have been made pure virtual.
  70874. * platform/PopupMenu.h:
  70875. (WebCore::PopupMenu::~PopupMenu):
  70876. * platform/SearchPopupMenu.h:
  70877. (WebCore::SearchPopupMenu::~SearchPopupMenu):
  70878. Classes RenderMenuList and RenderTexyControlSingleLine have been changed to use
  70879. the new pure virtual PopupMenu and SearchPopupMenu.
  70880. * rendering/RenderMenuList.cpp:
  70881. (WebCore::RenderMenuList::adjustInnerStyle):
  70882. (WebCore::RenderMenuList::showPopup):
  70883. * rendering/RenderMenuList.h:
  70884. * rendering/RenderTextControlSingleLine.cpp:
  70885. (WebCore::RenderTextControlSingleLine::~RenderTextControlSingleLine):
  70886. (WebCore::RenderTextControlSingleLine::addSearchResult):
  70887. (WebCore::RenderTextControlSingleLine::showPopup):
  70888. (WebCore::RenderTextControlSingleLine::hidePopup):
  70889. (WebCore::RenderTextControlSingleLine::updateFromElement):
  70890. (WebCore::RenderTextControlSingleLine::valueChanged):
  70891. * rendering/RenderTextControlSingleLine.h:
  70892. Chrome and ChromeClient were made responsible for providing instances of classes
  70893. PopupMenu and SearchPopupMenu to its users.
  70894. * loader/EmptyClients.h:
  70895. (WebCore::EmptyPopupMenu::show):
  70896. (WebCore::EmptyPopupMenu::hide):
  70897. (WebCore::EmptyPopupMenu::updateFromElement):
  70898. (WebCore::EmptyPopupMenu::disconnectClient):
  70899. (WebCore::EmptySearchPopupMenu::popupMenu):
  70900. (WebCore::EmptySearchPopupMenu::saveRecentSearches):
  70901. (WebCore::EmptySearchPopupMenu::loadRecentSearches):
  70902. (WebCore::EmptySearchPopupMenu::enabled):
  70903. (WebCore::EmptyChromeClient::selectItemWritingDirectionIsNatural):
  70904. (WebCore::EmptyChromeClient::createPopupMenu):
  70905. (WebCore::EmptyChromeClient::createSearchPopupMenu):
  70906. * page/Chrome.cpp:
  70907. (WebCore::Chrome::selectItemWritingDirectionIsNatural):
  70908. (WebCore::Chrome::createPopupMenu):
  70909. (WebCore::Chrome::createSearchPopupMenu):
  70910. * page/Chrome.h:
  70911. * page/ChromeClient.h:
  70912. Original contents of files PopupMenu.h and SearchPopupMenu.h have been splited
  70913. in several files, two for each platform (PopupMenuXXX.h and SearchPopupMenuXXX.h).
  70914. Each of new the files contain the concrete classes that inherit form PopupMenu or
  70915. SearchPopupMenu and are specific for the corresponding platform.
  70916. brew:
  70917. * platform/brew/PopupMenuBrew.cpp:
  70918. (WebCore::PopupMenuBrew::PopupMenuBrew):
  70919. (WebCore::PopupMenuBrew::~PopupMenuBrew):
  70920. (WebCore::PopupMenuBrew::disconnectClient):
  70921. (WebCore::PopupMenuBrew::show):
  70922. (WebCore::PopupMenuBrew::hide):
  70923. (WebCore::PopupMenuBrew::updateFromElement):
  70924. * platform/brew/PopupMenuBrew.h: Added.
  70925. (WebCore::PopupMenuBrew::client):
  70926. * platform/brew/SearchPopupMenuBrew.cpp:
  70927. (WebCore::SearchPopupMenuBrew::saveRecentSearches):
  70928. (WebCore::SearchPopupMenuBrew::loadRecentSearches):
  70929. (WebCore::SearchPopupMenuBrew::SearchPopupMenuBrew):
  70930. (WebCore::SearchPopupMenuBrew::enabled):
  70931. (WebCore::SearchPopupMenuBrew::popupMenu):
  70932. * platform/brew/SearchPopupMenuBrew.h: Added.
  70933. chromium:
  70934. * WebCore.gypi:
  70935. * platform/chromium/PopupMenuChromium.cpp:
  70936. (WebCore::PopupMenuChromium::PopupMenuChromium):
  70937. (WebCore::PopupMenuChromium::~PopupMenuChromium):
  70938. (WebCore::PopupMenuChromium::show):
  70939. (WebCore::PopupMenuChromium::hide):
  70940. (WebCore::PopupMenuChromium::updateFromElement):
  70941. (WebCore::PopupMenuChromium::disconnectClient):
  70942. * platform/chromium/PopupMenuChromium.h:
  70943. (WebCore::PopupMenuChromium::client):
  70944. * platform/chromium/SearchPopupMenuChromium.cpp:
  70945. (WebCore::SearchPopupMenuChromium::SearchPopupMenuChromium):
  70946. (WebCore::SearchPopupMenuChromium::popupMenu):
  70947. (WebCore::SearchPopupMenuChromium::enabled):
  70948. (WebCore::SearchPopupMenuChromium::saveRecentSearches):
  70949. (WebCore::SearchPopupMenuChromium::loadRecentSearches):
  70950. * platform/chromium/SearchPopupMenuChromium.h: Added.
  70951. efl:
  70952. * platform/efl/PopupMenuEfl.cpp:
  70953. (WebCore::PopupMenuEfl::PopupMenuEfl):
  70954. (WebCore::PopupMenuEfl::~PopupMenuEfl):
  70955. (WebCore::PopupMenuEfl::show):
  70956. (WebCore::PopupMenuEfl::hide):
  70957. (WebCore::PopupMenuEfl::updateFromElement):
  70958. (WebCore::PopupMenuEfl::disconnectClient):
  70959. * platform/efl/PopupMenuEfl.h: Added.
  70960. (WebCore::PopupMenuEfl::client):
  70961. * platform/efl/SearchPopupMenuEfl.cpp:
  70962. (WebCore::SearchPopupMenuEfl::SearchPopupMenuEfl):
  70963. (WebCore::SearchPopupMenuEfl::popupMenu):
  70964. (WebCore::SearchPopupMenuEfl::saveRecentSearches):
  70965. (WebCore::SearchPopupMenuEfl::loadRecentSearches):
  70966. (WebCore::SearchPopupMenuEfl::enabled):
  70967. * platform/efl/SearchPopupMenuEfl.h: Added.
  70968. gtk:
  70969. * GNUmakefile.am:
  70970. * platform/gtk/PopupMenuGtk.cpp:
  70971. (WebCore::PopupMenuGtk::PopupMenuGtk):
  70972. (WebCore::PopupMenuGtk::~PopupMenuGtk):
  70973. (WebCore::PopupMenuGtk::show):
  70974. (WebCore::PopupMenuGtk::hide):
  70975. (WebCore::PopupMenuGtk::updateFromElement):
  70976. (WebCore::PopupMenuGtk::disconnectClient):
  70977. (WebCore::PopupMenuGtk::menuItemActivated):
  70978. (WebCore::PopupMenuGtk::menuUnmapped):
  70979. (WebCore::PopupMenuGtk::menuPositionFunction):
  70980. (WebCore::PopupMenuGtk::menuRemoveItem):
  70981. * platform/gtk/PopupMenuGtk.h: Added.
  70982. (WebCore::PopupMenuGtk::client):
  70983. * platform/gtk/SearchPopupMenuGtk.cpp:
  70984. (WebCore::SearchPopupMenuGtk::SearchPopupMenuGtk):
  70985. (WebCore::SearchPopupMenuGtk::popupMenu):
  70986. (WebCore::SearchPopupMenuGtk::saveRecentSearches):
  70987. (WebCore::SearchPopupMenuGtk::loadRecentSearches):
  70988. (WebCore::SearchPopupMenuGtk::enabled):
  70989. * platform/gtk/SearchPopupMenuGtk.h: Added.
  70990. haiku:
  70991. * platform/haiku/PopupMenuHaiku.cpp:
  70992. (WebCore::HaikuPopup::HaikuPopup):
  70993. (WebCore::HaikuPopup::~HaikuPopup):
  70994. (WebCore::PopupMenuHaiku::PopupMenuHaiku):
  70995. (WebCore::PopupMenuHaiku::~PopupMenuHaiku):
  70996. (WebCore::PopupMenuHaiku::disconnectClient):
  70997. (WebCore::PopupMenuHaiku::show):
  70998. (WebCore::PopupMenuHaiku::hide):
  70999. (WebCore::PopupMenuHaiku::updateFromElement):
  71000. * platform/haiku/PopupMenuHaiku.h: Added.
  71001. (WebCore::PopupMenuHaiku::disconnectClient):
  71002. (WebCore::PopupMenuHaiku::client):
  71003. * platform/haiku/SearchPopupMenuHaiku.cpp:
  71004. (WebCore::SearchPopupMenuHaiku::SearchPopupMenuHaiku):
  71005. (WebCore::SearchPopupMenuHaiku::saveRecentSearches):
  71006. (WebCore::SearchPopupMenuHaiku::loadRecentSearches):
  71007. (WebCore::SearchPopupMenuHaiku::enabled):
  71008. (WebCore::SearchPopupMenuHaiku::popupMenu):
  71009. * platform/haiku/SearchPopupMenuHaiku.h: Added.
  71010. mac:
  71011. * WebCore.exp.in:
  71012. * WebCore.xcodeproj/project.pbxproj:
  71013. * platform/mac/PopupMenuMac.h: Added.
  71014. (WebCore::PopupMenuMac::disconnectClient):
  71015. (WebCore::PopupMenuMac::client):
  71016. * platform/mac/PopupMenuMac.mm:
  71017. (WebCore::PopupMenuMac::PopupMenuMac):
  71018. (WebCore::PopupMenuMac::~PopupMenuMac):
  71019. (WebCore::PopupMenuMac::clear):
  71020. (WebCore::PopupMenuMac::populate):
  71021. (WebCore::PopupMenuMac::show):
  71022. (WebCore::PopupMenuMac::hide):
  71023. (WebCore::PopupMenuMac::updateFromElement):
  71024. (WebCore::PopupMenuMac::itemWritingDirectionIsNatural):
  71025. * platform/mac/SearchPopupMenuMac.h: Added.
  71026. * platform/mac/SearchPopupMenuMac.mm:
  71027. (WebCore::SearchPopupMenuMac::SearchPopupMenuMac):
  71028. (WebCore::SearchPopupMenuMac::popupMenu):
  71029. (WebCore::SearchPopupMenuMac::enabled):
  71030. (WebCore::SearchPopupMenuMac::saveRecentSearches):
  71031. (WebCore::SearchPopupMenuMac::loadRecentSearches):
  71032. qt:
  71033. * WebCore.pro:
  71034. * platform/qt/PopupMenuQt.cpp:
  71035. (WebCore::PopupMenuQt::PopupMenuQt):
  71036. (WebCore::PopupMenuQt::~PopupMenuQt):
  71037. (WebCore::PopupMenuQt::disconnectClient):
  71038. (WebCore::PopupMenuQt::show):
  71039. (WebCore::PopupMenuQt::hide):
  71040. (WebCore::PopupMenuQt::updateFromElement):
  71041. * platform/qt/PopupMenuQt.h: Added.
  71042. * platform/qt/QtAbstractWebPopup.h:
  71043. * platform/qt/SearchPopupMenuQt.cpp:
  71044. (WebCore::SearchPopupMenuQt::SearchPopupMenuQt):
  71045. (WebCore::SearchPopupMenuQt::popupMenu):
  71046. (WebCore::SearchPopupMenuQt::saveRecentSearches):
  71047. (WebCore::SearchPopupMenuQt::loadRecentSearches):
  71048. (WebCore::SearchPopupMenuQt::enabled):
  71049. * platform/qt/SearchPopupMenuQt.h: Added.
  71050. win:
  71051. * WebCore.vcproj/WebCore.vcproj:
  71052. * platform/win/PopupMenuWin.cpp:
  71053. (WebCore::PopupMenuWin::PopupMenuWin):
  71054. (WebCore::PopupMenuWin::~PopupMenuWin):
  71055. (WebCore::PopupMenuWin::disconnectClient):
  71056. (WebCore::PopupMenuWin::popupClassName):
  71057. (WebCore::PopupMenuWin::show):
  71058. (WebCore::PopupMenuWin::hide):
  71059. (WebCore::PopupMenuWin::calculatePositionAndSize):
  71060. (WebCore::PopupMenuWin::setFocusedIndex):
  71061. (WebCore::PopupMenuWin::visibleItems):
  71062. (WebCore::PopupMenuWin::listIndexAtPoint):
  71063. (WebCore::PopupMenuWin::focusedIndex):
  71064. (WebCore::PopupMenuWin::focusFirst):
  71065. (WebCore::PopupMenuWin::focusLast):
  71066. (WebCore::PopupMenuWin::down):
  71067. (WebCore::PopupMenuWin::up):
  71068. (WebCore::PopupMenuWin::invalidateItem):
  71069. (WebCore::PopupMenuWin::clientRect):
  71070. (WebCore::PopupMenuWin::incrementWheelDelta):
  71071. (WebCore::PopupMenuWin::reduceWheelDelta):
  71072. (WebCore::PopupMenuWin::scrollToRevealSelection):
  71073. (WebCore::PopupMenuWin::updateFromElement):
  71074. (WebCore::PopupMenuWin::paint):
  71075. (WebCore::PopupMenuWin::valueChanged):
  71076. (WebCore::PopupMenuWin::invalidateScrollbarRect):
  71077. (WebCore::PopupMenuWin::registerClass):
  71078. (WebCore::PopupMenuWin::PopupMenuWndProc):
  71079. (WebCore::PopupMenuWin::wndProc):
  71080. * platform/win/PopupMenuWin.h: Added.
  71081. (WebCore::PopupMenuWin::client):
  71082. (WebCore::PopupMenuWin::scrollbar):
  71083. (WebCore::PopupMenuWin::itemHeight):
  71084. (WebCore::PopupMenuWin::windowRect):
  71085. (WebCore::PopupMenuWin::popupHandle):
  71086. (WebCore::PopupMenuWin::setWasClicked):
  71087. (WebCore::PopupMenuWin::wasClicked):
  71088. (WebCore::PopupMenuWin::setScrollOffset):
  71089. (WebCore::PopupMenuWin::scrollOffset):
  71090. (WebCore::PopupMenuWin::wheelDelta):
  71091. (WebCore::PopupMenuWin::scrollbarCapturingMouse):
  71092. (WebCore::PopupMenuWin::setScrollbarCapturingMouse):
  71093. * platform/win/SearchPopupMenuWin.cpp:
  71094. (WebCore::SearchPopupMenuWin::SearchPopupMenuWin):
  71095. (WebCore::SearchPopupMenuWin::popupMenu):
  71096. (WebCore::SearchPopupMenuWin::enabled):
  71097. (WebCore::SearchPopupMenuWin::saveRecentSearches):
  71098. (WebCore::SearchPopupMenuWin::loadRecentSearches):
  71099. * platform/win/SearchPopupMenuWin.h: Added.
  71100. wx:
  71101. * platform/wx/PopupMenuWx.cpp:
  71102. (WebCore::PopupMenuWx::PopupMenuWx):
  71103. (WebCore::PopupMenuWx::~PopupMenuWx):
  71104. (WebCore::PopupMenuWx::disconnectClient):
  71105. (WebCore::PopupMenuWx::show):
  71106. (WebCore::PopupMenuWx::OnMenuItemSelected):
  71107. (WebCore::PopupMenuWx::hide):
  71108. (WebCore::PopupMenuWx::updateFromElement):
  71109. * platform/wx/PopupMenuWx.h: Added.
  71110. (WebCore::PopupMenuWx::client):
  71111. * platform/wx/SearchPopupMenuWx.cpp:
  71112. (WebCore::SearchPopupMenuWx::SearchPopupMenuWx):
  71113. (WebCore::SearchPopupMenuWx::saveRecentSearches):
  71114. (WebCore::SearchPopupMenuWx::loadRecentSearches):
  71115. (WebCore::SearchPopupMenuWx::enabled):
  71116. (WebCore::SearchPopupMenuWx::popupMenu):
  71117. * platform/wx/SearchPopupMenuWx.h: Added.
  71118. 2010-07-31 Sheriff Bot <webkit.review.bot@gmail.com>
  71119. Unreviewed, rolling out r64422.
  71120. http://trac.webkit.org/changeset/64422
  71121. https://bugs.webkit.org/show_bug.cgi?id=43304
  71122. Build fixes are needed for Snow Leopard and Windows.
  71123. (Requested by lca on #webkit).
  71124. * GNUmakefile.am:
  71125. * WebCore.exp.in:
  71126. * WebCore.gypi:
  71127. * WebCore.pro:
  71128. * WebCore.vcproj/WebCore.vcproj:
  71129. * WebCore.xcodeproj/project.pbxproj:
  71130. * loader/EmptyClients.h:
  71131. * page/Chrome.cpp:
  71132. * page/Chrome.h:
  71133. * page/ChromeClient.h:
  71134. * platform/PopupMenu.h:
  71135. (WebCore::PopupMenu::create):
  71136. (WebCore::PopupMenu::disconnectClient):
  71137. (WebCore::PopupMenu::client):
  71138. (WebCore::PopupMenu::scrollbar):
  71139. (WebCore::PopupMenu::itemHeight):
  71140. (WebCore::PopupMenu::windowRect):
  71141. (WebCore::PopupMenu::popupHandle):
  71142. (WebCore::PopupMenu::setWasClicked):
  71143. (WebCore::PopupMenu::wasClicked):
  71144. (WebCore::PopupMenu::setScrollOffset):
  71145. (WebCore::PopupMenu::scrollOffset):
  71146. (WebCore::PopupMenu::wheelDelta):
  71147. (WebCore::PopupMenu::scrollbarCapturingMouse):
  71148. (WebCore::PopupMenu::setScrollbarCapturingMouse):
  71149. (WebCore::PopupMenu::isActive):
  71150. (WebCore::PopupMenu::scrollbarCornerPresent):
  71151. * platform/SearchPopupMenu.h:
  71152. (WebCore::SearchPopupMenu::create):
  71153. * platform/brew/PopupMenuBrew.cpp:
  71154. (WebCore::PopupMenu::PopupMenu):
  71155. (WebCore::PopupMenu::~PopupMenu):
  71156. (WebCore::PopupMenu::show):
  71157. (WebCore::PopupMenu::hide):
  71158. (WebCore::PopupMenu::updateFromElement):
  71159. (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  71160. * platform/brew/PopupMenuBrew.h: Removed.
  71161. * platform/brew/SearchPopupMenuBrew.cpp:
  71162. (WebCore::SearchPopupMenu::saveRecentSearches):
  71163. (WebCore::SearchPopupMenu::loadRecentSearches):
  71164. (WebCore::SearchPopupMenu::SearchPopupMenu):
  71165. (WebCore::SearchPopupMenu::enabled):
  71166. * platform/brew/SearchPopupMenuBrew.h: Removed.
  71167. * platform/chromium/PopupMenuChromium.cpp:
  71168. (WebCore::PopupMenu::PopupMenu):
  71169. (WebCore::PopupMenu::~PopupMenu):
  71170. (WebCore::PopupMenu::show):
  71171. (WebCore::PopupMenu::hide):
  71172. (WebCore::PopupMenu::updateFromElement):
  71173. (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  71174. * platform/chromium/PopupMenuChromium.h:
  71175. * platform/chromium/SearchPopupMenuChromium.cpp:
  71176. (WebCore::SearchPopupMenu::SearchPopupMenu):
  71177. (WebCore::SearchPopupMenu::enabled):
  71178. (WebCore::SearchPopupMenu::saveRecentSearches):
  71179. (WebCore::SearchPopupMenu::loadRecentSearches):
  71180. * platform/chromium/SearchPopupMenuChromium.h: Removed.
  71181. * platform/efl/PopupMenuEfl.cpp:
  71182. (WebCore::PopupMenu::PopupMenu):
  71183. (WebCore::PopupMenu::~PopupMenu):
  71184. (WebCore::PopupMenu::show):
  71185. (WebCore::PopupMenu::hide):
  71186. (WebCore::PopupMenu::updateFromElement):
  71187. (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  71188. * platform/efl/PopupMenuEfl.h: Removed.
  71189. * platform/efl/SearchPopupMenuEfl.cpp:
  71190. (WebCore::SearchPopupMenu::SearchPopupMenu):
  71191. (WebCore::SearchPopupMenu::saveRecentSearches):
  71192. (WebCore::SearchPopupMenu::loadRecentSearches):
  71193. (WebCore::SearchPopupMenu::enabled):
  71194. * platform/efl/SearchPopupMenuEfl.h: Removed.
  71195. * platform/gtk/PopupMenuGtk.cpp:
  71196. (WebCore::PopupMenu::PopupMenu):
  71197. (WebCore::PopupMenu::~PopupMenu):
  71198. (WebCore::PopupMenu::show):
  71199. (WebCore::PopupMenu::hide):
  71200. (WebCore::PopupMenu::updateFromElement):
  71201. (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  71202. (WebCore::PopupMenu::menuItemActivated):
  71203. (WebCore::PopupMenu::menuUnmapped):
  71204. (WebCore::PopupMenu::menuPositionFunction):
  71205. (WebCore::PopupMenu::menuRemoveItem):
  71206. * platform/gtk/PopupMenuGtk.h: Removed.
  71207. * platform/gtk/SearchPopupMenuGtk.cpp:
  71208. (WebCore::SearchPopupMenu::SearchPopupMenu):
  71209. (WebCore::SearchPopupMenu::saveRecentSearches):
  71210. (WebCore::SearchPopupMenu::loadRecentSearches):
  71211. (WebCore::SearchPopupMenu::enabled):
  71212. * platform/gtk/SearchPopupMenuGtk.h: Removed.
  71213. * platform/haiku/PopupMenuHaiku.cpp:
  71214. (WebCore::PopupMenuHaiku::PopupMenuHaiku):
  71215. (WebCore::PopupMenuHaiku::~PopupMenuHaiku):
  71216. (WebCore::PopupMenu::PopupMenu):
  71217. (WebCore::PopupMenu::~PopupMenu):
  71218. (WebCore::PopupMenu::show):
  71219. (WebCore::PopupMenu::hide):
  71220. (WebCore::PopupMenu::updateFromElement):
  71221. (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  71222. * platform/haiku/PopupMenuHaiku.h: Removed.
  71223. * platform/haiku/SearchPopupMenuHaiku.cpp:
  71224. (WebCore::SearchPopupMenu::SearchPopupMenu):
  71225. (WebCore::SearchPopupMenu::saveRecentSearches):
  71226. (WebCore::SearchPopupMenu::loadRecentSearches):
  71227. (WebCore::SearchPopupMenu::enabled):
  71228. * platform/haiku/SearchPopupMenuHaiku.h: Removed.
  71229. * platform/mac/PopupMenuMac.h: Removed.
  71230. * platform/mac/PopupMenuMac.mm:
  71231. (WebCore::PopupMenu::PopupMenu):
  71232. (WebCore::PopupMenu::~PopupMenu):
  71233. (WebCore::PopupMenu::clear):
  71234. (WebCore::PopupMenu::populate):
  71235. (WebCore::PopupMenu::show):
  71236. (WebCore::PopupMenu::hide):
  71237. (WebCore::PopupMenu::updateFromElement):
  71238. (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  71239. * platform/mac/SearchPopupMenuMac.h: Removed.
  71240. * platform/mac/SearchPopupMenuMac.mm:
  71241. (WebCore::SearchPopupMenu::SearchPopupMenu):
  71242. (WebCore::SearchPopupMenu::enabled):
  71243. (WebCore::SearchPopupMenu::saveRecentSearches):
  71244. (WebCore::SearchPopupMenu::loadRecentSearches):
  71245. * platform/qt/PopupMenuQt.cpp:
  71246. (WebCore::PopupMenu::PopupMenu):
  71247. (WebCore::PopupMenu::~PopupMenu):
  71248. (WebCore::PopupMenu::show):
  71249. (WebCore::PopupMenu::hide):
  71250. (WebCore::PopupMenu::updateFromElement):
  71251. (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  71252. * platform/qt/PopupMenuQt.h: Removed.
  71253. * platform/qt/QtAbstractWebPopup.h:
  71254. * platform/qt/SearchPopupMenuQt.cpp:
  71255. (WebCore::SearchPopupMenu::SearchPopupMenu):
  71256. (WebCore::SearchPopupMenu::saveRecentSearches):
  71257. (WebCore::SearchPopupMenu::loadRecentSearches):
  71258. (WebCore::SearchPopupMenu::enabled):
  71259. * platform/qt/SearchPopupMenuQt.h: Removed.
  71260. * platform/win/PopupMenuWin.cpp:
  71261. (WebCore::PopupMenu::PopupMenu):
  71262. (WebCore::PopupMenu::~PopupMenu):
  71263. (WebCore::PopupMenu::popupClassName):
  71264. (WebCore::PopupMenu::show):
  71265. (WebCore::PopupMenu::hide):
  71266. (WebCore::PopupMenu::calculatePositionAndSize):
  71267. (WebCore::PopupMenu::setFocusedIndex):
  71268. (WebCore::PopupMenu::visibleItems):
  71269. (WebCore::PopupMenu::listIndexAtPoint):
  71270. (WebCore::PopupMenu::focusedIndex):
  71271. (WebCore::PopupMenu::focusFirst):
  71272. (WebCore::PopupMenu::focusLast):
  71273. (WebCore::PopupMenu::down):
  71274. (WebCore::PopupMenu::up):
  71275. (WebCore::PopupMenu::invalidateItem):
  71276. (WebCore::PopupMenu::clientRect):
  71277. (WebCore::PopupMenu::incrementWheelDelta):
  71278. (WebCore::PopupMenu::reduceWheelDelta):
  71279. (WebCore::PopupMenu::scrollToRevealSelection):
  71280. (WebCore::PopupMenu::updateFromElement):
  71281. (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  71282. (WebCore::PopupMenu::paint):
  71283. (WebCore::PopupMenu::valueChanged):
  71284. (WebCore::PopupMenu::invalidateScrollbarRect):
  71285. (WebCore::PopupMenu::registerClass):
  71286. (WebCore::PopupMenu::PopupMenuWndProc):
  71287. (WebCore::PopupMenu::wndProc):
  71288. * platform/win/PopupMenuWin.h: Removed.
  71289. * platform/win/SearchPopupMenuWin.cpp:
  71290. (WebCore::SearchPopupMenu::SearchPopupMenu):
  71291. (WebCore::SearchPopupMenu::enabled):
  71292. (WebCore::SearchPopupMenu::saveRecentSearches):
  71293. (WebCore::SearchPopupMenu::loadRecentSearches):
  71294. * platform/win/SearchPopupMenuWin.h: Removed.
  71295. * platform/wx/PopupMenuWx.cpp:
  71296. (WebCore::PopupMenu::PopupMenu):
  71297. (WebCore::PopupMenu::~PopupMenu):
  71298. (WebCore::PopupMenu::show):
  71299. (WebCore::PopupMenu::OnMenuItemSelected):
  71300. (WebCore::PopupMenu::hide):
  71301. (WebCore::PopupMenu::updateFromElement):
  71302. (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  71303. * platform/wx/PopupMenuWx.h: Removed.
  71304. * platform/wx/SearchPopupMenuWx.cpp:
  71305. (WebCore::SearchPopupMenu::SearchPopupMenu):
  71306. (WebCore::SearchPopupMenu::saveRecentSearches):
  71307. (WebCore::SearchPopupMenu::loadRecentSearches):
  71308. (WebCore::SearchPopupMenu::enabled):
  71309. * platform/wx/SearchPopupMenuWx.h: Removed.
  71310. * rendering/RenderMenuList.cpp:
  71311. (WebCore::RenderMenuList::adjustInnerStyle):
  71312. (WebCore::RenderMenuList::showPopup):
  71313. * rendering/RenderMenuList.h:
  71314. * rendering/RenderTextControlSingleLine.cpp:
  71315. (WebCore::RenderTextControlSingleLine::~RenderTextControlSingleLine):
  71316. (WebCore::RenderTextControlSingleLine::addSearchResult):
  71317. (WebCore::RenderTextControlSingleLine::showPopup):
  71318. (WebCore::RenderTextControlSingleLine::hidePopup):
  71319. (WebCore::RenderTextControlSingleLine::updateFromElement):
  71320. (WebCore::RenderTextControlSingleLine::valueChanged):
  71321. * rendering/RenderTextControlSingleLine.h:
  71322. 2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>
  71323. Reviewed by Darin Fisher.
  71324. PopupMenu refactoring in preparation to WebKit2
  71325. https://bugs.webkit.org/show_bug.cgi?id=42592
  71326. Classes PopupMenu and SearchPopupMenu have been made pure virtual.
  71327. * platform/PopupMenu.h:
  71328. (WebCore::PopupMenu::~PopupMenu):
  71329. * platform/SearchPopupMenu.h:
  71330. (WebCore::SearchPopupMenu::~SearchPopupMenu):
  71331. Classes RenderMenuList and RenderTexyControlSingleLine have been changed to use
  71332. the new pure virtual PopupMenu and SearchPopupMenu.
  71333. * rendering/RenderMenuList.cpp:
  71334. (WebCore::RenderMenuList::adjustInnerStyle):
  71335. (WebCore::RenderMenuList::showPopup):
  71336. * rendering/RenderMenuList.h:
  71337. * rendering/RenderTextControlSingleLine.cpp:
  71338. (WebCore::RenderTextControlSingleLine::~RenderTextControlSingleLine):
  71339. (WebCore::RenderTextControlSingleLine::addSearchResult):
  71340. (WebCore::RenderTextControlSingleLine::showPopup):
  71341. (WebCore::RenderTextControlSingleLine::hidePopup):
  71342. (WebCore::RenderTextControlSingleLine::updateFromElement):
  71343. (WebCore::RenderTextControlSingleLine::valueChanged):
  71344. * rendering/RenderTextControlSingleLine.h:
  71345. Chrome and ChromeClient were made responsible for providing instances of classes
  71346. PopupMenu and SearchPopupMenu to its users.
  71347. * loader/EmptyClients.h:
  71348. (WebCore::EmptyPopupMenu::show):
  71349. (WebCore::EmptyPopupMenu::hide):
  71350. (WebCore::EmptyPopupMenu::updateFromElement):
  71351. (WebCore::EmptyPopupMenu::disconnectClient):
  71352. (WebCore::EmptySearchPopupMenu::popupMenu):
  71353. (WebCore::EmptySearchPopupMenu::saveRecentSearches):
  71354. (WebCore::EmptySearchPopupMenu::loadRecentSearches):
  71355. (WebCore::EmptySearchPopupMenu::enabled):
  71356. (WebCore::EmptyChromeClient::selectItemWritingDirectionIsNatural):
  71357. (WebCore::EmptyChromeClient::createPopupMenu):
  71358. (WebCore::EmptyChromeClient::createSearchPopupMenu):
  71359. * page/Chrome.cpp:
  71360. (WebCore::Chrome::selectItemWritingDirectionIsNatural):
  71361. (WebCore::Chrome::createPopupMenu):
  71362. (WebCore::Chrome::createSearchPopupMenu):
  71363. * page/Chrome.h:
  71364. * page/ChromeClient.h:
  71365. Original contents of files PopupMenu.h and SearchPopupMenu.h have been splited
  71366. in several files, two for each platform (PopupMenuXXX.h and SearchPopupMenuXXX.h).
  71367. Each of new the files contain the concrete classes that inherit form PopupMenu or
  71368. SearchPopupMenu and are specific for the corresponding platform.
  71369. brew:
  71370. * platform/brew/PopupMenuBrew.cpp:
  71371. (WebCore::PopupMenuBrew::PopupMenuBrew):
  71372. (WebCore::PopupMenuBrew::~PopupMenuBrew):
  71373. (WebCore::PopupMenuBrew::disconnectClient):
  71374. (WebCore::PopupMenuBrew::show):
  71375. (WebCore::PopupMenuBrew::hide):
  71376. (WebCore::PopupMenuBrew::updateFromElement):
  71377. * platform/brew/PopupMenuBrew.h: Added.
  71378. (WebCore::PopupMenuBrew::client):
  71379. * platform/brew/SearchPopupMenuBrew.cpp:
  71380. (WebCore::SearchPopupMenuBrew::saveRecentSearches):
  71381. (WebCore::SearchPopupMenuBrew::loadRecentSearches):
  71382. (WebCore::SearchPopupMenuBrew::SearchPopupMenuBrew):
  71383. (WebCore::SearchPopupMenuBrew::enabled):
  71384. (WebCore::SearchPopupMenuBrew::popupMenu):
  71385. * platform/brew/SearchPopupMenuBrew.h: Added.
  71386. chromium:
  71387. * WebCore.gypi:
  71388. * platform/chromium/PopupMenuChromium.cpp:
  71389. (WebCore::PopupMenuChromium::PopupMenuChromium):
  71390. (WebCore::PopupMenuChromium::~PopupMenuChromium):
  71391. (WebCore::PopupMenuChromium::show):
  71392. (WebCore::PopupMenuChromium::hide):
  71393. (WebCore::PopupMenuChromium::updateFromElement):
  71394. (WebCore::PopupMenuChromium::disconnectClient):
  71395. * platform/chromium/PopupMenuChromium.h:
  71396. (WebCore::PopupMenuChromium::client):
  71397. * platform/chromium/SearchPopupMenuChromium.cpp:
  71398. (WebCore::SearchPopupMenuChromium::SearchPopupMenuChromium):
  71399. (WebCore::SearchPopupMenuChromium::popupMenu):
  71400. (WebCore::SearchPopupMenuChromium::enabled):
  71401. (WebCore::SearchPopupMenuChromium::saveRecentSearches):
  71402. (WebCore::SearchPopupMenuChromium::loadRecentSearches):
  71403. * platform/chromium/SearchPopupMenuChromium.h: Added.
  71404. efl:
  71405. * platform/efl/PopupMenuEfl.cpp:
  71406. (WebCore::PopupMenuEfl::PopupMenuEfl):
  71407. (WebCore::PopupMenuEfl::~PopupMenuEfl):
  71408. (WebCore::PopupMenuEfl::show):
  71409. (WebCore::PopupMenuEfl::hide):
  71410. (WebCore::PopupMenuEfl::updateFromElement):
  71411. (WebCore::PopupMenuEfl::disconnectClient):
  71412. * platform/efl/PopupMenuEfl.h: Added.
  71413. (WebCore::PopupMenuEfl::client):
  71414. * platform/efl/SearchPopupMenuEfl.cpp:
  71415. (WebCore::SearchPopupMenuEfl::SearchPopupMenuEfl):
  71416. (WebCore::SearchPopupMenuEfl::popupMenu):
  71417. (WebCore::SearchPopupMenuEfl::saveRecentSearches):
  71418. (WebCore::SearchPopupMenuEfl::loadRecentSearches):
  71419. (WebCore::SearchPopupMenuEfl::enabled):
  71420. * platform/efl/SearchPopupMenuEfl.h: Added.
  71421. gtk:
  71422. * GNUmakefile.am:
  71423. * platform/gtk/PopupMenuGtk.cpp:
  71424. (WebCore::PopupMenuGtk::PopupMenuGtk):
  71425. (WebCore::PopupMenuGtk::~PopupMenuGtk):
  71426. (WebCore::PopupMenuGtk::show):
  71427. (WebCore::PopupMenuGtk::hide):
  71428. (WebCore::PopupMenuGtk::updateFromElement):
  71429. (WebCore::PopupMenuGtk::disconnectClient):
  71430. (WebCore::PopupMenuGtk::menuItemActivated):
  71431. (WebCore::PopupMenuGtk::menuUnmapped):
  71432. (WebCore::PopupMenuGtk::menuPositionFunction):
  71433. (WebCore::PopupMenuGtk::menuRemoveItem):
  71434. * platform/gtk/PopupMenuGtk.h: Added.
  71435. (WebCore::PopupMenuGtk::client):
  71436. * platform/gtk/SearchPopupMenuGtk.cpp:
  71437. (WebCore::SearchPopupMenuGtk::SearchPopupMenuGtk):
  71438. (WebCore::SearchPopupMenuGtk::popupMenu):
  71439. (WebCore::SearchPopupMenuGtk::saveRecentSearches):
  71440. (WebCore::SearchPopupMenuGtk::loadRecentSearches):
  71441. (WebCore::SearchPopupMenuGtk::enabled):
  71442. * platform/gtk/SearchPopupMenuGtk.h: Added.
  71443. haiku:
  71444. * platform/haiku/PopupMenuHaiku.cpp:
  71445. (WebCore::HaikuPopup::HaikuPopup):
  71446. (WebCore::HaikuPopup::~HaikuPopup):
  71447. (WebCore::PopupMenuHaiku::PopupMenuHaiku):
  71448. (WebCore::PopupMenuHaiku::~PopupMenuHaiku):
  71449. (WebCore::PopupMenuHaiku::disconnectClient):
  71450. (WebCore::PopupMenuHaiku::show):
  71451. (WebCore::PopupMenuHaiku::hide):
  71452. (WebCore::PopupMenuHaiku::updateFromElement):
  71453. * platform/haiku/PopupMenuHaiku.h: Added.
  71454. (WebCore::PopupMenuHaiku::disconnectClient):
  71455. (WebCore::PopupMenuHaiku::client):
  71456. * platform/haiku/SearchPopupMenuHaiku.cpp:
  71457. (WebCore::SearchPopupMenuHaiku::SearchPopupMenuHaiku):
  71458. (WebCore::SearchPopupMenuHaiku::saveRecentSearches):
  71459. (WebCore::SearchPopupMenuHaiku::loadRecentSearches):
  71460. (WebCore::SearchPopupMenuHaiku::enabled):
  71461. (WebCore::SearchPopupMenuHaiku::popupMenu):
  71462. * platform/haiku/SearchPopupMenuHaiku.h: Added.
  71463. mac:
  71464. * WebCore.exp.in:
  71465. * WebCore.xcodeproj/project.pbxproj:
  71466. * platform/mac/PopupMenuMac.h: Added.
  71467. (WebCore::PopupMenuMac::disconnectClient):
  71468. (WebCore::PopupMenuMac::client):
  71469. * platform/mac/PopupMenuMac.mm:
  71470. (WebCore::PopupMenuMac::PopupMenuMac):
  71471. (WebCore::PopupMenuMac::~PopupMenuMac):
  71472. (WebCore::PopupMenuMac::clear):
  71473. (WebCore::PopupMenuMac::populate):
  71474. (WebCore::PopupMenuMac::show):
  71475. (WebCore::PopupMenuMac::hide):
  71476. (WebCore::PopupMenuMac::updateFromElement):
  71477. (WebCore::PopupMenuMac::itemWritingDirectionIsNatural):
  71478. * platform/mac/SearchPopupMenuMac.h: Added.
  71479. * platform/mac/SearchPopupMenuMac.mm:
  71480. (WebCore::SearchPopupMenuMac::SearchPopupMenuMac):
  71481. (WebCore::SearchPopupMenuMac::popupMenu):
  71482. (WebCore::SearchPopupMenuMac::enabled):
  71483. (WebCore::SearchPopupMenuMac::saveRecentSearches):
  71484. (WebCore::SearchPopupMenuMac::loadRecentSearches):
  71485. qt:
  71486. * WebCore.pro:
  71487. * platform/qt/PopupMenuQt.cpp:
  71488. (WebCore::PopupMenuQt::PopupMenuQt):
  71489. (WebCore::PopupMenuQt::~PopupMenuQt):
  71490. (WebCore::PopupMenuQt::disconnectClient):
  71491. (WebCore::PopupMenuQt::show):
  71492. (WebCore::PopupMenuQt::hide):
  71493. (WebCore::PopupMenuQt::updateFromElement):
  71494. * platform/qt/PopupMenuQt.h: Added.
  71495. * platform/qt/QtAbstractWebPopup.h:
  71496. * platform/qt/SearchPopupMenuQt.cpp:
  71497. (WebCore::SearchPopupMenuQt::SearchPopupMenuQt):
  71498. (WebCore::SearchPopupMenuQt::popupMenu):
  71499. (WebCore::SearchPopupMenuQt::saveRecentSearches):
  71500. (WebCore::SearchPopupMenuQt::loadRecentSearches):
  71501. (WebCore::SearchPopupMenuQt::enabled):
  71502. * platform/qt/SearchPopupMenuQt.h: Added.
  71503. win:
  71504. * WebCore.vcproj/WebCore.vcproj:
  71505. * platform/win/PopupMenuWin.cpp:
  71506. (WebCore::PopupMenuWin::PopupMenuWin):
  71507. (WebCore::PopupMenuWin::~PopupMenuWin):
  71508. (WebCore::PopupMenuWin::disconnectClient):
  71509. (WebCore::PopupMenuWin::popupClassName):
  71510. (WebCore::PopupMenuWin::show):
  71511. (WebCore::PopupMenuWin::hide):
  71512. (WebCore::PopupMenuWin::calculatePositionAndSize):
  71513. (WebCore::PopupMenuWin::setFocusedIndex):
  71514. (WebCore::PopupMenuWin::visibleItems):
  71515. (WebCore::PopupMenuWin::listIndexAtPoint):
  71516. (WebCore::PopupMenuWin::focusedIndex):
  71517. (WebCore::PopupMenuWin::focusFirst):
  71518. (WebCore::PopupMenuWin::focusLast):
  71519. (WebCore::PopupMenuWin::down):
  71520. (WebCore::PopupMenuWin::up):
  71521. (WebCore::PopupMenuWin::invalidateItem):
  71522. (WebCore::PopupMenuWin::clientRect):
  71523. (WebCore::PopupMenuWin::incrementWheelDelta):
  71524. (WebCore::PopupMenuWin::reduceWheelDelta):
  71525. (WebCore::PopupMenuWin::scrollToRevealSelection):
  71526. (WebCore::PopupMenuWin::updateFromElement):
  71527. (WebCore::PopupMenuWin::paint):
  71528. (WebCore::PopupMenuWin::valueChanged):
  71529. (WebCore::PopupMenuWin::invalidateScrollbarRect):
  71530. (WebCore::PopupMenuWin::registerClass):
  71531. (WebCore::PopupMenuWin::PopupMenuWndProc):
  71532. (WebCore::PopupMenuWin::wndProc):
  71533. * platform/win/PopupMenuWin.h: Added.
  71534. (WebCore::PopupMenuWin::client):
  71535. (WebCore::PopupMenuWin::scrollbar):
  71536. (WebCore::PopupMenuWin::itemHeight):
  71537. (WebCore::PopupMenuWin::windowRect):
  71538. (WebCore::PopupMenuWin::popupHandle):
  71539. (WebCore::PopupMenuWin::setWasClicked):
  71540. (WebCore::PopupMenuWin::wasClicked):
  71541. (WebCore::PopupMenuWin::setScrollOffset):
  71542. (WebCore::PopupMenuWin::scrollOffset):
  71543. (WebCore::PopupMenuWin::wheelDelta):
  71544. (WebCore::PopupMenuWin::scrollbarCapturingMouse):
  71545. (WebCore::PopupMenuWin::setScrollbarCapturingMouse):
  71546. * platform/win/SearchPopupMenuWin.cpp:
  71547. (WebCore::SearchPopupMenuWin::SearchPopupMenuWin):
  71548. (WebCore::SearchPopupMenuWin::popupMenu):
  71549. (WebCore::SearchPopupMenuWin::enabled):
  71550. (WebCore::SearchPopupMenuWin::saveRecentSearches):
  71551. (WebCore::SearchPopupMenuWin::loadRecentSearches):
  71552. * platform/win/SearchPopupMenuWin.h: Added.
  71553. wx:
  71554. * platform/wx/PopupMenuWx.cpp:
  71555. (WebCore::PopupMenuWx::PopupMenuWx):
  71556. (WebCore::PopupMenuWx::~PopupMenuWx):
  71557. (WebCore::PopupMenuWx::disconnectClient):
  71558. (WebCore::PopupMenuWx::show):
  71559. (WebCore::PopupMenuWx::OnMenuItemSelected):
  71560. (WebCore::PopupMenuWx::hide):
  71561. (WebCore::PopupMenuWx::updateFromElement):
  71562. * platform/wx/PopupMenuWx.h: Added.
  71563. (WebCore::PopupMenuWx::client):
  71564. * platform/wx/SearchPopupMenuWx.cpp:
  71565. (WebCore::SearchPopupMenuWx::SearchPopupMenuWx):
  71566. (WebCore::SearchPopupMenuWx::saveRecentSearches):
  71567. (WebCore::SearchPopupMenuWx::loadRecentSearches):
  71568. (WebCore::SearchPopupMenuWx::enabled):
  71569. (WebCore::SearchPopupMenuWx::popupMenu):
  71570. * platform/wx/SearchPopupMenuWx.h: Added.
  71571. 2010-07-31 David Kilzer <ddkilzer@apple.com>
  71572. <http://webkit.org/b/43300> Simplify variables in *.xcconfig files after adding iOS support
  71573. Reviewed by Darin Adler.
  71574. * Configurations/WebCore.xcconfig: Extracted
  71575. PRODUCTION_FRAMEWORKS_DIR variable.
  71576. 2010-07-31 Nikolas Zimmermann <nzimmermann@rim.com>
  71577. Reviewed by Dirk Schulze.
  71578. HTMLStyleElement/SVGStyleElement need to share more code
  71579. https://bugs.webkit.org/show_bug.cgi?id=43293
  71580. Simplify HTMLStyleElement/SVGStyleElement. They look identically now, as all code is shared in StyleElement.
  71581. Doesn't affect any tests.
  71582. * dom/StyleElement.cpp:
  71583. (WebCore::StyleElement::StyleElement): Take createdByParser & Document arguments, to share the line number extraction logic. Store it in m_lineNumber.
  71584. (WebCore::StyleElement::insertedIntoDocument): Moved addStyleSheetCandidateNode here, to share code between HTML/SVGStyleElement.
  71585. (WebCore::StyleElement::removedFromDocument): Same for removeStyleSheetCandidateNode.
  71586. (WebCore::StyleElement::childrenChanged): Introduced new helper function.
  71587. (WebCore::StyleElement::finishParsingChildren): Ditto.
  71588. (WebCore::StyleElement::process): Use stored m_lineNumber, avoids a parameter.
  71589. (WebCore::StyleElement::createSheet): No need to call the virtual setLoading() function, just store m_loading in StyleElement, and set it from here.
  71590. (WebCore::StyleElement::isLoading): Introduced new helper function.
  71591. (WebCore::StyleElement::sheetLoaded): Ditto.
  71592. * dom/StyleElement.h:
  71593. * html/HTMLStyleElement.cpp:
  71594. (WebCore::HTMLStyleElement::HTMLStyleElement): Pass Document & createdByParser arguments to StyleElement.
  71595. (WebCore::HTMLStyleElement::finishParsingChildren): Delegate work to StyleElement.
  71596. (WebCore::HTMLStyleElement::insertedIntoDocument): Ditto.
  71597. (WebCore::HTMLStyleElement::removedFromDocument): Ditto.
  71598. (WebCore::HTMLStyleElement::childrenChanged): Ditto.
  71599. * html/HTMLStyleElement.h:
  71600. (WebCore::HTMLStyleElement::isLoading): Ditto.
  71601. (WebCore::HTMLStyleElement::sheetLoaded): Ditto.
  71602. * svg/SVGStyleElement.cpp:
  71603. (WebCore::SVGStyleElement::SVGStyleElement): Pass Document & createdByParser arguments to StyleElement.
  71604. (WebCore::SVGStyleElement::finishParsingChildren): Delegate work to StyleElement.
  71605. (WebCore::SVGStyleElement::insertedIntoDocument): Ditto.
  71606. (WebCore::SVGStyleElement::removedFromDocument): Ditto.
  71607. (WebCore::SVGStyleElement::childrenChanged): Ditto.
  71608. * svg/SVGStyleElement.h:
  71609. (WebCore::SVGStyleElement::isLoading): Ditto.
  71610. (WebCore::SVGStyleElement::sheetLoaded): Ditto.
  71611. 2010-07-31 Kinuko Yasuda <kinuko@chromium.org>
  71612. Unreviewed. Attempt to fix release build failure.
  71613. Having 'fail:' label without goto statement generates a compiler
  71614. warning that causes a build failure in release build.
  71615. * bindings/scripts/CodeGeneratorV8.pm:
  71616. 2010-07-31 Kinuko Yasuda <kinuko@chromium.org>
  71617. Reviewed by Nikolas Zimmermann.
  71618. Fix 'bool' in bindings/scripts/test/TestObj.
  71619. * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
  71620. (WebDOMTestObj::CREATE):
  71621. (WebDOMTestObj::setCREATE):
  71622. * bindings/scripts/test/CPP/WebDOMTestObj.h:
  71623. * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  71624. (webkit_dom_test_obj_get_create):
  71625. (webkit_dom_test_obj_set_create):
  71626. (webkit_dom_test_obj_set_property):
  71627. (webkit_dom_test_obj_get_property):
  71628. (webkit_dom_test_obj_class_init):
  71629. * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  71630. * bindings/scripts/test/JS/JSTestObj.cpp:
  71631. (WebCore::jsTestObjCreate):
  71632. (WebCore::setJSTestObjCreate):
  71633. * bindings/scripts/test/ObjC/DOMTestObj.h:
  71634. * bindings/scripts/test/ObjC/DOMTestObj.mm:
  71635. (-[DOMTestObj CREATE]):
  71636. (-[DOMTestObj setCREATE:]):
  71637. * bindings/scripts/test/TestObj.idl:
  71638. * bindings/scripts/test/V8/V8TestObj.cpp:
  71639. (WebCore::TestObjInternal::CREATEAttrGetter):
  71640. (WebCore::TestObjInternal::CREATEAttrSetter):
  71641. 2010-07-30 Kinuko Yasuda <kinuko@chromium.org>
  71642. Reviewed by Dumitru Daniliuc.
  71643. Add idl and mock implementation for HTML5 FileSystem API
  71644. https://bugs.webkit.org/show_bug.cgi?id=43134
  71645. Add idl for: FileSystem (as DOMFileSystem), Entry, Flags, Metadata,
  71646. FileSystemCallback, EntryCallback and ErrorCallback.
  71647. http://dev.w3.org/2009/dap/file-system/file-dir-sys.html
  71648. They are added only for Mac and chromium.
  71649. Tests will be added when we expose the entry point and add implementation.
  71650. * DerivedSources.make:
  71651. * WebCore.gypi:
  71652. * WebCore.xcodeproj/project.pbxproj:
  71653. * storage/DOMFileSystem.cpp: Added.
  71654. * storage/DOMFileSystem.h: Added.
  71655. * storage/DOMFileSystem.idl: Added.
  71656. * storage/Entry.cpp: Added.
  71657. * storage/Entry.h: Added.
  71658. * storage/Entry.idl: Added.
  71659. * storage/EntryCallback.h: Added.
  71660. * storage/EntryCallback.idl: Added.
  71661. * storage/ErrorCallback.h: Added.
  71662. * storage/ErrorCallback.idl: Added.
  71663. * storage/FileSystemCallback.h: Added.
  71664. * storage/FileSystemCallback.idl: Added.
  71665. * storage/Flags.h: Added.
  71666. * storage/Flags.idl: Added.
  71667. * storage/Metadata.h: Added.
  71668. * storage/Metadata.idl: Added.
  71669. * storage/MetadataCallback.h: Added.
  71670. * storage/MetadataCallback.idl: Added.
  71671. * bindings/scripts/CodeGenerator.pm: Added special case handlings for generating setter/getter names for CREATE/EXCLUSIVE attributes in Flags.idl.
  71672. * bindings/scripts/test/TestObj.idl: Updated.
  71673. * bindings/scripts/test/CPP/WebDOMTestObj.cpp: Updated.
  71674. * bindings/scripts/test/CPP/WebDOMTestObj.cpp: Updated.
  71675. * bindings/scripts/test/CPP/WebDOMTestObj.h: Updated.
  71676. * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: Updated.
  71677. * bindings/scripts/test/GObject/WebKitDOMTestObj.h: Updated.
  71678. * bindings/scripts/test/JS/JSTestObj.cpp: Updated.
  71679. * bindings/scripts/test/JS/JSTestObj.h: Updated.
  71680. * bindings/scripts/test/ObjC/DOMTestObj.h: Updated.
  71681. * bindings/scripts/test/ObjC/DOMTestObj.mm: Updated.
  71682. 2010-07-30 Sheriff Bot <webkit.review.bot@gmail.com>
  71683. Unreviewed, rolling out r64408.
  71684. http://trac.webkit.org/changeset/64408
  71685. https://bugs.webkit.org/show_bug.cgi?id=43292
  71686. Causing failed tests on Chromium canaries due to wrong history
  71687. item counts (Requested by atwilson on #webkit).
  71688. * loader/RedirectScheduler.cpp:
  71689. (WebCore::RedirectScheduler::scheduleRedirect):
  71690. (WebCore::RedirectScheduler::mustLockBackForwardList):
  71691. (WebCore::RedirectScheduler::scheduleLocationChange):
  71692. (WebCore::RedirectScheduler::scheduleFormSubmission):
  71693. * loader/RedirectScheduler.h:
  71694. 2010-07-30 Dan Bernstein <mitz@apple.com>
  71695. Reviewed by Darin Adler.
  71696. <rdar://problem/8257783> Short documents may print a second blank page
  71697. https://bugs.webkit.org/show_bug.cgi?id=43271
  71698. Test: printing/stretch-to-view-height.html
  71699. * WebCore.exp.in: Export Frame::forceLayoutForPagination(), replacing forceLayoutWithPageWidthRange().
  71700. * page/Frame.cpp:
  71701. (WebCore::Frame::setPrinting): Now takes a page width and height and a maximum shrink factor and passes
  71702. them down to forceLayoutForPagination().
  71703. * page/Frame.h:
  71704. (WebCore::Frame::):
  71705. * page/FrameView.cpp:
  71706. (WebCore::FrameView::reset): Initialize m_pageHeight.
  71707. (WebCore::FrameView::forceLayoutForPagination): Renamed forceLayoutWithPageWidthRange() to this and
  71708. changed it to take a page width and height and a maximum shrink factor. Sets m_pageHeight, which is
  71709. queried by RenderBox::calcHeight() during layout. If the given pageHeight is 0, m_pageHeight is set
  71710. to the visible height, retaining the behavior before this change.
  71711. * page/FrameView.h:
  71712. (WebCore::FrameView::pageHeight): Added this accessor.
  71713. * page/PrintContext.cpp:
  71714. (WebCore::PrintContext::begin): Added a height parameter, used when calling setPrinting().
  71715. (WebCore::PrintContext::end): Updated for setPrinting() changes.
  71716. (WebCore::PrintContext::pageNumberForElement): Account for shrink-to-fit.
  71717. (WebCore::PrintContext::pageProperty): Pass 0 for the height, retaining current behavior.
  71718. (WebCore::PrintContext::numberOfPages): Account for shrink-to-fit.
  71719. (WebCore::PrintContext::spoolAllPagesWithBoundaries): Pass the page width to begin().
  71720. * page/PrintContext.h:
  71721. * rendering/RenderBox.cpp:
  71722. (WebCore::RenderBox::calcHeight): When printing, use FrameView::pageHeight() as the basis for
  71723. viewport-relative heights.
  71724. 2010-07-30 Mihai Parparita <mihaip@chromium.org>
  71725. Reviewed by Darin Fisher.
  71726. Session history should skip over JS redirects
  71727. https://bugs.webkit.org/show_bug.cgi?id=42861
  71728. Lock the back/forward list for location changes that happen before the
  71729. onload event fires that are not the result of user gestures.
  71730. Test: fast/history/gesture-before-onload.html and updated expectations
  71731. for http/tests/history tests that used to fail.
  71732. * loader/RedirectScheduler.cpp:
  71733. (WebCore::RedirectScheduler::scheduleRedirect):
  71734. (WebCore::RedirectScheduler::mustLockBackForwardList):
  71735. (WebCore::RedirectScheduler::scheduleLocationChange):
  71736. (WebCore::RedirectScheduler::scheduleFormSubmission):
  71737. * loader/RedirectScheduler.h:
  71738. 2010-07-30 Matthew Delaney <mdelaney@apple.com>
  71739. Reviewed by Darin Adler.
  71740. ctx.clearRect improperly clears shadow
  71741. https://bugs.webkit.org/show_bug.cgi?id=43213
  71742. Tests: canvas/philip/tests/2d.clearRect+fillRect.alpha0.5.html
  71743. canvas/philip/tests/2d.clearRect+fillRect.alpha0.html
  71744. canvas/philip/tests/2d.clearRect+fillRect.basic.html
  71745. * html/canvas/CanvasRenderingContext2D.cpp:
  71746. (WebCore::CanvasRenderingContext2D::setAllAttributesToDefault):
  71747. Added a new method to wipe out all context attributes to their defaults.
  71748. (WebCore::CanvasRenderingContext2D::clearRect):
  71749. Updated clearRect to ignore shadow, alpha, and global composite attributes
  71750. when clearing the input rect to match the canvas spec.
  71751. * html/canvas/CanvasRenderingContext2D.h:
  71752. 2010-07-30 Kinuko Yasuda <kinuko@chromium.org>
  71753. Reviewed by Jian Li.
  71754. Decouple FileThread from FileStream to support generic file-related async tasks
  71755. https://bugs.webkit.org/show_bug.cgi?id=43135
  71756. No new tests as this doesn't change any functionality.
  71757. * html/FileThread.cpp:
  71758. (WebCore::FileThread::stop):
  71759. (WebCore::SameInstancePredicate::SameFilePredicate):
  71760. (WebCore::SameInstancePredicate::operator()):
  71761. (WebCore::FileThread::unscheduleTasksInternal):
  71762. * html/FileThread.h:
  71763. (WebCore::FileThread::create):
  71764. (WebCore::FileThread::Task::instance):
  71765. (WebCore::FileThread::Task::Task):
  71766. * html/FileThreadTask.h: Changed all templates to take any type as a callee instance.
  71767. (WebCore::createFileThreadTask):
  71768. 2010-07-30 Darin Fisher <darin@chromium.org>
  71769. Reviewed by Darin Adler.
  71770. Eliminate BackForwardList::pushStateItem
  71771. https://bugs.webkit.org/show_bug.cgi?id=43282
  71772. The layout test was previously disabled because of the assertion being
  71773. hit in BackForwardList::pushStateItem. That assertion revealed the need
  71774. for this patch.
  71775. Test: fast/loader/stateobjects/pushstate-in-iframe.html
  71776. * history/BackForwardList.h:
  71777. * history/BackForwardListChromium.cpp:
  71778. * history/BackForwardListImpl.cpp:
  71779. * history/BackForwardListImpl.h:
  71780. * loader/HistoryController.cpp: Move the logic, of adding a null state
  71781. object to the HistoryItem that was previously the current HistoryItem, to
  71782. HistoryController::pushState from BackForwardList::pushStateItem. The
  71783. BackForwardList was the wrong place for that logic since it lacked convenient
  71784. access to the target HistoryItem. It is just given the top-most HistoryItem
  71785. corresponding to the new navigation.
  71786. (WebCore::HistoryController::updateBackForwardListClippedAtTarget):
  71787. (WebCore::HistoryController::pushState):
  71788. 2010-07-30 Luiz Agostini <luiz.agostini@openbossa.org>
  71789. Reviewed by Simon Fraser.
  71790. Enabling view modes to all platforms
  71791. https://bugs.webkit.org/show_bug.cgi?id=37505
  71792. View mode media feature implementation as specified in http://www.w3.org/TR/view-mode.
  71793. The view mode media feature layout tests are stil skipped for all platforms except Qt
  71794. because of the lack of support of LayoutTestController in those platforms.
  71795. Test: fast/media/view-mode-media-feature.html
  71796. * css/MediaFeatureNames.h:
  71797. * css/MediaQueryEvaluator.cpp:
  71798. (WebCore::view_modeMediaFeatureEval):
  71799. * page/ChromeClient.h:
  71800. * page/Page.cpp:
  71801. (WebCore::Page::Page):
  71802. (WebCore::createViewModesSet):
  71803. (WebCore::Page::setViewMode):
  71804. * page/Page.h:
  71805. (WebCore::Page::viewMode):
  71806. 2010-07-30 Joseph Pecoraro <joepeck@webkit.org>
  71807. Reviewed by David Kilzer.
  71808. Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
  71809. https://bugs.webkit.org/show_bug.cgi?id=40627
  71810. Part 4 - Client Notification when the Quota is Reached
  71811. Notify the WebKit client when the per-origin quota is reached
  71812. via a delegate method reachedApplicationCacheOriginQuota.
  71813. Call the delegate method when the quota is reached.
  71814. * loader/appcache/ApplicationCacheGroup.cpp:
  71815. (WebCore::ApplicationCacheGroup::ApplicationCacheGroup):
  71816. (WebCore::ApplicationCacheGroup::didFinishLoading):
  71817. (WebCore::ApplicationCacheGroup::didReachOriginQuota):
  71818. (WebCore::ApplicationCacheGroup::cacheUpdateFailedDueToOriginQuota):
  71819. (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
  71820. (WebCore::ApplicationCacheGroup::scheduleReachedOriginQuotaCallback):
  71821. * loader/appcache/ApplicationCacheGroup.h:
  71822. Some minor refactoring to access more quota information
  71823. without repeating code. Such as origin usage, and creating
  71824. an origin record.
  71825. * loader/appcache/ApplicationCacheStorage.cpp:
  71826. (WebCore::ApplicationCacheStorage::usageForOrigin):
  71827. (WebCore::ApplicationCacheStorage::storeUpdatedQuotaForOrigin):
  71828. (WebCore::ApplicationCacheStorage::store):
  71829. (WebCore::ApplicationCacheStorage::ensureOriginRecord):
  71830. * loader/appcache/ApplicationCacheStorage.h:
  71831. Boilerplate. Exports and definition of the delegate method.
  71832. * WebCore.OfflineWebApplications.exp:
  71833. * loader/EmptyClients.h:
  71834. (WebCore::EmptyChromeClient::reachedApplicationCacheOriginQuota):
  71835. * page/ChromeClient.h:
  71836. 2010-07-30 Joseph Pecoraro <joepeck@webkit.org>
  71837. Reviewed by David Kilzer.
  71838. Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
  71839. https://bugs.webkit.org/show_bug.cgi?id=40627
  71840. Part 3 - Refactor storeNewestCache to allow Failure Reason Output
  71841. Storing can result in an error in a number of reasons. Previously
  71842. the reasons were global and binary and could be determined by
  71843. checking ApplicationCacheStorage state. Now, with per-origin quotas
  71844. a per-origin quota can cause a failure that is not in global state.
  71845. Current failure reasons are:
  71846. OriginQuotaReached = per-origin quota reached, no storage is allowed.
  71847. TotalQuotaReached = database quota reached, no storage is allowed.
  71848. DiskOrOperationFailure = SQL error such as failed prepare or query. Not expected to happen.
  71849. This part provides an implementation of storeNewestCache for those
  71850. that care about the failure reason, and not just if it succeeded
  71851. or not. This moves the final origin quota check into the transaction.
  71852. * loader/appcache/ApplicationCache.h: style fix for forwarding headers.
  71853. * loader/appcache/ApplicationCacheGroup.cpp:
  71854. (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete): move origin quota check into storeNewestCache's SQL transaction.
  71855. * loader/appcache/ApplicationCacheStorage.cpp:
  71856. (WebCore::ApplicationCacheStorage::storeNewestCache): old implementation calls the new implementation ignoring failure reason.
  71857. (WebCore::ApplicationCacheStorage::storeNewestCache): new implementation provides a failure reason in case of failure.
  71858. * loader/appcache/ApplicationCacheStorage.h:
  71859. (WebCore::ApplicationCacheStorage::): added FailureReason enum and storeNewestCache allowing it.
  71860. 2010-07-30 Joseph Pecoraro <joepeck@webkit.org>
  71861. Reviewed by David Kilzer.
  71862. Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
  71863. https://bugs.webkit.org/show_bug.cgi?id=40627
  71864. Part 2 - Update Schema and enforce Per-Origin Quotas
  71865. Added an "Origins" table to the application cache databases.
  71866. This, like the Database's Origins table, is a list of origin
  71867. and quota pairs. Origins records are added as soon as they are
  71868. needed, and deleted only when the ApplicationCacheStorage is
  71869. emptied. This means Origins records persist even after all
  71870. caches for that origin may be deleted. The "CacheGroups" table
  71871. now has a foreign key column "origin" which relates to the
  71872. "Origins" table.
  71873. To enforce the quotas, remaining quota space is checked at
  71874. the start of update as an estimate and at the end before
  71875. inserting. Currently, reaching the quota limit will simply
  71876. cause an update error. A later part will provide a
  71877. notification to the client to allow an action, and refactor
  71878. the final quota limit check into a transaction.
  71879. Respect the quota during the update process. And cause
  71880. the update process to fail when the quota is reached.
  71881. * loader/appcache/ApplicationCacheGroup.cpp: added loading counter, counts bytes as they load
  71882. (WebCore::ApplicationCacheGroup::ApplicationCacheGroup):
  71883. (WebCore::ApplicationCacheGroup::didReceiveData):
  71884. (WebCore::ApplicationCacheGroup::didFinishLoading):
  71885. (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
  71886. * loader/appcache/ApplicationCacheGroup.h: added security origin, based on the manifest URL
  71887. (WebCore::ApplicationCacheGroup::origin): accessor
  71888. Updates the schema of the database tables as described
  71889. above. Handle other SQL operations such as checking the
  71890. remaining space and inserting and deleting Origins records.
  71891. * loader/appcache/ApplicationCacheStorage.cpp:
  71892. (WebCore::ApplicationCacheStorage::quotaForOrigin): query for the quota of an origin, may return the default origin quota if it didn't exist.
  71893. (WebCore::ApplicationCacheStorage::remainingSizeForOriginExcludingCache): calculate the remaining size in a quota for an origin, possibly excluding a cache.
  71894. (WebCore::ApplicationCacheStorage::storeUpdatedQuotaForOrigin): persistent update.
  71895. (WebCore::ApplicationCacheStorage::openDatabase): updated schema for CachesGroups, added new table Origins.
  71896. (WebCore::ApplicationCacheStorage::empty): wipe Origins table as well.
  71897. (WebCore::ApplicationCacheStorage::unknownQuota): constant to mean unknown quota
  71898. 2010-07-30 Joseph Pecoraro <joepeck@webkit.org>
  71899. Reviewed by David Kilzer.
  71900. Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
  71901. https://bugs.webkit.org/show_bug.cgi?id=40627
  71902. Part 1 - Add Total and Per-Origin Quota Preferences.
  71903. Allow the application cache total size to be a preference, and
  71904. add a new preference for the default per-origin quota.
  71905. Handle the per-origin quota in the global cacheStorage() object.
  71906. The per-origin quota will be used in a later part, this just
  71907. handles interaction with it from a client.
  71908. * loader/appcache/ApplicationCacheStorage.cpp:
  71909. (WebCore::ApplicationCacheStorage::setDefaultOriginQuota): setter
  71910. (WebCore::ApplicationCacheStorage::ApplicationCacheStorage): default to "noQuota" on construction
  71911. * loader/appcache/ApplicationCacheStorage.h:
  71912. (WebCore::ApplicationCacheStorage::noQuota): constant to mean unlimited storage
  71913. (WebCore::ApplicationCacheStorage::defaultOriginQuota): accessor
  71914. Move around some exports around for Offline Web Applications.
  71915. * WebCore.exp.in: Added OFFLINE_WEB_APPLICATIONS exports.
  71916. 2010-07-30 Andy Estes <aestes@apple.com>
  71917. Reviewed by David Kilzer.
  71918. Add Xcode support for compiling WebKit against iOS SDKs.
  71919. https://bugs.webkit.org/show_bug.cgi?id=42796
  71920. * Configurations/Base.xcconfig:
  71921. * Configurations/DebugRelease.xcconfig:
  71922. * Configurations/FeatureDefines.xcconfig:
  71923. * Configurations/Version.xcconfig:
  71924. * Configurations/WebCore.xcconfig:
  71925. 2010-07-30 James Robinson <jamesr@chromium.org>
  71926. Compile fix: fix a typo in forward declaration, add EmptyClients impl.
  71927. * loader/EmptyClients.h:
  71928. (WebCore::EmptyChromeClient::getOnscreenGLES2Context):
  71929. (WebCore::EmptyChromeClient::getOffscreenGLES2Context):
  71930. * page/ChromeClient.h:
  71931. 2010-07-30 James Robinson <jamesr@chromium.org>
  71932. Reviewed by Darin Fisher.
  71933. Move GLES2 context manipulation to ChromeClient.h and put it behind the right #if guard
  71934. https://bugs.webkit.org/show_bug.cgi?id=43281
  71935. These calls were initially put in ChromeClientChromium, but they aren't chromium specific.
  71936. In theory any port that could create the proper OpenGL ES 2 contexts could implement
  71937. these functions. Also moves the calls to be behind the correct #if guard.
  71938. * page/ChromeClient.h:
  71939. * page/chromium/ChromeClientChromium.h:
  71940. 2010-07-30 Dumitru Daniliuc <dumi@chromium.org>
  71941. Reviewed by David Levin.
  71942. Interrupt all DB operations when the worker is terminating.
  71943. https://bugs.webkit.org/show_bug.cgi?id=42843
  71944. Tests: fast/workers/storage/interrupt-database-sync.html
  71945. fast/workers/storage/interrupt-database.html
  71946. * bindings/js/JSCustomVoidCallback.cpp:
  71947. (WebCore::JSCustomVoidCallback::~JSCustomVoidCallback): If the
  71948. destructor is called on the context thread, delete m_data directly
  71949. instead of posting a task to do that. We need to do that to make
  71950. sure that all JS objects are destroyed before
  71951. WorkerThreadShutdownFinishTask (in WorkerThread.cpp) calls
  71952. WorkerContext::clearScript().
  71953. * bindings/scripts/CodeGeneratorJS.pm: Same change as above, for
  71954. all auto-generated callbacks.
  71955. * bindings/scripts/test/JS/JSTestCallback.cpp:
  71956. (WebCore::JSTestCallback::~JSTestCallback): Updated the
  71957. expectations for run-bindings-tests.
  71958. * platform/sql/SQLiteDatabase.cpp: Added the ability to interrupt
  71959. all DB operations in progress, unless the database was closed or
  71960. is being closed. Unlike sqlite3_interrupt(),
  71961. SQLiteDatabase::interrupt() is sticky: once it's called, trying to
  71962. run any statement on that database will fail with a
  71963. SQLITE_INTERRUPT error code.
  71964. (WebCore::SQLiteDatabase::SQLiteDatabase):
  71965. (WebCore::SQLiteDatabase::close):
  71966. (WebCore::SQLiteDatabase::interrupt):
  71967. (WebCore::SQLiteDatabase::isInterrupted):
  71968. * platform/sql/SQLiteDatabase.h: Added a mutex that can used by
  71969. SQLiteStatement to check if the database was interrupted.
  71970. (WebCore::SQLiteDatabase::databaseMutex):
  71971. * platform/sql/SQLiteStatement.cpp: Changed prepare() and step()
  71972. to check if the database was interrupted, before trying to prepare
  71973. or run the statement. The other methods don't need to hold on to
  71974. the DB lock while running, because they're fast, so we don't need
  71975. to interrupt them.
  71976. (WebCore::SQLiteStatement::prepare):
  71977. (WebCore::SQLiteStatement::step):
  71978. * storage/AbstractDatabase.cpp: Made SQLiteDatabase::interrupt()
  71979. and isInterrupted() visible to WebSQLDatabases classes.
  71980. (WebCore::AbstractDatabase::interrupt):
  71981. (WebCore::AbstractDatabase::isInterrupted):
  71982. * storage/AbstractDatabase.h:
  71983. * storage/DatabaseTracker.cpp: Added a method to interrupt all
  71984. databases in a given context.
  71985. (WebCore::DatabaseTracker::interruptAllDatabasesForContext):
  71986. * storage/DatabaseTracker.h:
  71987. * storage/SQLStatement.cpp: Changed the exception/error reported
  71988. when a statement is interrupted.
  71989. (WebCore::SQLStatement::execute):
  71990. * storage/SQLStatementSync.cpp:
  71991. (WebCore::SQLStatementSync::execute):
  71992. * storage/SQLTransaction.cpp: Changed the code to release the
  71993. callback objects as soon as they're not needed.
  71994. (WebCore::SQLTransaction::checkAndHandleClosedOrInterruptedDatabase):
  71995. Changed this method to not schedule the next transaction step when
  71996. the database is interrupted.
  71997. (WebCore::SQLTransaction::performNextStep):
  71998. (WebCore::SQLTransaction::performPendingCallback):
  71999. (WebCore::SQLTransaction::deliverTransactionCallback):
  72000. (WebCore::SQLTransaction::postflightAndCommit):
  72001. (WebCore::SQLTransaction::deliverTransactionErrorCallback):
  72002. (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback):
  72003. * storage/SQLTransaction.h:
  72004. * storage/chromium/DatabaseTrackerChromium.cpp: Added a method to
  72005. interrupt all databases in a given context.
  72006. (WebCore::DatabaseTracker::interruptAllDatabasesForContext):
  72007. * workers/WorkerThread.cpp:
  72008. (WebCore::WorkerThread::stop): Added a call to
  72009. DatabaseTracker::interruptAllDatabasesForContext().
  72010. 2010-07-30 Simon Fraser <simon.fraser@apple.com>
  72011. Reviewed by Darin Adler.
  72012. connect-compositing-iframe2.html test sometimes shows blank iframe content
  72013. https://bugs.webkit.org/show_bug.cgi?id=42046
  72014. Hooking up compositing iframes requires setNeedsStyleRecalc(SyntheticStyleChange) to
  72015. always result in a call to RenderLayer::styleChanged(). However, the semantics of
  72016. setNeedsStyleRecalc() was that each call would overwrite the existing styleChangeType,
  72017. allowing a "lesser" style change to override a "greater" one. In the test content,
  72018. SyntheticStyleChange was being replaced by FullStyleChange when the classname changed.
  72019. This resulted in RenderLayer::styleChanged() not being called.
  72020. Fix by changing the behavior of setNeedsStyleRecalc() to only touch the style change
  72021. type if a "lesser" change is being replaced with a "greater" one. This required adding
  72022. a new clearNeedsStyleRecalc() method to reset the style change type to NoStyleChange.
  72023. In addition, in Node::setNeedsStyleRecalc(), only propagate the childNeedsStyleRecalc
  72024. up the parent change if the node was not already needing recalc. In order to fix issues
  72025. with attaching, this required new call to clearNeedsStyleRecalc() at the end of attach().
  72026. * manual-tests/compositing/missing-iframe-contents.html: Added.
  72027. * manual-tests/compositing/resources/composited-subframe.html: Copied from LayoutTests/compositing/iframes/resources/composited-subframe.html.
  72028. * dom/Document.cpp:
  72029. (WebCore::Document::recalcStyle): Call clearNeedsStyleRecalc().
  72030. * dom/Element.cpp:
  72031. (WebCore::Element::recalcStyle): Call clearNeedsStyleRecalc().
  72032. * dom/Node.h:
  72033. (WebCore::Node::clearNeedsStyleRecalc): New method.
  72034. * dom/Node.cpp:
  72035. (WebCore::Node::setNeedsStyleRecalc): Only call setStyleChange() if the change type
  72036. is greater than the current change type.
  72037. (WebCore::Node::attach): After attaching, we can call clearNeedsStyleRecalc().
  72038. * dom/Text.cpp:
  72039. (WebCore::Text::recalcStyle): Call clearNeedsStyleRecalc().
  72040. * html/HTMLFrameSetElement.cpp:
  72041. (WebCore::HTMLFrameSetElement::recalcStyle): Call clearNeedsStyleRecalc().
  72042. 2010-07-30 W. James MacLean <wjmaclean@google.com>
  72043. Reviewed by Nikolas Zimmermann.
  72044. SVG - numeric overflow for very large elements
  72045. https://bugs.webkit.org/show_bug.cgi?id=25645
  72046. Two of the expected test outputs were incorrect now that parsing of large values
  72047. is handled correctly.
  72048. - Revised FloatRect to remove bad float-to-int conversions in enclosingIntRect()
  72049. - Revised _parseNumber to do right-to-left float-based parsing of input value
  72050. Test: svg/custom/massive-coordinates.svg
  72051. * platform/graphics/FloatRect.cpp:
  72052. (WebCore::safeFloatToInt):
  72053. (WebCore::enclosingIntRect):
  72054. * svg/SVGParserUtilities.cpp:
  72055. (WebCore::_parseNumber):
  72056. 2010-07-30 James Robinson <jamesr@chromium.org>
  72057. Reviewed by Darin Fisher.
  72058. [chromium] Make the GLES2 texture map generic and teach ImageSkia and ImageBufferSkia about GLES2
  72059. https://bugs.webkit.org/show_bug.cgi?id=43218
  72060. This makes the GLES2Canvas' TextureHashMap key on void* instead of NativeImagePtr
  72061. to make it easier to use with other backends. It also teaches ImageSkia how
  72062. to draw to a GLES2Canvas instead of a skia buffer.
  72063. No change in functionality (yet), no new tests.
  72064. * platform/graphics/chromium/GLES2Canvas.cpp:
  72065. (WebCore::GLES2Canvas::GLES2Canvas):
  72066. (WebCore::GLES2Canvas::createTexture):
  72067. (WebCore::GLES2Canvas::getTexture):
  72068. * platform/graphics/chromium/GLES2Canvas.h:
  72069. * platform/graphics/skia/ImageBufferSkia.cpp:
  72070. (WebCore::ImageBuffer::getUnmultipliedImageData):
  72071. (WebCore::ImageBuffer::getPremultipliedImageData):
  72072. * platform/graphics/skia/ImageSkia.cpp:
  72073. (WebCore::drawBitmapGLES2):
  72074. (WebCore::BitmapImage::draw):
  72075. (WebCore::BitmapImageSingleFrameSkia::draw):
  72076. 2010-07-30 Yong Li <yoli@rim.com>
  72077. Reviewed by Darin Adler.
  72078. Implement SVGScriptElement::shouldExecuteAsJavaScript() otherwise
  72079. SVGScriptElement cannot run when XHTMLMP is enabled.
  72080. https://bugs.webkit.org/show_bug.cgi?id=43267
  72081. No test needed, because it fails all SVG <script> tests when XHTMLMP is on.
  72082. * svg/SVGScriptElement.cpp:
  72083. (WebCore::SVGScriptElement::shouldExecuteAsJavaScript):
  72084. * svg/SVGScriptElement.h:
  72085. 2010-07-30 Chris Fleizach <cfleizach@apple.com>
  72086. Reviewed by Darin Adler.
  72087. Style errors in Navigator.h
  72088. https://bugs.webkit.org/show_bug.cgi?id=43262
  72089. Fixing style changes. No new tests.
  72090. * page/Navigator.h:
  72091. (WebCore::Navigator::create):
  72092. (WebCore::Navigator::frame):
  72093. (WebCore::Navigator::optionalGeolocation):
  72094. 2010-07-27 Darin Fisher <darin@chromium.org>
  72095. Reviewed by Brady Eidson.
  72096. History.pushState() + navigation operates on top frame when called from
  72097. nested context
  72098. https://bugs.webkit.org/show_bug.cgi?id=43080
  72099. Test: fast/loader/stateobjects/pushstate-in-iframe.html
  72100. * loader/HistoryController.cpp:
  72101. (WebCore::HistoryController::pushState): createTreeItem should be
  72102. called on the top-most HistoryController so that we properly clone
  72103. the HistoryItem tree starting at the root node.
  72104. 2010-07-30 fsamuel@chromium.org <fsamuel@chromium.org>
  72105. Reviewed by Dimitri Glazkov.
  72106. Expand SVG Attribute Macros
  72107. https://bugs.webkit.org/show_bug.cgi?id=43254
  72108. Expanded SVG Attribute Macros to reduce debugging headache.
  72109. No change in behavior, so no new tests.
  72110. * rendering/style/SVGRenderStyle.h: Expanded and removed references to SVG_RS_DEFINE_ATTRIBUTE* macros.
  72111. * rendering/style/SVGRenderStyleDefs.h: Removed definitons for expanded macros.
  72112. 2010-07-30 Kinuko Yasuda <kinuko@chromium.org>
  72113. Reviewed by Dumitru Daniliuc.
  72114. Add callback arguments support to binding code generator scripts
  72115. https://bugs.webkit.org/show_bug.cgi?id=43130
  72116. Tests: bindings/scripts/test/TestObj.idl
  72117. * bindings/scripts/CodeGeneratorJS.pm:
  72118. * bindings/scripts/CodeGeneratorV8.pm:
  72119. * bindings/scripts/test/JS/JSTestObj.cpp:
  72120. (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackArg):
  72121. (WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg):
  72122. (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackAndOptionalArg):
  72123. * bindings/scripts/test/JS/JSTestObj.h:
  72124. * bindings/scripts/test/TestObj.idl:
  72125. * bindings/scripts/test/V8/V8TestObj.cpp:
  72126. (WebCore::TestObjInternal::methodWithCallbackArgCallback):
  72127. (WebCore::TestObjInternal::methodWithNonCallbackArgAndCallbackArgCallback):
  72128. (WebCore::TestObjInternal::methodWithCallbackAndOptionalArgCallback):
  72129. (WebCore::ConfigureV8TestObjTemplate):
  72130. 2010-07-30 Anders Carlsson <andersca@apple.com>
  72131. Reviewed by Sam Weinig.
  72132. Implement NPN_InvokeDefault
  72133. https://bugs.webkit.org/show_bug.cgi?id=43266
  72134. * bindings/js/JSPluginElementFunctions.cpp:
  72135. (WebCore::isPluginElement):
  72136. Add convenience function.
  72137. (WebCore::pluginInstance):
  72138. Call isPluginElement.
  72139. (WebCore::pluginScriptObjectFromPluginViewBase):
  72140. Given an JSHTMLElement, ask the PluginViewBase for the scriptable object.
  72141. (WebCore::pluginScriptObject):
  72142. Call isPluginElement. Call pluginScriptObjectFromPluginViewBase.
  72143. (WebCore::callPlugin):
  72144. Get the script object, assemble the arguments and call "call" directly.
  72145. (WebCore::runtimeObjectGetCallData):
  72146. Try to get the script object from the PluginViewBase first.
  72147. * plugins/PluginViewBase.h:
  72148. (WebCore::PluginViewBase::scriptObject):
  72149. Remove ExecState parameter.
  72150. 2010-07-30 Adam Roben <aroben@apple.com>
  72151. Roll our r64361 and r64363
  72152. We can't make these changes until QuartzCore.lib is included in
  72153. WebKitSupportLibrary.
  72154. 2010-07-30 Adam Roben <aroben@apple.com>
  72155. Remove uses of CACFContextRef and CARender* from WebCore
  72156. These types are now wrapped in a WKCACFContext type exported by
  72157. WebKitSystemInterface.
  72158. Fixes <http://webkit.org/b/43244>.
  72159. Reviewed by Sam Weinig.
  72160. * platform/graphics/win/WKCACFContextFlusher.cpp:
  72161. (WebCore::WKCACFContextFlusher::addContext):
  72162. (WebCore::WKCACFContextFlusher::removeContext):
  72163. (WebCore::WKCACFContextFlusher::flushAllContexts):
  72164. * platform/graphics/win/WKCACFContextFlusher.h:
  72165. Changed to use WKCACFContext. We don't retain/release the context when
  72166. putting it into/taking it out of the set. WKCACFContext is not a
  72167. ref-counted type, so we can't retain/release it, but the
  72168. retain/release was also unnecessary as WKCACFLayerRenderer calls
  72169. removeContext before the context is destroyed.
  72170. * platform/graphics/win/WKCACFLayer.cpp:
  72171. (WebCore::WKCACFLayer::becomeRootLayerForContext):
  72172. * platform/graphics/win/WKCACFLayer.h:
  72173. Changed to use WKCACFContext.
  72174. * platform/graphics/win/WKCACFLayerRenderer.cpp:
  72175. (WebCore::WKCACFLayerRenderer::didFlushContext):
  72176. (WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer):
  72177. (WebCore::WKCACFLayerRenderer::~WKCACFLayerRenderer):
  72178. (WebCore::WKCACFLayerRenderer::layerTreeDidChange):
  72179. (WebCore::WKCACFLayerRenderer::createRenderer):
  72180. (WebCore::WKCACFLayerRenderer::destroyRenderer):
  72181. (WebCore::WKCACFLayerRenderer::render): Also replaced uses of
  72182. CGSRegion with WebKitSystemInterface functions/types.
  72183. (WebCore::WKCACFLayerRenderer::resetDevice):
  72184. * platform/graphics/win/WKCACFLayerRenderer.h:
  72185. Replaced our CACFContextRef, CARenderContext, and CARenderOGLContext
  72186. with a single WKCACFContext, which wraps all three. We hold a bare
  72187. pointer to it and destroy it in our destructor.
  72188. 2010-07-30 Adam Roben <aroben@apple.com>
  72189. Remove knowledge of WKCACFContextFlusher from WKCACFLayer
  72190. Fixes <http://webkit.org/b/43248> WKCACFLayer shouldn't know about
  72191. WKCACFContextFlusher
  72192. Reviewed by Sam Weinig.
  72193. * platform/graphics/win/WKCACFLayer.cpp:
  72194. (WebCore::WKCACFLayer::setNeedsCommit): Don't bother calling to
  72195. WKCACFContextFlusher. Our root layer will do this for us.
  72196. * platform/graphics/win/WKCACFLayerRenderer.cpp:
  72197. (WebCore::WKCACFRootLayer::setNeedsRender): Changed to call the new
  72198. layerTreeDidChange function.
  72199. (WebCore::WKCACFLayerRenderer::layerTreeDidChange): Added. Tells
  72200. WKCACFContextFlusher that the context has changed, and schedules a
  72201. render.
  72202. * platform/graphics/win/WKCACFLayerRenderer.h: Added
  72203. layerTreeDidChange.
  72204. 2010-07-29 Jeremy Orlow <jorlow@chromium.org>
  72205. Reviewed by Steve Block.
  72206. Rename all the IDBIndex classses to match the latest conventions
  72207. https://bugs.webkit.org/show_bug.cgi?id=43190
  72208. No functionality has changed.
  72209. IDBIndexRequest -> IDBIndex in the spec. So that's the first change.
  72210. IDBIndex was the name of our interface class though, so we need to rename
  72211. it to get it out of the way. While we're at it, we might as well clean
  72212. up the naming in general to make things more clear. In the future, we're
  72213. going to need another layer (yes, yuck) which will be shared by the async
  72214. and sync classes which will do caching and other optimizations. That will
  72215. then connect to the backend. We also added "Interface" to make it more
  72216. clear that's what the file/class is.
  72217. Existing layout tests are enough since nothing should change as far as JavaScript can see.
  72218. * Android.derived.jscbindings.mk:
  72219. * Android.derived.v8bindings.mk:
  72220. * Android.mk:
  72221. * CMakeLists.txt:
  72222. * DerivedSources.cpp:
  72223. * DerivedSources.make:
  72224. * GNUmakefile.am:
  72225. * WebCore.gypi:
  72226. * WebCore.pri:
  72227. * WebCore.pro:
  72228. * WebCore.xcodeproj/project.pbxproj:
  72229. * bindings/js/JSIDBAnyCustom.cpp:
  72230. (WebCore::toJS):
  72231. * bindings/v8/custom/V8IDBAnyCustom.cpp:
  72232. (WebCore::toV8):
  72233. * storage/IDBAny.cpp:
  72234. (WebCore::IDBAny::idbIndex):
  72235. (WebCore::IDBAny::set):
  72236. * storage/IDBAny.h:
  72237. (WebCore::IDBAny::):
  72238. * storage/IDBCallbacks.h:
  72239. * storage/IDBIndex.cpp: Added.
  72240. (WebCore::IDBIndex::IDBIndex):
  72241. (WebCore::IDBIndex::~IDBIndex):
  72242. * storage/IDBIndex.h:
  72243. (WebCore::IDBIndex::create):
  72244. (WebCore::IDBIndex::name):
  72245. (WebCore::IDBIndex::keyPath):
  72246. (WebCore::IDBIndex::unique):
  72247. * storage/IDBIndex.idl: Added.
  72248. * storage/IDBIndexBackendImpl.cpp: Added.
  72249. (WebCore::IDBIndexBackendImpl::IDBIndexBackendImpl):
  72250. (WebCore::IDBIndexBackendImpl::~IDBIndexBackendImpl):
  72251. * storage/IDBIndexBackendImpl.h: Added.
  72252. (WebCore::IDBIndexBackendImpl::create):
  72253. (WebCore::IDBIndexBackendImpl::name):
  72254. (WebCore::IDBIndexBackendImpl::keyPath):
  72255. (WebCore::IDBIndexBackendImpl::unique):
  72256. * storage/IDBIndexBackendInterface.h: Added.
  72257. (WebCore::IDBIndexBackendInterface::~IDBIndexBackendInterface):
  72258. * storage/IDBIndexImpl.cpp: Removed.
  72259. * storage/IDBIndexImpl.h: Removed.
  72260. * storage/IDBIndexRequest.cpp: Removed.
  72261. * storage/IDBIndexRequest.h: Removed.
  72262. * storage/IDBIndexRequest.idl: Removed.
  72263. * storage/IDBObjectStore.h:
  72264. * storage/IDBObjectStoreImpl.cpp:
  72265. (WebCore::IDBObjectStoreImpl::createIndex):
  72266. (WebCore::IDBObjectStoreImpl::index):
  72267. * storage/IDBObjectStoreImpl.h:
  72268. * storage/IDBObjectStoreRequest.cpp:
  72269. (WebCore::IDBObjectStoreRequest::index):
  72270. * storage/IDBObjectStoreRequest.h:
  72271. * storage/IDBObjectStoreRequest.idl:
  72272. * storage/IDBRequest.cpp:
  72273. (WebCore::IDBRequest::onSuccess):
  72274. * storage/IDBRequest.h:
  72275. 2010-07-30 Rafael Antognolli <antognolli@profusion.mobi>
  72276. Reviewed by Antonio Gomes.
  72277. [EFL] Add library version and soname to EFL generated libraries and binary.
  72278. https://bugs.webkit.org/show_bug.cgi?id=43212
  72279. Add version and soname to libwebcore.so in case of linking as shared
  72280. library.
  72281. No new feature, so no new tests.
  72282. * CMakeLists.txt:
  72283. 2010-07-30 Steve Block <steveblock@google.com>
  72284. Reviewed by Steve Block.
  72285. Add LayoutTestController methods to test DeviceOrientation
  72286. https://bugs.webkit.org/show_bug.cgi?id=39589
  72287. This patch does not hook up the new LayoutTestController method to WebKit
  72288. for any platform. This will be done in later patches.
  72289. https://bugs.webkit.org/show_bug.cgi?id=43181 tracks this for Mac.
  72290. Test: fast/dom/DeviceOrientation/basic-operation.html
  72291. * Android.mk:
  72292. * CMakeLists.txt:
  72293. * GNUmakefile.am:
  72294. * WebCore.exp.in:
  72295. * WebCore.gypi:
  72296. * WebCore.pro:
  72297. * WebCore.vcproj/WebCore.vcproj:
  72298. * WebCore.xcodeproj/project.pbxproj:
  72299. * dom/DeviceOrientationClient.h:
  72300. (WebCore::DeviceOrientationClient::~DeviceOrientationClient):
  72301. * dom/DeviceOrientationController.cpp:
  72302. (WebCore::DeviceOrientationController::DeviceOrientationController):
  72303. * dom/DeviceOrientationEvent.cpp:
  72304. * platform/mock/DeviceOrientationClientMock.cpp: Added.
  72305. (WebCore::DeviceOrientationClientMock::DeviceOrientationClientMock):
  72306. (WebCore::DeviceOrientationClientMock::setController):
  72307. (WebCore::DeviceOrientationClientMock::startUpdating):
  72308. (WebCore::DeviceOrientationClientMock::stopUpdating):
  72309. (WebCore::DeviceOrientationClientMock::setOrientation):
  72310. (WebCore::DeviceOrientationClientMock::timerFired):
  72311. * platform/mock/DeviceOrientationClientMock.h: Added.
  72312. (WebCore::DeviceOrientationClientMock::lastOrientation):
  72313. 2010-07-30 Satish Sampath <satish@chromium.org>
  72314. Reviewed by Jeremy Orlow.
  72315. Add a mock in WebCore for testing speech input
  72316. https://bugs.webkit.org/show_bug.cgi?id=42603
  72317. Layout tests will be added in a subsequent patch using this mock.
  72318. * Android.mk:
  72319. * GNUmakefile.am:
  72320. * WebCore.gypi:
  72321. * WebCore.pro:
  72322. * WebCore.vcproj/WebCore.vcproj:
  72323. * WebCore.xcodeproj/project.pbxproj:
  72324. * platform/mock/SpeechInputClientMock.cpp: Added.
  72325. (WebCore::SpeechInputClientMock::SpeechInputClientMock):
  72326. (WebCore::SpeechInputClientMock::startRecognition):
  72327. (WebCore::SpeechInputClientMock::stopRecording):
  72328. (WebCore::SpeechInputClientMock::cancelRecognition):
  72329. (WebCore::SpeechInputClientMock::setRecognitionResult):
  72330. (WebCore::SpeechInputClientMock::timerFired):
  72331. * platform/mock/SpeechInputClientMock.h: Added.
  72332. 2010-07-30 Nikolas Zimmermann <nzimmermann@rim.com>
  72333. Reviewed by Dirk Schulze.
  72334. Optimize SVGResources memory usage
  72335. https://bugs.webkit.org/show_bug.cgi?id=43236
  72336. Instead of storing pointers to all possible resources that could be applied to an element, group them in three categories:
  72337. clipper/filter/masker, marker-start/marker-mid/marker-end, and fill/stroke.
  72338. Only build the cached resources data for elements where the properties can be applied to. Maintain a static list of tagnames
  72339. for each of the three categories, to avoid doing unncessary work.
  72340. Doesn't affect any tests.
  72341. * rendering/SVGResources.cpp:
  72342. (WebCore::SVGResources::SVGResources):
  72343. (WebCore::clipperFilterMaskerTags):
  72344. (WebCore::markerTags):
  72345. (WebCore::fillAndStrokeTags):
  72346. (WebCore::SVGResources::buildCachedResources):
  72347. (WebCore::SVGResources::invalidateClient):
  72348. (WebCore::SVGResources::resourceDestroyed):
  72349. (WebCore::SVGResources::buildSetOfResources):
  72350. (WebCore::SVGResources::setClipper):
  72351. (WebCore::SVGResources::resetClipper):
  72352. (WebCore::SVGResources::setFilter):
  72353. (WebCore::SVGResources::resetFilter):
  72354. (WebCore::SVGResources::setMarkerStart):
  72355. (WebCore::SVGResources::resetMarkerStart):
  72356. (WebCore::SVGResources::setMarkerMid):
  72357. (WebCore::SVGResources::resetMarkerMid):
  72358. (WebCore::SVGResources::setMarkerEnd):
  72359. (WebCore::SVGResources::resetMarkerEnd):
  72360. (WebCore::SVGResources::setMasker):
  72361. (WebCore::SVGResources::resetMasker):
  72362. (WebCore::SVGResources::setFill):
  72363. (WebCore::SVGResources::resetFill):
  72364. (WebCore::SVGResources::setStroke):
  72365. (WebCore::SVGResources::resetStroke):
  72366. (WebCore::SVGResources::dump):
  72367. * rendering/SVGResources.h:
  72368. (WebCore::SVGResources::clipper):
  72369. (WebCore::SVGResources::filter):
  72370. (WebCore::SVGResources::markerStart):
  72371. (WebCore::SVGResources::markerMid):
  72372. (WebCore::SVGResources::markerEnd):
  72373. (WebCore::SVGResources::masker):
  72374. (WebCore::SVGResources::fill):
  72375. (WebCore::SVGResources::stroke):
  72376. (WebCore::SVGResources::ClipperFilterMaskerData::ClipperFilterMaskerData):
  72377. (WebCore::SVGResources::ClipperFilterMaskerData::create):
  72378. (WebCore::SVGResources::MarkerData::MarkerData):
  72379. (WebCore::SVGResources::MarkerData::create):
  72380. (WebCore::SVGResources::FillStrokeData::FillStrokeData):
  72381. (WebCore::SVGResources::FillStrokeData::create):
  72382. 2010-07-26 Andrei Popescu <andreip@google.com>
  72383. Reviewed by Jeremy Orlow.
  72384. [IndexedDB] IndexedDatabase should be called IDBFactory.
  72385. https://bugs.webkit.org/show_bug.cgi?id=42967
  72386. Rename IndexedDatabase to IDBFactory to match the specification.
  72387. Also implement the following new naming convention:
  72388. IDBFoo IDL interfaces are implemented using IDBFoo C++ classes.
  72389. IDBFoo objects have pointers to IDBFooBackendInterface objects.
  72390. IDBFooBackendInterface is implemented by IDBFooBackendImpl and
  72391. IDBFooBackendProxy (for Chromium).
  72392. No new tests needed, just renaming.
  72393. * Android.derived.jscbindings.mk:
  72394. * Android.derived.v8bindings.mk:
  72395. * Android.mk:
  72396. * CMakeLists.txt:
  72397. * DerivedSources.cpp:
  72398. * DerivedSources.make:
  72399. * GNUmakefile.am:
  72400. * WebCore.gyp/WebCore.gyp:
  72401. * WebCore.gypi:
  72402. * WebCore.pri:
  72403. * WebCore.pro:
  72404. * WebCore.xcodeproj/project.pbxproj:
  72405. * bindings/js/JSIDBAnyCustom.cpp:
  72406. (WebCore::toJS):
  72407. * bindings/v8/custom/V8IDBAnyCustom.cpp:
  72408. (WebCore::toV8):
  72409. * page/DOMWindow.cpp:
  72410. (WebCore::DOMWindow::clear):
  72411. (WebCore::DOMWindow::indexedDB):
  72412. * page/DOMWindow.h:
  72413. * page/DOMWindow.idl:
  72414. * page/PageGroup.cpp:
  72415. (WebCore::PageGroup::idbFactory):
  72416. * page/PageGroup.h:
  72417. * platform/chromium/ChromiumBridge.h:
  72418. * storage/IDBAny.cpp:
  72419. (WebCore::IDBAny::idbFactory):
  72420. (WebCore::IDBAny::set):
  72421. * storage/IDBAny.h:
  72422. (WebCore::IDBAny::):
  72423. * storage/IDBDatabaseRequest.cpp:
  72424. * storage/IDBFactory.cpp: Added.
  72425. (WebCore::IDBFactory::IDBFactory):
  72426. (WebCore::IDBFactory::~IDBFactory):
  72427. (WebCore::IDBFactory::open):
  72428. * storage/IDBFactory.h: Added.
  72429. (WebCore::IDBFactory::create):
  72430. * storage/IDBFactory.idl: Added.
  72431. * storage/IDBFactoryBackendInterface.cpp: Added.
  72432. (WebCore::IDBFactoryBackendInterface::create):
  72433. * storage/IDBFactoryBackendInterface.h: Added.
  72434. (WebCore::IDBFactoryBackendInterface::~IDBFactoryBackendInterface):
  72435. * storage/IDBFactoryBackendImpl.cpp: Added.
  72436. (WebCore::IDBFactoryBackendImpl::create):
  72437. (WebCore::IDBFactoryBackendImpl::IDBFactoryBackendImpl):
  72438. (WebCore::IDBFactoryBackendImpl::~IDBFactoryBackendImpl):
  72439. (WebCore::IDBFactoryBackendImpl::open):
  72440. * storage/IDBFactoryBackendImpl.h: Added.
  72441. * storage/IDBKeyRange.cpp:
  72442. (WebCore::IDBKeyRange::only):
  72443. (WebCore::IDBKeyRange::leftBound):
  72444. (WebCore::IDBKeyRange::rightBound):
  72445. (WebCore::IDBKeyRange::bound):
  72446. * storage/IDBKeyRange.h:
  72447. * storage/IDBKeyRange.idl:
  72448. * storage/IndexedDatabase.cpp: Removed.
  72449. * storage/IndexedDatabase.h: Removed.
  72450. * storage/IndexedDatabaseImpl.cpp: Removed.
  72451. * storage/IndexedDatabaseImpl.h: Removed.
  72452. * storage/IndexedDatabaseRequest.cpp: Removed.
  72453. * storage/IndexedDatabaseRequest.h: Removed.
  72454. * storage/IndexedDatabaseRequest.idl: Removed.
  72455. * storage/chromium/IDBFactoryBackendInterface.cpp: Added.
  72456. (WebCore::IDBFactoryBackendInterface::create):
  72457. * storage/chromium/IndexedDatabase.cpp: Removed.
  72458. 2010-07-29 Alexander Pavlov <apavlov@chromium.org>
  72459. Reviewed by Pavel Feldman.
  72460. Web Inspector: Crash on refresh with a comment selected in the Elements panel
  72461. https://bugs.webkit.org/show_bug.cgi?id=43183
  72462. * inspector/InspectorDOMAgent.cpp:
  72463. (WebCore::InspectorDOMAgent::nodeForPath):
  72464. * inspector/front-end/ElementsPanel.js:
  72465. (WebInspector.ElementsPanel.prototype.reset):
  72466. 2010-07-30 Renata Hodovan <reni@inf.u-szeged.hu>
  72467. Reviewed by Nikolas Zimmermann.
  72468. feTurbulence is not implemented.
  72469. https://bugs.webkit.org/show_bug.cgi?id=5864
  72470. This code is based on the previous implementation of
  72471. Dirk Schulze, extended with some modification and optimization.
  72472. LayoutTests: Updating expected values for turbulence filter.
  72473. svg/W3C-SVG-1.1/filters-turb-01-f.svg
  72474. * svg/SVGFETurbulenceElement.cpp:
  72475. (WebCore::SVGFETurbulenceElement::build):
  72476. * svg/graphics/filters/SVGFETurbulence.cpp:
  72477. (WebCore::FETurbulence::FETurbulence):
  72478. (WebCore::FETurbulence::create):
  72479. (WebCore::FETurbulence::PaintingData::PaintingData):
  72480. (WebCore::FETurbulence::PaintingData::random):
  72481. (WebCore::smoothCurve):
  72482. (WebCore::linearInterpolation):
  72483. (WebCore::FETurbulence::initPaint):
  72484. (WebCore::checkNoise):
  72485. (WebCore::FETurbulence::noise2D):
  72486. (WebCore::Noise::if):
  72487. (WebCore::FETurbulence::calculateTurbulenceValueForPoint):
  72488. (WebCore::FETurbulence::apply):
  72489. * svg/graphics/filters/SVGFETurbulence.h:
  72490. (WebCore::):
  72491. 2010-07-29 Martin Robinson <mrobinson@igalia.com>
  72492. Reviewed by Dirk Schulze.
  72493. Cairo: Need to implement GraphicsContext::clipConvexPolygon()
  72494. https://bugs.webkit.org/show_bug.cgi?id=41308
  72495. Implement clipConvexPolygon for Cairo ports and enable new path based
  72496. borders for that port as well.
  72497. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  72498. (WebCore::addConvexPolygonToContext): Add this helper method.
  72499. (WebCore::GraphicsContext::drawConvexPolygon): Use the new addConvexPolygonToContext helper.
  72500. (WebCore::GraphicsContext::clipConvexPolygon): Implement this method.
  72501. * rendering/RenderObject.h: Enable path based borders for Cairo.
  72502. 2010-07-29 Ryosuke Niwa <rniwa@webkit.org>
  72503. Reviewed by Darin Adler.
  72504. InsertOrderedList does not switch the list type properly when it has an inner list.
  72505. https://bugs.webkit.org/show_bug.cgi?id=43166
  72506. The bug was caused by forcedCreateList was not set to true when the start and the end
  72507. of the selection lies in the same list. Added selectionHasListOfType to fix this problem.
  72508. WebKit used not to convert the outer lists even when the list is fully selected.
  72509. Corrected this behavior by converting the entire list at once when the list is fully selected.
  72510. To decide whether or not a list is fully selected, added currentSelection argument to doApplyForSingleParagraph.
  72511. Tests: editing/execCommand/switch-list-type-with-inner-list.html
  72512. editing/execCommand/switch-list-type-with-orphaned-li.html
  72513. * editing/InsertListCommand.cpp:
  72514. (WebCore::InsertListCommand::mergeWithNeighboringLists): Extracted the code to merge lists.
  72515. (WebCore::InsertListCommand::selectionHasListOfType): attachment.cgi
  72516. (WebCore::InsertListCommand::doApply): Calls selectionHasListOfType.
  72517. (WebCore::InsertListCommand::doApplyForSingleParagraph): See above.
  72518. (WebCore::InsertListCommand::listifyParagraph): Calls mergeWithNeighboringLists.
  72519. * editing/InsertListCommand.h:
  72520. * editing/htmlediting.cpp:
  72521. (WebCore::canMergeLists): Ensures lists being merged are instances of HTMLElement.
  72522. (WebCore::isNodeVisiblyContainedWithin): Works properly when one end is inside the range.
  72523. 2010-07-29 Martin Robinson <mrobinson@igalia.com>
  72524. Reviewed by Dirk Schulze.
  72525. [Cairo] Bring behavior of paths on the Cairo GraphicsContext into line with the CoreGraphics port
  72526. https://bugs.webkit.org/show_bug.cgi?id=41732
  72527. Do not apply paths added to the Cairo GraphicsContext, until they are used.
  72528. This prevents drawing routines such as fillRect from interacting with any
  72529. path which callers are constructing on the GraphicsContext.
  72530. This behavior is necessary to close bug https://bugs.webkit.org/show_bug.cgi?id=41308
  72531. so tests for that issue will test this fix.
  72532. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  72533. (WebCore::appendPathToCairoContext): Added. A helper method which adds a path
  72534. to a native Cairo context.
  72535. (WebCore::setPathOnCairoContext): Added. Like appendPathToCairoContext, but clears the
  72536. existing path first.
  72537. (WebCore::appendWebCorePathToCairoContext): Added. Like appendPathToCairoContext, but
  72538. operates on a WebCore path.
  72539. (WebCore::fillCurrentCairoPath): Added. Helper which fills the current cairo context path.
  72540. (WebCore::strokeCurrentCairoPath): Added. Helper which strokes the current cairo context path.
  72541. (WebCore::GraphicsContext::drawEllipse): Only clear the Cairo path if cairo_stroke
  72542. was not called, because cairo_stroke implicitly clears the path.
  72543. (WebCore::GraphicsContext::drawConvexPolygon): Ditto.
  72544. (WebCore::GraphicsContext::fillPath): Copy the path from m_pendingPath to the context
  72545. and clear m_pendingPath, instead of relying on the pre-existing context path. Do the
  72546. actual fill via the new helper.
  72547. (WebCore::GraphicsContext::strokePath): Ditto.
  72548. (WebCore::GraphicsContext::drawPath): Ditto.
  72549. (WebCore::GraphicsContext::fillRect): Use the new fillCurrentCairoPath helper.
  72550. (WebCore::GraphicsContext::drawFocusRing): Use the new appendWebCorePathToCairoContext helper instead
  72551. of addPath (which will blow away any path callers are building).
  72552. (WebCore::GraphicsContext::addInnerRoundedRectClip): Use the new appendWebCorePathToCairoContext helper instead
  72553. of addPath (which will blow away any path callers are building).
  72554. (WebCore::GraphicsContext::strokeRect): Use the new strokeCurrentCairoPath helper.
  72555. (WebCore::GraphicsContext::beginPath): Clear out m_pendingPath here instead of the main native context.
  72556. (WebCore::GraphicsContext::addPath): Add the path to m_pendingPath instead of the main native context.
  72557. Also ensure that the transformation matrix of the m_pendingPath is equal to that of the main
  72558. cairo context.
  72559. (WebCore::GraphicsContext::clipOut): Use the appendWebCorePathToCairoContext helper here.
  72560. (WebCore::GraphicsContext::fillRoundedRect): Ditto and remove an unnecessary beginPath call.
  72561. * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h: Add a new m_pendingPath member.
  72562. 2010-07-29 Sheriff Bot <webkit.review.bot@gmail.com>
  72563. Unreviewed, rolling out r64313.
  72564. http://trac.webkit.org/changeset/64313
  72565. https://bugs.webkit.org/show_bug.cgi?id=43233
  72566. Some Chromium bots are not happy with it for some unknown
  72567. reason. (Requested by dumi on #webkit).
  72568. * bindings/js/JSCustomVoidCallback.cpp:
  72569. (WebCore::JSCustomVoidCallback::~JSCustomVoidCallback):
  72570. * bindings/scripts/CodeGeneratorJS.pm:
  72571. * bindings/scripts/test/JS/JSTestCallback.cpp:
  72572. (WebCore::JSTestCallback::~JSTestCallback):
  72573. * platform/sql/SQLiteDatabase.cpp:
  72574. (WebCore::SQLiteDatabase::SQLiteDatabase):
  72575. (WebCore::SQLiteDatabase::close):
  72576. (WebCore::SQLiteDatabase::lock):
  72577. (WebCore::SQLiteDatabase::unlock):
  72578. * platform/sql/SQLiteDatabase.h:
  72579. * platform/sql/SQLiteStatement.cpp:
  72580. (WebCore::SQLiteStatement::prepare):
  72581. (WebCore::SQLiteStatement::step):
  72582. * storage/AbstractDatabase.cpp:
  72583. * storage/AbstractDatabase.h:
  72584. * storage/DatabaseTracker.cpp:
  72585. * storage/DatabaseTracker.h:
  72586. * storage/SQLStatement.cpp:
  72587. (WebCore::SQLStatement::execute):
  72588. * storage/SQLStatementSync.cpp:
  72589. (WebCore::SQLStatementSync::execute):
  72590. * storage/SQLTransaction.cpp:
  72591. (WebCore::SQLTransaction::checkAndHandleClosedDatabase):
  72592. (WebCore::SQLTransaction::performNextStep):
  72593. (WebCore::SQLTransaction::performPendingCallback):
  72594. (WebCore::SQLTransaction::deliverTransactionCallback):
  72595. (WebCore::SQLTransaction::postflightAndCommit):
  72596. (WebCore::SQLTransaction::deliverTransactionErrorCallback):
  72597. (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback):
  72598. * storage/SQLTransaction.h:
  72599. * storage/chromium/DatabaseTrackerChromium.cpp:
  72600. * workers/WorkerThread.cpp:
  72601. (WebCore::WorkerThread::stop):
  72602. 2010-07-29 Martin Robinson <mrobinson@igalia.com>
  72603. Unreviewed, rolling out r64318.
  72604. http://trac.webkit.org/changeset/64318
  72605. https://bugs.webkit.org/show_bug.cgi?id=41732
  72606. This change broke many tests.
  72607. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  72608. (WebCore::GraphicsContext::drawEllipse):
  72609. (WebCore::GraphicsContext::drawConvexPolygon):
  72610. (WebCore::GraphicsContext::fillPath):
  72611. (WebCore::GraphicsContext::strokePath):
  72612. (WebCore::GraphicsContext::drawPath):
  72613. (WebCore::GraphicsContext::drawFocusRing):
  72614. (WebCore::GraphicsContext::addInnerRoundedRectClip):
  72615. (WebCore::GraphicsContext::beginPath):
  72616. (WebCore::GraphicsContext::addPath):
  72617. (WebCore::GraphicsContext::clipOut):
  72618. (WebCore::GraphicsContext::fillRoundedRect):
  72619. * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
  72620. 2010-07-29 Martin Robinson <mrobinson@igalia.com>
  72621. Reviewed by Dirk Schulze.
  72622. [Cairo] Bring behavior of paths on the Cairo GraphicsContext into line with the CoreGraphics port
  72623. https://bugs.webkit.org/show_bug.cgi?id=41732
  72624. Do not apply paths added to the Cairo GraphicsContext, until they are used.
  72625. This prevents drawing routines such as fillRect from interacting with any
  72626. path which callers are constructing on the GraphicsContext.
  72627. This behavior is necessary to close bug https://bugs.webkit.org/show_bug.cgi?id=41308
  72628. so tests for that issue will test this fix.
  72629. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  72630. (WebCore::appendPathToCairoContext): Added. A helper method which adds a path
  72631. to a native Cairo context.
  72632. (WebCore::setPathOnCairoContext): Added. Like appendPathToCairoContext, but clears the
  72633. existing path first.
  72634. (WebCore::appendWebCorePathToCairoContext): Added. Like appendPathToCairoContext, but
  72635. operates on a WebCore path.
  72636. (WebCore::GraphicsContext::drawEllipse): Only clear the Cairo path if cairo_stroke
  72637. was not called, because cairo_stroke implicitly clears the path.
  72638. (WebCore::GraphicsContext::drawConvexPolygon): Ditto.
  72639. (WebCore::GraphicsContext::fillPath): Copy the path from m_pendingPath to the context
  72640. and clear m_pendingPath, instead of relying on the pre-existing context path.
  72641. (WebCore::GraphicsContext::strokePath): Ditto.
  72642. (WebCore::GraphicsContext::drawPath): Ditto.
  72643. (WebCore::GraphicsContext::drawFocusRing): Use the new appendWebCorePathToCairoContext helper instead
  72644. of addPath (which will blow away any path callers are building).
  72645. (WebCore::GraphicsContext::addInnerRoundedRectClip): Use the new appendWebCorePathToCairoContext helper instead
  72646. of addPath (which will blow away any path callers are building).
  72647. (WebCore::GraphicsContext::beginPath): Clear out m_pendingPath here instead of the main native context.
  72648. (WebCore::GraphicsContext::addPath): Add the path to m_pendingPath instead of the main native context.
  72649. Also ensure that the transformation matrix of the m_pendingPath is equal to that of the main
  72650. cairo context.
  72651. (WebCore::GraphicsContext::clipOut): Use the appendWebCorePathToCairoContext helper here.
  72652. (WebCore::GraphicsContext::fillRoundedRect): Ditto and remove an unnecessary beginPath call.
  72653. * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h: Add a new m_pendingPath member.
  72654. 2010-07-29 Martin Robinson <mrobinson@igalia.com>
  72655. Reviewed by Dirk Schulze.
  72656. [Cairo] Remove setStrokeStyle workaround for InlineTextBoxes
  72657. https://bugs.webkit.org/show_bug.cgi?id=43136
  72658. Remove workaround added in https://bugs.webkit.org/show_bug.cgi?id=15659
  72659. to fix stroke style for InlineTextBox underlines.
  72660. No new tests as this should not change functionality.
  72661. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  72662. (WebCore::GraphicsContext::drawLineForText): Remove old workaround.
  72663. 2010-07-28 Dumitru Daniliuc <dumi@chromium.org>
  72664. Reviewed by David Levin.
  72665. Interrupt all DB operations when the worker is terminating.
  72666. https://bugs.webkit.org/show_bug.cgi?id=42843
  72667. Tests: fast/workers/storage/interrupt-database-sync.html
  72668. fast/workers/storage/interrupt-database.html
  72669. * bindings/js/JSCustomVoidCallback.cpp:
  72670. (WebCore::JSCustomVoidCallback::~JSCustomVoidCallback): If the
  72671. destructor is called on the context thread, delete m_data directly
  72672. instead of posting a task to do that. We need to do that to make
  72673. sure that all JS objects are destroyed before
  72674. WorkerThreadShutdownFinishTask (in WorkerThread.cpp) calls
  72675. WorkerContext::clearScript().
  72676. * bindings/scripts/CodeGeneratorJS.pm: Same change as above, for
  72677. all auto-generated callbacks.
  72678. * bindings/scripts/test/JS/JSTestCallback.cpp:
  72679. (WebCore::JSTestCallback::~JSTestCallback): Updated the
  72680. expectations for run-bindings-tests.
  72681. * platform/sql/SQLiteDatabase.cpp: Added the ability to interrupt
  72682. all DB operations in progress, unless the database was closed or
  72683. is being closed. Unlike sqlite3_interrupt(),
  72684. SQLiteDatabase::interrupt() is sticky: once it's called, trying to
  72685. run any statement on that database will fail with a
  72686. SQLITE_INTERRUPT error code.
  72687. (WebCore::SQLiteDatabase::SQLiteDatabase):
  72688. (WebCore::SQLiteDatabase::close):
  72689. (WebCore::SQLiteDatabase::interrupt):
  72690. (WebCore::SQLiteDatabase::isInterrupted):
  72691. * platform/sql/SQLiteDatabase.h: Added a mutex that can used by
  72692. SQLiteStatement to check if the database was interrupted.
  72693. (WebCore::SQLiteDatabase::databaseMutex):
  72694. * platform/sql/SQLiteStatement.cpp: Changed prepare() and step()
  72695. to check if the database was interrupted, before trying to prepare
  72696. or run the statement. The other methods don't need to hold on to
  72697. the DB lock while running, because they're fast, so we don't need
  72698. to interrupt them.
  72699. (WebCore::SQLiteStatement::prepare):
  72700. (WebCore::SQLiteStatement::step):
  72701. * storage/AbstractDatabase.cpp: Made SQLiteDatabase::interrupt()
  72702. and isInterrupted() visible to WebSQLDatabases classes.
  72703. (WebCore::AbstractDatabase::interrupt):
  72704. (WebCore::AbstractDatabase::isInterrupted):
  72705. * storage/AbstractDatabase.h:
  72706. * storage/DatabaseTracker.cpp: Added a method to interrupt all
  72707. databases in a given context.
  72708. (WebCore::DatabaseTracker::interruptAllDatabasesForContext):
  72709. * storage/DatabaseTracker.h:
  72710. * storage/SQLStatement.cpp: Changed the exception/error reported
  72711. when a statement is interrupted.
  72712. (WebCore::SQLStatement::execute):
  72713. * storage/SQLStatementSync.cpp:
  72714. (WebCore::SQLStatementSync::execute):
  72715. * storage/SQLTransaction.cpp: Changed the code to release the
  72716. callback objects as soon as they're not needed.
  72717. (WebCore::SQLTransaction::checkAndHandleClosedOrInterruptedDatabase):
  72718. Changed this method to not schedule the next transaction step when
  72719. the database is interrupted.
  72720. (WebCore::SQLTransaction::performNextStep):
  72721. (WebCore::SQLTransaction::performPendingCallback):
  72722. (WebCore::SQLTransaction::deliverTransactionCallback):
  72723. (WebCore::SQLTransaction::postflightAndCommit):
  72724. (WebCore::SQLTransaction::deliverTransactionErrorCallback):
  72725. (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback):
  72726. * storage/SQLTransaction.h:
  72727. * storage/chromium/DatabaseTrackerChromium.cpp: Added a method to
  72728. interrupt all databases in a given context.
  72729. (WebCore::DatabaseTracker::interruptAllDatabasesForContext):
  72730. * workers/WorkerThread.cpp:
  72731. (WebCore::WorkerThread::stop): Added a call to
  72732. DatabaseTracker::interruptAllDatabasesForContext().
  72733. 2010-07-29 Bernhard Bauer <bauerb@chromium.org>
  72734. Reviewed by Darin Fisher.
  72735. Check if plugins are allowed before creating a Java applet.
  72736. https://bugs.webkit.org/show_bug.cgi?id=43196
  72737. * loader/SubframeLoader.cpp:
  72738. (WebCore::SubframeLoader::createJavaAppletWidget):
  72739. 2010-07-29 James Robinson <jamesr@chromium.org>
  72740. Reviewed by Simon Fraser.
  72741. Ask a canvas' rendering context if it is accelerated instead tying it directly to webgl
  72742. https://bugs.webkit.org/show_bug.cgi?id=43206
  72743. This unifies the logic for whether a canvas is accelerated or not into one place
  72744. and makes it easier to expand the logic in the future to, for example, cover some
  72745. 2d canvases.
  72746. Just a refactoring, no change in behavior so no new tests.
  72747. * html/canvas/CanvasRenderingContext.h:
  72748. (WebCore::CanvasRenderingContext::isAccelerated):
  72749. * html/canvas/WebGLRenderingContext.h:
  72750. (WebCore::WebGLRenderingContext::isAccelerated):
  72751. * rendering/RenderHTMLCanvas.cpp:
  72752. (WebCore::RenderHTMLCanvas::requiresLayer):
  72753. * rendering/RenderLayerCompositor.cpp:
  72754. (WebCore::RenderLayerCompositor::requiresCompositingForCanvas):
  72755. 2010-07-29 Anders Carlsson <andersca@apple.com>
  72756. Reviewed by Sam Weinig.
  72757. Implement NPN_Status
  72758. https://bugs.webkit.org/show_bug.cgi?id=43205
  72759. * WebCore.exp.in:
  72760. Export Chrome::setStatusText.
  72761. 2010-07-29 Victor Wang <victorw@chromium.org>
  72762. Unreviewed, rolling out r64270.
  72763. http://trac.webkit.org/changeset/64270
  72764. https://bugs.webkit.org/show_bug.cgi?id=39589
  72765. The patch breaks chromium webkit unittest
  72766. * WebCore.exp.in:
  72767. * WebCore.xcodeproj/project.pbxproj:
  72768. * dom/DeviceOrientationClient.h:
  72769. (WebCore::DeviceOrientationClient::~DeviceOrientationClient):
  72770. * dom/DeviceOrientationController.cpp:
  72771. (WebCore::DeviceOrientationController::DeviceOrientationController):
  72772. * dom/DeviceOrientationEvent.cpp:
  72773. * platform/mock/DeviceOrientationClientMock.cpp: Removed.
  72774. * platform/mock/DeviceOrientationClientMock.h: Removed.
  72775. 2010-07-29 Simon Fraser <simon.fraser@apple.com>
  72776. Reviewed by Darin Adler.
  72777. Resizer control does not paint in otherwise empty compositing layer
  72778. https://bugs.webkit.org/show_bug.cgi?id=42306
  72779. Ensure that we create backing store for an empty element with resize: both,
  72780. in order to render the resizer control.
  72781. Test: compositing/overflow/resize-painting.html
  72782. * rendering/RenderLayerBacking.h:
  72783. * rendering/RenderLayerBacking.cpp:
  72784. (WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer): Check for hasOverflowControls()
  72785. earlier, before any child checks.
  72786. (WebCore::RenderLayerBacking::hasNonCompositingDescendants): Renamed from hasNonCompositingContent()
  72787. to clarify its purpose.
  72788. 2010-07-29 Adam Roben <aroben@apple.com>
  72789. Remove WKCACFLayer::Lanczos
  72790. This member is also unused.
  72791. Rubber-stamped in advance by John Sullivan.
  72792. * platform/graphics/win/WKCACFLayer.cpp:
  72793. (WebCore::toCACFFilterType):
  72794. (WebCore::fromCACFFilterType):
  72795. * platform/graphics/win/WKCACFLayer.h:
  72796. (WebCore::WKCACFLayer::):
  72797. 2010-07-29 Adam Roben <aroben@apple.com>
  72798. Remove some unused WKCACFLayer members
  72799. Fixes <http://webkit.org/b/43200> WKCACFLayer has some unused members
  72800. Reviewed by John Sullivan.
  72801. * platform/graphics/win/WKCACFLayer.h: Removed [set]ClearsContext,
  72802. [set]Filters, and [set]SortsSublayers.
  72803. 2010-07-28 Justin Schuh <jschuh@chromium.org>
  72804. Reviewed by Nate Chapin.
  72805. Clear PluginData's page pointer on Page destruction
  72806. https://bugs.webkit.org/show_bug.cgi?id=43147
  72807. Test: plugins/access-after-page-destroyed.html
  72808. * page/Page.cpp:
  72809. (WebCore::Page::~Page):
  72810. 2010-07-29 Simon Fraser <simon.fraser@apple.com>
  72811. Reviewed by Darin Adler.
  72812. SHOULD NEVER BE REACHED assertion when switching tabs with composited content
  72813. https://bugs.webkit.org/show_bug.cgi?id=43167
  72814. When the root layer becomes unattached (e.g. when switching tabs), don't return
  72815. 'false' from paintingGoesToWindow() because that will cause a -setNeedsDispay, which
  72816. both allocates wasteful backing store, and causes an assertion when we try to
  72817. paint the layer.
  72818. Test: manual-tests/compositing/assert-on-tab-switch.html: Added.
  72819. * rendering/RenderLayerBacking.cpp:
  72820. (WebCore::RenderLayerBacking::paintingGoesToWindow):
  72821. 2010-07-29 Simon Fraser <simon.fraser@apple.com>
  72822. Reviewed by Pavel Feldman.
  72823. Crash when computing pseudo-style of a vanished scrollbar in inspector
  72824. https://bugs.webkit.org/show_bug.cgi?id=42561
  72825. When a styled overflow:scroll scrollbar gets destroyed, we need to clear out the m_owner pointer,
  72826. otherwise the event handling code (which keeps the Scrollbar alive) later causes the scrollbar
  72827. to try to use m_owner to get pseudo style.
  72828. Test: scrollbars/overflow-custom-scrollbar-crash.html
  72829. * rendering/RenderLayer.cpp:
  72830. (WebCore::RenderLayer::destroyScrollbar): If this is a custom scrollbar, clear the owning renderer.
  72831. * rendering/RenderScrollbar.cpp:
  72832. (WebCore::RenderScrollbar::getScrollbarPseudoStyle): Bail if m_owner is 0.
  72833. * rendering/RenderScrollbar.h:
  72834. (WebCore::RenderScrollbar::clearOwningRenderer): New method.
  72835. 2010-07-29 Nikolas Zimmermann <nzimmermann@rim.com>
  72836. Not reviewed. Fix release builds, by removing unused variables, that only served for ASSERTs that are no longer needed.
  72837. * rendering/SVGRenderSupport.cpp:
  72838. (WebCore::SVGRenderSupport::prepareToRenderSVGContent):
  72839. (WebCore::SVGRenderSupport::pointInClippingArea):
  72840. 2010-07-29 Nikolas Zimmermann <nzimmermann@rim.com>
  72841. Not reviewed. Fix build warning about unreachable code, seen on the windows slave.
  72842. * rendering/RenderSVGContainer.cpp:
  72843. (WebCore::RenderSVGContainer::selfWillPaint):
  72844. * rendering/RenderSVGRoot.cpp:
  72845. (WebCore::RenderSVGRoot::selfWillPaint):
  72846. 2010-07-29 Nikolas Zimmermann <nzimmermann@rim.com>
  72847. Reviewed by Dirk Schulze.
  72848. WebKit shouldn't ignore resource cycles, but break them as Opera does
  72849. https://bugs.webkit.org/show_bug.cgi?id=43031
  72850. mask images are not updated when render objects' bounds change
  72851. https://bugs.webkit.org/show_bug.cgi?id=15124
  72852. SVG Gradients do not resize correctly
  72853. https://bugs.webkit.org/show_bug.cgi?id=41902
  72854. svg/dynamic-updates: SVGMarkerElement markerHeight/Width tests are broken
  72855. https://bugs.webkit.org/show_bug.cgi?id=42616
  72856. svg/dynamic-updates: SVGMaskElement tests are all broken
  72857. https://bugs.webkit.org/show_bug.cgi?id=42617
  72858. Don't ignore resources containing cyclic references, but break them, as discussed on SVG WG mailing lists - to be compatible with Opera which already does that.
  72859. We used to lookup RenderSVGResourceContainers objects, by extracting the URI reference from the SVGRenderStyle, then utilizing getElementById() to lookup the
  72860. node, and access its renderer. Opera ignores such references, if they point to resources that contain cyclic references. Ignoring them would mean we have
  72861. to mutate the render style to empty the resource strings. That obviously doesn't work, as it would break expectations (getComputedStyle, etc.).
  72862. Introduce a SVGResources class that stores pointers to all resources, that can be applied to a RenderObject (clipper/filter/markers/masker).
  72863. Add a SVGResourcesCache class, which is basically a HashMap<RenderObject*, SVGResources*>. Whenever a RenderObject receives style, we extract the URI references
  72864. from the SVGRenderStyle, look up the RenderSVGResourceContainer* objects, and store them in a SVGResources* class. Then we execute a cycle detection logic,
  72865. which detects cyclic references and breaks them. Breaking them means just nulling the pointer to the resource in the SVGResources object. Those SVGResources
  72866. objects are cached, and used throughout the render tree to access resources. This way it's guaranteed that all cyclic references are resolved until layout/paint
  72867. phase begins.
  72868. Add destroy/styleDidChange/updateFromElement methods to all SVG renderers, in order to keep track of resource/client changes in the SVGResourcesCache.
  72869. As side-effect the SVGResourcesCache now knows which RenderObject references which resource, and thus can handle client registration for a RenderSVGResourceContainer.
  72870. The RenderSVGResourceContainer now holds a HashSet of RenderObjects, that's always up2date, and not related to the fact wheter a resources has already been used
  72871. for painting. The old logic missed to register clients for a resource, when the resource was in an invalid state. Fixing that fixes the svg/dynamic-updates/SVGMaskElement* tests.
  72872. Rewrite all svg/custom/recursive-(filter|gradient|mask|pattern).svg tests to contain a reference image how it should be renderered. All 1:1 compatible with Opera now.
  72873. * rendering/RenderForeignObject.cpp:
  72874. (WebCore::RenderForeignObject::layout): Grab selfNeedsLayout() before calling RenderBlock::layout(), otherwhise it's always false.
  72875. * rendering/RenderPath.cpp: Don't look up resources manually, use SVGResourcesCache.
  72876. (WebCore::RenderPath::fillContains): Remove constness, to avoid the need to pass around const RenderObjects* to the SVGResourcesCache.
  72877. (WebCore::RenderPath::strokeContains): Ditto.
  72878. (WebCore::RenderPath::layout): s/RenderSVGResource::invalidateAllResourcesOfRenderer/SVGResourcesCache::clientLayoutChanged/.
  72879. (WebCore::RenderPath::calculateMarkerBoundsIfNeeded): Remove special client handling for markers, it's all unified now.
  72880. (WebCore::RenderPath::styleWillChange): Only call setNeedsBoundariesUpdate when handling StyleDifferenceRepaint/Layout.
  72881. * rendering/RenderPath.h:
  72882. * rendering/RenderSVGBlock.cpp:
  72883. (WebCore::RenderSVGBlock::destroy): Forward to SVGResourcesCache::clientDestroyed.
  72884. (WebCore::RenderSVGBlock::styleDidChange): Forward to SVGResourcesCache::clientStyleChanged.
  72885. (WebCore::RenderSVGBlock::updateFromElement): Forward to SVGResourcesCache::clientUpdatedFromElement.
  72886. * rendering/RenderSVGBlock.h:
  72887. * rendering/RenderSVGContainer.cpp:
  72888. (WebCore::RenderSVGContainer::layout): s/RenderSVGResource::invalidateAllResourcesOfRenderer/SVGResourcesCache::clientLayoutChanged/.
  72889. (WebCore::RenderSVGContainer::selfWillPaint): Don't look up resources manually, use SVGResourcesCache.
  72890. * rendering/RenderSVGContainer.h:
  72891. * rendering/RenderSVGGradientStop.cpp:
  72892. (WebCore::RenderSVGGradientStop::styleDidChange): Rewrite, as invalidateResourceClients() is gone.
  72893. * rendering/RenderSVGHiddenContainer.h: Make layout() protected, as RenderSVGResourceContainer overrides it.
  72894. * rendering/RenderSVGImage.cpp:
  72895. (WebCore::RenderSVGImage::layout): s/RenderSVGResource::invalidateAllResourcesOfRenderer/SVGResourcesCache::clientLayoutChanged/.
  72896. (WebCore::RenderSVGImage::destroy): Forward to SVGResourcesCache::clientDestroyed.
  72897. (WebCore::RenderSVGImage::styleDidChange): Forward to SVGResourcesCache::clientStyleChanged.
  72898. (WebCore::RenderSVGImage::updateFromElement): Forward to SVGResourcesCache::clientUpdatedFromElement.
  72899. (WebCore::RenderSVGImage::imageChanged): Don't look up resources manually, use SVGResourcesCache.
  72900. * rendering/RenderSVGImage.h:
  72901. * rendering/RenderSVGInline.cpp:
  72902. (WebCore::RenderSVGInline::destroy): Forward to SVGResourcesCache::clientDestroyed.
  72903. (WebCore::RenderSVGInline::styleDidChange): Forward to SVGResourcesCache::clientStyleChanged.
  72904. (WebCore::RenderSVGInline::updateFromElement): Forward to SVGResourcesCache::clientUpdatedFromElement.
  72905. * rendering/RenderSVGInline.h:
  72906. * rendering/RenderSVGModelObject.cpp:
  72907. (WebCore::RenderSVGModelObject::destroy): Forward to SVGResourcesCache::clientDestroyed.
  72908. (WebCore::RenderSVGModelObject::styleDidChange): Forward to SVGResourcesCache::clientStyleChanged.
  72909. (WebCore::RenderSVGModelObject::updateFromElement): Forward to SVGResourcesCache::clientUpdatedFromElement.
  72910. * rendering/RenderSVGModelObject.h:
  72911. * rendering/RenderSVGResource.cpp:
  72912. (WebCore::RenderSVGResource::fillPaintingResource): Remove const from RenderObject parameter.
  72913. (WebCore::RenderSVGResource::strokePaintingResource): Ditto.
  72914. (WebCore::RenderSVGResource::markForLayoutAndParentResourceInvalidation): Early exit if we found the first parent resource.
  72915. * rendering/RenderSVGResource.h:
  72916. * rendering/RenderSVGResourceClipper.cpp:
  72917. (WebCore::RenderSVGResourceClipper::~RenderSVGResourceClipper): Early exit if m_clipper is empty.
  72918. (WebCore::RenderSVGResourceClipper::invalidateClients): Use new helper functions to invalidate clients, shared between all resources in RenderSVGResourceContainer.
  72919. (WebCore::RenderSVGResourceClipper::invalidateClient): Ditto.
  72920. (WebCore::RenderSVGResourceClipper::applyResource): Remove containsCyclicReference() check, SVGResourcesCycleSolver breaks cyclic references, resources do not need to take care anymore.
  72921. (WebCore::RenderSVGResourceClipper::createClipData): Don't look up resources manually, use SVGResourcesCache.
  72922. (WebCore::RenderSVGResourceClipper::hitTestClipContent): Remove containsCyclicReference() check, SVGResourcesCycleSolver breaks cyclic references, resources do not need to take care anymore.
  72923. * rendering/RenderSVGResourceClipper.h:
  72924. * rendering/RenderSVGResourceContainer.cpp:
  72925. (WebCore::svgExtensionsFromNode):
  72926. (WebCore::RenderSVGResourceContainer::RenderSVGResourceContainer): Stop registering resource from the constructor, delegate to styleDidChange.
  72927. (WebCore::RenderSVGResourceContainer::~RenderSVGResourceContainer): Only deregister resource if it was ever registered.
  72928. (WebCore::RenderSVGResourceContainer::layout): invalidateClients() here, to avoid the need for invalidateResourceClients() in the SVG DOM. Just call setNeedsLayout() from the SVG DOM.
  72929. (WebCore::RenderSVGResourceContainer::destroy): Forward to SVGResourcesCache::resourceDestroyed.
  72930. (WebCore::RenderSVGResourceContainer::styleDidChange): Register resource not in the constructor but when it first receives style.
  72931. (WebCore::RenderSVGResourceContainer::idChanged): Don't duplicate code, use existing methods from SVGResourcesCache.
  72932. (WebCore::RenderSVGResourceContainer::markAllClientsForInvalidation): Add new helper function, to share code between all resources.
  72933. (WebCore::RenderSVGResourceContainer::markClientForInvalidation): Ditto.
  72934. (WebCore::RenderSVGResourceContainer::addClient): SVGResourcesCache now manages the list of clients. It calls addClient() for each RenderObject that uses this resource.
  72935. (WebCore::RenderSVGResourceContainer::removeClient): SVGResourcesCache now manages the list of clients.
  72936. (WebCore::RenderSVGResourceContainer::registerResource): New helper function sharing code between idChanged / styleDidChange.
  72937. (WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke): Add FIXME that the function is misplaced.
  72938. * rendering/RenderSVGResourceContainer.h: Move most functions to the new RenderSVGResourceContainer.cpp file.
  72939. * rendering/RenderSVGResourceFilter.cpp:
  72940. (WebCore::RenderSVGResourceFilter::~RenderSVGResourceFilter): Early exit if m_filter is empty.
  72941. (WebCore::RenderSVGResourceFilter::invalidateClients): Use new helper functions to invalidate clients, shared between all resources in RenderSVGResourceContainer.
  72942. (WebCore::RenderSVGResourceFilter::invalidateClient): Ditto.
  72943. * rendering/RenderSVGResourceGradient.cpp:
  72944. (WebCore::RenderSVGResourceGradient::~RenderSVGResourceGradient): Early exit if m_gradient is empty.
  72945. (WebCore::RenderSVGResourceGradient::invalidateClients): Use new helper functions to invalidate clients, shared between all resources in RenderSVGResourceContainer.
  72946. (WebCore::RenderSVGResourceGradient::invalidateClient): Ditto.
  72947. * rendering/RenderSVGResourceMarker.cpp:
  72948. (WebCore::RenderSVGResourceMarker::~RenderSVGResourceMarker): Now a no-op, markers are unified within the new client handling concept, no more special code needed.
  72949. (WebCore::RenderSVGResourceMarker::layout): As RenderSVGResourceMarker skips the RenderSVGResourceContainer::layout() method, we also need to call invalidateClients() here.
  72950. (WebCore::RenderSVGResourceMarker::invalidateClients): Use new helper functions to invalidate clients, shared between all resources in RenderSVGResourceContainer.
  72951. (WebCore::RenderSVGResourceMarker::invalidateClient): Ditto.
  72952. (WebCore::RenderSVGResourceMarker::draw): Remove marker specific logic to catch circular references.
  72953. * rendering/RenderSVGResourceMarker.h:
  72954. * rendering/RenderSVGResourceMasker.cpp:
  72955. (WebCore::RenderSVGResourceMasker::~RenderSVGResourceMasker): Early exit if m_masker is empty.
  72956. (WebCore::RenderSVGResourceMasker::invalidateClients): Use new helper functions to invalidate clients, shared between all resources in RenderSVGResourceContainer.
  72957. (WebCore::RenderSVGResourceMasker::invalidateClient): Ditto.
  72958. (WebCore::RenderSVGResourceMasker::applyResource): Remove containsCyclicReference() check, SVGResourcesCycleSolver breaks cyclic references, resources do not need to take care anymore.
  72959. * rendering/RenderSVGResourceMasker.h:
  72960. * rendering/RenderSVGResourcePattern.cpp:
  72961. (WebCore::RenderSVGResourcePattern::~RenderSVGResourcePattern): Early exit if m_pattern is empty.
  72962. (WebCore::RenderSVGResourcePattern::invalidateClients): Use new helper functions to invalidate clients, shared between all resources in RenderSVGResourceContainer.
  72963. (WebCore::RenderSVGResourcePattern::invalidateClient): Ditto.
  72964. (WebCore::RenderSVGResourcePattern::createTileImage): Remove containsCyclicReference() check, SVGResourcesCycleSolver breaks cyclic references, resources do not need to take care anymore.
  72965. * rendering/RenderSVGResourcePattern.h:
  72966. * rendering/RenderSVGRoot.cpp:
  72967. (WebCore::RenderSVGRoot::selfWillPaint): Don't look up resources manually, use SVGResourcesCache.
  72968. (WebCore::RenderSVGRoot::destroy): Forward to SVGResourcesCache::clientDestroyed.
  72969. (WebCore::RenderSVGRoot::styleDidChange): Forward to SVGResourcesCache::clientStyleChanged.
  72970. (WebCore::RenderSVGRoot::updateFromElement): Forward to SVGResourcesCache::clientUpdatedFromElement.
  72971. * rendering/RenderSVGRoot.h:
  72972. * rendering/RenderSVGText.cpp:
  72973. (WebCore::RenderSVGText::layout): s/RenderSVGResource::invalidateAllResourcesOfRenderer/SVGResourcesCache::clientLayoutChanged/.
  72974. * rendering/RenderSVGText.h:
  72975. * rendering/SVGInlineTextBox.cpp:
  72976. (WebCore::SVGInlineTextBox::acquirePaintingResource): Add RenderObject* parameter, don't assume the style comes from the InlineTextBox parent renderer.
  72977. (WebCore::SVGInlineTextBox::prepareGraphicsContextForTextPainting): Pass the parent()->renderer() to acquirePaintingResource.
  72978. (WebCore::SVGInlineTextBox::paintDecoration): Pass the decoration renderer to acquirePaintingResource.
  72979. (WebCore::SVGInlineTextBox::paintDecorationWithStyle): Ditto.
  72980. (WebCore::SVGInlineTextBox::paintText): When a selection pseudo style is used to paint the selection, swap styles in the SVGResourcesCache, to take the right resources when painting.
  72981. * rendering/SVGInlineTextBox.h:
  72982. * rendering/SVGRenderSupport.cpp:
  72983. (WebCore::SVGRenderSupport::prepareToRenderSVGContent): Don't look up resources manually, use SVGResourcesCache.
  72984. (WebCore::SVGRenderSupport::finishRenderSVGContent): Ditto.
  72985. (WebCore::SVGRenderSupport::intersectRepaintRectWithResources): Ditto.
  72986. (WebCore::SVGRenderSupport::pointInClippingArea): Remove const from RenderObject parameter.
  72987. * rendering/SVGRenderSupport.h:
  72988. * rendering/SVGRenderTreeAsText.cpp:
  72989. (WebCore::writeStyle): Add two const_cast now that fill/strokePaintingResource take RenderObject* parameters. This was the less intrusive approach, otherwhise more const_casts would be needed.
  72990. (WebCore::writeResources): Add FIXME that we should dump the resources present in the SVGResourcesCache instead of manually looking them up from the SVGRenderStyle, to avoid dumping cycles.
  72991. * rendering/SVGResourcesCache.cpp:
  72992. (WebCore::SVGResourcesCache::clientStyleChanged): Use markForLayoutAndParentResourceInvalidation() instead of duplicating code.
  72993. * rendering/SVGResourcesCycleSolver.cpp:
  72994. (WebCore::setFollowLinkForChainableResource): Implemented stub method.
  72995. * rendering/style/SVGRenderStyle.cpp:
  72996. (WebCore::SVGRenderStyle::diff): Return StyleDifferenceLayout, not Repaint for stroke paint changes, otherwhise the cached boundaries are not correctly updated.
  72997. * svg/SVGClipPathElement.cpp:
  72998. (WebCore::SVGClipPathElement::svgAttributeChanged): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer.
  72999. (WebCore::SVGClipPathElement::childrenChanged): Ditto.
  73000. * svg/SVGClipPathElement.h:
  73001. (WebCore::SVGClipPathElement::needsPendingResourceHandling): Return false, buildPendingResource() logic not needed anymore for resources, handled by RenderSVGResourceContainer.
  73002. * svg/SVGElement.cpp:
  73003. (WebCore::SVGElement::insertedIntoDocument): Only execute buildPendingResource() logic, if needsPendingResourceHandling() returns true. Cleaned up code a bit, to deploy early returns.
  73004. * svg/SVGElement.h:
  73005. (WebCore::SVGElement::needsPendingResourceHandling): Return true (default). Only needed by SVGTextPathElement/SVGUseElement, and should be removed in future.
  73006. * svg/SVGFilterElement.cpp:
  73007. (WebCore::SVGFilterElement::SVGFilterElement): Initialize m_followLink=true.
  73008. (WebCore::SVGFilterElement::setFilterRes): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer.
  73009. (WebCore::SVGFilterElement::svgAttributeChanged): Ditto.
  73010. (WebCore::SVGFilterElement::childrenChanged): Ditto.
  73011. * svg/SVGFilterElement.h:
  73012. (WebCore::SVGFilterElement::needsPendingResourceHandling): Return false, buildPendingResource() logic not needed anymore for resources, handled by RenderSVGResourceContainer.
  73013. (WebCore::SVGFilterElement::setFollowLink): Used by SVGResourcesCycleSolver, to stop following xlink:href links, if that leads to cyclic references.
  73014. * svg/SVGFilterPrimitiveStandardAttributes.cpp:
  73015. (WebCore::SVGFilterPrimitiveStandardAttributes::childrenChanged): Don't use invalidateResourceClients(), it's a no-op as effects don't have a renderer -> use invalidateFilter().
  73016. * svg/SVGFilterPrimitiveStandardAttributes.h:
  73017. (WebCore::SVGFilterPrimitiveStandardAttributes::invalidateFilter): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer.
  73018. * svg/SVGGradientElement.cpp:
  73019. (WebCore::SVGGradientElement::SVGGradientElement): Initialize m_followLink=true.
  73020. (WebCore::SVGGradientElement::svgAttributeChanged): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer.
  73021. (WebCore::SVGGradientElement::childrenChanged): Ditto.
  73022. * svg/SVGGradientElement.h:
  73023. (WebCore::SVGGradientElement::needsPendingResourceHandling): Return false, buildPendingResource() logic not needed anymore for resources, handled by RenderSVGResourceContainer.
  73024. (WebCore::SVGGradientElement::setFollowLink): Used by SVGResourcesCycleSolver, to stop following xlink:href links, if that leads to cyclic references.
  73025. * svg/SVGLinearGradientElement.cpp:
  73026. (WebCore::SVGLinearGradientElement::svgAttributeChanged): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer.
  73027. (WebCore::SVGLinearGradientElement::collectGradientProperties): Only follow xlink:href links if m_followLinks == true.
  73028. * svg/SVGMarkerElement.cpp:
  73029. (WebCore::SVGMarkerElement::svgAttributeChanged): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer.
  73030. (WebCore::SVGMarkerElement::childrenChanged): Ditto.
  73031. (WebCore::SVGMarkerElement::setOrientToAuto): Ditto.
  73032. (WebCore::SVGMarkerElement::setOrientToAngle): Ditto.
  73033. * svg/SVGMarkerElement.h:
  73034. (WebCore::SVGMarkerElement::needsPendingResourceHandling): Return false, buildPendingResource() logic not needed anymore for resources, handled by RenderSVGResourceContainer.
  73035. * svg/SVGMaskElement.cpp:
  73036. (WebCore::SVGMaskElement::svgAttributeChanged): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer.
  73037. (WebCore::SVGMaskElement::childrenChanged): Ditto.
  73038. * svg/SVGMaskElement.h:
  73039. (WebCore::SVGMaskElement::needsPendingResourceHandling): Return false, buildPendingResource() logic not needed anymore for resources, handled by RenderSVGResourceContainer.
  73040. * svg/SVGPatternElement.cpp:
  73041. (WebCore::SVGPatternElement::SVGPatternElement): Initialize m_followLink=true.
  73042. (WebCore::SVGPatternElement::svgAttributeChanged): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer.
  73043. (WebCore::SVGPatternElement::childrenChanged): Ditto.
  73044. (WebCore::SVGPatternElement::collectPatternProperties): Only follow xlink:href links if m_followLinks == true.
  73045. * svg/SVGPatternElement.h:
  73046. (WebCore::SVGPatternElement::needsPendingResourceHandling): Return false, buildPendingResource() logic not needed anymore for resources, handled by RenderSVGResourceContainer.
  73047. (WebCore::SVGPatternElement::setFollowLink): Used by SVGResourcesCycleSolver, to stop following xlink:href links, if that leads to cyclic references.
  73048. * svg/SVGRadialGradientElement.cpp:
  73049. (WebCore::SVGRadialGradientElement::svgAttributeChanged): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer.
  73050. (WebCore::SVGRadialGradientElement::collectGradientProperties): Only follow xlink:href links if m_followLinks == true.
  73051. * svg/SVGStyledElement.cpp:
  73052. (WebCore::SVGStyledElement::attach): Call updateFromElement upon attach(), needed by all resource renderers. Defaults to a no-op in RenderObject.h
  73053. * svg/SVGStyledElement.h: Remove invalidateResourceClients(), it's not needed anymore.
  73054. 2010-07-29 Gyuyoung Kim <gyuyoung.kim@samsung.com>
  73055. Reviewed by Kenneth Rohde Christiansen.
  73056. [EFL] Support to enable WML in WebKit EFL
  73057. https://bugs.webkit.org/show_bug.cgi?id=43178
  73058. WebKit EFL cannot enable WML. WML files are added to CMakeLists.txt
  73059. to enable WML in WebKit EFL.
  73060. * CMakeLists.txt: Support to enable WML.
  73061. 2010-07-21 Grace Kloba <klobag@gmail.com> , Antonio Gomes <tonikitoo@webkit.org>
  73062. Reviewed by David Hyatt.
  73063. Enhance the hit testing to take a rectangle instead of a point
  73064. https://bugs.webkit.org/show_bug.cgi?id=40197
  73065. The primary goal of this change is to provide mechanisms for more precise tap
  73066. actions by the users on mobile devices.
  73067. Patch extends the hit testing system to work considering a rectangular area
  73068. as input instead of a point, when applicable. For that, the HitTestResult class
  73069. was modified to take a padding (IntSize). The padding specifies a fuzzy range for
  73070. accepting input events in pixels coordinates for both vertical and horizontal
  73071. orientations. In other words, it tells how much to expand the search rect
  73072. around a supposed touch point.
  73073. If it is non-positive padding (e.g. (-1, -1), (5, -1), (0, 0)), hit testing will behavior
  73074. as the current point based hit testing: methods are no-op'ed to not regress it performance-wise
  73075. since it is the common behavior. When positive padding is provided, the HitTestResult class will
  73076. keep record of all nodes that intersect the built up test area. The logic will continue searching
  73077. when it finds a candidate until the hit test area is fully enclosed by the boundaries of a candidate.
  73078. The result will be a list of nodes in the z-order they are hit-tested. Caller will decide how
  73079. to process them.
  73080. In order to expose the functionality, the patch:
  73081. - Adds a nodesFromRect method to the Document class, exposing the funcionality
  73082. to the DOM. Method returns a NodeList with all nodes that intersect the given
  73083. hit-tested area.
  73084. - Extends hitTestResultAtPoint method of the EventHandler with an extra 'padding'
  73085. parameter, defaulting to IntSize(-1, -1). The rect-based hit test is performed when a
  73086. non-negative padding is passed in.
  73087. Test: fast/dom/nodesFromRect-basic.html
  73088. * WebCore.base.exp:
  73089. * dom/Document.cpp:
  73090. (WebCore::Document::nodesFromRect): This method exposes the rect based funcionality to
  73091. the DOM. It works similarly to elementFromPoint, however receiving a rectangular area
  73092. as input instead of a point, and returning a z-index ordered list of nodes (not elements)
  73093. whose area intersect the hit test rect.
  73094. * dom/Document.h: Ditto.
  73095. * dom/Document.idl: Ditto.
  73096. * page/EventHandler.cpp:
  73097. (WebCore::EventHandler::hitTestResultAtPoint): The funcionality is also exposed through this
  73098. method. Patch adds a additional IntSize parameter to work as the padding area, building up
  73099. the hit test rect.
  73100. * page/EventHandler.h: Ditto.
  73101. * rendering/HitTestResult.cpp:
  73102. (WebCore::HitTestResult::HitTestResult): Rect based hit test constructor. Receives a
  73103. padding IntSize as parameter. It can be (0,0).
  73104. (WebCore::HitTestResult::operator=): Modified to assign the m_rectBasedTestResult as well.
  73105. (WebCore::HitTestResult::append): Merge to HitTestResult objects in a way that the
  73106. list node's of both objects get amended.
  73107. (WebCore::HitTestResult::addNodeToRectBasedTestResult): Adds a given Node to the list of
  73108. hit nodes.
  73109. * rendering/HitTestResult.h:
  73110. (WebCore::HitTestResult::padding): Returns the padding as an IntSize.
  73111. (WebCore::HitTestResult::isRectBasedTest): Returns if the HitTestResult is rect based or not.
  73112. (WebCore::HitTestResult::.rectBasedTestResult): Returns the list nodes hit.
  73113. (WebCore::HitTestResult::rectFromPoint): Returns the hit test rect given the hit test point
  73114. and padding.
  73115. * rendering/RenderLayer.cpp:
  73116. (WebCore::RenderLayer::hitTestLayer):
  73117. (WebCore::RenderLayer::hitTestList):
  73118. (WebCore::RenderLayer::hitTestChildLayerColumns):
  73119. * rendering/EllipsisBox.cpp:
  73120. (WebCore::EllipsisBox::nodeAtPoint): Method is modified to support rect based hit test extension.
  73121. Now it not just checks if the boundary of the node being hit-tested contains a hit test point, but
  73122. instead it checks if the boundary of the node intersects a hit test rect. It is implemented so
  73123. that the common case (point based hit test) works as previously.
  73124. * rendering/InlineFlowBox.cpp:
  73125. (WebCore::InlineFlowBox::nodeAtPoint): Ditto.
  73126. * rendering/InlineTextBox.cpp:
  73127. (WebCore::InlineTextBox::nodeAtPoint): Ditto.
  73128. * rendering/RenderBlock.cpp:
  73129. (WebCore::RenderBlock::nodeAtPoint): Ditto.
  73130. (WebCore::RenderBlock::hitTestColumns): Ditto.
  73131. * rendering/RenderBox.cpp:
  73132. (WebCore::RenderBox::nodeAtPoint): Ditto.
  73133. * rendering/RenderImage.cpp:
  73134. (WebCore::RenderImage::nodeAtPoint): Ditto.
  73135. * rendering/RenderLineBoxList.cpp:
  73136. (WebCore::RenderLineBoxList::hitTest):
  73137. * rendering/RenderSVGRoot.cpp:
  73138. (WebCore::RenderSVGRoot::nodeAtPoint): Ditto.
  73139. * rendering/RenderTable.cpp:
  73140. (WebCore::RenderTable::nodeAtPoint): Ditto.
  73141. * rendering/RenderTableSection.cpp:
  73142. (WebCore::RenderTableSection::nodeAtPoint): Ditto.
  73143. * rendering/RenderWidget.cpp:
  73144. (WebCore::RenderWidget::nodeAtPoint): Ditto.
  73145. 2010-07-29 Steve Block <steveblock@google.com>
  73146. Reviewed by Jeremy Orlow.
  73147. Add LayoutTestController methods to test DeviceOrientation
  73148. https://bugs.webkit.org/show_bug.cgi?id=39589
  73149. This patch does not hook up the new LayoutTestController method to WebKit
  73150. for any platform. This will be done in later patches.
  73151. https://bugs.webkit.org/show_bug.cgi?id=43181 tracks this for Mac.
  73152. Test: fast/dom/DeviceOrientation/basic-operation.html
  73153. * WebCore/WebCore.exp.in:
  73154. * WebCore.xcodeproj/project.pbxproj:
  73155. * dom/DeviceOrientationClient.h:
  73156. (WebCore::DeviceOrientationClient::~DeviceOrientationClient):
  73157. * dom/DeviceOrientationController.cpp:
  73158. (WebCore::DeviceOrientationController::DeviceOrientationController):
  73159. * dom/DeviceOrientationEvent.cpp:
  73160. * platform/mock/DeviceOrientationClientMock.cpp: Added.
  73161. (WebCore::DeviceOrientationClientMock::DeviceOrientationClientMock):
  73162. (WebCore::DeviceOrientationClientMock::setController):
  73163. (WebCore::DeviceOrientationClientMock::startUpdating):
  73164. (WebCore::DeviceOrientationClientMock::stopUpdating):
  73165. (WebCore::DeviceOrientationClientMock::setOrientation):
  73166. (WebCore::DeviceOrientationClientMock::timerFired):
  73167. * platform/mock/DeviceOrientationClientMock.h: Added.
  73168. (WebCore::DeviceOrientationClientMock::lastOrientation):
  73169. 2010-07-29 Satish Sampath <satish@chromium.org>
  73170. Reviewed by Steve Block.
  73171. Runtime feature switch for speech input.
  73172. https://bugs.webkit.org/show_bug.cgi?id=43146
  73173. Add a runtime feature switch that decides whether speech input attributes are available or not.
  73174. Defaults to true.
  73175. * bindings/generic/RuntimeEnabledFeatures.cpp:
  73176. * bindings/generic/RuntimeEnabledFeatures.h:
  73177. (WebCore::RuntimeEnabledFeatures::setSpeechInputEnabled):
  73178. (WebCore::RuntimeEnabledFeatures::speechInputEnabled):
  73179. (WebCore::RuntimeEnabledFeatures::speechEnabled):
  73180. * html/HTMLInputElement.idl:
  73181. 2010-07-27 Alexander Pavlov <apavlov@chromium.org>
  73182. Reviewed by Pavel Feldman.
  73183. Inspector should display CDATA section data
  73184. https://bugs.webkit.org/show_bug.cgi?id=16259
  73185. * inspector/InspectorDOMAgent.cpp:
  73186. (WebCore::InspectorDOMAgent::buildObjectForNode):
  73187. * inspector/front-end/ElementsTreeOutline.js:
  73188. ():
  73189. 2010-07-28 Kavita Kanetkar <kkanetkar@chromium.org>
  73190. Reviewed by Pavel Feldman.
  73191. Web Inspector: Enable UI for chromium's appcache inspection.
  73192. https://bugs.webkit.org/show_bug.cgi?id=43098
  73193. * inspector/front-end/Settings.js: Removed appCacheEnabled.
  73194. * inspector/front-end/StoragePanel.js: Removed appCacheEnabled condition.
  73195. (WebInspector.StoragePanel):
  73196. (WebInspector.StoragePanel.prototype.reset):
  73197. (WebInspector.StoragePanel.prototype.addApplicationCache):
  73198. 2010-07-28 Bryan Gislason <bgislason@rim.com>
  73199. Reviewed by Nate Chapin.
  73200. Minor compile errors in loadMediaPlayerProxyPlugin
  73201. https://bugs.webkit.org/show_bug.cgi?id=43141
  73202. * WebCore/loader/SubframeLoader.cpp:
  73203. 2010-07-28 Dominic Mazzoni <dmazzoni@google.com>
  73204. Reviewed by Dimitri Glazkov.
  73205. Add a missing dependency.
  73206. https://bugs.webkit.org/show_bug.cgi?id=43044
  73207. * css/CSSPrimitiveValueMappings.h:
  73208. 2010-07-28 Alex Nicolaou <anicolao@chromium.org>
  73209. Reviewed by Ojan Vafai.
  73210. Set incorrect but close expectations for mask-colorspace.svg on mac
  73211. https://bugs.webkit.org/show_bug.cgi?id=43102
  73212. Blocks:
  73213. [chromium] r63450 caused some svg mask tests to fail pixel tests
  73214. https://bugs.webkit.org/show_bug.cgi?id=42403
  73215. ImageBufferCG.cpp uses CoreGraphics to do the transform of SVG masks
  73216. into LinearRGB, but only for MAC which means not for CHROMIUM, so I
  73217. have changed the #if to account for both platforms. I am assuming this
  73218. isn't in for windows because it's missing in CG itself, but I didn't
  73219. verify that.
  73220. * platform/graphics/cg/ImageBufferCG.cpp:
  73221. (WebCore::ImageBuffer::ImageBuffer):
  73222. 2010-07-28 Kent Tamura <tkent@chromium.org>
  73223. Reviewed by Darin Fisher.
  73224. [Chromium] Improve read-only arrow button appearance
  73225. https://bugs.webkit.org/show_bug.cgi?id=43108
  73226. No new tests. This is a fix for fast/forms/
  73227. input-appearance-spinbutton-disabled-readonly.html
  73228. * platform/chromium/PlatformThemeChromiumGtk.cpp:
  73229. (WebCore::PlatformThemeChromiumGtk::paintArrowButton):
  73230. If the button has ReadOnlyState, paint the button as same as it is disabled.
  73231. 2010-07-28 Tony Chang <tony@chromium.org>
  73232. Reviewed by Ojan Vafai.
  73233. implement getData('text/html') for webkit win
  73234. https://bugs.webkit.org/show_bug.cgi?id=37981
  73235. * platform/win/ClipboardUtilitiesWin.cpp:
  73236. (WebCore::extractMarkupFromCFHTML):
  73237. (WebCore::getCFHTML):
  73238. (WebCore::fragmentFromCFHTML):
  73239. (WebCore::fragmentFromHTML):
  73240. * platform/win/ClipboardUtilitiesWin.h:
  73241. * platform/win/ClipboardWin.cpp:
  73242. (WebCore::):
  73243. (WebCore::clipboardTypeFromMIMEType):
  73244. (WebCore::ClipboardWin::getData):
  73245. 2010-07-28 Adam Barth <abarth@webkit.org>
  73246. Reviewed by Eric Seidel.
  73247. Update numbered header element closing to match recent spec change
  73248. https://bugs.webkit.org/show_bug.cgi?id=43072
  73249. Pretty straightforward transcription of the spec change.
  73250. * html/HTMLElementStack.cpp:
  73251. (WebCore::HTMLNames::isNumberedHeaderElement):
  73252. (WebCore::HTMLElementStack::popUntilNumberedHeaderElementPopped):
  73253. (WebCore::HTMLElementStack::hasOnlyHTMLElementsInScope):
  73254. (WebCore::HTMLElementStack::hasNumberedHeaderElementInScope):
  73255. * html/HTMLElementStack.h:
  73256. * html/HTMLTreeBuilder.cpp:
  73257. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  73258. (WebCore::HTMLTreeBuilder::processEndTagForInBody):
  73259. 2010-07-28 Anders Carlsson <andersca@apple.com>
  73260. Reviewed by Sam Weinig.
  73261. Add support for calling NPObject methods
  73262. https://bugs.webkit.org/show_bug.cgi?id=43145
  73263. * WebCore.exp.in:
  73264. Export JSHTMLElement::s_info and pluginScriptObject.
  73265. * WebCore.xcodeproj/project.pbxproj:
  73266. Make JSHTMLElement.h and JSPluginElementFunctions.h private headers.
  73267. * bindings/js/JSPluginElementFunctions.cpp:
  73268. (WebCore::pluginScriptObject):
  73269. * bindings/js/JSPluginElementFunctions.h:
  73270. Make pluginScriptObject a public function.
  73271. 2010-07-28 James Robinson <jamesr@chromium.org>
  73272. Reviewed by Darin Fisher.
  73273. [chromium] Add a bool to Settings to control accelerated 2d canvas
  73274. https://bugs.webkit.org/show_bug.cgi?id=43094
  73275. Currently this doesn't control anything, but it will soon.
  73276. * page/Settings.cpp:
  73277. (WebCore::Settings::Settings):
  73278. (WebCore::Settings::setAccelerated2dCanvasEnabled):
  73279. * page/Settings.h:
  73280. (WebCore::Settings::accelerated2dCanvasEnabled):
  73281. 2010-07-28 Robin Dunn <robin@alldunn.com>
  73282. Reviewed by Kevin Ollivier.
  73283. Add DOM bindings support for wx port.
  73284. * DerivedSources.make:
  73285. * bindings/scripts/CodeGeneratorCPP.pm:
  73286. * platform/graphics/wx/FontPlatformDataWx.cpp:
  73287. (WebCore::FontPlatformData::FontPlatformData):
  73288. * platform/wx/MouseEventWx.cpp:
  73289. (WebCore::PlatformMouseEvent::PlatformMouseEvent):
  73290. * wscript:
  73291. 2010-07-28 Stephen White <senorblanco@chromium.org>
  73292. Reviewed by Darin Fisher.
  73293. Hook the GLES2 rendering path up to GraphicsContextSkia.
  73294. https://bugs.webkit.org/show_bug.cgi?id=43119
  73295. This connects the state-setting and drawing calls implemented in
  73296. so far in GLES2Canvas, and calls PlatformContextSkia's
  73297. prepareForSoftwareDraw() for all the non-accelerated paths.
  73298. * platform/graphics/skia/GraphicsContextSkia.cpp:
  73299. (WebCore::GraphicsContext::addInnerRoundedRectClip):
  73300. (WebCore::GraphicsContext::addPath):
  73301. (WebCore::GraphicsContext::beginPath):
  73302. (WebCore::GraphicsContext::clip):
  73303. (WebCore::GraphicsContext::drawConvexPolygon):
  73304. (WebCore::GraphicsContext::drawEllipse):
  73305. (WebCore::GraphicsContext::drawFocusRing):
  73306. (WebCore::GraphicsContext::drawLine):
  73307. (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
  73308. (WebCore::GraphicsContext::drawLineForText):
  73309. (WebCore::GraphicsContext::drawRect):
  73310. (WebCore::GraphicsContext::fillPath):
  73311. (WebCore::GraphicsContext::fillRoundedRect):
  73312. (WebCore::GraphicsContext::strokeArc):
  73313. (WebCore::GraphicsContext::strokePath):
  73314. (WebCore::GraphicsContext::strokeRect):
  73315. These calls are software-only; call preSoftwareDraw() for these.
  73316. (WebCore::GraphicsContext::savePlatformState):
  73317. (WebCore::GraphicsContext::restorePlatformState):
  73318. (WebCore::GraphicsContext::setAlpha):
  73319. (WebCore::GraphicsContext::setCompositeOperation):
  73320. (WebCore::GraphicsContext::setPlatformFillColor):
  73321. (WebCore::GraphicsContext::scale):
  73322. (WebCore::GraphicsContext::rotate):
  73323. (WebCore::GraphicsContext::translate):
  73324. (WebCore::GraphicsContext::concatCTM):
  73325. These ones set state on both Skia and GLES2Canvas.
  73326. (WebCore::GraphicsContext::clearRect):
  73327. (WebCore::GraphicsContext::fillRect):
  73328. These ones have a GLES2 implementation; call through to it if PlatformContextSkia's useGPU() flag is set and the state permits.
  73329. * platform/graphics/skia/PlatformContextSkia.cpp:
  73330. (PlatformContextSkia::prepareForSoftwareDraw):
  73331. (PlatformContextSkia::prepareForHardwareDraw):
  73332. Rename preXXXDraw() -> prepareForXXXDraw().
  73333. * platform/graphics/skia/PlatformContextSkia.h:
  73334. (PlatformContextSkia::prepareForSoftwareDraw):
  73335. (PlatformContextSkia::prepareForHardwareDraw):
  73336. Rename preXXXDraw() -> prepareForXXXDraw().
  73337. 2010-07-28 fsamuel@chromium.org <fsamuel@chromium.org>
  73338. Reviewed by David Hyatt.
  73339. REGRESSION (r63994): Bank of America's home page is horribly mis-rendered
  73340. https://bugs.webkit.org/show_bug.cgi?id=42993
  73341. Fixed bug introduced by patch for bug 40775.
  73342. The new table rendering code did not take into account table layouts starting
  73343. during a partial construction of the table render tree. As such,
  73344. multiple layouts on the same table resulted in more columns being generated.
  73345. This patch solves this issue.
  73346. * rendering/AutoTableLayout.cpp:
  73347. (WebCore::AutoTableLayout::recalcColumn):
  73348. * rendering/RenderTable.cpp:
  73349. (WebCore::RenderTable::cellAbove):
  73350. (WebCore::RenderTable::cellBelow):
  73351. (WebCore::RenderTable::cellBefore):
  73352. * rendering/RenderTableSection.cpp:
  73353. (WebCore::RenderTableSection::ensureRows):
  73354. (WebCore::RenderTableSection::addCell):
  73355. (WebCore::RenderTableSection::setCellWidths):
  73356. (WebCore::RenderTableSection::calcRowHeight):
  73357. (WebCore::RenderTableSection::layoutRows):
  73358. (WebCore::RenderTableSection::paintObject):
  73359. (WebCore::RenderTableSection::appendColumn):
  73360. (WebCore::RenderTableSection::splitColumn):
  73361. * rendering/RenderTableSection.h:
  73362. (WebCore::RenderTableSection::CellStruct::CellStruct):
  73363. 2010-07-28 Tony Gentilcore <tonyg@chromium.org>
  73364. Reviewed by Pavel Feldman.
  73365. Exclude DNS and SSL time from connect time
  73366. https://bugs.webkit.org/show_bug.cgi?id=43083
  73367. The ResourceLoadTiming API's definition of the connect phase includes
  73368. DNS and SSL time. However, the Web Timing spec wants just the TCP time.
  73369. So this patch subtracts those phases out.
  73370. No new tests because ResourceLoadTiming fields are not populated by
  73371. TestShell yet.
  73372. * page/Timing.cpp:
  73373. (WebCore::Timing::connectStart):
  73374. (WebCore::Timing::connectEnd):
  73375. 2010-07-26 Steve Block <steveblock@google.com>
  73376. Reviewed by Jeremy Orlow.
  73377. Page clients should be passed to Page constructor via structure of pointers
  73378. https://bugs.webkit.org/show_bug.cgi?id=42834
  73379. No new tests, refactoring only.
  73380. * WebCore.exp.in:
  73381. * page/Page.cpp:
  73382. (WebCore::Page::Page):
  73383. * page/Page.h:
  73384. (WebCore::Page::PageClients::PageClients):
  73385. * svg/graphics/SVGImage.cpp:
  73386. (WebCore::SVGImage::dataChanged):
  73387. 2010-07-28 Xianzhu Wang <phnixwxz@gmail.com>
  73388. Reviewed by Dan Bernstein.
  73389. Line not wrapped at certain punctuations
  73390. https://bugs.webkit.org/show_bug.cgi?id=37698
  73391. Added a line breaking table for all printable ASCII chars to replace
  73392. the original line breaking table for only '?'.
  73393. Test: fast/text/line-breaks-after-closing-punctuations.html
  73394. * rendering/break_lines.cpp:
  73395. (WebCore::isBreakableSpace):
  73396. (WebCore::):
  73397. (WebCore::shouldBreakAfter):
  73398. (WebCore::needsLineBreakIterator):
  73399. 2010-07-28 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  73400. Unreviewed build fix.
  73401. Fix EFL build with SHARED_CORE=ON after r64124.
  73402. * CMakeLists.txt:
  73403. 2010-07-28 Jay Civelli <jcivelli@chromium.org>
  73404. Reviewed by Kent Tamura.
  73405. [Chromium] The popup now layouts properly its rows by
  73406. taking into account the label width.
  73407. https://bugs.webkit.org/show_bug.cgi?id=42910
  73408. * platform/chromium/PopupMenuChromium.cpp:
  73409. (WebCore::PopupListBox::layout):
  73410. 2010-07-28 Pavel Feldman <pfeldman@chromium.org>
  73411. Not reviewed: chromium tests fix.
  73412. Chromium Dev Tools: [REGRESSION] Pause is not working.
  73413. https://bugs.webkit.org/show_bug.cgi?id=43118
  73414. * inspector/front-end/InspectorBackendStub.js:
  73415. 2010-07-28 Ilya Tikhonovsky <loislo@chromium.org>
  73416. Reviewed by Pavel Feldman.
  73417. WebInspector: Navigating to anchor prior to opening WebInspector
  73418. makes resource have 'other' type.
  73419. https://bugs.webkit.org/show_bug.cgi?id=43110
  73420. * inspector/InspectorResource.cpp:
  73421. (WebCore::InspectorResource::type):
  73422. (WebCore::InspectorResource::resourceData):
  73423. * inspector/front-end/ResourceView.js:
  73424. (WebInspector.ResourceView.prototype._innerSelectContentTab):
  73425. 2010-07-28 Andreas Kling <andreas.kling@nokia.com>
  73426. Reviewed by Kenneth Rohde Christiansen.
  73427. [Qt] putImageData(): Combine premultiplication and BGR->RGB
  73428. https://bugs.webkit.org/show_bug.cgi?id=43114
  73429. Further optimized putImageData() by doing BGR->RGB inside the
  73430. premultiplication routine.
  73431. * platform/graphics/qt/ImageBufferQt.cpp:
  73432. (WebCore::premultiplyABGRtoARGB): Renamed from premultiply.
  73433. (WebCore::putImageData):
  73434. 2010-07-28 Andrei Popescu <andreip@google.com>
  73435. Reviewed by Jeremy Orlow.
  73436. [IndexedDB] IDBKeyRange should be a runtime-enabled feature.
  73437. https://bugs.webkit.org/show_bug.cgi?id=43116
  73438. IDBKeyRange should be enabled at runtime only when IndexedDB is also
  73439. enabled.
  73440. No new tests needed, functionality not changed.
  73441. * bindings/generic/RuntimeEnabledFeatures.h:
  73442. (WebCore::RuntimeEnabledFeatures::iDBKeyRangeEnabled):
  73443. * page/DOMWindow.idl:
  73444. 2010-07-28 Nikolas Zimmermann <nzimmermann@rim.com>
  73445. Not reviewed. Forgot to land GNUmakefile.am changes, broke build in r64196.
  73446. * GNUmakefile.am: Add SVGResources.* / SVGResourcesCache.* / SVGResourcesCycleSolver.* to build.
  73447. 2010-07-28 Nikolas Zimmermann <nzimmermann@rim.com>
  73448. Reviewed by Dirk Schulze.
  73449. SVGMaskElement/SVGForeignObjectElement should not inherit from SVGURIReference
  73450. https://bugs.webkit.org/show_bug.cgi?id=43113
  73451. Remove wrong SVGURIReference inheritance for SVGMaskElement/SVGForeignObjectElement. Old copy/paste bug.
  73452. * svg/SVGForeignObjectElement.cpp:
  73453. (WebCore::SVGForeignObjectElement::synchronizeProperty):
  73454. * svg/SVGForeignObjectElement.h:
  73455. * svg/SVGMaskElement.cpp:
  73456. (WebCore::SVGMaskElement::SVGMaskElement):
  73457. (WebCore::SVGMaskElement::parseMappedAttribute):
  73458. (WebCore::SVGMaskElement::svgAttributeChanged):
  73459. (WebCore::SVGMaskElement::synchronizeProperty):
  73460. * svg/SVGMaskElement.h:
  73461. 2010-07-28 Nikolas Zimmermann <nzimmermann@rim.com>
  73462. Reviewed by Dirk Schulze.
  73463. WebKit shouldn't ignore resource cycles, but break them as Opera does
  73464. https://bugs.webkit.org/show_bug.cgi?id=43031
  73465. Don't ignore resources containing cyclic references, but break them, as discussed on SVG WG mailing lists - to be compatible with Opera which already does that.
  73466. We used to lookup RenderSVGResourceContainers objects, by extracting the URI reference from the SVGRenderStyle, then utilizing getElementById() to lookup the
  73467. node, and access its renderer. Opera ignores such references, if they point to resources that contain cyclic references. Ignoring them would mean we have
  73468. to mutate the render style to empty the resource strings. That obviously doesn't work, as it would break expectations (getComputedStyle, etc.).
  73469. Introduce a SVGResources class that stores pointers to all resources, that can be applied to a RenderObject (clipper/filter/markers/masker).
  73470. Add a SVGResourcesCache class, which is basically a HashMap<RenderObject*, SVGResources*>. Whenever a RenderObject receives style, we extract the URI references
  73471. from the SVGRenderStyle, look up the RenderSVGResourceContainer* objects, and store them in a SVGResources* class. Then we execute a cycle detection logic,
  73472. which detects cyclic references and breaks them. Breaking them means just nulling the pointer to the resource in the SVGResources object. Those SVGResources
  73473. objects are cached, and used throughout the render tree to access resources. This way it's guaranteed that all cyclic references are resolved until layout/paint
  73474. phase begins.
  73475. This is the first chunk, which just adds the new SVGResources/SVGResourcesCache/SVGResourcesCycleSolver files, and does minor cleanups.
  73476. It's not yet glued in and doesn't affect any tests.
  73477. * Android.mk: Add SVGResources.* / SVGResourcesCache.* / SVGResourcesCycleSolver.* to build.
  73478. * CMakeLists.txt: Ditto.
  73479. * WebCore.gypi: Ditto.
  73480. * WebCore.pro: Ditto.
  73481. * WebCore.vcproj/WebCore.vcproj: Ditto.
  73482. * WebCore.xcodeproj/project.pbxproj: Ditto.
  73483. * rendering/RenderInline.h: Make styleDidChange protected, RenderSVGInline wants to override it.
  73484. * rendering/RenderSVGAllInOne.cpp: Add SVGResources.* / SVGResourcesCache.* / SVGResourcesCycleSolver.* to build.
  73485. * rendering/RenderSVGHiddenContainer.h:
  73486. (WebCore::RenderSVGHiddenContainer::isSVGHiddenContainer): Make isSVGHiddenContainer() private and renderName() public.
  73487. * rendering/RenderSVGResourceContainer.cpp: Added. Moved most methods from the header in the implementation file.
  73488. (WebCore::RenderSVGResourceContainer::RenderSVGResourceContainer):
  73489. (WebCore::RenderSVGResourceContainer::~RenderSVGResourceContainer):
  73490. (WebCore::RenderSVGResourceContainer::idChanged):
  73491. (WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke):
  73492. (WebCore::RenderSVGResourceContainer::containsCyclicReference):
  73493. * rendering/RenderSVGResourceContainer.h: Add stubs, that SVGResourcesCache uses - a follow-up patch will add the logic.
  73494. (WebCore::RenderSVGResourceContainer::addClient):
  73495. (WebCore::RenderSVGResourceContainer::removeClient):
  73496. * rendering/SVGResources.cpp: Added. Holds a list of resources applyable to a RenderObject (fill/stroke, mask/markers/clipper/filter)
  73497. (WebCore::paintingResourceFromSVGPaint): Helper function looking up a RenderSVGResource for a SVGPaint object.
  73498. (WebCore::registerPendingResource): Helper function that register a RenderSVGResource as pending in the SVGDocumentExtensions.
  73499. (WebCore::SVGResources::buildCachedResources): Build a list of resources for a RenderObject/RenderStyle pair, handles pending resources, if needed.
  73500. (WebCore::SVGResources::invalidateClient): Helper function that calls invalidateClient() on all resources.
  73501. (WebCore::SVGResources::resourceDestroyed): Helper function that calls invalidateClients() on a certain resource, and nulls it.
  73502. (WebCore::SVGResources::buildSetOfResources): Helper function that stashes all resources present in the SVGResources members in a HashSet, used in SVGResourcesCycleSolver.
  73503. (WebCore::SVGResources::resetClipper): Helper methods nulling a resource.
  73504. (WebCore::SVGResources::resetFilter): Ditto.
  73505. (WebCore::SVGResources::resetMarkerStart): Ditto.
  73506. (WebCore::SVGResources::resetMarkerMid): Ditto.
  73507. (WebCore::SVGResources::resetMarkerEnd): Ditto.
  73508. (WebCore::SVGResources::resetMasker): Ditto.
  73509. (WebCore::SVGResources::resetFill): Ditto.
  73510. (WebCore::SVGResources::resetStroke): Ditto.
  73511. (WebCore::SVGResources::dump):
  73512. * rendering/SVGResources.h: Added.
  73513. (WebCore::SVGResources::clipper): Accesor of the cached m_foo variable.
  73514. (WebCore::SVGResources::filter): Ditto.
  73515. (WebCore::SVGResources::markerStart): Ditto.
  73516. (WebCore::SVGResources::markerMid): Ditto.
  73517. (WebCore::SVGResources::markerEnd): Ditto.
  73518. (WebCore::SVGResources::masker): Ditto.
  73519. (WebCore::SVGResources::fill): Ditto.
  73520. (WebCore::SVGResources::stroke): Ditto.
  73521. * rendering/SVGResourcesCache.cpp: Added. Holds a HashMap<RenderObject*, SVGResources*> and utility functions that update/invalidate the cache.
  73522. (WebCore::SVGResourcesCache::SVGResourcesCache):
  73523. (WebCore::SVGResourcesCache::~SVGResourcesCache):
  73524. (WebCore::SVGResourcesCache::addResourcesFromRenderObject): Build a SVGResources object for a RenderObject and adds it to the cache, then detects & breaks cycles using SVGResourcesCycleSolver.
  73525. (WebCore::SVGResourcesCache::removeResourcesFromRenderObject): Remove a SVGResources object from the cache.
  73526. (WebCore::resourcesCacheFromRenderObject): Helper function, retrieving a SVGResourcesCache method from a RenderObject.
  73527. (WebCore::SVGResourcesCache::cachedResourcesForRenderObject): Returns a SVGResources object from the cache.
  73528. (WebCore::SVGResourcesCache::clientLayoutChanged): (static) Calls invalidateClient() on all resources that are used by the passed RenderObject.
  73529. (WebCore::SVGResourcesCache::clientStyleChanged): (static) Updates the cache (calling removeResourceFromRenderObject/addResourcesFrom...) and invalidates resources in the ancestor chain.
  73530. (WebCore::SVGResourcesCache::clientUpdatedFromElement): (static) Does the same, without invalidating the ancestor chain.
  73531. (WebCore::SVGResourcesCache::clientDestroyed): (static) Calls removeResourcesFromRenderObject() on the SVGResourcesCache, for the given renderer.
  73532. (WebCore::SVGResourcesCache::resourceDestroyed): (static) Updates all SVGResources objects in the cache, that refer to the given resource.
  73533. * rendering/SVGResourcesCache.h: Added.
  73534. * rendering/SVGResourcesCycleSolver.cpp: Added. Detects and breaks cyclic references, just the way Opera handles it. Break cycles as they are detected.
  73535. (WebCore::SVGResourcesCycleSolver::SVGResourcesCycleSolver):
  73536. (WebCore::SVGResourcesCycleSolver::~SVGResourcesCycleSolver):
  73537. (WebCore::SVGResourcesCycleSolver::resourceContainsCycles): Operates only on the render tree
  73538. (WebCore::targetReferenceFromResource): Helper method for chainableResourceContainsCycles().
  73539. (WebCore::setFollowLinkForChainableResource): Ditto.
  73540. (WebCore::SVGResourcesCycleSolver::chainableResourceContainsCycles): Handles cycles for resources that are chainable through xlink:href (filter/gradient/pattern).
  73541. (WebCore::SVGResourcesCycleSolver::resolveCycles): Main method executing the cycle breaking logic, utilizing (chainableResource)resourceContainsCycles.
  73542. (WebCore::SVGResourcesCycleSolver::breakCycle): Nulls a resource in the given SVGResources* object, to avoid using an invalid resource while rendering/layouting.
  73543. * rendering/SVGResourcesCycleSolver.h: Added.
  73544. * svg/SVGDocumentExtensions.cpp:
  73545. (WebCore::SVGDocumentExtensions::SVGDocumentExtensions): Create SVGResourcesCache object once per SVGDocumentExtensions.
  73546. * svg/SVGDocumentExtensions.h:
  73547. (WebCore::SVGDocumentExtensions::resourcesCache): Expose accesor method for the SVGResourcesCache.
  73548. 2010-07-28 Zoltan Herczeg <zherczeg@webkit.org>
  73549. Reviewed by Nikolas Zimmermann.
  73550. SVGFilterElement & SVGFE*Element don't support dynamic invalidation, when attributes change
  73551. https://bugs.webkit.org/show_bug.cgi?id=42244
  73552. Implementing svgAttributeChanged for SVGFEOffsetElement object.
  73553. Tests: svg/dynamic-updates/SVGFEOffsetElement-dom-dx-attr.html
  73554. svg/dynamic-updates/SVGFEOffsetElement-dom-dy-attr.html
  73555. svg/dynamic-updates/SVGFEOffsetElement-dom-in-attr.html
  73556. svg/dynamic-updates/SVGFEOffsetElement-svgdom-dx-prop.html
  73557. svg/dynamic-updates/SVGFEOffsetElement-svgdom-dy-prop.html
  73558. svg/dynamic-updates/SVGFEOffsetElement-svgdom-in-prop.html
  73559. * svg/SVGFEOffsetElement.cpp:
  73560. (WebCore::SVGFEOffsetElement::svgAttributeChanged):
  73561. * svg/SVGFEOffsetElement.h:
  73562. 2010-07-28 Zoltan Herczeg <zherczeg@webkit.org>
  73563. Reviewed by Nikolas Zimmermann.
  73564. SVGFilterElement & SVGFE*Element don't support dynamic invalidation, when attributes change
  73565. https://bugs.webkit.org/show_bug.cgi?id=42244
  73566. Implementing svgAttributeChanged for SVGFEDiffuseLightingElement object.
  73567. Tests: svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-diffuseConstant-attr.html
  73568. svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-in-attr.html
  73569. svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-lighting-color-attr.html
  73570. svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-surfaceScale-attr.html
  73571. svg/dynamic-updates/SVGFEDiffuseLightingElement-lighting-color-css-prop.html
  73572. svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-diffuseConstant-prop.html
  73573. svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-in-prop.html
  73574. svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-surfaceScale-prop.html
  73575. * svg/SVGFEDiffuseLightingElement.cpp:
  73576. (WebCore::SVGFEDiffuseLightingElement::svgAttributeChanged):
  73577. * svg/SVGFEDiffuseLightingElement.h:
  73578. 2010-07-27 Kinuko Yasuda <kinuko@chromium.org>
  73579. Reviewed by Ojan Vafai.
  73580. Add FILE_SYSTEM build flag for FileSystem API
  73581. https://bugs.webkit.org/show_bug.cgi?id=42915
  73582. * Configurations/FeatureDefines.xcconfig:
  73583. * GNUmakefile.am:
  73584. * WebCore.pri:
  73585. 2010-07-26 Yuzo Fujishima <yuzo@google.com>
  73586. Reviewed by Shinichiro Hamaji.
  73587. @page rules in media queries should be tested.
  73588. https://bugs.webkit.org/show_bug.cgi?id=42971
  73589. * page/PrintContext.cpp:
  73590. (WebCore::PrintContext::pageProperty): Fixed to properly begin
  73591. printing. Added support for size property.
  73592. 2010-07-27 James Hawkins <jhawkins@chromium.org>
  73593. Reviewed by Darin Fisher.
  73594. Add itemIcon() method to the PopupMenuClient, used by Chrome AutoFill
  73595. to display right-aligned credit card icons in the suggestions popup.
  73596. https://bugs.webkit.org/show_bug.cgi?id=43076
  73597. No new tests as this is only used by the Chromium WebKit API.
  73598. * platform/PopupMenuClient.h:
  73599. * platform/chromium/PopupMenuChromium.cpp:
  73600. (WebCore::PopupListBox::paintRow):
  73601. * rendering/RenderMenuList.cpp:
  73602. (WebCore::RenderMenuList::itemIcon):
  73603. * rendering/RenderMenuList.h:
  73604. * rendering/RenderTextControlSingleLine.cpp:
  73605. (WebCore::RenderTextControlSingleLine::itemIcon):
  73606. * rendering/RenderTextControlSingleLine.h:
  73607. 2010-07-27 Andreas Kling <andreas.kling@nokia.com>
  73608. Reviewed by Kenneth Rohde Christiansen.
  73609. [Qt] putImageData(): Fast premultiply() if alpha == 255
  73610. * platform/graphics/qt/ImageBufferQt.cpp:
  73611. (WebCore::premultiply): Do nothing for opaque pixels.
  73612. 2010-07-27 Jian Li <jianli@chromium.org>
  73613. Reviewed by David Levin.
  73614. Enhance FileThreadTask to support return type.
  73615. https://bugs.webkit.org/show_bug.cgi?id=43078
  73616. This is needed to support synchronous calls of FileStream methods in
  73617. addition to asynchronous calls via FileThreadTask.
  73618. * html/FileThreadTask.h:
  73619. (WebCore::createFileThreadTask):
  73620. 2010-07-27 James Robinson <jamesr@chromium.org>
  73621. Reviewed by Darin Fisher.
  73622. [chromium] Let PlatformContextSkia draw to a GLES2Canvas in addition to an SkCanvas
  73623. https://bugs.webkit.org/show_bug.cgi?id=43070
  73624. This adds a GLES2Canvas as drawing surface to PlatformContextSkia and lets callers
  73625. issue draw commands to either. The PlatformContextSkia keeps track of where
  73626. rendering results are being accumulated and can blend the hardware and software
  73627. backing stores into each other when necessary.
  73628. Still just plumbing, no functionality change.
  73629. * platform/graphics/chromium/GLES2Canvas.cpp:
  73630. (WebCore::GLES2Canvas::GLES2Canvas):
  73631. * platform/graphics/chromium/GLES2Canvas.h:
  73632. * platform/graphics/skia/PlatformContextSkia.cpp:
  73633. (PlatformContextSkia::PlatformContextSkia):
  73634. (PlatformContextSkia::setGLES2Context):
  73635. (PlatformContextSkia::preSoftwareDraw):
  73636. (PlatformContextSkia::preHardwareDraw):
  73637. (PlatformContextSkia::forceToSoftware):
  73638. (PlatformContextSkia::uploadSoftwareToHardware):
  73639. (PlatformContextSkia::readbackHardwareToSoftware):
  73640. * platform/graphics/skia/PlatformContextSkia.h:
  73641. (PlatformContextSkia::useGPU):
  73642. (PlatformContextSkia::gpuCanvas):
  73643. (PlatformContextSkia::preSoftwareDraw):
  73644. (PlatformContextSkia::preHardwareDraw):
  73645. (PlatformContextSkia::forceToSoftware):
  73646. (PlatformContextSkia::):
  73647. 2010-07-27 Simon Fraser <simon.fraser@apple.com>
  73648. Reviewed by Darin Adler.
  73649. Incomplete repaint of some Safari extension content which falls into a composited iframe
  73650. <rdar://problem/8235044>
  73651. syncCompositingStateRecursive() bails if it thinks that a layout is pending, because
  73652. the layout may update layers and make this sync obsolete. However, it only checked for an
  73653. active layout timer. This ignores other sources of pending style changes and layouts, like
  73654. the document's style recalc timer. So use needsLayout(), which does check this.
  73655. Unable to create a test because it depends on Safari extension behavior.
  73656. * page/FrameView.cpp:
  73657. (WebCore::FrameView::syncCompositingStateRecursive):
  73658. 2010-07-27 Andreas Kling <andreas.kling@nokia.com>
  73659. Reviewed by Kenneth Rohde Christiansen.
  73660. [Qt] putImageData() optimizations
  73661. https://bugs.webkit.org/show_bug.cgi?id=43059
  73662. - Single-pass premultiplication and BGR->RGB conversion
  73663. - Use ARGB32PM for the temporary image so Qt calls the
  73664. fast Source composition function
  73665. * platform/graphics/qt/ImageBufferQt.cpp:
  73666. (WebCore::premultiply): Added (static inline)
  73667. (WebCore::putImageData):
  73668. 2010-07-27 Anders Carlsson <andersca@apple.com>
  73669. Reviewed by Sam Weinig.
  73670. Expose interface for returning the plug-in script JSObject
  73671. https://bugs.webkit.org/show_bug.cgi?id=43074
  73672. PluginViewBase::scriptObject should be a virtual function.
  73673. * plugins/PluginViewBase.h:
  73674. (WebCore::PluginViewBase::scriptObject):
  73675. 2010-07-27 Jian Li <jianli@chromium.org>
  73676. Reviewed by David Levin.
  73677. Add ScriptExecutionContext argument to File/Blob constructors.
  73678. https://bugs.webkit.org/show_bug.cgi?id=40587
  73679. Remove DragData::createClipboard and add Clipboard::create for it to be
  73680. called directly in DragController. This is because we need to pass
  73681. Frame pointer to Clipboard class and use it to get ScriptExecutionContext
  73682. in order to construct File objects in Clipboard::files().
  73683. * bindings/js/SerializedScriptValue.cpp:
  73684. (WebCore::DeserializingTreeWalker::convertIfTerminal):
  73685. * bindings/v8/SerializedScriptValue.cpp:
  73686. (WebCore::ZigZag::Reader::readBlob):
  73687. (WebCore::ZigZag::Reader::readFile):
  73688. (WebCore::ZigZag::Reader::readFileList):
  73689. * dom/Clipboard.h:
  73690. * editing/Editor.cpp:
  73691. (WebCore::Editor::dispatchCPPEvent):
  73692. * editing/Editor.h:
  73693. * editing/android/EditorAndroid.cpp:
  73694. (WebCore::Editor::newGeneralClipboard):
  73695. * editing/brew/EditorBrew.cpp:
  73696. (WebCore::Editor::newGeneralClipboard):
  73697. * editing/chromium/EditorChromium.cpp:
  73698. (WebCore::Editor::newGeneralClipboard):
  73699. * editing/haiku/EditorHaiku.cpp:
  73700. (WebCore::Editor::newGeneralClipboard):
  73701. * editing/mac/EditorMac.mm:
  73702. (WebCore::Editor::newGeneralClipboard):
  73703. * editing/qt/EditorQt.cpp:
  73704. (WebCore::Editor::newGeneralClipboard):
  73705. * editing/wx/EditorWx.cpp:
  73706. (WebCore::Editor::newGeneralClipboard):
  73707. * html/Blob.cpp:
  73708. (WebCore::Blob::Blob):
  73709. (WebCore::Blob::slice):
  73710. * html/Blob.h:
  73711. (WebCore::Blob::create):
  73712. * html/Blob.idl:
  73713. * html/BlobBuilder.cpp:
  73714. (WebCore::BlobBuilder::getBlob):
  73715. * html/BlobBuilder.h:
  73716. * html/BlobBuilder.idl:
  73717. * html/File.cpp:
  73718. (WebCore::File::File):
  73719. * html/File.h:
  73720. (WebCore::File::create):
  73721. * html/HTMLInputElement.cpp:
  73722. (WebCore::HTMLInputElement::appendFormData):
  73723. (WebCore::HTMLInputElement::setFileListFromRenderer):
  73724. * page/DragController.cpp:
  73725. (WebCore::DragController::dragExited):
  73726. (WebCore::DragController::performDrag):
  73727. (WebCore::DragController::tryDHTMLDrag):
  73728. * page/chromium/EventHandlerChromium.cpp:
  73729. (WebCore::EventHandler::createDraggingClipboard):
  73730. * page/gtk/EventHandlerGtk.cpp:
  73731. (WebCore::EventHandler::createDraggingClipboard):
  73732. * page/win/EventHandlerWin.cpp:
  73733. (WebCore::EventHandler::createDraggingClipboard):
  73734. * platform/DragData.h:
  73735. * platform/android/ClipboardAndroid.cpp:
  73736. (WebCore::Clipboard::create):
  73737. * platform/android/DragDataAndroid.cpp:
  73738. * platform/brew/ClipboardBrew.cpp:
  73739. (WebCore::Clipboard::create):
  73740. * platform/brew/DragDataBrew.cpp:
  73741. * platform/chromium/ClipboardChromium.cpp:
  73742. (WebCore::Clipboard::create):
  73743. (WebCore::ClipboardChromium::ClipboardChromium):
  73744. (WebCore::ClipboardChromium::create):
  73745. (WebCore::ClipboardChromium::files):
  73746. * platform/chromium/ClipboardChromium.h:
  73747. * platform/chromium/DragDataChromium.cpp:
  73748. * platform/efl/ClipboardEfl.cpp:
  73749. (WebCore::Editor::newGeneralClipboard):
  73750. (WebCore::Clipboard::create):
  73751. * platform/efl/DragDataEfl.cpp:
  73752. * platform/gtk/ClipboardGtk.cpp:
  73753. (WebCore::Editor::newGeneralClipboard):
  73754. (WebCore::Clipboard::create):
  73755. (WebCore::ClipboardGtk::ClipboardGtk):
  73756. (WebCore::ClipboardGtk::files):
  73757. * platform/gtk/ClipboardGtk.h:
  73758. (WebCore::ClipboardGtk::create):
  73759. * platform/gtk/DragDataGtk.cpp:
  73760. * platform/haiku/ClipboardHaiku.cpp:
  73761. (WebCore::Clipboard::create):
  73762. * platform/haiku/DragDataHaiku.cpp:
  73763. * platform/mac/ClipboardMac.mm:
  73764. (WebCore::Clipboard::create):
  73765. (WebCore::ClipboardMac::files):
  73766. * platform/mac/DragDataMac.mm:
  73767. * platform/qt/ClipboardQt.cpp:
  73768. (WebCore::Clipboard::create):
  73769. * platform/qt/DragDataQt.cpp:
  73770. * platform/win/ClipboardWin.cpp:
  73771. (WebCore::Clipboard::create):
  73772. (WebCore::ClipboardWin::ClipboardWin):
  73773. (WebCore::ClipboardWin::files):
  73774. * platform/win/ClipboardWin.h:
  73775. (WebCore::ClipboardWin::create):
  73776. * platform/win/DragDataWin.cpp:
  73777. * platform/win/EditorWin.cpp:
  73778. (WebCore::Editor::newGeneralClipboard):
  73779. * platform/wince/DragDataWince.cpp:
  73780. * platform/wince/EditorWince.cpp:
  73781. (WebCore::Editor::newGeneralClipboard):
  73782. * platform/wx/ClipboardWx.cpp:
  73783. (WebCore::Clipboard::create):
  73784. * platform/wx/DragDataWx.cpp:
  73785. 2010-07-27 Dumitru Daniliuc <dumi@chromium.org>
  73786. Reviewed by David Levin.
  73787. Move all WebSQLDatabases-specific code behind #if ENABLE(DATABASE).
  73788. https://bugs.webkit.org/show_bug.cgi?id=43035
  73789. Make Chromium compile with ENABLE_DATABASE=0. The #ifdefs in
  73790. DatabaseAuthorizer and ChromiumBridge are removed, because they're
  73791. used by non-HTML5 DBs too (the classes in WebCore/platform/sql/),
  73792. which are used by other features too. So they need to be compiled
  73793. in even if HTML5 DBs are disabled.
  73794. * bindings/v8/custom/V8DOMWindowCustom.cpp:
  73795. * page/DOMWindow.idl:
  73796. * platform/chromium/ChromiumBridge.h:
  73797. * storage/DatabaseAuthorizer.cpp:
  73798. * storage/chromium/DatabaseObserver.h:
  73799. * storage/chromium/DatabaseTrackerChromium.cpp:
  73800. * storage/chromium/QuotaTracker.cpp:
  73801. * storage/chromium/QuotaTracker.h:
  73802. * storage/chromium/SQLTransactionClientChromium.cpp:
  73803. 2010-07-27 Chris Fleizach <cfleizach@apple.com>
  73804. Reviewed by David Kilzer.
  73805. AX: Misspellings not shown in AXAttributedStringForTextMarkerRange when selection is on word
  73806. https://bugs.webkit.org/show_bug.cgi?id=41817
  73807. Change how misspelled words are identified for accessibility. No longer rely on the
  73808. cached markers in Document. Calculate on the fly, which is more accurate in a variety of
  73809. circumstances (like when selection has not moved across words, of if the cursor is in the middle
  73810. of a misspelled word).
  73811. Test: platform/mac/accessibility/attributed-string-includes-misspelled-with-selection.html
  73812. * accessibility/mac/AccessibilityObjectWrapper.mm:
  73813. (AXAttributeStringSetSpelling):
  73814. (AXAttributedStringAppendText):
  73815. (-[AccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]):
  73816. 2010-07-27 Gavin Barraclough <barraclough@apple.com>
  73817. Reviewed by Oliver Hunt.
  73818. Bug 42621 - Add a bump allocator for the YARR interpreter
  73819. The regex engine requires lifo allocation, however currently uses the general purpose
  73820. malloc/free memory allocation. A simple bump pointer allocator should provide a lower
  73821. overhead allocation solution.
  73822. * ForwardingHeaders/wtf/BumpPointerAllocator.h: Added.
  73823. 2010-07-27 Pavel Feldman <pfeldman@chromium.org>
  73824. Reviewed by Joseph Pecoraro.
  73825. Web Inspector: render network timing as gant chart in popover.
  73826. https://bugs.webkit.org/show_bug.cgi?id=43051
  73827. * inspector/InspectorResource.cpp:
  73828. (WebCore::InspectorResource::buildObjectForTiming):
  73829. * inspector/front-end/ResourcesPanel.js:
  73830. (WebInspector.ResourcesPanel.prototype._showPopover):
  73831. * inspector/front-end/inspector.css:
  73832. (.resource-timing-row):
  73833. (.resource-timing-bar):
  73834. (.resource-timing-bar-title):
  73835. * inspector/front-end/utilities.js:
  73836. 2010-07-27 Victor Wang <victorw@chromium.org>
  73837. Unreviewed, rolling out r64104.
  73838. http://trac.webkit.org/changeset/64104
  73839. https://bugs.webkit.org/show_bug.cgi?id=40768
  73840. The patch causes chromium webkit socket laytest crashes on
  73841. windows randomly
  73842. * inspector/InspectorController.cpp:
  73843. (WebCore::InspectorController::addResource):
  73844. (WebCore::InspectorController::removeResource):
  73845. * inspector/InspectorController.h:
  73846. * inspector/InspectorResource.cpp:
  73847. (WebCore::InspectorResource::InspectorResource):
  73848. (WebCore::InspectorResource::updateScriptObject):
  73849. (WebCore::InspectorResource::cachedResource):
  73850. (WebCore::InspectorResource::type):
  73851. (WebCore::InspectorResource::resourceData):
  73852. * inspector/InspectorResource.h:
  73853. (WebCore::InspectorResource::):
  73854. (WebCore::InspectorResource::create):
  73855. * inspector/front-end/Resource.js:
  73856. (WebInspector.Resource.Type.toString):
  73857. (WebInspector.Resource.prototype.set type):
  73858. (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType):
  73859. * inspector/front-end/ResourceView.js:
  73860. (WebInspector.ResourceView.prototype._refreshRequestHeaders):
  73861. (WebInspector.ResourceView.prototype._refreshResponseHeaders):
  73862. (WebInspector.ResourceView.prototype._refreshHeaders):
  73863. * inspector/front-end/inspector.css:
  73864. (.resources-category-scripts, .resources-category-xhr, .resources-category-fonts, .resources-category-other):
  73865. * inspector/front-end/inspector.js:
  73866. (WebInspector.loaded):
  73867. (WebInspector.updateResource):
  73868. * websockets/WebSocketChannel.cpp:
  73869. (WebCore::WebSocketChannel::WebSocketChannel):
  73870. (WebCore::WebSocketChannel::disconnect):
  73871. (WebCore::WebSocketChannel::didOpen):
  73872. (WebCore::WebSocketChannel::didClose):
  73873. (WebCore::WebSocketChannel::processBuffer):
  73874. * websockets/WebSocketChannel.h:
  73875. 2010-07-27 Andrei Popescu <andreip@google.com>
  73876. Reviewed by Jeremy Orlow.
  73877. [IndexedDB] Key range methods belong to the IDBKeyRange interface
  73878. https://bugs.webkit.org/show_bug.cgi?id=43052
  73879. Move the key range methods from the IndexedDatabaseRequest interface
  73880. to the IDBKeyRange interface. Also add a global IDBKeyRange object
  73881. that can be used to access the IDBKeyRange constants and factory methods.
  73882. * page/DOMWindow.cpp:
  73883. (WebCore::DOMWindow::clear):
  73884. (WebCore::DOMWindow::iDBKeyRange):
  73885. * page/DOMWindow.h:
  73886. * page/DOMWindow.idl:
  73887. * storage/IDBKeyRange.cpp:
  73888. (WebCore::IDBKeyRange::only):
  73889. (WebCore::IDBKeyRange::leftBound):
  73890. (WebCore::IDBKeyRange::rightBound):
  73891. (WebCore::IDBKeyRange::bound):
  73892. * storage/IDBKeyRange.h:
  73893. * storage/IDBKeyRange.idl:
  73894. * storage/IndexedDatabaseRequest.cpp:
  73895. * storage/IndexedDatabaseRequest.h:
  73896. * storage/IndexedDatabaseRequest.idl:
  73897. 2010-07-27 Chris Fleizach <cfleizach@apple.com>
  73898. Reviewed by Darin Adler.
  73899. AX: consolidate parentObjectIfExists() and parentObject() code
  73900. https://bugs.webkit.org/show_bug.cgi?id=42981
  73901. Consolidate duplicate code in parentObject and parentObjectIfExists
  73902. No tests. No functionality changed.
  73903. * accessibility/AccessibilityRenderObject.cpp:
  73904. (WebCore::AccessibilityRenderObject::renderParentObject):
  73905. (WebCore::AccessibilityRenderObject::parentObjectIfExists):
  73906. (WebCore::AccessibilityRenderObject::parentObject):
  73907. * accessibility/AccessibilityRenderObject.h:
  73908. 2010-07-27 Chris Fleizach <cfleizach@apple.com>
  73909. Reviewed by Adam Barth.
  73910. AX: replace m_renderer->document->axObjectCache() with just axObjectCache()
  73911. https://bugs.webkit.org/show_bug.cgi?id=42979
  73912. No new tests. Code cleanup only.
  73913. * accessibility/AccessibilityRenderObject.cpp:
  73914. (WebCore::AccessibilityRenderObject::firstChild):
  73915. (WebCore::AccessibilityRenderObject::lastChild):
  73916. (WebCore::AccessibilityRenderObject::previousSibling):
  73917. (WebCore::AccessibilityRenderObject::nextSibling):
  73918. (WebCore::AccessibilityRenderObject::parentObjectIfExists):
  73919. (WebCore::AccessibilityRenderObject::parentObject):
  73920. (WebCore::AccessibilityRenderObject::menuForMenuButton):
  73921. (WebCore::AccessibilityRenderObject::menuButtonForMenu):
  73922. (WebCore::AccessibilityRenderObject::addRadioButtonGroupMembers):
  73923. (WebCore::AccessibilityRenderObject::axObjectCache):
  73924. (WebCore::AccessibilityRenderObject::contentChanged):
  73925. (WebCore::AccessibilityRenderObject::addChildren):
  73926. 2010-07-27 Pavel Podivilov <podivilov@chromium.org>
  73927. Reviewed by Pavel Feldman.
  73928. Web Inspector: do not activate all breakpoints on page reload
  73929. https://bugs.webkit.org/show_bug.cgi?id=41461
  73930. Test: inspector/debugger-breakpoints-not-activated-on-reload.html
  73931. * inspector/front-end/ScriptView.js:
  73932. (WebInspector.ScriptView.prototype._addBreakpoint):
  73933. * inspector/front-end/ScriptsPanel.js:
  73934. (WebInspector.ScriptsPanel):
  73935. (WebInspector.ScriptsPanel.prototype._breakpointAdded):
  73936. (WebInspector.ScriptsPanel.prototype.toggleBreakpointsClicked):
  73937. * inspector/front-end/SourceView.js:
  73938. (WebInspector.SourceView.prototype._addBreakpoint):
  73939. 2010-07-27 Pranav Kedia <pranavk@chromium.org>
  73940. Reviewed by Adam Barth.
  73941. Chrome browser Bug: Pause button stays when <audio> hits end
  73942. https://bugs.webkit.org/show_bug.cgi?id=42677
  73943. The change is just in chromium media. Tested using media part of
  73944. WebKit layout tests. The following test that was failing is passing.
  73945. media/video-duration-known-after-eos.html -> unexpected pass
  73946. * rendering/RenderMediaControlsChromium.cpp:
  73947. (WebCore::paintMediaPlayButton):
  73948. Using mediaElement->canPlay() instead of mediaElement->paused() to
  73949. paint the play/pause button.
  73950. 2010-07-27 Steve Block <steveblock@google.com>
  73951. Reviewed by Jeremy Orlow.
  73952. Client-based Geolocation does not pass enableHighAccuracy option to controller and client
  73953. https://bugs.webkit.org/show_bug.cgi?id=40374
  73954. This change passes the enableHighAccuracy request option to the GeolocationController.
  73955. The GeolocationController tracks whether this should be used by the client.
  73956. No new tests possible as the mock provider doesn't support this feature.
  73957. * page/Geolocation.cpp:
  73958. (WebCore::Geolocation::setIsAllowed):
  73959. (WebCore::Geolocation::startUpdating):
  73960. * page/GeolocationController.cpp:
  73961. (WebCore::GeolocationController::addObserver):
  73962. (WebCore::GeolocationController::removeObserver):
  73963. * page/GeolocationController.h:
  73964. * page/GeolocationControllerClient.h:
  73965. 2010-07-27 Ilya Tikhonovsky <loislo@chromium.org>
  73966. Reviewed by Pavel Feldman.
  73967. WebInspector: Current implementation of message based inspector
  73968. transport generated by CodeGeneratorInspector should be upstreamed
  73969. from WebKit/chromium to WebCore.
  73970. https://bugs.webkit.org/show_bug.cgi?id=42983
  73971. * Android.derived.v8bindings.mk:
  73972. * CMakeLists.txt:
  73973. * DerivedSources.cpp:
  73974. * DerivedSources.make:
  73975. * GNUmakefile.am:
  73976. * WebCore.exp.in:
  73977. * WebCore.gypi:
  73978. * WebCore.pri:
  73979. * WebCore.vcproj/WebCore.vcproj:
  73980. * WebCore.xcodeproj/project.pbxproj:
  73981. * bindings/js/ScriptObject.cpp:
  73982. * bindings/js/ScriptObject.h:
  73983. * bindings/v8/ScriptObject.cpp:
  73984. * bindings/v8/ScriptObject.h:
  73985. * inspector/CodeGeneratorInspector.pm:
  73986. * inspector/InspectorBackend.idl: Removed.
  73987. * inspector/InspectorFrontendClient.h:
  73988. * inspector/InspectorFrontendClientLocal.cpp:
  73989. (WebCore::InspectorFrontendClientLocal::windowObjectCleared):
  73990. (WebCore::InspectorFrontendClientLocal::sendMessageToBackend):
  73991. * inspector/InspectorFrontendClientLocal.h:
  73992. * inspector/InspectorFrontendHost.cpp:
  73993. (WebCore::InspectorFrontendHost::sendMessageToBackend):
  73994. * inspector/InspectorFrontendHost.h:
  73995. * inspector/InspectorFrontendHost.idl:
  73996. * inspector/front-end/InspectorBackendStub.js:
  73997. (.WebInspector.InspectorBackendStub):
  73998. (.WebInspector.InspectorBackendStub.prototype._registerDelegate):
  73999. (.WebInspector.InspectorBackendStub.prototype.sendMessageToBackend):
  74000. 2010-07-27 Satish Sampath <satish@chromium.org>
  74001. Reviewed by Kent Tamura.
  74002. Simplify speech input plumbing in webcore and webkit
  74003. https://bugs.webkit.org/show_bug.cgi?id=43008
  74004. No new tests as functionality is not changed.
  74005. * GNUmakefile.am: Removed a header file.
  74006. * WebCore.gypi:
  74007. * WebCore.pro:
  74008. * WebCore.vcproj/WebCore.vcproj:
  74009. * WebCore.xcodeproj/project.pbxproj:
  74010. * page/Page.cpp:
  74011. (WebCore::Page::speechInput): Creates and returns SpeechInput when needed.
  74012. * page/Page.h:
  74013. * page/SpeechInput.cpp: Added methods to proxy and callbacks between input elements and WebKit
  74014. (WebCore::SpeechInput::SpeechInput):
  74015. (WebCore::SpeechInput::didCompleteRecording):
  74016. (WebCore::SpeechInput::didCompleteRecognition):
  74017. (WebCore::SpeechInput::setRecognitionResult):
  74018. (WebCore::SpeechInput::startRecognition):
  74019. (WebCore::SpeechInput::stopRecording):
  74020. * page/SpeechInput.h:
  74021. * page/SpeechInputClient.h:
  74022. * page/SpeechInputClientListener.h: Removed.
  74023. * page/SpeechInputListener.h:
  74024. * rendering/TextControlInnerElements.cpp: Added one more callback.
  74025. (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
  74026. (WebCore::InputFieldSpeechButtonElement::speechInput):
  74027. (WebCore::InputFieldSpeechButtonElement::didCompleteRecognition):
  74028. * rendering/TextControlInnerElements.h:
  74029. 2010-07-27 Kent Tamura <tkent@chromium.org>
  74030. Reviewed by Ojan Vafai.
  74031. Add a runtime setting for interactive form validation.
  74032. https://bugs.webkit.org/show_bug.cgi?id=40520
  74033. The interactive validation feature was disabled for non-strict
  74034. modes by r61059 to avoid a compatibility issue. This removes the
  74035. mode checking and introduce a runtime setting to enable/disable
  74036. the feature instead.
  74037. The default value is 'disable' and we'll remove the setting when
  74038. the compatibility issue is resolved and interactive validation
  74039. implementation is completed.
  74040. * html/HTMLFormElement.cpp:
  74041. (WebCore::HTMLFormElement::validateInteractively):
  74042. * page/Settings.cpp:
  74043. (WebCore::Settings::Settings):
  74044. * page/Settings.h:
  74045. (WebCore::Settings::setInteractiveFormValidationEnabled):
  74046. (WebCore::Settings::interactiveFormValidationEnabled):
  74047. 2010-07-26 Gavin Barraclough <barraclough@apple.com>
  74048. Reviewed by Oliver Hunt.
  74049. Bug 43009 - Abstract out page allocation from executable allocators
  74050. * ForwardingHeaders/wtf/PageAllocation.h: Added.
  74051. 2010-07-26 Yuta Kitamura <yutak@chromium.org>
  74052. Reviewed by Pavel Feldman.
  74053. Add WebSocket resource type to Web Inspector.
  74054. When a new WebSocket connection is established, a line for that connection
  74055. will appear in Web Inspector's Resources tab. If the resource name is
  74056. clicked, the details of handshake request and response will be shown.
  74057. Web Inspector: WebSocket in Resources tab
  74058. https://bugs.webkit.org/show_bug.cgi?id=40768
  74059. * inspector/InspectorController.cpp:
  74060. (WebCore::InspectorController::addResource): WebSocket resource does not
  74061. have an associated loader, thus frame might be null. Need to check it.
  74062. (WebCore::InspectorController::removeResource): Ditto.
  74063. (WebCore::InspectorController::didCreateWebSocket):
  74064. (WebCore::InspectorController::willSendWebSocketHandshakeRequest):
  74065. (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse):
  74066. (WebCore::InspectorController::didCloseWebSocket):
  74067. * inspector/InspectorController.h:
  74068. * inspector/InspectorResource.cpp: Add null checks of m_loader and m_frame,
  74069. because WebSocket does not have a loader and we need to allow null for
  74070. these variables.
  74071. (WebCore::createReadableStringFromBinary):
  74072. (WebCore::InspectorResource::InspectorResource):
  74073. (WebCore::InspectorResource::create): Factory function of
  74074. regular (non-WebSocket) resources.
  74075. (WebCore::InspectorResource::createWebSocket): Factory function of
  74076. WebSocket resources.
  74077. (WebCore::InspectorResource::updateWebSocketRequest):
  74078. (WebCore::InspectorResource::updateWebSocketResponse):
  74079. (WebCore::InspectorResource::updateScriptObject): m_frame->document() becomes
  74080. available when Frame::setDocument() is called. We cannot obtain documentURL
  74081. during the constructor or updateRequest() function, because m_frame->document()
  74082. is not available yet at that point and documentURL will contain a wrong URL.
  74083. As far as I know, updateScriptObject() is the only place where we can safely
  74084. obtain documentURL.
  74085. (WebCore::InspectorResource::cachedResource):
  74086. (WebCore::InspectorResource::type):
  74087. (WebCore::InspectorResource::resourceData):
  74088. * inspector/InspectorResource.h:
  74089. (WebCore::InspectorResource::):
  74090. (WebCore::InspectorResource::markWebSocket):
  74091. * inspector/front-end/Resource.js:
  74092. (WebInspector.Resource.Type.toString):
  74093. (WebInspector.Resource.prototype.set type):
  74094. (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType):
  74095. * inspector/front-end/ResourceView.js:
  74096. (WebInspector.ResourceView.prototype._refreshRequestHeaders):
  74097. (WebInspector.ResourceView.prototype._refreshResponseHeaders):
  74098. (WebInspector.ResourceView.prototype._refreshHeaders):
  74099. * inspector/front-end/inspector.css:
  74100. (.resources-category-websockets, .resources-category-other):
  74101. (.resources-category-websockets .resources-graph-bar):
  74102. (.resources-category-websockets.resource-cached .resources-graph-bar):
  74103. * inspector/front-end/inspector.js:
  74104. (WebInspector.loaded):
  74105. (WebInspector.updateResource):
  74106. * websockets/WebSocketChannel.cpp:
  74107. (WebCore::WebSocketChannel::WebSocketChannel):
  74108. (WebCore::WebSocketChannel::disconnect):
  74109. (WebCore::WebSocketChannel::didOpen):
  74110. (WebCore::WebSocketChannel::didClose):
  74111. (WebCore::WebSocketChannel::processBuffer):
  74112. (WebCore::WebSocketChannel::identifier):
  74113. * websockets/WebSocketChannel.h:
  74114. 2010-07-26 Cosmin Truta <ctruta@chromium.org>
  74115. Reviewed by Eric Seidel.
  74116. Some SVGs with empty <g> elements crash Chromium on Linux
  74117. https://bugs.webkit.org/show_bug.cgi?id=41175
  74118. Redo the old fix using a different approach, to avoid regressing
  74119. svg/batik/filters/filterRegions.svg with Chromium on Linux.
  74120. Specifically, handle empty SkBitmap objects by exiting early upon
  74121. encountering unconfigured (i.e. empty) bitmaps.
  74122. No new tests. This bug's old test (svg/filters/filter-empty-g.svg)
  74123. and the above-mentioned regressed test are expected to pass.
  74124. * WebCore/platform/graphics/skia/ImageBufferSkia.cpp:
  74125. (ImageBuffer::ImageBuffer): Undo the old fix.
  74126. (getImageData): The new fix.
  74127. 2010-07-26 Simon Fraser <simon.fraser@apple.com>
  74128. Reviewed by Dan Bernstein.
  74129. Google image search results broken on pages with Flash
  74130. https://bugs.webkit.org/show_bug.cgi?id=43014
  74131. The test for overflow added in r63452 is wrong in that it ignores the effects
  74132. of positioning on overflow.
  74133. The correct approach is to start by using RenderView's layoutOverflowRect as the largest bounds,
  74134. then getting the oveflow rect via backgroundClipRect() relative to the root layer.
  74135. Test: compositing/geometry/limit-layer-bounds-overflow-root.html
  74136. * rendering/RenderLayerBacking.cpp:
  74137. (WebCore::layerOrAncestorIsTransformed):
  74138. (WebCore::RenderLayerBacking::updateCompositedBounds):
  74139. 2010-07-26 Anders Carlsson <andersca@apple.com>
  74140. Reviewed by Sam Weinig.
  74141. Plug-in views should be able to return JSObjects directly
  74142. https://bugs.webkit.org/show_bug.cgi?id=43019
  74143. * bindings/js/JSHTMLAppletElementCustom.cpp:
  74144. (WebCore::JSHTMLAppletElement::putDelegate):
  74145. (WebCore::JSHTMLAppletElement::getCallData):
  74146. * bindings/js/JSHTMLEmbedElementCustom.cpp:
  74147. (WebCore::JSHTMLEmbedElement::putDelegate):
  74148. (WebCore::JSHTMLEmbedElement::getCallData):
  74149. * bindings/js/JSHTMLObjectElementCustom.cpp:
  74150. (WebCore::JSHTMLObjectElement::putDelegate):
  74151. (WebCore::JSHTMLObjectElement::getCallData):
  74152. runtimeObjectCustomPut and runtimeObjectGetCallData now take a JSHTMLElement instead of a HTMLElement.
  74153. * bindings/js/JSPluginElementFunctions.cpp:
  74154. (WebCore::pluginScriptObject):
  74155. First, ask the PluginViewBase for a JSObject and fall back to getting the JSObject from the instance.
  74156. (WebCore::runtimeObjectPropertyGetter):
  74157. (WebCore::runtimeObjectCustomGetOwnPropertySlot):
  74158. (WebCore::runtimeObjectCustomGetOwnPropertyDescriptor):
  74159. Call pluginScriptObject.
  74160. (WebCore::runtimeObjectCustomPut):
  74161. Change to take a JSHTMLElement. Call pluginScriptObject.
  74162. (WebCore::runtimeObjectGetCallData):
  74163. Change to take a JSHTMLElement.
  74164. * bridge/jsc/BridgeJSC.cpp:
  74165. * bridge/jsc/BridgeJSC.h:
  74166. (JSC::Bindings::Instance::createRuntimeObject):
  74167. Change this to return a JSObject.
  74168. * html/HTMLPlugInElement.cpp:
  74169. (WebCore::HTMLPlugInElement::getInstance):
  74170. Call pluginWidget.
  74171. (WebCore::HTMLPlugInElement::pluginWidget):
  74172. Return the plug-in widget for this element.
  74173. * html/HTMLPlugInElement.h:
  74174. * plugins/PluginViewBase.h:
  74175. (WebCore::PluginViewBase::scriptObject):
  74176. Add default implementation of scriptObject.
  74177. 2010-07-26 Chris Fleizach <cfleizach@apple.com>
  74178. Reviewed by Darin Adler.
  74179. AX: Safari does not support ARIA mixed checkboxes
  74180. https://bugs.webkit.org/show_bug.cgi?id=43016
  74181. Test: platform/mac/accessibility/mixed-checkbox.html
  74182. * accessibility/AccessibilityObject.cpp:
  74183. (WebCore::AccessibilityObject::checkboxOrRadioValue):
  74184. * accessibility/AccessibilityObject.h:
  74185. * accessibility/AccessibilityRenderObject.cpp:
  74186. (WebCore::AccessibilityRenderObject::isNativeCheckboxOrRadio):
  74187. (WebCore::AccessibilityRenderObject::checkboxOrRadioValue):
  74188. * accessibility/AccessibilityRenderObject.h:
  74189. * accessibility/mac/AccessibilityObjectWrapper.mm:
  74190. (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
  74191. 2010-07-26 Shimeng (Simon) Wang <swang@google.com>
  74192. Reviewed by Darin Adler.
  74193. Add auto hyphenation support for Android.
  74194. https://bugs.webkit.org/show_bug.cgi?id=42800
  74195. * platform/text/android/HyphenationAndroid.cpp: Added.
  74196. (WebCore::loadHyphenationDictionary):
  74197. (WebCore::lastHyphenLocation):
  74198. 2010-07-26 Sam Weinig <sam@webkit.org>
  74199. Reviewed by Anders Carlsson.
  74200. Patch for https://bugs.webkit.org/show_bug.cgi?id=43013
  74201. Part of <rdar://problem/8152434>
  74202. Add support for scrolling using the keyboard in WebKit2
  74203. Add a new export and make WindowsKeyboardCodes private.
  74204. * WebCore.exp.in:
  74205. * WebCore.xcodeproj/project.pbxproj:
  74206. 2010-07-26 Darin Adler <darin@apple.com>
  74207. Reviewed by Eric Carlson.
  74208. Don't handle empty URL attributes specially in reflection, even in cases such as <img src="">
  74209. https://bugs.webkit.org/show_bug.cgi?id=42087
  74210. * html/HTMLMediaElement.cpp:
  74211. (WebCore::HTMLMediaElement::insertedIntoDocument): Check if the src attribute is empty
  74212. by calling getAttribute instead of calling the src function. This keeps the behavior
  74213. correct with the reflection change, and has a side benefit of being more efficient as
  74214. well since there is no reason to resolve the URL.
  74215. (WebCore::HTMLMediaElement::loadResource): Call getNonEmptyURLAttribute directly here
  74216. instead of using the poster function.
  74217. (WebCore::HTMLMediaElement::getPluginProxyParams): Ditto.
  74218. * html/HTMLMediaElement.h: Removed the poster virtual function. The code that gets the
  74219. poster attribute is already video-specific and uses generic attribute fetching code, so
  74220. we no longer need a virtual function. Removed the src function. Since this would give
  74221. a different result from the JavaScript reflected src attribute, it's safer not to have
  74222. it, and it was easy to convert all the callers.
  74223. * html/HTMLMediaElement.idl: Removed the NonEmpty extended attribute from the src
  74224. attribute.
  74225. * html/HTMLSourceElement.cpp: Removed the src function for the same reason as above.
  74226. * html/HTMLSourceElement.h: Ditto.
  74227. * html/HTMLSourceElement.idl: Removed the NonEmpty extended attribute from the src
  74228. attribute.
  74229. * html/HTMLVideoElement.cpp:
  74230. (WebCore::HTMLVideoElement::parseMappedAttribute): Removed code to update m_posterURL,
  74231. which is no longer needed. Changed call site that used the poster() function to instead
  74232. use getNonEmptyURLAttribute.
  74233. (WebCore::HTMLVideoElement::updatePosterImage): Check if the poster attribute is empty
  74234. by calling getAttribute instead of calling the poster function. This keeps the behavior
  74235. correct with the reflection change, and has a side benefit of being more efficient as
  74236. well since there is no reason to resolve the URL.
  74237. * html/HTMLVideoElement.h: Removed the poster function for the same reason we removed
  74238. the src function above. Also removed now-unneeded m_posterURL data member.
  74239. * html/HTMLVideoElement.idl: Removed the NonEmpty extended attribute from the poster
  74240. attribute.
  74241. 2010-07-26 Chris Fleizach <cfleizach@apple.com>
  74242. Reviewed by Darin Adler.
  74243. AX: remove intValue() hasIntValue() from AccessibilityObject
  74244. https://bugs.webkit.org/show_bug.cgi?id=43006
  74245. These methods are very Mac centric. The mac centric code should be moved into the Mac wrapper.
  74246. No new tests, existing tests cover changes to logic.
  74247. * accessibility/AccessibilityObject.cpp:
  74248. (WebCore::AccessibilityObject::checkboxOrRadioValue):
  74249. * accessibility/AccessibilityObject.h:
  74250. (WebCore::):
  74251. * accessibility/AccessibilityRenderObject.cpp:
  74252. (WebCore::AccessibilityRenderObject::selectedRadioButton):
  74253. (WebCore::AccessibilityRenderObject::selectedTabItem):
  74254. (WebCore::AccessibilityRenderObject::checkboxOrRadioValue):
  74255. * accessibility/AccessibilityRenderObject.h:
  74256. * accessibility/mac/AccessibilityObjectWrapper.mm:
  74257. (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
  74258. 2010-07-26 Ryosuke Niwa <rniwa@webkit.org>
  74259. Reviewed by Darin Adler.
  74260. Applying inline style to a text node whose parent is an inline editable root causes crash
  74261. https://bugs.webkit.org/show_bug.cgi?id=39989
  74262. The crash was caused by splitTextElementAtStart and splitTextElementAtEnd assuming that the parent
  74263. and the grandparent of the specified text node is editable.
  74264. Modified splitTextElementAtStart and splitTextElementAtEnd so that they call splitTextAtStart
  74265. and splitTextAtEnd respectively when the grandparent is not editable.
  74266. Also modified SplitTextNodeContainingElement to exit early if the grandparent of m_text is not editable.
  74267. Test: editing/style/style-text-node-without-editable-parent.html
  74268. * editing/ApplyStyleCommand.cpp:
  74269. (WebCore::ApplyStyleCommand::splitTextElementAtStart):
  74270. (WebCore::ApplyStyleCommand::splitTextElementAtEnd):
  74271. * editing/SplitTextNodeContainingElementCommand.cpp:
  74272. (WebCore::SplitTextNodeContainingElementCommand::doApply):
  74273. 2010-07-26 Simon Fraser <simon.fraser@apple.com>
  74274. Reviewed by Anders Carlsson.
  74275. Gmail compose is upside-down after r64054
  74276. https://bugs.webkit.org/show_bug.cgi?id=43000
  74277. We need to call setGeometryOrientation() whenever the iframe compositing layer attachment changes,
  74278. not just when requiresScrollLayer() returns false. This ensures that the orientation is updated
  74279. correctly.
  74280. Test: compositing/iframes/iframe-content-flipping.html
  74281. * rendering/RenderLayerCompositor.cpp:
  74282. (WebCore::RenderLayerCompositor::ensureRootPlatformLayer):
  74283. 2010-07-26 Justin Schuh <jschuh@chromium.org>
  74284. Reviewed by Darin Fisher.
  74285. Check history state against origin before setting
  74286. https://bugs.webkit.org/show_bug.cgi?id=42858
  74287. Tests: fast/loader/stateobjects/replacestate-base-illegal.html
  74288. fast/loader/stateobjects/replacestate-base-legal.html
  74289. * page/History.cpp:
  74290. (WebCore::History::urlForState):
  74291. (WebCore::History::stateObjectAdded):
  74292. 2010-07-26 Martin Robinson <mrobinson@igalia.com>
  74293. Reviewed by Xan Lopez.
  74294. [GTK] Get rid of libgdom
  74295. https://bugs.webkit.org/show_bug.cgi?id=42378
  74296. Remove all build steps for building GObject DOM bindings.
  74297. * GNUmakefile.am: Remove GObject DOM bindings build.
  74298. 2010-07-26 Mark Rowe <mrowe@apple.com>
  74299. Reviewed by Dan Bernstein.
  74300. <http://webkit.org/b/42990> REGRESSION (r63854): Safari RSS layout is broken due to changes in vendor prefix handling
  74301. In r63854 support for properties with the -khtml vendor prefix was removed. This breaks the layout of
  74302. Safari's RSS interface, several Dashboard widgets that are included with Mac OS X, and at least one
  74303. popular third-party Mac OS X application. This change will need to be revisited in a manner that has
  74304. a clearer backwards-compatibility strategy. <http://webkit.org/b/42093> will be reopened to track that.
  74305. * css/CSSParser.cpp:
  74306. (WebCore::cssPropertyID): Revert the WebCore change from r63854.
  74307. 2010-07-26 Brady Eidson <beidson@apple.com>
  74308. Reviewed by Sam Weinig.
  74309. Add ability for WK2 to register a scheme to always be displayed as an empty document
  74310. https://bugs.webkit.org/show_bug.cgi?id=42995
  74311. No new tests. (Currently not possible to test in WebKit1 DRT, can be testing in future WK2 tester)
  74312. * WebCore.exp.in:
  74313. * loader/MainResourceLoader.cpp:
  74314. (WebCore::shouldLoadAsEmptyDocument):
  74315. * platform/SchemeRegistry.cpp:
  74316. (WebCore::emptyDocumentSchemes):
  74317. (WebCore::SchemeRegistry::registerURLSchemeAsEmptyDocument):
  74318. (WebCore::SchemeRegistry::shouldLoadURLSchemeAsEmptyDocument):
  74319. * platform/SchemeRegistry.h:
  74320. 2010-07-26 Patrick Gansterer <paroga@paroga.com>
  74321. Reviewed by Kent Tamura.
  74322. [WINCE] Port ClipboardUtilities to WinCE
  74323. https://bugs.webkit.org/show_bug.cgi?id=42929
  74324. Make ClipboardUtilitiesWin more portable and remove the global namespace prefix
  74325. from GlobalLock/GlobalUnlock, since they are only macros on WinCE.
  74326. * platform/win/ClipboardUtilitiesWin.cpp:
  74327. (WebCore::urlFromPath):
  74328. (WebCore::getWebLocData):
  74329. (WebCore::createGlobalData):
  74330. (WebCore::getURL):
  74331. (WebCore::getPlainText):
  74332. (WebCore::fragmentFromHTML):
  74333. 2010-07-26 Patrick Gansterer <paroga@paroga.com>
  74334. Reviewed by Adam Roben.
  74335. [WINCE] Buildfix for BitmapImage.h
  74336. https://bugs.webkit.org/show_bug.cgi?id=42931
  74337. Use AffineTransform insted of TransformationMatrix.
  74338. * platform/graphics/BitmapImage.h:
  74339. 2010-07-26 Dirk Schulze <krit@webkit.org>
  74340. Unreviewed sort of Xcode project file.
  74341. * WebCore.xcodeproj/project.pbxproj:
  74342. 2010-07-26 David Kilzer <ddkilzer@apple.com>
  74343. <http://webkit.org/b/42982> Streamline Inspector Source build phase script should use CONFIGURATION not BUILD_STYLE
  74344. <rdar://problem/6341764>
  74345. Reviewed by Mark Rowe.
  74346. * WebCore.xcodeproj/project.pbxproj: Switched Streamline
  74347. Inspector Source build phase script to use CONFIGURATION instead
  74348. of BUILD_STYLE.
  74349. 2010-07-23 Ojan Vafai <ojan@chromium.org>
  74350. Reviewed by Darin Adler.
  74351. crash in insertParagraph in a contentEditable list
  74352. https://bugs.webkit.org/show_bug.cgi?id=42919
  74353. Don't try to break out of a list item if the list it's in
  74354. is the rootEditableElement.
  74355. * editing/CompositeEditCommand.cpp:
  74356. (WebCore::CompositeEditCommand::breakOutOfEmptyListItem):
  74357. 2010-07-26 Marcus Bulach <bulach@chromium.org>
  74358. Reviewed by Jeremy Orlow.
  74359. Moves IDBKeyRange to use IDBKey rather than SerializedScriptValue / IDBAny.
  74360. https://bugs.webkit.org/show_bug.cgi?id=42583
  74361. Tests: existing storage/indexeddb/idb-keyrange.html must pass.
  74362. * storage/IDBKeyRange.cpp:
  74363. (WebCore::IDBKeyRange::IDBKeyRange):
  74364. * storage/IDBKeyRange.h:
  74365. (WebCore::IDBKeyRange::create):
  74366. (WebCore::IDBKeyRange::left):
  74367. (WebCore::IDBKeyRange::right):
  74368. * storage/IDBKeyRange.idl:
  74369. * storage/IndexedDatabaseRequest.cpp:
  74370. (WebCore::IndexedDatabaseRequest::makeSingleKeyRange):
  74371. (WebCore::IndexedDatabaseRequest::makeLeftBoundKeyRange):
  74372. (WebCore::IndexedDatabaseRequest::makeRightBoundKeyRange):
  74373. (WebCore::IndexedDatabaseRequest::makeBoundKeyRange):
  74374. * storage/IndexedDatabaseRequest.h:
  74375. * storage/IndexedDatabaseRequest.idl:
  74376. 2010-07-26 Simon Fraser <simon.fraser@apple.com>
  74377. Reviewed by Anders Carlsson.
  74378. Composited layers don't scroll in WebKit2
  74379. https://bugs.webkit.org/show_bug.cgi?id=42771
  74380. Rename two methods on RenderLayerCompositor to make their use more clear, and call them
  74381. when the FrameView gets resized and scrolled.
  74382. * page/FrameView.h:
  74383. * page/FrameView.cpp:
  74384. (WebCore::FrameView::setFrameRect): override so we know when the size of the FrameView changes, so that the
  74385. RenderLayerCompositor can update its clipping layer.
  74386. (WebCore::FrameView::scrollPositionChanged): Call compositor()->frameViewDidScroll().
  74387. * rendering/RenderLayerBacking.cpp:
  74388. (WebCore::RenderLayerBacking::updateAfterWidgetResize): updateContentLayerOffset() was renamed.
  74389. * rendering/RenderLayerCompositor.h:
  74390. * rendering/RenderLayerCompositor.cpp:
  74391. (WebCore::RenderLayerCompositor::frameViewDidChangeSize): Renamed from updateContentLayerOffset().
  74392. (WebCore::RenderLayerCompositor::frameViewDidScroll): Renamed from updateContentLayerScrollPosition().
  74393. (WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingIFrame): Propagate compositing on Mac
  74394. for any FrameView that doesn't have a native widget, which is the case with WebKit2.
  74395. (WebCore::RenderLayerCompositor::requiresScrollLayer): New method to tell us whether we need to handle
  74396. scrolling (and clipping) ourselves.
  74397. (WebCore::RenderLayerCompositor::ensureRootPlatformLayer): Do geometry flipping on the root platform
  74398. layer only if we're not doing our own scrolling, and use the new requiresScrollLayer() method.
  74399. (WebCore::RenderLayerCompositor::attachRootPlatformLayer): Send out the rootPlatformLayer(),
  74400. so that it returns the clipping layer if we have one.
  74401. 2010-07-26 Tony Gentilcore <tonyg@chromium.org>
  74402. Reviewed by Darin Fisher.
  74403. Move DocumentLoadTiming struct to a new file
  74404. https://bugs.webkit.org/show_bug.cgi?id=42917
  74405. Also makes DocumentLoadTiming Noncopyable.
  74406. No new tests because no new functionality.
  74407. * GNUmakefile.am:
  74408. * WebCore.gypi:
  74409. * WebCore.vcproj/WebCore.vcproj:
  74410. * WebCore.xcodeproj/project.pbxproj:
  74411. * loader/DocumentLoadTiming.h: Added.
  74412. (WebCore::DocumentLoadTiming::DocumentLoadTiming):
  74413. * loader/DocumentLoader.h:
  74414. * loader/FrameLoader.cpp:
  74415. * loader/FrameLoaderTypes.h:
  74416. * loader/MainResourceLoader.cpp:
  74417. * page/Timing.cpp:
  74418. 2010-07-26 Mark Rowe <mrowe@apple.com>
  74419. Fix an #if in WebCore.exp.in to correctly detect whether SVG filters are enabled.
  74420. * WebCore.exp.in:
  74421. 2010-07-26 Steve Block <steveblock@google.com>
  74422. Reviewed by Jeremy Orlow.
  74423. DeviceOrientation event listeners should never be called synchronously from addEventListener()
  74424. https://bugs.webkit.org/show_bug.cgi?id=42304
  74425. No new tests as there are currently no implementations to test. Tests will be
  74426. added once LayoutTestController methods for providing a mock implementation are
  74427. in place, see Bug 39589.
  74428. * dom/DeviceOrientationController.cpp:
  74429. (WebCore::DeviceOrientationController::DeviceOrientationController):
  74430. (WebCore::DeviceOrientationController::timerFired):
  74431. (WebCore::DeviceOrientationController::addListener):
  74432. (WebCore::DeviceOrientationController::removeListener):
  74433. (WebCore::DeviceOrientationController::removeAllListeners):
  74434. * dom/DeviceOrientationController.h:
  74435. 2010-07-26 Andreas Kling <andreas.kling@nokia.com>
  74436. Reviewed by Tor Arne Vestbø.
  74437. [Qt] Canvas: Optimize GraphicsContext::addPath()
  74438. Avoid "deep concatenating" the canvas path onto the GC path
  74439. if the GC path has no elements.
  74440. * platform/graphics/qt/GraphicsContextQt.cpp:
  74441. (WebCore::GraphicsContext::addPath):
  74442. 2010-07-23 Stephen White <senorblanco@chromium.org>
  74443. Reviewed by Darin Fisher.
  74444. Implement OpenGLES2 helper classes.
  74445. https://bugs.webkit.org/show_bug.cgi?id=42905
  74446. GLES2Canvas and GLES2Texture are some simple OpenGLES2 helper classes
  74447. for managing state, samplers and textures.
  74448. When this is hooked up, it will be covered by many layout tests.
  74449. * WebCore.gypi:
  74450. Add new files to chromium build (contents are protected by #if's for now).
  74451. * platform/graphics/chromium/GLES2Canvas.cpp: Added.
  74452. (WebCore::affineTo3x3):
  74453. (WebCore::GLES2Canvas::State::State):
  74454. (WebCore::GLES2Canvas::GLES2Canvas):
  74455. (WebCore::GLES2Canvas::~GLES2Canvas):
  74456. (WebCore::GLES2Canvas::clearRect):
  74457. (WebCore::GLES2Canvas::fillRect):
  74458. (WebCore::GLES2Canvas::setFillColor):
  74459. (WebCore::GLES2Canvas::setAlpha):
  74460. (WebCore::GLES2Canvas::translate):
  74461. (WebCore::GLES2Canvas::rotate):
  74462. (WebCore::GLES2Canvas::scale):
  74463. (WebCore::GLES2Canvas::concatCTM):
  74464. (WebCore::GLES2Canvas::save):
  74465. (WebCore::GLES2Canvas::restore):
  74466. (WebCore::GLES2Canvas::drawTexturedRect):
  74467. (WebCore::GLES2Canvas::setCompositeOperation):
  74468. (WebCore::GLES2Canvas::applyCompositeOperator):
  74469. (WebCore::GLES2Canvas::getQuadVertices):
  74470. (WebCore::GLES2Canvas::getQuadIndices):
  74471. (WebCore::loadShader):
  74472. (WebCore::GLES2Canvas::getSimpleProgram):
  74473. (WebCore::GLES2Canvas::getTexProgram):
  74474. (WebCore::GLES2Canvas::createTexture):
  74475. (WebCore::GLES2Canvas::getTexture):
  74476. (WebCore::GLES2Canvas::checkGLError):
  74477. * platform/graphics/chromium/GLES2Canvas.h: Added.
  74478. (WebCore::GLES2Canvas::gles2Context):
  74479. * platform/graphics/chromium/GLES2Texture.cpp: Added.
  74480. (WebCore::GLES2Texture::GLES2Texture):
  74481. (WebCore::GLES2Texture::~GLES2Texture):
  74482. (WebCore::GLES2Texture::create):
  74483. (WebCore::convertFormat):
  74484. (WebCore::GLES2Texture::load):
  74485. (WebCore::GLES2Texture::bind):
  74486. * platform/graphics/chromium/GLES2Texture.h: Added.
  74487. (WebCore::GLES2Texture::):
  74488. (WebCore::GLES2Texture::format):
  74489. (WebCore::GLES2Texture::width):
  74490. (WebCore::GLES2Texture::height):
  74491. 2010-07-26 Jeremy Orlow <jorlow@chromium.org>
  74492. Reviewed by Steve Block.
  74493. Fix IndexedDB release build on mac
  74494. https://bugs.webkit.org/show_bug.cgi?id=42377
  74495. * storage/IDBDatabaseImpl.cpp:
  74496. (WebCore::IDBDatabaseImpl::objectStore):
  74497. 2010-07-26 Satish Sampath <satish@chromium.org>
  74498. Reviewed by Steve Block.
  74499. Add WebKit plumbing to connect speech requests and callbacks between WebCore and the embedder.
  74500. https://bugs.webkit.org/show_bug.cgi?id=42367
  74501. No new tests, the relevant LayoutTestController bindings will be added in the next patch.
  74502. * page/SpeechInput.cpp: renamed a method.
  74503. * page/SpeechInput.h: renamed a method.
  74504. * page/SpeechInputClient.h: added an extra method to optionally let users stop recording once they have spoken.
  74505. * page/SpeechInputClientListener.h: renamed a method.
  74506. * page/SpeechInputListener.h: renamed a method.
  74507. 2010-07-26 Andreas Kling <andreas.kling@nokia.com>
  74508. Reviewed by Kenneth Rohde Christiansen.
  74509. [Qt] getImageData(): Single-pass RGB->BGR and un-premultiplication
  74510. https://bugs.webkit.org/show_bug.cgi?id=42945
  74511. Combine the two operations into a single loop over the pixel data.
  74512. Yields a considerable FPS gain on http://www.semantix.gr/statue.html
  74513. * platform/graphics/qt/ImageBufferQt.cpp:
  74514. (WebCore::getImageData):
  74515. 2010-07-26 Pavel Feldman <pfeldman@chromium.org>
  74516. Reviewed by Shinichiro Hamaji.
  74517. Web Inspector: make sure proxy objects are JSON-stringifiable.
  74518. https://bugs.webkit.org/show_bug.cgi?id=42961
  74519. * inspector/front-end/InjectedScript.js:
  74520. (injectedScriptConstructor):
  74521. 2010-07-26 Alexander Pavlov <apavlov@chromium.org>
  74522. Reviewed by Joseph Pecoraro.
  74523. Inspector should remember resources sorting set by the user
  74524. https://bugs.webkit.org/show_bug.cgi?id=19208
  74525. Sorting options both for time and size graphs are memorized in a single property,
  74526. which makes them possible to retrieve in a single message (e.g. useful for remote debugging).
  74527. * inspector/front-end/ResourcesPanel.js:
  74528. (WebInspector.ResourcesPanel.prototype.populateSidebar):
  74529. (WebInspector.ResourcesPanel.prototype._settingsLoaded):
  74530. (WebInspector.ResourcesPanel.prototype._loadSortOptions):
  74531. (WebInspector.ResourcesPanel.prototype._loadSortOptionForGraph):
  74532. (WebInspector.ResourcesPanel.prototype._graphSelected):
  74533. (WebInspector.ResourcesPanel.prototype._changeSortingFunction):
  74534. (WebInspector.ResourcesPanel.prototype._selectedOptionNameForGraph):
  74535. (WebInspector.ResourcesPanel.prototype._doChangeSortingFunction):
  74536. * inspector/front-end/Settings.js:
  74537. (WebInspector.populateApplicationSettings):
  74538. 2010-07-25 Ryosuke Niwa <rniwa@webkit.org>
  74539. Reviewed by Darin Adler.
  74540. Redo fails after text node is split by SplitTextNodeCommand
  74541. https://bugs.webkit.org/show_bug.cgi?id=42941
  74542. The bug was caused by SplitTextNodeCommand not implementing doReapply.
  74543. Implemented doReapply and added insertText1AndTrimText2 to share the code between doApply and doReapply.
  74544. Test: editing/undo/redo-split-text-node.html
  74545. editing/undo/redo-split-text-node-with-removal.html
  74546. * editing/SplitTextNodeCommand.cpp:
  74547. (WebCore::SplitTextNodeCommand::doApply): Calls executeApply.
  74548. (WebCore::SplitTextNodeCommand::doUnapply): Don't delete m_text1, which is later used in doReapply.
  74549. (WebCore::SplitTextNodeCommand::doReapply): Added.
  74550. (WebCore::SplitTextNodeCommand::insertText1AndTrimText2): Added.
  74551. * editing/SplitTextNodeCommand.h:
  74552. 2010-07-23 Philippe Normand <pnormand@igalia.com>
  74553. Reviewed by Eric Carlson.
  74554. [GTK] media/media-can-play-mpeg-audio.html fails
  74555. https://bugs.webkit.org/show_bug.cgi?id=42895
  74556. Fixed advertizing of mp3, mpeg and mp4 mime-types in the player.
  74557. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  74558. (WebCore::mimeTypeCache):
  74559. 2010-07-23 Philippe Normand <pnormand@igalia.com>
  74560. Reviewed by Eric Carlson.
  74561. LayoutTests/media/media-document-audio-size.html failure
  74562. https://bugs.webkit.org/show_bug.cgi?id=38376
  74563. Advertize audio/x-wav along with audio/wav when appropriate,
  74564. otherwise WebKit attempts to use a plugin to play the media.
  74565. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  74566. (WebCore::mimeTypeCache):
  74567. 2010-07-25 Ryosuke Niwa <rniwa@webkit.org>
  74568. Reviewed by Kent Tamura.
  74569. splitTextAt*IfNeed and splitTextElementAt*IfNeed need to be cleaned up
  74570. https://bugs.webkit.org/show_bug.cgi?id=42937
  74571. Isolated the code to decide whether or not text node should be split into isValidCaretPositionInTextNode.
  74572. Moved the condition check out of *IfNeeded methods to applyRelativeFontStyleChange and applyInlineStyle.
  74573. No new tests added since this is a clean up.
  74574. * editing/ApplyStyleCommand.cpp:
  74575. (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange): Uses isValidCaretPositionInTextNode.
  74576. (WebCore::ApplyStyleCommand::applyInlineStyle): Uses isValidCaretPositionInTextNode.
  74577. (WebCore::ApplyStyleCommand::splitTextAtStart): Renamed from splitTextAtStartIfNeeded.
  74578. (WebCore::ApplyStyleCommand::splitTextAtEnd): Renamed from splitTextAtEndIfNeeded.
  74579. (WebCore::ApplyStyleCommand::splitTextElementAtStart): Renamed from splitTextElementAtStartIfNeeded.
  74580. (WebCore::ApplyStyleCommand::splitTextElementAtEnd): Renamed from splitTextElementAtEndIfNeeded.
  74581. (WebCore::ApplyStyleCommand::isValidCaretPositionInTextNode): Returns true if the position lies within a text node.
  74582. * editing/ApplyStyleCommand.h:
  74583. 2010-07-25 Patrick Gansterer <paroga@paroga.com>
  74584. Reviewed by Kent Tamura.
  74585. [WINCE] Buildfix for ImageBufferWince
  74586. https://bugs.webkit.org/show_bug.cgi?id=42928
  74587. * platform/graphics/wince/ImageBufferWince.cpp:
  74588. (WebCore::):
  74589. (WebCore::BufferedImage::draw): Pass through ColorSpace parameter.
  74590. (WebCore::BufferedImage::drawPattern): Ditto.
  74591. (WebCore::ImageBuffer::platformTransformColorSpace): Added.
  74592. 2010-07-25 Patrick Gansterer <paroga@paroga.com>
  74593. Reviewed by Kent Tamura.
  74594. [WINCE] Buildfix for PopupMenuWin.cpp
  74595. https://bugs.webkit.org/show_bug.cgi?id=42932
  74596. Add #if !OS(WINCE) around unsupported window messages.
  74597. * platform/win/PopupMenuWin.cpp:
  74598. (WebCore::PopupMenu::show):
  74599. (WebCore::PopupMenu::wndProc):
  74600. 2010-07-25 Adam Barth <abarth@webkit.org>
  74601. Reviewed by Eric Seidel.
  74602. Implement adjustMathMLAttributes
  74603. https://bugs.webkit.org/show_bug.cgi?id=42952
  74604. This is kind of mechanical overkill for adjusting one attribute name,
  74605. but it's nice to use the same machinery as SVG.
  74606. * html/HTMLTreeBuilder.cpp:
  74607. * mathml/mathattrs.in:
  74608. 2010-07-25 Adam Barth <abarth@webkit.org>
  74609. Reviewed by Eric Seidel.
  74610. Functions supporting the legacy tree builder are confusing
  74611. https://bugs.webkit.org/show_bug.cgi?id=42951
  74612. This patch just inlines these functions into their one call site and
  74613. removes the notImplemented() calls. We thought we were going to grow
  74614. these to support the new tree builder, but we took a different path.
  74615. Previous to this patch, these functions were confusing because they
  74616. looked like part of the new tree builder.
  74617. * html/HTMLTreeBuilder.cpp:
  74618. (WebCore::HTMLTreeBuilder::passTokenToLegacyParser):
  74619. * html/HTMLTreeBuilder.h:
  74620. 2010-07-25 Adam Barth <abarth@webkit.org>
  74621. Reviewed by Eric Seidel.
  74622. Recent HTML5 TreeBuilder Regression? All canvas tests ASSERT
  74623. https://bugs.webkit.org/show_bug.cgi?id=42948
  74624. Remove ASSERT and replace with correct branch. I put this ASSERT in
  74625. to make sure we had test coverage for this branch. I guess we do. :)
  74626. * html/HTMLConstructionSite.cpp:
  74627. (WebCore::HTMLConstructionSite::attach):
  74628. 2010-07-25 Pavel Feldman <pfeldman@chromium.org>
  74629. Reviewed by Timothy Hatcher.
  74630. Web Inspector: check of jQuery object type prior to treating it as an array.
  74631. https://bugs.webkit.org/show_bug.cgi?id=42946
  74632. * inspector/front-end/InjectedScript.js:
  74633. (injectedScriptConstructor):
  74634. 2010-07-24 Daniel Bates <dbates@rim.com>
  74635. Unreviewed, build fix when building with WML support.
  74636. PageCache.cpp compile error when WML is enabled
  74637. https://bugs.webkit.org/show_bug.cgi?id=40765
  74638. Remove extraneous semicolon.
  74639. Note, building with WML support enabled is broken
  74640. even with this fix. See Bug #42943 for more details.
  74641. * history/PageCache.cpp:
  74642. (WebCore::PageCache::canCachePageContainingThisFrame):
  74643. 2010-07-24 Adam Barth <abarth@webkit.org>
  74644. Reviewed by Eric Seidel.
  74645. Atomize strings used by the HTML5 tree builder
  74646. https://bugs.webkit.org/show_bug.cgi?id=42875
  74647. This is about a 1% improvement to the parsing benchmark.
  74648. * html/HTMLTagNames.in:
  74649. * html/HTMLTreeBuilder.cpp:
  74650. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  74651. (WebCore::HTMLTreeBuilder::processStartTag):
  74652. (WebCore::HTMLTreeBuilder::processEndTagForInBody):
  74653. (WebCore::HTMLTreeBuilder::processStartTagForInHead):
  74654. 2010-07-24 Patrick Gansterer <paroga@paroga.com>
  74655. Reviewed by Darin Adler.
  74656. Buildfix for !ENABLE(INSPECTOR) after r63891.
  74657. https://bugs.webkit.org/show_bug.cgi?id=42925
  74658. * bindings/js/ScriptValue.cpp: Added property svn:eol-style.
  74659. * bindings/js/ScriptValue.h: Added property svn:eol-style.
  74660. * inspector/ConsoleMessage.cpp: Added property svn:eol-style.
  74661. * inspector/ConsoleMessage.h: Added property svn:eol-style.
  74662. 2010-07-24 Adam Barth <abarth@webkit.org>
  74663. Reviewed by Eric Seidel.
  74664. Re-order whitespace checks in the tokenizer
  74665. https://bugs.webkit.org/show_bug.cgi?id=42923
  74666. This saves about 0.5% on the parsing benchmark.
  74667. * html/HTMLTokenizer.cpp:
  74668. 2010-07-24 Andreas Kling <andreas.kling@nokia.com>
  74669. Reviewed by Simon Hausmann.
  74670. [Qt] tst_QWebFrame::callQtInvokable() fails
  74671. https://bugs.webkit.org/show_bug.cgi?id=41065
  74672. Converting JS objects to QVariantMaps was broken.
  74673. This is a partial revert of <http://trac.webkit.org/changeset/61478>
  74674. * bridge/qt/qt_runtime.cpp:
  74675. (JSC::Bindings::convertValueToQVariant): Remove erroneous crash guard
  74676. around JSObject::getPropertyNames()
  74677. 2010-07-24 Adam Barth <abarth@webkit.org>
  74678. Reviewed by Eric Seidel.
  74679. Save a per-character branch in the HTML parser
  74680. https://bugs.webkit.org/show_bug.cgi?id=42921
  74681. The parsing benchmark claims this is a wash, but it makes me feel
  74682. better.
  74683. * html/HTMLToken.h:
  74684. (WebCore::HTMLToken::clear):
  74685. (WebCore::HTMLToken::beginStartTag):
  74686. (WebCore::HTMLToken::beginEndTag):
  74687. (WebCore::HTMLToken::ensureIsCharacterToken):
  74688. (WebCore::HTMLToken::beginComment):
  74689. (WebCore::HTMLToken::beginDOCTYPE):
  74690. * html/HTMLTokenizer.cpp:
  74691. (WebCore::HTMLTokenizer::bufferCharacter):
  74692. 2010-07-23 Patrick Gansterer <paroga@paroga.com>
  74693. Reviewed by Darin Adler.
  74694. Buildfix for !ENABLE(FILTERS) after r63531.
  74695. https://bugs.webkit.org/show_bug.cgi?id=42914
  74696. * rendering/RenderSVGContainer.cpp: Add missing header.
  74697. 2010-07-23 Kavita Kanetkar <kkanetkar@chromium.org>
  74698. Reviewed by Joseph Pecoraro.
  74699. Implement remaining Inspector support for chrome's appcache
  74700. https://bugs.webkit.org/show_bug.cgi?id=42426
  74701. * inspector/InspectorApplicationCacheAgent.cpp:
  74702. (WebCore::InspectorApplicationCacheAgent::getApplicationCaches):
  74703. (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCache):
  74704. (WebCore::InspectorApplicationCacheAgent::buildArrayForApplicationCacheResources):
  74705. (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCacheResource):
  74706. * inspector/InspectorApplicationCacheAgent.h:
  74707. (WebCore::InspectorController::connectFrontend):
  74708. * loader/appcache/ApplicationCacheHost.cpp:
  74709. (WebCore::ApplicationCacheHost::fillResourceList):
  74710. (WebCore::ApplicationCacheHost::applicationCacheInfo):
  74711. * loader/appcache/ApplicationCacheHost.h: Changed creation + update times to double and moved appcache info here from InspectorApplicationCacheAgent.h
  74712. (WebCore::ApplicationCacheHost::CacheInfo::CacheInfo):
  74713. (WebCore::ApplicationCacheHost::ResourceInfo::ResourceInfo):
  74714. 2010-07-23 Rafael Antognolli <antognolli@profusion.mobi>
  74715. Reviewed by Antonio Gomes.
  74716. [EFL] Cleanup glib support (make it optional)
  74717. https://bugs.webkit.org/show_bug.cgi?id=42480
  74718. No new tests, no new features added.
  74719. Just add flags and directories for glib if necessary.
  74720. Put some ifdefs on glib calls.
  74721. * CMakeListsEfl.txt:
  74722. * platform/graphics/cairo/FontPlatformDataCairo.cpp:
  74723. (WebCore::FontPlatformData::FontPlatformData):
  74724. 2010-07-23 James Robinson <jamesr@chromium.org>
  74725. Reviewed by Dimitri Glazkov.
  74726. CanvasRenderingContext2D has lots of style errors
  74727. https://bugs.webkit.org/show_bug.cgi?id=42918
  74728. CanvasRenderingContext2D.h and .cpp have lots of style errors. I'm planning to post patches
  74729. to both of these files soon, so to minimize merge conflicts and additional style violations
  74730. it seems best to fix all of these errors in bulk before posting any functional changes. In
  74731. particular the header file is incorrectly indented so any correctly formatted addition will
  74732. be out of place.
  74733. * html/canvas/CanvasRenderingContext2D.cpp:
  74734. (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
  74735. (WebCore::CanvasRenderingContext2D::setFillStyle):
  74736. (WebCore::CanvasRenderingContext2D::transform):
  74737. (WebCore::CanvasRenderingContext2D::setTransform):
  74738. (WebCore::CanvasRenderingContext2D::arcTo):
  74739. (WebCore::CanvasRenderingContext2D::arc):
  74740. (WebCore::validateRectForCanvas):
  74741. (WebCore::CanvasRenderingContext2D::strokeRect):
  74742. (WebCore::CanvasRenderingContext2D::drawImage):
  74743. (WebCore::CanvasRenderingContext2D::createRadialGradient):
  74744. (WebCore::CanvasRenderingContext2D::createPattern):
  74745. (WebCore::CanvasRenderingContext2D::willDraw):
  74746. (WebCore::CanvasRenderingContext2D::createImageData):
  74747. (WebCore::CanvasRenderingContext2D::putImageData):
  74748. (WebCore::CanvasRenderingContext2D::setFont):
  74749. (WebCore::CanvasRenderingContext2D::drawTextInternal):
  74750. * html/canvas/CanvasRenderingContext2D.h:
  74751. (WebCore::CanvasRenderingContext2D::is2d):
  74752. (WebCore::CanvasRenderingContext2D::getLineCap):
  74753. (WebCore::CanvasRenderingContext2D::getLineJoin):
  74754. (WebCore::CanvasRenderingContext2D::state):
  74755. (WebCore::CanvasRenderingContext2D::):
  74756. 2010-07-23 Adam Barth <abarth@webkit.org>
  74757. Remove FIXME that we already fixed.
  74758. * html/HTMLTreeBuilder.cpp:
  74759. (WebCore::HTMLTreeBuilder::processCharacter):
  74760. 2010-06-24 Dimitri Glazkov <dglazkov@chromium.org>
  74761. Reviewed by Kent Tamura.
  74762. Move more form submission logic into FormSubmission.
  74763. https://bugs.webkit.org/show_bug.cgi?id=41110
  74764. Two major moves:
  74765. * Fold HTMLFormElement::prepareFormSubmission into FormSubmission::create
  74766. * Move non-static (non-FormData-building) methods of FormDataBuilder
  74767. to FormSubmission::Attributes.
  74768. Mechanical moving, no change in behavior, so no new tests.
  74769. * WebCore.xcodeproj/project.pbxproj: Gave FormDataBuilder.h "project" and
  74770. FormSubmission.h "private" visibility.
  74771. * html/HTMLFormElement.cpp:
  74772. (WebCore::HTMLFormElement::submit): Changed to use FormSubmission::create.
  74773. (WebCore::HTMLFormElement::parseMappedAttribute): Changed to use m_attributes.
  74774. * html/HTMLFormElement.h:
  74775. (WebCore::HTMLFormElement::enctype): Ditto.
  74776. (WebCore::HTMLFormElement::encoding): Ditto.
  74777. (WebCore::HTMLFormElement::acceptCharset): Ditto.
  74778. * loader/FormSubmission.cpp:
  74779. (WebCore::generateFormDataIdentifier): Moved from HTMLFormElement.
  74780. (WebCore::appendMailtoPostFormDataToURL): Ditto.
  74781. (WebCore::FormSubmission::Attributes::parseAction): Moved from FormDataBuilder.
  74782. (WebCore::FormSubmission::Attributes::parseEncodingType): Ditto.
  74783. (WebCore::FormSubmission::Attributes::parseMethodType): Ditto.
  74784. (WebCore::FormSubmission::FormSubmission): Made inline.
  74785. (WebCore::FormSubmission::create): Added logic that used to be in
  74786. HTMLFormElement::prepareFormSubmission.
  74787. * loader/FormSubmission.h:
  74788. (WebCore::FormSubmission::):
  74789. (WebCore::FormSubmission::Attributes::Attributes): Added new class.
  74790. (WebCore::FormSubmission::Attributes::method): Moved from FormDataBuilder.
  74791. (WebCore::FormSubmission::Attributes::isMultiPartForm): Ditto.
  74792. (WebCore::FormSubmission::Attributes::action): Ditto.
  74793. (WebCore::FormSubmission::Attributes::target): Ditto.
  74794. (WebCore::FormSubmission::Attributes::setTarget): Ditto.
  74795. (WebCore::FormSubmission::Attributes::encodingType): Ditto.
  74796. (WebCore::FormSubmission::Attributes::acceptCharset): Ditto.
  74797. (WebCore::FormSubmission::Attributes::setAcceptCharset): Ditto.
  74798. (WebCore::FormSubmission::target): Ditto.
  74799. (WebCore::FormSubmission::contentType): Const-ified return type.
  74800. (WebCore::FormSubmission::boundary): Ditto.
  74801. * platform/network/FormDataBuilder.cpp:
  74802. (WebCore::FormDataBuilder::encodingFromAcceptCharset): Renamed method for clarity,
  74803. made it use param instead of a class member.
  74804. * platform/network/FormDataBuilder.h:
  74805. (WebCore::FormDataBuilder::FormDataBuilder): Made constructor private.
  74806. * wml/WMLGoElement.cpp: Changed to use FormSubmision::Attributes.
  74807. * wml/WMLGoElement.h: Ditto.
  74808. 2010-07-23 Adam Barth <abarth@webkit.org>
  74809. Reviewed by Eric Seidel.
  74810. HTML5 Parser: document.write in a asynchronous script which is specified to load before page finish blows away document
  74811. https://bugs.webkit.org/show_bug.cgi?id=42365
  74812. This patch implements the changes Ian made to HTML5 to address these
  74813. issues. Let's try it and see how well it works.
  74814. Test: http/tests/misc/write-from-dom-script.html
  74815. * dom/Document.cpp:
  74816. (WebCore::Document::Document):
  74817. (WebCore::Document::write):
  74818. * dom/Document.h:
  74819. (WebCore::Document::writeDisabled):
  74820. (WebCore::Document::setWriteDisabled):
  74821. * dom/DocumentParser.h:
  74822. (WebCore::DocumentParser::hasInsertionPoint):
  74823. * dom/ScriptElement.cpp:
  74824. (WebCore::ScriptElement::insertedIntoDocument):
  74825. (WebCore::ScriptElementData::ScriptElementData):
  74826. (WebCore::ScriptElementData::evaluateScript):
  74827. * dom/ScriptElement.h:
  74828. (WebCore::ScriptElementData::writeDisabled):
  74829. (WebCore::ScriptElementData::setWriteDisabled):
  74830. * html/HTMLDocumentParser.cpp:
  74831. (WebCore::HTMLDocumentParser::hasInsertionPoint):
  74832. (WebCore::HTMLDocumentParser::insert):
  74833. * html/HTMLDocumentParser.h:
  74834. 2010-07-23 Patrick Gansterer <paroga@paroga.com>
  74835. Reviewed by Adam Roben.
  74836. [WINCE] Buildfix for PopupMenuWin.cpp
  74837. https://bugs.webkit.org/show_bug.cgi?id=42906
  74838. Use correct API for BitmapInfo landed in r63944.
  74839. * platform/win/PopupMenuWin.cpp:
  74840. (WebCore::PopupMenu::paint):
  74841. 2010-07-23 fsamuel@chromium.org <fsamuel@chromium.org>
  74842. Reviewed by David Hyatt.
  74843. Updated table painting to draw cell layers in the correct order.
  74844. Table Cell Layering
  74845. https://bugs.webkit.org/show_bug.cgi?id=40775
  74846. Tests: tables/layering/paint-test-layering-1.html
  74847. tables/layering/paint-test-layering-2.html
  74848. * accessibility/AccessibilityTable.cpp:
  74849. (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
  74850. (WebCore::AccessibilityTable::addChildren):
  74851. (WebCore::AccessibilityTable::cellForColumnAndRow):
  74852. * accessibility/AccessibilityTableCell.cpp:
  74853. (WebCore::AccessibilityTableCell::titleUIElement):
  74854. * accessibility/AccessibilityTableColumn.cpp:
  74855. (WebCore::AccessibilityTableColumn::headerObjectForSection):
  74856. * rendering/AutoTableLayout.cpp:
  74857. (WebCore::AutoTableLayout::recalcColumn):
  74858. * rendering/RenderTable.cpp:
  74859. (WebCore::RenderTable::splitColumn):
  74860. (WebCore::RenderTable::calcBorderLeft):
  74861. (WebCore::RenderTable::calcBorderRight):
  74862. (WebCore::RenderTable::cellAbove):
  74863. (WebCore::RenderTable::cellBelow):
  74864. (WebCore::RenderTable::cellBefore):
  74865. (WebCore::RenderTable::cellAfter):
  74866. * rendering/RenderTableSection.cpp:
  74867. (WebCore::RenderTableSection::RenderTableSection):
  74868. (WebCore::RenderTableSection::ensureRows):
  74869. (WebCore::RenderTableSection::addCell):
  74870. (WebCore::RenderTableSection::setCellWidths):
  74871. (WebCore::RenderTableSection::calcRowHeight):
  74872. (WebCore::RenderTableSection::layoutRows):
  74873. (WebCore::RenderTableSection::calcOuterBorderTop):
  74874. (WebCore::RenderTableSection::calcOuterBorderBottom):
  74875. (WebCore::RenderTableSection::calcOuterBorderLeft):
  74876. (WebCore::RenderTableSection::calcOuterBorderRight):
  74877. (WebCore::RenderTableSection::firstLineBoxBaseline):
  74878. (WebCore::compareCellPositions):
  74879. (WebCore::RenderTableSection::paintCell):
  74880. (WebCore::RenderTableSection::paintObject):
  74881. (WebCore::RenderTableSection::numColumns):
  74882. (WebCore::RenderTableSection::appendColumn):
  74883. (WebCore::RenderTableSection::splitColumn):
  74884. (WebCore::RenderTableSection::nodeAtPoint):
  74885. * rendering/RenderTableSection.h:
  74886. (WebCore::RenderTableSection::CellStruct::CellStruct):
  74887. (WebCore::RenderTableSection::CellStruct::primaryCell):
  74888. (WebCore::RenderTableSection::CellStruct::hasCells):
  74889. (WebCore::RenderTableSection::primaryCellAt):
  74890. 2010-07-23 Patrick Gansterer <paroga@paroga.com>
  74891. Reviewed by Adam Roben.
  74892. [WINCE] Buildfix for Path.h
  74893. https://bugs.webkit.org/show_bug.cgi?id=42904
  74894. * platform/graphics/Path.h: Add missing typedef PlatformPath.
  74895. 2010-07-23 Adam Barth <abarth@webkit.org>
  74896. Reviewed by Eric Seidel.
  74897. Reserve capacity for attributes
  74898. https://bugs.webkit.org/show_bug.cgi?id=42877
  74899. This is about a 1.7% improvement to the parsing benchmark.
  74900. * html/HTMLToken.h:
  74901. (WebCore::AtomicHTMLToken::AtomicHTMLToken):
  74902. 2010-07-23 Adam Barth <abarth@webkit.org>
  74903. Reviewed by Eric Seidel.
  74904. Inline HTMLElementStack::top
  74905. https://bugs.webkit.org/show_bug.cgi?id=42879
  74906. According to sampling, HTMLElementStack::top is the hotest function in
  74907. the treebuilder. Inlining it is about a 0.3% improvement to the
  74908. parsing benchmark. This squares with how often it occurs in samples.
  74909. * html/HTMLElementStack.cpp:
  74910. * html/HTMLElementStack.h:
  74911. (WebCore::HTMLElementStack::top):
  74912. 2010-07-23 Patrick Gansterer <paroga@paroga.com>
  74913. Reviewed by Adam Roben.
  74914. [WINCE] Buildfix for GraphicsContext
  74915. https://bugs.webkit.org/show_bug.cgi?id=42888
  74916. Use AffineTransform insted of TransformationMatrix and
  74917. add ColorSpace parameter to the drawBitmap methods.
  74918. * platform/graphics/GraphicsContext.h:
  74919. * platform/graphics/wince/GraphicsContextWince.cpp:
  74920. (WebCore::GraphicsContext::affineTransform):
  74921. (WebCore::GraphicsContext::fillRoundedRect):
  74922. (WebCore::GraphicsContext::drawBitmap):
  74923. (WebCore::GraphicsContext::drawBitmapPattern):
  74924. 2010-07-23 Rafael Antognolli <antognolli@profusion.mobi>
  74925. Reviewed by Antonio Gomes.
  74926. [EFL] Add support for using libcurl network backend.
  74927. https://bugs.webkit.org/show_bug.cgi?id=42286
  74928. Add files and flags for soup/curl specific backend being
  74929. used.
  74930. Put some ifdefs around soup/glib calls.
  74931. No new tests, no new features implemented.
  74932. * CMakeListsEfl.txt:
  74933. * platform/efl/FileSystemEfl.cpp:
  74934. (WebCore::fileSystemRepresentation):
  74935. 2010-07-23 Adam Barth <abarth@webkit.org>
  74936. Reviewed by Eric Seidel.
  74937. Add fast-reject path for InputStreamPreprocessor::peek
  74938. https://bugs.webkit.org/show_bug.cgi?id=42881
  74939. This is about a 2.5% speedup on the parsing benchmark.
  74940. * html/HTMLTokenizer.h:
  74941. (WebCore::HTMLTokenizer::InputStreamPreprocessor::peek):
  74942. 2010-07-23 Patrick Gansterer <paroga@paroga.com>
  74943. Reviewed by Adam Roben.
  74944. [WINCE] Merge PasteboardWince.cpp into PasteboardWin.cpp
  74945. https://bugs.webkit.org/show_bug.cgi?id=42885
  74946. Make PasteboardWin more portable and remove the global namespace prefix
  74947. from GlobalLock/GlobalUnlock, since they are only macros on WinCE.
  74948. * platform/win/PasteboardWin.cpp:
  74949. (WebCore::PasteboardOwnerWndProc):
  74950. (WebCore::Pasteboard::Pasteboard):
  74951. (WebCore::Pasteboard::plainText):
  74952. (WebCore::Pasteboard::documentFragment):
  74953. 2010-07-23 Justin Schuh <jschuh@chromium.org>
  74954. Unreviewed, rolling out r63925.
  74955. http://trac.webkit.org/changeset/63925
  74956. https://bugs.webkit.org/show_bug.cgi?id=42858
  74957. Introduced a regression in history state.
  74958. * page/History.cpp:
  74959. (WebCore::History::urlForState):
  74960. 2010-07-23 Martin Robinson <mrobinson@igalia.com>
  74961. Unreviewed build fix.
  74962. Fix make dist by aligning the source list with currently used headers.
  74963. * GNUmakefile.am:
  74964. 2010-07-23 Alex Milowski <alex@milowski.com>
  74965. Reviewed by Darin Adler.
  74966. Moved the 'mathml' group back to where it belongs as
  74967. siblings of the other major folders.
  74968. * WebCore.xcodeproj/project.pbxproj:
  74969. 2010-07-23 Patrick Gansterer <paroga@paroga.com>
  74970. Reviewed by Adam Roben.
  74971. Buildfix for WinCE graphics after r56015.
  74972. https://bugs.webkit.org/show_bug.cgi?id=41354
  74973. Use fabs() insetead of abs().
  74974. * platform/graphics/wince/GraphicsContextWince.cpp:
  74975. (WebCore::GraphicsContext::fillRect):
  74976. * platform/graphics/wince/PlatformPathWince.cpp:
  74977. (WebCore::PlatformPath::addArcTo):
  74978. 2010-07-23 ryuan choi <ryuan.choi@samsung.com>
  74979. Reviewed by Antonio Gomes.
  74980. [EFL]build break because of r63927
  74981. https://bugs.webkit.org/show_bug.cgi?id=42864
  74982. * CMakeLists.txt:
  74983. 2010-07-23 Adam Barth <abarth@webkit.org>
  74984. Reviewed by Eric Seidel.
  74985. Inline HTMLTokenizer::InputStreamPreprocessor::peek
  74986. https://bugs.webkit.org/show_bug.cgi?id=42880
  74987. According to sampling HTMLTokenizer::InputStreamPreprocessor::peek is
  74988. the hotest function in the tokenizer. Inlining this function is about
  74989. a 2.2% speedup on the parser benchmark. Turns out the tokenizer is
  74990. much hotter than the tree builder. :)
  74991. * html/HTMLTokenizer.h:
  74992. (WebCore::HTMLTokenizer::InputStreamPreprocessor::peek):
  74993. 2010-07-23 Andras Becsi <abecsi@webkit.org>
  74994. Unreviewed build fix.
  74995. [Qt] Fix WebKit2 linkage.
  74996. No new tests needed.
  74997. * WebCore.pro: add InjectedBundlePageEditorClient.cpp to WK2 sources
  74998. 2010-07-23 Balazs Kelemen <kb@inf.u-szeged.hu>
  74999. Reviewed by Kenneth Rohde Christiansen.
  75000. [Qt] Setup the QtWebProcess
  75001. https://bugs.webkit.org/show_bug.cgi?id=42623
  75002. * WebCore.pro: Added WebProcessMainQt.cpp to SOURCES.
  75003. 2010-07-23 Pavel Feldman <pfeldman@chromium.org>
  75004. Not reviewed: Chromium tests fix.
  75005. * inspector/CodeGeneratorInspector.pm:
  75006. 2010-07-23 Patrick Gansterer <paroga@paroga.com>
  75007. Reviewed by Adam Roben.
  75008. [WINCE] Buildfix for PluginDatabaseWin.cpp
  75009. https://bugs.webkit.org/show_bug.cgi?id=41887
  75010. Define KEY_ENUMERATE_SUB_KEYS only if not defined.
  75011. * plugins/win/PluginDatabaseWin.cpp:
  75012. 2010-07-23 Pavel Feldman <pfeldman@chromium.org>
  75013. Reviewed by Yury Semikhatsky.
  75014. Chromium DevTools: migrate from utility context-based injected
  75015. script dispatch to upstream schema.
  75016. https://bugs.webkit.org/show_bug.cgi?id=42883
  75017. * bindings/v8/ScriptProfile.cpp:
  75018. (WebCore::ScriptProfile::title):
  75019. * inspector/InspectorController.cpp:
  75020. (WebCore::InspectorController::getProfile):
  75021. * inspector/front-end/InjectedScriptAccess.js:
  75022. 2010-07-23 Pavel Feldman <pfeldman@chromium.org>
  75023. Not reviewed: rolling out r63963.
  75024. * bindings/v8/ScriptProfile.cpp:
  75025. (WebCore::ScriptProfile::title):
  75026. * inspector/InspectorController.cpp:
  75027. (WebCore::InspectorController::getProfile):
  75028. * inspector/front-end/InjectedScriptAccess.js:
  75029. 2010-07-23 Pavel Feldman <pfeldman@chromium.org>
  75030. Reviewed by Yury Semikhatsky.
  75031. Chromium DevTools: migrate from utility context-based injected
  75032. script dispatch to upstream schema.
  75033. https://bugs.webkit.org/show_bug.cgi?id=42883
  75034. * bindings/v8/ScriptProfile.cpp:
  75035. (WebCore::ScriptProfile::title):
  75036. * inspector/InspectorController.cpp:
  75037. (WebCore::InspectorController::getProfile):
  75038. * inspector/front-end/InjectedScriptAccess.js:
  75039. (InjectedScriptAccess.get if):
  75040. (InjectedScriptAccess):
  75041. 2010-07-23 Yury Semikhatsky <yurys@chromium.org>
  75042. Reviewed by Pavel Feldman.
  75043. Web Inspector: error info propagation in InspectorBackendDispatch should be improved
  75044. https://bugs.webkit.org/show_bug.cgi?id=42873
  75045. * inspector/CodeGeneratorInspector.pm: report wrong parameter count and wrong
  75046. parametere type errror to the dispatch method caller
  75047. 2010-07-23 Pavel Feldman <pfeldman@chromium.org>
  75048. Reviewed by Yury Semikhatsky.
  75049. Web Inspector: injectedScriptId is missing in the stack frame wrappers.
  75050. https://bugs.webkit.org/show_bug.cgi?id=42889
  75051. * inspector/front-end/InjectedScript.js:
  75052. (injectedScriptConstructor):
  75053. 2010-07-23 Shinichiro Hamaji <hamaji@chromium.org>
  75054. Reviewed by Kent Tamura.
  75055. Backslash isn't transcoded in <input>
  75056. https://bugs.webkit.org/show_bug.cgi?id=42878
  75057. * css/CSSStyleSelector.cpp:
  75058. (WebCore::CSSStyleSelector::applyProperty):
  75059. 2010-07-22 Ilya Tikhonovsky <loislo@chromium.org>
  75060. Reviewed by Yury Semikhatsky.
  75061. WebInspector: CodeGeneratorInspector was extended and now it can
  75062. generate InspectorBackedDispatcher's code. This dispatcher will
  75063. validate and dispatch incoming inspector commands only by native
  75064. code without using javaScript. That is necessary step for
  75065. RemoteDebugging support.
  75066. https://bugs.webkit.org/show_bug.cgi?id=42588
  75067. * GNUmakefile.am:
  75068. * WebCore.gyp/WebCore.gyp:
  75069. * WebCore.gypi:
  75070. * WebCore.pri:
  75071. * WebCore.vcproj/WebCore.vcproj:
  75072. * WebCore.xcodeproj/project.pbxproj:
  75073. * inspector/CodeGeneratorInspector.pm:
  75074. * inspector/InspectorController.cpp:
  75075. (WebCore::InspectorController::InspectorController):
  75076. * inspector/InspectorController.h:
  75077. (WebCore::InspectorController::inspectorBackendDispatcher):
  75078. * inspector/front-end/ElementsPanel.js:
  75079. (WebInspector.ElementsPanel.prototype.setDocument):
  75080. 2010-07-22 Shinichiro Hamaji <hamaji@chromium.org>
  75081. Reviewed by Kent Tamura.
  75082. Backslash is transcoded into yen sign even when non japanese font is specified
  75083. https://bugs.webkit.org/show_bug.cgi?id=39654
  75084. Test: fast/text/backslash-to-yen-sign-euc.html
  75085. * css/CSSStyleSelector.cpp:
  75086. (WebCore::CSSStyleSelector::applyProperty): Call FontDescriptor::setIsSpecifiedFont.
  75087. * platform/graphics/Font.cpp:
  75088. (WebCore::Font::Font):
  75089. * platform/graphics/FontDescription.h: Added m_isSpecifiedFont and its accessors.
  75090. (WebCore::FontDescription::FontDescription):
  75091. (WebCore::FontDescription::isSpecifiedFont):
  75092. (WebCore::FontDescription::setIsSpecifiedFont):
  75093. (WebCore::FontDescription::operator==):
  75094. * platform/text/transcoder/FontTranscoder.cpp:
  75095. (WebCore::FontTranscoder::converterType): Don't transcode backslashes if a font family is explicitly specified.
  75096. (WebCore::FontTranscoder::convert):
  75097. (WebCore::FontTranscoder::needsTranscoding):
  75098. * platform/text/transcoder/FontTranscoder.h: Change the arguments from AtomicString fontFamily to Font.
  75099. * rendering/RenderText.cpp:
  75100. (WebCore::RenderText::updateNeedsTranscoding):
  75101. (WebCore::RenderText::setTextInternal):
  75102. 2010-07-22 Jon Honeycutt <jhoneycutt@apple.com>
  75103. Windows build fix.
  75104. Commit some changes missed by the commit-queue in r63944.
  75105. * platform/win/BitmapInfo.h:
  75106. (WebCore::BitmapInfo::is16bit):
  75107. (WebCore::BitmapInfo::is32bit):
  75108. (WebCore::BitmapInfo::width):
  75109. (WebCore::BitmapInfo::height):
  75110. (WebCore::BitmapInfo::size):
  75111. (WebCore::BitmapInfo::paddedWidth):
  75112. (WebCore::BitmapInfo::numPixels):
  75113. (WebCore::BitmapInfo::paddedBytesPerLine):
  75114. (WebCore::BitmapInfo::bytesPerLine):
  75115. 2010-07-22 Patrick Gansterer <paroga@paroga.com>
  75116. Reviewed by Adam Roben.
  75117. [WINCE] Add additonal methods to BitmapInfo.
  75118. https://bugs.webkit.org/show_bug.cgi?id=42071
  75119. Added a parameter to create 16bit BitmapInfo and
  75120. some additional accessors for the WinCE port.
  75121. Set bmiHeader.biSize only at constructor.
  75122. * platform/win/BitmapInfo.cpp:
  75123. (WebCore::bitmapInfoForSize):
  75124. (WebCore::BitmapInfo::create):
  75125. (WebCore::BitmapInfo::createBottomUp):
  75126. * platform/win/BitmapInfo.h:
  75127. (WebCore::BitmapInfo::is16bit):
  75128. (WebCore::BitmapInfo::is32bit):
  75129. (WebCore::BitmapInfo::width):
  75130. (WebCore::BitmapInfo::height):
  75131. (WebCore::BitmapInfo::size):
  75132. (WebCore::BitmapInfo::paddedWidth):
  75133. (WebCore::BitmapInfo::numPixels):
  75134. (WebCore::BitmapInfo::paddedBytesPerLine):
  75135. (WebCore::BitmapInfo::bytesPerLine):
  75136. 2010-07-22 MORITA Hajime <morrita@google.com>
  75137. Reviewed by Ojan Vafai.
  75138. Autoscroll on selection should take scrollbars into account as outside of the content.
  75139. https://bugs.webkit.org/show_bug.cgi?id=40403
  75140. ScrollView's scroll-bar was considered as a part of content rect,
  75141. that prevents autoscroll to happen when the pointer is over the
  75142. scroll-bar. This change excluded scroll-bar region from scrolling
  75143. delta calculation.
  75144. Test: WebCore/manual-tests/autoscroll-over-scrollbar.html
  75145. * rendering/RenderLayer.cpp:
  75146. (WebCore::RenderLayer::scrollRectToVisible):
  75147. 2010-07-22 Kent Tamura <tkent@chromium.org>
  75148. Reviewed by Darin Adler.
  75149. maxLength should not be applied to non-text types
  75150. https://bugs.webkit.org/show_bug.cgi?id=42814
  75151. According to the HTML5 specification, maxLength attribute should
  75152. be applied to text, search, url, tel, email, and password types.
  75153. Test: fast/forms/input-maxlength-unsupported.html
  75154. * dom/InputElement.cpp:
  75155. (WebCore::InputElement::handleBeforeTextInsertedEvent):
  75156. Apply maxLength() only if supportsMaxLength() is true.
  75157. * dom/InputElement.h:
  75158. * html/HTMLInputElement.cpp:
  75159. (WebCore::HTMLInputElement::patternMismatch):
  75160. Code cleanup by isTextType().
  75161. (WebCore::HTMLInputElement::tooLong):
  75162. ditto.
  75163. (WebCore::HTMLInputElement::isTextType):
  75164. Added. This returns true for types with maxLength/pattern/placeholder.
  75165. * html/HTMLInputElement.h:
  75166. (WebCore::HTMLInputElement::supportsMaxLength):
  75167. Added. Just calls isTextType().
  75168. (WebCore::HTMLInputElement::supportsPlaceholder):
  75169. Code cleanup by isTextType().
  75170. * wml/WMLInputElement.h:
  75171. (WebCore::WMLInputElement::supportsMaxLength):
  75172. Added. Always returns true.
  75173. 2010-07-22 Ryosuke Niwa <rniwa@webkit.org>
  75174. Reviewed by Kent Tamura.
  75175. [cleanup] logic to extract adjacent lists and list children in listifyParagraph and unlistifyParagraph should be isolated
  75176. https://bugs.webkit.org/show_bug.cgi?id=42841
  75177. Added enclosingListChild that takes the list node containing the node for the second argument
  75178. to ensure that it only returns the enclosing list child of the specified list node.
  75179. Added adjacentEnclosingList that finds adjacent lists of the specified position.
  75180. It takes the current position, the adjacent position that may or may not have a list, and the list type,
  75181. and avoids a list that belongs to a different table cell or an outer list that contains the current position.
  75182. No new tests needed.
  75183. * editing/InsertListCommand.cpp:
  75184. (WebCore::enclosingListChild): Added. See above.
  75185. (WebCore::InsertListCommand::unlistifyParagraph): Uses enclosingListChild.
  75186. (WebCore::adjacentEnclosingList): Added. See above.
  75187. (WebCore::InsertListCommand::listifyParagraph): Uses adjacentEnclosingList.
  75188. 2010-07-22 Patrick Gansterer <paroga@paroga.com>
  75189. Reviewed by Adam Roben.
  75190. [WIN] Correct DeleteObject usage in PasteboardWin
  75191. https://bugs.webkit.org/show_bug.cgi?id=41956
  75192. Call DeleteObject() if OpenClipboard() fails and don't
  75193. call DeleteObject() on objects returned from SelectObject().
  75194. * platform/win/PasteboardWin.cpp:
  75195. (WebCore::Pasteboard::writeImage):
  75196. 2010-07-22 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  75197. Reviewed by Antonio Gomes.
  75198. [EFL] Log function is incorrectly used.
  75199. r63804 used LOG function, but it should receive one more parameter.
  75200. Used LOG_ERROR instead, since this is an error message.
  75201. https://bugs.webkit.org/show_bug.cgi?id=42842
  75202. * platform/efl/WidgetEfl.cpp:
  75203. (WebCore::Widget::applyFallbackCursor): use LOG_ERROR in place of LOG
  75204. 2010-07-22 Kent Tamura <tkent@chromium.org>
  75205. Reviewed by Ojan Vafai.
  75206. Cancel button of search input field should fire input/change events
  75207. https://bugs.webkit.org/show_bug.cgi?id=34393
  75208. Test: fast/forms/search-cancel-button-events.html
  75209. * rendering/TextControlInnerElements.cpp:
  75210. (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
  75211. 2010-07-22 Sam Weinig <sam@webkit.org>
  75212. Reviewed by Maciej Stachowiak.
  75213. Fix for <rdar://problem/8222626>
  75214. Send textDidChangeInTextField delegate callback only in response to typing or other forms of user text input.
  75215. * GNUmakefile.am:
  75216. * WebCore.gypi:
  75217. * WebCore.pro:
  75218. * WebCore.vcproj/WebCore.vcproj:
  75219. * WebCore.xcodeproj/project.pbxproj:
  75220. Update project files.
  75221. * dom/UserTypingGestureIndicator.cpp: Copied from dom/UserGestureIndicator.cpp.
  75222. (WebCore::UserTypingGestureIndicator::processingUserTypingGesture):
  75223. (WebCore::focusedNode):
  75224. (WebCore::UserTypingGestureIndicator::focusedElementAtGestureStart):
  75225. (WebCore::UserTypingGestureIndicator::UserTypingGestureIndicator):
  75226. (WebCore::UserTypingGestureIndicator::~UserTypingGestureIndicator):
  75227. * dom/UserTypingGestureIndicator.h: Copied from dom/UserGestureIndicator.h.
  75228. Version of UserGestureIndicator that just tracks keyboard gestures and the focused
  75229. node they were targeting.
  75230. * editing/Editor.cpp:
  75231. (WebCore::Editor::confirmComposition):
  75232. (WebCore::Editor::setComposition):
  75233. * page/EventHandler.cpp:
  75234. (WebCore::EventHandler::keyEvent):
  75235. Put UserTypingGestureIndicator on the stack for user generated keyboard events.
  75236. 2010-07-22 Kent Tamura <tkent@chromium.org>
  75237. Reviewed by Ojan Vafai.
  75238. <input type=number> stepper buttons should dispatch input/change events
  75239. https://bugs.webkit.org/show_bug.cgi?id=42440
  75240. Test: fast/forms/input-number-events.html
  75241. * html/HTMLInputElement.cpp:
  75242. (WebCore::HTMLInputElement::stepUpFromRenderer):
  75243. Sets a flag to dispatch 'change' event and dispatches 'input' event
  75244. if the value is changed.
  75245. 2010-07-22 Justin Schuh <jschuh@chromium.org>
  75246. Reviewed by Adam Barth.
  75247. Make history state methods validate against document URL
  75248. https://bugs.webkit.org/show_bug.cgi?id=42858
  75249. Test: fast/history/history-replace-illegal.html
  75250. * page/History.cpp:
  75251. (WebCore::History::urlForState):
  75252. 2010-07-22 Andy Estes <aestes@apple.com>
  75253. Reviewed by Maciej Stachowiak.
  75254. When there are no beforeload listeners on a document,
  75255. HTMLLinkElement::process() should be called immediately when the node is
  75256. inserted into the document, rather than waiting until after attach is
  75257. performed.
  75258. <https://bugs.webkit.org/show_bug.cgi?id=42859>
  75259. <rdar://problem/8194528>
  75260. No new tests.
  75261. * html/HTMLLinkElement.cpp:
  75262. (WebCore::HTMLLinkElement::insertedIntoDocument): If there are no
  75263. beforeload listeners, call process() immediately. Otherwise, add it as
  75264. a post-attach callback.
  75265. 2010-07-22 James Robinson <jamesr@chromium.org>
  75266. Reviewed by Simon Fraser.
  75267. REGRESSION: box shadows on WebGL canvas elements repainted every frame
  75268. https://bugs.webkit.org/show_bug.cgi?id=42852
  75269. Avoid calling HTMLCanvasElement::willDraw() every time a WebGL canvas'
  75270. contents update. This call is only needed in the non-compositing
  75271. rendering path.
  75272. Covered by fast/canvas/webgl/canvas-test.html
  75273. * html/canvas/WebGLRenderingContext.cpp:
  75274. (WebCore::WebGLRenderingContext::markContextChanged):
  75275. (WebCore::WebGLRenderingContext::paintRenderingResultsToCanvas):
  75276. 2010-07-22 Patrick Gansterer <paroga@paroga.com>
  75277. Reviewed by Ojan Vafai.
  75278. Remove useless PlatformScrollBar
  75279. https://bugs.webkit.org/show_bug.cgi?id=41911
  75280. * WebCore.gypi:
  75281. * platform/win/PlatformScrollBar.h: Removed.
  75282. * platform/win/PlatformScrollBarWin.cpp: Removed.
  75283. 2010-07-22 Ryosuke Niwa <rniwa@webkit.org>
  75284. Reviewed by Ojan Vafai.
  75285. [Windows] Home hey doesn't work in first DIV inside a TABLE
  75286. https://bugs.webkit.org/show_bug.cgi?id=42767
  75287. The bug was caused by positionAvoidingFirstPositionInTable moving outside of the editing region.
  75288. Added a check so that it avoids the first position in the table only if the table is editable.
  75289. Test: editing/selection/home-inside-noneditable-table.html
  75290. * editing/visible_units.cpp:
  75291. (WebCore::positionAvoidingFirstPositionInTable):
  75292. 2010-07-22 Antonio Gomes <tonikitoo@webkit.org>
  75293. Reviewed by Laszlo Gombos.
  75294. Fix build warning for missing parentheses.
  75295. WebCore/html/HTMLInputElement.cpp:113: warning: suggest parentheses around '&&' within '||'
  75296. * html/HTMLInputElement.cpp:
  75297. (WebCore::isNumberCharacter):
  75298. 2010-07-22 John Gregg <johnnyg@google.com>
  75299. Reviewed by Kent Tamura.
  75300. [chromium] fast/forms/input-file-directory-upload.html fails on win after r63454
  75301. https://bugs.webkit.org/show_bug.cgi?id=42768
  75302. Normalize path separators for the script API by convering \'s to /'s.
  75303. Covered by input-file-directory-upload.html
  75304. * html/HTMLInputElement.cpp:
  75305. (WebCore::HTMLInputElement::setFileListFromRenderer):
  75306. 2010-07-22 Dmitry Titov <dimich@chromium.org>
  75307. Rubberstamped by Simon Fraser.
  75308. * platform/PlatformStrategies.h:
  75309. (WebCore::PlatformStrategies::PlatformStrategies): Add initialization of m_localizationStrategy.
  75310. 2010-07-22 Dumitru Daniliuc <dumi@chromium.org>
  75311. Reviewed by Ojan Vafai.
  75312. Make db.changeVersion()'s third parameter optional, as required by the spec.
  75313. https://bugs.webkit.org/show_bug.cgi?id=42787
  75314. * bindings/js/JSDatabaseCustom.cpp:
  75315. (WebCore::JSDatabase::changeVersion):
  75316. * bindings/js/JSDatabaseSyncCustom.cpp:
  75317. (WebCore::JSDatabaseSync::changeVersion):
  75318. * bindings/v8/custom/V8DatabaseCustom.cpp:
  75319. (WebCore::V8Database::changeVersionCallback):
  75320. * bindings/v8/custom/V8DatabaseSyncCustom.cpp:
  75321. (WebCore::V8DatabaseSync::changeVersionCallback):
  75322. * storage/SQLTransaction.cpp:
  75323. (WebCore::SQLTransaction::deliverTransactionCallback):
  75324. * storage/SQLTransactionSync.cpp:
  75325. (WebCore::SQLTransactionSync::execute):
  75326. 2010-07-20 Jessie Berlin <jberlin@apple.com>
  75327. Reviewed by Darin Adler.
  75328. Code Generator: Allow negative and string constants.
  75329. Also add tests for hexadecimal numbers.
  75330. * bindings/scripts/CodeGeneratorJS.pm:
  75331. If it is a string, do not try to cast it to an int.
  75332. * bindings/scripts/IDLStructure.pm:
  75333. Add a regex just for constant values that allows strings, hexadecimal numbers, and integral numbers.
  75334. * bindings/scripts/test/CPP/WebDOMTestObj.h:
  75335. Update the tests.
  75336. * bindings/scripts/test/JS/JSTestObj.cpp:
  75337. Ditto.
  75338. * bindings/scripts/test/JS/JSTestObj.h:
  75339. Ditto.
  75340. * bindings/scripts/test/ObjC/DOMTestObj.h:
  75341. Ditto.
  75342. * bindings/scripts/test/TestObj.idl:
  75343. Add tests for negative numbers, strings, and hexadecimal numbers.
  75344. * bindings/scripts/test/V8/V8TestObj.cpp:
  75345. Update the tests.
  75346. 2010-07-22 Simon Fraser <simon.fraser@apple.com>
  75347. Reviewed by Darin Adler.
  75348. Composited layers don't scroll in WebKit2
  75349. https://bugs.webkit.org/show_bug.cgi?id=42771
  75350. More prep work: make a single scrollPositionChanged() bottleneck method, and use it to
  75351. send the scroll event, repaint fixed elements, and update compositing layers.
  75352. * page/FrameView.cpp:
  75353. (WebCore::FrameView::scrollPositionChangedViaPlatformWidget):
  75354. (WebCore::FrameView::scrollPositionChanged):
  75355. (WebCore::FrameView::repaintFixedElementsAfterScrolling):
  75356. (WebCore::FrameView::valueChanged):
  75357. * page/FrameView.h:
  75358. * platform/ScrollView.cpp:
  75359. (WebCore::ScrollView::valueChanged):
  75360. 2010-07-22 Sam Weinig <sam@webkit.org>
  75361. Reviewed by Anders Carlsson.
  75362. Patch for https://bugs.webkit.org/show_bug.cgi?id=42836
  75363. Add localized strings stubs for WebKit2.
  75364. - Convert WebKit (mac) to use a LocalizationStrategy rather than the WebCoreViewFactory
  75365. for localized strings.
  75366. Gets us below 200 tests failing in WebKitTestRunner.
  75367. * WebCore.exp.in:
  75368. * WebCore.xcodeproj/project.pbxproj:
  75369. * page/mac/WebCoreViewFactory.h:
  75370. * platform/LocalizationStrategy.h: Added.
  75371. (WebCore::LocalizationStrategy::~LocalizationStrategy):
  75372. * platform/PlatformStrategies.h:
  75373. (WebCore::PlatformStrategies::pluginStrategy):
  75374. (WebCore::PlatformStrategies::localizationStrategy):
  75375. (WebCore::PlatformStrategies::PlatformStrategies):
  75376. (WebCore::PlatformStrategies::~PlatformStrategies):
  75377. * platform/mac/LocalizedStringsMac.mm:
  75378. 2010-07-22 Andras Becsi <abecsi@webkit.org>
  75379. Reviewed by Antonio Gomes.
  75380. [Qt] Implement WebContext::applicationCacheDirectory() for the Qt port of WebKit2.
  75381. https://bugs.webkit.org/show_bug.cgi?id=42830
  75382. No new tests needed.
  75383. * WebCore.pri: add ApplicationCacheStorage.h to wk2 headers
  75384. * WebCore.pro: add WebContextQt.cpp to sources
  75385. 2010-07-22 Joone Hur <joone.hur@samsung.com>
  75386. Reviewed by Antonio Gomes.
  75387. [EFL] add support for logging
  75388. https://bugs.webkit.org/show_bug.cgi?id=40807
  75389. Enable to turn log channels on for EFL port
  75390. * platform/efl/LoggingEfl.cpp:
  75391. (WebCore::InitializeLoggingChannelsIfNecessary):
  75392. 2010-07-22 Balazs Kelemen <kb@inf.u-szeged.hu>
  75393. Ureviewed build fix.
  75394. [Qt] Fix WebKit2 build
  75395. https://bugs.webkit.org/show_bug.cgi?id=42638
  75396. * WebCore.pri:
  75397. * WebCore.pro:
  75398. 2010-07-22 Andrey Kosyakov <caseq@chromium.org>
  75399. Reviewed by Yury Semikhatsky.
  75400. Web Inspector: Stop granting universal access to inspector front-end page.
  75401. https://bugs.webkit.org/show_bug.cgi?id=42817
  75402. * inspector/InspectorFrontendClientLocal.cpp:
  75403. (WebCore::InspectorFrontendClientLocal::windowObjectCleared):
  75404. 2010-07-22 Yury Semikhatsky <yurys@chromium.org>
  75405. Unreviewed. Fix inspector console tests crashes.
  75406. * bindings/v8/ScriptValue.cpp:
  75407. (WebCore::v8ToInspectorValue):
  75408. (WebCore::ScriptValue::toInspectorValue): enter v8 context before calling GetPropertyNames
  75409. 2010-07-22 Gyuyoung Kim <gyuyoung.kim@samsung.com>
  75410. Unreviewed build fix.
  75411. [EFL] Build break for SVN r63881
  75412. https://bugs.webkit.org/show_bug.cgi?id=42813
  75413. * CMakeLists.txt: Add platform/SchemeRegistry.cpp
  75414. 2010-07-22 Hayato Ito <hayato@chromium.org>
  75415. Reviewed by Darin Adler.
  75416. Refactor CSSSelector's destructor and make it inline.
  75417. https://bugs.webkit.org/show_bug.cgi?id=42726
  75418. Refactor with no behavior change, thus no new tests.
  75419. * css/CSSSelector.cpp:
  75420. (WebCore::CSSSelectorBag::~CSSSelectorBag): Make sure the bag is empty.
  75421. (WebCore::CSSSelectorBag::add): Renamed from append().
  75422. (WebCore::CSSSelector::releaseOwnedSelectorsToBag):
  75423. (WebCore::CSSSelector::deleteReachableSelectors):
  75424. * css/CSSSelector.h:
  75425. (WebCore::CSSSelector::~CSSSelector):
  75426. 2010-07-22 Yury Semikhatsky <yurys@chromium.org>
  75427. Reviewed by Pavel Feldman.
  75428. Web Inspector: should be possible to convert console message arguments to InspectorValues
  75429. https://bugs.webkit.org/show_bug.cgi?id=42457
  75430. Now it is possible to convert simple JavaScript objects to
  75431. InspectorValues.
  75432. * bindings/js/ScriptValue.cpp:
  75433. (WebCore::jsToInspectorValue):
  75434. (WebCore::ScriptValue::toInspectorValue):
  75435. * bindings/js/ScriptValue.h:
  75436. * bindings/v8/ScriptValue.cpp:
  75437. (WebCore::v8ToInspectorValue):
  75438. (WebCore::ScriptValue::toInspectorValue):
  75439. * bindings/v8/ScriptValue.h:
  75440. * inspector/ConsoleMessage.cpp: console notifications are pushed to RemoteInspectorFrontend instead of InspectorFrontend.
  75441. (WebCore::ConsoleMessage::CallFrame::buildInspectorObject):
  75442. (WebCore::ConsoleMessage::addToFrontend):
  75443. (WebCore::ConsoleMessage::updateRepeatCountInConsole):
  75444. * inspector/ConsoleMessage.h:
  75445. * inspector/InjectedScript.cpp:
  75446. (WebCore::InjectedScript::wrapForConsole): return InspectorValue instead of SerializedScriptValue
  75447. * inspector/InjectedScript.h:
  75448. * inspector/Inspector.idl:
  75449. * inspector/InspectorBackend.cpp:
  75450. (WebCore::InspectorBackend::clearConsoleMessages): send response directly from the backend
  75451. (WebCore::InspectorBackend::remoteFrontend):
  75452. * inspector/InspectorBackend.h:
  75453. * inspector/InspectorController.cpp:
  75454. (WebCore::InspectorController::addConsoleMessage):
  75455. (WebCore::InspectorController::clearConsoleMessages): don't send notification to the front end,
  75456. it will be send either from InspectorBackend.cpp if it was a user request or reset message will
  75457. be send to the front end if the messages are cleared due to page navigation.
  75458. (WebCore::InspectorController::populateScriptObjects):
  75459. * inspector/front-end/ConsoleView.js:
  75460. * inspector/front-end/inspector.js:
  75461. 2010-07-22 Alexander Pavlov <apavlov@chromium.org>
  75462. Reviewed by Pavel Feldman.
  75463. Web Inspector: Modifying settings actually modifies defaultValues
  75464. https://bugs.webkit.org/show_bug.cgi?id=42816
  75465. Avoid using live modifiable objects as property default values.
  75466. * inspector/front-end/Settings.js:
  75467. (WebInspector.Settings):
  75468. (WebInspector.Settings.prototype.reset):
  75469. (WebInspector.Settings.prototype._load):
  75470. (WebInspector.Settings.prototype.installSetting):
  75471. (WebInspector.Settings.prototype._get):
  75472. 2010-07-22 Ben Murdoch <benm@google.com>
  75473. Reviewed by Simon Fraser.
  75474. Touch events do not affect the :active CSS state
  75475. https://bugs.webkit.org/show_bug.cgi?id=39493
  75476. Clean the code up by using a typedef based on comments
  75477. post landing of the original patch.
  75478. No change in functionality so no new tests.
  75479. * rendering/HitTestRequest.h: Typedef the HitTestRequestType to unsigned.
  75480. * WebCore.exp.in: Update export signature.
  75481. * WebCore.order: Ditto.
  75482. * page/EventHandler.cpp: use the new typedef.
  75483. * page/EventHandler.h: ditto.
  75484. 2010-07-22 Alexander Pavlov <apavlov@chromium.org>
  75485. Reviewed by Pavel Feldman.
  75486. Web Inspector: Rename method for CSS rule source range retrieval and fix return object format
  75487. https://bugs.webkit.org/show_bug.cgi?id=42379
  75488. * inspector/Inspector.idl:
  75489. * inspector/InspectorBackend.cpp:
  75490. (WebCore::InspectorBackend::getRuleRanges):
  75491. * inspector/InspectorBackend.h:
  75492. * inspector/InspectorBackend.idl:
  75493. * inspector/InspectorCSSStore.cpp:
  75494. (WebCore::InspectorCSSStore::getRuleRanges):
  75495. * inspector/InspectorCSSStore.h:
  75496. * inspector/InspectorDOMAgent.cpp:
  75497. (WebCore::InspectorDOMAgent::getRuleRanges):
  75498. * inspector/InspectorDOMAgent.h:
  75499. * inspector/front-end/DOMAgent.js:
  75500. 2010-07-21 Pavel Feldman <pfeldman@chromium.org>
  75501. Reviewed by Yury Semikhatsky.
  75502. Chromium Dev Tools: Separators are missing in the context menu.
  75503. https://bugs.webkit.org/show_bug.cgi?id=42761
  75504. * bindings/js/JSInspectorFrontendHostCustom.cpp:
  75505. (WebCore::JSInspectorFrontendHost::showContextMenu):
  75506. * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
  75507. (WebCore::V8InspectorFrontendHost::showContextMenuCallback):
  75508. * platform/ContextMenuItem.h:
  75509. (WebCore::):
  75510. 2010-07-22 Zoltan Herczeg <zherczeg@webkit.org>
  75511. Reviewed by Nikolas Zimmermann.
  75512. SVGFilterElement & SVGFE*Element don't support dynamic invalidation, when attributes change
  75513. https://bugs.webkit.org/show_bug.cgi?id=42244
  75514. Implementing svgAttributeChanged and childrenChanged for the base class of all filters,
  75515. called SVGFilterPrimitiveStandardAttributes.
  75516. Tests: svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-dom-height-attr.html
  75517. svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-dom-result-attr.html
  75518. svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-dom-width-attr.html
  75519. svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-dom-x-attr.html
  75520. svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-dom-y-attr.html
  75521. svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-svgdom-height-prop.html
  75522. svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-svgdom-result-prop.html
  75523. svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-svgdom-width-prop.html
  75524. svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-svgdom-x-prop.html
  75525. svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-svgdom-y-prop.html
  75526. * svg/SVGFilterPrimitiveStandardAttributes.cpp:
  75527. (WebCore::SVGFilterPrimitiveStandardAttributes::svgAttributeChanged):
  75528. (WebCore::SVGFilterPrimitiveStandardAttributes::childrenChanged):
  75529. * svg/SVGFilterPrimitiveStandardAttributes.h:
  75530. (WebCore::SVGFilterPrimitiveStandardAttributes::invalidateFilter):
  75531. 2010-07-22 Kent Tamura <tkent@chromium.org>
  75532. Reviewed by Darin Adler.
  75533. Small refactoring for input value sanitization
  75534. https://bugs.webkit.org/show_bug.cgi?id=42807
  75535. Rename some functions to clarify their roles.
  75536. * dom/InputElement.cpp:
  75537. (WebCore::replaceEOLAndLimitLength):
  75538. Renamed from sanitizeUserInputValue().
  75539. (WebCore::InputElement::sanitizeValueForTextField):
  75540. Renamed from sanitizeValue(), and call replaceEOLAndLimitLength()
  75541. instead of sanitizeUserInputValue().
  75542. (WebCore::InputElement::sanitizeUserInputValue):
  75543. Just call replaceEOLAndLimitLength().
  75544. (WebCore::InputElement::updateValueIfNeeded):
  75545. Use non-static sanitizeValue() for consistency.
  75546. * dom/InputElement.h:
  75547. * html/HTMLInputElement.cpp:
  75548. (WebCore::HTMLInputElement::setInputType):
  75549. Revert the change of r63876. It is not needed because of the
  75550. updateValueIfNeeded() change.
  75551. (WebCore::HTMLInputElement::sanitizeValue):
  75552. Apply the sanitizeValue() renaming.
  75553. 2010-07-22 Tony Gentilcore <tonyg@chromium.org>
  75554. Reviewed by Darin Fisher.
  75555. webkitPerformance.timing.responseEnd should not include document parse time
  75556. https://bugs.webkit.org/show_bug.cgi?id=42797
  75557. No new tests because timing based test would be flaky.
  75558. * loader/FrameLoader.cpp:
  75559. (WebCore::FrameLoader::finishedLoading): finishedLoading() is called by the platform at the right time, but didReceiveData() synchronously invokes parsing without returning to the event loop prior to this. So by the time the didFinishLoading() method is executed, parsing is finished. The solution is to move this time to didReceiveData() prior to parsing.
  75560. * loader/MainResourceLoader.cpp:
  75561. (WebCore::MainResourceLoader::didReceiveData): Update the time each time didReceiveData() is called.
  75562. (WebCore::MainResourceLoader::didFinishLoading): When finished, and after parsing, set responseEnd appropriately.
  75563. * loader/MainResourceLoader.h:
  75564. * page/Timing.cpp:
  75565. (WebCore::Timing::resourceLoadTimeRelativeToAbsolute): Now that responseEnd is set correctly, it can be much shorter for very fast loads (like local files). This exposed the fact that this skew check was not tight enough. We need to make sure that the whole range of values from the ResourceLoadTiming API fit within fetchStart-responseEnd, not just that requestTime fits in this range.
  75566. 2010-07-21 Kent Tamura <tkent@chromium.org>
  75567. Reviewed by Darin Adler.
  75568. Assertion failure by changing the type of an input element with a
  75569. non-number value to 'range'.
  75570. https://bugs.webkit.org/show_bug.cgi?id=42643
  75571. Test: fast/forms/input-value-sanitization.html
  75572. * html/HTMLInputElement.cpp:
  75573. (WebCore::HTMLInputElement::setInputType):
  75574. Update the value by HTMLInputElement::sanitizeValue() in a case that
  75575. storesValueSeparateFromAttribute() state is not changed.
  75576. 2010-07-21 Adam Barth <abarth@webkit.org>
  75577. Reviewed by Eric Seidel.
  75578. Implement spec changes for basefont and bgsound
  75579. https://bugs.webkit.org/show_bug.cgi?id=42792
  75580. * html/HTMLTreeBuilder.cpp:
  75581. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  75582. (WebCore::HTMLTreeBuilder::processStartTag):
  75583. (WebCore::HTMLTreeBuilder::processStartTagForInHead):
  75584. 2010-07-21 Adam Barth <abarth@webkit.org>
  75585. Reviewed by Eric Seidel.
  75586. Update a list of tags to match changes in the HTML5 spec
  75587. https://bugs.webkit.org/show_bug.cgi?id=42791
  75588. We need to atomize these strings at some point.
  75589. * html/HTMLTreeBuilder.cpp:
  75590. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  75591. 2010-07-21 Adam Barth <abarth@webkit.org>
  75592. Reviewed by Eric Seidel.
  75593. HTMLTreeBuilder needs to update to match new spec behavior for <button>
  75594. https://bugs.webkit.org/show_bug.cgi?id=42233
  75595. The spec has some typos in this area, but this is my best guess for
  75596. what Ian means. I've filed bugs against the spec for each typo.
  75597. * html/HTMLElementStack.cpp:
  75598. (WebCore::HTMLNames::isScopeMarker):
  75599. (WebCore::HTMLNames::isButtonScopeMarker):
  75600. (WebCore::HTMLElementStack::inButtonScope):
  75601. * html/HTMLElementStack.h:
  75602. * html/HTMLTreeBuilder.cpp:
  75603. (WebCore::HTMLTreeBuilder::processFakePEndTagIfPInButtonScope):
  75604. (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag):
  75605. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  75606. (WebCore::HTMLTreeBuilder::processEndTagForInBody):
  75607. * html/HTMLTreeBuilder.h:
  75608. 2010-07-21 Justin Schuh <jschuh@chromium.org>
  75609. Reviewed by Oliver Hunt.
  75610. Prevent DeleteButtonController enable state from changing when not editing
  75611. https://bugs.webkit.org/show_bug.cgi?id=42659
  75612. Test: svg/custom/use-invalid-html.xhtml
  75613. * dom/ContainerNode.cpp:
  75614. (WebCore::ContainerNode::cloneChildNodes):
  75615. 2010-07-21 Beth Dakin <bdakin@apple.com>
  75616. Reviewed by Dan Bernstein.
  75617. Fix for https://bugs.webkit.org/show_bug.cgi?id=42605 New border-
  75618. radius path-based drawing code has some issues with corner-joins
  75619. GraphicsContext::clipConvexPolygon() now takes a boolean parameter
  75620. indicating whether or not the clip should be antialiased.
  75621. * platform/graphics/GraphicsContext.h:
  75622. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  75623. (WebCore::GraphicsContext::clipConvexPolygon):
  75624. * platform/graphics/cg/GraphicsContextCG.cpp:
  75625. (WebCore::GraphicsContext::clipConvexPolygon):
  75626. * platform/graphics/haiku/GraphicsContextHaiku.cpp:
  75627. (WebCore::GraphicsContext::clipConvexPolygon):
  75628. * platform/graphics/qt/GraphicsContextQt.cpp:
  75629. (WebCore::GraphicsContext::clipConvexPolygon):
  75630. * platform/graphics/skia/GraphicsContextSkia.cpp:
  75631. (WebCore::GraphicsContext::clipConvexPolygon):
  75632. * platform/graphics/wince/GraphicsContextWince.cpp:
  75633. (WebCore::GraphicsContext::clipConvexPolygon):
  75634. * platform/graphics/wx/GraphicsContextWx.cpp:
  75635. (WebCore::GraphicsContext::clipConvexPolygon):
  75636. Compute 4 booleans determining if each edge is a "matching" edge of
  75637. not. Send the two appropriate values to clipBorderSidePolygon() so
  75638. we can decide there whether or not to antialias the clip based on
  75639. matchy-ness.
  75640. * rendering/RenderBoxModelObject.cpp:
  75641. (WebCore::RenderBoxModelObject::paintBorder):
  75642. If both edges are matching, don't antialias. If neither edge
  75643. matches, never antialias. If one edge matches and one does not,
  75644. apply two clips to get the appropriate antialiasing in each corner.
  75645. (WebCore::RenderBoxModelObject::clipBorderSidePolygon):
  75646. * rendering/RenderBoxModelObject.h:
  75647. 2010-07-21 Brady Eidson <beidson@apple.com>
  75648. Reviewed by Geoffrey Garen.
  75649. Break out "scheme registration" functionality from SecurityOrigin to a SchemeRegistry
  75650. https://bugs.webkit.org/show_bug.cgi?id=42783
  75651. No new tests. (No change in behavior)
  75652. * GNUmakefile.am:
  75653. * WebCore.exp.in:
  75654. * WebCore.gypi:
  75655. * WebCore.pro:
  75656. * WebCore.vcproj/WebCore.vcproj:
  75657. * WebCore.xcodeproj/project.pbxproj:
  75658. * loader/FrameLoader.cpp:
  75659. (WebCore::FrameLoader::isMixedContent):
  75660. (WebCore::FrameLoader::loadFrameRequest):
  75661. * page/SecurityOrigin.cpp:
  75662. (WebCore::SecurityOrigin::SecurityOrigin):
  75663. (WebCore::SecurityOrigin::canLoad):
  75664. (WebCore::SecurityOrigin::isLocal):
  75665. * page/SecurityOrigin.h:
  75666. * platform/SchemeRegistry.cpp: Added.
  75667. (WebCore::localSchemes):
  75668. (WebCore::secureSchemes):
  75669. (WebCore::schemesWithUniqueOrigins):
  75670. (WebCore::SchemeRegistry::registerURLSchemeAsLocal):
  75671. (WebCore::SchemeRegistry::removeURLSchemeRegisteredAsLocal):
  75672. (WebCore::SchemeRegistry::localURLSchemes):
  75673. (WebCore::SchemeRegistry::shouldTreatURLAsLocal):
  75674. (WebCore::SchemeRegistry::shouldTreatURLSchemeAsLocal):
  75675. (WebCore::SchemeRegistry::registerURLSchemeAsNoAccess):
  75676. (WebCore::SchemeRegistry::shouldTreatURLSchemeAsNoAccess):
  75677. (WebCore::SchemeRegistry::registerURLSchemeAsSecure):
  75678. (WebCore::SchemeRegistry::shouldTreatURLSchemeAsSecure):
  75679. * platform/SchemeRegistry.h: Added.
  75680. 2010-07-21 Chris Marrin <cmarrin@apple.com>
  75681. Reviewed by Simon Fraser.
  75682. Assertion failure in AnimationBase::updateStateMachine() coming out of paused state
  75683. https://bugs.webkit.org/show_bug.cgi?id=37993
  75684. Added logic to properly handle pausing and resuming when in the
  75685. AnimationStateStartWaitStyleAvailable state. This was causing an
  75686. assert when going out of the pause state because the paused flag
  75687. was not set.
  75688. The fix is a straightforward implementation, going into a new
  75689. AnimationStatePausedWaitStyleAvailable state and setting the paused
  75690. flag (actually setting the m_pauseTime variable to something other
  75691. than -1). Also added handling of the new state, both when the
  75692. "style available" callback comes in while in this state and when
  75693. unpausing while in this state.
  75694. For now a LayoutTest is not possible since there's no way to go in
  75695. and out of the pause state. I've opened https://bugs.webkit.org/show_bug.cgi?id=42790
  75696. to track this.
  75697. * page/animation/AnimationBase.cpp:
  75698. (WebCore::AnimationBase::updateStateMachine):
  75699. * page/animation/AnimationBase.h:
  75700. (WebCore::AnimationBase::):
  75701. 2010-07-21 Bo Liu <boliu@chromium.org>
  75702. Reviewed by Darin Fisher.
  75703. [Chromium] Add chromium WebMediaPlayer to PlatformMedia
  75704. https://bugs.webkit.org/show_bug.cgi?id=41295
  75705. * platform/graphics/MediaPlayer.h:
  75706. (WebCore::PlatformMedia::):
  75707. 2010-07-21 Simon Fraser <simon.fraser@apple.com>
  75708. Reviewed by Anders Carlsson.
  75709. Composited layers don't scroll in WebKit2
  75710. https://bugs.webkit.org/show_bug.cgi?id=42771
  75711. Prep work: FrameView::scrollPositionChanged() sounds like a generic "did scroll" bottleneck,
  75712. but this is deceiving. It's only every called on one platform (Mac) when the NSScrollView gets
  75713. scrolled, so rename it to FrameView::scrollPositionChangedViaPlatformWidget().
  75714. * WebCore.exp.in:
  75715. * page/FrameView.cpp:
  75716. (WebCore::FrameView::scrollPositionChangedViaPlatformWidget):
  75717. * page/FrameView.h:
  75718. 2010-07-21 Peter Beverloo <peter@lvp-media.com>
  75719. Reviewed by Eric Carlson.
  75720. Removed support for the -khtml CSS vendor prefix and limit the
  75721. -apple prefix to two properties (dashboard-region and line-clamp).
  75722. Test: fast/css/limited-vendor-prefix-behavior.html
  75723. * css/CSSParser.cpp:
  75724. (WebCore::cssPropertyID):
  75725. 2010-07-21 Adam Barth <abarth@webkit.org>
  75726. Reviewed by Eric Seidel.
  75727. Fix the last tree HTML5 tree builder crashes
  75728. https://bugs.webkit.org/show_bug.cgi?id=42773
  75729. This patch changes the internal representation of a bookmark to handle
  75730. the case where one of the adjecent entries in the list of active
  75731. formatting elements is actually a marker.
  75732. After this patch, the bookmarking mechanism isn't as general, but it
  75733. works for the cases we need in the adoption agency.
  75734. Also, after this patch, there aren't any more known crashers in the
  75735. HTML5 tree builder. :)
  75736. * html/HTMLFormattingElementList.cpp:
  75737. (WebCore::HTMLFormattingElementList::bookmarkFor):
  75738. (WebCore::HTMLFormattingElementList::swapTo):
  75739. * html/HTMLFormattingElementList.h:
  75740. (WebCore::HTMLFormattingElementList::Bookmark::Bookmark):
  75741. (WebCore::HTMLFormattingElementList::Bookmark::moveToAfter):
  75742. (WebCore::HTMLFormattingElementList::Bookmark::hasBeenMoved):
  75743. (WebCore::HTMLFormattingElementList::Bookmark::mark):
  75744. (WebCore::HTMLFormattingElementList::first):
  75745. * html/HTMLTreeBuilder.cpp:
  75746. (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
  75747. 2010-07-21 Tony Gentilcore <tonyg@chromium.org>
  75748. Unreviewed build fix.
  75749. Disable overzealous ASSERT
  75750. https://bugs.webkit.org/show_bug.cgi?id=42775
  75751. No new tests because no changed functionality.
  75752. * loader/FrameLoader.cpp:
  75753. (WebCore::FrameLoader::stopLoading):
  75754. 2010-07-21 Yael Aharon <yael.aharon@nokia.com>
  75755. Reviewed by Darin Adler.
  75756. Crash in Notification::disconnectFrame() triggered by Frame::lifeSupportTimerFired()
  75757. https://bugs.webkit.org/show_bug.cgi?id=42534
  75758. Call NotificationsCenter::disconnectFrame() when the frame is disconnected from the page.
  75759. Calling it from the destructor of Frame is too late and sometimes causes access violation.
  75760. I was not able to reproduce this crash, so did not add new tests.
  75761. This patch is based on the error reported in
  75762. http://code.google.com/p/chromium/issues/detail?id=49323.
  75763. * page/DOMWindow.cpp:
  75764. (WebCore::DOMWindow::pageDestroyed):
  75765. * page/DOMWindow.h:
  75766. * page/Frame.cpp:
  75767. (WebCore::Frame::pageDestroyed):
  75768. 2010-07-21 Anders Carlsson <andersca@apple.com>
  75769. Reviewed by Sam Weinig.
  75770. Don't assert when clicking on a plug-in in WebKit2
  75771. https://bugs.webkit.org/show_bug.cgi?id=42762
  75772. Remove a now invalid assert and return false instead.
  75773. * page/mac/EventHandlerMac.mm:
  75774. (WebCore::EventHandler::passMouseDownEventToWidget):
  75775. 2010-07-21 Anton Muhin <antonm@chromium.org>
  75776. Reviewed by Adam Barth.
  75777. [v8] Revert r60670 as it introduced a regression: in some cases named children couldn't be retrieved.
  75778. https://bugs.webkit.org/show_bug.cgi?id=42766
  75779. See http://code.google.com/p/chromium/issues/detail?id=48804 for more details.
  75780. * bindings/scripts/CodeGeneratorV8.pm:
  75781. * bindings/v8/ScriptController.cpp:
  75782. (WebCore::ScriptController::namedItemAdded):
  75783. (WebCore::ScriptController::namedItemRemoved):
  75784. * bindings/v8/V8DOMWindowShell.cpp:
  75785. (WebCore::V8DOMWindowShell::updateDocumentWrapperCache):
  75786. * bindings/v8/V8DOMWindowShell.h:
  75787. * bindings/v8/V8DOMWrapper.cpp:
  75788. (WebCore::V8DOMWrapper::instantiateV8Object):
  75789. * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
  75790. (WebCore::V8HTMLDocument::namedPropertyDeleter):
  75791. (WebCore::V8HTMLDocument::namedPropertyGetter):
  75792. (WebCore::V8HTMLDocument::indexedPropertyGetter):
  75793. (WebCore::V8HTMLDocument::allAccessorSetter):
  75794. (WebCore::toV8):
  75795. 2010-07-21 Eric Carlson <eric.carlson@apple.com>
  75796. Reviewed by Simon Fraser.
  75797. Update plug-in proxy backed <video> and <audio> elements.
  75798. https://bugs.webkit.org/show_bug.cgi?id=42770
  75799. <rdar://problem/7963467>
  75800. * html/HTMLMediaElement.cpp:
  75801. (WebCore::HTMLMediaElement::attributeChanged): Only call m_player->setControls when
  75802. the 'controls' attribute changes.
  75803. (WebCore::HTMLMediaElement::createRenderer):
  75804. (WebCore::HTMLMediaElement::attach): If we have a proxy widget, call the WebFrameLoaderClient's
  75805. 'hide' and 'show' methods for the media proxy plug-in to make sure we remove and re-add the
  75806. plug-in's view to the global list of plugin views.
  75807. (WebCore::HTMLMediaElement::createMediaPlayerProxy): Bail if m_proxyWidget is non-NULL
  75808. * loader/EmptyClients.h:
  75809. (WebCore::EmptyFrameLoaderClient::hideMediaPlayerProxyPlugin): Empty stub method.
  75810. (WebCore::EmptyFrameLoaderClient::showMediaPlayerProxyPlugin): Ditto.
  75811. * loader/FrameLoader.cpp:
  75812. * loader/FrameLoaderClient.h:
  75813. * loader/SubframeLoader.cpp:
  75814. (WebCore::FrameLoader::loadMediaPlayerProxyPlugin): Always set m_containsPlugIns in loadMediaPlayerProxyPlugin(),
  75815. even when we don't have a renderer.
  75816. (WebCore::FrameLoader::hideMediaPlayerProxyPlugin): New, call hideMediaPlayerProxyPlugin.
  75817. (WebCore::FrameLoader::showMediaPlayerProxyPlugin): New, call showMediaPlayerProxyPlugin.
  75818. * platform/graphics/MediaPlayer.cpp:
  75819. (WebCore::NullMediaPlayerPrivate::setControls):
  75820. (WebCore::MediaPlayer::setControls): New, pass through to media engine.
  75821. (WebCore::MediaPlayer::enterFullscreen): Ditto.
  75822. (WebCore::MediaPlayer::exitFullscreen): Ditto.
  75823. * platform/graphics/MediaPlayer.h:
  75824. * platform/graphics/MediaPlayerPrivate.h:
  75825. (WebCore::MediaPlayerPrivateInterface::setControls):
  75826. (WebCore::MediaPlayerPrivateInterface::enterFullscreen):
  75827. (WebCore::MediaPlayerPrivateInterface::exitFullscreen):
  75828. 2010-07-21 Dimitri Glazkov <dglazkov@chromium.org>
  75829. Reviewed by Darin Adler.
  75830. Make more members of CSSStyleSelector private.
  75831. https://bugs.webkit.org/show_bug.cgi?id=42757
  75832. No change in behavior, so no new tests.
  75833. * css/CSSStyleSelector.h: Made a publicly-unused methods private.
  75834. 2010-07-21 Pavel Feldman <pfeldman@chromium.org>
  75835. Reviewed by Timothy Hatcher.
  75836. Web Inspector: consider jQuery object to be of array nature.
  75837. https://bugs.webkit.org/show_bug.cgi?id=42758
  75838. * inspector/front-end/InjectedScript.js:
  75839. (injectedScriptConstructor):
  75840. 2010-07-21 Alexey Proskuryakov <ap@apple.com>
  75841. Unreviewed Windows build fix.
  75842. https://bugs.webkit.org/show_bug.cgi?id=42717
  75843. <rdar://problem/7062824> A wrong password entered for site or proxy auth remains in WebCore
  75844. credential storage, and is sent with subsequent requests
  75845. * platform/network/cf/ResourceHandleCFNet.cpp:
  75846. (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Don't use that direct a
  75847. copy/paste, oops!
  75848. 2010-07-21 Simon Fraser <simon.fraser@apple.com>
  75849. Reviewed by Darin Adler.
  75850. When GraphicsLayer::contentsOrientation() is CompositingCoordinatesBottomUp, need to flip repaint rects
  75851. https://bugs.webkit.org/show_bug.cgi?id=42662
  75852. If the contentsOrientation() on a GraphicsLayer is CompositingCoordinatesBottomUp, then we
  75853. need to flip the rects passed to setNeedsDisplayInRect:.
  75854. Avoid writing this code twice by making a bare function to share code
  75855. between WebLayer and WebTiledLayer. Convert the existing +drawContents:ofLayer:intoContext:
  75856. class method into a bare function, because the Obj-C calling overhead doesn't buy us anything.
  75857. Take out an assertion in GraphicsLayerCA::updateContentsTransform() that is not
  75858. correct.
  75859. No new tests because no layers use bottom-up contents at present.
  75860. * platform/graphics/mac/GraphicsLayerCA.mm:
  75861. (WebCore::GraphicsLayerCA::updateContentsTransform):
  75862. * platform/graphics/mac/WebLayer.h:
  75863. * platform/graphics/mac/WebLayer.mm:
  75864. (drawLayerContents):
  75865. (setLayerNeedsDisplayInRect):
  75866. (-[WebLayer setNeedsDisplayInRect:]):
  75867. (-[WebLayer drawInContext:]):
  75868. * platform/graphics/mac/WebTiledLayer.mm:
  75869. (-[WebTiledLayer setNeedsDisplayInRect:]):
  75870. (-[WebTiledLayer drawInContext:]):
  75871. 2010-07-20 Alexey Proskuryakov <ap@apple.com>
  75872. Reviewed by Darin Adler.
  75873. https://bugs.webkit.org/show_bug.cgi?id=42717
  75874. <rdar://problem/7062824> A wrong password entered for site or proxy auth remains in WebCore
  75875. credential storage, and is sent with subsequent requests
  75876. Tests: http/tests/security/401-logout/401-logout.php
  75877. http/tests/xmlhttprequest/remember-bad-password.html
  75878. * platform/network/CredentialStorage.cpp: (WebCore::CredentialStorage::remove):
  75879. * platform/network/CredentialStorage.h:
  75880. Added a way to remove stored credentials for a given protection space.
  75881. * platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
  75882. * platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
  75883. Remove stored credentials if they didn't work the first time.
  75884. 2010-07-20 Steve Falkenburg <sfalken@apple.com>
  75885. Reviewed by Adam Roben.
  75886. WebKit on Windows should build optionally with an unversioned ICU DLL
  75887. https://bugs.webkit.org/show_bug.cgi?id=42722
  75888. <rdar://problem/8211767> WebKit needs to link against unversioned ICU
  75889. To get the proper value for U_DISABLE_RENAMING into all source files, we force
  75890. the include of ICUVersion.h (our generated header) via the compiler options.
  75891. * WebCore.vcproj/WebCore.vcproj:
  75892. Add forced include of ICUVersion.h.
  75893. * WebCore.vcproj/WebCoreCommon.vsprops: Add forced include of ICUVersion.h.
  75894. 2010-07-21 Ilya Tikhonovsky <loislo@chromium.org>
  75895. Reviewed by Pavel Feldman.
  75896. WebInspector: Serialization to JSON in InspectorValue works incorrect
  75897. if comma is assigned as decimal separator. Windows with Russian locale.
  75898. https://bugs.webkit.org/show_bug.cgi?id=42755
  75899. * inspector/InspectorValues.cpp:
  75900. (WebCore::InspectorBasicValue::writeJSON):
  75901. 2010-07-20 Simon Fraser <simon.fraser@apple.com>
  75902. Reviewed by Dan Bernstein.
  75903. CSS rotation transform can cause elements with certain styles to vanish during rotation.
  75904. https://bugs.webkit.org/show_bug.cgi?id=42579
  75905. Remove some untested, broken code that, as far as I can tell, could never get hit.
  75906. Use the correct rect for the PaintInfo so that zero-sized elements with overflow:hidden
  75907. but a border paint correctly.
  75908. Test: compositing/overflow/zero-size-overflow.html
  75909. * rendering/RenderLayerBacking.cpp:
  75910. (WebCore::RenderLayerBacking::paintIntoLayer):
  75911. 2010-07-21 Mahesh Kulkarni <mahesh.kulkarni@nokia.com>
  75912. Reviewed by Laszlo Gombos.
  75913. [QT] Leak and few more fixes to qt port of geolocation
  75914. https://bugs.webkit.org/show_bug.cgi?id=42753
  75915. Fixes memory leak and default values set to attributes.
  75916. Memory leak fix no new test case added.
  75917. * platform/qt/GeolocationServiceQt.cpp: Added.
  75918. (WebCore::GeolocationServiceQt::~GeolocationServiceQt):
  75919. (WebCore::GeolocationServiceQt::positionUpdated):
  75920. 2010-07-21 Kristian Amlie <kristian.amlie@nokia.com>
  75921. Reviewed by Kenneth Rohde Christiansen.
  75922. Added automatic sqlite extraction for Symbian to QtWebKit.
  75923. Also added sqlite detection in case sqlite is not present in the SDK.
  75924. This is possible if WebKit is compiled standalone.
  75925. The inclusion part is a consequence of commit c578c6c1d6d in the Qt
  75926. repository. It will not work on Qt versions < 4.7.1, but that is ok,
  75927. since the only build system it will affect is marked as experimental
  75928. in the whole 4.7 series.
  75929. * WebCore.pro:
  75930. 2010-07-21 Adam Barth <abarth@webkit.org>
  75931. Reviewed by Eric Seidel.
  75932. Associate elements with the active form
  75933. https://bugs.webkit.org/show_bug.cgi?id=42728
  75934. This patch fixes fast/forms/formmove3.html. The test still doesn't
  75935. pass due to some render tree differences, but it works as intended now.
  75936. To fix this test, I needed to deviate from the spec slight. Minefield
  75937. seems to have the same deviation:
  75938. - http://www.w3.org/Bugs/Public/show_bug.cgi?id=10216
  75939. * html/HTMLConstructionSite.cpp:
  75940. (WebCore::HTMLConstructionSite::takeForm):
  75941. (WebCore::HTMLConstructionSite::setForm):
  75942. (WebCore::HTMLConstructionSite::createHTMLElement):
  75943. * html/HTMLConstructionSite.h:
  75944. (WebCore::HTMLConstructionSite::form):
  75945. * html/HTMLTreeBuilder.cpp:
  75946. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  75947. 2010-07-21 Adam Barth <abarth@webkit.org>
  75948. Reviewed by Eric Seidel.
  75949. The adoption agency doesn't properly attach()
  75950. https://bugs.webkit.org/show_bug.cgi?id=42727
  75951. The adoption agency is transliterated rather directly from the spec,
  75952. but it misses some of the WebKit-specific machinations, such as
  75953. attaching to the render tree.
  75954. The algorithm, as written, is a minor layer violation. I've added to
  75955. the problem by calling attach() from HTMLTreeBuilder (even though
  75956. that's the job of the HTMLConstructionSite). We'll need to clean up
  75957. the layering a bit at some point.
  75958. This patch half fixes fast/forms/formmove3.html. Hopefully I'll finish
  75959. fixing it in the next patch.
  75960. * html/HTMLConstructionSite.cpp:
  75961. (WebCore::HTMLConstructionSite::createHTMLElementFromSavedElement):
  75962. * html/HTMLTreeBuilder.cpp:
  75963. (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
  75964. 2010-07-21 Adam Barth <abarth@webkit.org>
  75965. Reviewed by Eric Seidel.
  75966. <input> elements with no type attribute should be foster parented
  75967. https://bugs.webkit.org/show_bug.cgi?id=42725
  75968. Fix spec transcription error.
  75969. * html/HTMLTreeBuilder.cpp:
  75970. (WebCore::HTMLTreeBuilder::processStartTagForInTable):
  75971. 2010-07-21 Adam Barth <abarth@webkit.org>
  75972. Reviewed by Eric Seidel.
  75973. Fix fast/css/last-child-style-sharing.html
  75974. https://bugs.webkit.org/show_bug.cgi?id=42731
  75975. Prior to this patch, we weren't calling finishParsingChildren on the
  75976. body element. We need a more systematic way of catching these bugs.
  75977. * html/HTMLElementStack.cpp:
  75978. (WebCore::HTMLElementStack::popAll):
  75979. * html/HTMLElementStack.h:
  75980. * html/HTMLTreeBuilder.cpp:
  75981. (WebCore::HTMLTreeBuilder::processEndOfFile):
  75982. 2010-07-21 Hans Wennborg <hans@chromium.org>
  75983. Reviewed by Steve Block.
  75984. Runtime feature switch for device orientation
  75985. https://bugs.webkit.org/show_bug.cgi?id=42265
  75986. Add a runtime feature switch that decides whether device orientation
  75987. events are available or not. Defaults to true.
  75988. * WebCore.vcproj/WebCoreCommon.vsprops: Add bindings/generic to include path.
  75989. * bindings/generic/RuntimeEnabledFeatures.cpp:
  75990. * bindings/generic/RuntimeEnabledFeatures.h:
  75991. (WebCore::RuntimeEnabledFeatures::setDeviceOrientationEnabled):
  75992. (WebCore::RuntimeEnabledFeatures::deviceOrientationEnabled):
  75993. (WebCore::RuntimeEnabledFeatures::deviceOrientationEventEnabled):
  75994. (WebCore::RuntimeEnabledFeatures::ondeviceorientationEnabled):
  75995. * page/DOMWindow.cpp:
  75996. (WebCore::DOMWindow::addEventListener):
  75997. (WebCore::DOMWindow::removeEventListener):
  75998. (WebCore::DOMWindow::removeAllEventListeners):
  75999. * page/DOMWindow.idl:
  76000. * page/Page.cpp:
  76001. (WebCore::Page::Page):
  76002. 2010-07-21 Zoltan Herczeg <zherczeg@webkit.org>
  76003. Reviewed Nikolas Zimmermann.
  76004. SVGFilterElement & SVGFE*Element don't support dynamic invalidation, when attributes change
  76005. https://bugs.webkit.org/show_bug.cgi?id=42244
  76006. The implementation was done by Nikolas Zimmermann before, but
  76007. there was no tests for it. The patch also implements the simple
  76008. setFilterRes method.
  76009. Tests: svg/dynamic-updates/SVGFilterElement-dom-filterRes-attr.html
  76010. svg/dynamic-updates/SVGFilterElement-dom-filterUnits-attr.html
  76011. svg/dynamic-updates/SVGFilterElement-dom-height-attr.html
  76012. svg/dynamic-updates/SVGFilterElement-dom-primitiveUnits-attr.html
  76013. svg/dynamic-updates/SVGFilterElement-dom-width-attr.html
  76014. svg/dynamic-updates/SVGFilterElement-dom-x-attr.html
  76015. svg/dynamic-updates/SVGFilterElement-dom-y-attr.html
  76016. svg/dynamic-updates/SVGFilterElement-svgdom-filterRes-call.html
  76017. svg/dynamic-updates/SVGFilterElement-svgdom-filterResX-prop.html
  76018. svg/dynamic-updates/SVGFilterElement-svgdom-filterResY-prop.html
  76019. svg/dynamic-updates/SVGFilterElement-svgdom-filterUnits-prop.html
  76020. svg/dynamic-updates/SVGFilterElement-svgdom-height-prop.html
  76021. svg/dynamic-updates/SVGFilterElement-svgdom-primitiveUnits-prop.html
  76022. svg/dynamic-updates/SVGFilterElement-svgdom-width-prop.html
  76023. svg/dynamic-updates/SVGFilterElement-svgdom-x-prop.html
  76024. svg/dynamic-updates/SVGFilterElement-svgdom-y-prop.html
  76025. * svg/SVGFilterElement.cpp:
  76026. (WebCore::SVGFilterElement::setFilterRes):
  76027. (WebCore::SVGFilterElement::svgAttributeChanged):
  76028. (WebCore::SVGFilterElement::childrenChanged):
  76029. * svg/SVGFilterElement.h:
  76030. 2010-07-21 Ben Murdoch <benm@google.com>
  76031. Unreviewed, build fix.
  76032. Forgot to update the role of HitTestRequest.h in
  76033. the Xcode project after landing patch from
  76034. https://bugs.webkit.org/show_bug.cgi?id=39493
  76035. * WebCore.xcodeproj/project.pbxproj: Make HitTestRequest.h
  76036. private so it can be included in WebKit by EventHandler.h
  76037. which is already private..
  76038. 2010-07-20 Ben Murdoch <benm@google.com>
  76039. Reviewed by Steve Block.
  76040. Touch events do not affect the :active CSS state
  76041. https://bugs.webkit.org/show_bug.cgi?id=39493
  76042. Test: fast/events/touch/touch-active-state.html
  76043. * WebCore.exp.in: Update exports for new signature of
  76044. hitTestResultAtPoint.
  76045. * WebCore.order: ditto.
  76046. * page/EventHandler.cpp:
  76047. (WebCore::EventHandler::EventHandler):
  76048. (WebCore::EventHandler::hitTestResultAtPoint): Pass the type
  76049. of the hit test to perform as a parameter with a default
  76050. value rather than harcoding it in the function body.
  76051. (WebCore::EventHandler::handleMouseMoveEvent): Do not modiify
  76052. the active element during a mouse move if the user is
  76053. touching the screen.
  76054. (WebCore::EventHandler::handleTouchEvent): Set the correct
  76055. type of hit test to perform depending on the type of the
  76056. touch event we are handling.
  76057. * page/EventHandler.h: Update the signature of hitTestResultAtPoint.
  76058. 2010-07-20 Yury Semikhatsky <yurys@chromium.org>
  76059. Reviewed by Pavel Feldman.
  76060. console.assert should include stack trace with line numbers.
  76061. https://bugs.webkit.org/show_bug.cgi?id=22556
  76062. Test: inspector/console-assert.html
  76063. * bindings/v8/ScriptCallStack.cpp:
  76064. (WebCore::getTopFrameLocation):
  76065. (WebCore::toScriptCallFramesVector):
  76066. (WebCore::ScriptCallStack::create):
  76067. (WebCore::ScriptCallStack::ScriptCallStack):
  76068. * bindings/v8/ScriptCallStack.h:
  76069. * bindings/v8/ScriptController.cpp:
  76070. (WebCore::ScriptController::setCaptureCallStackForUncaughtExceptions):
  76071. * bindings/v8/custom/V8ConsoleCustom.cpp:
  76072. (WebCore::V8Console::traceCallback):
  76073. (WebCore::V8Console::assertCallback):
  76074. * inspector/ConsoleMessage.cpp:
  76075. (WebCore::ConsoleMessage::ConsoleMessage):
  76076. * inspector/InspectorController.cpp:
  76077. (WebCore::InspectorController::addMessageToConsole):
  76078. * inspector/front-end/ConsoleView.js:
  76079. (WebInspector.ConsoleMessage.prototype._formatMessage):
  76080. (WebInspector.ConsoleMessage.prototype.toMessageElement):
  76081. * page/Console.cpp:
  76082. (WebCore::Console::lastWMLErrorMessage):
  76083. * page/Console.idl:
  76084. 2010-07-20 Rafael Antognolli <antognolli@profusion.mobi>
  76085. Reviewed by Kent Tamura.
  76086. [EFL] Use log functions instead of fprintf
  76087. https://bugs.webkit.org/show_bug.cgi?id=42576
  76088. Use LOG and LOG_ERROR instead of fprintf.
  76089. No new tests, no new functionality.
  76090. * platform/efl/WidgetEfl.cpp:
  76091. (WebCore::Widget::applyFallbackCursor):
  76092. 2010-07-20 Ilya Tikhonovsky <loislo@chromium.org>
  76093. Reviewed by Yury Semikhatsky.
  76094. WebInspector: the bindings generation helper script can be
  76095. simplified a bit. Chromium.
  76096. https://bugs.webkit.org/show_bug.cgi?id=42523
  76097. * WebCore.gyp/WebCore.gyp:
  76098. * WebCore.gyp/scripts/rule_binding.py:
  76099. * bindings/scripts/CodeGenerator.pm:
  76100. * bindings/scripts/CodeGeneratorCPP.pm:
  76101. * bindings/scripts/CodeGeneratorJS.pm:
  76102. * bindings/scripts/CodeGeneratorObjC.pm:
  76103. * bindings/scripts/CodeGeneratorV8.pm:
  76104. * bindings/scripts/generate-bindings.pl:
  76105. * inspector/CodeGeneratorInspector.pm:
  76106. 2010-07-20 Steve Falkenburg <sfalken@apple.com>
  76107. Re-save vsprops file after no-op edit in Visual Studio
  76108. to fix manual edit issues.
  76109. * WebCore.vcproj/WebCoreCommon.vsprops:
  76110. 2010-07-20 Steve Falkenburg <sfalken@apple.com>
  76111. Re-save vcproj file after no-op edit in Visual Studio
  76112. to fix manual edit issues.
  76113. * WebCore.vcproj/WebCore.vcproj:
  76114. 2010-07-20 Adam Barth <abarth@webkit.org>
  76115. Reviewed by Eric Seidel.
  76116. Include attributes when reconstructing elements in HTML5 tree builder
  76117. https://bugs.webkit.org/show_bug.cgi?id=42594
  76118. Remove FIXME now that we have a test.
  76119. * html/HTMLConstructionSite.cpp:
  76120. (WebCore::HTMLConstructionSite::createHTMLElementFromElementRecord):
  76121. 2010-07-20 Sam Weinig <sam@webkit.org>
  76122. Reviewed by Brady Eidson.
  76123. Patch for https://bugs.webkit.org/show_bug.cgi?id=42719
  76124. Make Acid2 pass in WebKit2
  76125. * WebCore.exp.in: Update exported functions.
  76126. 2010-07-20 Gavin Peters <gavinp@chromium.org>
  76127. Reviewed by Adam Barth.
  76128. prefetch categorization is exactly wrong
  76129. https://bugs.webkit.org/show_bug.cgi?id=42651
  76130. While I was in the area, I saw that CachedResource::schedule() was dead, so I have removed it.
  76131. Test: fast/dom/HTMLLinkElement/onload-completion-test.html
  76132. * loader/CachedCSSStyleSheet.h:
  76133. * loader/CachedFont.h:
  76134. * loader/CachedImage.h:
  76135. * loader/CachedResource.cpp:
  76136. * loader/CachedResource.h:
  76137. (WebCore::CachedResource::isPrefetch):
  76138. * loader/CachedScript.h:
  76139. * loader/CachedXBLDocument.h:
  76140. * loader/CachedXSLStyleSheet.h:
  76141. 2010-07-20 James Hawkins <jhawkins@chromium.org>
  76142. Reviewed by Darin Fisher.
  76143. Expose the form submission trigger on the HTMLFormElement object. This
  76144. is used to verify that the user submitted the form instead of JS when
  76145. saving form data in Chrome AutoFill.
  76146. https://bugs.webkit.org/show_bug.cgi?id=42479
  76147. No new tests as this is only used by the Chromium WebKit API.
  76148. * html/HTMLFormElement.cpp:
  76149. (WebCore::HTMLFormElement::HTMLFormElement):
  76150. (WebCore::HTMLFormElement::submit):
  76151. (WebCore::HTMLFormElement::reset):
  76152. (WebCore::HTMLFormElement::submissionTrigger):
  76153. * html/HTMLFormElement.h:
  76154. 2010-07-20 Adam Barth <abarth@webkit.org>
  76155. Unreviewed.
  76156. Fix fast/dom/title-content-write-set.html for HTML5 tree builder
  76157. https://bugs.webkit.org/show_bug.cgi?id=42668
  76158. Address some late-breaking review comments.
  76159. * dom/CharacterData.cpp:
  76160. (WebCore::CharacterData::appendDataCommon):
  76161. (WebCore::CharacterData::parserAppendData):
  76162. (WebCore::CharacterData::appendData):
  76163. (WebCore::CharacterData::insertData):
  76164. (WebCore::CharacterData::replaceData):
  76165. * dom/CharacterData.h:
  76166. 2010-07-20 Daniel Erat <derat@chromium.org>
  76167. Reviewed by Ojan Vafai.
  76168. Subpixel rendering always disabled for Chromium Linux
  76169. https://bugs.webkit.org/show_bug.cgi?id=42220
  76170. Explicitly initialize global Chromium Linux isSkiaSubpixelGlyphs
  76171. flag to false for clarity.
  76172. * platform/graphics/chromium/FontPlatformDataLinux.cpp:
  76173. 2010-07-20 Adam Barth <abarth@webkit.org>
  76174. Reviewed by Darin Adler.
  76175. Fix fast/dom/title-content-write-set.html for HTML5 tree builder
  76176. https://bugs.webkit.org/show_bug.cgi?id=42668
  76177. When I split parserAppendData from appendData, it was tempting to cut
  76178. the function at dispatchModifiedEvent, but that's not quite right. We
  76179. still need to notify the parent that it's children have changed.
  76180. * dom/CharacterData.cpp:
  76181. (WebCore::CharacterData::appendDataCommon):
  76182. (WebCore::CharacterData::parserAppendData):
  76183. (WebCore::CharacterData::appendData):
  76184. * dom/CharacterData.h:
  76185. 2010-07-20 Chris Fleizach <cfleizach@apple.com>
  76186. Reviewed by Beth Dakin.
  76187. CrashTracer: [USER] 300 crashes in Safari at com.apple.WebCore: WebCore::AccessibilityTable::isTableExposableThroughAccessibility + 573
  76188. https://bugs.webkit.org/show_bug.cgi?id=42652
  76189. When a table cell accesses its parent table, we should not use getOrCreate, because creating an AXTable inspects its render tree state
  76190. which may be out of date, leading to a crash.
  76191. By using only get(), it implies that the AXTable must be created before AXTableCells. This should
  76192. always be the case when AT clients access a table.
  76193. Test: accessibility/updating-attribute-in-table-causes-crash.html
  76194. * accessibility/AccessibilityTableCell.cpp:
  76195. (WebCore::AccessibilityTableCell::parentTable):
  76196. 2010-07-20 Abhishek Arya <inferno@chromium.org>
  76197. Reviewed by David Hyatt.
  76198. Check the node is a text node before doing the static cast
  76199. for editing commands.
  76200. https://bugs.webkit.org/show_bug.cgi?id=42655
  76201. Test: editing/execCommand/editing-nontext-node-crash.xhtml
  76202. * editing/DeleteSelectionCommand.cpp:
  76203. (WebCore::DeleteSelectionCommand::fixupWhitespace):
  76204. * editing/InsertLineBreakCommand.cpp:
  76205. (WebCore::InsertLineBreakCommand::doApply):
  76206. * editing/InsertParagraphSeparatorCommand.cpp:
  76207. (WebCore::InsertParagraphSeparatorCommand::doApply):
  76208. 2010-07-20 Leo Yang <leo.yang@torchmobile.com.cn>
  76209. Reviewed by David Hyatt.
  76210. Don't merge Anonymous block whose first child is inline run-in.
  76211. Make run-in recalculate its style after its renderer is destroyed.
  76212. https://bugs.webkit.org/show_bug.cgi?id=41375.
  76213. Test: fast/runin/crash-when-reparent-sibling.html
  76214. * rendering/RenderBlock.cpp:
  76215. (WebCore::canMergeContiguousAnonymousBlocks):
  76216. * rendering/RenderObjectChildList.cpp:
  76217. (WebCore::RenderObjectChildList::destroyLeftoverChildren):
  76218. 2010-07-20 Steve Block <steveblock@google.com>
  76219. Unreviewed Qt test fix.
  76220. Qt should not use PREEMPT_GEOLOCATION_PERMISSION until Bug 42027 is fixed.
  76221. https://bugs.webkit.org/show_bug.cgi?id=42068
  76222. No new tests, test fix only.
  76223. * WebCore.pro:
  76224. 2010-07-20 Sheriff Bot <webkit.review.bot@gmail.com>
  76225. Unreviewed, rolling out r63764.
  76226. http://trac.webkit.org/changeset/63764
  76227. https://bugs.webkit.org/show_bug.cgi?id=42658
  76228. have broken Chromium linux build (Requested by loislo on
  76229. #webkit).
  76230. * WebCore.gyp/WebCore.gyp:
  76231. * WebCore.gyp/scripts/rule_binding.py:
  76232. * bindings/scripts/CodeGenerator.pm:
  76233. * bindings/scripts/CodeGeneratorCPP.pm:
  76234. * bindings/scripts/CodeGeneratorJS.pm:
  76235. * bindings/scripts/CodeGeneratorObjC.pm:
  76236. * bindings/scripts/CodeGeneratorV8.pm:
  76237. * bindings/scripts/generate-bindings.pl:
  76238. * inspector/CodeGeneratorInspector.pm:
  76239. 2010-07-20 Alexey Proskuryakov <ap@apple.com>
  76240. Reviewed by Brady Eidson.
  76241. https://bugs.webkit.org/show_bug.cgi?id=41531
  76242. Asynchronous cross origin XMLHttpRequest doesn't expose 401 response when withCredentials is false
  76243. This doesn't match Firefox, but it matches our sync case, XHR2 spec and common sense.
  76244. Test: http/tests/xmlhttprequest/cross-origin-no-authorization.html (updated results).
  76245. * loader/DocumentThreadableLoader.cpp:
  76246. (WebCore::DocumentThreadableLoader::didReceiveAuthenticationChallenge): Instead of canceling
  76247. the request, continue without credentials - if the platform has a necessary method on
  76248. ResourceHandle.
  76249. * loader/SubresourceLoader.cpp:
  76250. (WebCore::SubresourceLoader::didReceiveAuthenticationChallenge): Don't ask resource loader
  76251. client for credentials if subresource loader client already took care of those.
  76252. * platform/network/ResourceHandle.cpp: (WebCore::ResourceHandle::hasAuthenticationChallenge):
  76253. * platform/network/ResourceHandle.h:
  76254. Added an accessor to check whether ResourceHandle is currently waiting for credentials.
  76255. 2010-07-20 Leandro Pereira <leandro@profusion.mobi>
  76256. [EFL] Unreviewed build fix.
  76257. Build SVGPathBuilder, SVGPathParser and SVGPathSegListBuilder.
  76258. Add websockets include directory.
  76259. The EFL port doesn't yet support automated tests.
  76260. * CMakeLists.txt:
  76261. 2010-07-20 Ilya Tikhonovsky <loislo@chromium.org>
  76262. Reviewed by Yury Semikhatsky.
  76263. WebInspector: the bindings generation helper script can be
  76264. simplified a bit. Chromium.
  76265. https://bugs.webkit.org/show_bug.cgi?id=42523
  76266. * WebCore.gyp/WebCore.gyp:
  76267. * WebCore.gyp/scripts/rule_binding.py:
  76268. * bindings/scripts/CodeGenerator.pm:
  76269. * bindings/scripts/CodeGeneratorCPP.pm:
  76270. * bindings/scripts/CodeGeneratorJS.pm:
  76271. * bindings/scripts/CodeGeneratorObjC.pm:
  76272. * bindings/scripts/CodeGeneratorV8.pm:
  76273. * bindings/scripts/generate-bindings.pl:
  76274. * inspector/CodeGeneratorInspector.pm:
  76275. 2010-07-20 Joseph Pecoraro <joepeck@webkit.org>
  76276. Reviewed by Geoffrey Garen.
  76277. WebScriptObject Should Allow Safely Checking For Key Existence
  76278. https://bugs.webkit.org/show_bug.cgi?id=42613
  76279. Test: platform/mac/fast/objc/webScriptObject-hasWebScriptKey.html
  76280. Add private API "hasWebScriptKey" to check for key existence in
  76281. a WebScriptObject. Like JavaScript's `in` syntax. This is intended
  76282. to be made public eventually.
  76283. * bindings/objc/WebScriptObject.mm:
  76284. (-[WebScriptObject hasWebScriptKey:]):
  76285. * bindings/objc/WebScriptObjectPrivate.h:
  76286. 2010-07-20 Adam Barth <abarth@webkit.org>
  76287. Reviewed by Eric Seidel.
  76288. HTML5 tree builder needs to call dispatchDocumentElementAvailable
  76289. https://bugs.webkit.org/show_bug.cgi?id=42654
  76290. This patch fixes the follout LayoutTests with --html5-treebuilder:
  76291. - userscripts/script-not-run-for-fragments.html
  76292. - userscripts/script-run-at-start.html
  76293. * html/HTMLConstructionSite.cpp:
  76294. (WebCore::HTMLConstructionSite::HTMLConstructionSite):
  76295. (WebCore::HTMLConstructionSite::dispatchDocumentElementAvailableIfNeeded):
  76296. (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML):
  76297. (WebCore::HTMLConstructionSite::insertHTMLHtmlElement):
  76298. * html/HTMLConstructionSite.h:
  76299. * html/HTMLTreeBuilder.cpp:
  76300. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  76301. 2010-07-20 Mahesh Kulkarni <mahesh.kulkarni@nokia.com>
  76302. Reviewed by Steve Block.
  76303. Need to be able to configure Geolocation policy regarding user permissions
  76304. https://bugs.webkit.org/show_bug.cgi?id=42068
  76305. Introducing new USE() flag PREEMPT_GEOLOCATION_PREMISSION using which
  76306. acquires user permission first before starting location service
  76307. This change does not introduce any change in behavior for any platform. So there are no new tests
  76308. added.
  76309. * WebCore.pro:
  76310. * page/Geolocation.cpp:
  76311. (WebCore::Geolocation::startRequest):
  76312. (WebCore::Geolocation::setIsAllowed):
  76313. (WebCore::Geolocation::startUpdating):
  76314. * page/Geolocation.h:
  76315. 2010-07-20 Adam Barth <abarth@webkit.org>
  76316. Reviewed by Darin Adler.
  76317. HTML5 tree builder should restore form state
  76318. https://bugs.webkit.org/show_bug.cgi?id=42644
  76319. We need to tell self-closing tags that we're done parsing their
  76320. children. This patch fixes the following LayoutTests when run with
  76321. --html5-treebuilder:
  76322. fast/forms/button-state-restore.html
  76323. fast/forms/state-restore-to-non-autocomplete-form.html
  76324. fast/forms/state-restore-to-non-edited-controls.html
  76325. fast/history/saves-state-after-fragment-nav.html
  76326. http/tests/navigation/restore-form-state-https.html
  76327. * html/HTMLConstructionSite.cpp:
  76328. (WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement):
  76329. 2010-07-20 Sheriff Bot <webkit.review.bot@gmail.com>
  76330. Unreviewed, rolling out r63750.
  76331. http://trac.webkit.org/changeset/63750
  76332. https://bugs.webkit.org/show_bug.cgi?id=42648
  76333. This revision breaks the windows builds (Requested by
  76334. hwennborg on #webkit).
  76335. * bindings/generic/RuntimeEnabledFeatures.cpp:
  76336. * bindings/generic/RuntimeEnabledFeatures.h:
  76337. * page/DOMWindow.cpp:
  76338. (WebCore::DOMWindow::addEventListener):
  76339. (WebCore::DOMWindow::removeEventListener):
  76340. (WebCore::DOMWindow::removeAllEventListeners):
  76341. * page/DOMWindow.idl:
  76342. * page/Page.cpp:
  76343. (WebCore::Page::Page):
  76344. 2010-07-20 Ilya Tikhonovsky <loislo@chromium.org>
  76345. Reviewed by Pavel Feldman.
  76346. WebInspector: It is possible to show full call stack instead of top frame for Caller
  76347. and Call Site properties in Timeline panel.
  76348. https://bugs.webkit.org/show_bug.cgi?id=42620
  76349. * English.lproj/localizedStrings.js:
  76350. * inspector/front-end/TimelinePanel.js:
  76351. (WebInspector.TimelinePanel.FormattedRecord):
  76352. (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
  76353. (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
  76354. (WebInspector.TimelinePanel.PopupContentHelper.prototype._appendElementRow):
  76355. (WebInspector.TimelinePanel.PopupContentHelper.prototype._appendLinkRow):
  76356. (WebInspector.TimelinePanel.PopupContentHelper.prototype._appendStackTrace):
  76357. * inspector/front-end/inspector.css:
  76358. (.timeline-details):
  76359. (.timeline-function-name):
  76360. (.timeline-stacktrace-title):
  76361. 2010-07-20 Leon Clarke <leonclarke@google.com>
  76362. Reviewed by Pavel Feldman.
  76363. Make things compile again when the inspector is disabled, following
  76364. recent inspector improvements.
  76365. https://bugs.webkit.org/show_bug.cgi?id=42632
  76366. No new tests. Fixing a build break.
  76367. * bindings/v8/ScriptCallStack.cpp:
  76368. (WebCore::ScriptCallStack::stackTrace):
  76369. * inspector/InspectorController.h:
  76370. (WebCore::InspectorController::didInsertDOMNode):
  76371. (WebCore::InspectorController::didRemoveDOMNode):
  76372. (WebCore::InspectorController::didModifyDOMAttr):
  76373. * inspector/InspectorDOMAgent.h:
  76374. * loader/appcache/ApplicationCacheGroup.cpp:
  76375. 2010-07-20 Anton Muhin <antonm@chromium.org>
  76376. Reviewed by Adam Barth.
  76377. [v8] Allow handles to be disposed and WebKit objects to be dereferenced even if their map is already destroyed.
  76378. https://bugs.webkit.org/show_bug.cgi?id=42634
  76379. Currently DOMDataStore could be destroyed even if it has some mappings (it gets destroyed
  76380. when its isolated context gets GCed). However in this case, handles allocated for
  76381. such objects would never be disposed as we require presence of mapping from wrapped
  76382. WebKit object to handle being collected in the map and now map is gone. That leads to
  76383. zombie objects in both WebKit (wrapped WebKit object doesn't get dereferenced) and V8
  76384. (both handle and V8 wrapper object could not be destroyed).
  76385. See http://code.google.com/p/chromium/issues/detail?id=47125 for further discussion.
  76386. * bindings/v8/DOMData.h:
  76387. (WebCore::DOMData::handleWeakObject):
  76388. * bindings/v8/DOMDataStore.cpp:
  76389. (WebCore::DOMDataStore::weakNodeCallback):
  76390. * bindings/v8/V8DOMMap.h:
  76391. (WebCore::WeakReferenceMap::~WeakReferenceMap):
  76392. 2010-07-20 Hans Wennborg <hans@chromium.org>
  76393. Reviewed by Steve Block.
  76394. Runtime feature switch for device orientation
  76395. https://bugs.webkit.org/show_bug.cgi?id=42265
  76396. Add a runtime feature switch that decides whether device orientation
  76397. events are available or not. Defaults to true.
  76398. * bindings/generic/RuntimeEnabledFeatures.cpp:
  76399. * bindings/generic/RuntimeEnabledFeatures.h:
  76400. (WebCore::RuntimeEnabledFeatures::setDeviceOrientationEnabled):
  76401. (WebCore::RuntimeEnabledFeatures::deviceOrientationEnabled):
  76402. (WebCore::RuntimeEnabledFeatures::deviceOrientationEventEnabled):
  76403. (WebCore::RuntimeEnabledFeatures::ondeviceorientationEnabled):
  76404. * page/DOMWindow.cpp:
  76405. (WebCore::DOMWindow::addEventListener):
  76406. (WebCore::DOMWindow::removeEventListener):
  76407. (WebCore::DOMWindow::removeAllEventListeners):
  76408. * page/DOMWindow.idl:
  76409. * page/Page.cpp:
  76410. (WebCore::Page::Page):
  76411. 2010-07-20 Hayato Ito <hayato@chromium.org>
  76412. Reviewed by Darin Adler.
  76413. Fixed a crash when deeply nested CSS selector is used.
  76414. https://bugs.webkit.org/show_bug.cgi?id=41129
  76415. This patch deletes CSSSelectors iteratively so that it doesn't cause stack overflow.
  76416. Test: fast/css/css-selector-deeply-nested.html
  76417. * css/CSSSelector.cpp:
  76418. (WebCore::CSSSelectorBag::~CSSSelectorBag):
  76419. (WebCore::CSSSelectorBag::isEmpty):
  76420. (WebCore::CSSSelectorBag::append):
  76421. (WebCore::CSSSelectorBag::takeAny):
  76422. (WebCore::CSSSelector::~CSSSelector):
  76423. (WebCore::CSSSelector::specificity):
  76424. * css/CSSSelector.h:
  76425. 2010-07-20 Yury Semikhatsky <yurys@chromium.org>
  76426. Reviewed by Pavel Feldman.
  76427. [v8] Web Inspector: inspected page renderer crashes when inspected page has JS syntax error
  76428. https://bugs.webkit.org/show_bug.cgi?id=42642
  76429. * bindings/v8/V8ConsoleMessage.cpp:
  76430. (WebCore::V8ConsoleMessage::handler):
  76431. 2010-07-20 Sheriff Bot <webkit.review.bot@gmail.com>
  76432. Unreviewed, rolling out r63742.
  76433. http://trac.webkit.org/changeset/63742
  76434. https://bugs.webkit.org/show_bug.cgi?id=42641
  76435. Broke Leopard Intel build. (Requested by bbandix on #webkit).
  76436. * WebCore.pro:
  76437. * page/Geolocation.cpp:
  76438. (WebCore::Geolocation::startRequest):
  76439. (WebCore::Geolocation::setIsAllowed):
  76440. (WebCore::Geolocation::startUpdating):
  76441. * page/Geolocation.h:
  76442. 2010-07-20 Adam Roben <aroben@apple.com>
  76443. Windows build fix
  76444. * WebCore.vcproj/WebCore.vcproj: Fixed case of "Name" attribute.
  76445. 2010-07-20 Mahesh Kulkarni <mahesh.kulkarni@nokia.com>
  76446. Reviewed by Steve Block.
  76447. Need to be able to configure Geolocation policy regarding user permissions
  76448. https://bugs.webkit.org/show_bug.cgi?id=42068
  76449. Introducing new USE() flag PREEMPT_GEOLOCATION_PREMISSION using which
  76450. acquires user permission first before starting location service
  76451. This change does not introduce any change in behavior for any platform. So there are no new tests
  76452. added.
  76453. * WebCore.pro:
  76454. * page/Geolocation.cpp:
  76455. (WebCore::Geolocation::startRequest):
  76456. (WebCore::Geolocation::setIsAllowed):
  76457. (WebCore::Geolocation::startUpdating):
  76458. * page/Geolocation.h:
  76459. 2010-07-20 Alexander Pavlov <apavlov@chromium.org>
  76460. Reviewed by Pavel Feldman.
  76461. Inspector: Resources Search Should Search Only Filtered Resources
  76462. https://bugs.webkit.org/show_bug.cgi?id=28290
  76463. * inspector/front-end/AbstractTimelinePanel.js:
  76464. (WebInspector.AbstractTimelinePanel.prototype._updateFilter):
  76465. * inspector/front-end/ResourcesPanel.js:
  76466. (WebInspector.ResourcesPanel.prototype.get searchableViews):
  76467. * inspector/front-end/inspector.js:
  76468. (WebInspector.performSearch):
  76469. (WebInspector.doPerformSearch):
  76470. 2010-07-20 Alexander Pavlov <apavlov@chromium.org>
  76471. Reviewed by Pavel Feldman.
  76472. Web Inspector: Incorrect absolute URLs in tooltips of links in the ElementsTreeOutline
  76473. https://bugs.webkit.org/show_bug.cgi?id=42626
  76474. * inspector/front-end/ElementsTreeOutline.js:
  76475. (WebInspector.ElementsTreeElement.prototype._attributeHTML):
  76476. 2010-07-20 Shinichiro Hamaji <hamaji@chromium.org>
  76477. Unreviewed comment fix. The comment in IDL should be //, not # .
  76478. Code generator: ensure generated constants match their corresponding enums.
  76479. https://bugs.webkit.org/show_bug.cgi?id=42250
  76480. * dom/OverflowEvent.idl:
  76481. 2010-07-20 Hans Wennborg <hans@chromium.org>
  76482. Reviewed by Steve Block.
  76483. Add WebCore/bindings/generic/RuntimeEnabledFeatures.cpp to build files
  76484. https://bugs.webkit.org/show_bug.cgi?id=42380
  76485. RuntimeEnabledFeatures.cpp and .h were moved from bindings/v8 to
  76486. bindings/generic a while a go (in r54593), but need to
  76487. be added to the build in order to be used.
  76488. No new functionality so no new tests.
  76489. * Android.mk:
  76490. * CMakeLists.txt:
  76491. * GNUmakefile.am:
  76492. * WebCore.pro:
  76493. * WebCore.vcproj/WebCore.vcproj:
  76494. * WebCore.xcodeproj/project.pbxproj:
  76495. * websockets/WebSocket.cpp: Remove #if USE(V8), as RuntimeEnabledFeatures.cpp is no longer V8-only.
  76496. * websockets/WebSocket.h: Ditto.
  76497. 2010-07-20 Tony Chang <tony@chromium.org>
  76498. Reviewed by Kent Tamura.
  76499. clean up style in ClipboardWin and PasteboardWin
  76500. https://bugs.webkit.org/show_bug.cgi?id=42609
  76501. No new tests since this is just a style cleanup.
  76502. * platform/win/ClipboardUtilitiesWin.cpp:
  76503. (WebCore::createGlobalData):
  76504. (WebCore::markupToCFHTML):
  76505. (WebCore::getURL):
  76506. (WebCore::getPlainText):
  76507. (WebCore::getTextHTML):
  76508. (WebCore::fragmentFromFilenames):
  76509. (WebCore::containsFilenames):
  76510. (WebCore::fragmentFromCFHTML):
  76511. (WebCore::fragmentFromHTML):
  76512. * platform/win/ClipboardUtilitiesWin.h:
  76513. * platform/win/ClipboardWin.cpp:
  76514. (WebCore::pathRemoveBadFSCharacters):
  76515. (WebCore::createGlobalHDropContent):
  76516. (WebCore::createGlobalUrlFileDescriptor):
  76517. (WebCore::writeURL):
  76518. (WebCore::ClipboardWin::clearData):
  76519. (WebCore::ClipboardWin::clearAllData):
  76520. (WebCore::ClipboardWin::getData):
  76521. (WebCore::ClipboardWin::types):
  76522. (WebCore::ClipboardWin::declareAndWriteDragImage):
  76523. (WebCore::ClipboardWin::writeRange):
  76524. * platform/win/ClipboardWin.h:
  76525. (WebCore::ClipboardWin::create):
  76526. (WebCore::ClipboardWin::dataObject):
  76527. * platform/win/PasteboardWin.cpp:
  76528. (WebCore::PasteboardOwnerWndProc):
  76529. (WebCore::Pasteboard::writeSelection):
  76530. (WebCore::Pasteboard::writeURL):
  76531. (WebCore::Pasteboard::plainText):
  76532. (WebCore::Pasteboard::documentFragment):
  76533. 2010-07-20 Yury Semikhatsky <yurys@chromium.org>
  76534. Reviewed by Pavel Feldman.
  76535. Web Inspector: jump to source is broken for call frames logged by console.trace
  76536. https://bugs.webkit.org/show_bug.cgi?id=42619
  76537. * inspector/front-end/ConsoleView.js:
  76538. (WebInspector.ConsoleMessage.prototype._populateStackTraceTreeElement):
  76539. * inspector/front-end/treeoutline.js: allow passing HTML element as a title.
  76540. (TreeElement.prototype.set title):
  76541. (TreeElement.prototype.set shouldRefreshChildren):
  76542. (TreeElement.prototype._setListItemNodeContent):
  76543. (TreeElement.prototype._attach):
  76544. 2010-07-20 Tony Chang <tony@chromium.org>
  76545. Reviewed by Dan Bernstein.
  76546. [chromium] crash in Position::getInlineBoxAndOffset
  76547. https://bugs.webkit.org/show_bug.cgi?id=42202
  76548. Test: editing/selection/firstRect-crash.html
  76549. Manual test: win/contextmenu-key2.html
  76550. * page/EventHandler.cpp: Code no longer needed
  76551. * page/Frame.cpp:
  76552. (WebCore::Frame::firstRectForRange): Normalize Positions to VisiblePositions because
  76553. Positions may be pointing to nodes that have no renderer. If there's no renderer,
  76554. getInlineBoxAndOffset will crash.
  76555. 2010-07-20 Adam Barth <abarth@webkit.org>
  76556. Reviewed by Darin Adler.
  76557. Foster parenting depends on the current element at insertion time
  76558. https://bugs.webkit.org/show_bug.cgi?id=42599
  76559. We need to consider the current element at insertion-time when deciding
  76560. whether to redirect insertion to the foster parent. Previously, we
  76561. were considering the current element *both* at insertion-time and at
  76562. the time we created the guard.
  76563. * html/HTMLConstructionSite.h:
  76564. (WebCore::HTMLConstructionSite::RedirectToFosterParentGuard::RedirectToFosterParentGuard):
  76565. * html/HTMLTreeBuilder.cpp:
  76566. (WebCore::HTMLTreeBuilder::processStartTagForInTable):
  76567. (WebCore::HTMLTreeBuilder::processEndTagForInTable):
  76568. (WebCore::HTMLTreeBuilder::defaultForInTableText):
  76569. 2010-07-20 Matthew Delaney <mdelaney@apple.com>
  76570. Reviewed by Kenneth Rohde Christiansen.
  76571. Failing 2d.path.stroke.prune.curve philip canvas test
  76572. https://bugs.webkit.org/show_bug.cgi?id=42190
  76573. * html/canvas/CanvasRenderingContext2D.cpp:
  76574. (WebCore::CanvasRenderingContext2D::closePath): Added check to make sure there's a non-trivial path to close. Since there is currently no way to check if the current point is the start point, or similarly if there is only 1 point in the current subpath (since these are both sufficient conditions for a trivial subpath), then checking that the bounding rectangle has both zero width and height proves also to be a sufficient condition for a trivial path.
  76575. (WebCore::CanvasRenderingContext2D::quadraticCurveTo): Added in simple bounds as per the spec.
  76576. (WebCore::CanvasRenderingContext2D::bezierCurveTo): Added in simple bounds as per the spec.
  76577. * platform/graphics/cg/PathCG.cpp:
  76578. (WebCore::Path::closeSubpath): Moved the check for an empty path up on level to make it platform independent and remove redundancy.
  76579. 2010-07-19 Victoria Kirst <vrk@google.com>
  76580. Reviewed by David Levin.
  76581. Added a simple implementation of VideoLayerChromium. Uses the
  76582. LayerChromium::updateTextureRect() to send video frames to the
  76583. GPU.
  76584. https://bugs.webkit.org/show_bug.cgi?id=42234
  76585. * WebCore.gypi: Added include for VideoLayerChromium.
  76586. * platform/graphics/chromium/GraphicsLayerChromium.cpp:
  76587. (WebCore::GraphicsLayerChromium::setContentsToMedia): Implemented
  76588. setContentsToMedia, though it does not seem to trigger a repaint
  76589. correctly.
  76590. * platform/graphics/chromium/GraphicsLayerChromium.h:
  76591. * platform/graphics/chromium/VideoLayerChromium.cpp: Added.
  76592. (WebCore::VideoLayerChromium::create):
  76593. (WebCore::VideoLayerChromium::VideoLayerChromium):
  76594. (WebCore::VideoLayerChromium::updateTextureContents):
  76595. * platform/graphics/chromium/VideoLayerChromium.h: Added.
  76596. (WebCore::VideoLayerChromium::drawsContent):
  76597. 2010-07-19 Dirk Schulze <krit@webkit.org>
  76598. Reviewed by Nikolas Zimmermann.
  76599. SVG CleanUp of SVGPathData parsing
  76600. https://bugs.webkit.org/show_bug.cgi?id=41410
  76601. Cleanup the parsing code for SVG Paths. Move classes out of the convoluted SVGParserUtilities.cpp
  76602. in their own files. Make use of WebCore specific objects in parsing code like FloatPoint, AffineTransform,
  76603. etc. instead of using home-brewn solutions.
  76604. The SVGPathParser parses a path data string and delivers the parsed segments and values to the SVGPathConsumer.
  76605. SVGPathConsumer is the base class for SVGPathBuilder and SVGPathSegListBuilder, that either build the platform
  76606. Path object or a SVGPathSegList out of the segments.
  76607. We're now directly parsing floats instead of truncating precision to float afterwards.
  76608. SVG Path with an arc with radius of 0 does not render
  76609. https://bugs.webkit.org/show_bug.cgi?id=40448
  76610. If one of the radii on the elliptic arc are zero, we should draw a line from the starting point to
  76611. the end point according to the spec. Fixed this bug with this patch, because an is zero check and
  76612. an DRT check was neccessary with the current clean-up.
  76613. Extended svg/dom/path-parser.xhml to check the correct behavior.
  76614. * Android.mk:
  76615. * GNUmakefile.am:
  76616. * WebCore.gypi:
  76617. * WebCore.pro:
  76618. * WebCore.vcproj/WebCore.vcproj:
  76619. * WebCore.xcodeproj/project.pbxproj:
  76620. * platform/graphics/FloatPoint.h:
  76621. (WebCore::FloatPoint::move): Follow WebKit style and use multiple lines for the function.
  76622. (WebCore::FloatPoint::scale): Scale FloatPoint.
  76623. (WebCore::operator+=):
  76624. (WebCore::operator+): Add two FloatPoints and give back the sum as FloatPoint.
  76625. * svg/SVGAllInOne.cpp: Added new created files.
  76626. * svg/SVGAnimateElement.cpp:
  76627. (WebCore::SVGAnimateElement::calculateFromAndToValues): Use new PathParser to create a PathSegList.
  76628. * svg/SVGAnimateMotionElement.cpp:
  76629. (WebCore::SVGAnimateMotionElement::parseMappedAttribute): Use new PathParser to create a Path.
  76630. * svg/SVGGlyphElement.cpp:
  76631. (WebCore::parsePathData): Use new PathParser to create a Path.
  76632. * svg/SVGParserUtilities.cpp:
  76633. (WebCore::parseArcFlag): Removed parseArcFlag(double&), we parse in float now.
  76634. * svg/SVGParserUtilities.h: Removed path parsing code and a lot of unneccessary includes.
  76635. * svg/SVGPathBuilder.cpp: Added.
  76636. (WebCore::SVGPathBuilder::SVGPathBuilder):
  76637. (WebCore::SVGPathBuilder::build): Builds a normalized Path.
  76638. (WebCore::SVGPathBuilder::moveTo):
  76639. (WebCore::SVGPathBuilder::lineTo):
  76640. (WebCore::SVGPathBuilder::curveToCubic):
  76641. (WebCore::SVGPathBuilder::closePath):
  76642. * svg/SVGPathBuilder.h: Added. We just create normalized Paths, so this functions should never be reached.
  76643. (WebCore::SVGPathBuilder::lineToHorizontal):
  76644. (WebCore::SVGPathBuilder::lineToVertical):
  76645. (WebCore::SVGPathBuilder::curveToCubicSmooth):
  76646. (WebCore::SVGPathBuilder::curveToQuadratic):
  76647. (WebCore::SVGPathBuilder::curveToQuadraticSmooth):
  76648. (WebCore::SVGPathBuilder::arcTo):
  76649. * svg/SVGPathConsumer.h: Added. Base class of SVGPathBuilder and SVGPathSegListBuilder.
  76650. (WebCore::):
  76651. (WebCore::SVGPathConsumer::SVGPathConsumer):
  76652. (WebCore::SVGPathConsumer::~SVGPathConsumer):
  76653. * svg/SVGPathElement.cpp:
  76654. (WebCore::SVGPathElement::parseMappedAttribute): Use new PathParser to create a PathSegList.
  76655. * svg/SVGPathParser.cpp: Added.
  76656. (WebCore::SVGPathParser::SVGPathParser):
  76657. (WebCore::SVGPathParser::~SVGPathParser):
  76658. (WebCore::SVGPathParser::parseClosePathSegment):
  76659. (WebCore::SVGPathParser::parseMoveToSegment):
  76660. (WebCore::SVGPathParser::parseLineToSegment):
  76661. (WebCore::SVGPathParser::parseLineToHorizontalSegment):
  76662. (WebCore::SVGPathParser::parseLineToVerticalSegment):
  76663. (WebCore::SVGPathParser::parseCurveToCubicSegment):
  76664. (WebCore::SVGPathParser::parseCurveToCubicSmoothSegment):
  76665. (WebCore::SVGPathParser::parseCurveToQuadraticSegment):
  76666. (WebCore::SVGPathParser::parseCurveToQuadraticSmoothSegment):
  76667. (WebCore::SVGPathParser::parseArcToSegment):
  76668. (WebCore::SVGPathParser::parsePathDataString):
  76669. (WebCore::SVGPathParser::decomposeArcToCubic): Normalizes an arc to multiple cubic curves.
  76670. * svg/SVGPathParser.h: Added.
  76671. * svg/SVGPathSegListBuilder.cpp: Added.
  76672. (WebCore::SVGPathSegListBuilder::SVGPathSegListBuilder):
  76673. (WebCore::SVGPathSegListBuilder::build):
  76674. (WebCore::SVGPathSegListBuilder::moveTo):
  76675. (WebCore::SVGPathSegListBuilder::lineTo):
  76676. (WebCore::SVGPathSegListBuilder::lineToHorizontal):
  76677. (WebCore::SVGPathSegListBuilder::lineToVertical):
  76678. (WebCore::SVGPathSegListBuilder::curveToCubic):
  76679. (WebCore::SVGPathSegListBuilder::curveToCubicSmooth):
  76680. (WebCore::SVGPathSegListBuilder::curveToQuadratic):
  76681. (WebCore::SVGPathSegListBuilder::curveToQuadraticSmooth):
  76682. (WebCore::SVGPathSegListBuilder::arcTo):
  76683. (WebCore::SVGPathSegListBuilder::closePath):
  76684. * svg/SVGPathSegListBuilder.h: Added.
  76685. 2010-07-15 Yuzo Fujishima <yuzo@google.com>
  76686. Reviewed by Dan Bernstein.
  76687. Fix for Bug 42342 - Font download error for an @font-face rule invalidates other @font-face rules for the same font-family
  76688. https://bugs.webkit.org/show_bug.cgi?id=42342
  76689. Test: fast/css/font-face-download-error.html
  76690. * css/CSSSegmentedFontFace.cpp:
  76691. (WebCore::CSSSegmentedFontFace::isValid): Valid if at least one font
  76692. face is valid.
  76693. (WebCore::CSSSegmentedFontFace::getFontData): Check validity for each
  76694. font face.
  76695. * css/CSSSegmentedFontFace.h: Make isValid private.
  76696. 2010-07-19 Kent Tamura <tkent@chromium.org>
  76697. Reviewed by Shinichiro Hamaji.
  76698. [Chromium] Fix style errors of RenderThemeChromiumWin.cpp
  76699. https://bugs.webkit.org/show_bug.cgi?id=42568
  76700. * rendering/RenderThemeChromiumWin.cpp:
  76701. (WebCore::):
  76702. (WebCore::getNonClientMetrics):
  76703. (WebCore::systemFontSize):
  76704. (WebCore::pointsToPixels):
  76705. (WebCore::querySystemBlinkInterval):
  76706. (WebCore::RenderThemeChromiumWin::platformActiveSelectionBackgroundColor):
  76707. (WebCore::RenderThemeChromiumWin::platformInactiveSelectionBackgroundColor):
  76708. (WebCore::RenderThemeChromiumWin::platformActiveSelectionForegroundColor):
  76709. (WebCore::RenderThemeChromiumWin::platformActiveTextSearchHighlightColor):
  76710. (WebCore::RenderThemeChromiumWin::paintButton):
  76711. (WebCore::RenderThemeChromiumWin::paintSliderTrack):
  76712. (WebCore::RenderThemeChromiumWin::paintMenuList):
  76713. (WebCore::RenderThemeChromiumWin::paintTextFieldInternal):
  76714. (WebCore::RenderThemeChromiumWin::paintInnerSpinButton):
  76715. 2010-07-19 Steve Falkenburg <sfalken@apple.com>
  76716. (Hopefully the last) Windows build fix.
  76717. Version of CoreServices.h in WebKit Support Libraries uses
  76718. pragma once, unlike the version I have locally. Switch based
  76719. on __COLORSYNCDEPRECATED__ instead.
  76720. * WebCorePrefix.h:
  76721. 2010-07-19 Steve Falkenburg <sfalken@apple.com>
  76722. Windows build fix.
  76723. * WebCorePrefix.h:
  76724. 2010-07-19 Steve Falkenburg <sfalken@apple.com>
  76725. Build fix.
  76726. * WebCorePrefix.h:
  76727. 2010-07-19 Steve Falkenburg <sfalken@apple.com>
  76728. Build fix.
  76729. * WebCorePrefix.h:
  76730. 2010-07-19 Steve Falkenburg <sfalken@apple.com>
  76731. Windows Build fixes for new ColorSync API.
  76732. We support both new and old APIs, since the newer headers aren't in the tree yet.
  76733. * WebCorePrefix.h: Removed include of CoreServices.h. Included via ColorSyncPriv.h instead, since header may not be present.
  76734. * platform/graphics/cg/ColorCG.cpp:
  76735. (WebCore::createCGColor): Conditionally use new ColorSync API.
  76736. * platform/graphics/opentype/OpenTypeUtilities.cpp: Define Fixed if CoreServices.h doesn't.
  76737. * platform/graphics/win/GraphicsLayerCACF.cpp:
  76738. (WebCore::GraphicsLayerCACF::updateLayerDrawsContent): Use 0 instead of nil, since nil is no longer present via CoreServices.h.
  76739. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: Include AssertMacros.h.
  76740. * platform/network/cf/ResourceErrorCF.cpp:
  76741. (WebCore::ResourceError::operator CFErrorRef): Use 0 instead of nil, since nil is no longer present via CoreServices.h.
  76742. 2010-07-19 Tony Gentilcore <tonyg@chromium.org>
  76743. Reviewed by Dimitri Glazkov.
  76744. Only set unloadEventEnd when the unload event is actually fired
  76745. https://bugs.webkit.org/show_bug.cgi?id=42607
  76746. r63689 introduced this ASSERT and it began failing on Qt and Mac debug.
  76747. For some reason, it did not fail on Windows (which is where I was
  76748. testing). The ASSERT was disabled in r63699.
  76749. Test: page-cache related layout tests don't crash in debug mode on Mac.
  76750. * loader/FrameLoader.cpp:
  76751. (WebCore::FrameLoader::stopLoading):
  76752. 2010-07-19 Andreas Kling <andreas.kling@nokia.com>
  76753. Reviewed by Kenneth Rohde Christiansen.
  76754. [Qt] Don't unnecessarily copy QPainterPath in fillPath() and strokePath()
  76755. https://bugs.webkit.org/show_bug.cgi?id=42513
  76756. Avoid making unnecessary deep-copies of QPainterPaths that will
  76757. be discarded after use.
  76758. * platform/graphics/qt/GraphicsContextQt.cpp:
  76759. (WebCore::GraphicsContext::fillPath):
  76760. (WebCore::GraphicsContext::strokePath):
  76761. 2010-07-19 Kenneth Russell <kbr@google.com>
  76762. Reviewed by Nate Chapin.
  76763. WebGL rendering results must be made available to Canvas.toDataURL and 2D drawImage
  76764. https://bugs.webkit.org/show_bug.cgi?id=34719
  76765. Fixed compiler warning introduced by original patch. No new tests;
  76766. covered by existing tests.
  76767. * platform/graphics/mac/GraphicsContext3DMac.mm:
  76768. (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas):
  76769. 2010-07-19 Anders Carlsson <andersca@apple.com>
  76770. Reviewed by Darin Adler, Adam Roben, Dan Bernstein and Sam Weinig.
  76771. Handle NP_ASFILE and NP_ASFILEONLY transfer modes
  76772. https://bugs.webkit.org/show_bug.cgi?id=42587
  76773. * WebCore.exp.in:
  76774. Export functions from FileSystem.h
  76775. * platform/mac/FileSystemMac.mm:
  76776. (WebCore::openTemporaryFile):
  76777. Try to create a temporary file using mkstemp.
  76778. 2010-07-19 Anders Carlsson <andersca@apple.com>
  76779. Reviewed by Sam Weinig.
  76780. Implement NPN_PostURLNotify
  76781. https://bugs.webkit.org/show_bug.cgi?id=42602
  76782. Export symbols needed by WebKit2.
  76783. * WebCore.exp.in:
  76784. 2010-07-19 Tony Gentilcore <tonyg@chromium.org>
  76785. Unreviewed build fix.
  76786. Remove overzealous ASSERT from r63689
  76787. https://bugs.webkit.org/show_bug.cgi?id=42606
  76788. No new tests because no new functionality.
  76789. * loader/FrameLoader.cpp:
  76790. (WebCore::FrameLoader::stopLoading):
  76791. 2010-07-19 Joseph Pecoraro <joepeck@webkit.org>
  76792. Reviewed by Mark Rowe.
  76793. Web Inspector: Do Not Copy *.re2js Inspector Resources in Xcode Build Phase
  76794. https://bugs.webkit.org/show_bug.cgi?id=42601
  76795. Remove *.re2js files after copying them over in the Build Phase. We do
  76796. the same to remove the WebKit.qrc file.
  76797. * WebCore.xcodeproj/project.pbxproj:
  76798. 2010-07-17 Tony Gentilcore <tonyg@chromium.org>
  76799. Reviewed by Darin Fisher.
  76800. [Web Timing] Move times to DocumentLoader and fix bugs in mark points
  76801. https://bugs.webkit.org/show_bug.cgi?id=42512
  76802. Test: fast/dom/webtiming-navigate-within-document.html
  76803. * loader/DocumentLoader.h: Move the FrameLoadTimeline (now call DocumentLoadTiming) to the DocumentLoader.
  76804. (WebCore::DocumentLoader::documentLoadTiming):
  76805. * loader/FrameLoader.cpp:
  76806. (WebCore::FrameLoader::stopLoading): Set unloadEventEnd on the provisional DocumentLoader. Add some ASSERTs to tighten things up.
  76807. (WebCore::FrameLoader::loadWithDocumentLoader): This was not the right place to set navigationStart. Setting it here caused it to be set before the unload form prompt and caused it to be reset when navigating within the document.
  76808. (WebCore::FrameLoader::finishedLoading): Set responseEnd on the active DocumentLoader.
  76809. (WebCore::FrameLoader::continueLoadAfterWillSubmitForm): This is the right place for navigationStart as defined by the spec.
  76810. * loader/FrameLoader.h: Get rid of FrameLoadTimeline.
  76811. * loader/FrameLoaderTypes.h: Rename FrameLoadTimeline to DocumentLoadTiming. It is even more apparent this doesn't belong in this file now. I am planning to submit a patch moving it out ASAP, but didn't want to muddy this patch with all those build files.
  76812. (WebCore::DocumentLoadTiming::DocumentLoadTiming):
  76813. * loader/MainResourceLoader.cpp:
  76814. (WebCore::MainResourceLoader::willSendRequest): Move fetchStart out of this method to load(), and rewrite setting of redirectStart, redirectEnd, and redirectCount to be more readable.
  76815. (WebCore::MainResourceLoader::load): Set fetchStart slightly earlier here and tighten it up with some ASSERTs.
  76816. * page/DOMWindow.cpp:
  76817. (WebCore::DOMWindow::dispatchLoadEvent): Set loadEventStart and loadEventEnd on the DocumentLoader.
  76818. * page/Navigation.cpp:
  76819. (WebCore::Navigation::redirectCount): Retrieve redirectCount from the DocumentLoader.
  76820. * page/Timing.cpp:
  76821. (WebCore::getPossiblySkewedTimeInKnownRange): The skew problem turned out to be due to the fact that chromium's currentTime() implementation only syncs to the system time every 60 seconds. So absolute times across threads may be skewed slightly. I resolved this temporarily by clipping the time from another thread into a known bound. A better long term solution is probably to add a currentTimeFromSystemTime() method and call that for web timing marks.
  76822. (WebCore::Timing::navigationStart):
  76823. (WebCore::Timing::unloadEventEnd):
  76824. (WebCore::Timing::redirectStart):
  76825. (WebCore::Timing::redirectEnd):
  76826. (WebCore::Timing::fetchStart):
  76827. (WebCore::Timing::domainLookupStart):
  76828. (WebCore::Timing::domainLookupEnd):
  76829. (WebCore::Timing::connectStart):
  76830. (WebCore::Timing::connectEnd):
  76831. (WebCore::Timing::requestStart):
  76832. (WebCore::Timing::requestEnd):
  76833. (WebCore::Timing::responseStart):
  76834. (WebCore::Timing::responseEnd):
  76835. (WebCore::Timing::loadEventStart):
  76836. (WebCore::Timing::loadEventEnd):
  76837. (WebCore::Timing::documentLoader):
  76838. (WebCore::Timing::documentLoadTiming):
  76839. (WebCore::Timing::resourceLoadTiming):
  76840. (WebCore::Timing::resourceLoadTimeRelativeToAbsolute): Ensure requestTime is in the range of fetchStart to responseEnd.
  76841. * page/Timing.h:
  76842. 2010-07-19 Chris Marrin <cmarrin@apple.com>
  76843. Reviewed by Darin Adler.
  76844. https://bugs.webkit.org/show_bug.cgi?id=42118
  76845. Disable WebGL on Leopard for now.
  76846. LayoutTests fail on some graphics hardware on Leopard because one of the features we use,
  76847. GL_ARB_framebuffer_object, is not universally available in Leopard like it is in
  76848. SnowLeopard. This will allow LayoutTests to pass on Leopard until we add logic to use a
  76849. software OpenGL driver on machines without this support.
  76850. * Configurations/FeatureDefines.xcconfig:
  76851. 2010-07-19 Eric Carlson <eric.carlson@apple.com>
  76852. Reviewed by Sam Weinig.
  76853. Remove HTML5 media element 'load' event
  76854. https://bugs.webkit.org/show_bug.cgi?id=30464
  76855. <rdar://problem/5650561>
  76856. * html/HTMLMediaElement.cpp:
  76857. (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_completelyLoaded.
  76858. (WebCore::HTMLMediaElement::parseMappedAttribute): Don't deal with 'load' event.
  76859. (WebCore::HTMLMediaElement::prepareForLoad): Set m_completelyLoaded to false.
  76860. (WebCore::HTMLMediaElement::setNetworkState): Don't post 'load' event.
  76861. (WebCore::HTMLMediaElement::progressEventTimerFired): Bail if m_networkState != NETWORK_LOADING.
  76862. (WebCore::HTMLMediaElement::userCancelledLoad): No more NETWORK_LOADED state.
  76863. * html/HTMLMediaElement.h:
  76864. (WebCore::HTMLMediaElement::):
  76865. * html/HTMLMediaElement.idl: Remove NETWORK_LOADING.
  76866. 2010-07-19 Alexey Proskuryakov <ap@apple.com>
  76867. Reviewed by Darin Adler.
  76868. https://bugs.webkit.org/show_bug.cgi?id=40996
  76869. Progress event should not be fired during synchronous XMLHttpRequest
  76870. https://bugs.webkit.org/show_bug.cgi?id=17502
  76871. Assertion failure when trying to restart a sync XMLHttpRequest as an async one from onreadystatechange
  76872. Tests: http/tests/xmlhttprequest/xmlhttprequest-sync-no-progress-events.html
  76873. http/tests/xmlhttprequest/xmlhttprequest-sync-vs-async-assertion-failure.html
  76874. * xml/XMLHttpRequest.cpp:
  76875. (WebCore::XMLHttpRequest::callReadyStateChangeListener): We now only dispatch readystatechange
  76876. event for synchronous requests in states UNSENT, OPENED and DONE. I'm not sure what exactly
  76877. the spec draft says about readystatechange for sync requests, but this seems to be the most
  76878. logical and backwards compatible behavior.
  76879. (WebCore::XMLHttpRequest::didReceiveData): Don't dispatch progress events for sync requests.
  76880. Note that we already don't dispatch upload progress events for those.
  76881. 2010-07-19 Dan Bernstein <mitz@apple.com>
  76882. Reviewed by Simon Fraser.
  76883. <rdar://problem/7232109> Unpainted white area appears at the edge of the page when body has bg color
  76884. https://bugs.webkit.org/show_bug.cgi?id=34913
  76885. Tests: fast/repaint/view-background-from-body-1.html
  76886. fast/repaint/view-background-from-body-2.html
  76887. * rendering/RenderBox.cpp:
  76888. (WebCore::RenderBox::styleWillChange): If this is the body renderer and its current style is
  76889. null, repaint the view, similarly to how the view is repainted for any repaint-or-higher
  76890. style changes.
  76891. * rendering/RenderObjectChildList.cpp:
  76892. (WebCore::RenderObjectChildList::removeChildNode): If the removed child is the body renderer,
  76893. repaint the view, in case the body’s background was propagated to the view.
  76894. 2010-07-19 Adam Roben <aroben@apple.com>
  76895. Fix an assertion when a plugin returns -1 from NPP_Write
  76896. We were forgetting to call setDefersLoading(false) before destroying
  76897. the PluginStream. In the process of destroying the stream, someone
  76898. would call setDefersLoading(true), and we would assert because we were
  76899. already deferring loads.
  76900. Fixes <http://webkit.org/b/42563> Assertion failure in
  76901. ResourceHandle::setDefersLoading when running
  76902. plugins/return-negative-one-from-write.html on Windows
  76903. Reviewed by Anders Carlsson.
  76904. * plugins/PluginStream.cpp:
  76905. (WebCore::PluginStream::deliverData): Call setDefersLoading(false)
  76906. before destroying the stream, to match the setDefersLoading(true) call
  76907. earlier in this function. (We already call setDefersLoading(false) in
  76908. the non-error case later on.)
  76909. 2010-07-19 Rafael Antognolli <antognolli@profusion.mobi>
  76910. Reviewed by Antonio Gomes.
  76911. [EFL] Fix some EFL theme issues
  76912. https://bugs.webkit.org/show_bug.cgi?id=42569
  76913. Keep a pointer to theme filename and check for it correctly.
  76914. Reduce the scope of some variables.
  76915. Don't test for platformWidget() since we are not using it.
  76916. No new tests, no new functionality.
  76917. * platform/efl/WidgetEfl.cpp:
  76918. (WebCore::Widget::applyCursor):
  76919. (WebCore::Widget::setCursor):
  76920. 2010-07-19 Rafael Antognolli <antognolli@profusion.mobi>
  76921. Reviewed by Antonio Gomes.
  76922. [EFL] Add ifdef to compile code just on presence of Ecore_X
  76923. https://bugs.webkit.org/show_bug.cgi?id=42567
  76924. No new tests since there's no new functionality.
  76925. * platform/efl/WidgetEfl.cpp:
  76926. (WebCore::Widget::setEvasObject):
  76927. Add #ifdef HAVE_ECORE_X to it.
  76928. 2010-07-19 Yury Semikhatsky <yurys@chromium.org>
  76929. Reviewed by Pavel Feldman.
  76930. Web Inspector: add/removeStyleClass shouldn't increase number of spaces between class names.
  76931. https://bugs.webkit.org/show_bug.cgi?id=42485
  76932. * inspector/front-end/utilities.js:
  76933. (Element.prototype.removeStyleClass):
  76934. 2010-07-19 Yury Semikhatsky <yurys@chromium.org>
  76935. Reviewed by Pavel Feldman.
  76936. Web Inspector: show stack trace for uncaught exceptions when Web Inspector is open.
  76937. https://bugs.webkit.org/show_bug.cgi?id=42560
  76938. * bindings/js/ScriptController.cpp:
  76939. (WebCore::ScriptController::setCaptureCallStackForUncaughtExceptions):
  76940. * bindings/js/ScriptController.h:
  76941. * bindings/v8/ScriptController.cpp:
  76942. (WebCore::ScriptController::setCaptureCallStackForUncaughtExceptions):
  76943. * bindings/v8/ScriptController.h:
  76944. * bindings/v8/V8ConsoleMessage.cpp:
  76945. (WebCore::V8ConsoleMessage::dispatchNow):
  76946. (WebCore::V8ConsoleMessage::handler):
  76947. * bindings/v8/V8ConsoleMessage.h:
  76948. * inspector/ConsoleMessage.cpp:
  76949. (WebCore::ConsoleMessage::ConsoleMessage):
  76950. * inspector/ConsoleMessage.h:
  76951. * inspector/InspectorController.cpp:
  76952. (WebCore::InspectorController::addMessageToConsole):
  76953. (WebCore::InspectorController::startGroup):
  76954. (WebCore::InspectorController::connectFrontend):
  76955. (WebCore::InspectorController::disconnectFrontend):
  76956. * inspector/InspectorController.h:
  76957. * inspector/front-end/ConsoleView.js:
  76958. (WebInspector.ConsoleMessage.prototype._formatMessage):
  76959. (WebInspector.ConsoleMessage.prototype.toMessageElement):
  76960. (WebInspector.ConsoleMessage.prototype._populateStackTraceTreeElement):
  76961. (WebInspector.ConsoleMessage.prototype._addMessageHeader):
  76962. (WebInspector.ConsoleMessage.prototype.toString):
  76963. * inspector/front-end/inspector.css:
  76964. (.console-message.repeated-message > ol.stack-trace):
  76965. (.section .properties ol, .event-properties ol, .stack-trace ol, ol.stack-trace):
  76966. (ol.stack-trace):
  76967. (.section .properties ol.expanded, .event-properties ol.expanded, .stack-trace ol, ol.stack-trace):
  76968. * page/Console.cpp:
  76969. (WebCore::Console::addMessage):
  76970. * page/Console.h:
  76971. (WebCore::):
  76972. 2010-07-19 Robin Burchell <robin.burchell@collabora.co.uk>
  76973. Reviewed by Antonio Gomes
  76974. [Qt] Use memcpy() instead of qMemCopy()
  76975. This is supposed to be more efficient, as the compiler is able to
  76976. optimise more.
  76977. Additionally, qMemCopy() is only strictly supposed to be used in
  76978. headers (see Qt's src/corelib/qglobal.h for reference)
  76979. See: https://bugs.webkit.org/show_bug.cgi?id=42392
  76980. * bridge/qt/qt_runtime.cpp:
  76981. (JSC::Bindings::convertQVariantToValue):
  76982. 2010-07-14 Andreas Kling <andreas.kling@nokia.com>
  76983. Reviewed by Kenneth Rohde Christiansen.
  76984. Canvas: Rename operator==(CanvasStyle,CanvasStyle) since it isn't a proper equality check
  76985. https://bugs.webkit.org/show_bug.cgi?id=42284
  76986. New name is isEquivalentColor(CanvasStyle).
  76987. * html/canvas/CanvasRenderingContext2D.cpp:
  76988. (WebCore::CanvasRenderingContext2D::setStrokeStyle):
  76989. (WebCore::CanvasRenderingContext2D::setFillStyle):
  76990. * html/canvas/CanvasStyle.cpp:
  76991. (WebCore::CanvasStyle::isEquivalentColor):
  76992. * html/canvas/CanvasStyle.h:
  76993. 2010-07-19 Andreas Kling <andreas.kling@nokia.com>
  76994. Reviewed by Kenneth Rohde Christiansen.
  76995. [Qt] Canvas: Wrong internal positioning of drawImage() shadows
  76996. https://bugs.webkit.org/show_bug.cgi?id=42510
  76997. * platform/graphics/qt/ImageQt.cpp:
  76998. (WebCore::BitmapImage::draw):
  76999. * platform/graphics/qt/StillImageQt.cpp:
  77000. (WebCore::StillImage::draw):
  77001. 2010-07-19 Andreas Kling <andreas.kling@nokia.com>
  77002. Reviewed by Kenneth Rohde Christiansen.
  77003. [Qt] Render shadow when drawing one canvas onto another
  77004. https://bugs.webkit.org/show_bug.cgi?id=42508
  77005. * platform/graphics/qt/StillImageQt.cpp:
  77006. (WebCore::StillImage::draw):
  77007. 2010-07-19 Andreas Kling <andreas.kling@nokia.com>
  77008. Reviewed by Kenneth Rohde Christiansen.
  77009. [Qt] Some composition modes fail when color has alpha zero
  77010. https://bugs.webkit.org/show_bug.cgi?id=36973
  77011. Remove erroneous optimization that ignored painting calls when
  77012. the stroke/fill color had an alpha value of zero.
  77013. * platform/graphics/qt/GraphicsContextQt.cpp:
  77014. (WebCore::GraphicsContext::drawLine):
  77015. (WebCore::GraphicsContext::strokeArc):
  77016. (WebCore::GraphicsContext::fillPath):
  77017. (WebCore::GraphicsContext::strokePath):
  77018. (WebCore::GraphicsContext::fillRect):
  77019. (WebCore::GraphicsContext::fillRoundedRect):
  77020. 2010-07-19 Andreas Kling <andreas.kling@nokia.com>
  77021. Reviewed by Kenneth Rohde Christiansen.
  77022. CSS3 background: Number of layers should be determined by background-image element count
  77023. https://bugs.webkit.org/show_bug.cgi?id=41201
  77024. Manual test: css3-background-layer-count.html
  77025. Spec link:
  77026. http://www.w3.org/TR/css3-background/#layering
  77027. * manual-tests/css3-background-layer-count.html: Added.
  77028. * rendering/style/FillLayer.cpp:
  77029. (WebCore::FillLayer::fillUnsetProperties): Don't repeat
  77030. image properties, they determine the total number of layers.
  77031. (WebCore::FillLayer::cullEmptyLayers): Change culling logic
  77032. to discard all layers after the first one without an image set.
  77033. * rendering/style/RenderStyle.h:
  77034. (WebCore::InheritedFlags::adjustBackgroundLayers): Call
  77035. fillUnsetProperties() before cullEmptyLayers()
  77036. (WebCore::InheritedFlags::adjustMaskLayers): Ditto.
  77037. 2010-07-19 Andreas Kling <andreas.kling@nokia.com>
  77038. Reviewed by Kenneth Rohde Christiansen.
  77039. [Qt] Avoid QImage::pixel() in getImageData()
  77040. https://bugs.webkit.org/show_bug.cgi?id=42463
  77041. * platform/graphics/qt/ImageBufferQt.cpp:
  77042. (WebCore::getImageData): Use QImage::scanLine() instead
  77043. of fetching data pixel-by-pixel.
  77044. 2010-07-19 Yury Semikhatsky <yurys@chromium.org>
  77045. Reviewed by Pavel Feldman.
  77046. Web Inspector: hide "toggle debugger" button when debugger is always enabled
  77047. https://bugs.webkit.org/show_bug.cgi?id=42558
  77048. * inspector/front-end/ScriptsPanel.js:
  77049. (WebInspector.ScriptsPanel):
  77050. 2010-07-19 Hans Wennborg <hans@chromium.org>
  77051. Reviewed by Steve Block.
  77052. Explicitly declare DeviceOrientationEvent destructor and define it in the .cpp file
  77053. https://bugs.webkit.org/show_bug.cgi?id=42466
  77054. (Original problem at https://bugs.webkit.org/show_bug.cgi?id=42447)
  77055. No new functionality so no new tests.
  77056. * dom/DeviceOrientationEvent.cpp:
  77057. (WebCore::DeviceOrientationEvent::~DeviceOrientationEvent):
  77058. Move here to avoid needing to have the full declaration of
  77059. DeviceOrientation in DeviceOrientationEvent.h.
  77060. * dom/DeviceOrientationEvent.h:
  77061. 2010-07-18 Anders Carlsson <andersca@apple.com>
  77062. Fix Build.
  77063. * rendering/RenderThemeMac.mm:
  77064. (WebCore::RenderThemeMac::paintSearchFieldResultsDecoration):
  77065. 2010-07-18 Anders Carlsson <andersca@apple.com>
  77066. Reviewed by Dan Bernstein.
  77067. Always set the current NSGraphicsContext before calling drawWithFrame
  77068. https://bugs.webkit.org/show_bug.cgi?id=42542
  77069. * rendering/RenderThemeMac.mm:
  77070. (WebCore::RenderThemeMac::paintMeter):
  77071. (WebCore::RenderThemeMac::paintSearchField):
  77072. (WebCore::RenderThemeMac::paintSearchFieldCancelButton):
  77073. (WebCore::RenderThemeMac::paintSearchFieldResultsDecoration):
  77074. (WebCore::RenderThemeMac::paintSearchFieldResultsButton):
  77075. 2010-07-18 Anders Carlsson <andersca@apple.com>
  77076. Reviewed by Sam Weinig.
  77077. Move PluginWidget to WebKit
  77078. https://bugs.webkit.org/show_bug.cgi?id=42530
  77079. Rename the PluginWidget class to PluginViewBase and make it an abstract base class.
  77080. This is a stopgap measure until we have a single PluginView class that we can use everywhere.
  77081. * WebCore.exp.in:
  77082. Remove PluginWidget symbols.
  77083. * WebCore.xcodeproj/project.pbxproj:
  77084. Update.
  77085. * platform/Widget.h:
  77086. (WebCore::Widget::isPluginViewBase):
  77087. Return false.
  77088. * plugins/PluginViewBase.h: Added.
  77089. (WebCore::PluginViewBase::platformLayer):
  77090. Always return 0 here now.
  77091. (WebCore::PluginViewBase::isPluginViewBase):
  77092. Return true.
  77093. * plugins/PluginWidget.h: Removed.
  77094. * plugins/mac/PluginWidgetMac.mm: Removed.
  77095. * rendering/RenderEmbeddedObject.cpp:
  77096. (WebCore::RenderEmbeddedObject::allowsAcceleratedCompositing):
  77097. Cast to PluginWidgetBase instead.
  77098. * rendering/RenderLayerBacking.cpp:
  77099. (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
  77100. Cast to PluginWidgetBase instead.
  77101. 2010-07-18 Dean Jackson <dino@apple.com>
  77102. Unreviewed.
  77103. Remove the unwanted extra line that Xcode
  77104. added in my last commit.
  77105. * WebCore.xcodeproj/project.pbxproj:
  77106. 2010-07-18 Dean Jackson <dino@apple.com>
  77107. Reviewed by Simon Fraser.
  77108. https://bugs.webkit.org/show_bug.cgi?id=41259
  77109. Interacting with a <select> element within a transformed and clipped
  77110. container scrolls the container
  77111. The Node::getRect and ContainerNode::getRect functions were not
  77112. transform-aware. This fixes both, and has a test to make sure
  77113. we're not breaking any existing scrollToView code. This means
  77114. that a <select> popup will appear in the correct place if it
  77115. is within a transformed and scrolled container.
  77116. Test: fast/transforms/scrollIntoView-transformed.html
  77117. * dom/ContainerNode.cpp:
  77118. (WebCore::ContainerNode::getUpperLeftCorner):
  77119. (WebCore::ContainerNode::getLowerRightCorner):
  77120. - make sure we call localToAbsolute in the right order
  77121. (after we've done a local move) and pass in the flags to
  77122. indicate it should look for transforms.
  77123. * dom/Node.cpp:
  77124. (WebCore::Node::getRect):
  77125. - make sure localToAbsolute gets told to look for transforms.
  77126. 2010-07-18 Anders Carlsson <andersca@apple.com>
  77127. Reviewed by Sam Weinig.
  77128. Add NPJSObjectMap class
  77129. https://bugs.webkit.org/show_bug.cgi?id=42524
  77130. Export ScriptController functions.
  77131. * WebCore.exp.in:
  77132. 2010-07-18 Anders Carlsson <andersca@apple.com>
  77133. Reviewed by Dan Bernstein.
  77134. Implement some NPRuntime related NPN_ functions
  77135. https://bugs.webkit.org/show_bug.cgi?id=42518
  77136. * WebCore.exp.in:
  77137. Export IdentifierRep functions.
  77138. 2010-07-17 TJ Lee <tjlee0909@gmail.com>
  77139. Reviewed by Timothy Hatcher.
  77140. HTMLLinkElement ignores dnsPrefetchingEnabled setting
  77141. https://bugs.webkit.org/show_bug.cgi?id=42500
  77142. Changed the HTML Link tag to check that the browser
  77143. has DNS-prefetching enabled before calling ResourceHandle::prepareForURL.
  77144. There are no test cases for this patch because it was unclear how to test
  77145. this using a layout test. A possible test case would be to
  77146. clear the DNS cache on the client's machine before loading a page with
  77147. <link rel="dns-prefetch" href="SomeSiteThatsNotTheCurrentOne.com"> and
  77148. then check the number of DNS cache entries.
  77149. * html/HTMLLinkElement.cpp:
  77150. (WebCore::HTMLLinkElement::process):
  77151. 2010-07-16 Maciej Stachowiak <mjs@apple.com>
  77152. Reviewed by Sam Weinig.
  77153. Asynchronous policy checks make FrameLoader think it is done loading prematurely
  77154. https://bugs.webkit.org/show_bug.cgi?id=42489
  77155. This caused many (~100) layout tsts to fail under WebKit2.
  77156. * loader/SubframeLoader.cpp:
  77157. (WebCore::SubframeLoader::loadSubframe): Right after loading a new subframe,
  77158. if m_complete is true, do not consider it done if it has a provisional loader.
  77159. This will happen in the case where the policy check is asynchronous.
  77160. * loader/FrameLoader.cpp:
  77161. (WebCore::FrameLoader::subframeIsLoading): For similar reasons,
  77162. consider a subframe to be loading if it has a policy decision pending.
  77163. 2010-07-15 Qi Zhang <qi.2.zhang@nokia.com>
  77164. Reviewed by Kenneth Rohde Christiansen.
  77165. [Qt] Failure on http://philip.html5.org/tests/canvas/suite/tests/2d.shadow.alpha.5.html
  77166. https://bugs.webkit.org/show_bug.cgi?id=38400
  77167. FillRect with shadow need take alpha information from fillstyle
  77168. * platform/graphics/qt/GraphicsContextQt.cpp:
  77169. (WebCore::GraphicsContext::fillRect):
  77170. 2010-07-17 Nikita Vasilyev <me@elv1s.ru>
  77171. Reviewed by Pavel Feldman.
  77172. Web Inspector: [REGRESSION] Edit long CSS attributes works incorrect
  77173. https://bugs.webkit.org/show_bug.cgi?id=42476
  77174. * inspector/front-end/inspector.css:
  77175. (.editing):
  77176. 2010-07-16 Andreas Kling <andreas.kling@nokia.com>
  77177. Reviewed by Sam Weinig.
  77178. Failing 2d.path.arcTo.ensuresubpath.* philip canvas tests
  77179. https://bugs.webkit.org/show_bug.cgi?id=42186
  77180. Move code from Qt's Path::addArcTo() up to CanvasRenderingContext2D.
  77181. * html/canvas/CanvasRenderingContext2D.cpp:
  77182. (WebCore::CanvasRenderingContext2D::arcTo): Behave as moveTo(x1,y1)
  77183. if the current path is empty.
  77184. * platform/graphics/qt/PathQt.cpp:
  77185. (WebCore::Path::addArcTo): Remove now-redundant code.
  77186. 2010-07-16 Andreas Kling <andreas.kling@nokia.com>
  77187. Reviewed by Oliver Hunt.
  77188. QtWebkit creates an unnecessary deep copy of images when canvas drawing is done
  77189. A https://bugs.webkit.org/show_bug.cgi?id=32530
  77190. Solve this by adding ImageBuffer::imageForRendering() which returns an image
  77191. that can be used for rendering now, but isn't a copy to be kept around.
  77192. * platform/graphics/ImageBuffer.h:
  77193. (WebCore::ImageBuffer::imageForRendering):
  77194. * platform/graphics/qt/ImageBufferQt.cpp:
  77195. (WebCore::ImageBuffer::imageForRendering): Added to provide an image that can
  77196. be used for rendering now, but may change in the future.
  77197. * platform/graphics/qt/StillImageQt.cpp:
  77198. (WebCore::StillImage::StillImage):
  77199. (WebCore::StillImage::~StillImage):
  77200. (WebCore::StillImage::size):
  77201. (WebCore::StillImage::nativeImageForCurrentFrame):
  77202. (WebCore::StillImage::draw):
  77203. * platform/graphics/qt/StillImageQt.h:
  77204. (WebCore::StillImage::createForRendering): Added for use in
  77205. ImageBuffer::imageForRendering(), provides a thin wrapper around a QPixmap*.
  77206. * html/HTMLCanvasElement.cpp:
  77207. (WebCore::HTMLCanvasElement::paint): Paint with ImageBuffer::imageForRendering()
  77208. 2010-07-16 Andreas Kling <andreas.kling@nokia.com>
  77209. Reviewed by Oliver Hunt.
  77210. [Qt] Remove redundant logic in Path::addArcTo()
  77211. https://bugs.webkit.org/show_bug.cgi?id=42494
  77212. Bounds checking for arcTo() is now done in cross-platform code
  77213. thanks to <http://trac.webkit.org/changeset/63599>
  77214. * platform/graphics/qt/PathQt.cpp:
  77215. (WebCore::Path::addArcTo):
  77216. 2010-07-16 Zhe Su <suzhe@chromium.org>
  77217. Reviewed by Darin Adler.
  77218. REGRESSION(r61484): Broke focus behaviour on Qt and probably other platforms
  77219. https://bugs.webkit.org/show_bug.cgi?id=42253
  77220. This patch just reverts the change to WebCore/page/FocusController.cpp
  77221. made in changeset 61484, and add a new method named
  77222. willSetInputMethodState in EditorClient interface, which gets called
  77223. in FocusController just before changing the focused node.
  77224. No new tests, because no new functionality.
  77225. * loader/EmptyClients.h:
  77226. (WebCore::EmptyEditorClient::willSetInputMethodState):
  77227. * page/EditorClient.h:
  77228. * page/FocusController.cpp:
  77229. (WebCore::FocusController::setFocusedNode):
  77230. 2010-07-16 Matthew Delaney <mdelaney@apple.com>
  77231. Reviewed by Sam Weinig.
  77232. Failing 2d.path.stroke.prune.arc philip canvas test
  77233. https://bugs.webkit.org/show_bug.cgi?id=42188
  77234. * html/canvas/CanvasRenderingContext2D.cpp:
  77235. Note, updated parameter names to match spec.
  77236. (WebCore::CanvasRenderingContext2D::lineTo): Pulled bound checking code out of lower code to have checks for all platforms.
  77237. (WebCore::CanvasRenderingContext2D::arcTo): Bound checking per the spec for arcTo parameters. Updated parameter names to match spec.
  77238. * platform/graphics/Path.h: Added in new method to expose the current position.
  77239. * platform/graphics/cairo/PathCairo.cpp:
  77240. (WebCore::Path::currentPoint): Added in likely correct implementation for this call with a FIXME just in case.
  77241. * platform/graphics/cg/PathCG.cpp:
  77242. (WebCore::Path::currentPoint): Added in support for this call.
  77243. * platform/graphics/haiku/PathHaiku.cpp:
  77244. (WebCore::Path::currentPoint): Added in stub for this call.
  77245. * platform/graphics/openvg/PathOpenVG.cpp:
  77246. (WebCore::Path::currentPoint): Added in likely implementation for this call with a FIXME just in case.
  77247. * platform/graphics/qt/PathQt.cpp:
  77248. (WebCore::Path::currentPoint): Added in implementation for this call courtesy of Andrea Kling.
  77249. * platform/graphics/skia/PathSkia.cpp:
  77250. (WebCore::Path::currentPoint): Added in stub for this call.
  77251. * platform/graphics/wince/PathWince.cpp:
  77252. (WebCore::Path::currentPoint): Added in stub for this call.
  77253. * platform/graphics/wx/PathWx.cpp:
  77254. (WebCore::Path::currentPoint): Added in stub for this call.
  77255. 2010-07-16 Sheriff Bot <webkit.review.bot@gmail.com>
  77256. Unreviewed, rolling out r63593.
  77257. http://trac.webkit.org/changeset/63593
  77258. https://bugs.webkit.org/show_bug.cgi?id=42487
  77259. Broke a few chromium pixel tests (Requested by tony^work on
  77260. #webkit).
  77261. * platform/graphics/skia/GraphicsContextSkia.cpp:
  77262. (WebCore::GraphicsContext::drawConvexPolygon):
  77263. (WebCore::GraphicsContext::drawEllipse):
  77264. (WebCore::GraphicsContext::drawLine):
  77265. (WebCore::GraphicsContext::strokeArc):
  77266. (WebCore::GraphicsContext::strokePath):
  77267. (WebCore::GraphicsContext::strokeRect):
  77268. 2010-07-16 Dan Bernstein <mitz@apple.com>
  77269. Reviewed by Sam Weinig.
  77270. Part of <rdar://problem/7233974> Deprecate +[WebView _setShouldUseFontSmoothing:]
  77271. https://bugs.webkit.org/show_bug.cgi?id=29355
  77272. * WebCore.exp.in: Updated.
  77273. * platform/graphics/Font.cpp:
  77274. (WebCore::Font::Font): Added a font smoothing mode parameter to the constructor.
  77275. Set the font smoothing mode in the font description.
  77276. * platform/graphics/Font.h:
  77277. 2010-07-16 Satish Sampath <satish@chromium.org>
  77278. Reviewed by Anders Carlsson.
  77279. Add speech attribute to IDL for enabling access from JS.
  77280. https://bugs.webkit.org/show_bug.cgi?id=42483
  77281. No tests added, this change is a pre-requisite for future layout tests.
  77282. * html/HTMLInputElement.cpp:
  77283. (WebCore::HTMLInputElement::parseMappedAttribute): Update the renderer when speech attribute changes.
  77284. * html/HTMLInputElement.idl: Added the speech attribute to IDL.
  77285. 2010-07-16 Fady Samuel <fsamuel@chromium.org>
  77286. Reviewed by David Levin.
  77287. Avoids adding stroke when stroke-width is zero.
  77288. SVG - stroke-width:0 bug with stroke other than "none"
  77289. https://bugs.webkit.org/show_bug.cgi?id=42387
  77290. Test: svg/stroke/path-zero-strokewidth-test.svg
  77291. * platform/graphics/skia/GraphicsContextSkia.cpp:
  77292. (WebCore::GraphicsContext::drawConvexPolygon):
  77293. (WebCore::GraphicsContext::drawEllipse):
  77294. (WebCore::GraphicsContext::drawLine):
  77295. (WebCore::GraphicsContext::strokeArc):
  77296. (WebCore::GraphicsContext::strokePath):
  77297. (WebCore::GraphicsContext::strokeRect):
  77298. 2010-07-16 Kent Tamura <tkent@chromium.org>
  77299. Unreviewed, build fix.
  77300. * rendering/RenderThemeChromiumWin.cpp:
  77301. (WebCore::RenderThemeChromiumWin::getThemeData): Fix a typo.
  77302. 2010-07-16 Kent Tamura <tkent@chromium.org>
  77303. Reviewed by Darin Fisher.
  77304. [Chromium] <input type=number> UI implementation for Windows
  77305. https://bugs.webkit.org/show_bug.cgi?id=42259
  77306. No additional tests. Existing tests cover this change and we'll
  77307. update expectations.
  77308. * platform/chromium/ChromiumBridge.h: Add paintSpinButton().
  77309. * rendering/RenderThemeChromiumWin.cpp:
  77310. (WebCore::RenderThemeChromiumWin::determineState):
  77311. Add ControlSubPart parameter and add support for spin buttons.
  77312. (WebCore::RenderThemeChromiumWin::determineClassicState): ditto.
  77313. (WebCore::RenderThemeChromiumWin::getThemeData): ditto.
  77314. (WebCore::RenderThemeChromiumWin::adjustInnerSpinButtonStyle): Added.
  77315. (WebCore::RenderThemeChromiumWin::paintInnerSpinButton): Added.
  77316. * rendering/RenderThemeChromiumWin.h:
  77317. Declare ControlSubpart, and add it to some functions.
  77318. 2010-07-16 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  77319. Reviewed by Antonio Gomes.
  77320. [EFL] Use function provided by EFL for system beep
  77321. https://bugs.webkit.org/show_bug.cgi?id=42481
  77322. EFL port does not support automated tests, yet.
  77323. * platform/efl/SoundEfl.cpp:
  77324. (WebCore::systemBeep):
  77325. 2010-07-16 Sarah Strong <sarah.e.strong@gmail.com>
  77326. Reviewed by Gustavo Noronha Silva.
  77327. [GTK] Clipboard data is lost on exit
  77328. https://bugs.webkit.org/show_bug.cgi?id=27411
  77329. No new tests. To manually test the bug fixed by this patch:
  77330. 1) Open an application that uses a webkit webview on a GNOME-based system
  77331. 2) Copy some text from that application
  77332. 3) Optional: paste it to another application. This should work properly with and without this patch.
  77333. 4) Exit the application completely.
  77334. 5) Paste:
  77335. Without this patch, you cannot because your clipboard is empty.
  77336. With this patch, pasting succeeds.
  77337. I have not included an automated test because of the difficulty of testing behaviour after application exit.
  77338. 2010-07-16 Kent Tamura <tkent@chromium.org>
  77339. Reviewed by Darin Fisher.
  77340. Keyboard operations for <input type=number>
  77341. https://bugs.webkit.org/show_bug.cgi?id=42076
  77342. - The up arrow key works as stepUp().
  77343. - The down arrow key works as stepDown().
  77344. - Reject characters other than + - 0-9 . e E
  77345. Test: fast/forms/input-number-keyoperation.html
  77346. * html/HTMLInputElement.cpp:
  77347. (WebCore::HTMLInputElement::defaultEventHandler):
  77348. Add up/down arrow keys support, and call handleBeforeTextInsertedEvent().
  77349. (WebCore::isNumberCharacter):
  77350. (WebCore::HTMLInputElement::handleBeforeTextInsertedEvent):
  77351. For type=number, remove unacceptable characters.
  77352. * html/HTMLInputElement.h:
  77353. 2010-07-16 Kent Tamura <tkent@chromium.org>
  77354. Reviewed by Darin Fisher.
  77355. Improve hover state handling for spin buttons
  77356. https://bugs.webkit.org/show_bug.cgi?id=42260
  77357. Background:
  77358. When we move the mouse cursor to a node from the outside of the node,
  77359. the following steps are executed.
  77360. 1. setHovered(true) is called.
  77361. 2. The node is repainted for the hover state.
  77362. 3. 'mousemove' event is dispatched for the node.
  77363. For a spin-button, RenderTheme::paint{Inner,Outer}SpinButton() is
  77364. called before the event handler of the spin-button. So we can't
  77365. detect which of the up part or the down part is hovered correctly.
  77366. Solution:
  77367. The hover state of a spin-button is one of three states;
  77368. Indeterminate, Up, and Down. The state is Indeterminate since
  77369. setHovered(true) is called and until 'mousemove' event is
  77370. dispatched.
  77371. No new tests because there are no implementation of spin-buttons
  77372. with hovered state yet.
  77373. * rendering/RenderTheme.cpp:
  77374. (WebCore::RenderTheme::isSpinUpButtonPartPressed):
  77375. (WebCore::RenderTheme::isHovered):
  77376. Return false if the node is a spin-button and the state is Indeterminate.
  77377. (WebCore::RenderTheme::isSpinUpButtonPartHovered):
  77378. * rendering/TextControlInnerElements.cpp:
  77379. (WebCore::SpinButtonElement::SpinButtonElement):
  77380. Initialize m_upDownState.
  77381. (WebCore::SpinButtonElement::defaultEventHandler):
  77382. (WebCore::SpinButtonElement::setHovered):
  77383. Set the state to Indeterminate.
  77384. * rendering/TextControlInnerElements.h:
  77385. (WebCore::SpinButtonElement::upDownState):
  77386. 2010-07-16 Dan Bernstein <mitz@apple.com>
  77387. Reviewed by Simon Fraser.
  77388. <rdar://problem/7527532> Crash beneath setSelection() during detach()
  77389. https://bugs.webkit.org/show_bug.cgi?id=42020
  77390. No test because I am unable to reproduce the crash.
  77391. * rendering/RenderView.cpp:
  77392. (WebCore::RenderView::setSelection): In the clearSelection() case, where the repaint mode is
  77393. RepaintNewMinusOld, avoid making RenderBlockSelectionInfo instances, and thereby avoid calling
  77394. localToAbsolute() during detach().
  77395. 2010-07-16 Anders Carlsson <andersca@apple.com>
  77396. Fix release build.
  77397. * storage/Database.cpp:
  77398. (WebCore::DerefContextTask::performTask):
  77399. 2010-07-16 Simon Fraser <simon.fraser@apple.com>
  77400. Reviewed by Sam Weinig.
  77401. Safari pegs CPU and drops frames on http://neography.com/experiment/circles/solarsystem/ (CSS animations)
  77402. https://bugs.webkit.org/show_bug.cgi?id=41409
  77403. AnimationController::isAnimatingPropertyOnRenderer() really asked whether an accelerated animation
  77404. or transition was running. This prevented us from falling into compositing layers for animation
  77405. on platforms, like Windows, that don't have accelerated animations.
  77406. Fix by making things more explicit: we now have two methods, isRunningAnimationOnRenderer()
  77407. and isRunningAcceleratedAnimationOnRenderer().
  77408. Changes are more extensive because I flipped the sense of 'm_fallbackAnimating', which is
  77409. now 'm_isAccelerated', for clarity.
  77410. Test: compositing/animation/animation-compositing.html
  77411. * page/animation/AnimationBase.cpp:
  77412. (WebCore::AnimationBase::AnimationBase): m_fallbackAnimating -> m_isAccelerated
  77413. (WebCore::AnimationBase::blendProperties): Ditto.
  77414. (WebCore::AnimationBase::updateStateMachine): Ditto.
  77415. * page/animation/AnimationBase.h:
  77416. (WebCore::AnimationBase::isAnimatingProperty): Takes new acceleratedOnly parameter
  77417. which causes the method to only return true if the animation is accelerated.
  77418. (WebCore::AnimationBase::isAccelerated): Changed from isFallbackAnimating.
  77419. * page/animation/AnimationController.cpp:
  77420. (WebCore::AnimationControllerPrivate::isRunningAnimationOnRenderer):
  77421. (WebCore::AnimationControllerPrivate::isRunningAcceleratedAnimationOnRenderer):
  77422. (WebCore::AnimationController::isRunningAnimationOnRenderer):
  77423. (WebCore::AnimationController::isRunningAcceleratedAnimationOnRenderer):
  77424. * page/animation/CompositeAnimation.h:
  77425. * page/animation/AnimationController.h: Rename isAnimatingPropertyOnRenderer(), add
  77426. isRunningAcceleratedAnimationOnRenderer().
  77427. * page/animation/AnimationControllerPrivate.h: Ditto.
  77428. * page/animation/CompositeAnimation.cpp:
  77429. (WebCore::CompositeAnimation::updateTransitions): !isFallbackAnimating() -> isAccelerated().
  77430. (WebCore::CompositeAnimation::isAnimatingProperty): Pass acceleratedOnly down.
  77431. * page/animation/ImplicitAnimation.cpp:
  77432. (WebCore::ImplicitAnimation::timeToNextService): !isFallbackAnimating() -> isAccelerated().
  77433. * page/animation/KeyframeAnimation.cpp:
  77434. (WebCore::KeyframeAnimation::timeToNextService): isFallbackAnimating() -> !isAccelerated().
  77435. * rendering/RenderLayerBacking.cpp:
  77436. (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): Avoid touching the transform or
  77437. opacity if an accelerated animation is running.
  77438. * rendering/RenderLayerCompositor.cpp:
  77439. (WebCore::RenderLayerCompositor::requiresCompositingForAnimation): Make compositing layers
  77440. if an animation of transform or opacity is running.
  77441. 2010-07-16 Simon Fraser <simon.fraser@apple.com>
  77442. Reviewed by Sam Weinig.
  77443. Assertion when turning Accelerated Compositing off on a composited page
  77444. https://bugs.webkit.org/show_bug.cgi?id=42408
  77445. When accelerated compositing is turned off, check m_hasAcceleratedCompositing
  77446. before saying that the root layer will be composited. Fixes an assertion.
  77447. * rendering/RenderLayerCompositor.cpp:
  77448. (WebCore::RenderLayerCompositor::computeCompositingRequirements):
  77449. 2010-07-16 Antonio Gomes <tonikitoo@webkit.org>
  77450. Reviewed by Simon Fraser.
  77451. Spatial navigation: do not consider outline for focusable element boundaries
  77452. https://bugs.webkit.org/show_bug.cgi?id=42474
  77453. Test: fast/events/spatial-navigation/snav-zero-margin-content.html
  77454. Currently in WebCore::renderRectRelativeToRootDocument function, we are calling
  77455. RenderObject::absoluteClippedOverflowRect to obtain the rect boundary of a given
  77456. renderer/element. This method deals with outline, which is out of elements boundary.
  77457. It makes spatial navigation to fail on common sites like google.gom: "Web, Images, Map, etc"
  77458. are inaccessible.
  77459. Patch replaces RenderObject::absoluteClippedOverflowRect by Node::getRect,
  77460. which returns only the absolute bounding box rect of the Element.
  77461. * page/SpatialNavigation.cpp:
  77462. (WebCore::renderRectRelativeToRootDocument):
  77463. (WebCore::checkNegativeCoordsForNode):
  77464. 2010-07-15 Antonio Gomes <tonikitoo@webkit.org>
  77465. Reviewed by Gustavo Noronha.
  77466. [Qt] Remove unnecessary WebKit headers inclusion from WebCore files
  77467. https://bugs.webkit.org/show_bug.cgi?id=42416
  77468. There are some places in WebCore unnecessarily including WebKit headers.
  77469. Cleaning up only, no testing needed.
  77470. * platform/network/qt/ResourceHandleQt.cpp:
  77471. * platform/qt/RenderThemeQt.cpp:
  77472. * platform/qt/WidgetQt.cpp:
  77473. 2010-07-16 Dan Bernstein <mitz@apple.com>
  77474. Reviewed by Anders Carlsson.
  77475. Refinement of r63556: moved the tab width computation back to Font, but added a
  77476. SimpleFontData parameter.
  77477. * platform/graphics/Font.h:
  77478. (WebCore::Font::tabWidth):
  77479. * platform/graphics/WidthIterator.cpp:
  77480. (WebCore::WidthIterator::advance):
  77481. * platform/graphics/mac/ComplexTextController.cpp:
  77482. (WebCore::ComplexTextController::adjustGlyphsAndAdvances):
  77483. 2010-07-16 Tony Gentilcore <tonyg@chromium.org>
  77484. Reviewed by Pavel Feldman.
  77485. Fix unit error in calculating timings from ResourceLoadTiming API
  77486. https://bugs.webkit.org/show_bug.cgi?id=42473
  77487. The start and end offsets are already in milliseconds so they should not be multiplied by 1000.0 like requestTime.
  77488. No new tests because, for a yet unknown reason, the ResourceLoadTiming API is not populated in the chromium test shell like it is in full chromium. This means the test that would have caught this bug (fast/dom/webtiming.html) currently has its expectation set to FAIL.
  77489. * page/Timing.cpp:
  77490. (WebCore::Timing::domainLookupStart):
  77491. (WebCore::Timing::domainLookupEnd):
  77492. (WebCore::Timing::connectStart):
  77493. (WebCore::Timing::connectEnd):
  77494. (WebCore::Timing::requestStart):
  77495. (WebCore::Timing::requestEnd):
  77496. (WebCore::Timing::responseStart):
  77497. 2010-07-16 Anders Carlsson <andersca@apple.com>
  77498. Reviewed by Sam Weinig.
  77499. clang++ build fixes for JavaScriptCore and WebCore
  77500. https://bugs.webkit.org/show_bug.cgi?id=42478
  77501. * platform/network/Credential.cpp:
  77502. (WebCore::Credential::type):
  77503. * platform/network/Credential.h:
  77504. Remove const qualifier on Credential::type since it doesn't have an effect on the type.
  77505. 2010-07-16 Anders Carlsson <andersca@apple.com>
  77506. Reviewed by David Levin.
  77507. Really add WARN_UNUSED_RESULT to leakRef
  77508. https://bugs.webkit.org/show_bug.cgi?id=42464
  77509. Get rid of a call to releaseRef here by passing the ScriptExecutionContext
  77510. reference through to the DerefContextTask.
  77511. * storage/Database.cpp:
  77512. (WebCore::DerefContextTask::create):
  77513. (WebCore::DerefContextTask::performTask):
  77514. (WebCore::DerefContextTask::DerefContextTask):
  77515. (WebCore::Database::~Database):
  77516. 2010-07-16 Ilya Tikhonovsky <loislo@chromium.org>
  77517. Reviewed by Yury Semikhatsky.
  77518. WebInspector: The current implementation of generator is not ready
  77519. for generation Backend part of Inspector interface. The full patch
  77520. with Backend is quite big and I've split it.
  77521. https://bugs.webkit.org/show_bug.cgi?id=42462
  77522. * inspector/CodeGeneratorInspector.pm:
  77523. * inspector/Inspector.idl:
  77524. * inspector/InspectorValues.cpp:
  77525. (WebCore::InspectorArray::get):
  77526. * inspector/InspectorValues.h:
  77527. (WebCore::InspectorArray::length):
  77528. 2010-07-15 Rob Buis <rwlbuis@gmail.com>
  77529. Reviewed by Darin Adler.
  77530. An empty value for xml:lang isn't considered
  77531. https://bugs.webkit.org/show_bug.cgi?id=42042
  77532. Allow :lang selector to match empty values for xml:lang and
  77533. lang attributes.
  77534. Test: fast/css/lang-selector-empty-attribute.xhtml
  77535. * css/CSSStyleSelector.cpp:
  77536. (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
  77537. 2010-07-16 Alexander Pavlov <apavlov@chromium.org>
  77538. Reviewed by Pavel Feldman.
  77539. Web Inspector: Shift-Enter does not do a reverse search. It searches forward.
  77540. https://bugs.webkit.org/show_bug.cgi?id=42459
  77541. * inspector/front-end/inspector.js:
  77542. (WebInspector.performSearch):
  77543. 2010-07-16 Pavel Feldman <pfeldman@chromium.org>
  77544. Reviewed by Yury Semikhatsky.
  77545. Web Inspector: do not include SSL time into Waiting time.
  77546. https://bugs.webkit.org/show_bug.cgi?id=42458
  77547. * inspector/front-end/ResourcesPanel.js:
  77548. (WebInspector.ResourcesPanel.prototype._showPopover):
  77549. 2010-07-16 Dan Bernstein <mitz@apple.com>
  77550. Reviewed by Anders Carlsson.
  77551. <rdar://problem/8198266> white-space: pre text containing tabs is not laid out correctly when the font lacks a space glyph
  77552. https://bugs.webkit.org/show_bug.cgi?id=42437
  77553. No test because none of the fonts available to DumpRenderTree are missing a space glyph.
  77554. Changed the tab width computation to use the width of the space glyph from the font that has
  77555. a space glyph, which may be a fallback font if the primary font lacks a space glyph.
  77556. * platform/graphics/Font.h: Removed Font::tabWidth().
  77557. * platform/graphics/WidthIterator.cpp:
  77558. (WebCore::WidthIterator::advance):
  77559. * platform/graphics/mac/ComplexTextController.cpp:
  77560. (WebCore::ComplexTextController::adjustGlyphsAndAdvances):
  77561. 2010-07-16 Yury Semikhatsky <yurys@chromium.org>
  77562. Unreviewed. Chromium build fix. Add missing include.
  77563. * inspector/ConsoleMessage.h:
  77564. 2010-07-16 Andreas Kling <andreas.kling@nokia.com>
  77565. Reviewed by Antonio Gomes.
  77566. [Qt] Path: Avoid creating a new GraphicsContext in strokeContains() and strokeBoundingRect()
  77567. https://bugs.webkit.org/show_bug.cgi?id=42456
  77568. * platform/graphics/qt/PathQt.cpp:
  77569. (WebCore::scratchContext): Added, provides a scratch GraphicsContext.
  77570. (WebCore::Path::strokeContains): Use the scratch context instead
  77571. of creating a new GraphicsContext.
  77572. (WebCore::Path::strokeBoundingRect): Ditto.
  77573. 2010-07-16 Pavel Podivilov <podivilov@chromium.org>
  77574. Reviewed by Yury Semikhatsky.
  77575. [V8] V8Proxy::retrieve may return null if javascript is disabled. Add a check
  77576. to avoid crashes in inspected page.
  77577. https://bugs.webkit.org/show_bug.cgi?id=42065
  77578. * bindings/v8/ScriptDebugServer.cpp:
  77579. (WebCore::ScriptDebugServer::addListener):
  77580. 2010-07-16 Pavel Feldman <pfeldman@chromium.org>
  77581. Reviewed by Yury Semikhatsky.
  77582. Web Inspector: add SSL time label into the resources popover.
  77583. https://bugs.webkit.org/show_bug.cgi?id=42458
  77584. * English.lproj/localizedStrings.js:
  77585. * inspector/InspectorResource.cpp:
  77586. (WebCore::InspectorResource::buildObjectForTiming):
  77587. * inspector/front-end/ResourcesPanel.js:
  77588. (WebInspector.ResourcesPanel.prototype._showPopover):
  77589. 2010-07-16 Pavel Feldman <pfeldman@chromium.org>
  77590. Reviewed by Yury Semikhatsky.
  77591. Web Inspector: disable AppCache in chromium.
  77592. https://bugs.webkit.org/show_bug.cgi?id=41858
  77593. * inspector/front-end/Settings.js:
  77594. * inspector/front-end/StoragePanel.js:
  77595. (WebInspector.StoragePanel):
  77596. (WebInspector.StoragePanel.prototype.reset):
  77597. (WebInspector.StoragePanel.prototype.addApplicationCache):
  77598. 2010-07-16 Yury Semikhatsky <yurys@chromium.org>
  77599. Reviewed by Pavel Feldman.
  77600. console.trace should show file and line number for each function in the stack
  77601. https://bugs.webkit.org/show_bug.cgi?id=21180
  77602. Test: inspector/console-trace.html
  77603. * bindings/js/ScriptCallStack.cpp:
  77604. (WebCore::ScriptCallStack::initialize):
  77605. * bindings/v8/ScriptCallFrame.cpp:
  77606. (WebCore::ScriptCallFrame::ScriptCallFrame):
  77607. * bindings/v8/ScriptCallFrame.h:
  77608. * bindings/v8/ScriptCallStack.cpp:
  77609. (WebCore::getFrameLocation):
  77610. (WebCore::toScriptCallFrame):
  77611. (WebCore::ScriptCallStack::create):
  77612. (WebCore::ScriptCallStack::ScriptCallStack):
  77613. (WebCore::ScriptCallStack::at):
  77614. (WebCore::ScriptCallStack::size):
  77615. * bindings/v8/ScriptCallStack.h:
  77616. * bindings/v8/custom/V8ConsoleCustom.cpp:
  77617. (WebCore::V8Console::traceCallback):
  77618. * inspector/ConsoleMessage.cpp:
  77619. (WebCore::ConsoleMessage::CallFrame::CallFrame):
  77620. (WebCore::ConsoleMessage::CallFrame::isEqual):
  77621. (WebCore::ConsoleMessage::CallFrame::createFrontendObject):
  77622. (WebCore::ConsoleMessage::ConsoleMessage):
  77623. (WebCore::ConsoleMessage::addToFrontend):
  77624. (WebCore::ConsoleMessage::isEqual):
  77625. * inspector/ConsoleMessage.h:
  77626. * inspector/front-end/ConsoleView.js:
  77627. (WebInspector.ConsoleMessage.prototype._formatMessage):
  77628. (WebInspector.ConsoleMessage.prototype._createStackTraceElement):
  77629. (WebInspector.ConsoleMessage.prototype._createSourceUrlLink):
  77630. * inspector/front-end/inspector.css:
  77631. (.console-message.expandable > .console-message-text::before):
  77632. (.console-message.expandable.collapsed > .console-message-text::before):
  77633. (.console-message.expandable.collapsed > ol.stack-trace):
  77634. (.console-message > ol.stack-trace):
  77635. (.console-message.repeated-message > ol.stack-trace):
  77636. (.console-message.repeated-message > ol.stack-trace.trace-message):
  77637. * page/Console.idl:
  77638. 2010-07-16 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  77639. Reviewed by Antonio Gomes.
  77640. [EFL] Build with MathML enabled. Fix build when MathML is enabled and
  77641. make it the default.
  77642. https://bugs.webkit.org/show_bug.cgi?id=42453
  77643. EFL port does not support automated tests, yet.
  77644. * CMakeLists.txt: add missing source file and sort.
  77645. 2010-07-16 Hans Wennborg <hans@chromium.org>
  77646. Reviewed by Steve Block.
  77647. DeviceOrientationEvent.h should not forward-declare DeviceOrientation
  77648. https://bugs.webkit.org/show_bug.cgi?id=42447
  77649. When destructing m_orientation, DeviceOrientation cannot be an incomplete type.
  77650. * dom/DeviceOrientationEvent.h:
  77651. 2010-07-16 Nikolas Zimmermann <nzimmermann@rim.com>
  77652. Reviewed by Dirk Schulze.
  77653. gradientTransform + objectBoundingBox is wrong
  77654. https://bugs.webkit.org/show_bug.cgi?id=42446
  77655. gradientTransform + gradientUnits="objectBoundingBox" is wrong. Reverse multiplication order of both transforms.
  77656. * rendering/RenderSVGResourceGradient.cpp: s/multiply/multLeft/
  77657. 2010-07-16 Mikhail Naganov <mnaganov@chromium.org>
  77658. Reviewed by Pavel Feldman.
  77659. Make JS memory stats available via 'Performance' object (Web Timing).
  77660. This statistics is populated only if 'WebKitMemoryInfoEnabled'
  77661. preference is set.
  77662. 'console.memory' is kept until Web Timing object becomes visible by
  77663. default (currently it is hidden under compile-time flag). These stats
  77664. are guarded with the same preference.
  77665. https://bugs.webkit.org/show_bug.cgi?id=41617
  77666. * bindings/js/JSConsoleCustom.cpp:
  77667. * bindings/v8/custom/V8ConsoleCustom.cpp:
  77668. * page/Console.cpp:
  77669. (WebCore::Console::disconnectFrame):
  77670. (WebCore::Console::memory):
  77671. * page/Console.h:
  77672. * page/Console.idl:
  77673. * page/MemoryInfo.cpp:
  77674. (WebCore::MemoryInfo::MemoryInfo):
  77675. * page/MemoryInfo.h:
  77676. (WebCore::MemoryInfo::create):
  77677. * page/Performance.cpp:
  77678. (WebCore::Performance::disconnectFrame):
  77679. (WebCore::Performance::memory):
  77680. * page/Performance.h:
  77681. * page/Performance.idl:
  77682. * page/Settings.cpp:
  77683. (WebCore::Settings::Settings):
  77684. * page/Settings.h:
  77685. (WebCore::Settings::setMemoryInfoEnabled):
  77686. (WebCore::Settings::memoryInfoEnabled):
  77687. 2010-07-16 Nikolas Zimmermann <nzimmermann@rim.com>
  77688. Reviewed by Dirk Schulze.
  77689. Convolution computation causes bad alpha channel values
  77690. https://bugs.webkit.org/show_bug.cgi?id=42273
  77691. Unbreak the convolve matrix filter, fixing svg/W3C-SVG-1.1/filters-conv-01-f.svg.
  77692. 1) Fix clamping the rgb values:
  77693. "image->set(pixel++, clampRGBAValue(totals[0], maxAlpha));" totals[0] -> totals[i].
  77694. 2) Don't apply the divisior divison and bias addition multiple times, accumulated!
  77695. * svg/graphics/filters/SVGFEConvolveMatrix.cpp:
  77696. (WebCore::setDestinationPixels): Fix two evil bugs, breaking feConvolveMatrix.
  77697. 2010-07-16 Nikolas Zimmermann <nzimmermann@rim.com>
  77698. Reviewed by Dirk Schulze.
  77699. relative positioning does not work for radialGradient after window resize
  77700. https://bugs.webkit.org/show_bug.cgi?id=41249
  77701. Redesign the way resources are invalidated. No longer utilize the DOM tree, specifically SVGStyledElement::svgAttributeChanged(), to invalidate
  77702. all resources in the ancestor chain (including itself) when any attribute changes. rect.setAttribute("foo", "bar") should never invalidate the
  77703. resources. Also the old approach didn't work correctly if the root layout changed (eg. window size change) - we failed to invalidate the resources,
  77704. thus leading to wrong renderings.
  77705. Instead of calling setNeedsLayout(true) from the SVG*Element classes, call RenderSVGResource::markForLayoutAndParentResourceInvalidation(), which
  77706. does the same thing and invalidates all resources in the ancestor chain (removing the cached results from the HashMaps). This only happens from
  77707. the various svgAttributeChanged() methods, if we know which attribute changed, and what action has to be taken.
  77708. All SVG renderers now invalidate their own resources on layout() if the layout changed (selfNeedsLayout()=true). The resources will be recreated
  77709. and cached during the following paint() call.
  77710. Tests: svg/custom/marker-child-changes-css.svg
  77711. svg/custom/relative-sized-content-with-resources.xhtml
  77712. * rendering/RenderForeignObject.cpp:
  77713. (WebCore::RenderForeignObject::layout): If our layout changed, invalidate our resources, by calling RenderSVGResource::invalidateAllResourcesOfRenderer().
  77714. * rendering/RenderPath.cpp:
  77715. (WebCore::RenderPath::layout): Ditto.
  77716. * rendering/RenderSVGContainer.cpp:
  77717. (WebCore::RenderSVGContainer::layout): Ditto.
  77718. * rendering/RenderSVGImage.cpp:
  77719. (WebCore::RenderSVGImage::layout): Ditto.
  77720. * rendering/RenderSVGModelObject.cpp:
  77721. (WebCore::RenderSVGModelObject::styleDidChange): Added, to invalidate resources on CSS changes, covered by new svg/custom/marker-child-changes-css.svg test.
  77722. * rendering/RenderSVGModelObject.h:
  77723. * rendering/RenderSVGResource.cpp:
  77724. (WebCore::RenderSVGResource::markForLayoutAndResourceInvalidation): Add new "needsBoundaries" parameter, calling setNeedsBoundaries() on the target render object,
  77725. simplifying all RenderSVGResource* code.
  77726. (WebCore::RenderSVGResource::markForLayoutAndParentResourceInvalidation): New static method used from DOM tree to invalidate all cached resources in the ancestor chain
  77727. for a render object. Also marks the renderer for layout, if needed.
  77728. * rendering/RenderSVGResource.h:
  77729. * rendering/RenderSVGResourceClipper.cpp: Simplify code, remove no longer needed hacks, as invalidation is now carried out by render tree.
  77730. (WebCore::RenderSVGResourceClipper::RenderSVGResourceClipper): Add m_invalidationBlocked hack, to avoid invalidations, while we're mutating the render styles (which is a hack!).
  77731. (WebCore::RenderSVGResourceClipper::invalidateClients): Don't do anything if m_invalidationBlocked=true.
  77732. (WebCore::RenderSVGResourceClipper::invalidateClient): Ditto.
  77733. (WebCore::RenderSVGResourceClipper::createClipData): Set m_invalidationBlocked before mutating render styles, as they are restored immediately after creating the clip image.
  77734. (WebCore::RenderSVGResourceClipper::resourceBoundingBox): Remove no longer needed hack to initialize ClipperData earlier than applyResource() would do.
  77735. * rendering/RenderSVGResourceClipper.h:
  77736. * rendering/RenderSVGResourceFilter.cpp:
  77737. (WebCore::RenderSVGResourceFilter::invalidateClients): Simplify code using markForLayoutAndResourceInvalidation.
  77738. (WebCore::RenderSVGResourceFilter::invalidateClient): Remove wrong assertion.
  77739. * rendering/RenderSVGResourceGradient.cpp:
  77740. (WebCore::RenderSVGResourceGradient::invalidateClients): Simplify code using markForLayoutAndResourceInvalidation.
  77741. (WebCore::RenderSVGResourceGradient::invalidateClient): Remove wrong assertion.
  77742. * rendering/RenderSVGResourceMarker.cpp:
  77743. (WebCore::RenderSVGResourceMarker::invalidateClients): Simplify code using markForLayoutAndResourceInvalidation.
  77744. (WebCore::RenderSVGResourceMarker::invalidateClient): Remove wrong assertion.
  77745. * rendering/RenderSVGResourceMasker.cpp:
  77746. (WebCore::RenderSVGResourceMasker::invalidateClients): Simplify code using markForLayoutAndResourceInvalidation.
  77747. (WebCore::RenderSVGResourceMasker::invalidateClient): Remove wrong assertion.
  77748. (WebCore::RenderSVGResourceMasker::resourceBoundingBox): Remove no longer needed hack to initializer MaskerData earlier than applyResource() would do.
  77749. * rendering/RenderSVGResourcePattern.cpp:
  77750. (WebCore::RenderSVGResourcePattern::invalidateClients): Simplify code using markForLayoutAndResourceInvalidation.
  77751. (WebCore::RenderSVGResourcePattern::invalidateClient): Remove wrong assertion.
  77752. * rendering/RenderSVGText.cpp:
  77753. (WebCore::RenderSVGText::layout): If our layout changed, invalidate our resources, by calling RenderSVGResource::invalidateAllResourcesOfRenderer().
  77754. * svg/SVGAnimateMotionElement.cpp:
  77755. (WebCore::SVGAnimateMotionElement::applyResultsToTarget): Call RenderSVGResource::markForLayoutAndParentResourceInvalidation(renderer) instead of renderer->setNeedsLayout(true).
  77756. * svg/SVGAnimateTransformElement.cpp:
  77757. (WebCore::SVGAnimateTransformElement::applyResultsToTarget): Ditto.
  77758. * svg/SVGCircleElement.cpp:
  77759. (WebCore::SVGCircleElement::svgAttributeChanged): Ditto.
  77760. * svg/SVGEllipseElement.cpp:
  77761. (WebCore::SVGEllipseElement::svgAttributeChanged): Ditto.
  77762. * svg/SVGFEImageElement.cpp:
  77763. (WebCore::SVGFEImageElement::notifyFinished): Ditto.
  77764. * svg/SVGForeignObjectElement.cpp:
  77765. (WebCore::SVGForeignObjectElement::svgAttributeChanged): Ditto.
  77766. * svg/SVGGElement.cpp:
  77767. (WebCore::SVGGElement::svgAttributeChanged): Ditto.
  77768. * svg/SVGImageElement.cpp:
  77769. (WebCore::SVGImageElement::svgAttributeChanged): Ditto.
  77770. * svg/SVGLineElement.cpp:
  77771. (WebCore::SVGLineElement::svgAttributeChanged): Ditto.
  77772. * svg/SVGPathElement.cpp:
  77773. (WebCore::SVGPathElement::svgAttributeChanged): Ditto.
  77774. * svg/SVGPolyElement.cpp:
  77775. (WebCore::SVGPolyElement::svgAttributeChanged): Ditto.
  77776. * svg/SVGRectElement.cpp:
  77777. (WebCore::SVGRectElement::svgAttributeChanged): Ditto.
  77778. * svg/SVGSVGElement.cpp:
  77779. (WebCore::SVGSVGElement::setCurrentScale): Ditto.
  77780. (WebCore::SVGSVGElement::svgAttributeChanged): Ditto.
  77781. (WebCore::SVGSVGElement::inheritViewAttributes): Ditto.
  77782. * svg/SVGStopElement.cpp:
  77783. (WebCore::SVGStopElement::SVGStopElement): Changed m_offset initialization from 0.0f to 0.
  77784. (WebCore::SVGStopElement::svgAttributeChanged): Add missing implementation, calling RenderSVGResource::markForLayoutAndParentResourceInvalidation(renderer) on offsetAttr changes.
  77785. * svg/SVGStopElement.h:
  77786. * svg/SVGStyledElement.cpp:
  77787. (WebCore::SVGStyledElement::svgAttributeChanged): Don't call invalidateResourceInAncestorChain() on every attribute change, do it in all classes inheriting from us,
  77788. for specific attributes. Also stop calling RenderSVGResource::invalidateAllResourcesOfRenderer(), all handled in the render tree now.
  77789. (WebCore::SVGStyledElement::invalidateResourceClients): Early exit, if document is still parsing.
  77790. * svg/SVGStyledElement.h:
  77791. * svg/SVGTRefElement.cpp:
  77792. (WebCore::SVGTRefElement::svgAttributeChanged): Call RenderSVGResource::markForLayoutAndParentResourceInvalidation(renderer) instead of renderer->setNeedsLayout(true).
  77793. * svg/SVGTextElement.cpp:
  77794. (WebCore::SVGTextElement::svgAttributeChanged): Ditto.
  77795. * svg/SVGTextPathElement.cpp:
  77796. (WebCore::SVGTextPathElement::svgAttributeChanged): Ditto.
  77797. * svg/SVGTextPositioningElement.cpp:
  77798. (WebCore::SVGTextPositioningElement::svgAttributeChanged): Ditto.
  77799. * svg/SVGUseElement.cpp:
  77800. (WebCore::SVGUseElement::svgAttributeChanged): Ditto.
  77801. (WebCore::SVGUseElement::updateContainerSizes): Ditto.
  77802. (WebCore::SVGUseElement::updateContainerOffsets): Ditto.
  77803. 2010-07-16 Cosmin Truta <ctruta@chromium.org>
  77804. Reviewed by Eric Seidel.
  77805. Some SVGs with empty <g> elements crash Chromium on Linux
  77806. https://bugs.webkit.org/show_bug.cgi?id=41175
  77807. Avoid painting of zero-sized image buffers. Skia can't handle it.
  77808. Test: svg/filters/filter-empty-g.svg
  77809. * WebCore/platform/graphics/skia/ImageBufferSkia.cpp:
  77810. (ImageBuffer::ImageBuffer):
  77811. 2010-07-16 Nate Chapin <japhet@chromium.org>
  77812. Reviewed by Darin Fisher.
  77813. Regression in r63100: Don't clear m_loadType in
  77814. FrameLoader::handledOnloadEvents, as it is used
  77815. to make some decisions after the load has actually
  77816. completed.
  77817. Tickling this bug requires manipulation
  77818. via the API (layout tests don't appear to traverse
  77819. the correct codepath), so no layout test.
  77820. https://bugs.webkit.org/show_bug.cgi?id=42298
  77821. * loader/FrameLoader.cpp:
  77822. (WebCore::FrameLoader::handledOnloadEvents): Don't reset m_loadType.
  77823. (WebCore::FrameLoader::addExtraFieldsToRequest): Set subresource cache
  77824. policy in one place and don't depend on m_loadType.
  77825. 2010-07-15 Shinichiro Hamaji <hamaji@chromium.org>
  77826. Reviewed by Darin Adler.
  77827. Printing test results differ between machines, we should use ImageDiff instead
  77828. https://bugs.webkit.org/show_bug.cgi?id=20011
  77829. Added spoolAllPagesWithBoundaries into PrintContext.
  77830. Test: printing/setPrinting.html
  77831. * WebCore.base.exp:
  77832. * page/PrintContext.cpp:
  77833. (WebCore::PrintContext::spoolAllPagesWithBoundaries):
  77834. * page/PrintContext.h:
  77835. 2010-07-15 Kent Tamura <tkent@chromium.org>
  77836. Unreviewed, small style fixes.
  77837. * platform/chromium/ThemeChromiumMac.mm:
  77838. (WebCore::ThemeChromiumMac::inflateControlPaintRect):
  77839. * platform/mac/ThemeMac.mm:
  77840. (WebCore::ThemeMac::inflateControlPaintRect):
  77841. 2010-07-15 Adam Barth <abarth@webkit.org>
  77842. Reviewed by Eric Seidel.
  77843. Update LegacyHTMLTreeBuilder to insert whitespace between </head> and <body>
  77844. https://bugs.webkit.org/show_bug.cgi?id=42431
  77845. Insert these whitespace text nodes into the HTML element between <head>
  77846. and <body>, as required by HTML5. Previously, we just dropped them on
  77847. the floor.
  77848. * html/LegacyHTMLTreeBuilder.cpp:
  77849. (WebCore::LegacyHTMLTreeBuilder::handleError):
  77850. 2010-07-15 Victor Wang <victorw@chromium.org>
  77851. Reviewed by David Levin.
  77852. [chromium] update KURLGoogle decodeURLEscapeSequences to
  77853. use googleurl public api so it does not access functions in
  77854. url_canon_internal. This is for chromium multi-dll build.
  77855. https://bugs.webkit.org/show_bug.cgi?id=42177
  77856. Test: (unittest) WebKit\chromium\tests\KURLTest.cpp
  77857. * platform/KURLGoogle.cpp:
  77858. (WebCore::decodeURLEscapeSequences):
  77859. 2010-07-15 Kent Tamura <tkent@chromium.org>
  77860. Reviewed by Eric Seidel.
  77861. [Chromium] Update ThemeChromiumMac.mm for the recent changes of ThemeMac.mm
  77862. https://bugs.webkit.org/show_bug.cgi?id=41932
  77863. Sync with ThemeMac.mm r61760.
  77864. This change doesn't contain r54299, r57603, r57734, r57741, and
  77865. r58533 because they conflict with Chromium change for
  77866. FlippedView().
  77867. * platform/chromium/ThemeChromiumMac.mm:
  77868. (WebCore::sizeFromNSControlSize):
  77869. (WebCore::sizeFromFont):
  77870. (WebCore::controlSizeFromPixelSize):
  77871. (WebCore::setControlSize):
  77872. (WebCore::convertControlStatesToThemeDrawState):
  77873. (WebCore::stepperSizes):
  77874. (WebCore::stepperControlSizeForFont):
  77875. (WebCore::paintStepper):
  77876. (WebCore::ThemeChromiumMac::controlSize):
  77877. (WebCore::ThemeChromiumMac::minimumControlSize):
  77878. (WebCore::ThemeChromiumMac::inflateControlPaintRect):
  77879. (WebCore::ThemeChromiumMac::paint):
  77880. 2010-07-15 MORITA Hajime <morrita@google.com>
  77881. Reviewed by David Levin.
  77882. [Chromium][Win] Crashes with <keygen> with huge padding.
  77883. https://bugs.webkit.org/show_bug.cgi?id=41737
  77884. When we try to draw a large region, TransparencyWin can fail to
  77885. allocate a temporal buffer for composition. This change adds a
  77886. fallback path to ThemePainter to handle the buffer allocation
  77887. failure.
  77888. ThemePainter is no longer a subclass of TransparencyWin. It has
  77889. a TransparencyWin as a member.
  77890. Test: fast/forms/large-parts.html
  77891. * rendering/RenderThemeChromiumWin.cpp:
  77892. (WebCore::ThemePainter): Added a fallback path.
  77893. 2010-07-15 Yuzo Fujishima <yuzo@google.com>
  77894. Reviewed by Darin Adler.
  77895. Fix for Bug 42362 - CSSSegmentedFontFace::isLoaded() const is not used anywhere
  77896. Remove the method.
  77897. https://bugs.webkit.org/show_bug.cgi?id=42362
  77898. No new tests because of no behavior changes.
  77899. * css/CSSSegmentedFontFace.cpp:
  77900. * css/CSSSegmentedFontFace.h:
  77901. 2010-07-15 Erik Arvidsson <arv@chromium.org>
  77902. Reviewed by David Levin.
  77903. Add directional property enums to the switch in applyProperty
  77904. https://bugs.webkit.org/show_bug.cgi?id=42438
  77905. Build fix for chromium mac.
  77906. * css/CSSStyleSelector.cpp:
  77907. (WebCore::CSSStyleSelector::applyProperty):
  77908. 2010-07-13 Zhenyao Mo <zmo@google.com>
  77909. Reviewed by Nate Chapin.
  77910. bufferData and bufferSubData generate wrong error when null buffer is bound
  77911. https://bugs.webkit.org/show_bug.cgi?id=42125
  77912. * html/canvas/WebGLRenderingContext.cpp:
  77913. (WebCore::WebGLRenderingContext::bufferData): Call validateBufferDataParameters().
  77914. (WebCore::WebGLRenderingContext::bufferSubData): Ditto.
  77915. (WebCore::WebGLRenderingContext::validateBufferDataParameters): Parameters validation for buffer{Sub}Data().
  77916. * html/canvas/WebGLRenderingContext.h: Declare validateBufferDataParameters().
  77917. 2010-07-15 Jay Civelli <jcivelli@chromium.org>
  77918. Reviewed by David Levin.
  77919. [chromium] Making the popup label color visible when the item is
  77920. selected.
  77921. https://bugs.webkit.org/show_bug.cgi?id=42271
  77922. * platform/chromium/PopupMenuChromium.cpp:
  77923. (WebCore::PopupListBox::paintRow): paint the label text with a
  77924. different color when it is selected.
  77925. 2010-07-13 Zhenyao Mo <zmo@google.com>
  77926. Reviewed by Nate Chapin.
  77927. WebGL rendering results must be made available to Canvas.toDataURL and 2D drawImage
  77928. https://bugs.webkit.org/show_bug.cgi?id=34719
  77929. Tests: fast/canvas/webgl/canvas-test.html
  77930. fast/canvas/webgl/gl-pixelstorei.html
  77931. * html/HTMLCanvasElement.cpp:
  77932. (WebCore::HTMLCanvasElement::makeRenderingResultsAvailable): Paint the WebGL rendering results to canvas if it's 3d.
  77933. (WebCore::HTMLCanvasElement::toDataURL): Paint the WebGL rendering results to canvas if it's 3d.
  77934. * html/canvas/CanvasRenderingContext2D.cpp:
  77935. (WebCore::CanvasRenderingContext2D::drawImage): Paint the WebGL rendering results to canvas if it's 3d before drawing.
  77936. * html/canvas/WebGLRenderingContext.cpp:
  77937. (WebCore::WebGLRenderingContext::markContextChanged): Mark it always for canvas2d.drawImage purpose.
  77938. (WebCore::WebGLRenderingContext::paintRenderingResultsToCanvas): Paint the WebGL rendering results to canvas if it's dirty.
  77939. * html/canvas/WebGLRenderingContext.h: Declare paintRenderingResultsToCanvas().
  77940. * platform/graphics/GraphicsContext3D.h: Declare paintRenderingResultsToCanvas() & paintToCanvas().
  77941. * platform/graphics/cg/GraphicsContext3DCG.cpp:
  77942. (WebCore::GraphicsContext3D::paintToCanvas): Paint the rendered image pixels to the canvas.
  77943. * platform/graphics/mac/GraphicsContext3DMac.mm:
  77944. (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas): Implement paintRenderingResultsToCanvas().
  77945. * platform/graphics/qt/GraphicsContext3DQt.cpp:
  77946. (WebCore::GraphicsContext3D::beginPaint): Just call paintRenderingResultsToCanvas().
  77947. (WebCore::GraphicsContext3D::endPaint):
  77948. (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas): Implement paintRenderingResultsToCanvas().
  77949. 2010-07-15 Nico Weber <thakis@chromium.org>
  77950. Reviewed by Ojan Vafai.
  77951. chromium/skia: Fix canvas.toDataURL in the presence of transparency
  77952. https://bugs.webkit.org/show_bug.cgi?id=42214
  77953. The problem was that SkBitmaps contain premultiplied data, but pnglib
  77954. doesn't expect premultiplied data. Now, the encoder unpremultiplies
  77955. data before sending it to pnglib.
  77956. Patch partially by deanm.
  77957. Covered by fast/canvas/toDataURL-alpha.html.
  77958. * platform/image-encoders/skia/PNGImageEncoder.cpp:
  77959. (WebCore::preMultipliedBGRAtoRGBA):
  77960. (WebCore::encodeImpl):
  77961. (WebCore::PNGImageEncoder::encode):
  77962. 2010-07-15 Alex Nicolaou <anicolao@chromium.org>
  77963. Reviewed by Eric Seidel.
  77964. Convolution computation causes bad alpha channel values
  77965. https://bugs.webkit.org/show_bug.cgi?id=42273
  77966. Fixed by clamping colour channel values to the alpha value so that
  77967. r <= a, g <= a, and b <= a after the convolution is applied. See
  77968. the bug for why I believe the SVG specification needs to be updated.
  77969. Test must be drawn to crash. 100x100 green rectangle is used to
  77970. indicate pass to minimize the chance of regression.
  77971. Test: svg/custom/convolution-crash.svg
  77972. * platform/graphics/skia/SkiaUtils.cpp:
  77973. (WebCore::SkPMColorToColor):
  77974. * svg/graphics/filters/SVGFEConvolveMatrix.cpp:
  77975. (WebCore::clampRGBAValue):
  77976. (WebCore::setDestinationPixels):
  77977. (WebCore::FEConvolveMatrix::fastSetInteriorPixels):
  77978. (WebCore::FEConvolveMatrix::fastSetOuterPixels):
  77979. 2010-07-15 Dumitru Daniliuc <dumi@chromium.org>
  77980. Unreviewed, Chromium-specific changes that I forgot to make in r63278.
  77981. 1. DatabaseTrackerChromium::getMaxSizeForDatabase() is called on
  77982. the context thread by sync DBs.
  77983. 2. Forgot to change V8SQLTransactionSyncCustom to return the
  77984. result set when executeSql() is called.
  77985. * bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:
  77986. (WebCore::V8SQLTransactionSync::executeSqlCallback):
  77987. * storage/chromium/DatabaseTrackerChromium.cpp:
  77988. (WebCore::DatabaseTracker::getMaxSizeForDatabase):
  77989. 2010-07-15 Martin Robinson <mrobinson@igalia.com>
  77990. Reviewed by Oliver Hunt.
  77991. [GTK] Simplify the distribution step
  77992. https://bugs.webkit.org/show_bug.cgi?id=42414
  77993. No new tests as this is just a build change.
  77994. * GNUmakefile.am: Modify EXTRA_DIST directly and make sure the list
  77995. of files is sorted. Also handle distributing the IDL files from the
  77996. WebCore source tree.
  77997. 2010-07-15 Eric Seidel <eric@webkit.org>
  77998. Reviewed by Adam Barth.
  77999. LegacyHTMLTreeBuilder should insert an implicit <colgroup> before inserting <col> to match HTML5
  78000. https://bugs.webkit.org/show_bug.cgi?id=42346
  78001. This turned out to be an easy fix.
  78002. This is covered by lots of layout tests. I believe
  78003. all of the changed results to be progressions.
  78004. This change had no measurable effect on the parser benchmark.
  78005. * html/LegacyHTMLTreeBuilder.cpp:
  78006. (WebCore::LegacyHTMLTreeBuilder::colCreateErrorCheck):
  78007. (WebCore::LegacyHTMLTreeBuilder::getNode):
  78008. * html/LegacyHTMLTreeBuilder.h:
  78009. 2010-07-15 Sam Weinig <sam@webkit.org>
  78010. Reviewed by Oliver Hunt.
  78011. Patch for https://bugs.webkit.org/show_bug.cgi?id=42410
  78012. Many leaking DatasetDOMStringMaps seen on buildbot
  78013. * dom/NodeRareData.h:
  78014. (WebCore::NodeRareData::~NodeRareData): Add a virtual destructor so
  78015. that the ElementRareData's destructor will be called when this is deleted
  78016. from the Node's destructor.
  78017. 2010-07-15 Chris Fleizach <cfleizach@apple.com>
  78018. Reviewed by Darin Adler.
  78019. AX: Crash when table has empty thead tag
  78020. https://bugs.webkit.org/show_bug.cgi?id=42391
  78021. Test: accessibility/table-with-empty-thead-causes-crash.html
  78022. * accessibility/AccessibilityTableColumn.cpp:
  78023. (WebCore::AccessibilityTableColumn::headerObjectForSection):
  78024. 2010-07-15 Anders Carlsson <andersca@apple.com>
  78025. Reviewed by Sam Weinig.
  78026. Start loading plug-in streams
  78027. https://bugs.webkit.org/show_bug.cgi?id=42407
  78028. Export some ResourceRequestBase getters.
  78029. * WebCore.exp.in:
  78030. 2010-07-15 Kenneth Russell <kbr@google.com>
  78031. Reviewed by Nate Chapin.
  78032. Query of NUM_COMPRESSED_TEXTURE_FORMATS must be handled by WebGL
  78033. https://bugs.webkit.org/show_bug.cgi?id=42401
  78034. No new tests; covered by gl-get-calls.html.
  78035. * html/canvas/WebGLRenderingContext.cpp:
  78036. (WebCore::WebGLRenderingContext::getParameter):
  78037. - Return 0 for getParameter(NUM_COMPRESSED_TEXTURE_FORMATS).
  78038. 2010-07-07 John Gregg <johnnyg@google.com>
  78039. Reviewed by Jian Li.
  78040. Experimental directory upload feature.
  78041. https://bugs.webkit.org/show_bug.cgi?id=40872
  78042. This patch adds a new HTML attribute webkitdirectory which applies to
  78043. <input type="file"> tags and allows the user to specify a folder
  78044. which is recursively enumerated so that all the files in that folder
  78045. are added to the file list.
  78046. The files chosen in that way have a .webkitRelativePath attribute which contains
  78047. the relative path starting from the chosen folder. The relative path is
  78048. also appended to each item in the FormData when uploaded.
  78049. All the code is behind an ENABLE_DIRECTORY_UPLOAD flag.
  78050. Test: fast/forms/input-file-directory-upload.html
  78051. * html/Blob.cpp:
  78052. (WebCore::Blob::Blob):
  78053. * html/Blob.h:
  78054. * html/File.cpp:
  78055. (WebCore::File::File):
  78056. (WebCore::File::Init):
  78057. (WebCore::File::webkitRelativePath):
  78058. * html/File.h:
  78059. (WebCore::File::create):
  78060. * html/File.idl:
  78061. * html/HTMLAttributeNames.in: add webkitdirectory attribute
  78062. * html/HTMLInputElement.cpp:
  78063. (WebCore::HTMLInputElement::setFileListFromRenderer):
  78064. (WebCore::HTMLInputElement::webkitdirectory):
  78065. * html/HTMLInputElement.h:
  78066. * html/HTMLInputElement.idl:
  78067. * platform/BlobItem.cpp:
  78068. (WebCore::FileBlobItem::create):
  78069. (WebCore::FileBlobItem::FileBlobItem):
  78070. * platform/BlobItem.h:
  78071. (WebCore::FileBlobItem::relativePath):
  78072. * platform/FileChooser.h:
  78073. (WebCore::FileChooser::allowsDirectoryUpload):
  78074. * platform/network/FormData.cpp:
  78075. (WebCore::FormData::appendKeyValuePairItems):
  78076. * rendering/RenderFileUploadControl.cpp:
  78077. (WebCore::RenderFileUploadControl::allowsMultipleFiles):
  78078. (WebCore::RenderFileUploadControl::allowsDirectoryUpload):
  78079. * rendering/RenderFileUploadControl.h:
  78080. 2010-07-15 Simon Fraser <simon.fraser@apple.com>
  78081. Reviewed by Dan Bernstein.
  78082. Avoid creating huge compositing layers for elements that project outside the viewport
  78083. https://bugs.webkit.org/show_bug.cgi?id=42338
  78084. The logic that computed the bounds of compositing layers naively used the
  78085. union of the bounds of descendant, non-composited RenderLayers, without regard
  78086. to what is actually visible. This could result in huge layers for page with
  78087. elements are large negative offsets, or with large negative text-indent (both
  78088. common).
  78089. For elements without transforms on them or in their ancestor chain, and when
  78090. no 3d transforms or hardware-accelerated animations are used, can clip compositing
  78091. layers to the size of the document, or based on CSS overflow and clip.
  78092. Tests: compositing/geometry/limit-layer-bounds-clipping-ancestor.html
  78093. compositing/geometry/limit-layer-bounds-fixed-positioned.html
  78094. compositing/geometry/limit-layer-bounds-overflow-repaint.html
  78095. compositing/geometry/limit-layer-bounds-positioned-transition.html
  78096. compositing/geometry/limit-layer-bounds-positioned.html
  78097. compositing/geometry/limit-layer-bounds-transformed-overflow.html
  78098. compositing/geometry/limit-layer-bounds-transformed.html
  78099. * rendering/RenderLayerBacking.cpp:
  78100. (WebCore::enclosingOverflowClipAncestor): Walk up the RenderLayer tree
  78101. looking for an ancestor that has overflow, or to the root. Along the way, check for
  78102. transformed elements.
  78103. (WebCore::RenderLayerBacking::updateCompositedBounds): If we're in "consult
  78104. overlap" mode, and we don't have transforms, then constrain the bounds
  78105. of composited layers by the RenderView's layoutOverflowRect(), or by the
  78106. enclosing layer with overflow.
  78107. (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): If the offset from the renderer changes,
  78108. we need to repaint the layer.
  78109. 2010-07-15 Alex Nicolaou <anicolao@chromium.org>
  78110. Reviewed by Dirk Schulze.
  78111. https://bugs.webkit.org/show_bug.cgi?id=42228
  78112. SVG Masks were in the wrong colour space for non-CG graphics layers,
  78113. because for those cases ImageBuffer needs to be explicitly told to
  78114. convert the pixels. This change adds a test that demonstrates the
  78115. problem and the conversion call to make the mask LinearRGB.
  78116. Test: svg/custom/mask-colorspace.svg
  78117. * rendering/RenderSVGResourceMasker.cpp:
  78118. (WebCore::RenderSVGResourceMasker::createMaskImage):
  78119. 2010-07-15 Daniel Bates <dbates@rim.com>
  78120. Reviewed by Darin Adler.
  78121. [Mac] Implement LayoutTestController::markerTextForListItem()
  78122. https://bugs.webkit.org/show_bug.cgi?id=37929
  78123. Export symbols for WebCore::markerTextForListItem() and WebCore::toElement().
  78124. * WebCore.exp.in:
  78125. 2010-07-15 Andreas Kling <andreas.kling@nokia.com>
  78126. Rubber-stamped by Kenneth Rohde Christiansen.
  78127. [Qt] Remove an unused variable in BitmapImage::draw()
  78128. * platform/graphics/qt/ImageQt.cpp:
  78129. (WebCore::BitmapImage::draw): Remove selfSize.
  78130. 2010-07-15 Yury Semikhatsky <yurys@chromium.org>
  78131. Reviewed by Pavel Feldman.
  78132. Web Inspector: pass all parameters to WebInspector.addConsoleMessage as a single payload object
  78133. https://bugs.webkit.org/show_bug.cgi?id=42345
  78134. This refactoring is covered by existing console tests.
  78135. * bindings/js/ScriptArray.cpp:
  78136. (WebCore::ScriptArray::set):
  78137. * bindings/js/ScriptArray.h:
  78138. (WebCore::ScriptArray::ScriptArray):
  78139. (WebCore::ScriptArray::jsArray):
  78140. * bindings/v8/ScriptArray.cpp:
  78141. (WebCore::ScriptArray::set):
  78142. * bindings/v8/ScriptArray.h:
  78143. (WebCore::ScriptArray::ScriptArray):
  78144. (WebCore::ScriptArray::~ScriptArray):
  78145. * inspector/ConsoleMessage.cpp:
  78146. (WebCore::ConsoleMessage::addToFrontend):
  78147. * inspector/InspectorFrontend.cpp:
  78148. (WebCore::InspectorFrontend::addConsoleMessage):
  78149. * inspector/InspectorFrontend.h:
  78150. * inspector/front-end/ConsoleView.js:
  78151. (WebInspector.ConsoleView.prototype.updateMessageRepeatCount):
  78152. (WebInspector.ConsoleMessage):
  78153. (WebInspector.ConsoleMessage.createTextMessage):
  78154. (WebInspector.ConsoleCommandResult):
  78155. * inspector/front-end/ElementsPanel.js:
  78156. (WebInspector.ElementsPanel.prototype.generateStylesheet):
  78157. * inspector/front-end/InjectedScriptAccess.js:
  78158. (InjectedScriptAccess._installHandler.InjectedScriptAccess.prototype.methodName.myCallback):
  78159. (InjectedScriptAccess._installHandler.InjectedScriptAccess.prototype.methodName):
  78160. (InjectedScriptAccess._installHandler):
  78161. * inspector/front-end/Resource.js:
  78162. (WebInspector.Resource.prototype._checkWarning):
  78163. * inspector/front-end/inspector.js:
  78164. (WebInspector.updateConsoleMessageExpiredCount):
  78165. (WebInspector.addConsoleMessage):
  78166. (WebInspector.log.logMessage):
  78167. (WebInspector.log):
  78168. 2010-07-14 Tony Gentilcore <tonyg@chromium.org>
  78169. Reviewed by Darin Fisher.
  78170. Backfill DNS and connect times rather than exposing hard zeros
  78171. https://bugs.webkit.org/show_bug.cgi?id=42303
  78172. There are several cases where domain lookup is not performed and/or a new connection is not established. Previously in these cases, we exposed a "0" to the API. Now, we instead "backfill" with the most recent mark's time.
  78173. Also, previously, I was using the ResourceLoadTiming API incorrectly. Each mark is an integer representing offset in milliseconds from requestTime. So all values need to be added to requestTime.
  78174. No new test because existing test expectations are set to FAIL because disable disabled by default. The expected results of existings tests change as expected when enabled.
  78175. * page/Timing.cpp:
  78176. (WebCore::toIntegerMilliseconds): Move to file static instead of class static because it might generate more optimal code. Also, instead of converting negative doubles to zero, ASSERT that they are >= 0. This is because we no longer expose hard zeros for DNS and connect, so we want to be sure that the -1s returned by the API are properly handled.
  78177. (WebCore::Timing::domainLookupStart):
  78178. (WebCore::Timing::domainLookupEnd):
  78179. (WebCore::Timing::connectStart):
  78180. (WebCore::Timing::connectEnd):
  78181. (WebCore::Timing::requestStart):
  78182. (WebCore::Timing::requestEnd):
  78183. (WebCore::Timing::responseStart):
  78184. * page/Timing.h:
  78185. 2010-07-15 Pavel Feldman <pfeldman@chromium.org>
  78186. Reviewed by Yury Semikhatsky.
  78187. Web Inspector: differentiate between blocking and connecting timers.
  78188. https://bugs.webkit.org/show_bug.cgi?id=42372
  78189. * inspector/InspectorResource.cpp:
  78190. (WebCore::InspectorResource::InspectorResource):
  78191. (WebCore::InspectorResource::updateResponse):
  78192. (WebCore::InspectorResource::updateScriptObject):
  78193. (WebCore::InspectorResource::buildObjectForTiming):
  78194. * inspector/InspectorResource.h:
  78195. * inspector/front-end/Resource.js:
  78196. (WebInspector.Resource.prototype.get cached):
  78197. (WebInspector.Resource.prototype.set cached):
  78198. * inspector/front-end/ResourcesPanel.js:
  78199. (WebInspector.ResourcesPanel.prototype._showPopover):
  78200. (WebInspector.ResourceGraph):
  78201. (WebInspector.ResourceGraph.prototype.refresh):
  78202. (WebInspector.ResourceGraph.prototype._cachedChanged):
  78203. * inspector/front-end/inspector.js:
  78204. (WebInspector.updateResource):
  78205. * loader/FrameLoader.cpp:
  78206. (WebCore::FrameLoader::loadedResourceFromMemoryCache):
  78207. * loader/FrameLoader.h:
  78208. * platform/network/ResourceResponseBase.cpp:
  78209. (WebCore::ResourceResponseBase::ResourceResponseBase):
  78210. (WebCore::ResourceResponseBase::connectionReused):
  78211. (WebCore::ResourceResponseBase::setConnectionID):
  78212. * platform/network/ResourceResponseBase.h:
  78213. 2010-07-15 MORITA Hajime <morrita@google.com>
  78214. Text layout is wrong with a SVG Font that lacks <missing-glyph> element
  78215. https://bugs.webkit.org/show_bug.cgi?id=42352
  78216. floatWidthOfSubStringUsingSVGFont() calculated a wrong value for a
  78217. sub-run, and a fallback to system font triggers such a computation.
  78218. This change made floatWidthOfSubStringUsingSVGFont() to deal with
  78219. sub-runs.
  78220. Test: svg/custom/svg-fonts-without-missing-glyph.xhtml
  78221. * svg/SVGFont.cpp:
  78222. (WebCore::floatWidthOfSubStringUsingSVGFont):
  78223. 2010-07-15 Nikolas Zimmermann <nzimmermann@rim.com>
  78224. Reviewed by Dirk Schulze.
  78225. Cycle detection needs to include shadow tree
  78226. https://bugs.webkit.org/show_bug.cgi?id=42360
  78227. Search for cycles in shadow tree fragments as well. Extended the svg/custom/recursion-* tests. No more crashes in any of them.
  78228. * rendering/RenderSVGResourceContainer.h:
  78229. (WebCore::RenderSVGResourceContainer::containsCyclicReference):
  78230. * rendering/RenderSVGShadowTreeRootContainer.cpp: Implemented here, not inline, so that clients don't need to include SVGShadowTreeElements.h
  78231. (WebCore::RenderSVGShadowTreeRootContainer::rootElement): Expose helper function, that returns the shadow tree root element as Node*.
  78232. * rendering/RenderSVGShadowTreeRootContainer.h:
  78233. 2010-07-15 Nikolas Zimmermann <nzimmermann@rim.com>
  78234. Reviewed by Dirk Schulze.
  78235. clipPath is missing cycle detection
  78236. https://bugs.webkit.org/show_bug.cgi?id=42350
  78237. Detect cyclic clipper resources, and ignore them on rendering. Early exit in applyResource just like the pattern/mask resources do.
  78238. * rendering/RenderSVGResourceClipper.cpp:
  78239. (WebCore::RenderSVGResourceClipper::applyResource):
  78240. (WebCore::RenderSVGResourceClipper::hitTestClipContent):
  78241. (WebCore::RenderSVGResourceClipper::childElementReferencesResource):
  78242. * rendering/RenderSVGResourceClipper.h:
  78243. 2010-07-15 Mark Rowe <mrowe@apple.com>
  78244. Reviewed by Maciej Stachowiak.
  78245. Fix a leak of Vector instances seen on the build bot.
  78246. * rendering/RenderObject.cpp:
  78247. (WebCore::RenderObject::drawBoxSideFromPath): Don't unnecessarily heap allocate then leak the DashArray.
  78248. 2010-07-15 Mark Rowe <mrowe@apple.com>
  78249. Update the sorting in the Xcode project files.
  78250. * WebCore.xcodeproj/project.pbxproj:
  78251. 2010-07-15 Nikolas Zimmermann <nzimmermann@rim.com>
  78252. Reviewed by Eric Seidel.
  78253. SVG patterns and masks should not be able to reference themselves
  78254. https://bugs.webkit.org/show_bug.cgi?id=32171
  78255. Pattern still had an issue, when using constructs like:
  78256. <pattern id="pattern1" xlink:href="#pattern2"/>
  78257. <pattern id="pattern2"><rect fill="url(#pattern1)"/></pattern>
  78258. Extended test svg/custom/recursive-pattern.svg to cover this situation.
  78259. * rendering/RenderSVGResourcePattern.cpp:
  78260. (WebCore::RenderSVGResourcePattern::applyResource): Don't perform the cycle check against node()...
  78261. (WebCore::RenderSVGResourcePattern::createTileImage): .. but against the "patternContentElement" which respect the xlink:href chaining.
  78262. 2010-07-15 Nikolas Zimmermann <nzimmermann@rim.com>
  78263. Reviewed by Adam Barth.
  78264. Pixel test failure in moving-shadow-on-path.html and moving-shadow-on-container.html
  78265. https://bugs.webkit.org/show_bug.cgi?id=42249
  78266. Partly revert <http://trac.webkit.org/changeset/63307>. The RenderSVGRoot change caused a pixel test regression in two fast/repaint tests.
  78267. * rendering/RenderSVGRoot.cpp:
  78268. (WebCore::RenderSVGRoot::layout): Include selfNeedsLayout() check in LayoutStateRepainter argument.
  78269. 2010-07-14 Sheriff Bot <webkit.review.bot@gmail.com>
  78270. Unreviewed, rolling out r63352.
  78271. http://trac.webkit.org/changeset/63352
  78272. https://bugs.webkit.org/show_bug.cgi?id=42341
  78273. Broke plugin-initiate-popup-window.html and plugin-javascript-
  78274. access.html on snow leopard (Requested by abarth on #webkit).
  78275. * bindings/v8/NPV8Object.cpp:
  78276. (_NPN_EvaluateHelper):
  78277. 2010-07-14 Eric Seidel <eric@webkit.org>
  78278. Reviewed by Adam Barth.
  78279. Make the LegacyHTMLTreeBuilder coalesce text nodes
  78280. https://bugs.webkit.org/show_bug.cgi?id=42314
  78281. This is slightly tricky as we're side-stepping the old
  78282. parsers insertion logic in the cases where we know we can
  78283. safely merge text into an existing text node instead of
  78284. inserting a new one.
  78285. This affects lots of tests (which will need to change for
  78286. the HTML5 TreeBuilder anyway) and causes the LegacyHTMLTreeBuilder
  78287. to now pass a bunch more subtests in html5lib/runner.html.
  78288. The parser benchmark thinks that this is a small speedup.
  78289. I think I happen to have been lucky enough to get the right
  78290. cache alignment, and that this is likely a wash.
  78291. * html/LegacyHTMLTreeBuilder.cpp:
  78292. (WebCore::LegacyHTMLTreeBuilder::parseToken):
  78293. 2010-07-14 Evan Stade <estade@chromium.org>
  78294. Reviewed by Kent Tamura.
  78295. [chromium] Linux scrollbar steppers are "clickable" even when disabled
  78296. https://bugs.webkit.org/show_bug.cgi?id=42231
  78297. Not tested by layout tests.
  78298. * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
  78299. (WebCore::ScrollbarThemeChromiumLinux::paintButton):
  78300. 2010-07-14 Sheriff Bot <webkit.review.bot@gmail.com>
  78301. Unreviewed, rolling out r63389.
  78302. http://trac.webkit.org/changeset/63389
  78303. https://bugs.webkit.org/show_bug.cgi?id=42311
  78304. It broke the Chromium Linux build. (Requested by dave_levin on
  78305. #webkit).
  78306. * platform/KURLGoogle.cpp:
  78307. (WebCore::decodeURLEscapeSequences):
  78308. 2010-07-13 Mirko Damiani <mirko@develer.com>
  78309. Reviewed by Simon Hausmann.
  78310. [Qt] CSS border style not cleared for SVG object
  78311. https://bugs.webkit.org/show_bug.cgi?id=42150
  78312. For tests and description see:
  78313. https://bugs.webkit.org/show_bug.cgi?id=25738
  78314. * platform/graphics/qt/GraphicsContextQt.cpp:
  78315. (WebCore::GraphicsContext::setLineDash):
  78316. 2010-07-14 Adam Barth <abarth@webkit.org>
  78317. Reviewed by Eric Seidel.
  78318. HTMLTreeBuilder shouldn't crash during fast/parser/remove-parser-current-node.html
  78319. https://bugs.webkit.org/show_bug.cgi?id=42312
  78320. We were crashing because of an ASSERT I added to the attach logic in
  78321. the HTMLConstructionSite. I knew this ASSERT was wrong when I added
  78322. it, I just wanted to make sure we had test coverage of those cases.
  78323. Turns out we do! :)
  78324. * html/HTMLConstructionSite.cpp:
  78325. (WebCore::HTMLConstructionSite::attach):
  78326. (WebCore::HTMLConstructionSite::attachAtSite):
  78327. 2010-07-14 Victor Wang <victorw@chromium.org>
  78328. Reviewed by Darin Fisher.
  78329. [chromium] update KURLGoogle decodeURLEscapeSequences to
  78330. use googleurl public api so it does not access functions in
  78331. url_canon_internal. This is for chromium multi-dll build.
  78332. https://bugs.webkit.org/show_bug.cgi?id=42177
  78333. Test: (unittest) WebKit\chromium\tests\KURLTest.cpp
  78334. * platform/KURLGoogle.cpp:
  78335. (WebCore::decodeURLEscapeSequences):
  78336. 2010-07-14 Adam Barth <abarth@webkit.org>
  78337. Reviewed by Eric Seidel.
  78338. Avoid extra memcpy of character tokens
  78339. https://bugs.webkit.org/show_bug.cgi?id=42002
  78340. Eric tells me this patch makes the new tree builder 1% faster than the
  78341. old tree builder on our parser benchmark.
  78342. * html/HTMLToken.h:
  78343. (WebCore::AtomicHTMLToken::AtomicHTMLToken):
  78344. (WebCore::AtomicHTMLToken::characters):
  78345. * html/HTMLTreeBuilder.cpp:
  78346. (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::ExternalCharacterTokenBuffer):
  78347. (WebCore::convertToOldStyle):
  78348. (WebCore::HTMLTreeBuilder::processFakeCharacters):
  78349. 2010-07-14 Eric Seidel <eric@webkit.org>
  78350. Reviewed by Adam Barth.
  78351. HTMLTreeBuilder foster parents when it should not
  78352. https://bugs.webkit.org/show_bug.cgi?id=42235
  78353. Regarding foster parenting of nodes inside tables:
  78354. "Process the token using the rules for the "in body" insertion mode,
  78355. except that if the current node is a table, tbody, tfoot, thead, or
  78356. tr element, then, whenever a node would be inserted into the current
  78357. node, it must instead be foster parented."
  78358. We were forgetting the "when the current node is" part of that check
  78359. and always foster parenting, even if we had just inserted another
  78360. element (which would have just changed the current node).
  78361. This was covered by multiple tests in html5lib/runner.html
  78362. but I wrote a reduction (one which I included) as it makes it
  78363. easier to see what's going on.
  78364. * html/HTMLConstructionSite.cpp:
  78365. (WebCore::HTMLNames::causesFosterParenting):
  78366. (WebCore::HTMLConstructionSite::attach):
  78367. (WebCore::HTMLConstructionSite::insertHTMLHtmlElement):
  78368. (WebCore::HTMLConstructionSite::insertHTMLHeadElement):
  78369. (WebCore::HTMLConstructionSite::insertHTMLBodyElement):
  78370. (WebCore::HTMLConstructionSite::insertTextNode):
  78371. (WebCore::HTMLConstructionSite::shouldFosterParent):
  78372. * html/HTMLConstructionSite.h:
  78373. * html/HTMLTreeBuilder.cpp:
  78374. (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
  78375. 2010-07-14 Brady Eidson <beidson@apple.com>
  78376. Reviewed by Mark Rowe.
  78377. <rdar://problem/8131355> Apps load stale versions of pages when initial load happens via back/forward navigation.
  78378. No test case is added because DumpRenderTree is not able to test the scenario where the initial load in a WebView
  78379. occurs via a back/forward navigation.
  78380. * loader/FrameLoader.cpp:
  78381. (WebCore::FrameLoader::navigateToDifferentDocument): When the first load in a page is a back/forward navigation, we
  78382. shouldn't try to prefer cached data but should do revalidation by default.
  78383. (WebCore::FrameLoader::addExtraFieldsToRequest): Ditto.
  78384. 2010-07-14 James Robinson <jamesr@chromium.org>
  78385. Reviewed by Darin Fisher.
  78386. Breaks all dependencies on Page from platform/ and cleans up GLES2Context lifetime
  78387. https://bugs.webkit.org/show_bug.cgi?id=42203
  78388. Rather than constructing a GLES2Context from a Page, pass the LayerRendererChromium
  78389. a GLES2Context in from the constructor. This way the platform/ directory can remain
  78390. ignorant of Page and friends. Also adds functions on ChromeClientChromium to request
  78391. onscreen and offscreen GLES2Contexts for callers in WebCore that need them.
  78392. * page/chromium/ChromeClientChromium.h:
  78393. * platform/chromium/GLES2Context.h:
  78394. * platform/graphics/chromium/LayerRendererChromium.cpp:
  78395. (WebCore::LayerRendererChromium::create):
  78396. (WebCore::LayerRendererChromium::LayerRendererChromium):
  78397. * platform/graphics/chromium/LayerRendererChromium.h:
  78398. 2010-07-14 Andreas Kling <andreas.kling@nokia.com>
  78399. Reviewed by Darin Adler.
  78400. Add functions to extract individual RGBA32 components
  78401. https://bugs.webkit.org/show_bug.cgi?id=42305
  78402. * html/canvas/CanvasRenderingContext2D.cpp:
  78403. (WebCore::CanvasRenderingContext2D::willDraw): Use alphaChannel()
  78404. * platform/graphics/Color.h:
  78405. (WebCore::redChannel):
  78406. (WebCore::greenChannel):
  78407. (WebCore::blueChannel):
  78408. (WebCore::alphaChannel):
  78409. (WebCore::Color::red):
  78410. (WebCore::Color::green):
  78411. (WebCore::Color::blue):
  78412. (WebCore::Color::alpha):
  78413. 2010-07-14 Alexey Proskuryakov <ap@apple.com>
  78414. Not reviewed.
  78415. https://bugs.webkit.org/show_bug.cgi?id=42201
  78416. Use ResourceHandle object for synchronous loading
  78417. * platform/network/mac/ResourceHandleMac.mm:
  78418. (WebCore::ResourceHandle::loadResourceSynchronously): Fix an obvious typo.
  78419. 2010-07-14 Alexey Proskuryakov <ap@apple.com>
  78420. Reviewed by Brady Eidson.
  78421. https://bugs.webkit.org/show_bug.cgi?id=42201
  78422. Use ResourceHandle object for synchronous loading
  78423. Fix a Tiger test failure.
  78424. Setting NSURLRequest properties has been moved to createNSURLConnection to share code between
  78425. sync and async cases, but on Tiger, we don't call this function.
  78426. There is more refactoring needed to make this nice, and we need to figure out if some of
  78427. request-tweaking code in createNSURLConnection needs to run on every redirect, as it happens
  78428. with CFNetwork version.
  78429. * platform/network/mac/ResourceHandleMac.mm:
  78430. (WebCore::ResourceHandle::loadResourceSynchronously): Set main document for cookies, which is
  78431. the only thing we've been missing.
  78432. 2010-07-14 Mark Rowe <mrowe@apple.com>
  78433. Rubber-stamped by Dan Bernstein.
  78434. * WebCore.xcodeproj/project.pbxproj: Silence rsync.
  78435. 2010-07-14 Darin Adler <darin@apple.com>
  78436. Reviewed by Gavin Barraclough.
  78437. Fix warning seen with newer gcc (on Qt buildbot).
  78438. * html/HTMLTreeBuilder.cpp:
  78439. (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
  78440. Add parentheses around && expression.
  78441. 2010-07-14 Adam Barth <abarth@webkit.org>
  78442. Reviewed by Eric Seidel.
  78443. Avoid extra memcpy of character tokens
  78444. https://bugs.webkit.org/show_bug.cgi?id=42002
  78445. This patch is just some cleanup to make fixing this bug easier.
  78446. * html/HTMLTreeBuilder.cpp:
  78447. (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::ExternalCharacterTokenBuffer):
  78448. (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::~ExternalCharacterTokenBuffer):
  78449. (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::isEmpty):
  78450. (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::skipLeadingWhitespace):
  78451. (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeLeadingWhitespace):
  78452. (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeRemaining):
  78453. (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::giveRemainingTo):
  78454. (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeRemainingWhitespace):
  78455. (WebCore::HTMLTreeBuilder::processDoctypeToken):
  78456. (WebCore::HTMLTreeBuilder::processStartTag):
  78457. (WebCore::HTMLTreeBuilder::processEndTag):
  78458. (WebCore::HTMLTreeBuilder::processComment):
  78459. (WebCore::HTMLTreeBuilder::processCharacter):
  78460. (WebCore::HTMLTreeBuilder::processCharacterBuffer):
  78461. (WebCore::HTMLTreeBuilder::processEndOfFile):
  78462. (WebCore::HTMLTreeBuilder::defaultForInitial):
  78463. (WebCore::HTMLTreeBuilder::defaultForBeforeHTML):
  78464. (WebCore::HTMLTreeBuilder::defaultForBeforeHead):
  78465. (WebCore::HTMLTreeBuilder::defaultForInHead):
  78466. (WebCore::HTMLTreeBuilder::defaultForInHeadNoscript):
  78467. (WebCore::HTMLTreeBuilder::defaultForAfterHead):
  78468. (WebCore::HTMLTreeBuilder::defaultForInTableText):
  78469. * html/HTMLTreeBuilder.h:
  78470. 2010-07-14 Andreas Kling <andreas.kling@nokia.com>
  78471. Reviewed by Darin Adler.
  78472. Canvas: Don't add shadow rect to dirty region when shadow alpha is 0
  78473. https://bugs.webkit.org/show_bug.cgi?id=42300
  78474. * html/canvas/CanvasRenderingContext2D.cpp:
  78475. (WebCore::CanvasRenderingContext2D::willDraw):
  78476. 2010-07-14 Kevin Ollivier <kevino@theolliviers.com>
  78477. [CURL] Build fix after request -> firstRequest rename.
  78478. * platform/network/curl/FormDataStreamCurl.cpp:
  78479. (WebCore::FormDataStream::read):
  78480. (WebCore::FormDataStream::hasMoreElements):
  78481. * platform/network/curl/ResourceHandleManager.cpp:
  78482. (WebCore::headerCallback):
  78483. (WebCore::ResourceHandleManager::setupPOST):
  78484. (WebCore::parseDataUrl):
  78485. (WebCore::ResourceHandleManager::dispatchSynchronousJob):
  78486. (WebCore::ResourceHandleManager::startJob):
  78487. (WebCore::ResourceHandleManager::initializeHandle):
  78488. 2010-07-14 Simon Fraser <simon.fraser@apple.com>
  78489. Reviewed by John Sullivan.
  78490. <rdar://problem/8186963> Expose information about compositing layers.
  78491. Expose information about the types of compositing layers via RenderLayerBacking::compositingLayerType().
  78492. * WebCore.exp.in: Export WebCore::SpaceSplitStringData::createVector().
  78493. * WebCore.xcodeproj/project.pbxproj: Make RenderLayerBacking.h a Private header for use by WebKit.
  78494. * platform/graphics/GraphicsLayer.h: Add hasContentsLayer() and usingTiledLayer() methods.
  78495. (WebCore::GraphicsLayer::hasContentsLayer):
  78496. (WebCore::GraphicsLayer::usingTiledLayer):
  78497. * platform/graphics/mac/GraphicsLayerCA.h:
  78498. (WebCore::GraphicsLayerCA::hasContentsLayer): Return true if we have a contents layer.
  78499. * rendering/RenderLayerBacking.cpp:
  78500. (WebCore::RenderLayerBacking::compositingLayerType): Return information about the type of composited layer.
  78501. * rendering/RenderLayerBacking.h:
  78502. 2010-07-14 Darin Adler <darin@apple.com>
  78503. Reviewed by Sam Weinig.
  78504. TreeWalker::previousSibling calls firstChild instead of lastChild when handling FILTER_SKIP
  78505. https://bugs.webkit.org/show_bug.cgi?id=42008
  78506. TreeWalker::previousNode does not handle FILTER_REJECT when processing lastChild
  78507. https://bugs.webkit.org/show_bug.cgi?id=42010
  78508. Tests: fast/dom/TreeWalker/previousNodeLastChildReject.html
  78509. fast/dom/TreeWalker/previousSiblingLastChildSkip.html
  78510. * dom/TreeWalker.cpp:
  78511. (WebCore::TreeWalker::previousSibling): Call lastChild instead of firstChild.
  78512. (WebCore::TreeWalker::previousNode): Fix handling of FILTER_REJECT by exiting
  78513. the lastChild loop when we encounter it.
  78514. 2010-07-14 Sam Weinig <sam@webkit.org>
  78515. Reviewed by Brady Eidson.
  78516. Fix crashing layout test on snowleopard.
  78517. * platform/mac/CursorMac.mm:
  78518. (WebCore::Cursor::ensurePlatformCursor): Make sure to retain the cursor.
  78519. 2010-07-14 Chris Fleizach <cfleizach@apple.com>
  78520. Reviewed by Darin Adler.
  78521. AX: aria-checked not recognized on image map radio buttons
  78522. https://bugs.webkit.org/show_bug.cgi?id=42055
  78523. Moves some code from AccessibilityRenderObject to AccessibilityObject so that
  78524. elements that do not have render objects, but do have Nodes (like image map links
  78525. and list box options) can still make use of certain aria attributes.
  78526. Test: platform/mac/accessibility/image-map-link-used-as-radiobutton.html
  78527. * accessibility/AccessibilityImageMapLink.cpp:
  78528. (WebCore::AccessibilityImageMapLink::roleValue):
  78529. (WebCore::AccessibilityImageMapLink::accessibilityDescription):
  78530. (WebCore::AccessibilityImageMapLink::title):
  78531. Make imageMap use standard AccessibilityObject methods for getAttribute()
  78532. * accessibility/AccessibilityImageMapLink.h:
  78533. (WebCore::AccessibilityImageMapLink::node):
  78534. * accessibility/AccessibilityListBoxOption.cpp:
  78535. (WebCore::AccessibilityListBoxOption::accessibilityIsIgnored):
  78536. (WebCore::AccessibilityListBoxOption::stringValue):
  78537. * accessibility/AccessibilityListBoxOption.h:
  78538. (WebCore::AccessibilityListBoxOption::node):
  78539. * accessibility/AccessibilityObject.cpp:
  78540. (WebCore::AccessibilityObject::language):
  78541. Language method doesn't need a node() anymore, it can use the node from AccessibilityObject.
  78542. (WebCore::renderListItemContainerForNode):
  78543. (WebCore::AccessibilityObject::getAttribute):
  78544. (WebCore::AccessibilityObject::intValue):
  78545. Move intValue into AccessibilityObject.
  78546. (WebCore::AccessibilityObject::hasIntValue):
  78547. * accessibility/AccessibilityObject.h:
  78548. (WebCore::AccessibilityObject::isCheckbox):
  78549. (WebCore::AccessibilityObject::isRadioButton):
  78550. (WebCore::AccessibilityObject::isCheckboxOrRadio):
  78551. Consolidate what defines a checkbox and radio button into AccessibilityObject.
  78552. (WebCore::AccessibilityObject::node):
  78553. (WebCore::AccessibilityObject::headingLevel):
  78554. (WebCore::AccessibilityObject::isDetached):
  78555. * accessibility/AccessibilityRenderObject.cpp:
  78556. (WebCore::AccessibilityRenderObject::isPasswordField):
  78557. (WebCore::AccessibilityRenderObject::headingLevel):
  78558. (WebCore::AccessibilityRenderObject::selectedTabItem):
  78559. (WebCore::AccessibilityRenderObject::hierarchicalLevel):
  78560. (WebCore::AccessibilityRenderObject::node):
  78561. (WebCore::AccessibilityRenderObject::intValue):
  78562. * accessibility/AccessibilityRenderObject.h:
  78563. * rendering/RenderMenuList.cpp:
  78564. (WebCore::RenderMenuList::itemAccessibilityText):
  78565. Stop using AccessibilityObjects getAttribute (no reason to use it really).
  78566. 2010-07-14 Dan Bernstein <mitz@apple.com>
  78567. Reviewed by Simon Fraser.
  78568. <rdar://problem/7759909> Certain text runs measure 1 pixel wider when measured as a whole than when measured piecewise
  78569. https://bugs.webkit.org/show_bug.cgi?id=42279
  78570. No test because the issue cannot be reproduced with standard fonts.
  78571. Word- and run-rounding works by advancing ahead to the nearest integral width. As the total
  78572. width accumulated becomes large, the float type’s low precision results in accumulated rounding
  78573. error, sometimes crossing an integer. Consequently, word-rounding makes different decisions when
  78574. measuring a multi-word run than when measuring its words individually. To work around this,
  78575. word- and run-rounding are applied only to the width accumulated since the last rounding
  78576. character.
  78577. * platform/graphics/WidthIterator.cpp:
  78578. (WebCore::WidthIterator::advance):
  78579. * platform/graphics/mac/ComplexTextController.cpp:
  78580. (WebCore::ComplexTextController::adjustGlyphsAndAdvances):
  78581. 2010-07-14 Tony Gentilcore <tonyg@chromium.org>
  78582. Reviewed by Darin Adler.
  78583. Fix enum value names for Navigation.{idl|h}
  78584. https://bugs.webkit.org/show_bug.cgi?id=42282
  78585. This is necessary after https://bugs.webkit.org/show_bug.cgi?id=42250.
  78586. No new tests because no new functionality.
  78587. * page/Navigation.cpp:
  78588. (WebCore::Navigation::type):
  78589. * page/Navigation.h:
  78590. (WebCore::Navigation::):
  78591. 2010-07-14 Johnny Ding <jnd@chromium.org>
  78592. Reviewed by Adam Barth.
  78593. https://bugs.webkit.org/show_bug.cgi?id=41292
  78594. Set right UserGestureIndicator to indicate whether the NPN_Evaluate allows popup window or not.
  78595. Test: plugins/plugin-initiate-popup-window.html
  78596. * bindings/v8/NPV8Object.cpp:
  78597. (_NPN_EvaluateHelper):
  78598. 2010-07-14 Chris Fleizach <cfleizach@apple.com>
  78599. Reviewed by Darin Adler.
  78600. Bug 42117 - AX: Data table heuristics: consider assuming data table for 'zebra-striped' rows
  78601. https://bugs.webkit.org/show_bug.cgi?id=42117
  78602. Test: platform/mac/accessibility/table-with-zebra-rows.html
  78603. * accessibility/AccessibilityTable.cpp:
  78604. (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
  78605. 2010-07-14 Chris Fleizach <cfleizach@apple.com>
  78606. Reviewed by Darin Adler.
  78607. AX: VoiceOver cannot navigate this page because Safari is taking too long
  78608. https://bugs.webkit.org/show_bug.cgi?id=42219
  78609. No tests. Existing tests cover change.
  78610. * accessibility/AccessibilityRenderObject.cpp:
  78611. (WebCore::AccessibilityRenderObject::boundingBoxRect):
  78612. 2010-07-14 Andreas Kling <andreas.kling@nokia.com>
  78613. Reviewed by Darin Adler.
  78614. Canvas: Fast-path for assigning the same color string as before to fillStyle or strokeStyle
  78615. https://bugs.webkit.org/show_bug.cgi?id=42272
  78616. Always route assignment of color strings via setFillColor() or setStrokeColor()
  78617. where we can check it against the previous value and return early if it's the same.
  78618. * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
  78619. (WebCore::toHTMLCanvasStyle):
  78620. (WebCore::JSCanvasRenderingContext2D::strokeStyle):
  78621. (WebCore::JSCanvasRenderingContext2D::setStrokeStyle):
  78622. (WebCore::JSCanvasRenderingContext2D::setFillStyle):
  78623. * html/canvas/CanvasRenderingContext2D.cpp:
  78624. (WebCore::CanvasRenderingContext2D::setStrokeStyle):
  78625. (WebCore::CanvasRenderingContext2D::setFillStyle):
  78626. (WebCore::CanvasRenderingContext2D::setStrokeColor):
  78627. (WebCore::CanvasRenderingContext2D::setFillColor):
  78628. * html/canvas/CanvasRenderingContext2D.h:
  78629. 2010-07-14 Kinuko Yasuda <kinuko@chromium.org>
  78630. Reviewed by Jian Li.
  78631. Separate line-ending conversion code from BlobItem
  78632. https://bugs.webkit.org/show_bug.cgi?id=40932
  78633. Add common line-ending normalization code under platform/text.
  78634. No new tests as it doesn't change any functionality.
  78635. * CMakeLists.txt:
  78636. * GNUmakefile.am:
  78637. * WebCore.gypi:
  78638. * WebCore.pro:
  78639. * WebCore.vcproj/WebCore.vcproj:
  78640. * WebCore.xcodeproj/project.pbxproj:
  78641. * html/BlobBuilder.cpp:
  78642. (WebCore::BlobBuilder::appendString):
  78643. * html/FormDataList.cpp:
  78644. (WebCore::FormDataList::appendString):
  78645. * platform/BlobItem.cpp:
  78646. * platform/BlobItem.h:
  78647. * platform/text/LineEnding.cpp: Added.
  78648. * platform/text/LineEnding.h: Added.
  78649. 2010-07-14 Erik Arvidsson <arv@chromium.org>
  78650. Reviewed by Darin Adler.
  78651. Implement border-start and border-end properties
  78652. https://bugs.webkit.org/show_bug.cgi?id=41782
  78653. Test: fast/css/border-start-end.html
  78654. * css/CSSComputedStyleDeclaration.cpp:
  78655. (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  78656. * css/CSSParser.cpp:
  78657. (WebCore::CSSParser::parseValue):
  78658. * css/CSSProperty.cpp:
  78659. (WebCore::CSSProperty::resolveDirectionAwareProperty):
  78660. * css/CSSPropertyNames.in:
  78661. * inspector/front-end/SourceCSSTokenizer.js:
  78662. (WebInspector.SourceCSSTokenizer):
  78663. 2010-07-14 Alexey Proskuryakov <ap@apple.com>
  78664. Tiger and Gtk build fixes.
  78665. https://bugs.webkit.org/show_bug.cgi?id=42201
  78666. Use ResourceHandle object for synchronous loading
  78667. * platform/network/mac/ResourceHandleMac.mm:
  78668. (WebCore::ResourceHandle::createNSURLConnection):
  78669. (WebCore::ResourceHandle::loadResourceSynchronously):
  78670. * platform/network/soup/ResourceHandleSoup.cpp:
  78671. (WebCore::startHttp):
  78672. 2010-07-14 Sam Weinig <sam@webkit.org>
  78673. Reviewed by Darin Adler.
  78674. Patch for https://bugs.webkit.org/show_bug.cgi?id=42232
  78675. Make changing Cursors work in WebKit2.
  78676. - Converted Mac and Windows Cursor implementations to lazily
  78677. create the platform cursor.
  78678. - Add HostWindow function to set the cursor and use it from Widget::setCursor.
  78679. - Rework Windows cursor code to use fewer global variables.
  78680. * WebCore.exp.in: Updated
  78681. * loader/EmptyClients.h:
  78682. (WebCore::EmptyChromeClient::setCursor):
  78683. (WebCore::EmptyChromeClient::setLastSetCursorToCurrentCursor):
  78684. Added empty implementations.
  78685. * page/Chrome.cpp:
  78686. (WebCore::Chrome::setCursor):
  78687. * page/Chrome.h:
  78688. * page/ChromeClient.h:
  78689. Change existing setCursor() function to take a Cursor instead of a
  78690. PlatformCursorHandle. Added setLastSetCursorToCurrentCursor.
  78691. * platform/Cursor.cpp:
  78692. * platform/Cursor.h:
  78693. Added Cursor Type and the option of lazily creating the native cursor
  78694. (used on Mac and Windows for now).
  78695. * platform/HostWindow.h:
  78696. Add setCursor.
  78697. * platform/mac/CursorMac.mm:
  78698. (WebCore::createCustomCursor): This no longer needs to call determineHotSpot
  78699. as that is done when on construction of the cursor now and the hotSpot passed
  78700. in is correct.
  78701. (WebCore::Cursor::ensurePlatformCursor):
  78702. (WebCore::Cursor::Cursor):
  78703. (WebCore::Cursor::~Cursor):
  78704. (WebCore::Cursor::operator=):
  78705. (WebCore::Cursor::platformCursor):
  78706. Convert to lazily creating the native cursor on the first request and
  78707. storing the type.
  78708. * platform/mac/WidgetMac.mm:
  78709. (WebCore::Widget::setCursor):
  78710. Use HostWindow::setCursor to set the cursor. This in turn will call the
  78711. ChromeClient.
  78712. * platform/win/CursorWin.cpp:
  78713. (WebCore::createSharedCursor):
  78714. (WebCore::loadSharedCursor):
  78715. (WebCore::loadCursorByName):
  78716. (WebCore::Cursor::ensurePlatformCursor):
  78717. (WebCore::SharedCursor::~SharedCursor):
  78718. (WebCore::Cursor::Cursor):
  78719. (WebCore::Cursor::~Cursor):
  78720. (WebCore::Cursor::operator=):
  78721. (WebCore::Cursor::platformCursor):
  78722. Convert to lazily creating the native cursor on the first request and
  78723. storing the type.
  78724. * platform/win/WidgetWin.cpp:
  78725. (WebCore::Widget::setCursor):
  78726. Use HostWindow::setCursor to set the cursor. This in turn will call the
  78727. ChromeClient.
  78728. * plugins/win/PluginViewWin.cpp:
  78729. (WebCore::PluginView::handleMouseEvent):
  78730. Use the new setLastSetCursorToCurrentCursor client function to ensure
  78731. the cursor is properly updated when over a plugin.
  78732. * platform/chromium/CursorChromium.cpp:
  78733. * platform/efl/CursorEfl.cpp:
  78734. * platform/gtk/CursorGtk.cpp:
  78735. * platform/haiku/CursorHaiku.cpp:
  78736. * platform/wince/CursorWince.cpp:
  78737. * platform/wx/CursorWx.cpp:
  78738. * platform/qt/CursorQt.cpp:
  78739. Change m_impl -> m_platformCursor.
  78740. 2010-07-13 Eric Seidel <eric@webkit.org>
  78741. Reviewed by Adam Barth.
  78742. reconstructActiveFormElements should reconstruct attributes as well
  78743. https://bugs.webkit.org/show_bug.cgi?id=42222
  78744. The case in question is "<p><b foo='bar'></p>text</b>".
  78745. When the "b" is re-opened to wrap the text it should include
  78746. any attributes from the original (now closed) tag name.
  78747. There are also similar cases for the Adoption Agency algorithm, but since
  78748. the html5lib test suite did not cover those (and it wasn't immediately
  78749. obvious to me how to test those) I've saved fixing that bug for a
  78750. later patch. For now I've just made the adoption agency use
  78751. HTMLConstructionSite::createHTMLElementFromElementRecord so the
  78752. FIXME can be in one place instead of two.
  78753. In order to cleanly support createHTMLElementFromSavedElement
  78754. I re-factored "attachToCurrent" out from createHTMLElementAndAttachToCurrent
  78755. and changed all callers to use attachToCurrent(createHTMLElement(token)).
  78756. This is covered by two existing tests in html5lib/runner.html
  78757. and I wrote two more. One to cover the basic case that we now pass
  78758. and a second to cover an evil edge case which we do not.
  78759. * html/HTMLConstructionSite.cpp:
  78760. (WebCore::HTMLConstructionSite::attachToCurrent):
  78761. (WebCore::HTMLConstructionSite::insertHTMLHtmlElement):
  78762. (WebCore::HTMLConstructionSite::insertHTMLHeadElement):
  78763. (WebCore::HTMLConstructionSite::insertHTMLBodyElement):
  78764. (WebCore::HTMLConstructionSite::insertHTMLElement):
  78765. (WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement):
  78766. (WebCore::HTMLConstructionSite::insertScriptElement):
  78767. (WebCore::HTMLConstructionSite::insertForeignElement):
  78768. (WebCore::HTMLConstructionSite::createHTMLElementFromElementRecord):
  78769. (WebCore::HTMLConstructionSite::createHTMLElementFromSavedElement):
  78770. (WebCore::HTMLConstructionSite::reconstructTheActiveFormattingElements):
  78771. * html/HTMLConstructionSite.h:
  78772. * html/HTMLTreeBuilder.cpp:
  78773. (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
  78774. 2010-07-13 Alexey Proskuryakov <ap@apple.com>
  78775. Reviewed by Darin Adler.
  78776. https://bugs.webkit.org/show_bug.cgi?id=42201
  78777. Use ResourceHandle object for synchronous loading
  78778. * platform/network/ResourceHandle.cpp:
  78779. (WebCore::ResourceHandle::ResourceHandle): Moved common tasks from create() to constructor.
  78780. (WebCore::ResourceHandle::firstRequest): Renamed from request(). This is not changed with
  78781. redirect, so the old name was quite confusing.
  78782. * platform/network/ResourceHandle.h: Made createNSURLConnection() a member function, since
  78783. it now needs access to both ResourceHandle and ResourceHandleInternal. Added createCFURLConnection().
  78784. * platform/network/ResourceHandleInternal.h:
  78785. (WebCore::ResourceHandleInternal::ResourceHandleInternal): Renamed m_request to m_firstRequest.
  78786. * platform/network/mac/ResourceHandleMac.mm:
  78787. (WebCoreSynchronousLoaderClient): Replaced an Objective C delegate class with a ResourceHandleClient
  78788. subclass. This allows for much better code sharing, with common logic is in ResourceHandle.
  78789. (WebCore::ResourceHandle::createNSURLConnection): Factored out more code that is common
  78790. between sync and async parts.
  78791. (WebCore::ResourceHandle::start): Ditto.
  78792. (WebCore::ResourceHandle::cancel): Updated for firstRequest() renaming.
  78793. (WebCore::ResourceHandle::loadResourceSynchronously): Use ResourceHandle and ResourceHandleClient,
  78794. like a good loader.
  78795. (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Updated for firstRequest() renaming.
  78796. (WebCore::ResourceHandle::receivedCredential): Ditto.
  78797. (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]): Ditto.
  78798. (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]): Ditto.
  78799. (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]): Ditto.
  78800. (-[WebCoreResourceHandleAsDelegate connection:didFailWithError:]): Ditto.
  78801. * platform/network/cf/ResourceHandleCFNet.cpp:
  78802. (WebCore::WebCoreSynchronousLoaderClient::create):
  78803. (WebCore::WebCoreSynchronousLoaderClient::setAllowStoredCredentials):
  78804. (WebCore::WebCoreSynchronousLoaderClient::isDone):
  78805. (WebCore::WebCoreSynchronousLoaderClient::data):
  78806. (WebCore::WebCoreSynchronousLoaderClient::WebCoreSynchronousLoaderClient):
  78807. (WebCore::willSendRequest):
  78808. (WebCore::didReceiveResponse):
  78809. (WebCore::didReceiveData):
  78810. (WebCore::shouldUseCredentialStorageCallback):
  78811. (WebCore::didFinishLoading):
  78812. (WebCore::didFail):
  78813. (WebCore::didReceiveChallenge):
  78814. (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
  78815. (WebCore::ResourceHandle::~ResourceHandle):
  78816. (WebCore::ResourceHandle::createCFURLConnection):
  78817. (WebCore::ResourceHandle::start):
  78818. (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
  78819. (WebCore::ResourceHandle::receivedCredential):
  78820. (WebCore::ResourceHandle::loadResourceSynchronously):
  78821. (WebCore::WebCoreSynchronousLoaderClient::willSendRequest):
  78822. (WebCore::WebCoreSynchronousLoaderClient::didReceiveResponse):
  78823. (WebCore::WebCoreSynchronousLoaderClient::didReceiveData):
  78824. (WebCore::WebCoreSynchronousLoaderClient::didFinishLoading):
  78825. (WebCore::WebCoreSynchronousLoaderClient::didFail):
  78826. (WebCore::WebCoreSynchronousLoaderClient::didReceiveAuthenticationChallenge):
  78827. (WebCore::WebCoreSynchronousLoaderClient::shouldUseCredentialStorage):
  78828. Same changes for CFNetwork version. Now it's a more direct copy/paste than before, some
  78829. day we'll share the code.
  78830. * loader/MainResourceLoader.cpp:
  78831. (WebCore::MainResourceLoader::continueAfterContentPolicy):
  78832. * loader/appcache/ApplicationCacheGroup.cpp:
  78833. (WebCore::ApplicationCacheGroup::createResourceHandle):
  78834. (WebCore::ApplicationCacheGroup::didReceiveResponse):
  78835. (WebCore::ApplicationCacheGroup::didFinishLoading):
  78836. (WebCore::ApplicationCacheGroup::didFail):
  78837. (WebCore::ApplicationCacheGroup::didReceiveManifestResponse):
  78838. * loader/icon/IconLoader.cpp:
  78839. (WebCore::IconLoader::didReceiveResponse):
  78840. (WebCore::IconLoader::didFail):
  78841. (WebCore::IconLoader::didFinishLoading):
  78842. * platform/network/curl/ResourceHandleManager.cpp:
  78843. (WebCore::headerCallback):
  78844. * platform/network/qt/QNetworkReplyHandler.cpp:
  78845. (WebCore::QNetworkReplyHandler::start):
  78846. * platform/network/qt/ResourceHandleQt.cpp:
  78847. (WebCore::ResourceHandle::start):
  78848. (WebCore::ResourceHandle::loadResourceSynchronously):
  78849. * platform/network/soup/ResourceHandleSoup.cpp:
  78850. (WebCore::startHttp):
  78851. Updated for request() -> firstRequest renaming.
  78852. 2010-07-14 Marcus Bulach <bulach@chromium.org>
  78853. Reviewed by Jeremy Orlow.
  78854. Code generator: ensure generated constants match their corresponding enums.
  78855. https://bugs.webkit.org/show_bug.cgi?id=42250
  78856. Specific interfaces can use DontCheckEnums attribute to avoid generating the compile-time check.
  78857. Tests: updated bindings tests. Generated code should compile.
  78858. * bindings/scripts/CodeGenerator.pm:
  78859. * bindings/scripts/CodeGeneratorJS.pm:
  78860. * bindings/scripts/CodeGeneratorV8.pm:
  78861. * bindings/scripts/test/CPP/WebDOMTestObj.h:
  78862. (WebDOMTestObj::):
  78863. * bindings/scripts/test/JS/JSTestObj.cpp:
  78864. (WebCore::):
  78865. (WebCore::JSTestObjPrototype::getOwnPropertySlot):
  78866. (WebCore::JSTestObjPrototype::getOwnPropertyDescriptor):
  78867. (WebCore::jsTestObjCONST_VALUE_0):
  78868. (WebCore::jsTestObjCONST_VALUE_1):
  78869. (WebCore::jsTestObjCONST_VALUE_2):
  78870. (WebCore::jsTestObjCONST_VALUE_4):
  78871. (WebCore::jsTestObjCONST_VALUE_8):
  78872. * bindings/scripts/test/JS/JSTestObj.h:
  78873. * bindings/scripts/test/ObjC/DOMTestObj.h:
  78874. * bindings/scripts/test/TestObj.idl:
  78875. * bindings/scripts/test/V8/V8TestObj.cpp:
  78876. (WebCore::):
  78877. (WebCore::ConfigureV8TestObjTemplate):
  78878. * css/WebKitCSSTransformValue.idl:
  78879. * dom/DOMCoreException.idl:
  78880. * dom/EventException.idl:
  78881. * dom/Node.idl:
  78882. * dom/OverflowEvent.idl:
  78883. * dom/RangeException.idl:
  78884. * html/FileError.idl:
  78885. * html/FileReader.idl:
  78886. * html/canvas/Float32Array.idl:
  78887. * html/canvas/Int16Array.idl:
  78888. * html/canvas/Int32Array.idl:
  78889. * html/canvas/Int8Array.idl:
  78890. * html/canvas/Uint16Array.idl:
  78891. * html/canvas/Uint32Array.idl:
  78892. * html/canvas/Uint8Array.idl:
  78893. * html/canvas/WebGLRenderingContext.idl:
  78894. * inspector/JavaScriptCallFrame.idl:
  78895. * loader/appcache/DOMApplicationCache.idl:
  78896. * storage/SQLException.idl:
  78897. * svg/SVGComponentTransferFunctionElement.idl:
  78898. * svg/SVGException.idl:
  78899. * svg/SVGFEBlendElement.idl:
  78900. * svg/SVGFEColorMatrixElement.idl:
  78901. * svg/SVGFECompositeElement.idl:
  78902. * svg/SVGFEConvolveMatrixElement.idl:
  78903. * svg/SVGFEDisplacementMapElement.idl:
  78904. * svg/SVGFEMorphologyElement.idl:
  78905. * svg/SVGFETurbulenceElement.idl:
  78906. * svg/SVGGradientElement.idl:
  78907. * xml/XMLHttpRequestException.idl:
  78908. * xml/XPathException.idl:
  78909. 2010-07-14 Andreas Kling <andreas.kling@nokia.com>
  78910. Reviewed by Ojan Vafai.
  78911. Unbreak fast/canvas/gradient-add-second-start-end-stop.html
  78912. Assigning the same CanvasGradient or CanvasPattern to fillStyle
  78913. or strokeStyle may not be a no-op since the object could have been
  78914. modified since it was last set.
  78915. Regressed with <http://trac.webkit.org/changeset/63327>
  78916. * html/canvas/CanvasStyle.cpp:
  78917. (WebCore::operator==):
  78918. 2010-07-14 Andreas Kling <andreas.kling@nokia.com>
  78919. Reviewed by Darin Adler.
  78920. Canvas: Make assigning the same fillStyle or strokeStyle a fast no-op
  78921. https://bugs.webkit.org/show_bug.cgi?id=42267
  78922. Avoid calling into GraphicsContext when setting a style to its current value.
  78923. * html/canvas/CanvasRenderingContext2D.cpp:
  78924. (WebCore::CanvasRenderingContext2D::setStrokeStyle): Return early if the
  78925. new style is the same as the current one.
  78926. (WebCore::CanvasRenderingContext2D::setFillStyle): Same.
  78927. * html/canvas/CanvasStyle.cpp:
  78928. (WebCore::operator==): Added operator==(CanvasStyle, CanvasStyle)
  78929. * html/canvas/CanvasStyle.h:
  78930. 2010-07-14 Tony Gentilcore <tonyg@chromium.org>
  78931. Reviewed by Darin Fisher.
  78932. Implement Web Timing redirectStart, redirectEnd, redirectCount
  78933. https://bugs.webkit.org/show_bug.cgi?id=42018
  78934. Tests: http/tests/misc/webtiming-one-redirect.php
  78935. http/tests/misc/webtiming-two-redirects.php
  78936. * loader/FrameLoaderTypes.h:
  78937. (WebCore::FrameLoadTimeline::FrameLoadTimeline):
  78938. * loader/MainResourceLoader.cpp:
  78939. (WebCore::MainResourceLoader::willSendRequest): This method is called for each request (including server redirects). fetchStart is updated to the current time on each invocation so that it represents fetching of the final document and doesn't include redirect time. For each redirect, redirectCount is incremented and redirectStart to redirectEnd measures the cumulative fetch time for all redirects.
  78940. * page/Navigation.cpp:
  78941. (WebCore::Navigation::redirectCount): http://dev.w3.org/2006/webapi/WebTiming/#nt-redirect-count
  78942. * page/Timing.cpp:
  78943. (WebCore::Timing::redirectStart): http://dev.w3.org/2006/webapi/WebTiming/#nt-redirect-start
  78944. (WebCore::Timing::redirectEnd): http://dev.w3.org/2006/webapi/WebTiming/#nt-redirect-end
  78945. * page/Timing.h:
  78946. * page/Timing.idl:
  78947. 2010-07-14 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  78948. Reviewed by Antonio Gomes.
  78949. Generate MathML files with CMake even if MathML is disabled. This
  78950. fixes EFL build after r63274.
  78951. https://bugs.webkit.org/show_bug.cgi?id=42263
  78952. No new functionality, so no new tests.
  78953. * CMakeLists.txt:
  78954. 2010-07-14 Martin Robinson <mrobinson@igalia.com>
  78955. Reviewed by Xan Lopez.
  78956. [GTK] Get rid of libWebCoreJS
  78957. https://bugs.webkit.org/show_bug.cgi?id=42083
  78958. Remove the need to build libWebCoreJS.
  78959. * GNUmakefile.am: List all auto-generated source files for libWebCoreJS
  78960. instead of relying on make to build libWebCoreJS. This is a more autotools-
  78961. -friendly approach.
  78962. 2010-07-14 Eric Carlson <eric.carlson@apple.com>
  78963. One more unreviewed build fix for r63319.
  78964. * html/TimeRanges.cpp:
  78965. (TimeRanges::nearest):
  78966. 2010-07-14 Alexander Pavlov <apavlov@chromium.org>
  78967. Reviewed by Pavel Feldman.
  78968. Web Inspector: Enable toggling of the "Inspect Element" mode from the browser
  78969. https://bugs.webkit.org/show_bug.cgi?id=42169
  78970. * inspector/front-end/ElementsPanel.js:
  78971. (WebInspector.ElementsPanel):
  78972. (WebInspector.ElementsPanel.prototype.handleShortcut):
  78973. (WebInspector.ElementsPanel.prototype.toggleSearchingForNode):
  78974. * inspector/front-end/inspector.js:
  78975. (WebInspector.toggleSearchingForNode):
  78976. 2010-07-14 Eric Carlson <eric.carlson@apple.com>
  78977. Unreviewed, build fix for r63319.
  78978. * html/TimeRanges.cpp:
  78979. (TimeRanges::nearest): Include math.h and use narrowPrecisionToFloat.
  78980. 2010-07-14 Eric Carlson <eric.carlson@apple.com>
  78981. Reviewed by Darin Adler.
  78982. Update media element's seeking logic
  78983. https://bugs.webkit.org/show_bug.cgi?id=42178
  78984. <rdar://problem/8185817>
  78985. * html/HTMLMediaElement.cpp:
  78986. (WebCore::HTMLMediaElement::seek): When asked to seek to an unbuffered time, seek to the
  78987. nearest time instead of generating an exception. Re-order the logic to match spec text.
  78988. * html/TimeRanges.cpp:
  78989. (TimeRanges::nearest): New, return the value closest to the specified time.
  78990. * html/TimeRanges.h:
  78991. 2010-07-14 Hans Wennborg <hans@chromium.org>
  78992. Reviewed by Steve Block.
  78993. Rename DeviceOrientationController::onOrientationChange to didChangeDeviceOrientation
  78994. https://bugs.webkit.org/show_bug.cgi?id=42257
  78995. According to convention, we should avoid "on" in favor of "did" in function names.
  78996. * dom/DeviceOrientationController.cpp:
  78997. (WebCore::DeviceOrientationController::didChangeDeviceOrientation):
  78998. * dom/DeviceOrientationController.h:
  78999. 2010-07-14 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  79000. Reviewed by Kent Tamura.
  79001. Notify browser about popup being deleted. In EFL and BREW ports, the
  79002. WebCore::Popup object was being deleted leaving the popup in browser
  79003. alive. Popups can be deleted in two ways: either from browser to webcore or
  79004. from webcore to browser. The first path was ok. The problem was when the
  79005. user changed the page with a popup still opened. This would trigger the
  79006. second path and would cause WebCore::Popup to be deleted without
  79007. notifying browser.
  79008. https://bugs.webkit.org/show_bug.cgi?id=41877
  79009. No new functionality so no new tests.
  79010. * platform/brew/PopupMenuBrew.cpp:
  79011. (WebCore::PopupMenu::~PopupMenu): call hide() when object is
  79012. destroyed.
  79013. * platform/efl/PopupMenuEfl.cpp:
  79014. (WebCore::PopupMenu::~PopupMenu): ditto.
  79015. 2010-07-14 Satish Sampath <satish@chromium.org>
  79016. Reviewed by Kent Tamura.
  79017. Invoke speech recognition when user clicks on the speech button of input elements.
  79018. http://bugs.webkit.org/show_bug.cgi?id=42047
  79019. No new tests, the relevant LayoutTestController bindings will be added in a subsequent patch.
  79020. * rendering/TextControlInnerElements.cpp:
  79021. (WebCore::InputFieldSpeechButtonElement::InputFieldSpeechButtonElement):
  79022. (WebCore::InputFieldSpeechButtonElement::defaultEventHandler): Added click handling.
  79023. (WebCore::InputFieldSpeechButtonElement::speechInput):
  79024. (WebCore::InputFieldSpeechButtonElement::recordingComplete): Callback to indicate recording progress.
  79025. (WebCore::InputFieldSpeechButtonElement::setRecognitionResult): Callback to receive recognized text.
  79026. (WebCore::InputFieldSpeechButtonElement::detach):
  79027. * rendering/TextControlInnerElements.h:
  79028. 2010-07-14 Sheriff Bot <webkit.review.bot@gmail.com>
  79029. Unreviewed, rolling out r63305.
  79030. http://trac.webkit.org/changeset/63305
  79031. https://bugs.webkit.org/show_bug.cgi?id=42256
  79032. "debugger-breakpoints-not-activated-on-reload.html fails on
  79033. GTK" (Requested by yurys on #webkit).
  79034. * inspector/front-end/ScriptView.js:
  79035. (WebInspector.ScriptView.prototype._addBreakpoint):
  79036. * inspector/front-end/ScriptsPanel.js:
  79037. (WebInspector.ScriptsPanel):
  79038. (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished):
  79039. (WebInspector.ScriptsPanel.prototype._breakpointAdded):
  79040. (WebInspector.ScriptsPanel.prototype._scriptOrResourceForURLAndLine):
  79041. (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
  79042. (WebInspector.ScriptsPanel.prototype._toggleBreakpointsClicked):
  79043. * inspector/front-end/SourceView.js:
  79044. (WebInspector.SourceView.prototype._addBreakpoint):
  79045. 2010-07-14 Steve Block <steveblock@google.com>
  79046. Reviewed by Jeremy Orlow.
  79047. Provide implementation of DeviceOrientationController and hook into DOMWindow
  79048. https://bugs.webkit.org/show_bug.cgi?id=39588
  79049. Added DeviceOrientationController::addListener() and removeListener()
  79050. to start and stop the client and added calls from DomWindow. Implemented
  79051. DeviceOrientationController::onDeviceOrientationChange() to fire a
  79052. DeviceOrientationEvent on the window object.
  79053. No new tests yet, pending LayoutTestController methods for mock DeviceOrientation.
  79054. * dom/DeviceOrientationClient.h:
  79055. * dom/DeviceOrientationController.cpp:
  79056. (WebCore::DeviceOrientation::addListener):
  79057. (WebCore::DeviceOrientation::removeListener):
  79058. (WebCore::DeviceOrientation::removeAllListeners):
  79059. (WebCore::DeviceOrientationController::onDeviceOrientationChange):
  79060. * dom/DeviceOrientationController.h:
  79061. * page/DOMWindow.cpp:
  79062. (WebCore::DOMWindow::addEventListener):
  79063. (WebCore::DOMWindow::removeEventListener):
  79064. (WebCore::DOMWindow::removeAllEventListeners):
  79065. 2010-07-14 Yury Semikhatsky <yurys@chromium.org>
  79066. Reviewed by Pavel Feldman.
  79067. Web Inspector: remove v8 debugger code that doesn't use ScriptDebugServer
  79068. https://bugs.webkit.org/show_bug.cgi?id=42164
  79069. * bindings/v8/ScriptDebugServer.cpp:
  79070. (WebCore::retrieveFrame):
  79071. (WebCore::ScriptDebugServer::addListener):
  79072. (WebCore::ScriptDebugServer::setBreakpoint):
  79073. (WebCore::ScriptDebugServer::removeBreakpoint):
  79074. (WebCore::ScriptDebugServer::clearBreakpoints):
  79075. (WebCore::ScriptDebugServer::setBreakpointsActivated):
  79076. (WebCore::ScriptDebugServer::pauseOnExceptionsState):
  79077. (WebCore::ScriptDebugServer::setPauseOnExceptionsState):
  79078. (WebCore::ScriptDebugServer::continueProgram):
  79079. (WebCore::ScriptDebugServer::stepIntoStatement):
  79080. (WebCore::ScriptDebugServer::stepOverStatement):
  79081. (WebCore::ScriptDebugServer::stepOutOfFunction):
  79082. (WebCore::ScriptDebugServer::editScriptSource):
  79083. (WebCore::ScriptDebugServer::handleV8DebugEvent):
  79084. * bindings/v8/ScriptDebugServer.h:
  79085. 2010-07-14 Ilya Tikhonovsky <loislo@chromium.org>
  79086. Reviewed by Yury Semikhatsky.
  79087. WebInspector: Clean-up InspectorBackend code. In the next changes
  79088. InspectorBackend content will be generated by scripts. As far as
  79089. generator is very simple thing all nontrivial function should be
  79090. moved to InspectorController and DOMAgent.
  79091. https://bugs.webkit.org/show_bug.cgi?id=42171
  79092. * bindings/js/ScriptDebugServer.cpp:
  79093. (WebCore::ScriptDebugServer::pause):
  79094. * bindings/js/ScriptDebugServer.h:
  79095. (WebCore::ScriptDebugServer::activateBreakpoints):
  79096. (WebCore::ScriptDebugServer::deactivateBreakpoints):
  79097. * bindings/v8/ScriptDebugServer.h:
  79098. (WebCore::ScriptDebugServer::activateBreakpoints):
  79099. (WebCore::ScriptDebugServer::deactivateBreakpoints):
  79100. (WebCore::ScriptDebugServer::pause):
  79101. * inspector/Inspector.idl:
  79102. * inspector/InspectorBackend.cpp:
  79103. (WebCore::InspectorBackend::saveApplicationSettings):
  79104. (WebCore::InspectorBackend::saveSessionSettings):
  79105. (WebCore::InspectorBackend::enableSearchingForNode):
  79106. (WebCore::InspectorBackend::disableSearchingForNode):
  79107. (WebCore::InspectorBackend::enableMonitoringXHR):
  79108. (WebCore::InspectorBackend::disableMonitoringXHR):
  79109. (WebCore::InspectorBackend::getResourceContent):
  79110. (WebCore::InspectorBackend::reloadPage):
  79111. (WebCore::InspectorBackend::activateBreakpoints):
  79112. (WebCore::InspectorBackend::deactivateBreakpoints):
  79113. (WebCore::InspectorBackend::pause):
  79114. (WebCore::InspectorBackend::resume):
  79115. (WebCore::InspectorBackend::stepOverStatement):
  79116. (WebCore::InspectorBackend::stepIntoStatement):
  79117. (WebCore::InspectorBackend::stepOutOfFunction):
  79118. (WebCore::InspectorBackend::setPauseOnExceptionsState):
  79119. (WebCore::InspectorBackend::copyNode):
  79120. (WebCore::InspectorBackend::pushNodeByPathToFrontend):
  79121. (WebCore::InspectorBackend::highlightDOMNode):
  79122. (WebCore::InspectorBackend::hideDOMNodeHighlight):
  79123. * inspector/InspectorBackend.h:
  79124. * inspector/InspectorBackend.idl:
  79125. * inspector/InspectorController.cpp:
  79126. (WebCore::InspectorController::saveApplicationSettings):
  79127. (WebCore::InspectorController::saveSessionSettings):
  79128. (WebCore::InspectorController::highlightDOMNode):
  79129. (WebCore::InspectorController::resume):
  79130. (WebCore::InspectorController::setPauseOnExceptionsState):
  79131. (WebCore::InspectorController::getResourceContent):
  79132. (WebCore::InspectorController::reloadPage):
  79133. * inspector/InspectorController.h:
  79134. (WebCore::InspectorController::hideDOMNodeHighlight):
  79135. (WebCore::InspectorController::startProfiling):
  79136. (WebCore::InspectorController::stopProfiling):
  79137. (WebCore::InspectorController::enableSearchingForNode):
  79138. (WebCore::InspectorController::disableSearchingForNode):
  79139. (WebCore::InspectorController::enableMonitoringXHR):
  79140. (WebCore::InspectorController::disableMonitoringXHR):
  79141. * inspector/InspectorDOMAgent.cpp:
  79142. (WebCore::InspectorDOMAgent::copyNode):
  79143. (WebCore::InspectorDOMAgent::pushNodeByPathToFrontend):
  79144. * inspector/InspectorDOMAgent.h:
  79145. * inspector/front-end/InspectorBackendStub.js:
  79146. (.WebInspector.InspectorBackendStub.prototype.pause):
  79147. (.WebInspector.InspectorBackendStub.prototype.resume):
  79148. (.WebInspector.InspectorBackendStub.prototype.stepIntoStatement):
  79149. (.WebInspector.InspectorBackendStub.prototype.stepOutOfFunction):
  79150. (.WebInspector.InspectorBackendStub.prototype.stepOverStatement):
  79151. * inspector/front-end/ScriptsPanel.js:
  79152. (WebInspector.ScriptsPanel.prototype._togglePause):
  79153. (WebInspector.ScriptsPanel.prototype._stepOverClicked):
  79154. (WebInspector.ScriptsPanel.prototype._stepIntoClicked):
  79155. (WebInspector.ScriptsPanel.prototype._stepOutClicked):
  79156. * loader/FrameLoader.cpp:
  79157. (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
  79158. 2010-07-14 Joone Hur <joone@kldp.org>
  79159. Reviewed by Jian Li.
  79160. [GTK] Enabling File Reader/Writer APIs
  79161. https://bugs.webkit.org/show_bug.cgi?id=40209
  79162. The layout test fast/files will be enabled after eventSender.beginDragWithFiles is implemented for GTK.
  79163. * platform/gtk/FileSystemGtk.cpp:
  79164. (WebCore::openFile): Added.
  79165. (WebCore::readFromFile): Added.
  79166. 2010-07-14 Nikolas Zimmermann <nzimmermann@rim.com>
  79167. Reviewed by Dirk Schulze.
  79168. Inconsistent LayoutRepainter usage in the SVG renderers
  79169. https://bugs.webkit.org/show_bug.cgi?id=42245
  79170. Unify LayoutRepainter usage in the SVG renders, as RenderBlock does it, always use:
  79171. LayoutRepainter repainter(*this, m_everHadLayout && checkForRepaintDuringLayout());
  79172. instead of including selfWillPaint / selfNeedsLayout checks. This improves layout test
  79173. performance by 8s on my machine with a debug build (from 76.72s -> 68.59s, averaged over 5 runs)
  79174. * rendering/RenderForeignObject.cpp:
  79175. (WebCore::RenderForeignObject::layout):
  79176. * rendering/RenderPath.cpp:
  79177. (WebCore::RenderPath::layout):
  79178. * rendering/RenderSVGContainer.cpp:
  79179. (WebCore::RenderSVGContainer::layout):
  79180. * rendering/RenderSVGImage.cpp:
  79181. (WebCore::RenderSVGImage::layout):
  79182. * rendering/RenderSVGRoot.cpp:
  79183. (WebCore::RenderSVGRoot::layout):
  79184. * rendering/RenderSVGText.cpp:
  79185. (WebCore::RenderSVGText::layout):
  79186. 2010-07-14 Kent Tamura <tkent@chromium.org>
  79187. Unreviewed, build fix for r63300.
  79188. * rendering/RenderSVGResourceContainer.h:
  79189. (WebCore::RenderSVGResourceContainer::containsCyclicReference):
  79190. 2010-07-14 Pavel Podivilov <podivilov@chromium.org>
  79191. Reviewed by Yury Semikhatsky.
  79192. Web Inspector: do not activate all breakpoints on page reload
  79193. https://bugs.webkit.org/show_bug.cgi?id=41461
  79194. Test: inspector/debugger-breakpoints-not-activated-on-reload.html
  79195. * inspector/front-end/ScriptView.js:
  79196. (WebInspector.ScriptView.prototype._addBreakpoint):
  79197. * inspector/front-end/ScriptsPanel.js:
  79198. (WebInspector.ScriptsPanel):
  79199. (WebInspector.ScriptsPanel.prototype._breakpointAdded):
  79200. (WebInspector.ScriptsPanel.prototype.toggleBreakpointsClicked):
  79201. * inspector/front-end/SourceView.js:
  79202. (WebInspector.SourceView.prototype._addBreakpoint):
  79203. 2010-07-14 Yury Semikhatsky <yurys@chromium.org>
  79204. Reviewed by Pavel Feldman.
  79205. Web Inspector: use OwnPtr to manage ConsoleMessages in InspectorController
  79206. https://bugs.webkit.org/show_bug.cgi?id=42243
  79207. * inspector/InspectorController.cpp:
  79208. (WebCore::InspectorController::~InspectorController):
  79209. (WebCore::InspectorController::addConsoleMessage):
  79210. (WebCore::InspectorController::clearConsoleMessages):
  79211. * inspector/InspectorController.h:
  79212. (WebCore::InspectorController::consoleMessages):
  79213. 2010-07-14 Nikolas Zimmermann <nzimmermann@rim.com>
  79214. Reviewed by Eric Seidel.
  79215. SVG patterns and masks should not be able to reference themselves
  79216. https://bugs.webkit.org/show_bug.cgi?id=32171
  79217. Don't apply pattern/mask resources, if they contain cyclic references. Gradients/Filters are not affected.
  79218. Clippers are already correcly handling this on their own, as well as markers (all which require subtle quirks, covered by existing tests).
  79219. Tests: svg/custom/recursive-filter.svg
  79220. svg/custom/recursive-gradient.svg
  79221. svg/custom/recursive-mask.svg
  79222. svg/custom/recursive-pattern.svg
  79223. * rendering/RenderSVGResourceContainer.h:
  79224. (WebCore::RenderSVGResourceContainer::RenderSVGResourceContainer): Stop using idForStyleResolution(), but use getIdAttribute(), no functional change though.
  79225. (WebCore::RenderSVGResourceContainer::idChanged): Ditto.
  79226. (WebCore::RenderSVGResourceContainer::childElementReferencesResource): To be implemented by classes inheriting from us. Defaults to false.
  79227. (WebCore::RenderSVGResourceContainer::containsCyclicReference): Check whether this resource contains contains a child which references ourselves.
  79228. * rendering/RenderSVGResourceMasker.cpp:
  79229. (WebCore::RenderSVGResourceMasker::childElementReferencesResource): Check whether the masker child specifies mask=".." with the same URI than ourselves.
  79230. (WebCore::RenderSVGResourceMasker::applyResource): Early exit if we contain a cylic reference.
  79231. * rendering/RenderSVGResourceMasker.h:
  79232. * rendering/RenderSVGResourcePattern.cpp:
  79233. (WebCore::RenderSVGResourcePattern::childElementReferencesResource): Check whether the masker child specifies fill=".." with the same URI than ourselves.
  79234. (WebCore::RenderSVGResourcePattern::applyResource): Early exit if we contain a cylic reference.
  79235. * rendering/RenderSVGResourcePattern.h:
  79236. * svg/SVGPaint.cpp:
  79237. (WebCore::SVGPaint::matchesTargetURI): Add new helper function comparing a SVGPaint URI with a given reference id.
  79238. * svg/SVGPaint.h:
  79239. 2010-07-14 Eric Seidel <eric@webkit.org>
  79240. Reviewed by Nikolas Zimmermann.
  79241. Selection dumping code should not dump body's offset in the document
  79242. https://bugs.webkit.org/show_bug.cgi?id=42238
  79243. This requires updating the results of many layout tests,
  79244. but has no functional change.
  79245. * rendering/RenderTreeAsText.cpp:
  79246. (WebCore::nodePosition):
  79247. 2010-07-14 Kent Tamura <tkent@chromium.org>
  79248. Reviewed by Darin Fisher.
  79249. <input type=number> UI: inner spin button layout
  79250. https://bugs.webkit.org/show_bug.cgi?id=41924
  79251. Add layout/event/style code for the inner spin button, which is
  79252. going to be used for Windows implementation.
  79253. No new tests because no ports implement the inner spin button yet.
  79254. * rendering/RenderTextControlSingleLine.cpp:
  79255. Introduce m_innerSpinButton.
  79256. (WebCore::RenderTextControlSingleLine::~RenderTextControlSingleLine):
  79257. Detach m_innerSpinButton.
  79258. (WebCore::RenderTextControlSingleLine::layout):
  79259. Set position and size of m_innerSpinButton.
  79260. (WebCore::RenderTextControlSingleLine::nodeAtPoint):
  79261. Handle m_innerSpinButton.
  79262. (WebCore::RenderTextControlSingleLine::forwardEvent):
  79263. Handle m_innerSpinButton.
  79264. (WebCore::RenderTextControlSingleLine::textBlockWidth):
  79265. Shorten the text block width by m_innerSpinButton width.
  79266. (WebCore::RenderTextControlSingleLine::preferredContentWidth):
  79267. Add m_innerSpinButton width.
  79268. (WebCore::RenderTextControlSingleLine::createSubtreeIfNeeded):
  79269. Handle m_innerSpinButton.
  79270. (WebCore::RenderTextControlSingleLine::createInnerSpinButtonStyle):
  79271. Make style for m_innerSpinButton with INNER_SPIN_BUTTON pseudo class.
  79272. * rendering/RenderTextControlSingleLine.h:
  79273. 2010-07-14 Kent Tamura <tkent@chromium.org>
  79274. Reviewed by Darin Fisher.
  79275. <input type=number> UI: Support disabled/readonly states
  79276. https://bugs.webkit.org/show_bug.cgi?id=38568
  79277. Implement isEnabledFormControl() and isReadOnlyFormControl() of
  79278. SpinButtonElement. They returns the states of the parent <input> element.
  79279. The existing isEnabledFormControl() had a bug. It didn't have 'const'
  79280. modifier.
  79281. Test: fast/forms/input-appearance-spinbutton-disabled-readonly.html
  79282. * rendering/TextControlInnerElements.cpp:
  79283. (WebCore::SpinButtonElement::defaultEventHandler):
  79284. - If the input element is disabled or read-only, don't process events.
  79285. - Protect 'input' object from destruction during focus().
  79286. - Fix a hit-test issue. We don't need to add renderBox()->y() because
  79287. 'local' is relative to the RenderBox.
  79288. - Some code cleanup
  79289. * rendering/TextControlInnerElements.h:
  79290. (WebCore::SpinButtonElement::isEnabledFormControl):
  79291. (WebCore::SpinButtonElement::isReadOnlyFormControl):
  79292. 2010-07-13 Simon Fraser <simon.fraser@apple.com>
  79293. Reviewed by Dan Bernstein.
  79294. Page flashes to mostly white towards the end of loading
  79295. https://bugs.webkit.org/show_bug.cgi?id=42230
  79296. We constrain the size of huge composited layers. When doing so, we
  79297. need to use the constained size to set the position as well
  79298. as the dimensions, to ensure the layer appears in the correct place.
  79299. Test: compositing/tiling/constrained-layer-size.html
  79300. * platform/graphics/mac/GraphicsLayerCA.mm:
  79301. (WebCore::GraphicsLayerCA::updateLayerPosition):
  79302. 2010-07-13 Kent Tamura <tkent@chromium.org>
  79303. Reviewed by Darin Fisher.
  79304. [Chromium] Linux implementation of <input type=number> UI
  79305. https://bugs.webkit.org/show_bug.cgi?id=41925
  79306. - Move the code for scrollbar steppers from ScrollbarThemeChromiumLinux
  79307. to PlatformThemeChromiumGtk.
  79308. - Move the code for scrollbar colors from RenderThemeChromiumLinux
  79309. to PlatformThemeChromiumGtk.
  79310. * WebCore.gypi:
  79311. * platform/chromium/PlatformThemeChromiumGtk.cpp: Added.
  79312. (WebCore::PlatformThemeChromiumGtk::setScrollbarColors): Moved from RenderThemeChromiumLinux.
  79313. (WebCore::clamp): Moved from ScrollbarThemeChromiumLinux.
  79314. (WebCore::PlatformThemeChromiumGtk::saturateAndBrighten): ditto.
  79315. (WebCore::PlatformThemeChromiumGtk::outlineColor): ditto.
  79316. (WebCore::PlatformThemeChromiumGtk::paintArrowButton): ditto.
  79317. * platform/chromium/PlatformThemeChromiumGtk.h: Added.
  79318. * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
  79319. (WebCore::ScrollbarThemeChromiumLinux::paintTrackPiece):
  79320. (WebCore::ScrollbarThemeChromiumLinux::paintButton):
  79321. Move the main part of the code to PlatformThemeChromiumGtk.
  79322. (WebCore::ScrollbarThemeChromiumLinux::paintThumb):
  79323. * rendering/RenderThemeChromiumLinux.cpp:
  79324. (WebCore::RenderThemeChromiumLinux::adjustInnerSpinButtonStyle): Added.
  79325. (WebCore::RenderThemeChromiumLinux::paintInnerSpinButton): Added.
  79326. * rendering/RenderThemeChromiumLinux.h:
  79327. 2010-07-13 Dumitru Daniliuc <dumi@chromium.org>
  79328. Reviewed by Darin Fisher
  79329. Implementing DatabaseSync::transaction() and DatabaseSync::changeVersion().
  79330. https://bugs.webkit.org/show_bug.cgi?id=40607
  79331. Tests: fast/workers/storage/change-version-handle-reuse-sync.html
  79332. fast/workers/storage/change-version-sync.html
  79333. fast/workers/storage/empty-statement-sync.html
  79334. fast/workers/storage/execute-sql-args-sync.html
  79335. fast/workers/storage/executesql-accepts-only-one-statement-sync.html
  79336. fast/workers/storage/multiple-transactions-on-different-handles-sync.html
  79337. fast/workers/storage/open-database-creation-callback-sync.html
  79338. fast/workers/storage/open-database-empty-version-sync.html
  79339. fast/workers/storage/open-database-inputs-sync.html
  79340. fast/workers/storage/open-database-set-empty-version-sync.html
  79341. fast/workers/storage/open-database-while-transaction-in-progress-sync.html
  79342. fast/workers/storage/sql-data-types-sync.html
  79343. fast/workers/storage/sql-exception-codes-sync.html
  79344. fast/workers/storage/test-authorizer-sync.html
  79345. fast/workers/storage/transaction-in-transaction-sync.html
  79346. * CMakeLists.txt:
  79347. * GNUmakefile.am:
  79348. * WebCore.gypi:
  79349. * WebCore.pro:
  79350. * WebCore.vcproj/WebCore.vcproj:
  79351. * WebCore.xcodeproj/project.pbxproj:
  79352. * storage/AbstractDatabase.cpp:
  79353. (WebCore::AbstractDatabase::maximumSize):
  79354. (WebCore::AbstractDatabase::incrementalVacuumIfNeeded):
  79355. * storage/AbstractDatabase.h:
  79356. (WebCore::AbstractDatabase::sqliteDatabase):
  79357. * storage/ChangeVersionWrapper.cpp:
  79358. (WebCore::ChangeVersionWrapper::performPreflight):
  79359. (WebCore::ChangeVersionWrapper::performPostflight):
  79360. * storage/Database.cpp:
  79361. (WebCore::Database::performGetTableNames):
  79362. * storage/Database.h:
  79363. * storage/DatabaseAuthorizer.cpp:
  79364. (WebCore::DatabaseAuthorizer::createVTable):
  79365. (WebCore::DatabaseAuthorizer::dropVTable):
  79366. * storage/DatabaseCallback.h:
  79367. * storage/DatabaseSync.cpp:
  79368. (WebCore::ChangeVersionPreflightStep::create):
  79369. (WebCore::ChangeVersionPreflightStep::performStep):
  79370. (WebCore::ChangeVersionPreflightStep::ChangeVersionPreflightStep):
  79371. (WebCore::ChangeVersionPostflightStep::create):
  79372. (WebCore::ChangeVersionPostflightStep::performStep):
  79373. (WebCore::ChangeVersionPostflightStep::ChangeVersionPostflightStep):
  79374. (WebCore::DatabaseSync::changeVersion):
  79375. (WebCore::DatabaseSync::transaction):
  79376. (WebCore::DatabaseSync::runTransaction):
  79377. * storage/DatabaseSync.h:
  79378. * storage/DatabaseTracker.cpp:
  79379. (WebCore::DatabaseTracker::getMaxSizeForDatabase):
  79380. * storage/SQLError.h:
  79381. * storage/SQLResultSet.cpp:
  79382. * storage/SQLResultSet.h:
  79383. * storage/SQLStatementCallback.h:
  79384. * storage/SQLStatementErrorCallback.h:
  79385. * storage/SQLStatementSync.cpp: Copied from WebCore/storage/SQLStatement.cpp.
  79386. (WebCore::SQLStatementSync::SQLStatementSync):
  79387. (WebCore::SQLStatementSync::execute):
  79388. * storage/SQLStatementSync.h: Added.
  79389. * storage/SQLTransaction.cpp:
  79390. (WebCore::SQLTransaction::runCurrentStatement):
  79391. (WebCore::SQLTransaction::deliverQuotaIncreaseCallback):
  79392. (WebCore::SQLTransaction::postflightAndCommit):
  79393. * storage/SQLTransaction.h:
  79394. * storage/SQLTransactionCallback.h:
  79395. * storage/SQLTransactionClient.cpp:
  79396. (WebCore::SQLTransactionClient::didCommitWriteTransaction):
  79397. (WebCore::SQLTransactionClient::didExecuteStatement):
  79398. (WebCore::SQLTransactionClient::didExceedQuota):
  79399. * storage/SQLTransactionClient.h:
  79400. * storage/SQLTransactionErrorCallback.h:
  79401. * storage/SQLTransactionSync.cpp:
  79402. (WebCore::transactionClient):
  79403. (WebCore::SQLTransactionSync::create):
  79404. (WebCore::SQLTransactionSync::SQLTransactionSync):
  79405. (WebCore::SQLTransactionSync::~SQLTransactionSync):
  79406. (WebCore::SQLTransactionSync::executeSQL):
  79407. (WebCore::SQLTransactionSync::begin):
  79408. (WebCore::SQLTransactionSync::execute):
  79409. (WebCore::SQLTransactionSync::commit):
  79410. (WebCore::SQLTransactionSync::rollback):
  79411. * storage/SQLTransactionSync.h:
  79412. (WebCore::SQLTransactionSync::SQLTransactionSyncOptionalStep::~SQLTransactionSyncOptionalStep):
  79413. * storage/SQLTransactionSyncCallback.h:
  79414. * storage/chromium/SQLTransactionClientChromium.cpp:
  79415. (WebCore::SQLTransactionClient::didCommitWriteTransaction):
  79416. (WebCore::SQLTransactionClient::didExecuteStatement):
  79417. (WebCore::SQLTransactionClient::didExceedQuota):
  79418. 2010-07-13 Sheriff Bot <webkit.review.bot@gmail.com>
  79419. Unreviewed, rolling out r63162.
  79420. http://trac.webkit.org/changeset/63162
  79421. https://bugs.webkit.org/show_bug.cgi?id=42224
  79422. This is no longer needed (Requested by olliej_ on #webkit).
  79423. * bindings/v8/ScriptSourceCode.h:
  79424. (WebCore::ScriptSourceCode::ScriptSourceCode):
  79425. 2010-07-13 Eric Seidel <eric@webkit.org>
  79426. Reviewed by Adam Barth.
  79427. Fix my misreading of "clear to the last marker" in the HTML5 spec
  79428. https://bugs.webkit.org/show_bug.cgi?id=42199
  79429. * html/HTMLFormattingElementList.cpp:
  79430. (WebCore::HTMLFormattingElementList::clearToLastMarker):
  79431. * html/HTMLFormattingElementList.h:
  79432. * html/HTMLTreeBuilder.cpp:
  79433. (WebCore::HTMLTreeBuilder::processBodyEndTagForInBody):
  79434. (WebCore::HTMLTreeBuilder::processEndOfFile):
  79435. 2010-07-13 Oliver Hunt <oliver@apple.com>
  79436. Reviewed by Gavin Barraclough.
  79437. ES5 requires BOMs to be treated as whitespace
  79438. https://bugs.webkit.org/show_bug.cgi?id=42218
  79439. Remove BOM handling logic from WebCore Script objects.
  79440. * bindings/js/StringSourceProvider.h:
  79441. (WebCore::StringSourceProvider::StringSourceProvider):
  79442. * loader/CachedScript.cpp:
  79443. (WebCore::CachedScript::CachedScript):
  79444. (WebCore::CachedScript::script):
  79445. * loader/CachedScript.h:
  79446. 2010-07-13 Andreas Kling <andreas.kling@nokia.com>
  79447. Reviewed by Darin Adler.
  79448. Canvas: rect(x,y,w,h) should move to (x,y) even if w=0 and h=0
  79449. https://bugs.webkit.org/show_bug.cgi?id=42211
  79450. * html/canvas/CanvasRenderingContext2D.cpp:
  79451. (WebCore::CanvasRenderingContext2D::rect):
  79452. 2010-07-13 Simon Fraser <simon.fraser@apple.com>
  79453. Reviewed by Dan Bernstein.
  79454. Show IDs and classnames in layer tree dumps
  79455. https://bugs.webkit.org/show_bug.cgi?id=42213
  79456. When dumping the layer tree via showLayerTree(), include id and class attributes for
  79457. ease of debugging.
  79458. No tests, since this is debug-only code.
  79459. * rendering/RenderLayer.cpp:
  79460. (showLayerTree):
  79461. * rendering/RenderTreeAsText.cpp:
  79462. (WebCore::RenderTreeAsText::writeRenderObject):
  79463. * rendering/RenderTreeAsText.h:
  79464. (WebCore::):
  79465. 2010-07-13 Simon Fraser <simon.fraser@apple.com>
  79466. Build fix: fix WebCore exports by editing the .in file, rather than the generated file.
  79467. * WebCore.exp.in:
  79468. 2010-07-13 Alexey Proskuryakov <ap@apple.com>
  79469. Reviewed by Darin Adler.
  79470. https://bugs.webkit.org/show_bug.cgi?id=42216
  79471. ResourceRequest::doUpdateResourceRequest() crashes if client denied request
  79472. This is covered by many regression tests with patch for bug 42201 applied (because it makes
  79473. us also use this code path for sync requests, and those currently have more strict limitations).
  79474. * platform/network/cf/ResourceRequestCFNet.cpp:
  79475. (WebCore::ResourceRequest::doUpdateResourceRequest): Added a null check.
  79476. 2010-07-13 Eric Seidel <eric@webkit.org>
  79477. Reviewed by Adam Barth.
  79478. Make our end tag in-foreign-content mode spec bug workarounds more closely match minefield
  79479. https://bugs.webkit.org/show_bug.cgi?id=42187
  79480. I do not expect these work-arounds to be permanent. Hixie has promised to
  79481. addresses the feedback to the parser sections of HTML5 soon.
  79482. I added these hacks to make our hacks more-closely match Minefield's hacks
  79483. and thus have us "pass" a few more html5lib runner tests.
  79484. We now pass all of the html5lib foreign content tests
  79485. (thus we'll likely need to write more).
  79486. Tested by html5lib/runner.html
  79487. * html/HTMLElementStack.cpp:
  79488. (WebCore::HTMLElementStack::contains):
  79489. * html/HTMLElementStack.h:
  79490. * html/HTMLTreeBuilder.cpp:
  79491. (WebCore::HTMLTreeBuilder::processEndTag):
  79492. 2010-07-12 Tony Gentilcore <tonyg@chromium.org>
  79493. Reviewed by Darin Fisher.
  79494. Wire network times from ResourceLoadTiming to performance.timing
  79495. https://bugs.webkit.org/show_bug.cgi?id=41824
  79496. * page/Timing.cpp:
  79497. (WebCore::Timing::domainLookupStart): http://dev.w3.org/2006/webapi/WebTiming/#nt-domain-lookupstart
  79498. (WebCore::Timing::domainLookupEnd): http://dev.w3.org/2006/webapi/WebTiming/#nt-domain-lookupend
  79499. (WebCore::Timing::connectStart): http://dev.w3.org/2006/webapi/WebTiming/#nt-connect-start
  79500. (WebCore::Timing::connectEnd): http://dev.w3.org/2006/webapi/WebTiming/#nt-connect-end
  79501. (WebCore::Timing::requestStart): http://dev.w3.org/2006/webapi/WebTiming/#nt-request-start
  79502. (WebCore::Timing::requestEnd): http://dev.w3.org/2006/webapi/WebTiming/#nt-request-end
  79503. (WebCore::Timing::responseStart): http://dev.w3.org/2006/webapi/WebTiming/#nt-response-start
  79504. (WebCore::Timing::resourceLoadTiming):
  79505. * page/Timing.h:
  79506. * page/Timing.idl:
  79507. 2010-07-13 Anders Carlsson <andersca@apple.com>
  79508. Reviewed by Sam Weinig.
  79509. Add support for loading javascript: URLs
  79510. https://bugs.webkit.org/show_bug.cgi?id=42221
  79511. * WebCore.exp.in:
  79512. Export protocolIsJavaScript and ScriptValue::getString.
  79513. 2010-07-13 Anders Carlsson <andersca@apple.com>
  79514. Reviewed by Sam Weinig.
  79515. Add support for URL frame loading using NPN_GetURLNotify
  79516. https://bugs.webkit.org/show_bug.cgi?id=42192
  79517. * WebCore.exp.in:
  79518. Export ResourceRequestBase::setHTTPMethod and ResourceRequestBase::setURL.
  79519. 2010-07-04 Zhenyao Mo <zmo@google.com>
  79520. Reviewed by Darin Fisher.
  79521. Need to track texture completeness
  79522. https://bugs.webkit.org/show_bug.cgi?id=41381
  79523. Test: fast/canvas/webgl/texture-complete.html
  79524. * html/canvas/WebGLRenderingContext.cpp:
  79525. (WebCore::WebGLRenderingContext::WebGLRenderingContext): Init max texture level.
  79526. (WebCore::WebGLRenderingContext::bindTexture): Pass max texture level to setTarget().
  79527. (WebCore::WebGLRenderingContext::copyTexImage2D): Cache full texture info rather than partial.
  79528. (WebCore::WebGLRenderingContext::generateMipmap): Ditto.
  79529. (WebCore::WebGLRenderingContext::texImage2DBase): Ditto.
  79530. (WebCore::WebGLRenderingContext::validateTexFuncParameters): Also validate level.
  79531. * html/canvas/WebGLRenderingContext.h: Add max texture level.
  79532. * html/canvas/WebGLTexture.cpp: Update the class to fully cache texture information and track NPOT and COMPLETE states.
  79533. (WebCore::WebGLTexture::WebGLTexture):
  79534. (WebCore::WebGLTexture::setTarget): Check whether the texture is initialized or has been deleted.
  79535. (WebCore::WebGLTexture::setParameteri): Ditto.
  79536. (WebCore::WebGLTexture::setParameterf): Ditto.
  79537. (WebCore::WebGLTexture::setLevelInfo): Set texture info.
  79538. (WebCore::WebGLTexture::generateMipmapLevelInfo): Generate texture info for all levels after generateMipmaps() is called.
  79539. (WebCore::WebGLTexture::getInternalFormat): Return internal format on texture face 0 level 0.
  79540. (WebCore::WebGLTexture::isNPOT): Check whether the texture is initialized or has been deleted.
  79541. (WebCore::WebGLTexture::needToUseBlackTexture): Ditto.
  79542. (WebCore::WebGLTexture::_deleteObject):
  79543. (WebCore::WebGLTexture::mapTargetToIndex): Map target to index.
  79544. (WebCore::WebGLTexture::canGenerateMipmaps): Check whether Mipmaps can be generated.
  79545. (WebCore::WebGLTexture::computeLevelCount): Compute texture level count from width/height.
  79546. (WebCore::WebGLTexture::update): Update NPOT/COMPLETE states.
  79547. * html/canvas/WebGLTexture.h: Ditto.
  79548. (WebCore::WebGLTexture::LevelInfo::LevelInfo): Add data structure to fully cache texture info.
  79549. (WebCore::WebGLTexture::LevelInfo::setInfo): Set information.
  79550. 2010-07-13 Andreas Kling <andreas.kling@nokia.com>
  79551. Reviewed by Darin Adler.
  79552. Canvas: drawImage() with wrong 'image' argument type should always throw TypeError
  79553. https://bugs.webkit.org/show_bug.cgi?id=42160
  79554. Test: canvas/philip/tests/2d.drawImage.wrongtype.html
  79555. * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
  79556. (WebCore::JSCanvasRenderingContext2D::drawImage): Throw TypeError instead of
  79557. TYPE_MISMATCH_ERR if 'image' argument is not an image, canvas or video element.
  79558. 2010-07-13 Aaron Boodman <aa@chromium.org>
  79559. Reviewed by Timothy Hatcher.
  79560. Don't reset per-document user style caches when user styles are updated in
  79561. Chromium.
  79562. https://bugs.webkit.org/show_bug.cgi?id=42003
  79563. * page/PageGroup.cpp:
  79564. (WebCore::PageGroup::addUserStyleSheetToWorld):
  79565. (WebCore::PageGroup::removeUserStyleSheetFromWorld):
  79566. (WebCore::PageGroup::removeUserStyleSheetsFromWorld):
  79567. (WebCore::PageGroup::removeAllUserContent):
  79568. (WebCore::PageGroup::resetUserStyleCacheInAllFrames):
  79569. * page/PageGroup.h:
  79570. 2010-07-13 Eric Carlson <eric.carlson@apple.com>
  79571. Reviewed by Dan Bernstein.
  79572. On Leopard, media element can't handle audio/mp4 MIME type in source tag
  79573. https://bugs.webkit.org/show_bug.cgi?id=29326
  79574. Test: media/media-can-play-mpeg-audio.html
  79575. * platform/MIMETypeRegistry.cpp:
  79576. (WebCore::TypeExtensionPair::): Add "audio/mp4", "m4a" to mappings table.
  79577. 2010-07-13 Tony Gentilcore <tonyg@chromium.org>
  79578. Reviewed by Darin Fisher.
  79579. Implement performance.timing.fetchStart
  79580. https://bugs.webkit.org/show_bug.cgi?id=41816
  79581. See: http://dev.w3.org/2006/webapi/WebTiming/#nt-fetch-start
  79582. * loader/MainResourceLoader.cpp:
  79583. (WebCore::MainResourceLoader::willSendRequest): Record the fetchStart time for each request for the main resource. This means it is called for each server redirect, overwritting the previous value. In https://bugs.webkit.org/show_bug.cgi?id=42018, this will be modified such that if a previous value exists, it is stored as the redirect time.
  79584. * loader/FrameLoaderTypes.h:
  79585. (WebCore::FrameLoadTimeline::FrameLoadTimeline):
  79586. * page/Timing.cpp:
  79587. (WebCore::Timing::fetchStart):
  79588. * page/Timing.h:
  79589. * page/Timing.idl:
  79590. 2010-07-13 Satish Sampath <satish@chromium.org>
  79591. Reviewed by Steve Block.
  79592. Speech input plumbing in webcore
  79593. https://bugs.webkit.org/show_bug.cgi?id=41518
  79594. Adds the following:
  79595. - a SpeechInput class to be used by the speech enabled HTML elements
  79596. - a SpeechInputListener interface to be implemented by the speech enabled HTML elements
  79597. - a SpeechInputClient interface (defined in WebCore, implemented by WebKit) for WebCore to call into WebKit.
  79598. This is available as a member of WebCore::Page, set by the platforms which support speech input.
  79599. - a SpeechInputClientListener interface for WebCore to receive events from WebKit
  79600. No new tests, the relevant LayoutTestController bindings will be added in a subsequent patch.
  79601. * Android.mk:
  79602. * GNUmakefile.am:
  79603. * WebCore.gypi:
  79604. * WebCore.pro:
  79605. * WebCore.vcproj/WebCore.vcproj:
  79606. * WebCore.xcodeproj/project.pbxproj:
  79607. * page/Page.cpp:
  79608. (WebCore::Page::Page):
  79609. * page/Page.h: Added SpeechInputClient member variable and associated methods.
  79610. (WebCore::Page::setSpeechInputClient):
  79611. (WebCore::Page::speechInputClient):
  79612. * page/SpeechInput.cpp: Added new class to provide speech API services to HTML elements.
  79613. (WebCore::SpeechInput::SpeechInput):
  79614. (WebCore::SpeechInput::recordingComplete):
  79615. (WebCore::SpeechInput::setRecognitionResult):
  79616. (WebCore::SpeechInput::startRecognition):
  79617. * page/SpeechInput.h: Added.
  79618. (WebCore::SpeechInput::~SpeechInput):
  79619. (WebCore::SpeechInput::client):
  79620. * page/SpeechInputListener.h: Added.
  79621. (WebCore::SpeechInputListener::~SpeechInputListener):
  79622. * page/SpeechInputClient.h: Added new interface implemented by WebKit to bubble up speech API requests to the embedder.
  79623. (WebCore::SpeechInputClient::~SpeechInputClient):
  79624. * page/SpeechInputClientListener.h: Added.
  79625. (WebCore::SpeechInputClientListener::~SpeechInputClientListener):
  79626. 2010-07-13 Richard Moore <rich@kde.org>, Robert Hogan <robert@webkit.org>
  79627. Reviewed by Simon Hausmann.
  79628. [Qt] MIME handling in qtwebkit network layer case-sensitivity
  79629. https://bugs.webkit.org/show_bug.cgi?id=28654
  79630. Like other platforms, Qt needs to convert MIME types to lower case
  79631. so they will be handled by WebCore.
  79632. * platform/network/qt/QNetworkReplyHandler.cpp:
  79633. (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
  79634. 2010-07-13 James Robinson <jamesr@chromium.org>
  79635. Reviewed by Simon Fraser.
  79636. REGRESSION(55056) debug builds ASSERT falsely on pages with animations
  79637. https://bugs.webkit.org/show_bug.cgi?id=42175
  79638. Revision 55065 added some repaint box precomputation and some debug ASSERT()ions
  79639. to ensure the precomputed values were valid. However, if animations are enabled and
  79640. not hardware accelerated, the repaint box dimensions become time-dependent and the
  79641. ASSERT()s can trigger. This can make it impossible to interactively debug pages
  79642. like google maps.
  79643. https://bugs.webkit.org/show_bug.cgi?id=37048 is another example of an assertion
  79644. failing due to time dependent animation values.
  79645. * rendering/RenderObject.cpp:
  79646. (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
  79647. 2010-07-13 Zhenyao Mo <zmo@google.com>
  79648. Reviewed by Darin Fisher.
  79649. Implement bufferData and bufferSubData with ArrayBuffer as input
  79650. https://bugs.webkit.org/show_bug.cgi?id=41884
  79651. Test: fast/canvas/webgl/buffer-data-array-buffer.html
  79652. * html/canvas/WebGLBuffer.cpp: Implement associateBufferData & associateBufferSubData with ArrayBuffer as input.
  79653. (WebCore::WebGLBuffer::associateBufferData):
  79654. (WebCore::WebGLBuffer::associateBufferSubData):
  79655. * html/canvas/WebGLBuffer.h: Ditto.
  79656. * html/canvas/WebGLRenderingContext.cpp: Implement bufferData and bufferSubData with ArrayBuffer as input.
  79657. (WebCore::WebGLRenderingContext::bufferData):
  79658. (WebCore::WebGLRenderingContext::bufferSubData):
  79659. * html/canvas/WebGLRenderingContext.h: Ditto.
  79660. * html/canvas/WebGLRenderingContext.idl: Ditto.
  79661. * platform/graphics/GraphicsContext3D.h: Ditto.
  79662. * platform/graphics/mac/GraphicsContext3DMac.mm: Ditto.
  79663. (WebCore::GraphicsContext3D::bufferData):
  79664. (WebCore::GraphicsContext3D::bufferSubData):
  79665. 2010-07-13 Tony Gentilcore <tonyg@chromium.org>
  79666. Reviewed by Darin Fisher.
  79667. Implement performance.timing.responseEnd
  79668. https://bugs.webkit.org/show_bug.cgi?id=42006
  79669. See: http://dev.w3.org/2006/webapi/WebTiming/#nt-response-end
  79670. * loader/FrameLoader.cpp:
  79671. (WebCore::FrameLoader::finishedLoading):
  79672. * loader/FrameLoaderTypes.h:
  79673. (WebCore::FrameLoadTimeline::FrameLoadTimeline):
  79674. * page/Timing.cpp:
  79675. (WebCore::Timing::responseEnd):
  79676. * page/Timing.h:
  79677. * page/Timing.idl:
  79678. 2010-07-13 W. James MacLean <wjmaclean@chromium.org>
  79679. Reviewed by Darin Fisher
  79680. Bug 41962 Limit html canvas element dimensions to 32767 for Skia platform
  79681. https://bugs.webkit.org/show_bug.cgi?id=41962
  79682. Test: fast/canvas/canvas-skia-excessive-size.html
  79683. * WebCore/html/HTMLCanvasElement.cpp
  79684. (WebCore::HTMLCanvasElement::convertLogicalToDevice):
  79685. 2010-07-10 Zhenyao Mo <zmo@google.com>
  79686. Reviewed by Darin Fisher.
  79687. Need to emulate MAX_VARYING_VECTORS/MAX_FRAGMENT_UNIFORM_VECTORs/MAX_VERTEX_UNIFORM_VECTORS for glGet
  79688. https://bugs.webkit.org/show_bug.cgi?id=42032
  79689. * platform/graphics/mac/GraphicsContext3DMac.mm:
  79690. (WebCore::GraphicsContext3D::getIntegerv): Emulate the enums.
  79691. 2010-07-13 Philippe Normand <pnormand@igalia.com>
  79692. Reviewed by Eric Carlson.
  79693. [GTK] video playback position query flood when mouse over the video element
  79694. https://bugs.webkit.org/show_bug.cgi?id=35333
  79695. Don't trigger a position query only to know which play/pause
  79696. button to display. Instead use the media-control button display
  79697. type to select the image to paint.
  79698. * platform/gtk/RenderThemeGtk.cpp:
  79699. (WebCore::RenderThemeGtk::paintMediaPlayButton):
  79700. 2010-07-13 Sheriff Bot <webkit.review.bot@gmail.com>
  79701. Unreviewed, rolling out r63192.
  79702. http://trac.webkit.org/changeset/63192
  79703. https://bugs.webkit.org/show_bug.cgi?id=42173
  79704. Broke fast/backgrounds/size/contain-and-cover.html (Requested
  79705. by kling on #webkit).
  79706. * manual-tests/css3-background-layer-count.html: Removed.
  79707. * rendering/style/FillLayer.cpp:
  79708. (WebCore::FillLayer::cullEmptyLayers):
  79709. 2010-07-13 Marcus Bulach <bulach@chromium.org>
  79710. Reviewed by Jeremy Orlow.
  79711. Removes cycles caused by "m_this" members in a few IndexedDB classes.
  79712. https://bugs.webkit.org/show_bug.cgi?id=42161
  79713. Adds IDBAny::create for the various types.
  79714. No functionality change, just cleaning up.
  79715. * storage/IDBAny.cpp:
  79716. (WebCore::createIDBAny):
  79717. (WebCore::IDBAny::create):
  79718. * storage/IDBAny.h:
  79719. * storage/IDBDatabaseRequest.cpp:
  79720. (WebCore::IDBDatabaseRequest::IDBDatabaseRequest):
  79721. (WebCore::IDBDatabaseRequest::createObjectStore):
  79722. (WebCore::IDBDatabaseRequest::removeObjectStore):
  79723. * storage/IDBDatabaseRequest.h:
  79724. * storage/IDBKeyRange.cpp:
  79725. (WebCore::IDBKeyRange::IDBKeyRange):
  79726. * storage/IDBKeyRange.h:
  79727. (WebCore::IDBKeyRange::left):
  79728. (WebCore::IDBKeyRange::right):
  79729. * storage/IDBObjectStoreRequest.cpp:
  79730. (WebCore::IDBObjectStoreRequest::IDBObjectStoreRequest):
  79731. (WebCore::IDBObjectStoreRequest::get):
  79732. (WebCore::IDBObjectStoreRequest::add):
  79733. (WebCore::IDBObjectStoreRequest::put):
  79734. (WebCore::IDBObjectStoreRequest::remove):
  79735. (WebCore::IDBObjectStoreRequest::createIndex):
  79736. (WebCore::IDBObjectStoreRequest::removeIndex):
  79737. * storage/IDBObjectStoreRequest.h:
  79738. * storage/IndexedDatabaseRequest.cpp:
  79739. (WebCore::IndexedDatabaseRequest::IndexedDatabaseRequest):
  79740. (WebCore::IndexedDatabaseRequest::open):
  79741. * storage/IndexedDatabaseRequest.h:
  79742. 2010-07-13 Antti Koivisto <koivisto@iki.fi>
  79743. Reviewed by Kenneth Rohde Christiansen.
  79744. [Qt] Land the initial build system for WebKit2
  79745. https://bugs.webkit.org/show_bug.cgi?id=41604
  79746. The build is enabled by passing --qmakearg="CONFIG+=webkit2" to build-webkit
  79747. * WebCore.pri:
  79748. * WebCore.pro:
  79749. 2010-07-13 Leon Clarke <leonclarke@google.com>
  79750. Reviewed by Pavel Feldman.
  79751. Don't access objects after deleting them, following
  79752. the addition of link prefetching. Also remove a forward declaration
  79753. of the now-nonexistent CachedLinkPrefetch class.
  79754. https://bugs.webkit.org/show_bug.cgi?id=3652
  79755. No new tests. Correcting aspects of the prefetch change that shouldn't
  79756. have affected functionality.
  79757. * html/HTMLLinkElement.h:
  79758. * loader/loader.cpp:
  79759. (WebCore::Loader::Host::cancelPendingRequests):
  79760. 2010-07-13 Andras Becsi <abecsi@webkit.org>
  79761. Reviewed by Simon Hausmann.
  79762. [Qt] Fix the case of a linker option to lowercase to be able to
  79763. cross compile QtWebKit for Windows on Linux.
  79764. No new tests needed.
  79765. * WebCore.pro:
  79766. 2010-07-12 Ilya Tikhonovsky <loislo@chromium.org>
  79767. Reviewed by Yury Semikhatsky.
  79768. WebInspector: Next iteration of Inspector code generator.
  79769. The InspectorFrontend2 was replaced by slightly modified version of
  79770. InspectorBackend file (Inspector.idl). At the end all the interface
  79771. between WebInspector and inspected page will be specified by this file
  79772. and generated by CodeGeneratorInspector (InspectorFrontend.cpp,
  79773. InspectorBackend.cpp and InspectorBackend.js).
  79774. https://bugs.webkit.org/show_bug.cgi?id=42104
  79775. * DerivedSources.make:
  79776. * GNUmakefile.am:
  79777. * WebCore.gyp/WebCore.gyp:
  79778. * WebCore.gyp/scripts/rule_binding.py:
  79779. * WebCore.gypi:
  79780. * WebCore.pri:
  79781. * WebCore.xcodeproj/project.pbxproj:
  79782. * bindings/scripts/IDLParser.pm:
  79783. * bindings/scripts/IDLStructure.pm:
  79784. * bindings/scripts/generate-bindings.pl:
  79785. * inspector/CodeGeneratorInspector.pm:
  79786. * inspector/Inspector.idl: Added.
  79787. * inspector/InspectorCSSStore.cpp:
  79788. (WebCore::InspectorCSSStore::inspectorStyleSheet):
  79789. * inspector/InspectorController.cpp:
  79790. (WebCore::InspectorController::connectFrontend):
  79791. (WebCore::InspectorController::startTimelineProfiler):
  79792. * inspector/InspectorController.h:
  79793. (WebCore::InspectorController::remoteInspectorFrontend):
  79794. * inspector/InspectorDOMAgent.cpp:
  79795. (WebCore::InspectorDOMAgent::InspectorDOMAgent):
  79796. * inspector/InspectorDOMAgent.h:
  79797. (WebCore::InspectorDOMAgent::create):
  79798. * inspector/InspectorFrontend2.idl: Removed.
  79799. * inspector/InspectorTimelineAgent.cpp:
  79800. (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
  79801. (WebCore::InspectorTimelineAgent::resetFrontendProxyObject):
  79802. * inspector/InspectorTimelineAgent.h:
  79803. 2010-07-12 Steve Block <steveblock@google.com>
  79804. Reviewed by Jeremy Orlow.
  79805. DeviceOrientationEvent should use optional properties
  79806. https://bugs.webkit.org/show_bug.cgi?id=41607
  79807. This change adds a new DeviceOrientation class which takes care of which of the
  79808. optional properties are present. DeviceOrientationEvent owns an instance of
  79809. DeviceOrientation, rather than owning the properties directly.
  79810. DeviceOrientationEvent now requires custom bindings.
  79811. Test: fast/dom/DeviceOrientation/optional-event-properties.html
  79812. * Android.mk:
  79813. * Android.jscbindings.mk:
  79814. * Android.v8bindings.mk:
  79815. * CMakeLists.txt:
  79816. * GNUmakefile.am:
  79817. * WebCore.gypi:
  79818. * WebCore.pro:
  79819. * WebCore.vcproj/WebCore.vcproj:
  79820. * WebCore.xcodeproj/project.pbxproj:
  79821. * bindings/js/JSBindingsAllInOne.cpp:
  79822. * bindings/js/JSDeviceOrientationEventCustom.cpp: Added.
  79823. (WebCore::JSDeviceOrientationEvent::alpha):
  79824. (WebCore::JSDeviceOrientationEvent::beta):
  79825. (WebCore::JSDeviceOrientationEvent::gamma):
  79826. (WebCore::JSDeviceOrientationEvent::initDeviceOrientationEvent):
  79827. * bindings/v8/custom/V8DeviceOrientationEventCustom.cpp: Added.
  79828. (WebCore::V8DeviceOrientationEvent::alphaAccessorGetter):
  79829. (WebCore::V8DeviceOrientationEvent::betaAccessorGetter):
  79830. (WebCore::V8DeviceOrientationEvent::gammaAccessorGetter):
  79831. (WebCore::V8DeviceOrientationEvent::initDeviceOrientationEventCallback):
  79832. * dom/DeviceOrientation.cpp: Added.
  79833. * dom/DeviceOrientation.h: Added.
  79834. (WebCore::DeviceOrientation::create):
  79835. (WebCore::DeviceOrientation::canProvideAlpha):
  79836. (WebCore::DeviceOrientation::alpha):
  79837. (WebCore::DeviceOrientation::canProvideBeta):
  79838. (WebCore::DeviceOrientation::beta):
  79839. (WebCore::DeviceOrientation::canProvideGamma):
  79840. (WebCore::DeviceOrientation::gamma):
  79841. (WebCore::DeviceOrientation::DeviceOrientation):
  79842. * dom/DeviceOrientationEvent.cpp:
  79843. (WebCore::DeviceOrientationEvent::DeviceOrientationEvent):
  79844. (WebCore::DeviceOrientationEvent::initDeviceOrientationEvent):
  79845. * dom/DeviceOrientationEvent.h:
  79846. (WebCore::DeviceOrientationEvent::create):
  79847. (WebCore::DeviceOrientationEvent::orientation):
  79848. * dom/DeviceOrientationEvent.idl:
  79849. 2010-07-13 Andreas Kling <andreas.kling@nokia.com>
  79850. Reviewed by Antti Koivisto.
  79851. CSS3 background: Number of layers should be determined by background-image element count
  79852. https://bugs.webkit.org/show_bug.cgi?id=41201
  79853. Change FillLayer culling logic to discard all layers
  79854. after the first one without an image set.
  79855. Manual test: css3-background-layer-count.html
  79856. * manual-tests/css3-background-layer-count.html: Added.
  79857. * rendering/style/FillLayer.cpp:
  79858. (WebCore::FillLayer::cullEmptyLayers):
  79859. 2010-07-07 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
  79860. Reviewed by Darin Adler.
  79861. Prevent assertion/duplicate loads for non-deferred subtitute-data loads
  79862. https://bugs.webkit.org/show_bug.cgi?id=30879
  79863. MainResourceLoader uses the member m_initialRequest to store requests for future
  79864. deferred loads. When doing the actual load in handleDataLoadNow(), we therefore
  79865. have to clear this request so that subsequent entries into the loader will not
  79866. start yet another load.
  79867. This can happen as a result of a PageGroupLoadDeferrer going out of scope when
  79868. returning from Chrome::runJavaScriptAlert(), which calls setDeferredLoading(false),
  79869. but only in the case of using both substitute-data and non-deferred main resource
  79870. load together. That's why two new DRT functions were added:
  79871. * queueLoadHTMLString()
  79872. * setDeferMainResourceLoad()
  79873. The change adds DRT hooks for Mac, Win and Qt for these two functions. For Mac
  79874. and Win the hook uses new SPI in WebDataSource. For Qt a new static member was
  79875. added to the FrameLoaderClientQt and accessed though DumpRenderTreeSupportQt.
  79876. Test: fast/loader/non-deferred-substitute-load.html
  79877. * loader/MainResourceLoader.cpp:
  79878. (WebCore::MainResourceLoader::handleDataLoadNow):
  79879. 2010-07-13 Yoshiki Hayashi <yhayashi@google.com>
  79880. Reviewed by Kent Tamura.
  79881. Make sure correct Nodes are passed to childrenChanged so that
  79882. :last-child gets properly applied when fragment is inserted.
  79883. https://bugs.webkit.org/show_bug.cgi?id=37944
  79884. Test: fast/css/last-child-innerhtml.html
  79885. * dom/ContainerNode.cpp:
  79886. (WebCore::ContainerNode::replaceChild):
  79887. (WebCore::ContainerNode::appendChild):
  79888. 2010-07-13 Ryosuke Niwa <rniwa@webkit.org>
  79889. Reviewed by Kent Tamura.
  79890. InsertListCommand's modifyRange and doApply should be merged
  79891. https://bugs.webkit.org/show_bug.cgi?id=41403
  79892. Isolated the code in doApply to insert and remove lists for single paragraph into doApplyForSingleParagraph.
  79893. Merged the code in modifyRange into doApply and cleaned up.
  79894. No test is added since this is a clean up.
  79895. * editing/InsertListCommand.cpp:
  79896. (WebCore::InsertListCommand::InsertListCommand): m_forceCreateList is no longer initialized
  79897. (WebCore::InsertListCommand::doApply): Isolated the code to insert/remove lists in doApplyForSingleParagraph
  79898. (WebCore::InsertListCommand::doApplyForSingleParagraph): Insert/remove lists for single paragraph
  79899. * editing/InsertListCommand.h: Added doApplyForSingleParagraph and removed m_forceCreateList
  79900. 2010-07-12 Eric Seidel <eric@webkit.org>
  79901. Reviewed by Adam Barth.
  79902. Fix typo in "close the cell" which caused assertion
  79903. https://bugs.webkit.org/show_bug.cgi?id=42138
  79904. * html/HTMLTreeBuilder.cpp:
  79905. (WebCore::HTMLTreeBuilder::closeTheCell):
  79906. 2010-07-12 Eric Seidel <eric@webkit.org>
  79907. Reviewed by Adam Barth.
  79908. Fix line number handling in HTMLTreeBuilder to fix a zillion layout tests
  79909. https://bugs.webkit.org/show_bug.cgi?id=42143
  79910. Covered by a zillion layout tests.
  79911. * html/HTMLTreeBuilder.cpp:
  79912. (WebCore::HTMLTreeBuilder::processEndTag):
  79913. (WebCore::HTMLTreeBuilder::processScriptStartTag):
  79914. 2010-07-12 Jay Civelli <jcivelli@chromium.org>
  79915. Reviewed by Kent Tamura.
  79916. Adding right aligned text called labels to PopupMenus.
  79917. https://bugs.webkit.org/show_bug.cgi?id=41964
  79918. * platform/PopupMenuClient.h:
  79919. * platform/chromium/PopupMenuChromium.cpp:
  79920. (WebCore::PopupListBox::paintRow):
  79921. * rendering/RenderMenuList.cpp:
  79922. (WebCore::RenderMenuList::itemLabel):
  79923. * rendering/RenderMenuList.h:
  79924. * rendering/RenderTextControlSingleLine.cpp:
  79925. (WebCore::RenderTextControlSingleLine::itemLabel):
  79926. * rendering/RenderTextControlSingleLine.h:
  79927. 2010-07-12 Mihnea Ovidenea <mihnea@adobe.com>
  79928. Reviewed by Dirk Schulze.
  79929. [Cairo] Incorrect Test for Text Fill
  79930. https://bugs.webkit.org/show_bug.cgi?id=42123
  79931. Correct test used for text shadow. It currently checks for
  79932. equality with cTextFill. However, this test fails if the
  79933. text drawing mode is set to 'cTextFill | cTextStroke'. Fix
  79934. is to modify the test to be like other Cairo uses of the
  79935. text drawing mode, and check for the cTextFill bit being
  79936. set, not for equality with the bit.
  79937. * platform/graphics/cairo/FontCairo.cpp:
  79938. (WebCore::Font::drawGlyphs):
  79939. 2010-07-12 Eric Seidel <eric@webkit.org>
  79940. Reviewed by Sam Weinig.
  79941. Fix a typo in the adoption agency causing test failures
  79942. https://bugs.webkit.org/show_bug.cgi?id=42133
  79943. The new behavior actually differs from old webkit.
  79944. <p><b><p>TEST
  79945. was not bold in the old parser, but is bold now.
  79946. This matches Minefield and the HTML5 spec.
  79947. Covered by two tests in html5lib/runner.html.
  79948. * html/HTMLTreeBuilder.cpp:
  79949. (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
  79950. 2010-07-12 Pavel Feldman <pfeldman@chromium.org>
  79951. Reviewed by Joseph Pecoraro.
  79952. Web Inspector: provide starts and ends for network phases instead of duration.
  79953. https://bugs.webkit.org/show_bug.cgi?id=42091
  79954. * inspector/InspectorResource.cpp:
  79955. (WebCore::InspectorResource::updateResponse):
  79956. (WebCore::InspectorResource::updateScriptObject):
  79957. (WebCore::InspectorResource::buildObjectForTiming):
  79958. * platform/network/ResourceLoadTiming.h:
  79959. (WebCore::ResourceLoadTiming::deepCopy):
  79960. (WebCore::ResourceLoadTiming::operator==):
  79961. (WebCore::ResourceLoadTiming::ResourceLoadTiming):
  79962. * platform/network/ResourceResponseBase.cpp:
  79963. (WebCore::ResourceResponseBase::ResourceResponseBase):
  79964. (WebCore::ResourceResponseBase::wasCached):
  79965. (WebCore::ResourceResponseBase::setWasCached):
  79966. * platform/network/ResourceResponseBase.h:
  79967. 2010-07-12 Adam Barth <abarth@webkit.org>
  79968. Reviewed by Eric Seidel.
  79969. HTML5 Parser: document.write after onload blows away document
  79970. https://bugs.webkit.org/show_bug.cgi?id=40745
  79971. Rather than blowing away the document when we get a document.write call
  79972. after the document is closed, we new ignore the write. This
  79973. technically violates the spec (which requires us to blow away the
  79974. document), but blowing away the document breaks too many web sites.
  79975. Rather than this patch, we could go back to our old behavior (which was
  79976. to append the bytes just before EOF), but implementing this approach
  79977. (suggested by Henri) will let us gather data about whether his approach
  79978. is workable.
  79979. See also: http://www.w3.org/Bugs/Public/show_bug.cgi?id=9767
  79980. * dom/Document.cpp:
  79981. (WebCore::Document::write):
  79982. * html/HTMLDocumentParser.cpp:
  79983. (WebCore::HTMLDocumentParser::insert):
  79984. 2010-07-12 Tony Gentilcore <tonyg@chromium.org>
  79985. Reviewed by Oliver Hunt.
  79986. Strip BOMs from source before passing to V8
  79987. https://bugs.webkit.org/show_bug.cgi?id=42102
  79988. This extra copy may carry a performance penalty. We should investigate
  79989. whether this allows any simplification in v8/scanner.cc:SkipJavaScriptWhiteSpace().
  79990. No new tests because no new functionality.
  79991. * bindings/v8/ScriptSourceCode.h:
  79992. (WebCore::ScriptSourceCode::ScriptSourceCode):
  79993. 2010-07-12 Gustavo Noronha Silva <gns@gnome.org>
  79994. Unreviewed. make distcheck fix.
  79995. * GNUmakefile.am:
  79996. 2010-07-12 Yuta Kitamura <yutak@chromium.org>
  79997. Reviewed by Alexey Proskuryakov.
  79998. Fix crash caused by unintentional deletion of worker bridge and channel.
  79999. WebSocket: Crash caused by calling close() within onmessage handler
  80000. https://bugs.webkit.org/show_bug.cgi?id=41507
  80001. Test: websocket/tests/workers/close-in-onmessage-crash.html
  80002. * websockets/WebSocket.cpp:
  80003. (WebCore::WebSocket::close): bufferedAmount() may call WebSocket::didClose(),
  80004. which causes m_channel to get freed.
  80005. * websockets/WorkerThreadableWebSocketChannel.cpp:
  80006. (WebCore::WorkerThreadableWebSocketChannel::Bridge::send): Add reference to
  80007. the bridge because waitForMethodCompletion() may dereference the bridge.
  80008. (WebCore::WorkerThreadableWebSocketChannel::Bridge::bufferedAmount): Ditto.
  80009. (WebCore::WorkerThreadableWebSocketChannel::Bridge::waitForMethodCompletion):
  80010. The root cause is a call to WorkerRunLoop::runInMode in this function.
  80011. It may call WebSocket::didClose() even inside WebSocket::close(), which frees
  80012. everything including the worker bridge and the channel.
  80013. 2010-07-12 Adam Barth <abarth@webkit.org>
  80014. Reviewed by Eric Seidel.
  80015. REGRESSION (HTML5 parser?): Impossible to get past the CAPTCHA on postcode.royalmail.com
  80016. https://bugs.webkit.org/show_bug.cgi?id=41797
  80017. Once we resume parsing after script execution, we want to clear the
  80018. preload scanner so we don't scan any bytes it might have accumulated.
  80019. Test: http/tests/loading/preload-slow-loading.php
  80020. * html/HTMLDocumentParser.cpp:
  80021. (WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution):
  80022. 2010-07-12 Albert J. Wong <ajwong@chromium.org>
  80023. Reviewed by Jian Li.
  80024. Adding directional property enums back into
  80025. CSSComputedStyleDeclaration::getPropertyCSSValue().
  80026. https://bugs.webkit.org/show_bug.cgi?id=42122
  80027. The four directional -webkit- properties -- CSSPropertyWebkitMarginEnd,
  80028. CSSPropertyWebkitMarginStart, CSSPropertyWebkitPaddingEnd, and
  80029. CSSPropertyWebkitPaddingStart -- are resolved into other css
  80030. properties before the swtich statement via a call to
  80031. CSSProperty::resolveDirectionAwareProperty(). Thus, they are never
  80032. seen by the switch statement. However, if you leave out a potential
  80033. enum value from the switch, gcc will generate a warning if -Wall is
  80034. specified. This warning breaks the Chromium build. To avoid this,
  80035. we add in the enum values and ASSERT_NOT_REACHED() if they are hit.
  80036. * css/CSSComputedStyleDeclaration.cpp:
  80037. (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  80038. 2010-07-12 Chris Fleizach <cfleizach@apple.com>
  80039. Reviewed by Darin Adler.
  80040. AX converts AtomicStrings to .string() more than needed
  80041. https://bugs.webkit.org/show_bug.cgi?id=42056
  80042. No behavior change. No new tests.
  80043. * accessibility/AccessibilityRenderObject.cpp:
  80044. (WebCore::AccessibilityRenderObject::isPressed):
  80045. (WebCore::siblingWithAriaRole):
  80046. (WebCore::AccessibilityRenderObject::intValue):
  80047. (WebCore::AccessibilityRenderObject::accessibilityDescription):
  80048. (WebCore::AccessibilityRenderObject::hasTextAlternative):
  80049. (WebCore::AccessibilityRenderObject::supportsARIAFlowTo):
  80050. (WebCore::AccessibilityRenderObject::supportsARIADropping):
  80051. (WebCore::AccessibilityRenderObject::supportsARIADragging):
  80052. (WebCore::AccessibilityRenderObject::determineARIADropEffects):
  80053. (WebCore::AccessibilityRenderObject::isExpanded):
  80054. (WebCore::AccessibilityRenderObject::isRequired):
  80055. (WebCore::AccessibilityRenderObject::isSelected):
  80056. (WebCore::AccessibilityRenderObject::supportsARIAOwns):
  80057. (WebCore::AccessibilityRenderObject::isEnabled):
  80058. (WebCore::AccessibilityRenderObject::activeDescendant):
  80059. (WebCore::AccessibilityRenderObject::determineAriaRoleAttribute):
  80060. (WebCore::AccessibilityRenderObject::orientation):
  80061. (WebCore::AccessibilityRenderObject::canSetExpandedAttribute):
  80062. (WebCore::AccessibilityRenderObject::canSetValueAttribute):
  80063. 2010-07-12 Tony Chang <tony@chromium.org>
  80064. Reviewed by David Hyatt.
  80065. crash in FrameView::detachCustomScrollbars
  80066. https://bugs.webkit.org/show_bug.cgi?id=41196
  80067. Test: scrollbars/hidden-iframe-scrollbar-crash.html
  80068. * page/FrameView.cpp:
  80069. (WebCore::FrameView::detachCustomScrollbars):
  80070. 2010-07-12 Eric Seidel <eric@webkit.org>
  80071. Reviewed by Adam Barth.
  80072. HTML tags should break out of foreign content
  80073. https://bugs.webkit.org/show_bug.cgi?id=42106
  80074. Implement another paragraph of the spec to pass another
  80075. bunch of foreign content tests.
  80076. This fixes a bunch of tests in html5lib/runner.html.
  80077. After this change we only have 4 remaining foreign content failures.
  80078. * html/HTMLTreeBuilder.cpp:
  80079. (WebCore::HTMLTreeBuilder::processStartTag):
  80080. 2010-07-12 Zhenyao Mo <zmo@google.com>
  80081. Reviewed by Darin Fisher.
  80082. Bring bufferData and clear to GLES2 compliant
  80083. https://bugs.webkit.org/show_bug.cgi?id=41574
  80084. * html/canvas/WebGLRenderingContext.cpp:
  80085. (WebCore::WebGLRenderingContext::bufferData): Call validateBufferDataUsage().
  80086. (WebCore::WebGLRenderingContext::clear): Check mask.
  80087. (WebCore::WebGLRenderingContext::validateBufferDataUsage): Check usage.
  80088. * html/canvas/WebGLRenderingContext.h: Declare validateBufferDataUsage.
  80089. 2010-07-12 Eric Seidel <eric@webkit.org>
  80090. Unreviewed. Attempt to fix Chromium Windows build.
  80091. Always generate SVGNames and MathMLNames for all ports (to support HTML5)
  80092. https://bugs.webkit.org/show_bug.cgi?id=42050
  80093. Another way to fix this might be to mark all the .in files with
  80094. svn:eol=native. But fixing the perl to be more robust against
  80095. stray whitespace seems to be a better long-term fix.
  80096. No functional change, thus no tests.
  80097. * bindings/scripts/InFilesParser.pm:
  80098. 2010-07-12 Andreas Kling <andreas.kling@nokia.com>
  80099. Reviewed by Kenneth Rohde Christiansen.
  80100. Remove dependency on PlatformString.h in Color.h
  80101. https://bugs.webkit.org/show_bug.cgi?id=42109
  80102. * platform/graphics/Color.cpp:
  80103. * platform/graphics/Color.h:
  80104. 2010-07-12 Eric Seidel <eric@webkit.org>
  80105. Unreviewed, build fix.
  80106. Update HTMLTreeBuilder now that MathMLNames is always generated
  80107. https://bugs.webkit.org/show_bug.cgi?id=42059
  80108. Fix the Windows project file to build MathMLNames.*.
  80109. Also added MathMLElementFactory.* which is a NOOP now, but will
  80110. prevent folks from breaking the build when they turn MathML on.
  80111. * WebCore.vcproj/WebCore.vcproj:
  80112. 2010-07-12 Eric Carlson <eric.carlson@apple.com>
  80113. Reviewed by Darin Adler.
  80114. Update media element's handling of empty 'src' attribute
  80115. https://bugs.webkit.org/show_bug.cgi?id=42001
  80116. * html/HTMLMediaElement.cpp:
  80117. (WebCore::HTMLMediaElement::src): Return getNonEmptyURLAttribute().
  80118. (WebCore::HTMLMediaElement::selectMediaResource): Call noneSupported() for empty 'src'.
  80119. (WebCore::HTMLMediaElement::selectNextSourceChild): Use getNonEmptyURLAttribute() to convert
  80120. 'src' to URL instead of document()->completeURL(). Don't consider a <source> with an empty 'src'.
  80121. * html/HTMLMediaElement.idl: Add 'NonEmpty' option to 'src' attribute.
  80122. * html/HTMLSourceElement.cpp:
  80123. (WebCore::HTMLSourceElement::src): Return getNonEmptyURLAttribute().
  80124. (WebCore::HTMLSourceElement::isURLAttribute): New, 'src' is a URL attribute.
  80125. * html/HTMLSourceElement.h:
  80126. * html/HTMLSourceElement.idl: Add 'NonEmpty' option to 'src' attribute.
  80127. * html/HTMLVideoElement.cpp:
  80128. (WebCore::HTMLVideoElement::parseMappedAttribute): Use getNonEmptyURLAttribute() to convert
  80129. 'poster' to URL instead of document()->completeURL().
  80130. * html/HTMLVideoElement.idl: Add 'NonEmpty' option to 'poster' attribute.
  80131. 2010-07-12 Martin Robinson <mrobinson@igalia.com>
  80132. Reviewed by Xan Lopez.
  80133. [GTK] make dist is broken because of missing headers and other miscellaneous reasons
  80134. https://bugs.webkit.org/show_bug.cgi?id=42107
  80135. * GNUmakefile.am: Remove InspectorFrontend2.idl from the list of IDL files, so
  80136. that it is not built into libWebCoreJS. Add missing header to the source list.
  80137. Make sure to distribute the new file: WebCore/inspector/CodeGeneratorInspector.pm.
  80138. 2010-07-12 Eric Seidel <eric@webkit.org>
  80139. Reviewed by Adam Barth.
  80140. HTMLTreeBuilder needs to support mixing SVG and MathML content
  80141. https://bugs.webkit.org/show_bug.cgi?id=42096
  80142. This is just a direct transcription of another paragraph of the
  80143. HTML5 spec.
  80144. This improved a couple results in html5lib/runner.html, but more
  80145. work to do yet to pass all the foreign content tests.
  80146. * html/HTMLTreeBuilder.cpp:
  80147. (WebCore::HTMLTreeBuilder::processStartTag):
  80148. (WebCore::HTMLTreeBuilder::processEndTag):
  80149. (WebCore::HTMLTreeBuilder::processUsingSecondaryInsertionModeAndAdjustInsertionMode):
  80150. * html/HTMLTreeBuilder.h:
  80151. * mathml/mathtags.in:
  80152. 2010-07-12 Eric Seidel <eric@webkit.org>
  80153. Reviewed by Adam Barth.
  80154. Update HTMLTreeBuilder now that MathMLNames is always generated
  80155. https://bugs.webkit.org/show_bug.cgi?id=42059
  80156. Fix the HTMLTreeBuilder MathML code path to compile and remove
  80157. the MathML and SVG guards now that SVGNames and MathMLNames are
  80158. always compiled into ever port after:
  80159. https://bugs.webkit.org/show_bug.cgi?id=42050
  80160. This fixed a whole bunch of libhtml5 tests now that we have the
  80161. mathml code paths enabled.
  80162. * html/HTMLTreeBuilder.cpp:
  80163. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  80164. (WebCore::HTMLTreeBuilder::processStartTag):
  80165. (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
  80166. (WebCore::HTMLTreeBuilder::processEndTag):
  80167. * page/Frame.cpp:
  80168. (WebCore::Frame::Frame):
  80169. - Always init SVGNames and MathML names.
  80170. 2010-07-12 Simon Fraser <simon.fraser@apple.com>
  80171. Reviewed by Dan Bernstein.
  80172. Don't go into compositing mode for 0x0 plugins
  80173. https://bugs.webkit.org/show_bug.cgi?id=34009
  80174. Don't use compositing for small (0-height or width, or 1x1) plugins, or iframes whose
  80175. height or width is zero.
  80176. Previously we made all compositing decisions inside styleChanged(). However,
  80177. now that plugin and iframe compositing behavior depends on renderer size, we have
  80178. to wait until layout before deciding whether to composite these. This behavior
  80179. change is controlled by the m_compositingDependsOnGeometry flag. When set,
  80180. updateCompositingLayers() always does a hierarchy update.
  80181. Tests: compositing/iframes/iframe-size-from-zero.html
  80182. compositing/iframes/iframe-size-to-zero.html
  80183. compositing/plugins/1x1-composited-plugin.html
  80184. compositing/plugins/large-to-small-composited-plugin.html
  80185. compositing/plugins/small-to-large-composited-plugin.html
  80186. * page/FrameView.cpp:
  80187. (WebCore::FrameView::updateCompositingLayers): No longer bail if usesCompositing() is false; we
  80188. have to always enter updateCompositingLayers().
  80189. (WebCore::FrameView::repaintFixedElementsAfterScrolling): Ditto
  80190. (WebCore::FrameView::enterCompositingMode): Remove bogus return of a void.
  80191. * rendering/RenderLayerCompositor.h: Add m_compositingDependsOnGeometry.
  80192. * rendering/RenderLayerCompositor.cpp:
  80193. (WebCore::RenderLayerCompositor::RenderLayerCompositor): Initialize m_compositingDependsOnGeometry to false.
  80194. (WebCore::RenderLayerCompositor::updateCompositingLayers): If m_compositingDependsOnGeometry is true,
  80195. we always need to run through the layer hierarchy looking for things which need to be composited, even if
  80196. we're not (yet) in compositing mode.
  80197. (WebCore::RenderLayerCompositor::computeCompositingRequirements): Because we can enter compositing mode
  80198. on the fly inside updateCompositingLayers() now, the state of willBeComposited needs to be updated
  80199. when processing the root layer, for the case where the compositing mode changes.
  80200. (WebCore::RenderLayerCompositor::requiresCompositingForPlugin): Set the m_compositingDependsOnGeometry
  80201. flag if we see a potentially-composited plugin. Once we have layout information, only composite the plugin
  80202. if height * width > 1.
  80203. (WebCore::RenderLayerCompositor::requiresCompositingForIFrame): Set the m_compositingDependsOnGeometry
  80204. flag if we see a potentially-composited iframe. Once we have layout information, only composite the plugin
  80205. if height or width is greater than zero.
  80206. 2010-07-12 Simon Fraser <simon.fraser@apple.com>
  80207. Reviewed by Dan Bernstein.
  80208. Need to do a layout when RenderLayers come and go because of compositing
  80209. https://bugs.webkit.org/show_bug.cgi?id=42108
  80210. If we create or destroy RenderLayers for reasons other than style changes
  80211. (e.g. because of composited iframes or plugins), then we need to ensure
  80212. that we do a layout.
  80213. Test: compositing/iframes/layout-on-compositing-change.html
  80214. * rendering/RenderObject.cpp:
  80215. (WebCore::RenderObject::adjustStyleDifference):
  80216. 2010-07-11 Eric Seidel <eric@webkit.org>
  80217. Reviewed by Darin Adler.
  80218. Always generate SVGNames and MathMLNames for all ports (to support HTML5)
  80219. https://bugs.webkit.org/show_bug.cgi?id=42050
  80220. Historically, FOONames has only been generate when ENABLE(FOO) is defined.
  80221. However, for HTML5 parser support, we need to have access to the SVG
  80222. and MathML tag names regardless of whether we the engine is configured
  80223. to render SVG or MathML content.
  80224. This change enables generation of SVGNames and MathMLNames on all ports and
  80225. makes it so that ports can include FOOElementFactory.* regardless of whether
  80226. ENABLE(FOO) is defined (and have it do the right thing).
  80227. No functional change (yet) so no tests.
  80228. * DerivedSources.make:
  80229. * GNUmakefile.am:
  80230. * WebCore.gyp/WebCore.gyp:
  80231. * WebCore.pri:
  80232. * dom/make_names.pl:
  80233. 2010-07-10 Eric Seidel <eric@webkit.org>
  80234. Reviewed by Adam Barth.
  80235. make_names.pl should always generate all names in Names.* files
  80236. https://bugs.webkit.org/show_bug.cgi?id=42023
  80237. Only the *ElementFactory files need to have conditional contents
  80238. based on enabled features. WebCore should always have all known
  80239. names for SVG, MathML, XML, XLink, HTML, etc. generated in the
  80240. various *Names files, even if features are disabled.
  80241. make_names.pl is kinda a big hack at this point. I tried to clean
  80242. up a little as I went. The way I made *Names include all names was to
  80243. read the .in files twice, once using the preprocessor and once without.
  80244. * dom/make_names.pl:
  80245. 2010-07-12 Andreas Kling <andreas.kling@nokia.com>
  80246. Reviewed by Oliver Hunt.
  80247. Canvas: Move fillRect() save/restore into GraphicsContext implementations
  80248. https://bugs.webkit.org/show_bug.cgi?id=42088
  80249. Saving the platform painter state is an expensive operation,
  80250. so don't do it in fillRect() for platforms that don't need it. (CG, Qt)
  80251. * html/canvas/CanvasRenderingContext2D.cpp:
  80252. (WebCore::CanvasRenderingContext2D::fillRect):
  80253. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  80254. (WebCore::GraphicsContext::fillRect):
  80255. * platform/graphics/skia/GraphicsContextSkia.cpp:
  80256. (WebCore::GraphicsContext::fillRect):
  80257. * platform/graphics/wince/GraphicsContextWince.cpp:
  80258. (WebCore::GraphicsContext::fillRect):
  80259. * platform/graphics/wx/GraphicsContextWx.cpp:
  80260. (WebCore::GraphicsContext::fillRect):
  80261. 2010-07-12 Nate Chapin <japhet@chromium.org>
  80262. Reviewed by Darin Fisher.
  80263. Ensure that a cache policy that forces validation is cleared once
  80264. the load event is fired, rather than only doing so at the next
  80265. navigation. This leads to a lot of unnecessary load on AJAX-y
  80266. websites.
  80267. https://bugs.webkit.org/show_bug.cgi?id=41813
  80268. Test: http/tests/xmlhttprequest/cache-headers-after-reload.html
  80269. * loader/FrameLoader.cpp:
  80270. (WebCore::FrameLoader::handledOnloadEvents): Reset m_loadType to FrameLoadTypeStandard.
  80271. (WebCore::FrameLoader::addExtraFieldsToRequest): Only respect the original request's cache policy if the
  80272. DocumentLoader is still loading, and handle the other cache policy settings that were scattered around the loader.
  80273. (WebCore::FrameLoader::loadResourceSynchronously): Merge cachePolicy setting into FrameLoader::addExtraFieldsToRequest.
  80274. * loader/SubresourceLoader.cpp:
  80275. (WebCore::SubresourceLoader::create): Merge cachePolicy setting into FrameLoader::addExtraFieldsToRequest.
  80276. 2010-07-12 Andreas Kling <andreas.kling@nokia.com>
  80277. Reviewed by Oliver Hunt.
  80278. CSS color parsing optimizations
  80279. https://bugs.webkit.org/show_bug.cgi?id=42073
  80280. - Avoid instantiating a CSSParser in parseColor() unless necessary.
  80281. - Fixed hex color fast-path to support strings starting with '#'.
  80282. - Avoid allocating a new string for the value part of a '#' color.
  80283. * css/CSSParser.cpp:
  80284. (WebCore::CSSParser::parseColor):
  80285. * platform/graphics/Color.cpp:
  80286. (WebCore::Color::parseHexColor):
  80287. (WebCore::Color::Color):
  80288. * platform/graphics/Color.h:
  80289. 2010-07-09 Alexey Proskuryakov <ap@apple.com>
  80290. Reviewed by Darin Adler.
  80291. https://bugs.webkit.org/show_bug.cgi?id=13075
  80292. XMLHttpRequest with failed authentication should set status to 401
  80293. https://bugs.webkit.org/show_bug.cgi?id=6871
  80294. <rdar://problem/3363403> 401 error page is never shown
  80295. * platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::receivedCredential):
  80296. Added a comment explaining why we handle empty credentials differently here.
  80297. * platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::ResourceHandle::receivedCredential):
  80298. Bring this code in sync with Mac.
  80299. 2010-07-12 Anders Carlsson <andersca@apple.com>
  80300. Reviewed by Adam Roben.
  80301. Add a PluginController class, use it for invalidation and getting the user agent
  80302. https://bugs.webkit.org/show_bug.cgi?id=42084
  80303. * WebCore.exp.in:
  80304. Export Widget::convertToContainingWindow.
  80305. 2010-07-12 Andreas Kling <andreas.kling@nokia.com>
  80306. Reviewed by Simon Hausmann.
  80307. [Qt] Dragging within webkit with a drag created via Javascript ends up misinterpreting the data
  80308. https://bugs.webkit.org/show_bug.cgi?id=41457
  80309. Treat non-special-cased mime-types as Unicode strings in ClipboardQt's getData()
  80310. Fixes corruption when retrieving data that was set with anything other than text/plain
  80311. Also use QMimeData::setHtml() when applicable to be consistent with PasteboardQt.
  80312. * platform/qt/ClipboardQt.cpp:
  80313. (WebCore::isHtmlMimeType):
  80314. (WebCore::ClipboardQt::getData):
  80315. (WebCore::ClipboardQt::setData):
  80316. 2010-07-12 Steve Block <steveblock@google.com>
  80317. Reviewed by Jeremy Orlow.
  80318. add ANDROID to STORE_FONT_CUSTOM_PLATFORM_DATA
  80319. https://bugs.webkit.org/show_bug.cgi?id=32273
  80320. Tested by existing tests, just adding ANDROID to the list of platforms that use this feature.
  80321. * loader/CachedFont.cpp:
  80322. 2010-07-12 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  80323. Unreviewed.
  80324. [EFL] Move ScriptConcotrollerEfl.cpp from CMakeLists.txt to
  80325. CMakeListsEfl.txt.
  80326. * CMakeLists.txt:
  80327. * CMakeListsEfl.txt:
  80328. 2010-07-12 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  80329. Unreviewed build fix after r60050.
  80330. * CMakeLists.txt: Add WebCore/bindings to the include path.
  80331. 2010-07-09 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
  80332. Reviewed by Xan Lopez.
  80333. [GTK] Crashes when going back with page cache in unknown circunstances
  80334. https://bugs.webkit.org/show_bug.cgi?id=41710
  80335. Could not yet find a way to reproduce this in a layout test. The
  80336. issue is document being NULL, so this NULL-check should be enough
  80337. to get rid of the crash. We are working on trying to find a better
  80338. solution for these null cases, like attaching the document earlier
  80339. when openning a cached page.
  80340. * page/EventHandler.cpp:
  80341. (WebCore::EventHandler::sendScrollEvent):
  80342. 2010-07-12 Alexander Pavlov <apavlov@chromium.org>
  80343. Reviewed by Yury Semikhatsky.
  80344. [Chromium] Crash when stepping on a breakpoint while debugging Web Inspector
  80345. https://bugs.webkit.org/show_bug.cgi?id=41958
  80346. * page/PageGroupLoadDeferrer.cpp:
  80347. (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
  80348. * page/PageGroupLoadDeferrer.h:
  80349. 2010-07-12 François Sausset <sausset@gmail.com>
  80350. Reviewed by Kenneth Rohde Christiansen.
  80351. Make the mathsize MathML attribute handle values in em, px, pt,...
  80352. https://bugs.webkit.org/show_bug.cgi?id=42067
  80353. Test: mathml/presentation/attributes.xhtml
  80354. * css/mathml.css:
  80355. (math[mathsize="small"], mstyle[mathsize="small"], mo[mathsize="small"], mn[mathsize="small"], mi[mathsize="small"], mtext[mathsize="small"], mspace[mathsize="small"], ms[mathsize="small"]):
  80356. (math[mathsize="normal"], mstyle[mathsize="normal"], mo[mathsize="normal"], mn[mathsize="normal"], mi[mathsize="normal"], mtext[mathsize="normal"], mspace[mathsize="normal"], ms[mathsize="normal"]):
  80357. (math[mathsize="big"], mstyle[mathsize="big"], mo[mathsize="big"], mn[mathsize="big"], mi[mathsize="big"], mtext[mathsize="big"], mspace[mathsize="big"], ms[mathsize="big"]):
  80358. * mathml/MathMLElement.cpp:
  80359. (WebCore::MathMLElement::parseMappedAttribute):
  80360. 2010-07-12 Xan Lopez <xlopez@igalia.com>
  80361. Reviewed by Gustavo Noronha.
  80362. Fix compilation with sealed GTK+.
  80363. * platform/gtk/GtkVersioning.h:
  80364. * platform/gtk/PasteboardHelper.cpp:
  80365. (WebCore::PasteboardHelper::fillDataObjectFromDropData):
  80366. 2010-07-12 François Sausset <sausset@gmail.com>
  80367. Reviewed by Kenneth Rohde Christiansen.
  80368. Fix a bug preventing msqrt and mfrac to use style color to draw themselves.
  80369. In mfrac, the fraction bar is now using the color defined by the element style instead of black.
  80370. In msqrt, the radical was always drawn in black due to a colorSpace problem.
  80371. https://bugs.webkit.org/show_bug.cgi?id=41889
  80372. Test: mathml/presentation/roots.xhtml
  80373. Test: mathml/presentation/fractions.xhtml
  80374. * mathml/RenderMathMLFraction.cpp:
  80375. (WebCore::RenderMathMLFraction::paint):
  80376. * mathml/RenderMathMLSquareRoot.cpp:
  80377. (WebCore::RenderMathMLSquareRoot::paint):
  80378. 2010-07-12 Andreas Kling <andreas.kling@nokia.com>
  80379. Reviewed by Antti Koivisto.
  80380. Canvas: arc() with startAngle == endAngle shouldn't add to the path
  80381. https://bugs.webkit.org/show_bug.cgi?id=41420
  80382. Spec link:
  80383. http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-stroke
  80384. * html/canvas/CanvasRenderingContext2D.cpp:
  80385. (WebCore::CanvasRenderingContext2D::arc):
  80386. 2010-07-12 Shinichiro Hamaji <hamaji@chromium.org>
  80387. Reviewed by Ojan Vafai.
  80388. Update padding on Windows?
  80389. https://bugs.webkit.org/show_bug.cgi?id=38016
  80390. Remove internal padding and add 1px vertical padding for Windows.
  80391. * css/themeWin.css:
  80392. (input[type="button"], input[type="submit"], input[type="reset"], input[type="file"]::-webkit-file-upload-button, button):
  80393. * rendering/RenderButton.cpp:
  80394. (WebCore::RenderButton::setupInnerStyle):
  80395. * rendering/RenderTheme.h:
  80396. * rendering/RenderThemeWin.cpp:
  80397. * rendering/RenderThemeWin.h:
  80398. * rendering/RenderThemeWince.cpp:
  80399. * rendering/RenderThemeWince.h:
  80400. 2010-07-12 Pavel Feldman <pfeldman@chromium.org>
  80401. Not reviewed. Chromium tests fix.
  80402. [Chromium, V8] r63057 regressed url tests.
  80403. https://bugs.webkit.org/show_bug.cgi?id=42063
  80404. * bindings/scripts/CodeGeneratorV8.pm:
  80405. 2010-07-12 Steve Block <steveblock@google.com>
  80406. Reviewed by Alexey Proskuryakov.
  80407. XPath substring function does not correctly handle non-positive values for the position argument
  80408. https://bugs.webkit.org/show_bug.cgi?id=41913
  80409. This patch changes the behavior of the XPath evaluate function when a non-positive
  80410. position argument is supplied and no length argument is supplied. In this case,
  80411. we reset the position to 1. This follows the spec and matches the current behaviour
  80412. when a length argument is supplied.
  80413. Test: fast/xpath/substring-non-positive-postion.html
  80414. * xml/XPathFunctions.cpp:
  80415. (WebCore::XPath::FunSubstring::evaluate):
  80416. 2010-06-27 Jeremy Orlow <jorlow@chromium.org>
  80417. Reviewed by Dumitru Daniliuc.
  80418. Implement IDBObjectStore.get/set/remove
  80419. https://bugs.webkit.org/show_bug.cgi?id=41250
  80420. Implement these functions in IDBObjectStore,
  80421. add plumbing, teach IDBAny/Callbacks how to deal
  80422. with IDBKey, and a few small bits of cleanup.
  80423. Test: Modified existing test to provide basic coverage.
  80424. Will add much more extensive layout test coverage
  80425. in future patches.
  80426. * Android.derived.jscbindings.mk:
  80427. * Android.derived.v8bindings.mk:
  80428. * Android.jscbindings.mk:
  80429. * Android.mk:
  80430. * Android.v8bindings.mk:
  80431. * CMakeLists.txt:
  80432. * WebCore.gypi:
  80433. * WebCore.pri:
  80434. * WebCore.pro:
  80435. * WebCore.vcproj/WebCore.vcproj:
  80436. * WebCore.xcodeproj/project.pbxproj:
  80437. * bindings/js/JSIDBAnyCustom.cpp:
  80438. (WebCore::toJS):
  80439. * bindings/v8/custom/V8IDBAnyCustom.cpp:
  80440. (WebCore::toV8):
  80441. * storage/IDBAny.cpp:
  80442. (WebCore::IDBAny::idbKey):
  80443. (WebCore::IDBAny::set):
  80444. * storage/IDBAny.h:
  80445. (WebCore::IDBAny::):
  80446. * storage/IDBAny.idl:
  80447. * storage/IDBCallbacks.h:
  80448. * storage/IDBDatabaseRequest.h:
  80449. * storage/IDBDatabaseRequest.idl:
  80450. * storage/IDBKeyRange.h:
  80451. * storage/IDBObjectStore.h:
  80452. (WebCore::IDBObjectStore::):
  80453. * storage/IDBObjectStoreImpl.cpp:
  80454. (WebCore::IDBObjectStoreImpl::IDBObjectStoreImpl):
  80455. (WebCore::IDBObjectStoreImpl::get):
  80456. (WebCore::IDBObjectStoreImpl::set):
  80457. (WebCore::IDBObjectStoreImpl::remove):
  80458. * storage/IDBObjectStoreImpl.h:
  80459. * storage/IDBObjectStoreRequest.cpp:
  80460. (WebCore::IDBObjectStoreRequest::get):
  80461. (WebCore::IDBObjectStoreRequest::add):
  80462. (WebCore::IDBObjectStoreRequest::modify):
  80463. (WebCore::IDBObjectStoreRequest::addOrModify):
  80464. (WebCore::IDBObjectStoreRequest::remove):
  80465. * storage/IDBObjectStoreRequest.h:
  80466. * storage/IDBObjectStoreRequest.idl:
  80467. * storage/IDBRequest.cpp:
  80468. (WebCore::IDBRequest::onSuccess):
  80469. * storage/IDBRequest.h:
  80470. 2010-07-11 Maciej Stachowiak <mjs@apple.com>
  80471. Reviewed by Dan Bernstein.
  80472. Implement animation-related methods for WebKitTestRunner
  80473. https://bugs.webkit.org/show_bug.cgi?id=42053
  80474. * WebCore.exp.in: Export Document::getElementById for WebKit2's benefit.
  80475. 2010-07-11 Adam Barth <abarth@webkit.org>
  80476. Rubber-stamped by Eric Seidel
  80477. Add a complete list of the HTML5 entities in JSON format.
  80478. * html/HTMLEntityNames.json: Added.
  80479. 2010-07-11 Martin Robinson <mrobinson@igalia.com>
  80480. Reviewed by Xan Lopez.
  80481. [GTK] WebKitWebView should support drops
  80482. https://bugs.webkit.org/show_bug.cgi?id=39843
  80483. Add support for dropping content onto GTK+ WebViews.
  80484. No new tests, as the DRT does not support simulating drops yet.
  80485. * platform/gtk/ClipboardUtilitiesGtk.cpp:
  80486. (WebCore::dragOperationToGdkDragAction): Added.
  80487. (WebCore::gdkDragActionToDragOperation): Properly detect DragOperationEvery.
  80488. * platform/gtk/ClipboardUtilitiesGtk.h: Add declaration for dragOperationToGdkDragAction.
  80489. * platform/gtk/PasteboardHelper.cpp:
  80490. Add new target atom and rename the markup target type to match the others.
  80491. Add a method which fills a data object from drop data.
  80492. (WebCore::PasteboardHelper::initializeTargetList): Add support for new atoms.
  80493. (WebCore::selectionDataToUTF8String): Added this helper.
  80494. (WebCore::PasteboardHelper::getClipboardContents): Use the selectionDataToUTF8String helper.
  80495. (WebCore::PasteboardHelper::targetListForDataObject): Change to reflect markup atom rename.
  80496. (WebCore::PasteboardHelper::fillDataObjectFromDropData): Added.
  80497. (WebCore::PasteboardHelper::dropAtoms): Added.
  80498. * platform/gtk/PasteboardHelper.h: Add declarations of new methods.
  80499. 2010-07-10 Darin Adler <darin@apple.com>
  80500. Reviewed by Anders Carlsson.
  80501. Enhance content attribute reflection for URL attributes, including adding a non-empty option
  80502. https://bugs.webkit.org/show_bug.cgi?id=42040
  80503. Test: fast/dom/URL-attribute-reflection.html
  80504. Changed syntax from [ReflectURL] to [Reflect,URL] and also added support for
  80505. a new option, NonEmpty, which implements the non-empty URL concept from the
  80506. HTML5 specification.
  80507. * bindings/scripts/CodeGenerator.pm: Changed code to expect the Reflect and URL
  80508. extended attributes to come in separately. The URL one simply means "the string
  80509. of this attribute is a URL", since we don't have a distinct type for URL. Also
  80510. added a new NonEmpty extended attribute.
  80511. * bindings/scripts/CodeGeneratorJS.pm: Removed now-unneeded code to handle ReflectURL.
  80512. * bindings/scripts/CodeGeneratorV8.pm: Ditto.
  80513. * bindings/scripts/test/CPP/WebDOMTestObj.cpp: Updated for new added test cases
  80514. and the fix I made to the reflectedCustomURLAttr test.
  80515. * bindings/scripts/test/CPP/WebDOMTestObj.h: Ditto.
  80516. * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: Ditto.
  80517. * bindings/scripts/test/GObject/WebKitDOMTestObj.h: Ditto.
  80518. * bindings/scripts/test/JS/JSTestObj.cpp: Ditto.
  80519. * bindings/scripts/test/JS/JSTestObj.h: Ditto.
  80520. * bindings/scripts/test/ObjC/DOMTestObj.h: Ditto.
  80521. * bindings/scripts/test/ObjC/DOMTestObj.mm: Ditto.
  80522. * bindings/scripts/test/V8/V8TestObj.cpp: Ditto. Also, for some reason the V8
  80523. bindig writes out the keywords into the generated file as comments, so the keyword
  80524. change had a direct efffect on the output file.
  80525. * bindings/scripts/test/TestObj.idl: Changed the test cases for ReflectURL to use
  80526. the new syntax. Added test cases for NonEmpty. Fixed the name of
  80527. reflectedNonEmptyURLAttr, which accidentally was repeating reflectedURLAttr
  80528. instead; never noticed because we never compile the test output.
  80529. * dom/Element.cpp:
  80530. (WebCore::Element::getNonEmptyURLAttribute): Added. For use by NonEmpty and also
  80531. by any code that wants to implement the non-empty URL content attribute semantic.
  80532. * dom/Element.h: Ditto.
  80533. * html/HTMLAnchorElement.idl: Use Reflect,URL instead of ReflectURL.
  80534. * html/HTMLAreaElement.idl: Ditto.
  80535. * html/HTMLFrameElement.idl: Ditto.
  80536. * html/HTMLImageElement.idl: Ditto.
  80537. * html/HTMLInputElement.idl: Ditto.
  80538. * html/HTMLLinkElement.idl: Ditto.
  80539. * html/HTMLMediaElement.idl: Ditto.
  80540. * html/HTMLObjectElement.idl: Ditto.
  80541. * html/HTMLScriptElement.idl: Ditto.
  80542. * html/HTMLVideoElement.idl: Ditto.
  80543. 2010-07-10 Tony Gentilcore <tonyg@chromium.org>
  80544. Reviewed by Darin Adler.
  80545. Add missing derrived sources to Xcode project
  80546. https://bugs.webkit.org/show_bug.cgi?id=42034
  80547. This allows --web-timing to work with build-webkit on OSX with JSC.
  80548. This should have been done in bug 41442.
  80549. No new tests because no new functionality.
  80550. * WebCore.xcodeproj/project.pbxproj:
  80551. 2010-07-10 Anders Carlsson <andersca@apple.com>
  80552. Reviewed by Sam Weinig.
  80553. Don't initialize plug-ins until allowed by the page
  80554. https://bugs.webkit.org/show_bug.cgi?id=42033
  80555. * WebCore.exp.in:
  80556. Export Document::addMediaCanStartListener and Document::removeMediaCanStartListener.
  80557. 2010-07-10 Sam Weinig <sam@webkit.org>
  80558. Reviewed by Anders Carlsson.
  80559. Patch for https://bugs.webkit.org/show_bug.cgi?id=42021
  80560. isEqualNode should work for DocumentType nodes
  80561. Test: fast/dom/Node/isEqualNode.html
  80562. * dom/Node.cpp:
  80563. (WebCore::Node::isEqualNode): Add DocumentType logic from the DOM3 spec.
  80564. 2010-07-10 Daniel Bates <dbates@rim.com>
  80565. Reviewed by Adam Barth.
  80566. Move enum ReasonForCallingCanExecuteScripts to header ScriptControllerBase.h
  80567. https://bugs.webkit.org/show_bug.cgi?id=39339
  80568. Moved the enum ReasonForCallingCanExecuteScripts, which was
  80569. defined in both the JSC and V8 ScriptController.h file, into
  80570. a shared file called ScriptControllerBase.h.
  80571. No functionality was changed, so no new tests.
  80572. * GNUmakefile.am: Added file bindings/ScriptControllerBase.h.
  80573. * WebCore.gypi: Ditto.
  80574. * WebCore.pro: Ditto.
  80575. * WebCore.vcproj/WebCore.vcproj: Ditto.
  80576. * WebCore.vcproj/WebCoreCommon.vsprops: Ditto.
  80577. * WebCore.xcodeproj/project.pbxproj: Ditto.
  80578. * bindings/ScriptControllerBase.h: Added.
  80579. (WebCore::):
  80580. * bindings/js/ScriptController.h: #include ScriptControllerBase.h
  80581. * bindings/v8/ScriptController.h: Ditto.
  80582. 2010-07-10 Dan Bernstein <mitz@apple.com>
  80583. Reviewed by Anders Carlsson.
  80584. <rdar://problem/8153214> Continuation outlines in layers do not paint correctly
  80585. Test: fast/inline/continuation-outlines-with-layers-2.html
  80586. Continuation outlines are normally painted by the containing block. However, when the
  80587. block and the inline are not enclosed by the same self-painting layer, the inline has to
  80588. paint its own outlines. This was handled correctly only for the case where the inline had
  80589. its own self-painting layer, but not when an ancestor inline had the self-painting layer.
  80590. * rendering/InlineFlowBox.cpp:
  80591. (WebCore::InlineFlowBox::paint): Instead of testing for having a self-painting layer, test
  80592. whether any intermediate box between the inline and the containing block has a self-painting
  80593. layer.
  80594. * rendering/RenderBlock.cpp:
  80595. (WebCore::RenderBlock::paintObject): Ditto.
  80596. * rendering/RenderObject.cpp:
  80597. (WebCore::RenderObject::enclosingBoxModelObject): Added this utility method.
  80598. * rendering/RenderObject.h:
  80599. 2010-07-10 François Sausset <sausset@gmail.com>
  80600. Reviewed by Kenneth Rohde Christiansen.
  80601. Build fix: syntax and typo issues
  80602. https://bugs.webkit.org/show_bug.cgi?id=41859
  80603. * html/HTMLTreeBuilder.cpp:
  80604. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  80605. (WebCore::HTMLTreeBuilder::processStartTag):
  80606. 2010-07-10 Eric Seidel <eric@webkit.org>
  80607. Reviewed by Adam Barth.
  80608. HTMLTreeBuilder needs adjustForeignAttributes support
  80609. https://bugs.webkit.org/show_bug.cgi?id=42022
  80610. To add adjust foreign attributes support I had to add an
  80611. AtomicString (prefixed name) to QualifiedName hash. Once I had
  80612. done that, I decided it would be best for the other "adjust" functions
  80613. to share the same hash logic, so I moved them to using the same
  80614. AtomicString -> QualifiedName hash as well.
  80615. Tested by html5lib/runner.html
  80616. * dom/Attribute.h:
  80617. (WebCore::Attribute::parserSetName):
  80618. * html/HTMLTreeBuilder.cpp:
  80619. 2010-07-10 Rob Buis <rwlbuis@gmail.com>
  80620. Reviewed by Darin Adler.
  80621. https://bugs.webkit.org/show_bug.cgi?id=41978
  80622. Remove namespace prefixes from idl files
  80623. No new tests, idl syntax fixes.
  80624. * css/CSSImportRule.idl:
  80625. * css/CSSMediaRule.idl:
  80626. * css/CSSStyleSheet.idl:
  80627. * css/CSSVariablesRule.idl:
  80628. * svg/SVGAnimatedString.idl:
  80629. * svg/SVGColor.idl:
  80630. * svg/SVGDocument.idl:
  80631. * svg/SVGLangSpace.idl:
  80632. * svg/SVGSVGElement.idl:
  80633. * svg/SVGStringList.idl:
  80634. * svg/SVGStylable.idl:
  80635. * svg/SVGStyleElement.idl:
  80636. * svg/SVGTests.idl:
  80637. * svg/SVGZoomEvent.idl:
  80638. * xml/XPathEvaluator.idl:
  80639. 2010-07-10 Dumitru Daniliuc <dumi@chromium.org>
  80640. Unreviewed, GTK build fix.
  80641. * bindings/gobject/GObjectEventListener.h:
  80642. 2010-07-10 Dumitru Daniliuc <dumi@chromium.org>
  80643. Reviewed by Darin Adler.
  80644. Remove unnecessary includes in header files in WebCore/dom.
  80645. https://bugs.webkit.org/show_bug.cgi?id=41941
  80646. * css/StyleMedia.h:
  80647. * dom/BeforeLoadEvent.h:
  80648. * dom/CustomEvent.h:
  80649. * dom/DOMStringMap.h:
  80650. * dom/DeviceOrientationEvent.h:
  80651. * dom/EventListener.h:
  80652. * dom/MessagePort.h:
  80653. * dom/Node.cpp:
  80654. * dom/NodeFilter.h:
  80655. * dom/NodeRareData.h:
  80656. * dom/RegisteredEventListener.h:
  80657. * dom/SelectorNodeList.cpp:
  80658. * dom/SelectorNodeList.h:
  80659. * dom/StyleElement.h:
  80660. * dom/Traversal.h:
  80661. 2010-07-09 Tony Chang <tony@chromium.org>
  80662. Reviewed by Ojan Vafai.
  80663. crash in WebCore::CompositeEditCommand::splitTreeToNode when indenting pre
  80664. https://bugs.webkit.org/show_bug.cgi?id=38231
  80665. Test: editing/execCommand/indent-pre.html
  80666. * editing/IndentOutdentCommand.cpp:
  80667. (WebCore::countParagraphs):
  80668. (WebCore::IndentOutdentCommand::indentRegion): Split text nodes into one node per paragraph
  80669. so moveParagraph doesn't get confused.
  80670. (WebCore::IndentOutdentCommand::splitTextNodes):
  80671. * editing/IndentOutdentCommand.h:
  80672. 2010-07-09 Erik Arvidsson <arv@chromium.org>
  80673. Reviewed by Darin Adler.
  80674. Computed style is not implemented for padding-start, padding-end, margin-start, margin-end
  80675. https://bugs.webkit.org/show_bug.cgi?id=41496
  80676. * css/CSSComputedStyleDeclaration.cpp:
  80677. (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  80678. * css/CSSProperty.cpp:
  80679. (WebCore::CSSProperty::resolveDirectionAwareProperty): This function resolves the property ID for a direction aware property.
  80680. * css/CSSProperty.h:
  80681. * css/CSSStyleSelector.cpp: Use helper function.
  80682. (WebCore::CSSStyleSelector::applyProperty):
  80683. 2010-07-09 Adam Barth <abarth@webkit.org>
  80684. Reviewed by Eric Seidel.
  80685. HTML5 tree builder should pass some LayoutTests
  80686. https://bugs.webkit.org/show_bug.cgi?id=41991
  80687. Before this patch, we weren't attaching text nodes to the render tree,
  80688. which turns out to be important. :)
  80689. This patch fixes more than 10,000 LayoutTests.
  80690. * html/HTMLConstructionSite.cpp:
  80691. (WebCore::HTMLConstructionSite::attach):
  80692. (WebCore::HTMLConstructionSite::attachAtSite):
  80693. 2010-07-09 Patrick Gansterer <paroga@paroga.com>
  80694. Reviewed by Darin Adler.
  80695. [WINCE] Buildfix for TextEncodingRegistry
  80696. https://bugs.webkit.org/show_bug.cgi?id=41992
  80697. Renamed TextCodecWince to TextCodecWinCE.
  80698. * platform/text/TextEncodingRegistry.cpp:
  80699. (WebCore::buildBaseTextCodecMaps):
  80700. (WebCore::extendTextCodecMaps):
  80701. 2010-07-09 Leon Clarke <leonclarke@google.com>
  80702. Reviewed by Adam Barth.
  80703. add support for link prefetching
  80704. https://bugs.webkit.org/show_bug.cgi?id=3652
  80705. Test: fast/dom/HTMLLinkElement/prefetch.html
  80706. * Configurations/FeatureDefines.xcconfig:
  80707. * html/HTMLLinkElement.cpp:
  80708. (WebCore::HTMLLinkElement::tokenizeRelAttribute):
  80709. (WebCore::HTMLLinkElement::process):
  80710. * html/HTMLLinkElement.h:
  80711. (WebCore::HTMLLinkElement::RelAttribute::RelAttribute):
  80712. * loader/Cache.cpp:
  80713. (WebCore::createResource):
  80714. * loader/CachedResource.cpp:
  80715. (WebCore::CachedResource::data):
  80716. (WebCore::CachedResource::didAddClient):
  80717. * loader/CachedResource.h:
  80718. (WebCore::CachedResource::):
  80719. (WebCore::CachedResource::error):
  80720. (WebCore::CachedResource::isPrefetch):
  80721. (WebCore::CachedResource::schedule):
  80722. * loader/CachedScript.cpp:
  80723. * loader/CachedScript.h:
  80724. * loader/DocLoader.cpp:
  80725. (WebCore::DocLoader::requestLinkPrefetch):
  80726. (WebCore::DocLoader::canRequest):
  80727. (WebCore::DocLoader::incrementRequestCount):
  80728. (WebCore::DocLoader::decrementRequestCount):
  80729. * loader/DocLoader.h:
  80730. * loader/loader.cpp:
  80731. (WebCore::cachedResourceTypeToTargetType):
  80732. (WebCore::Loader::determinePriority):
  80733. (WebCore::Loader::load):
  80734. (WebCore::Loader::Host::servePendingRequests):
  80735. (WebCore::Loader::Host::didFinishLoading):
  80736. (WebCore::Loader::Host::didFail):
  80737. (WebCore::Loader::Host::didReceiveResponse):
  80738. (WebCore::Loader::Host::cancelPendingRequests):
  80739. * loader/loader.h:
  80740. (WebCore::Loader::):
  80741. * platform/network/ResourceRequestBase.h:
  80742. (WebCore::ResourceRequestBase::):
  80743. 2010-07-09 James Robinson <jamesr@chromium.org>
  80744. Unreviewed build fix. Add #include to pick up ExceptionCode values for config (like Qt) where it's not picked up indirectly.
  80745. * html/HTMLCanvasElement.cpp:
  80746. 2010-07-09 James Robinson <jamesr@chromium.org>
  80747. Reviewed by Darin Adler.
  80748. Removes CanvasSurface and moves all of its functionality to HTMLCanvasElement.
  80749. https://bugs.webkit.org/show_bug.cgi?id=42005
  80750. http://trac.webkit.org/changeset/55201 introduced a new base class for HTMLCanvasElement called CanvasSurface.
  80751. The intention was that this would allow for code sharing with the then-proposed OffscreenCanvas. However,
  80752. there is no OffscreenCanvas and there's unlikely to be one soon. Additionally CanvasSurface breaks
  80753. encapsulation pretty badly by doing "static_cast<HTMLCanvasElement* const>(this)". Until an abstraction is
  80754. really needed we should just use HTMLCanvasElement when we want to talk about a canvas.
  80755. This patch moves all of CanvasSurface's functionality back up to HTMLCanvasElement and reorders the header
  80756. to be a bit more logical.
  80757. Refactor with no behavior change, thus no new tests.
  80758. * CMakeLists.txt:
  80759. * GNUmakefile.am:
  80760. * WebCore.gypi:
  80761. * WebCore.pro:
  80762. * WebCore.vcproj/WebCore.vcproj:
  80763. * WebCore.xcodeproj/project.pbxproj:
  80764. * dom/CanvasSurface.cpp: Removed.
  80765. * dom/CanvasSurface.h: Removed.
  80766. * html/HTMLCanvasElement.cpp:
  80767. (WebCore::HTMLCanvasElement::HTMLCanvasElement):
  80768. (WebCore::HTMLCanvasElement::willDraw):
  80769. (WebCore::HTMLCanvasElement::setSurfaceSize):
  80770. (WebCore::HTMLCanvasElement::toDataURL):
  80771. (WebCore::HTMLCanvasElement::convertLogicalToDevice):
  80772. (WebCore::HTMLCanvasElement::securityOrigin):
  80773. (WebCore::HTMLCanvasElement::styleSelector):
  80774. (WebCore::HTMLCanvasElement::createImageBuffer):
  80775. (WebCore::HTMLCanvasElement::drawingContext):
  80776. (WebCore::HTMLCanvasElement::buffer):
  80777. (WebCore::HTMLCanvasElement::baseTransform):
  80778. * html/HTMLCanvasElement.h:
  80779. (WebCore::HTMLCanvasElement::setObserver):
  80780. (WebCore::HTMLCanvasElement::width):
  80781. (WebCore::HTMLCanvasElement::height):
  80782. (WebCore::HTMLCanvasElement::size):
  80783. (WebCore::HTMLCanvasElement::toDataURL):
  80784. (WebCore::HTMLCanvasElement::setOriginTainted):
  80785. (WebCore::HTMLCanvasElement::originClean):
  80786. (WebCore::HTMLCanvasElement::hasCreatedImageBuffer):
  80787. 2010-07-09 Simon Fraser <simon.fraser@apple.com>
  80788. Reviewed by Darin Adler.
  80789. Calling layoutTestController.layerTreeAsText() should update layout
  80790. https://bugs.webkit.org/show_bug.cgi?id=41818
  80791. Need to call updateLayout() before we check for any layers, not after,
  80792. since layout will update compositing, and may create layers.
  80793. * page/Frame.cpp:
  80794. (WebCore::Frame::layerTreeAsText):
  80795. 2010-07-09 Kenneth Russell <kbr@google.com>
  80796. Reviewed by Nate Chapin.
  80797. bufferSubData causes crash in WebGLBuffer::associateBufferSubData
  80798. https://bugs.webkit.org/show_bug.cgi?id=42004
  80799. Test: fast/canvas/webgl/index-validation-crash-with-buffer-sub-data.html
  80800. * html/canvas/WebGLBuffer.cpp:
  80801. (WebCore::WebGLBuffer::associateBufferData):
  80802. - Allocate m_elementArrayBuffer for entry point taking only size.
  80803. Guard against allocation failures of m_elementArrayBuffer.
  80804. (WebCore::WebGLBuffer::associateBufferSubData):
  80805. - Guard against any possibility of crashes due to m_elementArrayBuffer being NULL.
  80806. 2010-07-09 Dumitru Daniliuc <dumi@chromium.org>
  80807. Unreviewed, but pre-approved by Eric Seidel.
  80808. Remove unnecessary includes in header files in WebCore/css.
  80809. https://bugs.webkit.org/show_bug.cgi?id=41941
  80810. * css/CSSComputedStyleDeclaration.h:
  80811. * css/CSSFontFaceSource.cpp:
  80812. (WebCore::CSSFontFaceSource::getFontData):
  80813. * css/CSSFontFaceSource.h:
  80814. * css/CSSPrimitiveValueMappings.h:
  80815. * css/StyleMedia.h:
  80816. 2010-07-09 Eric Seidel <eric@webkit.org>
  80817. Reviewed by Adam Barth.
  80818. Get rid of manual case maps in HTMLTreeBuilder
  80819. https://bugs.webkit.org/show_bug.cgi?id=42000
  80820. No functional change, thus no tests.
  80821. * html/HTMLTreeBuilder.cpp:
  80822. 2010-07-09 Tony Gentilcore <tonyg@chromium.org>
  80823. Reviewed by Dimitri Glazkov.
  80824. Implement performance.timing.navigationStart
  80825. https://bugs.webkit.org/show_bug.cgi?id=41815
  80826. See: http://dev.w3.org/2006/webapi/WebTiming/#nt-navigation-start
  80827. * loader/FrameLoader.cpp:
  80828. (WebCore::FrameLoader::loadWithDocumentLoader):
  80829. * loader/FrameLoaderTypes.h:
  80830. (WebCore::FrameLoadTimeline::FrameLoadTimeline):
  80831. * page/Timing.cpp:
  80832. (WebCore::Timing::navigationStart):
  80833. 2010-07-09 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org>
  80834. Reviewed by Kenneth Rohde Christiansen.
  80835. [Qt] GraphicsLayerQt must have syncCompositingStateForThisLayerOnly() implemented
  80836. https://bugs.webkit.org/show_bug.cgi?id=41954
  80837. Add GraphicsLayerQt::syncCompositingStateForThisLayerOnly, a non-recursive
  80838. implementation of GraphicsLayerQt::syncCompositingState and which targets
  80839. the current layer only.
  80840. * platform/graphics/qt/GraphicsLayerQt.cpp:
  80841. (WebCore::GraphicsLayerQt::syncCompositingStateForThisLayerOnly):
  80842. * platform/graphics/qt/GraphicsLayerQt.h:
  80843. 2010-07-09 David Kozub <zub@linux.fjfi.cvut.cz>
  80844. Reviewed by Darin Adler.
  80845. Fix build by adding missing html/TimeRanges.idl to CMakeLists.txt.
  80846. https://bugs.webkit.org/show_bug.cgi?id=41945
  80847. No functional changes, thus no tests.
  80848. * CMakeLists.txt:
  80849. 2010-07-09 Eric Seidel <eric@webkit.org>
  80850. Reviewed by Adam Barth.
  80851. Fix SVG tag name casing for HTMLTreeBuilder
  80852. https://bugs.webkit.org/show_bug.cgi?id=41998
  80853. Tested by html5lib/runner.html
  80854. * html/HTMLTreeBuilder.cpp:
  80855. (WebCore::):
  80856. 2010-07-09 Eric Seidel <eric@webkit.org>
  80857. Reviewed by Adam Barth.
  80858. Implement SVG attribute case mapping for HTMLTreeBuilder
  80859. https://bugs.webkit.org/show_bug.cgi?id=41949
  80860. Tested by html5lib/runner.html.
  80861. * html/HTMLTreeBuilder.cpp:
  80862. 2010-07-09 Andy Estes <aestes@apple.com>
  80863. Reviewed by Adele Peterson.
  80864. Remove the workaround for a Core Animation bug on platforms where the
  80865. bug has been fixed.
  80866. https://bugs.webkit.org/show_bug.cgi?id=41927
  80867. <rdar://problem/7920153>
  80868. * platform/graphics/mac/GraphicsLayerCA.mm:
  80869. (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes): Add
  80870. a compile-time check for platforms that have a Core Animation bug that
  80871. needs working around.
  80872. 2010-07-08 Tony Gentilcore <tonyg@chromium.org>
  80873. Reviewed by Nate Chapin.
  80874. Implement unloadEventEnd, loadEventStart, and loadEventEnd for Web Timing
  80875. https://bugs.webkit.org/show_bug.cgi?id=41332
  80876. Test: fast/dom/webtiming.html
  80877. * loader/FrameLoader.cpp:
  80878. (WebCore::FrameLoader::stopLoading):
  80879. (WebCore::FrameLoader::loadWithDocumentLoader):
  80880. * loader/FrameLoader.h:
  80881. (WebCore::FrameLoader::frameLoadTimeline):
  80882. * loader/FrameLoaderTypes.h:
  80883. (WebCore::FrameLoadTimeline::FrameLoadTimeline):
  80884. * page/DOMWindow.cpp:
  80885. (WebCore::DOMWindow::dispatchLoadEvent):
  80886. * page/Timing.cpp:
  80887. (WebCore::Timing::navigationStart):
  80888. (WebCore::Timing::unloadEventEnd):
  80889. (WebCore::Timing::loadEventStart):
  80890. (WebCore::Timing::loadEventEnd):
  80891. * page/Timing.h:
  80892. * page/Timing.idl:
  80893. 2010-07-09 Dumitru Daniliuc <dumi@chromium.org>
  80894. Unreviewed, but pre-approved by Eric Seidel.
  80895. Remove all unnecessary includes from the header files in WebCore/accessibility/.
  80896. https://bugs.webkit.org/show_bug.cgi?id=41941
  80897. * accessibility/AXObjectCache.h:
  80898. * accessibility/AccessibilityListBox.cpp:
  80899. * accessibility/AccessibilityListBox.h:
  80900. * accessibility/AccessibilityMenuList.h:
  80901. * accessibility/mac/AccessibilityObjectWrapper.h:
  80902. 2010-07-09 Patrick Gansterer <paroga@paroga.com>
  80903. Reviewed by Kent Tamura.
  80904. [WINCE] Buildfix for EventHandlerWin
  80905. https://bugs.webkit.org/show_bug.cgi?id=41909
  80906. Use Clipboard.h instead of ClipboardWin.h on WinCE.
  80907. * page/win/EventHandlerWin.cpp:
  80908. 2010-07-09 Sheriff Bot <webkit.review.bot@gmail.com>
  80909. Unreviewed, rolling out r62946.
  80910. http://trac.webkit.org/changeset/62946
  80911. https://bugs.webkit.org/show_bug.cgi?id=41965
  80912. AppCache inspector support should be enabled in WebKit ToT.
  80913. (Requested by pfeldman_ on #webkit).
  80914. * inspector/front-end/StoragePanel.js:
  80915. (WebInspector.StoragePanel):
  80916. (WebInspector.StoragePanel.prototype.reset):
  80917. (WebInspector.StoragePanel.prototype.addApplicationCache):
  80918. 2010-07-09 François Sausset <sausset@gmail.com>
  80919. Reviewed by Kenneth Rohde Christiansen.
  80920. Implement MathML mathcolor & mathbackground attributes
  80921. https://bugs.webkit.org/show_bug.cgi?id=41895
  80922. Test: mathml/presentation/attributes.xhtml
  80923. * dom/MappedAttributeEntry.h:
  80924. (WebCore::):
  80925. * mathml/MathMLElement.cpp:
  80926. (WebCore::MathMLElement::MathMLElement):
  80927. (WebCore::MathMLElement::mapToEntry):
  80928. (WebCore::MathMLElement::parseMappedAttribute):
  80929. * mathml/MathMLElement.h:
  80930. * mathml/mathattrs.in:
  80931. 2010-07-09 Xiaomei Ji <xji@chromium.org>
  80932. Reviewed by David Levin.
  80933. Fix characters with unicode-bidi-mirror property are not correctly
  80934. mirrored in Linux.
  80935. https://bugs.webkit.org/show_bug.cgi?id=41305
  80936. Since harfbuzz does not do mirroring, chromium should iterate each
  80937. character in the string and mirror it if needed before passing the
  80938. string to harfbuzz for shaping.
  80939. Test: fast/text/international/bidi-mirror-he-ar.html
  80940. * platform/graphics/chromium/FontLinux.cpp:
  80941. (WebCore::TextRunWalker::TextRunWalker):
  80942. (WebCore::TextRunWalker::~TextRunWalker):
  80943. (WebCore::TextRunWalker::mirrorCharacters):
  80944. 2010-07-09 Anders Carlsson <andersca@apple.com>
  80945. Reviewed by Simon Fraser.
  80946. Instantiate Netscape plug-ins, pass geometry information to Plugin
  80947. https://bugs.webkit.org/show_bug.cgi?id=41960
  80948. * WebCore.exp.in:
  80949. Export ScrollView::contentsToWindow.
  80950. 2010-07-09 Patrick Gansterer <paroga@paroga.com>
  80951. Reviewed by Kent Tamura.
  80952. [WINCE] Buildfix for FrameWince after r47440
  80953. https://bugs.webkit.org/show_bug.cgi?id=41904
  80954. * page/wince/FrameWince.cpp: Added property svn:eol-style.
  80955. (WebCore::computePageRectsForFrame):
  80956. (WebCore::imageFromSelection):
  80957. 2010-07-09 Vitaly Repeshko <vitalyr@chromium.org>
  80958. Reviewed by Pavel Feldman.
  80959. [v8] Call JS gc in a fresh context to avoid retaining the current one.
  80960. https://bugs.webkit.org/show_bug.cgi?id=41963
  80961. http://crbug.com/46571
  80962. * bindings/v8/ScriptController.cpp:
  80963. (WebCore::ScriptController::collectGarbage):
  80964. 2010-07-09 Kenneth Russell <kbr@google.com>
  80965. Reviewed by Dimitri Glazkov.
  80966. Crash with uniform array test
  80967. https://bugs.webkit.org/show_bug.cgi?id=36028
  80968. * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
  80969. (WebCore::vertexAttribAndUniformHelperf):
  80970. (WebCore::uniformHelperi):
  80971. (WebCore::uniformMatrixHelper):
  80972. - Fixed type tests and casting of incoming arrays.
  80973. * html/canvas/WebGLRenderingContext.cpp:
  80974. (WebCore::WebGLRenderingContext::getUniform):
  80975. - Fixed crash when null WebGLUniform is passed to getUniform.
  80976. 2010-07-09 Chris Fleizach <cfleizach@apple.com>
  80977. Reviewed by Darin Adler.
  80978. AX: text editing not spoken by VO on web view contenteditable textbox
  80979. https://bugs.webkit.org/show_bug.cgi?id=41912
  80980. Test: platform/mac/accessibility/selection-value-changes-for-aria-textbox.html
  80981. * accessibility/AccessibilityRenderObject.cpp:
  80982. (WebCore::AccessibilityRenderObject::renderObjectIsObservable):
  80983. 2010-07-09 Michael Nordman <michaeln@google.com>
  80984. Reviewed by Dumitru Daniliuc.
  80985. Use class ProgressEvent when raising appcache related progress events and
  80986. set the 'total', 'loaded', and 'lengthComputable' attributes.
  80987. Also raise the final progress event with the 'total' and 'loaded' attribute
  80988. values are equal to one another to keep pace with the spec for this feature.
  80989. https://bugs.webkit.org/show_bug.cgi?id=37602
  80990. Test: http/tests/appcache/progress-counter.html
  80991. * loader/appcache/ApplicationCacheGroup.cpp:
  80992. (WebCore::ApplicationCacheGroup::ApplicationCacheGroup):
  80993. (WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
  80994. (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
  80995. (WebCore::ApplicationCacheGroup::startLoadingEntry):
  80996. (WebCore::CallCacheListenerTask::create):
  80997. (WebCore::CallCacheListenerTask::performTask):
  80998. (WebCore::CallCacheListenerTask::CallCacheListenerTask):
  80999. (WebCore::ApplicationCacheGroup::postListenerTask):
  81000. * loader/appcache/ApplicationCacheGroup.h:
  81001. (WebCore::ApplicationCacheGroup::postListenerTask):
  81002. * loader/appcache/ApplicationCacheHost.cpp:
  81003. (WebCore::ApplicationCacheHost::notifyDOMApplicationCache):
  81004. (WebCore::ApplicationCacheHost::stopDeferringEvents):
  81005. (WebCore::ApplicationCacheHost::dispatchDOMEvent):
  81006. * loader/appcache/ApplicationCacheHost.h:
  81007. (WebCore::ApplicationCacheHost::DeferredEvent::DeferredEvent):
  81008. 2010-07-09 Sebastian Dröge <sebastian.droege@collabora.co.uk>
  81009. Reviewed by Gustavo Noronha Silva.
  81010. Bug 41340 - [GStreamer] Subtle race condition during seeks
  81011. https://bugs.webkit.org/show_bug.cgi?id=41340
  81012. * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
  81013. (webKitWebSrcStop):
  81014. (webKitWebSrcNeedDataMainCb):
  81015. (webKitWebSrcNeedDataCb):
  81016. (webKitWebSrcEnoughDataMainCb):
  81017. (webKitWebSrcEnoughDataCb):
  81018. (webKitWebSrcSeekDataCb):
  81019. (StreamingClient::didFinishLoading):
  81020. Fix two subtle race conditions that can happen during seeks:
  81021. - The timeout callback could be called before the callback ID is
  81022. assigned to the instance private data. This causes the ID to
  81023. be set after the callback has finished and breaks all future
  81024. processing.
  81025. - The source must not go EOS while a seek is pending because
  81026. this confuses appsrc due to the different threads involved here.
  81027. 2010-07-09 Simon Hausmann <simon.hausmann@nokia.com>
  81028. Reviewed by Tor Arne Vestbø.
  81029. [Qt] Removed hard-coded enabled default of video support
  81030. Properly detect video/audio instead of defaulting to true.Properly detect video/audio instead of defaulting to true.Properly detect video/audio instead of defaulting to true.Properly detect video/audio instead of defaulting to true.
  81031. * WebCore.pri:
  81032. 2010-07-09 Ben Murdoch <benm@google.com>
  81033. Reviewed by Steve Block.
  81034. [Arm] Missing NaN check in XPath substring function
  81035. https://bugs.webkit.org/show_bug.cgi?id=41862
  81036. Test: fast/xpath/substring-nan-position.html
  81037. * xml/XPathFunctions.cpp:
  81038. (WebCore::XPath::FunSubstring::evaluate): Add an isnan()
  81039. to the value returned from evaluating the position
  81040. argument and early out and return the empty string.
  81041. 2010-07-09 Simon Hausmann <simon.hausmann@nokia.com>
  81042. Reviewed by Tor Arne Vestbø.
  81043. [Qt] Prospective build fix.
  81044. Moved the media element detection from WebCore.pro into WebCore.pri, where
  81045. all the features are detected. This is also used by build-webkit to determine
  81046. the defaults, which may be the reason for the build breakage.
  81047. * WebCore.pri:
  81048. * WebCore.pro:
  81049. 2010-07-09 Simon Hausmann <simon.hausmann@nokia.com>
  81050. Reviewed by Tor Arne Vestbø.
  81051. [Qt] Re-enable support for QtMultimediaKit as backend for the media elements
  81052. Experimental support is re-enabled if QtMobility is available and the Qt
  81053. version is 4.7 or above.
  81054. * WebCore.pro:
  81055. * platform/graphics/MediaPlayer.cpp:
  81056. * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
  81057. (WebCore::MediaPlayerPrivate::supportsType): Adapt to latest QtMultimediaKit API changes.
  81058. (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
  81059. (WebCore::MediaPlayerPrivate::totalBytes):
  81060. 2010-07-09 Pavel Feldman <pfeldman@chromium.org>
  81061. Reviewed by Yury Semikhatsky.
  81062. Web Inspector: do not show default tooltip when detailed network info is available.
  81063. https://bugs.webkit.org/show_bug.cgi?id=41957
  81064. * English.lproj/localizedStrings.js:
  81065. * inspector/front-end/ResourcesPanel.js:
  81066. (WebInspector.ResourcesPanel):
  81067. (WebInspector.ResourcesPanel.prototype.reset):
  81068. (WebInspector.ResourcesPanel.prototype.showResource):
  81069. (WebInspector.ResourcesPanel.prototype._getPopoverAnchor):
  81070. (WebInspector.ResourcesPanel.prototype._showPopover):
  81071. (WebInspector.ResourceTimeCalculator.prototype.computeBarGraphLabels):
  81072. 2010-07-09 François Sausset <sausset@gmail.com>
  81073. Reviewed by Beth Dakin.
  81074. Correct the default font variant of mtext (regular instead of italic).
  81075. https://bugs.webkit.org/show_bug.cgi?id=41626
  81076. Add test to be sure that only <mi> elements use italic fonts by default.
  81077. Update test with fractions to take into account the correct behaviour of mtext (regular instead of italic).
  81078. * css/mathml.css:
  81079. (mi):
  81080. 2010-07-09 Tony Gentilcore <tonyg@chromium.org>
  81081. Reviewed by Dimitri Glazkov.
  81082. Implement performance.navigation.type
  81083. https://bugs.webkit.org/show_bug.cgi?id=41564
  81084. Tests: fast/dom/navigation-type-back-forward.html
  81085. fast/dom/navigation-type-navigate.html
  81086. fast/dom/navigation-type-reload.html
  81087. * page/Navigation.cpp:
  81088. (WebCore::Navigation::type):
  81089. * page/Navigation.h:
  81090. (WebCore::Navigation::):
  81091. * page/Navigation.idl:
  81092. 2010-07-09 Pavel Feldman <pfeldman@chromium.org>
  81093. Reviewed by Yury Semikhatsky.
  81094. Web Inspector: hide AppCache until implemented.
  81095. https://bugs.webkit.org/show_bug.cgi?id=41858
  81096. * inspector/front-end/StoragePanel.js:
  81097. (WebInspector.StoragePanel):
  81098. (WebInspector.StoragePanel.prototype.reset):
  81099. (WebInspector.StoragePanel.prototype.addApplicationCache):
  81100. 2010-07-09 François Sausset <sausset@gmail.com>
  81101. Reviewed by Kenneth Rohde Christiansen.
  81102. Set the good default behaviour for the columalign attribute on MathML mtable element
  81103. https://bugs.webkit.org/show_bug.cgi?id=41631
  81104. Test update: mathml/tables.xhtml
  81105. * css/mathml.css:
  81106. (math):
  81107. 2010-07-09 Sheriff Bot <webkit.review.bot@gmail.com>
  81108. Unreviewed, rolling out r62937.
  81109. http://trac.webkit.org/changeset/62937
  81110. https://bugs.webkit.org/show_bug.cgi?id=41955
  81111. Crashes SnowLeopard leaks and Windows debug bot in fast/xsl
  81112. /xslt-relative-path.xml, with assertion in
  81113. XSLTProcessorLibxslt.cpp:264 (Requested by WildFox on
  81114. #webkit).
  81115. * xml/XSLTProcessor.h:
  81116. (WebCore::XSLTProcessor::XSLTProcessor):
  81117. * xml/XSLTProcessorLibxslt.cpp:
  81118. (WebCore::docLoaderFunc):
  81119. (WebCore::setXSLTLoadCallBack):
  81120. (WebCore::xsltStylesheetPointer):
  81121. (WebCore::XSLTProcessor::transformToString):
  81122. 2010-07-09 Yael Aharon <yael.aharon@nokia.com>
  81123. Reviewed by Laszlo Gombos.
  81124. NotificationPresenter needs a cancelRequestPermission API
  81125. https://bugs.webkit.org/show_bug.cgi?id=41783
  81126. Updated NotificationPresenter API, to use ScriptExecutionContext instead of origin.
  81127. Added new API NotificationPresenter::cancelRequestsForPermision
  81128. The new API will be implemented and a test will be added in a followup patch.
  81129. * notifications/Notification.cpp:
  81130. (WebCore::Notification::Notification):
  81131. * notifications/NotificationCenter.cpp:
  81132. (WebCore::NotificationCenter::checkPermission):
  81133. (WebCore::NotificationCenter::requestPermission):
  81134. (WebCore::NotificationCenter::disconnectFrame):
  81135. * notifications/NotificationCenter.h:
  81136. * notifications/NotificationPresenter.h:
  81137. 2010-07-09 Andreas Wictor <andreas.wictor@xcerion.com>
  81138. Reviewed by Alexey Proskuryakov.
  81139. Remove global variables from XSLTProcessorLibxslt.cpp
  81140. https://bugs.webkit.org/show_bug.cgi?id=41348
  81141. Remove the globalProcessor and globalDocLoader global variables
  81142. by using the _private field that exists on most libxml structs.
  81143. No new tests, existing tests covers this.
  81144. * xml/XSLTProcessor.h:
  81145. (WebCore::XSLTProcessor::sourceNode):
  81146. (WebCore::XSLTProcessor::XSLTProcessor):
  81147. * xml/XSLTProcessorLibxslt.cpp:
  81148. (WebCore::registeredXSLTProcessors):
  81149. (WebCore::registeredXSLStyleSheets):
  81150. (WebCore::docLoaderFunc):
  81151. (WebCore::clearSavedStyleSheetPointers):
  81152. (WebCore::xsltStylesheetPointer):
  81153. (WebCore::XSLTProcessor::transformToString):
  81154. 2010-07-09 Adam Barth <abarth@webkit.org>
  81155. Unreviewed build fix.
  81156. We recently taught the HTMLTokenizer to recognize self-closing tags,
  81157. <http://trac.webkit.org/changeset/62926>, but that confused the
  81158. LegacyHTMLTreeBuilder. It turns out that it's much happier if we never
  81159. say a tag is self-closing.
  81160. * html/HTMLTreeBuilder.cpp:
  81161. (WebCore::convertToOldStyle):
  81162. 2010-07-09 Nikolas Zimmermann <nzimmermann@rim.com>
  81163. Reviewed by Rob Buis.
  81164. svg/custom/use-instanceRoot-event-bubbling.xhtml test crashes
  81165. https://bugs.webkit.org/show_bug.cgi?id=41931
  81166. Be careful to not mutate (marking it for recreation) the shadow tree, while building it.
  81167. The recent change that cloneNode() properly synchronizes the style/SVG attributes caused this problem.
  81168. Fixes crash seen on the buildbots in svg/custom/use-instanceRoot-event-bubbling.xhtml.
  81169. * svg/SVGUseElement.cpp:
  81170. (WebCore::SVGUseElement::SVGUseElement):
  81171. (WebCore::SVGUseElement::recalcStyle):
  81172. (WebCore::SVGUseElement::buildShadowAndInstanceTree):
  81173. (WebCore::SVGUseElement::invalidateShadowTree):
  81174. * svg/SVGUseElement.h:
  81175. (WebCore::SVGUseElement::setUpdatesBlocked):
  81176. 2010-07-09 Adam Barth <abarth@webkit.org>
  81177. Reviewed by Eric Seidel.
  81178. Skip leading newlines in <textarea>
  81179. https://bugs.webkit.org/show_bug.cgi?id=41947
  81180. We would have caught this earlier with the ASSERT.
  81181. * html/HTMLTokenizer.cpp:
  81182. (WebCore::HTMLTokenizer::nextToken):
  81183. 2010-07-08 Pavel Feldman <pfeldman@chromium.org>
  81184. Reviewed by Yury Semikhatsky.
  81185. Web Inspector: Provide detailed network info in the resources panel.
  81186. https://bugs.webkit.org/show_bug.cgi?id=40227
  81187. * English.lproj/localizedStrings.js:
  81188. * inspector/InspectorController.cpp:
  81189. (WebCore::InspectorController::willSendRequest):
  81190. (WebCore::InspectorController::didReceiveResponse):
  81191. * inspector/InspectorController.h:
  81192. * inspector/InspectorResource.cpp:
  81193. (WebCore::InspectorResource::InspectorResource):
  81194. (WebCore::InspectorResource::updateResponse):
  81195. (WebCore::InspectorResource::updateScriptObject):
  81196. (WebCore::InspectorResource::buildObjectForTiming):
  81197. * inspector/InspectorResource.h:
  81198. * inspector/front-end/ResourcesPanel.js:
  81199. (WebInspector.ResourcesPanel):
  81200. (WebInspector.ResourcesPanel.prototype.elementsToRestoreScrollPositionsFor):
  81201. (WebInspector.ResourcesPanel.prototype._getPopoverAnchor):
  81202. (WebInspector.ResourcesPanel.prototype._showPopover):
  81203. (WebInspector.ResourcesPanel.prototype.hide):
  81204. (WebInspector.ResourceTimeCalculator.prototype.computeBarGraphLabels):
  81205. (WebInspector.ResourceGraph):
  81206. * inspector/front-end/inspector.js:
  81207. (WebInspector.updateResource):
  81208. * platform/network/ResourceLoadTiming.h:
  81209. (WebCore::ResourceLoadTiming::create):
  81210. (WebCore::ResourceLoadTiming::deepCopy):
  81211. (WebCore::ResourceLoadTiming::operator==):
  81212. (WebCore::ResourceLoadTiming::ResourceLoadTiming):
  81213. * platform/network/ResourceRequestBase.h:
  81214. (WebCore::ResourceRequestBase::reportLoadTiming):
  81215. (WebCore::ResourceRequestBase::setReportLoadTiming):
  81216. (WebCore::ResourceRequestBase::ResourceRequestBase):
  81217. * platform/network/ResourceResponseBase.cpp:
  81218. (WebCore::ResourceResponseBase::connectionID):
  81219. (WebCore::ResourceResponseBase::setConnectionID):
  81220. * platform/network/ResourceResponseBase.h:
  81221. 2010-07-09 Eric Seidel <eric@webkit.org>
  81222. Reviewed by Adam Barth.
  81223. Implement self closing start tag state in the tokenizer
  81224. https://bugs.webkit.org/show_bug.cgi?id=41946
  81225. Amazingly we got this far w/o needing self closing.
  81226. The LegacyHTMLTreeBuilder clearly uses the self-closing
  81227. state, but the fact that we never exposed it seems to
  81228. not have caused any test failures. Sad.
  81229. The new HTMLTreeBuilder only needs the self closing state
  81230. for foreign content mode (and a few parse error cases).
  81231. * html/HTMLToken.h:
  81232. (WebCore::HTMLToken::setSelfClosing):
  81233. * html/HTMLTokenizer.cpp:
  81234. (WebCore::HTMLTokenizer::nextToken):
  81235. * html/HTMLTreeBuilder.cpp:
  81236. (WebCore::):
  81237. 2010-07-09 Eric Seidel <eric@webkit.org>
  81238. Reviewed by Adam Barth.
  81239. Add basic "in foreign content" support to the TreeBuilder
  81240. https://bugs.webkit.org/show_bug.cgi?id=41943
  81241. This is covered by numerous tests in html5lib/runner.html.
  81242. "in foreign content" mode requires us to be able to process
  81243. tokens using the "secondary insertion mode". We have to set
  81244. a fake insertion mode to do that, so much of this code is enabling
  81245. setting of fake insertion modes, and then later restoration of the
  81246. insertion mode after execution.
  81247. There is a lot more of foreign content mode to implement, but this is
  81248. a good start resulting in huge test progressions.
  81249. * html/HTMLConstructionSite.cpp:
  81250. (WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement):
  81251. - Use createHTMLElementAndAttachToCurrent instead of copy/paste code.
  81252. - No need to include HTMLElementFactory in this file.
  81253. * html/HTMLConstructionSite.h:
  81254. - RedirectToFosterParentGuard does not need to be a friend class.
  81255. * html/HTMLElementStack.cpp:
  81256. (WebCore::HTMLElementStack::isOnlyHTMLElementsInScope):
  81257. * html/HTMLElementStack.h:
  81258. * html/HTMLTreeBuilder.cpp:
  81259. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  81260. (WebCore::):
  81261. * html/HTMLTreeBuilder.h:
  81262. (WebCore::HTMLTreeBuilder::setInsertionMode):
  81263. (WebCore::HTMLTreeBuilder::isFakeInsertionMode):
  81264. (WebCore::HTMLTreeBuilder::setFakeInsertionMode):
  81265. 2010-07-09 Adam Barth <abarth@webkit.org>
  81266. Reviewed by Eric Seidel.
  81267. Coalesce text nodes when foster parenting
  81268. https://bugs.webkit.org/show_bug.cgi?id=41921
  81269. Introduces the notion of an AttachmentSite to the overall
  81270. HTMLConstructionSite. Maybe we should rename HTMLConstructionSite to
  81271. HTMLConstructionArea since we construct things all over the tree? :)
  81272. There's something wrong in the internal layering in this class, but I
  81273. can't quite see what it is. I added a FIXME for the some of the
  81274. symptoms.
  81275. * html/HTMLConstructionSite.cpp:
  81276. (WebCore::HTMLConstructionSite::attach):
  81277. (WebCore::HTMLConstructionSite::attachAtSite):
  81278. (WebCore::HTMLConstructionSite::insertTextNode):
  81279. (WebCore::HTMLConstructionSite::findFosterSite):
  81280. (WebCore::HTMLConstructionSite::fosterParent):
  81281. * html/HTMLConstructionSite.h:
  81282. 2010-07-08 Nikolas Zimmermann <nzimmermann@rim.com>
  81283. Reviewed by Dirk Schulze.
  81284. RenderSVGRoot does not include border/padding while repainting
  81285. https://bugs.webkit.org/show_bug.cgi?id=41854
  81286. RenderSVGRoot does not include border/padding in the repaint rect.
  81287. clippedOverflowRectForRepaint() was missing. Affects all DRT results,
  81288. as <svg> now gets properly sized.
  81289. Test: svg/custom/repaint-moving-svg-and-div.xhtml
  81290. * rendering/RenderSVGRoot.cpp:
  81291. (WebCore::RenderSVGRoot::repaintRectInLocalCoordinates):
  81292. (WebCore::RenderSVGRoot::clippedOverflowRectForRepaint):
  81293. * rendering/RenderSVGRoot.h:
  81294. 2010-07-09 Albert J. Wong <ajwong@chromium.org>
  81295. Reviewed by Nikolas Zimmermann.
  81296. Add RuntimeEnabledFeatures::timeRangesEnabled() required by r62880
  81297. https://bugs.webkit.org/show_bug.cgi?id=41935
  81298. * bindings/generic/RuntimeEnabledFeatures.cpp:
  81299. (WebCore::RuntimeEnabledFeatures::timeRangesEnabled):
  81300. Add in timeRangesEnabled() implementation.
  81301. * bindings/generic/RuntimeEnabledFeatures.h:
  81302. Add in timeRangesEnabled() declaration.
  81303. 2010-07-09 Eric Seidel <eric@webkit.org>
  81304. Reviewed by Adam Barth.
  81305. Add setInsertionMode setter in preparation for "in foreign content" mode
  81306. https://bugs.webkit.org/show_bug.cgi?id=41942
  81307. "in foreign content" mode needs to be able to use a fake
  81308. insertion mode for processing. We need to be able to save the
  81309. original insertion mode, set a fake one, and then restore the original
  81310. if it wasn't changed. To detect changes, we need all callsites to
  81311. use a setInsertionMode accessor instead of m_insertionMode =
  81312. No functional changes, thus no tests.
  81313. * html/HTMLTreeBuilder.cpp:
  81314. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  81315. (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup):
  81316. (WebCore::HTMLTreeBuilder::processStartTagForInTable):
  81317. (WebCore::HTMLTreeBuilder::processStartTag):
  81318. (WebCore::HTMLTreeBuilder::processBodyEndTagForInBody):
  81319. (WebCore::HTMLTreeBuilder::setInsertionModeAndEnd):
  81320. (WebCore::HTMLTreeBuilder::processEndTagForInTableBody):
  81321. (WebCore::HTMLTreeBuilder::processEndTagForInCell):
  81322. (WebCore::HTMLTreeBuilder::processCaptionEndTagForInCaption):
  81323. (WebCore::HTMLTreeBuilder::processTrEndTagForInRow):
  81324. (WebCore::HTMLTreeBuilder::processEndTag):
  81325. (WebCore::HTMLTreeBuilder::processCharacter):
  81326. (WebCore::HTMLTreeBuilder::processDefaultForInTableTextMode):
  81327. (WebCore::HTMLTreeBuilder::processGenericRCDATAStartTag):
  81328. (WebCore::HTMLTreeBuilder::processGenericRawTextStartTag):
  81329. (WebCore::HTMLTreeBuilder::processScriptStartTag):
  81330. 2010-07-09 Eric Seidel <eric@webkit.org>
  81331. Reviewed by Adam Barth.
  81332. Add insertForeignElement in preparation for adding "in foreign content" support
  81333. https://bugs.webkit.org/show_bug.cgi?id=41940
  81334. No functional changes, thus no tests.
  81335. * html/HTMLConstructionSite.cpp:
  81336. (WebCore::HTMLConstructionSite::insertForeignElement):
  81337. (WebCore::HTMLConstructionSite::createElement):
  81338. (WebCore::HTMLConstructionSite::createHTMLElement):
  81339. * html/HTMLConstructionSite.h:
  81340. 2010-07-09 Adam Barth <abarth@webkit.org>
  81341. Reviewed by Eric Seidel.
  81342. Implementing pending table characters
  81343. https://bugs.webkit.org/show_bug.cgi?id=41916
  81344. This turned out to not be as scary as I thought it would be.
  81345. * html/HTMLTreeBuilder.cpp:
  81346. (WebCore::HTMLTreeBuilder::processDoctypeToken):
  81347. (WebCore::HTMLTreeBuilder::processStartTag):
  81348. (WebCore::HTMLTreeBuilder::processEndTag):
  81349. (WebCore::HTMLTreeBuilder::processComment):
  81350. (WebCore::HTMLTreeBuilder::processCharacter):
  81351. (WebCore::HTMLTreeBuilder::processEndOfFile):
  81352. (WebCore::HTMLTreeBuilder::processDefaultForInTableTextMode):
  81353. * html/HTMLTreeBuilder.h:
  81354. 2010-07-08 Adam Barth <abarth@webkit.org>
  81355. Reviewed by Eric Seidel.
  81356. Handle whitespace correctly
  81357. https://bugs.webkit.org/show_bug.cgi?id=41907
  81358. This patch introduces an extra memcpy in the character token pipeline.
  81359. I'll remove the memcpy in a future patch.
  81360. * html/HTMLConstructionSite.cpp:
  81361. (WebCore::HTMLConstructionSite::insertTextNode):
  81362. * html/HTMLConstructionSite.h:
  81363. * html/HTMLTreeBuilder.cpp:
  81364. (WebCore::HTMLTreeBuilder::processCharacter):
  81365. * html/HTMLTreeBuilder.h:
  81366. 2010-07-09 Eric Seidel <eric@webkit.org>
  81367. Reviewed by Adam Barth.
  81368. Move more mode handling into functions for later re-use
  81369. https://bugs.webkit.org/show_bug.cgi?id=41939
  81370. No functional changes, thus no tests.
  81371. * html/HTMLTreeBuilder.cpp:
  81372. (WebCore::HTMLTreeBuilder::processEndTagForInTableBody):
  81373. (WebCore::HTMLTreeBuilder::processEndTagForInRow):
  81374. (WebCore::HTMLTreeBuilder::processEndTagForInCell):
  81375. (WebCore::HTMLTreeBuilder::processEndTag):
  81376. * html/HTMLTreeBuilder.h:
  81377. 2010-07-09 Eric Seidel <eric@webkit.org>
  81378. Reviewed by Adam Barth.
  81379. Add new popUntilPopped functions to clean up code
  81380. https://bugs.webkit.org/show_bug.cgi?id=41936
  81381. Pretty self explanatory. Much awesome code reduction.
  81382. No functional changes, thus no tests.
  81383. * html/HTMLElementStack.cpp:
  81384. (WebCore::HTMLElementStack::popUntilPopped):
  81385. * html/HTMLElementStack.h:
  81386. * html/HTMLTreeBuilder.cpp:
  81387. (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
  81388. (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
  81389. (WebCore::HTMLTreeBuilder::processEndTagForInBody):
  81390. (WebCore::HTMLTreeBuilder::processCaptionEndTagForInCaption):
  81391. (WebCore::HTMLTreeBuilder::processTableEndTagForInTable):
  81392. (WebCore::HTMLTreeBuilder::processEndTag):
  81393. 2010-07-09 Eric Seidel <eric@webkit.org>
  81394. Unreviewed. Just renaming (discussed with Adam Barth).
  81395. Rename createElement* to createHTMLElement* to better reflect
  81396. behavior. This is in preparation for adding foreign content support.
  81397. * html/HTMLConstructionSite.cpp:
  81398. (WebCore::HTMLConstructionSite::createHTMLElementAndAttachToCurrent):
  81399. (WebCore::HTMLConstructionSite::insertHTMLHtmlElement):
  81400. (WebCore::HTMLConstructionSite::insertHTMLHeadElement):
  81401. (WebCore::HTMLConstructionSite::insertHTMLBodyElement):
  81402. (WebCore::HTMLConstructionSite::insertHTMLElement):
  81403. (WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement):
  81404. (WebCore::HTMLConstructionSite::createHTMLElement):
  81405. * html/HTMLConstructionSite.h:
  81406. * html/HTMLTreeBuilder.cpp:
  81407. (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
  81408. 2010-07-09 Eric Seidel <eric@webkit.org>
  81409. Unreviewed. Just renaming (discussed with Adam Barth).
  81410. Rename insertElement to insertHTMLElement and
  81411. insertSelfClosingElement to insertSelfClosingHTMLElement
  81412. to better reflect what they actually do. This is in preparation
  81413. for adding foreign content support.
  81414. * html/HTMLConstructionSite.cpp:
  81415. (WebCore::HTMLConstructionSite::insertHTMLElement):
  81416. (WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement):
  81417. (WebCore::HTMLConstructionSite::insertFormattingElement):
  81418. (WebCore::HTMLConstructionSite::reconstructTheActiveFormattingElements):
  81419. (WebCore::HTMLConstructionSite::fosterParent):
  81420. * html/HTMLConstructionSite.h:
  81421. * html/HTMLTreeBuilder.cpp:
  81422. (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag):
  81423. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  81424. (WebCore::HTMLTreeBuilder::processStartTagForInTable):
  81425. (WebCore::HTMLTreeBuilder::processStartTag):
  81426. (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
  81427. (WebCore::HTMLTreeBuilder::processStartTagForInHead):
  81428. (WebCore::HTMLTreeBuilder::processGenericRCDATAStartTag):
  81429. (WebCore::HTMLTreeBuilder::processGenericRawTextStartTag):
  81430. 2010-07-08 Rob Buis <rwlbuis@gmail.com>
  81431. Reviewed by Eric Seidel.
  81432. Implement SVGSVGElement.getElementById
  81433. https://bugs.webkit.org/show_bug.cgi?id=41655
  81434. Implement getElementById for SVGSVGElement by trying to
  81435. reuse Document.getElementById. If that fails to find an
  81436. SVG element in the document fragent do a subtree search.
  81437. Test: svg/custom/svg-getelementid.xhtml
  81438. * svg/SVGSVGElement.cpp:
  81439. (WebCore::SVGSVGElement::getElementById):
  81440. * svg/SVGSVGElement.h:
  81441. * svg/SVGSVGElement.idl:
  81442. 2010-07-08 Eric Seidel <eric@webkit.org>
  81443. Reviewed by Adam Barth.
  81444. Unwrap a few || blocks for easier readability
  81445. https://bugs.webkit.org/show_bug.cgi?id=41838
  81446. No functional change, thus no tests.
  81447. * html/HTMLTreeBuilder.cpp:
  81448. (WebCore::HTMLTreeBuilder::adjustedLexerState):
  81449. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  81450. (WebCore::HTMLTreeBuilder::processStartTagForInTable):
  81451. (WebCore::HTMLTreeBuilder::processStartTag):
  81452. (WebCore::HTMLTreeBuilder::processEndTagForInBody):
  81453. (WebCore::HTMLTreeBuilder::processEndTag):
  81454. (WebCore::HTMLTreeBuilder::processComment):
  81455. (WebCore::HTMLTreeBuilder::processStartTagForInHead):
  81456. 2010-07-08 Sam Magnuson <smagnuson@netflix.com>
  81457. Reviewed by Simon Hausmann.
  81458. [Qt] for debugging purposes nice I'm contributing back my FPS
  81459. counter in the AnimationQtBase
  81460. https://bugs.webkit.org/show_bug.cgi?id=40381
  81461. Simply start a timer and count frames in the AnimationQtBase and
  81462. spit out the FPS count at the end of a single animation.
  81463. No new tests: this is a simple debugging aid.
  81464. * platform/graphics/qt/GraphicsLayerQt.cpp:
  81465. (WebCore::AnimationQt::updateState):
  81466. (WebCore::AnimationQt::updateCurrentTime):
  81467. (WebCore::TransformAnimationQt::updateState):
  81468. (WebCore::OpacityAnimationQt::updateState):
  81469. 2010-07-08 Sam Magnuson <smagnuson@netflix.com>
  81470. Reviewed by Simon Hausmann.
  81471. [Qt] instance objects created for QObjects are somtimes GC'd
  81472. https://bugs.webkit.org/show_bug.cgi?id=40352
  81473. In markAggregate loop over all the current fields and for any that
  81474. still have a dynamic property or a child, mark them as
  81475. well. Otherwise the proxy instance will go away and the JS that
  81476. was bound to it will be lost.
  81477. * bridge/qt/qt_instance.cpp:
  81478. (JSC::Bindings::QtInstance::getQtInstance):
  81479. (JSC::Bindings::QtInstance::removeCachedMethod):
  81480. (JSC::Bindings::QtInstance::markAggregate):
  81481. (JSC::Bindings::QtInstance::getPropertyNames):
  81482. 2010-07-08 Ilya Tikhonovsky <loislo@chromium.org>
  81483. Reviewed by Pavel Feldman.
  81484. WebInspector: migrate InspectorDOMAgent to the generated version of
  81485. InspectorFrontend interface. This is the next step on the way to
  81486. Remote Debugging.
  81487. * bindings/js/ScriptEventListener.cpp:
  81488. (WebCore::eventListenerHandlerBody):
  81489. (WebCore::eventListenerHandlerLocation):
  81490. * bindings/js/ScriptEventListener.h:
  81491. * bindings/v8/ScriptEventListener.cpp:
  81492. (WebCore::eventListenerHandlerBody):
  81493. (WebCore::eventListenerHandlerLocation):
  81494. * bindings/v8/ScriptEventListener.h:
  81495. * inspector/CodeGeneratorInspector.pm:
  81496. * inspector/InspectorCSSStore.cpp:
  81497. (WebCore::InspectorCSSStore::inspectorStyleSheet):
  81498. * inspector/InspectorController.cpp:
  81499. (WebCore::InspectorController::connectFrontend):
  81500. * inspector/InspectorController.h:
  81501. (WebCore::InspectorController::inspectorFrontend2):
  81502. * inspector/InspectorDOMAgent.cpp:
  81503. (WebCore::InspectorDOMAgent::InspectorDOMAgent):
  81504. (WebCore::InspectorDOMAgent::setDocument):
  81505. (WebCore::InspectorDOMAgent::handleEvent):
  81506. (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
  81507. (WebCore::InspectorDOMAgent::getEventListenersForNode):
  81508. (WebCore::InspectorDOMAgent::buildObjectForNode):
  81509. (WebCore::InspectorDOMAgent::buildArrayForElementAttributes):
  81510. (WebCore::InspectorDOMAgent::buildArrayForContainerChildren):
  81511. (WebCore::InspectorDOMAgent::buildObjectForEventListener):
  81512. (WebCore::InspectorDOMAgent::didInsertDOMNode):
  81513. (WebCore::InspectorDOMAgent::getStyles):
  81514. (WebCore::InspectorDOMAgent::getAllStyles):
  81515. (WebCore::InspectorDOMAgent::getStyleSheet):
  81516. (WebCore::InspectorDOMAgent::getRuleRangesForStyleSheetId):
  81517. (WebCore::InspectorDOMAgent::getInlineStyle):
  81518. (WebCore::InspectorDOMAgent::getComputedStyle):
  81519. (WebCore::InspectorDOMAgent::buildObjectForAttributeStyles):
  81520. (WebCore::InspectorDOMAgent::buildArrayForCSSRules):
  81521. (WebCore::InspectorDOMAgent::buildArrayForPseudoElements):
  81522. (WebCore::InspectorDOMAgent::applyStyleText):
  81523. (WebCore::InspectorDOMAgent::toggleStyleEnabled):
  81524. (WebCore::InspectorDOMAgent::setRuleSelector):
  81525. (WebCore::InspectorDOMAgent::addRule):
  81526. (WebCore::InspectorDOMAgent::buildObjectForStyle):
  81527. (WebCore::InspectorDOMAgent::populateObjectWithStyleProperties):
  81528. (WebCore::InspectorDOMAgent::buildArrayForDisabledStyleProperties):
  81529. (WebCore::InspectorDOMAgent::buildObjectForStyleSheet):
  81530. (WebCore::InspectorDOMAgent::buildObjectForRule):
  81531. (WebCore::InspectorDOMAgent::toArray):
  81532. (WebCore::InspectorDOMAgent::reportNodesAsSearchResults):
  81533. * inspector/InspectorDOMAgent.h:
  81534. (WebCore::InspectorDOMAgent::create):
  81535. * inspector/InspectorFrontend.cpp:
  81536. * inspector/InspectorFrontend.h:
  81537. * inspector/InspectorFrontend2.idl:
  81538. * inspector/front-end/inspector.js:
  81539. (WebInspector.dispatchMessageFromBackend):
  81540. 2010-07-08 Simon Fraser <simon.fraser@apple.com>
  81541. Reviewed by Darin Adler.
  81542. compositing/iframes/iframe-resize.html displays incorrectly after the resize
  81543. https://bugs.webkit.org/show_bug.cgi?id=41794
  81544. The clip and scroll layers of a composited iframe's RenderLayerCompositor are updated from
  81545. from updateGraphicsLayerGeometry(), but this is too early to get the correct layoutWidth and
  81546. layoutHeight from the FrameView which happen later in layout. So when a widget size changes,
  81547. call updateAfterWidgetResize() directly on the RenderLayerBacking (if any).
  81548. * rendering/RenderLayerBacking.cpp:
  81549. (WebCore::RenderLayerBacking::updateAfterWidgetResize): New method that updates the clip
  81550. and scroll layers of the iframe's content RenderLayerCompositor.
  81551. (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): Call updateAfterWidgetResize()
  81552. * rendering/RenderLayerBacking.h: Add updateAfterWidgetResize().
  81553. * rendering/RenderWidget.cpp:
  81554. (WebCore::RenderWidget::setWidgetGeometry): Call updateAfterWidgetResize().
  81555. 2010-07-08 Simon Fraser <simon.fraser@apple.com>
  81556. Reviewed by Dan Bernstein.
  81557. Calling layoutTestController.layerTreeAsText() should update layout
  81558. https://bugs.webkit.org/show_bug.cgi?id=41818
  81559. Call updateLayout() on the document before obtaining the layer tree.
  81560. This will update compositing layers.
  81561. * page/Frame.cpp:
  81562. (WebCore::Frame::layerTreeAsText):
  81563. 2010-07-08 Adam Barth <abarth@webkit.org>
  81564. Reviewed by Eric Seidel.
  81565. Get my head wrapped around processCharacter
  81566. https://bugs.webkit.org/show_bug.cgi?id=41812
  81567. The bulk of the patch is just stubbing out functions to document what
  81568. the spec tells us to do. I'll implement these functions in subsequent
  81569. patches.
  81570. * html/HTMLConstructionSite.h:
  81571. (WebCore::HTMLConstructionSite::insertLeadingWhitespace):
  81572. (WebCore::HTMLConstructionSite::insertLeadingWhitespaceWithActiveFormattingElements):
  81573. * html/HTMLTreeBuilder.cpp:
  81574. (WebCore::HTMLTreeBuilder::processCharacter):
  81575. * html/HTMLTreeBuilder.h:
  81576. (WebCore::HTMLTreeBuilder::skipLeadingWhitespace):
  81577. 2010-07-08 Tony Chang <tony@chromium.org>
  81578. Reviewed by Ojan Vafai.
  81579. WebCore::InsertLineBreakCommand::shouldUseBreakElement ReadAV@NULL
  81580. https://bugs.webkit.org/show_bug.cgi?id=30116
  81581. Fixing the crash causes text insertions on hidden elements to get ignored
  81582. (not a new bug). This is https://bugs.webkit.org/show_bug.cgi?id=40342
  81583. Test: editing/inserting/return-key-in-hidden-textarea.html
  81584. * editing/InsertLineBreakCommand.cpp:
  81585. (WebCore::InsertLineBreakCommand::doApply):
  81586. * editing/InsertParagraphSeparatorCommand.cpp:
  81587. (WebCore::InsertParagraphSeparatorCommand::doApply):
  81588. 2010-07-08 Sam Weinig <sam@webkit.org>
  81589. Reviewed by Oliver Hunt.
  81590. Fix for https://bugs.webkit.org/show_bug.cgi?id=41923
  81591. TimeRanges should expose a JS constructor
  81592. * html/TimeRanges.idl: Remove [OmitConstructor].
  81593. * page/DOMWindow.idl: Add constructor.
  81594. 2010-07-08 Erik Arvidsson <arv@chromium.org>
  81595. Reviewed by Ojan Vafai.
  81596. Add missing padding-end and margin-end CSS properties.
  81597. https://bugs.webkit.org/show_bug.cgi?id=25761
  81598. Tests: fast/css/margin-start-end.html
  81599. fast/css/padding-start-end.html
  81600. * css/CSSComputedStyleDeclaration.cpp:
  81601. (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  81602. * css/CSSParser.cpp:
  81603. (WebCore::CSSParser::parseValue):
  81604. * css/CSSPropertyNames.in:
  81605. * css/CSSStyleSelector.cpp:
  81606. (WebCore::CSSStyleSelector::applyProperty):
  81607. * inspector/front-end/SourceCSSTokenizer.js:
  81608. (WebInspector.SourceCSSTokenizer):
  81609. 2010-07-08 Aaron Boodman <aa@chromium.org>
  81610. Reviewed by Timothy Hatcher.
  81611. Add the ability for user scripts and user styles to affect just the top frame.
  81612. https://bugs.webkit.org/show_bug.cgi?id=41529
  81613. Tests: userscripts/user-script-all-frames.html
  81614. userscripts/user-script-top-frame-only.html
  81615. userscripts/user-style-all-frames.html
  81616. userscripts/user-style-top-frame-only.html
  81617. * WebCore.base.exp: Update PageGroup method signatures.
  81618. * dom/Document.cpp:
  81619. (WebCore::Document::pageGroupUserSheets): Check allFrames before injecting.
  81620. * page/Frame.cpp:
  81621. (WebCore::Frame::injectUserScriptsForWorld): Ditto.
  81622. * page/PageGroup.cpp:
  81623. (WebCore::PageGroup::addUserScriptToWorld):
  81624. (WebCore::PageGroup::addUserStyleSheetToWorld):
  81625. * page/PageGroup.h:
  81626. * page/UserScript.h:
  81627. (WebCore::UserScript::UserScript):
  81628. (WebCore::UserScript::injectedFrames):
  81629. * page/UserScriptTypes.h:
  81630. (WebCore::):
  81631. * page/UserStyleSheet.h:
  81632. (WebCore::UserStyleSheet::UserStyleSheet):
  81633. (WebCore::UserStyleSheet::injectedFrames):
  81634. 2010-07-08 Adele Peterson <adele@apple.com>
  81635. Reviewed by Jon Honeycutt, Adam Roben, and Darin Adler.
  81636. Fix for https://bugs.webkit.org/show_bug.cgi?id=41721
  81637. <rdar://problem/8158561> Missing plug-in indicator should have a pressed state
  81638. Test: plugins/clicking-missing-plugin-fires-delegate.html
  81639. * html/HTMLPlugInElement.cpp:
  81640. (WebCore::HTMLPlugInElement::HTMLPlugInElement): Initialize m_isCapturingMouseEvents.
  81641. (WebCore::HTMLPlugInElement::detach): If we're still capturing when getting detached, clear the capturing node on the EventHandler.
  81642. (WebCore::HTMLPlugInElement::defaultEventHandler): Call handleMissingPluginIndicatorEvent when the missing plugin indicator is showing.
  81643. * html/HTMLPlugInElement.h:
  81644. (WebCore::HTMLPlugInElement::isCapturingMouseEvents):
  81645. (WebCore::HTMLPlugInElement::setIsCapturingMouseEvents):
  81646. * page/ChromeClient.h:
  81647. (WebCore::ChromeClient::shouldMissingPluginMessageBeButton): Added default implementation.
  81648. * rendering/RenderEmbeddedObject.cpp:
  81649. (WebCore::replacementTextRoundedRectPressedColor):
  81650. (WebCore::RenderEmbeddedObject::RenderEmbeddedObject):
  81651. (WebCore::RenderEmbeddedObject::setMissingPluginIndicatorIsPressed): Added. Causes a repaint when the state changes.
  81652. (WebCore::RenderEmbeddedObject::paintReplaced): Call getReplacementTextGeometry.
  81653. (WebCore::RenderEmbeddedObject::getReplacementTextGeometry): Factored this out so it can be used in paintReplaced and in isInMissingPluginIndicator.
  81654. (WebCore::RenderEmbeddedObject::isInMissingPluginIndicator): Hit test to see if the mouse event is in the missing plugin indicator.
  81655. (WebCore::RenderEmbeddedObject::handleMissingPluginIndicatorEvent): Capture mouse events as needed and track the pressed appearance.
  81656. * rendering/RenderEmbeddedObject.h:
  81657. 2010-07-08 James Robinson <jamesr@google.com>
  81658. Reviewed by Darin Fisher.
  81659. Allow resizing and getting the texture id from an offscreen GLES2Context
  81660. https://bugs.webkit.org/show_bug.cgi?id=41828
  81661. When using an offscreen GLES2Context the caller needs to be able to resize the backing store
  81662. managed by the embedder and get access to a texture id to pass to the compositor. WebGL
  81663. does these actions in an indirect way, it will be refactored to use this path.
  81664. * platform/chromium/GLES2Context.h:
  81665. 2010-07-02 Ojan Vafai <ojan@chromium.org>
  81666. Reviewed by Adam Barth.
  81667. Crash in RenderObject::containingBlock when clearing selection in a display:none node.
  81668. https://bugs.webkit.org/show_bug.cgi?id=41523
  81669. updateStyleIfNeeded before clearing the selection in the RenderView. Otherwise,
  81670. m_selectionStart and m_selectionEnd in RenderView point to garbage object.
  81671. This fixes the crash because updateStyleIfNeeded clears the selection before
  81672. clobbering nodes that contain the selection.
  81673. Test: editing/selection/crash-on-clear-selection.html
  81674. * editing/SelectionController.cpp:
  81675. (WebCore::SelectionController::updateAppearance):
  81676. 2010-07-08 Brent Fulgham <bfulgham@webkit.org>
  81677. Reviewed by Xan Lopez.
  81678. Correct a mistake in calculating squiggle extents. The entire
  81679. quantity was being divided by two, rather than just the unitWidth.
  81680. This error caused the squiggle to be about half the expected length.
  81681. * platform/graphics/cairo/DrawErrorUnderline.h:
  81682. (drawErrorUnderline):
  81683. 2010-07-08 John Abd-El-Malek <jam@chromium.org>
  81684. Reviewed by Darin Fisher.
  81685. [V8] Navigation policy doesn't play nicely with pepper plugins
  81686. https://bugs.webkit.org/show_bug.cgi?id=41864
  81687. * bindings/v8/V8Utilities.cpp:
  81688. (WebCore::callingOrEnteredFrame):
  81689. (WebCore::shouldAllowNavigation):
  81690. (WebCore::navigateIfAllowed):
  81691. 2010-07-08 Jon Honeycutt <jhoneycutt@apple.com>
  81692. Missing plug-ins may cause an assertion failure.
  81693. https://bugs.webkit.org/show_bug.cgi?id=41900
  81694. Reviewed by Adele Peterson.
  81695. Test: plugins/missing-plugin.html
  81696. * plugins/PluginView.cpp:
  81697. (WebCore::PluginView::~PluginView):
  81698. Check whether m_instance is null before trying to remove it from the
  81699. map. Trying to remove a null instance results in an assertion failure.
  81700. (WebCore::PluginView::PluginView):
  81701. Initialize m_instance to 0, because there is an early return that may
  81702. skip its being assigned its proper value.
  81703. 2010-07-08 Darin Adler <darin@apple.com>
  81704. Reviewed by Oliver Hunt.
  81705. Fix a test failure seen only on the Leopard bot.
  81706. * bindings/js/JSSharedWorkerCustom.cpp:
  81707. (WebCore::JSSharedWorkerConstructor::constructJSSharedWorker):
  81708. If SharedWorker::create returns an exception, don't try to create a wrapper
  81709. for its return value, which can be 0.
  81710. 2010-07-08 Albert J. Wong <ajwong@chromium.org>
  81711. Not reviewed, build break fix for chromium.
  81712. A new MediaControlElementType enum was added which caused a warning in
  81713. the Chromium build.
  81714. * rendering/RenderMediaControlsChromium.cpp:
  81715. (WebCore::RenderMediaControlsChromium::paintMediaControlsPart):
  81716. Add MediaVolumeSliderMuteButton enumartion entry.
  81717. 2010-07-08 Dmitry Titov <dimich@chromium.org>
  81718. Reviewed by David Levin.
  81719. Remove IDL declarations and stubs for navigator.registerProtocolHandler and navigator.registerContentHandler.
  81720. https://bugs.webkit.org/show_bug.cgi?id=41878
  81721. This is practically a rollback of http://trac.webkit.org/changeset/50477.
  81722. * page/Chrome.cpp:
  81723. * page/Chrome.h:
  81724. * page/ChromeClient.h:
  81725. * page/Navigator.cpp:
  81726. * page/Navigator.h:
  81727. * page/Navigator.idl:
  81728. 2010-07-08 Xan Lopez <xlopez@igalia.com>
  81729. Reviewed by Darin Adler.
  81730. Fix adoptRef assertion failures caused by stack-allocated ResourceHandle objects
  81731. https://bugs.webkit.org/show_bug.cgi?id=41823
  81732. Create the ResourceHandle manually for now instead of calling
  81733. ::create, since that methods does a few extra checks that make us
  81734. fail a couple of HTTP tests.
  81735. * platform/network/soup/ResourceHandleSoup.cpp:
  81736. (WebCore::):
  81737. 2010-07-08 Alexey Proskuryakov <ap@apple.com>
  81738. Reviewed by David Levin.
  81739. https://bugs.webkit.org/show_bug.cgi?id=41886
  81740. Shorten access control failure explanation messages
  81741. * loader/CrossOriginAccessControl.cpp:
  81742. (WebCore::passesAccessControlCheck):
  81743. * loader/CrossOriginPreflightResultCache.cpp:
  81744. (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginMethod):
  81745. (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginHeaders):
  81746. Removed "response header field" parts from error text - it's long, but doesn't add much
  81747. to header field name.
  81748. * platform/network/ResourceErrorBase.cpp:
  81749. * platform/network/ResourceErrorBase.h:
  81750. * xml/XMLHttpRequest.cpp:
  81751. (WebCore::XMLHttpRequest::didFail):
  81752. * loader/DocumentThreadableLoader.cpp:
  81753. (WebCore::DocumentThreadableLoader::DocumentThreadableLoader):
  81754. (WebCore::DocumentThreadableLoader::makeSimpleCrossOriginAccessRequest):
  81755. (WebCore::DocumentThreadableLoader::didReceiveResponse):
  81756. (WebCore::DocumentThreadableLoader::preflightFailure):
  81757. Renamed the constant for domain. WebCore shouldn't be creating errors observable by WebKit
  81758. clients, because it can't create a platform error, and cannot load a localized string.
  81759. We don't treat cross origin access check failures as true loading failures, so we don't tell
  81760. clients about these.
  81761. 2010-07-08 Eric Carlson <eric.carlson@apple.com>
  81762. Reviewed by Dan Bernstein.
  81763. Mac OS X media controls should have a way to adjust volume incrementally
  81764. https://bugs.webkit.org/show_bug.cgi?id=41718
  81765. <rdar://problem/5679472>
  81766. * css/CSSPrimitiveValueMappings.h:
  81767. (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Handle MediaVolumeSliderMuteButtonPart.
  81768. * css/CSSSelector.cpp:
  81769. (WebCore::CSSSelector::pseudoId): Handle PseudoMediaControlsVolumeSliderMuteButton.
  81770. (WebCore::nameToPseudoTypeMap): Define mediaControlsVolumeSliderMuteButton.
  81771. (WebCore::CSSSelector::extractPseudoType): Handle PseudoMediaControlsVolumeSliderMuteButton.
  81772. * css/CSSSelector.h:
  81773. (WebCore::CSSSelector::): Define PseudoMediaControlsVolumeSliderMuteButton.
  81774. * css/CSSValueKeywords.in: Define media-volume-slider-mute-button.
  81775. * css/mediaControls.css:
  81776. (audio::-webkit-media-controls-volume-slider-mute-button, video::-webkit-media-controls-volume-slider-mute-button): New.
  81777. * css/mediaControlsQuickTime.css:
  81778. (audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel): Add "overflow: visible"
  81779. so volume slider pop-up will be visible.
  81780. (audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button): Make
  81781. mute button 14x12 instead of 15x14 so it matches the size in the volume slider.
  81782. (audio::-webkit-media-controls-volume-slider-container, video::-webkit-media-controls-volume-slider-container):
  81783. (audio::-webkit-media-controls-volume-slider, video::-webkit-media-controls-volume-slider):
  81784. (audio::-webkit-media-controls-volume-slider-mute-button, video::-webkit-media-controls-volume-slider-mute-button):
  81785. New.
  81786. * platform/ThemeTypes.h: Define MediaVolumeSliderMuteButtonPart.
  81787. * rendering/MediaControlElements.cpp:
  81788. (WebCore::MediaControlInputElement::MediaControlInputElement): Handle MEDIA_CONTROLS_VOLUME_SLIDER_MUTE_BUTTON.
  81789. (WebCore::MediaControlMuteButtonElement::MediaControlMuteButtonElement): Add ButtonLocation
  81790. parameter both mute buttons can be created.
  81791. (WebCore::MediaControlMuteButtonElement::create): Ditto.
  81792. * rendering/MediaControlElements.h: Define MediaVolumeSliderMuteButton and ButtonLocation.
  81793. * rendering/RenderMedia.cpp:
  81794. (WebCore::RenderMedia::styleDidChange): Update volume slider mute button.
  81795. (WebCore::RenderMedia::createMuteButton): Pass ButtonLocation parameter to MediaControlMuteButtonElement::create.
  81796. (WebCore::RenderMedia::createVolumeSliderMuteButton): New.
  81797. (WebCore::RenderMedia::updateControls): Deal with volume slider mute button.
  81798. (WebCore::RenderMedia::updateVolumeSliderContainer): Don't assume all ports want to position
  81799. the volume slider in the same place, call new volumeSliderOffsetFromMuteButton theme function.
  81800. (WebCore::RenderMedia::forwardEvent): Handle volume slider mute button.
  81801. * rendering/RenderMedia.h:
  81802. * rendering/RenderTheme.cpp:
  81803. (WebCore::RenderTheme::paint): Handle MediaVolumeSliderMuteButtonPart.
  81804. (WebCore::RenderTheme::volumeSliderOffsetFromMuteButton): New, return location previously hard
  81805. coded in RenderMedia::updateVolumeSliderContainer.
  81806. * rendering/RenderTheme.h:
  81807. * rendering/RenderThemeMac.h:
  81808. * rendering/RenderThemeMac.mm:
  81809. (WebCore::RenderThemeMac::adjustMediaSliderThumbSize): Deal with the volume slider thumb.
  81810. (WebCore::RenderThemeMac::paintMediaVolumeSliderContainer): New, call the WKSI paint function
  81811. for this button.
  81812. (WebCore::RenderThemeMac::paintMediaVolumeSliderTrack): Ditto.
  81813. (WebCore::RenderThemeMac::paintMediaVolumeSliderThumb): Ditto.
  81814. (WebCore::RenderThemeMac::shouldRenderMediaControlPart): Draw the volume slider parts when
  81815. using the new controller UI for a movie that has audio.
  81816. (WebCore::RenderThemeMac::volumeSliderOffsetFromMuteButton): New, position the volume slider
  81817. directly above the mute button.
  81818. * rendering/style/RenderStyleConstants.h: Define MEDIA_CONTROLS_VOLUME_SLIDER_MUTE_BUTTON.
  81819. 2010-07-08 Antonio Gomes <tonikitoo@webkit.org>
  81820. Unreviewed complementary fix for r62815
  81821. One last time change made me blind to a "!" in a if statment.
  81822. * editing/EditorCommand.cpp:
  81823. (WebCore::executeToggleStyle):
  81824. 2010-07-07 Ojan Vafai <ojan@chromium.org>
  81825. Reviewed by Darin Adler.
  81826. Regression: Selection anchor + focus swap when arrow keys after setBaseAndExtent
  81827. https://bugs.webkit.org/show_bug.cgi?id=32605
  81828. Only have selections be non-directional when they are set via the mouse.
  81829. Otherwise, all selections are directional.
  81830. Test: editing/selection/extend-forward-after-set-base-and-extent.html
  81831. * WebCore.base.exp:
  81832. * editing/SelectionController.cpp:
  81833. (WebCore::SelectionController::setSelection):
  81834. * editing/SelectionController.h:
  81835. (WebCore::SelectionController::setSelection):
  81836. * page/EventHandler.cpp:
  81837. (WebCore::EventHandler::selectClosestWordFromMouseEvent):
  81838. (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent):
  81839. (WebCore::EventHandler::handleMousePressEventTripleClick):
  81840. (WebCore::EventHandler::handleMousePressEventSingleClick):
  81841. (WebCore::EventHandler::updateSelectionForMouseDrag):
  81842. 2010-07-08 Antonio Gomes <tonikitoo@webkit.org>
  81843. Reviewed by Ojan Vafai.
  81844. Refactor platform dependent editing behavior code out of Settings (part II)
  81845. https://bugs.webkit.org/show_bug.cgi?id=39854
  81846. Mac port is currently the only port relying on a style to be present on the start
  81847. of a selection to consider the style as applied or not. All other ports
  81848. have to have the style present in all text node of the selection for such.
  81849. Patch makes situations that depend on this check like this to be controlled by
  81850. the EditingBehavior class.
  81851. Refactoring, so no new tests needed.
  81852. * editing/EditingBehavior.h:
  81853. (WebCore::EditingBehavior::shouldToggleStyleBasedOnStartOfSelection):
  81854. * editing/EditorCommand.cpp:
  81855. (WebCore::executeToggleStyle):
  81856. 2010-07-08 Anders Carlsson <andersca@apple.com>
  81857. Reviewed by Sam Weinig.
  81858. Add stubbed out PluginView class
  81859. https://bugs.webkit.org/show_bug.cgi?id=41879
  81860. Export functions needed by WebKit2.
  81861. * WebCore.exp.in:
  81862. 2010-07-08 Ben Murdoch <benm@google.com>
  81863. Reviewed by Pavel Feldman.
  81864. Fix build break in V8ConsoleCustom.cpp
  81865. https://bugs.webkit.org/show_bug.cgi?id=40825
  81866. No new tests as just fixing a build break.
  81867. * bindings/v8/custom/V8ConsoleCustom.cpp: Guard profilesAccessorGetter
  81868. appropriately.
  81869. 2010-07-08 Sam Weinig <sam@webkit.org>
  81870. Reviewed by Anders Carlsson.
  81871. Pass Page to BackForwardControllerClient::createBackForwardList since it
  81872. may be called before implementations of BackForwardControllerClient have
  81873. access to a Page.
  81874. * history/BackForwardController.cpp:
  81875. (WebCore::BackForwardController::BackForwardController):
  81876. * history/BackForwardControllerClient.h:
  81877. 2010-07-08 Sheriff Bot <webkit.review.bot@gmail.com>
  81878. Unreviewed, rolling out r62778.
  81879. http://trac.webkit.org/changeset/62778
  81880. https://bugs.webkit.org/show_bug.cgi?id=41866
  81881. Broke svg/W3C-SVG-1.1/text-intro-05-t.svg in debug (Requested
  81882. by pfeldman on #webkit).
  81883. * platform/graphics/chromium/FontLinux.cpp:
  81884. (WebCore::TextRunWalker::TextRunWalker):
  81885. (WebCore::TextRunWalker::~TextRunWalker):
  81886. 2010-07-08 Vitaly Repeshko <vitalyr@chromium.org>
  81887. Reviewed by Pavel Feldman.
  81888. Fix adoptRef usage violation in IDBObjectStoreRequest
  81889. https://bugs.webkit.org/show_bug.cgi?id=41869
  81890. * storage/IDBObjectStoreRequest.cpp:
  81891. (WebCore::IDBObjectStoreRequest::IDBObjectStoreRequest):
  81892. 2010-07-08 Sam Weinig <sam@webkit.org>
  81893. Another chromium build fix.
  81894. * history/BackForwardListChromium.cpp:
  81895. (WebCore::BackForwardListImpl::goBack):
  81896. (WebCore::BackForwardListImpl::goForward):
  81897. (WebCore::BackForwardListImpl::backListWithLimit):
  81898. (WebCore::BackForwardListImpl::forwardListWithLimit):
  81899. (WebCore::BackForwardListImpl::containsItem):
  81900. (WebCore::BackForwardListImpl::removeItem):
  81901. 2010-07-08 Sam Weinig <sam@webkit.org>
  81902. Fix Chromium build.
  81903. * WebCore.gyp/WebCore.gyp:
  81904. 2010-07-08 Sam Weinig <sam@webkit.org>
  81905. Reviewed by Anders Carlsson.
  81906. Patch for https://bugs.webkit.org/show_bug.cgi?id=41826
  81907. Convert BackForwardList to an abstract base class and add BackForwardListImpl
  81908. as the concrete implementation of it.
  81909. * CMakeLists.txt:
  81910. * GNUmakefile.am:
  81911. * WebCore.exp.in:
  81912. * WebCore.gypi:
  81913. * WebCore.pro:
  81914. * WebCore.vcproj/WebCore.vcproj:
  81915. * WebCore.xcodeproj/project.pbxproj:
  81916. * history/BackForwardController.cpp:
  81917. (WebCore::BackForwardController::BackForwardController):
  81918. * history/BackForwardController.h:
  81919. * history/BackForwardList.cpp: Removed.
  81920. * history/BackForwardList.h:
  81921. (WebCore::BackForwardList::~BackForwardList):
  81922. (WebCore::BackForwardList::isBackForwardListImpl):
  81923. (WebCore::BackForwardList::BackForwardList):
  81924. * history/BackForwardListChromium.cpp:
  81925. * history/BackForwardListImpl.cpp: Copied from WebCore/history/BackForwardList.cpp.
  81926. * history/BackForwardListImpl.h: Copied from WebCore/history/BackForwardList.h.
  81927. (WebCore::BackForwardListImpl::isBackForwardListImpl):
  81928. 2010-07-08 Vitaly Repeshko <vitalyr@chromium.org>
  81929. Reviewed by Pavel Feldman.
  81930. Fix adoptRef usage violations (mostly in chromium)
  81931. https://bugs.webkit.org/show_bug.cgi?id=41863
  81932. * bindings/v8/V8DOMWrapper.cpp:
  81933. (WebCore::V8DOMWrapper::wrapNativeNodeFilter):
  81934. * bindings/v8/V8NodeFilterCondition.h:
  81935. (WebCore::V8NodeFilterCondition::create):
  81936. * bindings/v8/custom/V8HTMLAllCollectionCustom.cpp:
  81937. (WebCore::getNamedItems):
  81938. * bindings/v8/custom/V8HTMLCollectionCustom.cpp:
  81939. (WebCore::getNamedItems):
  81940. * bindings/v8/custom/V8HTMLFormElementCustom.cpp:
  81941. (WebCore::V8HTMLFormElement::namedPropertyGetter):
  81942. * bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
  81943. (WebCore::V8HTMLSelectElement::namedPropertyGetter):
  81944. * bindings/v8/custom/V8NamedNodesCollection.h:
  81945. (WebCore::V8NamedNodesCollection::create):
  81946. (WebCore::V8NamedNodesCollection::V8NamedNodesCollection):
  81947. * storage/IDBDatabaseRequest.cpp:
  81948. (WebCore::IDBDatabaseRequest::IDBDatabaseRequest):
  81949. * storage/IndexedDatabaseRequest.cpp:
  81950. (WebCore::IndexedDatabaseRequest::IndexedDatabaseRequest):
  81951. 2010-07-08 Xan Lopez <xlopez@igalia.com>
  81952. Reviewed by Gustavo Noronha.
  81953. Silence a few noisy build rules.
  81954. * GNUmakefile.am:
  81955. 2010-07-08 Andreas Kling <andreas.kling@nokia.com>
  81956. Reviewed by Simon Hausmann.
  81957. [Qt] Canvas putImageData() resets painter state
  81958. https://bugs.webkit.org/show_bug.cgi?id=41827
  81959. Use drawImage() to copy pixels in putImageData() instead of QPixmap::operator=
  81960. Test: fast/canvas/canvas-state-intact-after-putImageData.html
  81961. * platform/graphics/qt/ImageBufferQt.cpp:
  81962. (WebCore::putImageData):
  81963. 2010-07-08 Andrey Kosyakov <caseq@chromium.org>
  81964. Reviewed by Pavel Feldman.
  81965. Web Inspector: Do not invoke shortcuts popup upon bare '?' if it's typed
  81966. into an input field.
  81967. https://bugs.webkit.org/show_bug.cgi?id=41760
  81968. * inspector/front-end/inspector.js:
  81969. (WebInspector.documentKeyDown):
  81970. 2010-07-08 Patrick Gansterer <paroga@paroga.com>
  81971. Reviewed by Kent Tamura.
  81972. [WINCE] Buildfix for EventHandler
  81973. https://bugs.webkit.org/show_bug.cgi?id=41829
  81974. SM_MENUDROPALIGNMENT isn't supported on WinCE.
  81975. * page/EventHandler.cpp:
  81976. (WebCore::EventHandler::sendContextMenuEventForKey):
  81977. 2010-07-08 Xiaomei Ji <xji@chromium.org>
  81978. Reviewed by David Levin.
  81979. Fix characters with unicode-bidi-mirror property are not correctly
  81980. mirrored in Linux.
  81981. https://bugs.webkit.org/show_bug.cgi?id=41305
  81982. Since harfbuzz does not do mirroring, chromium should iterate each
  81983. character in the string and mirror it if needed before passing the
  81984. string to harfbuzz for shaping.
  81985. Test: fast/text/international/bidi-mirror-he-ar.html
  81986. * platform/graphics/chromium/FontLinux.cpp:
  81987. (WebCore::TextRunWalker::TextRunWalker):
  81988. (WebCore::TextRunWalker::~TextRunWalker):
  81989. 2010-07-08 Nikolas Zimmermann <nzimmermann@rim.com>
  81990. Reviewed by Rob Buis & Dirk Schulze.
  81991. SVG text transformed incorrectly when a transform and gradient applied
  81992. https://bugs.webkit.org/show_bug.cgi?id=41563
  81993. When rendering filled/stroked text with a gradient, RenderSVGResourceGradient creates a mask image,
  81994. renders the text into the image, and then clips the current context against that image buffer,
  81995. and filling a rect afterwards. This happened in the wrong coordinate space so far. Don't actually
  81996. try to compute the right transformation matrix (which failed), but extract it directly from the
  81997. GraphicsContext and apply this transformation to the mask image context.
  81998. Fixes pixellation in svg/batik/text/textEffect3.svg and makes the new test svg/custom/text-rotated-gradient.svg pass.
  81999. Only affects CoreGraphics platforms.
  82000. Test: svg/custom/text-rotated-gradient.svg
  82001. * rendering/RenderSVGResourceGradient.cpp:
  82002. (WebCore::absoluteTransformFromContext):
  82003. (WebCore::createMaskAndSwapContextForTextGradient):
  82004. (WebCore::clipToTextMask):
  82005. 2010-07-07 Alexander Pavlov <apavlov@chromium.org>
  82006. Reviewed by Darin Fisher.
  82007. [Chromium] Crash when re-entering message loop
  82008. https://bugs.webkit.org/show_bug.cgi?id=41697
  82009. A Chromium-specific test case will be submitted into Chromium shortly.
  82010. * page/PageGroupLoadDeferrer.cpp:
  82011. (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
  82012. * page/PageGroupLoadDeferrer.h:
  82013. (WebCore::PageGroupLoadDeferrer::nextDeferrer):
  82014. 2010-07-07 Yury Semikhatsky <yurys@chromium.org>
  82015. Reviewed by Pavel Feldman.
  82016. Web Inspector: skip breakpoints when script is already paused
  82017. https://bugs.webkit.org/show_bug.cgi?id=41768
  82018. Test: inspector/debugger-no-nested-pause.html
  82019. * bindings/v8/ScriptDebugServer.cpp:
  82020. (WebCore::ScriptDebugServer::handleV8DebugEvent):
  82021. 2010-07-08 Eric Seidel <eric@webkit.org>
  82022. Reviewed by Adam Barth.
  82023. WebCore/benchmarks/parser/html-parser.html spends a lot of time in deprecatedParseURL
  82024. https://bugs.webkit.org/show_bug.cgi?id=41807
  82025. Wow. This was an awful bug. We were always taking the slow case
  82026. every time we parsed a URL. This is about a 10% speedup on our
  82027. parsing benchmark, and might cause as much as a 1% speedup for Apple's
  82028. PLT (even though I can't run that).
  82029. We still spend a lot of time in deprecatedParseURL. We might consider
  82030. inlining it if its being kept around much longer.
  82031. No behavioral change, just fixing a broken optimization.
  82032. * css/CSSHelper.cpp:
  82033. (WebCore::deprecatedParseURL):
  82034. - We only need to strip characters <= '\r', not >.
  82035. 2010-07-08 Yury Semikhatsky <yurys@chromium.org>
  82036. Reviewed by Pavel Feldman.
  82037. Web Inspector: factor out common part of debugger tests
  82038. https://bugs.webkit.org/show_bug.cgi?id=41836
  82039. * bindings/js/ScriptDebugServer.cpp:
  82040. (WebCore::ScriptDebugServer::recompileAllJSFunctions): postpone script recompilation if JS stack is not empty.
  82041. 2010-07-08 Patrick Gansterer <paroga@paroga.com>
  82042. Reviewed by Kent Tamura.
  82043. Buildfix for !ENABLE(SVG_ANIMATION) after r51567.
  82044. https://bugs.webkit.org/show_bug.cgi?id=41803
  82045. * svg/SVGDocumentExtensions.cpp:
  82046. (WebCore::SVGDocumentExtensions::sampleAnimationAtTime):
  82047. 2010-07-07 Pavel Podivilov <podivilov@chromium.org>
  82048. Reviewed by Nate Chapin.
  82049. [V8] Fix document wrapper memory leak in bindings.
  82050. https://bugs.webkit.org/show_bug.cgi?id=41771
  82051. * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
  82052. (WebCore::V8HTMLDocument::WrapInShadowObject): Do not create static persistent handle
  82053. to shadowConstructor because it keeps the first context alive forever.
  82054. 2010-07-07 Andreas Kling <andreas.kling@nokia.com>
  82055. Reviewed by Tor Arne Vestbø.
  82056. [Qt] Enable smooth pixmap transforms by default
  82057. https://bugs.webkit.org/show_bug.cgi?id=41774
  82058. * platform/graphics/qt/GraphicsContextQt.cpp:
  82059. (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
  82060. (WebCore::GraphicsContext::setImageInterpolationQuality):
  82061. 2010-07-07 Jesus Sanchez-Palencia <jesus@webkit.org>
  82062. Reviewed by Antti Koivisto.
  82063. [Qt] Missing include to build QtWebKit with WebKit2 in MediaPlayerPrivatePhonon.cpp
  82064. https://bugs.webkit.org/show_bug.cgi?id=41767
  82065. * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp: Add Logging.h include
  82066. 2010-07-07 Pavel Podivilov <podivilov@chromium.org>
  82067. Reviewed by Yury Semikhatsky.
  82068. Web Inspector: Move v8-related script offset conversion to DebuggerScript.js
  82069. https://bugs.webkit.org/show_bug.cgi?id=41755
  82070. * bindings/v8/ScriptDebugServer.cpp:
  82071. (WebCore::ScriptDebugServer::dispatchDidParseSource):
  82072. 2010-07-07 Nicolas Weber <thakis@chromium.org>
  82073. Reviewed by Dimitri Glazkov.
  82074. https://bugs.webkit.org/show_bug.cgi?id=41580
  82075. Fix rendering of radial gradients in skia if both points of the
  82076. gradient are the same and r0 > 0.
  82077. Test: fast/gradients/radial-centered.html
  82078. * platform/graphics/skia/GradientSkia.cpp:
  82079. (WebCore::Gradient::platformGradient):
  82080. 2010-06-18 MORITA Hajime <morrita@google.com>
  82081. Reviewed by Ojan Vafai.
  82082. https://bugs.webkit.org/show_bug.cgi?id=26526
  82083. Add support for input events (oninput) to contentEditable elements
  82084. Made a default event handler on the Node to dispatch an input event when
  82085. webkitEditableContentChanged arrived.
  82086. Test: fast/events/event-input-contentEditable.html
  82087. * dom/Node.cpp:
  82088. (WebCore::Node::defaultEventHandler):
  82089. 2010-07-07 Darin Adler <darin@apple.com>
  82090. Reviewed by Anders Carlsson.
  82091. Fix adoptRef assertion failures caused by stack-allocated ResourceHandle objects
  82092. https://bugs.webkit.org/show_bug.cgi?id=41823
  82093. * platform/network/android/ResourceHandleAndroid.cpp:
  82094. (WebCore::ResourceHandle::loadResourceSynchronously): Use adoptRef and new instead
  82095. of allocating an object on the stack.
  82096. * platform/network/curl/ResourceHandleCurl.cpp:
  82097. (WebCore::ResourceHandle::loadResourceSynchronously): Ditto.
  82098. * platform/network/qt/ResourceHandleQt.cpp:
  82099. (WebCore::ResourceHandle::loadResourceSynchronously): Ditto.
  82100. * platform/network/soup/ResourceHandleSoup.cpp:
  82101. (WebCore::ResourceHandle::loadResourceSynchronously): Use create instead of
  82102. allocating an object on the stack.
  82103. 2010-07-07 Joseph Pecoraro <joepeck@webkit.org>
  82104. Rubber-stamped by Pavel Feldman.
  82105. Web Inspector: All RefPtr arguments and return values should be changed to PassRefPtr according to common practice.
  82106. https://bugs.webkit.org/show_bug.cgi?id=41759
  82107. * inspector/CodeGeneratorInspector.pm:
  82108. 2010-07-07 Chris Fleizach <cfleizach@apple.com>
  82109. Reviewed by Darin Adler.
  82110. AX: TextArea should return AXSelectedTextRange of 0,0 if the cursor is not in the text area
  82111. https://bugs.webkit.org/show_bug.cgi?id=41810
  82112. Test: platform/mac/accessibility/selected-text-range-for-empty-textarea.html
  82113. * accessibility/mac/AccessibilityObjectWrapper.mm:
  82114. (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
  82115. 2010-07-07 Chris Fleizach <cfleizach@apple.com>
  82116. Reviewed by Beth Dakin.
  82117. AX: Data table heuristics: assume data table if at least one row or column of TH cells exist
  82118. https://bugs.webkit.org/show_bug.cgi?id=41806
  82119. Test: platform/mac/accessibility/table-with-row-col-of-headers.html
  82120. * accessibility/AccessibilityTable.cpp:
  82121. (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
  82122. 2010-07-07 Mark Rowe <mrowe@apple.com>
  82123. Fix the build.
  82124. Xcode decided to change the reference type from "Relative to Build Product" to "Relative to Group"
  82125. when I moved the file between folders. That's incredibly confusing so I'll file a bug against Xcode.
  82126. * WebCore.xcodeproj/project.pbxproj:
  82127. 2010-07-07 Mark Rowe <mrowe@apple.com>
  82128. Fix the MathML build.
  82129. * html/HTMLTreeBuilder.cpp:
  82130. (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately): Fix a typo in a variable name.
  82131. 2010-07-07 James Hawkins <jhawkins@chromium.org>
  82132. Reviewed by Dimitri Glazkov.
  82133. Move setSuggestedValue() and suggestedValue() back to public as it's
  82134. now used by WebInputElement.
  82135. https://bugs.webkit.org/show_bug.cgi?id=41785
  82136. No new tests, as the method is only being used by Chromium's WebKit
  82137. API.
  82138. * html/HTMLInputElement.h:
  82139. 2010-07-07 Mark Rowe <mrowe@apple.com>
  82140. Rubber-stamped by Sam Weinig.
  82141. Clean up the project file slightly.
  82142. Remove obsolete .exp files, add the new .exp.in file, and move ExportFileGenerator.cpp in to the Exports collection.
  82143. * WebCore.xcodeproj/project.pbxproj:
  82144. 2010-07-07 James Robinson <jamesr@chromium.org> and Vincent Scheib <schieb@chromium.org>
  82145. Reviewed by Dimitri Glazkov.
  82146. WebCore::GLES2Context should allow creating onscreen and offscreen contexts
  82147. https://bugs.webkit.org/show_bug.cgi?id=41492
  82148. You should be able to create a GLES2Context for rendering both on screen
  82149. and off screen (to a texture). Chromium's layer renderer (used for compositing)
  82150. does the former. Currently WebGL does the latter by side stepping the
  82151. WebCore::GLES2Context API completely. Longer term it should move over to using this.
  82152. * platform/chromium/GLES2Context.h:
  82153. * platform/graphics/chromium/LayerRendererChromium.cpp:
  82154. (WebCore::LayerRendererChromium::initGL):
  82155. 2010-07-07 Simon Fraser <simon.fraser@apple.com>
  82156. Reviewed by Dan Bernstein.
  82157. Document::ownerElement() should return an HTMLFrameOwnerElement
  82158. https://bugs.webkit.org/show_bug.cgi?id=41789
  82159. Change return type of RenderLayerCompositor::enclosingIFrameElement() to
  82160. HTMLFrameOwnerElement*. No behavioral changes.
  82161. * rendering/RenderLayerCompositor.cpp:
  82162. (WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingIFrame):
  82163. (WebCore::RenderLayerCompositor::enclosingIFrameElement):
  82164. * rendering/RenderLayerCompositor.h:
  82165. 2010-07-07 Adam Barth <abarth@webkit.org>
  82166. Reviewed by Sam Weinig.
  82167. Add reverseFind to Vector and deploy in HTML5 parser
  82168. https://bugs.webkit.org/show_bug.cgi?id=41778
  82169. This patch moves reverseFind from begin an
  82170. HTMLFormattingElementList-specific concept to begin a general Vector
  82171. concept. Also, instead of using Entry as the type for operator==, we
  82172. now use elements directly. The old code compiled because the Entry
  82173. constructor wasn't explicit, which means we were churning refs on every
  82174. comparison!
  82175. * html/HTMLFormattingElementList.cpp:
  82176. (WebCore::HTMLFormattingElementList::find):
  82177. (WebCore::HTMLFormattingElementList::bookmarkFor):
  82178. (WebCore::HTMLFormattingElementList::insertAt):
  82179. (WebCore::HTMLFormattingElementList::remove):
  82180. * html/HTMLFormattingElementList.h:
  82181. (WebCore::HTMLFormattingElementList::Entry::operator==):
  82182. (WebCore::HTMLFormattingElementList::Entry::operator!=):
  82183. 2010-07-07 Darin Adler <darin@apple.com>
  82184. Reviewed by Adam Barth.
  82185. Turn on adoptRef assertion for RefCounted
  82186. https://bugs.webkit.org/show_bug.cgi?id=41547
  82187. The WebCore part of this fixes all the assertions I saw in testing.
  82188. * html/FileReader.cpp:
  82189. (WebCore::FileReader::readAsBinaryString): Added null checks.
  82190. Callers from JavaScript can pass the wrong type, which becomes null.
  82191. (WebCore::FileReader::readAsText): Ditto.
  82192. (WebCore::FileReader::readAsDataURL): Ditto.
  82193. * html/FileStreamClient.h: Removed unneeded include.
  82194. * html/FileStreamProxy.cpp:
  82195. (WebCore::FileStreamProxy::FileStreamProxy): Made inline and moved
  82196. some of the code, including the ref, into the create function.
  82197. (WebCore::FileStreamProxy::create): Moved some of the code from
  82198. the constructor here. It's safe to ref once the object has been
  82199. created and adopted.
  82200. * html/FileStreamProxy.h: Changed create function to no longer be
  82201. inlined. Also removed an unneeded include.
  82202. * page/EventSource.cpp:
  82203. (WebCore::EventSource::EventSource): Made inline, changed arguments
  82204. and moved code that involves the need to ref this object into the
  82205. create function. Also moved failure handling out there since it's
  82206. cleaner to have a function that fails than a constructor. For
  82207. example, the function can return 0.
  82208. (WebCore::EventSource::create): Moved some of the code from the
  82209. constructor here.
  82210. * page/EventSource.h: Removed unneeded includes. Made the
  82211. creation function non-inline. Changed the arguments to the constructor.
  82212. * storage/StorageAreaSync.cpp:
  82213. (WebCore::StorageAreaSync::StorageAreaSync): Made inline. Moved
  82214. code that requires ref'ing this object out to the create function.
  82215. (WebCore::StorageAreaSync::create): Moved some of the code from the
  82216. constructor here.
  82217. * storage/StorageAreaSync.h: Removed unneeded includes. Changed
  82218. the type of one of the constructor arguments from String to
  82219. const String&.
  82220. * workers/SharedWorker.cpp:
  82221. (WebCore::SharedWorker::SharedWorker): Made inline. Moved most of
  82222. the setup code out of here into the create function.
  82223. (WebCore::SharedWorker::create): Moved the code here.
  82224. * workers/SharedWorker.h: Removed unneeded includes. Made the
  82225. create function non-inline. Marked the toSharedWorker override private
  82226. to catch people doing an unnecessary virtual function call if they
  82227. already have a SharedWorker*.
  82228. * workers/Worker.cpp:
  82229. (WebCore::Worker::Worker): Made inline. Moved most of the setup code
  82230. out of here into the create function.
  82231. (WebCore::Worker::create): Moved the code here.
  82232. * workers/Worker.h: Made the create function non-inline. Changed
  82233. the arguments to the constructor.
  82234. 2010-07-07 Chris Fleizach <cfleizach@apple.com>
  82235. Reviewed by Beth Dakin.
  82236. AX: when a node's role changes, the AX tree might need to be updated
  82237. https://bugs.webkit.org/show_bug.cgi?id=41784
  82238. Test: platform/mac/accessibility/update-children-when-aria-role-changes.html
  82239. * accessibility/AccessibilityRenderObject.cpp:
  82240. (WebCore::AccessibilityRenderObject::AccessibilityRenderObject):
  82241. (WebCore::AccessibilityRenderObject::updateAccessibilityRole):
  82242. 2010-07-07 Chris Fleizach <cfleizach@apple.com>
  82243. Reviewed by Beth Dakin.
  82244. AX: when an element uses role="text" but no aria-label, it should default to textUnderElement()
  82245. https://bugs.webkit.org/show_bug.cgi?id=41780
  82246. Test: platform/mac/accessibility/static-text-role-uses-text-under-element.html
  82247. * accessibility/AccessibilityRenderObject.cpp:
  82248. (WebCore::AccessibilityRenderObject::stringValue):
  82249. Fallback to textUnderElement() if text() does not return any explicitly set text.
  82250. (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
  82251. Remove erroneous check to ignore text elements that didn't have a explicit text value.
  82252. 2010-07-07 Simon Fraser <simon.fraser@apple.com>
  82253. Reviewed by Darin Adler.
  82254. Document::ownerElement() should return an HTMLFrameOwnerElement
  82255. https://bugs.webkit.org/show_bug.cgi?id=41789
  82256. Change the return type of Document::ownerElement() to an HTMLFrameOwnerElement, for better
  82257. type checking. No behavioral changes.
  82258. * accessibility/mac/AccessibilityObjectWrapper.mm:
  82259. * dom/Document.cpp:
  82260. (WebCore::Document::ownerElement):
  82261. * dom/Document.h:
  82262. * editing/SelectionController.cpp:
  82263. * rendering/RenderBoxModelObject.cpp:
  82264. * rendering/RenderLayer.cpp:
  82265. * rendering/RenderView.cpp:
  82266. 2010-07-07 Simon Fraser <simon.fraser@apple.com>
  82267. Reviewed by Dan Bernstein.
  82268. REGRESSION: GMail becomes blank after closing other tabs
  82269. https://bugs.webkit.org/show_bug.cgi?id=40421
  82270. RenderLayerCompositor's attach/detachRootPlatformLayer methods use
  82271. setNeedsStyleRecalc() in order to trigger acclerated compositing layers
  82272. to be hooked together across iframe boundaries. However, it was possible
  82273. for these to get called while inside of Document::recalcStyle(), which
  82274. is bad because it can cause the recalc to fail to get processed.
  82275. Fix this by using the existing queuePostAttachCallback() functionality
  82276. to delay the call to setNeedsStyleRecalc() if post-attach callbacks
  82277. are suspended (indicating that we're inside recalcStyle()).
  82278. No new tests because I wasn't able to make a test that shows the problem.
  82279. * dom/ContainerNode.h: Make queuePostAttachCallback() public.
  82280. * dom/ContainerNode.cpp:
  82281. (WebCore::ContainerNode::postAttachCallbacksAreSuspended): Added; returns
  82282. whether s_attachDepth is non-zero.
  82283. * rendering/RenderLayerCompositor.cpp:
  82284. (WebCore::RenderLayerCompositor::attachRootPlatformLayer): Call scheduleNeedsStyleRecalc()
  82285. instead of setNeedsStyleRecalc().
  82286. (WebCore::RenderLayerCompositor::detachRootPlatformLayer): Ditto.
  82287. (WebCore::needsStyleRecalcCallback): Here we call setNeedsStyleRecalc().
  82288. (WebCore::RenderLayerCompositor::scheduleNeedsStyleRecalc):
  82289. (WebCore::RenderLayerCompositor::notifyIFramesOfCompositingChange):
  82290. * rendering/RenderLayerCompositor.h: Add scheduleNeedsStyleRecalc().
  82291. 2010-07-06 Simon Fraser <simon.fraser@apple.com>
  82292. Reviewed by Dan Bernstein.
  82293. Incorrect compositing order with negative z-index
  82294. https://bugs.webkit.org/show_bug.cgi?id=38959
  82295. When painting the contents of compositing layers whose phase is "GraphicsLayerPaintBackground"
  82296. (indicating that they are used for the background of elements with negative z-index children),
  82297. we need to paint the non-composited negative-z-order descendants at the end of the background phase, so
  82298. they appear behind composited negative-z-order descendants.
  82299. Test: compositing/z-order/negative-z-index.html
  82300. * rendering/RenderLayerBacking.cpp:
  82301. (WebCore::RenderLayerBacking::paintIntoLayer):
  82302. 2010-07-06 Simon Fraser <simon.fraser@apple.com>
  82303. Reviewed by Dan Bernstein.
  82304. Incorrect compositing order with negative z-index
  82305. https://bugs.webkit.org/show_bug.cgi?id=38959
  82306. Prerequisite: adopt new paintList() method that was added when painting compositing layer contents.
  82307. No behavioral changes.
  82308. * rendering/RenderLayerBacking.cpp:
  82309. (WebCore::RenderLayerBacking::paintIntoLayer):
  82310. 2010-07-07 Adam Barth <abarth@webkit.org>
  82311. Unreviewed.
  82312. Fix ASSERT in Eric's previous patch. I think he tested his patch in
  82313. Release and not Debug.
  82314. * html/HTMLFormattingElementList.h:
  82315. (WebCore::HTMLFormattingElementList::Entry::Entry):
  82316. (WebCore::HTMLFormattingElementList::findIndex):
  82317. 2010-07-07 Eric Seidel <eric@webkit.org>
  82318. Reviewed by Adam Barth.
  82319. Grease the TreeBuilder's lightning
  82320. https://bugs.webkit.org/show_bug.cgi?id=41756
  82321. Brings the new TreeBuilder from 7s to 3s on the parser benchmark.
  82322. This makes performance comparable to the old parser.
  82323. We have not begun to fight! There is so much fat left on these bones.
  82324. * html/HTMLFormattingElementList.cpp:
  82325. (WebCore::HTMLFormattingElementList::find):
  82326. (WebCore::HTMLFormattingElementList::bookmarkFor):
  82327. (WebCore::HTMLFormattingElementList::insertAt):
  82328. (WebCore::HTMLFormattingElementList::remove):
  82329. * html/HTMLFormattingElementList.h:
  82330. (WebCore::HTMLFormattingElementList::findIndex):
  82331. 2010-07-07 Eric Seidel <eric@webkit.org>
  82332. Reviewed by Adam Barth.
  82333. HTMLTreeBuilder is way too slow
  82334. https://bugs.webkit.org/show_bug.cgi?id=41754
  82335. This takes us from 14s to 7s on our parsing benchmark.
  82336. That's still much slower than the old tree builder, but there
  82337. is a huge amount of fat left to trim.
  82338. Vector<T> wasn't able to inline all the Entry functions when
  82339. they were buried in the cpp. Turns out the active formatting elements
  82340. list is very hot.
  82341. I'm not sure Vector<T> is going to be the right data structure for us
  82342. in the end, but it has done alright for bring-up.
  82343. * html/HTMLFormattingElementList.cpp:
  82344. * html/HTMLFormattingElementList.h:
  82345. (WebCore::HTMLFormattingElementList::Entry::Entry):
  82346. (WebCore::HTMLFormattingElementList::Entry::~Entry):
  82347. (WebCore::HTMLFormattingElementList::Entry::isMarker):
  82348. (WebCore::HTMLFormattingElementList::Entry::element):
  82349. (WebCore::HTMLFormattingElementList::Entry::replaceElement):
  82350. (WebCore::HTMLFormattingElementList::Entry::operator==):
  82351. (WebCore::HTMLFormattingElementList::Entry::operator!=):
  82352. 2010-07-06 Darin Adler <darin@apple.com>
  82353. Reviewed by Adam Barth.
  82354. More OwnPtr work, including making clear set the pointer to 0 before deletion
  82355. https://bugs.webkit.org/show_bug.cgi?id=41727
  82356. * WebCore.exp.in: Updated.
  82357. * css/CSSSelector.h:
  82358. (WebCore::CSSSelector::RareData::RareData): Use adoptPtr.
  82359. (WebCore::CSSSelector::createRareData): Ditto.
  82360. * dom/SpaceSplitString.h:
  82361. (WebCore::SpaceSplitString::SpaceSplitString): Ditto.
  82362. (WebCore::SpaceSplitString::set): Ditto.
  82363. * history/CachedFrame.cpp:
  82364. (WebCore::CachedFrame::CachedFrame): Ditto.
  82365. (WebCore::CachedFrame::setCachedFramePlatformData): Ditto.
  82366. * history/CachedFrame.h: Use PassOwnPtr.
  82367. * loader/appcache/ApplicationCacheGroup.cpp:
  82368. (WebCore::CallCacheListenerTask::create): Use adoptPtr.
  82369. * loader/appcache/ApplicationCacheStorage.cpp:
  82370. (WebCore::ApplicationCacheStorage::storeCopyOfCache): Ditto.
  82371. * platform/PurgeableBuffer.h:
  82372. (WebCore::PurgeableBuffer::create): Ditto.
  82373. * platform/graphics/GlyphMetricsMap.h:
  82374. (WebCore::::locatePageSlowCase): Ditto.
  82375. * platform/graphics/GraphicsLayer.h:
  82376. (WebCore::AnimationValue::AnimationValue): Ditto.
  82377. (WebCore::TransformAnimationValue::TransformAnimationValue): Ditto.
  82378. * platform/graphics/MediaPlayer.h:
  82379. (WebCore::MediaPlayer::create): Ditto.
  82380. * platform/graphics/SimpleFontData.h:
  82381. (WebCore::SimpleFontData::boundsForGlyph): Ditto.
  82382. * platform/mac/PurgeableBufferMac.cpp:
  82383. (WebCore::PurgeableBuffer::create): Ditto.
  82384. * rendering/InlineFlowBox.h:
  82385. (WebCore::InlineFlowBox::setHorizontalOverflowPositions): Ditto.
  82386. (WebCore::InlineFlowBox::setVerticalOverflowPositions): Ditto.
  82387. * rendering/RootInlineBox.h:
  82388. (WebCore::RootInlineBox::floats): Ditto.
  82389. * rendering/style/RenderStyle.h:
  82390. (WebCore::InheritedFlags::inheritAnimations): Ditto.
  82391. (WebCore::InheritedFlags::inheritTransitions): Ditto.
  82392. * rendering/style/SVGRenderStyleDefs.h: Use PassOwnPtr.
  82393. 2010-07-07 Sam Weinig <sam@webkit.org>
  82394. Reviewed by Anders Carlsson.
  82395. Patch for https://bugs.webkit.org/show_bug.cgi?id=41772
  82396. Add basic piping for BackForwardControllerClient.
  82397. * WebCore.exp.in:
  82398. * WebCore.xcodeproj/project.pbxproj:
  82399. * history/BackForwardController.cpp:
  82400. (WebCore::BackForwardController::BackForwardController):
  82401. * history/BackForwardControllerClient.h:
  82402. * page/Page.cpp:
  82403. (WebCore::Page::Page):
  82404. * page/Page.h:
  82405. * svg/graphics/SVGImage.cpp:
  82406. (WebCore::SVGImage::dataChanged):
  82407. 2010-07-07 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  82408. Unreviewed build fix after r62577.
  82409. [EFL] build fix after r62577
  82410. https://bugs.webkit.org/show_bug.cgi?id=41764
  82411. No new functionality so no new tests.
  82412. 2010-07-07 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
  82413. Reviewed by Xan Lopez.
  82414. [GTK] Scrollbars sometimes go dead and stop scrolling the view
  82415. https://bugs.webkit.org/show_bug.cgi?id=41711
  82416. Rework the setGtkAdjustment function slightly, make it have an
  82417. early return, and be more readable.
  82418. * platform/gtk/ScrollViewGtk.cpp:
  82419. (WebCore::ScrollView::setGtkAdjustments):
  82420. 2010-07-07 Kristian Monsen <kristianm@google.com>
  82421. Reviewed by Steve Block.
  82422. Updating Android to use the UserGestureIndicator class instead of Android specific code.
  82423. The rest of the changes are in parts of the Android port which are yet to be upstreamed.
  82424. No change in behavior, so no new test.
  82425. * platform/network/android/ResourceRequest.h:
  82426. (WebCore::ResourceRequest::ResourceRequest):
  82427. (WebCore::ResourceRequest::doUpdateResourceRequest):
  82428. 2010-07-07 Andy Estes <aestes@apple.com>
  82429. Reviewed by Adam Barth.
  82430. Allow a beforeload listener to prevent loading of images in <object> tags.
  82431. https://bugs.webkit.org/show_bug.cgi?id=41027
  82432. <rdar://problem/8120596>
  82433. Tests: fast/dom/beforeload/image-object-before-load-innerHTML.html
  82434. fast/dom/beforeload/image-object-before-load.html
  82435. * html/HTMLObjectElement.cpp:
  82436. (WebCore::HTMLObjectElement::attach): Do not call
  82437. RenderImage::setCachedImage() at the end of attach(). Instead, allow
  82438. this to happen conditionally after beforeload is dispatched.
  82439. * loader/ImageLoader.cpp:
  82440. (WebCore::ImageLoader::dispatchPendingBeforeLoadEvent): Render fallback
  82441. content if an object's load was cancelled.
  82442. 2010-07-06 Nikolas Zimmermann <nzimmermann@rim.com>
  82443. Reviewed by Dirk Schulze.
  82444. <use> on <font-face> causes crashes, if SVGUseElement gets detached
  82445. https://bugs.webkit.org/show_bug.cgi?id=41621
  82446. Do not call removeFromMappedElementSheet() from the SVGFontFaceElement destructor,
  82447. as that can potentially cause the element to be reattached while destructing.
  82448. In order to fix the crash in the testcase, the order of calling the base-class detach
  82449. method in SVGUseElement and the instance/shadow tree destruction has to be reversed,
  82450. matching the order in removedFromDocument().
  82451. Test: svg/custom/use-font-face-crash.svg
  82452. * svg/SVGFontFaceElement.cpp:
  82453. (WebCore::SVGFontFaceElement::~SVGFontFaceElement): Remove removeFromMappedElementSheet() call.
  82454. * svg/SVGUseElement.cpp:
  82455. (WebCore::SVGUseElement::detach): Reverse order of calling base-class detach method and instance/shadow tree destruction.
  82456. 2010-07-07 Steve Block <steveblock@google.com>
  82457. Reviewed by Adam Barth.
  82458. document.createEvent() should support DeviceOrientationEvent
  82459. https://bugs.webkit.org/show_bug.cgi?id=41618
  82460. Tests: fast/dom/DeviceOrientation/create-event.html
  82461. * dom/Document.cpp:
  82462. (WebCore::Document::createEvent):
  82463. 2010-07-07 Yury Semikhatsky <yurys@chromium.org>
  82464. Reviewed by Pavel Feldman.
  82465. Web Inspector: show functions from internal browser scripts on the call stack if they
  82466. are there.
  82467. https://bugs.webkit.org/show_bug.cgi?id=41762
  82468. * English.lproj/localizedStrings.js:
  82469. * inspector/front-end/CallStackSidebarPane.js:
  82470. (WebInspector.CallStackSidebarPane.prototype.update):
  82471. 2010-07-07 Ilya Tikhonovsky <loislo@chromium.org>
  82472. Reviewed by Pavel Feldman.
  82473. Web Inspector: All RefPtr arguments and return values should be
  82474. changed to PassRefPtr whenever it is possible according to common practice.
  82475. https://bugs.webkit.org/show_bug.cgi?id=41759
  82476. * inspector/CodeGeneratorInspector.pm:
  82477. * inspector/InspectorTimelineAgent.cpp:
  82478. (WebCore::InspectorTimelineAgent::pushGCEventRecords):
  82479. (WebCore::InspectorTimelineAgent::didInstallTimer):
  82480. (WebCore::InspectorTimelineAgent::didRemoveTimer):
  82481. (WebCore::InspectorTimelineAgent::didScheduleResourceRequest):
  82482. (WebCore::InspectorTimelineAgent::willSendResourceRequest):
  82483. (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
  82484. (WebCore::InspectorTimelineAgent::didMarkTimeline):
  82485. (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
  82486. (WebCore::InspectorTimelineAgent::didMarkLoadEvent):
  82487. (WebCore::InspectorTimelineAgent::addRecordToTimeline):
  82488. (WebCore::InspectorTimelineAgent::setHeapSizeStatistic):
  82489. (WebCore::InspectorTimelineAgent::pushCurrentRecord):
  82490. * inspector/InspectorTimelineAgent.h:
  82491. (WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry):
  82492. * inspector/TimelineRecordFactory.cpp:
  82493. (WebCore::TimelineRecordFactory::createGenericRecord):
  82494. (WebCore::TimelineRecordFactory::createGCEventData):
  82495. (WebCore::TimelineRecordFactory::createFunctionCallData):
  82496. (WebCore::TimelineRecordFactory::createEventDispatchData):
  82497. (WebCore::TimelineRecordFactory::createGenericTimerData):
  82498. (WebCore::TimelineRecordFactory::createTimerInstallData):
  82499. (WebCore::TimelineRecordFactory::createXHRReadyStateChangeData):
  82500. (WebCore::TimelineRecordFactory::createXHRLoadData):
  82501. (WebCore::TimelineRecordFactory::createEvaluateScriptData):
  82502. (WebCore::TimelineRecordFactory::createMarkTimelineData):
  82503. (WebCore::TimelineRecordFactory::createScheduleResourceRequestData):
  82504. (WebCore::TimelineRecordFactory::createResourceSendRequestData):
  82505. (WebCore::TimelineRecordFactory::createResourceReceiveResponseData):
  82506. (WebCore::TimelineRecordFactory::createResourceFinishData):
  82507. (WebCore::TimelineRecordFactory::createReceiveResourceData):
  82508. (WebCore::TimelineRecordFactory::createPaintData):
  82509. (WebCore::TimelineRecordFactory::createParseHTMLData):
  82510. * inspector/TimelineRecordFactory.h:
  82511. 2010-07-07 Antti Koivisto <koivisto@iki.fi>
  82512. Reviewed by Kenneth Rohde Christiansen.
  82513. [Qt] Initial WebKit2 implementation
  82514. https://bugs.webkit.org/show_bug.cgi?id=40233
  82515. Export some event conversion functions needed for WebKit2.
  82516. * platform/PlatformKeyboardEvent.h:
  82517. * platform/qt/PlatformKeyboardEventQt.cpp:
  82518. (WebCore::keyIdentifierForQtKeyCode):
  82519. (WebCore::windowsKeyCodeForKeyEvent):
  82520. 2010-07-06 Steve Block <steveblock@google.com>
  82521. Reviewed by Adam Barth.
  82522. DeviceOrientationEventConstructor should be exposed at window.DeviceOrientationEvent
  82523. https://bugs.webkit.org/show_bug.cgi?id=41685
  82524. Test: fast/dom/Window/window-properties-device-orientation.html
  82525. fast/dom/DeviceOrientation/window-property.txt
  82526. * page/DOMWindow.idl:
  82527. 2010-07-07 Sheriff Bot <webkit.review.bot@gmail.com>
  82528. Unreviewed, rolling out r62645.
  82529. http://trac.webkit.org/changeset/62645
  82530. https://bugs.webkit.org/show_bug.cgi?id=41757
  82531. "Broken inspector tests on several platforms" (Requested by
  82532. eseidel on #webkit).
  82533. * inspector/front-end/ScriptView.js:
  82534. (WebInspector.ScriptView.prototype._addBreakpoint):
  82535. * inspector/front-end/ScriptsPanel.js:
  82536. (WebInspector.ScriptsPanel):
  82537. (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished):
  82538. (WebInspector.ScriptsPanel.prototype._breakpointAdded):
  82539. (WebInspector.ScriptsPanel.prototype._scriptOrResourceForURLAndLine):
  82540. (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
  82541. (WebInspector.ScriptsPanel.prototype._toggleBreakpointsClicked):
  82542. * inspector/front-end/SourceView.js:
  82543. (WebInspector.SourceView.prototype._addBreakpoint):
  82544. 2010-07-07 Steve Block <steveblock@google.com>
  82545. Reviewed by Adam Barth.
  82546. JavaInstanceV8 needs to push a local reference frame to avoid table overflow.
  82547. https://bugs.webkit.org/show_bug.cgi?id=41516
  82548. This change is required to help prevent the Java virtual machine from
  82549. running out of local references. The Java virtual machine supports only
  82550. a limited number of local references. Normally, local references are
  82551. cleared when the native method returns.
  82552. This change adds calls to PushLocalFrame() and PopLocalFrame() around
  82553. each invocation of a method on JavaInstance. These calls instruct the
  82554. virtual machine to clear local references when the frame is popped.
  82555. This means that in the case where many calls to JavaInstance methods
  82556. are made within the same native call, local references are cleared as
  82557. soon as they are no longer needed, thus conserving references.
  82558. This change mirrors exactly JavaInstanceJSC.
  82559. No new tests.
  82560. * bridge/jni/v8/JavaInstanceV8.cpp:
  82561. (JavaInstance::virtualBegin):
  82562. (JavaInstance::virtualEnd):
  82563. * bridge/jni/v8/JavaInstanceV8.h:
  82564. 2010-07-06 Yury Semikhatsky <yurys@chromium.org>
  82565. Reviewed by Pavel Feldman.
  82566. Inspector should remember the size of sidebars set by the user
  82567. https://bugs.webkit.org/show_bug.cgi?id=19207
  82568. * inspector/front-end/AbstractTimelinePanel.js:
  82569. (WebInspector.AbstractTimelinePanel):
  82570. * inspector/front-end/AuditsPanel.js:
  82571. (WebInspector.AuditsPanel):
  82572. * inspector/front-end/ConsolePanel.js:
  82573. (WebInspector.ConsolePanel):
  82574. * inspector/front-end/ElementsPanel.js:
  82575. (WebInspector.ElementsPanel.prototype.rightSidebarResizerDragEnd):
  82576. * inspector/front-end/Panel.js:
  82577. (WebInspector.Panel):
  82578. (WebInspector.Panel.prototype.get toolbarItemClass):
  82579. (WebInspector.Panel.prototype.show):
  82580. (WebInspector.Panel.prototype.createSidebar):
  82581. (WebInspector.Panel.prototype.get _sidebarWidthSettingName):
  82582. (WebInspector.Panel.prototype._endSidebarDragging):
  82583. (WebInspector.Panel.prototype.updateSidebarWidth):
  82584. (WebInspector.Panel.prototype.restoreSidebarWidth):
  82585. (WebInspector.Panel.prototype.saveSidebarWidth):
  82586. * inspector/front-end/ProfilesPanel.js:
  82587. (WebInspector.ProfilesPanel):
  82588. * inspector/front-end/ResourcesPanel.js:
  82589. (WebInspector.ResourcesPanel):
  82590. (WebInspector.ResourcesPanel.prototype.resourceTrackingWasEnabled):
  82591. * inspector/front-end/ScriptsPanel.js:
  82592. (WebInspector.ScriptsPanel):
  82593. (WebInspector.ScriptsPanel.prototype._endSidebarResizeDrag):
  82594. (WebInspector.ScriptsPanel.prototype._sidebarResizeDrag):
  82595. (WebInspector.ScriptsPanel.prototype.setSidebarWidth):
  82596. * inspector/front-end/Settings.js:
  82597. (WebInspector.populateApplicationSettings):
  82598. * inspector/front-end/StoragePanel.js:
  82599. (WebInspector.StoragePanel):
  82600. * inspector/front-end/TimelinePanel.js:
  82601. (WebInspector.TimelinePanel):
  82602. 2010-07-05 Steve Block <steveblock@google.com>
  82603. Reviewed by Adam Barth.
  82604. DeviceOrientation should be renamed to DeviceOrientationController
  82605. https://bugs.webkit.org/show_bug.cgi?id=41608
  82606. No new tests, renaming only.
  82607. * Android.mk:
  82608. * CMakeLists.txt:
  82609. * GNUmakefile.am:
  82610. * WebCore.gypi:
  82611. * WebCore.pro:
  82612. * WebCore.vcproj/WebCore.vcproj:
  82613. * WebCore.xcodeproj/project.pbxproj:
  82614. * dom/DeviceOrientation.cpp: Removed.
  82615. * dom/DeviceOrientation.h: Removed.
  82616. * dom/DeviceOrientationController.cpp: Copied from WebCore/dom/DeviceOrientation.cpp.
  82617. (WebCore::DeviceOrientationController::DeviceOrientationController):
  82618. (WebCore::DeviceOrientationController::onDeviceOrientationChange):
  82619. * dom/DeviceOrientationController.h: Copied from WebCore/dom/DeviceOrientation.h.
  82620. * page/Page.cpp:
  82621. (WebCore::Page::Page):
  82622. * page/Page.h:
  82623. (WebCore::Page::deviceOrientationController):
  82624. 2010-07-07 Pavel Podivilov <podivilov@chromium.org>
  82625. Reviewed by Yury Semikhatsky.
  82626. Web Inspector: do not activate all breakpoints on page reload
  82627. https://bugs.webkit.org/show_bug.cgi?id=41461
  82628. Test: inspector/debugger-breakpoints-not-activated-on-reload.html
  82629. * inspector/front-end/ScriptView.js:
  82630. (WebInspector.ScriptView.prototype._addBreakpoint):
  82631. * inspector/front-end/ScriptsPanel.js:
  82632. (WebInspector.ScriptsPanel):
  82633. (WebInspector.ScriptsPanel.prototype._breakpointAdded):
  82634. (WebInspector.ScriptsPanel.prototype.toggleBreakpointsClicked):
  82635. * inspector/front-end/SourceView.js:
  82636. (WebInspector.SourceView.prototype._addBreakpoint):
  82637. 2010-07-07 Nikolas Zimmermann <nzimmermann@rim.com>
  82638. Not reviewed. Rollout r62633 - test crashes after some last-minute modifications.
  82639. * svg/SVGFontFaceElement.cpp:
  82640. (WebCore::SVGFontFaceElement::~SVGFontFaceElement):
  82641. 2010-07-07 Eric Seidel <eric@webkit.org>
  82642. Reviewed by Adam Barth.
  82643. Fix </html> handling in before head mode
  82644. https://bugs.webkit.org/show_bug.cgi?id=41752
  82645. Covered by html5lib/runner.html.
  82646. * html/HTMLTreeBuilder.cpp:
  82647. (WebCore::HTMLTreeBuilder::processEndTag):
  82648. 2010-07-07 Eric Seidel <eric@webkit.org>
  82649. Reviewed by Adam Barth.
  82650. </div> pops too many <div> elements in body
  82651. https://bugs.webkit.org/show_bug.cgi?id=41751
  82652. Another missing return!
  82653. While tracking this down I added some debugging code to both the
  82654. open elements stack and the active formatting elements list.
  82655. I also unwrapped a very long || chain to make it more readable.
  82656. * html/HTMLElementStack.cpp:
  82657. (WebCore::HTMLElementStack::show):
  82658. * html/HTMLElementStack.h:
  82659. * html/HTMLFormattingElementList.cpp:
  82660. (WebCore::HTMLFormattingElementList::show):
  82661. * html/HTMLFormattingElementList.h:
  82662. * html/HTMLTreeBuilder.cpp:
  82663. (WebCore::HTMLTreeBuilder::processEndTagForInBody):
  82664. 2010-07-06 Eric Seidel <eric@webkit.org>
  82665. Reviewed by Adam Barth.
  82666. HTMLTreeBuilder needs to handle <table><input>
  82667. https://bugs.webkit.org/show_bug.cgi?id=41744
  82668. * html/HTMLTreeBuilder.cpp:
  82669. (WebCore::HTMLTreeBuilder::processStartTagForInTable):
  82670. 2010-07-06 Eric Seidel <eric@webkit.org>
  82671. Reviewed by Adam Barth.
  82672. Teach HTMLTreeBuilder how to handle <button><button>
  82673. https://bugs.webkit.org/show_bug.cgi?id=41743
  82674. * html/HTMLTreeBuilder.cpp:
  82675. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  82676. 2010-07-06 Eric Seidel <eric@webkit.org>
  82677. Reviewed by Adam Barth.
  82678. Teach TreeBuilder how to handle <form><form>
  82679. https://bugs.webkit.org/show_bug.cgi?id=41741
  82680. * html/HTMLTreeBuilder.cpp:
  82681. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  82682. 2010-07-06 Eric Seidel <eric@webkit.org>
  82683. Reviewed by Adam Barth.
  82684. <table> should auto-close <p> when not in quirks mode
  82685. https://bugs.webkit.org/show_bug.cgi?id=41740
  82686. This is already covered by multiple tests in html5lib/runner.html
  82687. * html/HTMLTreeBuilder.cpp:
  82688. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  82689. 2010-07-06 Eric Seidel <eric@webkit.org>
  82690. Reviewed by Adam Barth.
  82691. Make "in body" character handling reconstruct active formatting elements
  82692. https://bugs.webkit.org/show_bug.cgi?id=41739
  82693. This fixes a bunch of tests, and due to some other bug in our
  82694. formatting code, regresses two. I'll fix that bug in a separate
  82695. patch.
  82696. * html/HTMLTreeBuilder.cpp:
  82697. (WebCore::HTMLTreeBuilder::processCharacter):
  82698. 2010-07-06 Nikolas Zimmermann <nzimmermann@rim.com>
  82699. Reviewed by Darin Adler.
  82700. <use> on <font-face> causes crashes, if SVGUseElement gets detached
  82701. https://bugs.webkit.org/show_bug.cgi?id=41621
  82702. Do not call removeFromMappedElementSheet() from the destructor, as the call to document()->updateStyleSelector() that can potentially
  82703. cause the element to be reattached while destructing. It's not needed at all, because removedFromDocument() is called before destruction,
  82704. which already calls removeFromMappedElementSheet() - at this point it's still safe to update the style selector.
  82705. The crash is reproducable when using <use> on <font-face>.
  82706. Test: svg/custom/use-font-face-crash.svg
  82707. * svg/SVGFontFaceElement.cpp:
  82708. (WebCore::SVGFontFaceElement::~SVGFontFaceElement):
  82709. 2010-07-07 Hayato Ito <hayato@chromium.org>
  82710. Reviewed by Darin Adler.
  82711. Rolling out 'page-break-inside:avoid' part of the r54929.
  82712. Rebased the related layout tests, which are now expected to fail, as well.
  82713. https://bugs.webkit.org/show_bug.cgi?id=41532
  82714. * rendering/RenderBlock.cpp:
  82715. (WebCore::RenderBlock::paintChildren):
  82716. 2010-07-07 Mark Rowe <mrowe@apple.com>
  82717. Fix failures in a handful of Java-related tests.
  82718. * WebCore.exp.in: Remove an extraneous ENABLE_ from an #if so that the condition
  82719. evalutes to true when we expect it to.
  82720. 2010-07-06 Pavel Feldman <pfeldman@chromium.org>
  82721. Reviewed by Joseph Pecoraro.
  82722. Web Inspector: provide line numbers for inline styles.
  82723. https://bugs.webkit.org/show_bug.cgi?id=41691
  82724. Test: inspector/styles-source-lines-inline.html
  82725. * css/CSSParser.cpp:
  82726. (WebCore::CSSParser::parseSheet):
  82727. * css/CSSParser.h:
  82728. * css/CSSStyleSheet.cpp:
  82729. (WebCore::CSSStyleSheet::parseString):
  82730. (WebCore::CSSStyleSheet::parseStringAtLine):
  82731. * css/CSSStyleSheet.h:
  82732. * dom/StyleElement.cpp:
  82733. (WebCore::StyleElement::process):
  82734. (WebCore::StyleElement::createSheet):
  82735. * dom/StyleElement.h:
  82736. * html/HTMLStyleElement.cpp:
  82737. (WebCore::HTMLStyleElement::HTMLStyleElement):
  82738. (WebCore::HTMLStyleElement::finishParsingChildren):
  82739. * html/HTMLStyleElement.h:
  82740. * inspector/InspectorCSSStore.cpp:
  82741. (WebCore::InspectorCSSStore::getRuleRangesForStyleSheet):
  82742. * inspector/InspectorDOMAgent.cpp:
  82743. (WebCore::InspectorDOMAgent::buildObjectForRule):
  82744. * inspector/front-end/DOMAgent.js:
  82745. (WebInspector.CSSStyleDeclaration.parseRule):
  82746. * inspector/front-end/StylesSidebarPane.js:
  82747. (WebInspector.StylePropertiesSection.else.linkifyUncopyable):
  82748. (WebInspector.StylePropertiesSection):
  82749. 2010-07-06 Dan Bernstein <mitz@apple.com>
  82750. Reviewed by Jon Honeycutt.
  82751. <rdar://problem/8163651> Wrong value type being supplied for kCTTypesetterOptionForcedEmbeddingLevel key
  82752. No change in behavior, so no new test.
  82753. * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
  82754. (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText): Use CFNumber instances
  82755. as the values of the kCTTypesetterOptionForcedEmbeddingLevel key, instead of CFBooleans.
  82756. 2010-07-06 Mark Rowe <mrowe@apple.com>
  82757. Fix production builds on Mac OS X.
  82758. * DerivedSources.make: Don't try and generate the export file during the installhdrs build phase.
  82759. It's not useful until much later in the build process, and it's not possible to generate it until
  82760. after the tool has been compiled anyway.
  82761. * WebCore.xcodeproj/project.pbxproj: Tweak how the ICU and forwarding headers are copied so that it
  82762. works in production builds once more.
  82763. 2010-07-06 Steve Falkenburg <sfalken@apple.com>
  82764. Reviewed by Simon Fraser.
  82765. Expose URL matching from WebUserContentURLPattern
  82766. https://bugs.webkit.org/show_bug.cgi?id=41726
  82767. <rdar://problem/7910144>
  82768. * WebCore.exp.in: Export UserContentURLPattern::matches for use in WebKit.
  82769. 2010-07-06 Eric Seidel <eric@webkit.org>
  82770. Reviewed by Adam Barth.
  82771. Fix <nobr><nobr> case in HTMLTreeBuilder
  82772. https://bugs.webkit.org/show_bug.cgi?id=41735
  82773. We were both not handling <nobr> correctly, as well as
  82774. never hitting the <nobr> case because our formatting
  82775. elements check was overzealous.
  82776. * html/HTMLTreeBuilder.cpp:
  82777. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  82778. 2010-07-06 Adam Barth <abarth@webkit.org>
  82779. Reviewed by Eric Seidel.
  82780. Implement start table tag in table mode
  82781. https://bugs.webkit.org/show_bug.cgi?id=41736
  82782. * html/HTMLTreeBuilder.cpp:
  82783. (WebCore::HTMLTreeBuilder::processStartTagForInTable):
  82784. (WebCore::HTMLTreeBuilder::processTableEndTagForInTable):
  82785. (WebCore::HTMLTreeBuilder::processEndTagForInTable):
  82786. * html/HTMLTreeBuilder.h:
  82787. 2010-07-06 Adam Barth <abarth@webkit.org>
  82788. Reviewed by Eric Seidel.
  82789. Implement "act as if the banana has been peeled" (for lack of a better term)
  82790. https://bugs.webkit.org/show_bug.cgi?id=41734
  82791. The spec has a tricky passage that says "whenever a node would be
  82792. inserted into the current node, it must instead be foster parented."
  82793. This patch attempts to implement that requirement.
  82794. * html/HTMLConstructionSite.cpp:
  82795. (WebCore::HTMLConstructionSite::attach):
  82796. (WebCore::HTMLConstructionSite::HTMLConstructionSite):
  82797. (WebCore::HTMLConstructionSite::insertHTMLHtmlElement):
  82798. (WebCore::HTMLConstructionSite::insertHTMLHeadElement):
  82799. (WebCore::HTMLConstructionSite::insertHTMLBodyElement):
  82800. (WebCore::HTMLConstructionSite::insertScriptElement):
  82801. (WebCore::HTMLConstructionSite::fosterParent):
  82802. * html/HTMLConstructionSite.h:
  82803. (WebCore::HTMLConstructionSite::RedirectToFosterParentGuard::RedirectToFosterParentGuard):
  82804. (WebCore::HTMLConstructionSite::RedirectToFosterParentGuard::~RedirectToFosterParentGuard):
  82805. * html/HTMLTreeBuilder.cpp:
  82806. (WebCore::HTMLTreeBuilder::processStartTagForInTable):
  82807. (WebCore::HTMLTreeBuilder::processEndTagForInTable):
  82808. * html/HTMLTreeBuilder.h:
  82809. 2010-07-06 Eric Seidel <eric@webkit.org>
  82810. Reviewed by Adam Barth.
  82811. Fix </optgroup> in "in select" mode
  82812. https://bugs.webkit.org/show_bug.cgi?id=41733
  82813. I had to add a oneBelowTop() accessor.
  82814. I added some ASSERTs after looking at the fragment case
  82815. documentation. I'm now convinced that top() and oneBeforeTop()
  82816. should never be NULL, so we just ASSERT they aren't.
  82817. This is a very obscure corner of the HTML spec, but at least
  82818. we have a test for it. This makes one more html5lib test pass.
  82819. * html/HTMLConstructionSite.h:
  82820. (WebCore::HTMLConstructionSite::oneBelowTop):
  82821. * html/HTMLElementStack.cpp:
  82822. (WebCore::HTMLElementStack::topRecord):
  82823. (WebCore::HTMLElementStack::top):
  82824. (WebCore::HTMLElementStack::oneBelowTop):
  82825. * html/HTMLElementStack.h:
  82826. * html/HTMLTreeBuilder.cpp:
  82827. (WebCore::HTMLTreeBuilder::processEndTag):
  82828. 2010-07-06 Eric Seidel <eric@webkit.org>
  82829. Reviewed by Adam Barth.
  82830. Fix "in row" "Anything else" handling of end tags
  82831. https://bugs.webkit.org/show_bug.cgi?id=41731
  82832. I also fixed </br> handling to follow the spec more closely
  82833. since it implementation was old and didn't use all our
  82834. new processFake* hotness.
  82835. This is already covered by 3 tests, however we don't
  82836. pass them yet, due to lack of table foster parenting
  82837. code (which Adam is working on as we speak).
  82838. * html/HTMLTreeBuilder.cpp:
  82839. (WebCore::HTMLTreeBuilder::processEndTagForInBody):
  82840. (WebCore::HTMLTreeBuilder::processEndTag):
  82841. 2010-07-06 Mark Rowe <mrowe@apple.com>
  82842. Fix clean builds on Mac OS X.
  82843. Since "Copy Forwarding and ICU Headers" was split in to a separate target
  82844. from the WebCore framework it no longer had automatica access to the
  82845. PRIVATE_HEADERS_FOLDER_PATH variable. This caused it to copy the header
  82846. files in to the wrong location. Fix that by giving PRIVATE_HEADERS_FOLDER_PATH
  82847. its correct value and ensuring that the path exists.
  82848. * WebCore.xcodeproj/project.pbxproj:
  82849. 2010-07-06 Sam Weinig <sam@webkit.org>
  82850. Fix Gtk build.
  82851. * GNUmakefile.am:
  82852. 2010-07-06 Mark Rowe <mrowe@apple.com>
  82853. Tiger build fix.
  82854. Don't use WebCore's LDFLAGS when building WebCoreExportFileGenerator.
  82855. * WebCore.xcodeproj/project.pbxproj:
  82856. 2010-07-06 Eric Seidel <eric@webkit.org>
  82857. Reviewed by Adam Barth.
  82858. "In cell" does not correctly handle <td><tr> or <td><td>
  82859. https://bugs.webkit.org/show_bug.cgi?id=41729
  82860. This change is mostly cleanup to try and prevent forgetting
  82861. tag name checks in the future by using inlines to reduce
  82862. copy/paste code.
  82863. 3 little bugs in InCellMode:
  82864. - Missing trTag from the long or statement (reason for the cleanup)
  82865. - Used || instead of &&
  82866. - Forgot to reprocess the tag after closeTheCell()
  82867. * html/HTMLTreeBuilder.cpp:
  82868. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  82869. (WebCore::HTMLTreeBuilder::processStartTagForInTable):
  82870. (WebCore::HTMLTreeBuilder::processStartTag):
  82871. (WebCore::HTMLTreeBuilder::processEndTagForInTable):
  82872. (WebCore::HTMLTreeBuilder::processEndTag):
  82873. 2010-07-06 Adam Barth <abarth@webkit.org>
  82874. Reviewed by Eric Seidel.
  82875. Move fosterParent to HTMLConstructionSite
  82876. https://bugs.webkit.org/show_bug.cgi?id=41728
  82877. This paves the way for handling the default case of InTableMode
  82878. properly.
  82879. * html/HTMLConstructionSite.cpp:
  82880. (WebCore::HTMLConstructionSite::fosterParent):
  82881. * html/HTMLConstructionSite.h:
  82882. * html/HTMLTreeBuilder.cpp:
  82883. (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
  82884. 2010-07-06 Adam Barth <abarth@webkit.org>
  82885. Rubber-stamped by Eric Seidel.
  82886. Move HTMLConstructionSite to its own file. No behavior change.
  82887. * Android.mk:
  82888. * CMakeLists.txt:
  82889. * GNUmakefile.am:
  82890. * WebCore.gypi:
  82891. * WebCore.pro:
  82892. * WebCore.vcproj/WebCore.vcproj:
  82893. * WebCore.xcodeproj/project.pbxproj:
  82894. * html/HTMLConstructionSite.cpp: Copied from WebCore/html/HTMLTreeBuilder.cpp.
  82895. (WebCore::HTMLNames::hasImpliedEndTag):
  82896. (WebCore::HTMLConstructionSite::attach):
  82897. (WebCore::HTMLConstructionSite::HTMLConstructionSite):
  82898. (WebCore::HTMLConstructionSite::~HTMLConstructionSite):
  82899. (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML):
  82900. (WebCore::HTMLConstructionSite::mergeAttributesFromTokenIntoElement):
  82901. (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagInBody):
  82902. (WebCore::HTMLConstructionSite::insertHTMLBodyStartTagInBody):
  82903. * html/HTMLConstructionSite.h: Copied from WebCore/html/HTMLTreeBuilder.h.
  82904. * html/HTMLTreeBuilder.cpp:
  82905. * html/HTMLTreeBuilder.h:
  82906. 2010-07-06 Mark Rowe <mrowe@apple.com>
  82907. Build fix.
  82908. The path to the generated file needs to be relative to the built product directory,
  82909. not to the project file.
  82910. * WebCore.xcodeproj/project.pbxproj:
  82911. 2010-07-06 Mark Rowe <mrowe@apple.com>
  82912. Reviewed by Darin Adler.
  82913. <http://webkit.org/b/41725> REGRESSION(r62283): No longer possible to build for Tiger from SnowLeopard due to export file shenanigans
  82914. Change how the exports file is generated. Rather than having the logic for which symbols
  82915. to include be encoded in a Makefile that concatenated separate files, the logic is now
  82916. encoded as #if's in the base exports file. This ensures that the exact same preprocessor
  82917. settings are used when determining which symbols to export as when compiling the code that
  82918. defines the symbols.
  82919. * DerivedSources.make: Remove logic that determines which export files to concatenate.
  82920. Replace with an invocation of WebCoreExportFileGenerator.
  82921. * WebCore.3DRendering.exp: Removed.
  82922. * WebCore.AcceleratedCompositing.exp: Removed.
  82923. * WebCore.ClientBasedGeolocation.exp: Removed.
  82924. * WebCore.ContextMenus.exp: Removed.
  82925. * WebCore.DashboardSupport.exp: Removed.
  82926. * WebCore.DragSupport.exp: Removed.
  82927. * WebCore.Geolocation.exp: Removed.
  82928. * WebCore.Inspector.exp: Removed.
  82929. * WebCore.JNI.exp: Removed.
  82930. * WebCore.NPAPI.exp: Removed.
  82931. * WebCore.OrientationEvents.exp: Removed.
  82932. * WebCore.PluginHostProcess.exp: Removed.
  82933. * WebCore.ProtectionSpaceAuthCallback.exp: Removed.
  82934. * WebCore.SVG.Animation.exp: Removed.
  82935. * WebCore.SVG.Filters.exp: Removed.
  82936. * WebCore.SVG.ForeignObject.exp: Removed.
  82937. * WebCore.SVG.exp: Removed.
  82938. * WebCore.Tiger.exp: Removed.
  82939. * WebCore.Video.exp: Removed.
  82940. * WebCore.VideoProxy.exp: Removed.
  82941. * WebCore.exp.in: Renamed from WebCore/WebCore.base.exp. Merge the individual .exp
  82942. files in, wrapping the appropriate parts with the necessary #if's.
  82943. * WebCore.xcodeproj/project.pbxproj:
  82944. * make-exports-file-generator: Added.
  82945. 2010-07-06 Sam Weinig <sam@webkit.org>
  82946. Reviewed by Anders Carlsson.
  82947. Patch for https://bugs.webkit.org/show_bug.cgi?id=41723
  82948. Add BackForwardController class
  82949. - Add BackForwardController which currently only forwards to the existing
  82950. BackForwardList implementation. This is a first step toward allowing
  82951. for a proxying BackForwardList implementation.
  82952. * CMakeLists.txt:
  82953. * GNUmakefile.am:
  82954. * WebCore.base.exp:
  82955. * WebCore.gypi:
  82956. * WebCore.pro:
  82957. * WebCore.vcproj/WebCore.vcproj:
  82958. * WebCore.xcodeproj/project.pbxproj:
  82959. * history/BackForwardController.cpp: Added.
  82960. (WebCore::BackForwardController::BackForwardController):
  82961. (WebCore::BackForwardController::~BackForwardController):
  82962. * history/BackForwardController.h: Added.
  82963. (WebCore::BackForwardController::client):
  82964. (WebCore::BackForwardController::list):
  82965. * history/BackForwardControllerClient.h: Added.
  82966. (WebCore::BackForwardControllerClient::~BackForwardControllerClient):
  82967. * page/Page.cpp:
  82968. (WebCore::Page::Page):
  82969. (WebCore::Page::~Page):
  82970. (WebCore::Page::backForwardList):
  82971. (WebCore::Page::goBack):
  82972. (WebCore::Page::goForward):
  82973. (WebCore::Page::canGoBackOrForward):
  82974. (WebCore::Page::goBackOrForward):
  82975. (WebCore::Page::getHistoryLength):
  82976. * page/Page.h:
  82977. 2010-07-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
  82978. Unreviewed.
  82979. Fixes regression on API test by disabling the scrollbars before
  82980. configuring the adjustments.
  82981. * platform/gtk/ScrollViewGtk.cpp:
  82982. (WebCore::ScrollView::setGtkAdjustments):
  82983. 2010-07-06 Eric Seidel <eric@webkit.org>
  82984. Reviewed by Adam Barth.
  82985. Add support for <li>, <dd> and <dt> nested tag closing
  82986. https://bugs.webkit.org/show_bug.cgi?id=41720
  82987. li, dd, and dt have nearly identical logic in HTML5, so I
  82988. attempted to make them share as much code as possible.
  82989. This fixes a bunch of subtests for html5lib/runner.html
  82990. * html/HTMLTreeBuilder.cpp:
  82991. (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag):
  82992. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  82993. (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
  82994. (WebCore::HTMLTreeBuilder::furthestBlockForFormattingElement):
  82995. * html/HTMLTreeBuilder.h:
  82996. 2010-07-06 Adam Barth <abarth@webkit.org>
  82997. Reviewed by Eric Seidel.
  82998. Factor HTMLConstructionSite out of HTMLTreeBuilder
  82999. https://bugs.webkit.org/show_bug.cgi?id=41716
  83000. The HTMLContructionSite is the model object on which the
  83001. HTMLTreeBuilder (a controller) acts.
  83002. No behavior change. I'll move this class into its own file in a
  83003. followup patch.
  83004. * html/HTMLFormattingElementList.h:
  83005. (WebCore::HTMLFormattingElementList::at):
  83006. * html/HTMLTreeBuilder.cpp:
  83007. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  83008. (WebCore::HTMLConstructionSite::HTMLConstructionSite):
  83009. (WebCore::HTMLTreeBuilder::passTokenToLegacyParser):
  83010. (WebCore::HTMLTreeBuilder::processDoctypeToken):
  83011. (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML):
  83012. (WebCore::HTMLConstructionSite::mergeAttributesFromTokenIntoElement):
  83013. (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagInBody):
  83014. (WebCore::HTMLConstructionSite::insertHTMLBodyStartTagInBody):
  83015. (WebCore::HTMLTreeBuilder::processFakePEndTagIfPInScope):
  83016. (WebCore::HTMLTreeBuilder::processIsindexStartTagForInBody):
  83017. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  83018. (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup):
  83019. (WebCore::HTMLTreeBuilder::closeTheCell):
  83020. (WebCore::HTMLTreeBuilder::processStartTagForInTable):
  83021. (WebCore::HTMLTreeBuilder::processStartTag):
  83022. (WebCore::HTMLTreeBuilder::processBodyEndTagForInBody):
  83023. (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
  83024. (WebCore::HTMLTreeBuilder::furthestBlockForFormattingElement):
  83025. (WebCore::HTMLTreeBuilder::findFosterParentFor):
  83026. (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
  83027. (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
  83028. (WebCore::HTMLTreeBuilder::processEndTagForInBody):
  83029. (WebCore::HTMLTreeBuilder::processCaptionEndTagForInCaption):
  83030. (WebCore::HTMLTreeBuilder::processTrEndTagForInRow):
  83031. (WebCore::HTMLTreeBuilder::processEndTagForInTable):
  83032. (WebCore::HTMLTreeBuilder::processEndTag):
  83033. (WebCore::HTMLTreeBuilder::processComment):
  83034. (WebCore::HTMLTreeBuilder::processCharacter):
  83035. (WebCore::HTMLTreeBuilder::processEndOfFile):
  83036. (WebCore::HTMLTreeBuilder::processDefaultForBeforeHTMLMode):
  83037. (WebCore::HTMLTreeBuilder::processStartTagForInHead):
  83038. (WebCore::HTMLConstructionSite::insertDoctype):
  83039. (WebCore::HTMLConstructionSite::insertComment):
  83040. (WebCore::HTMLConstructionSite::insertCommentOnDocument):
  83041. (WebCore::HTMLConstructionSite::insertCommentOnHTMLHtmlElement):
  83042. (WebCore::HTMLConstructionSite::createElementAndAttachToCurrent):
  83043. (WebCore::HTMLConstructionSite::insertHTMLHtmlElement):
  83044. (WebCore::HTMLConstructionSite::insertHTMLHeadElement):
  83045. (WebCore::HTMLConstructionSite::insertHTMLBodyElement):
  83046. (WebCore::HTMLConstructionSite::insertElement):
  83047. (WebCore::HTMLConstructionSite::insertSelfClosingElement):
  83048. (WebCore::HTMLConstructionSite::insertFormattingElement):
  83049. (WebCore::HTMLTreeBuilder::processGenericRCDATAStartTag):
  83050. (WebCore::HTMLTreeBuilder::processGenericRawTextStartTag):
  83051. (WebCore::HTMLConstructionSite::insertScriptElement):
  83052. (WebCore::HTMLTreeBuilder::processScriptStartTag):
  83053. (WebCore::HTMLConstructionSite::insertTextNode):
  83054. (WebCore::HTMLConstructionSite::createElement):
  83055. (WebCore::HTMLTreeBuilder::indexOfFirstUnopenFormattingElement):
  83056. (WebCore::HTMLTreeBuilder::reconstructTheActiveFormattingElements):
  83057. (WebCore::HTMLTreeBuilder::generateImpliedEndTagsWithExclusion):
  83058. (WebCore::HTMLTreeBuilder::generateImpliedEndTags):
  83059. * html/HTMLTreeBuilder.h:
  83060. (WebCore::HTMLConstructionSite::currentElement):
  83061. (WebCore::HTMLConstructionSite::openElements):
  83062. (WebCore::HTMLConstructionSite::activeFormattingElements):
  83063. (WebCore::HTMLConstructionSite::head):
  83064. (WebCore::HTMLConstructionSite::form):
  83065. (WebCore::HTMLConstructionSite::releaseForm):
  83066. (WebCore::HTMLConstructionSite::setForm):
  83067. (WebCore::HTMLConstructionSite::fragmentScriptingPermission):
  83068. (WebCore::HTMLConstructionSite::attach):
  83069. 2010-07-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
  83070. Reviewed by Xan Lopez.
  83071. [GTK] Scrollbars sometimes go dead and stop scrolling the view
  83072. https://bugs.webkit.org/show_bug.cgi?id=41711
  83073. Fixes GtkScrolledWindow scrollbars not actually scrolling the page
  83074. in certain conditions. No tests because it is hard to reproduce,
  83075. and depends on interaction with a widget that is outside of the
  83076. WebView, which is tricky.
  83077. * platform/gtk/ScrollViewGtk.cpp:
  83078. (WebCore::ScrollView::setGtkAdjustments):
  83079. 2010-07-06 Darin Adler <darin@apple.com>
  83080. Reviewed by Geoffrey Garen.
  83081. Simplify access to element attribute map, removing unneeded functions
  83082. https://bugs.webkit.org/show_bug.cgi?id=41703
  83083. * css/CSSStyleSelector.cpp:
  83084. (WebCore::CSSStyleSelector::canShareStyleWithElement): Use the
  83085. attributeMap function instead of the mappedAttributes function.
  83086. (WebCore::CSSStyleSelector::styleForElement): Ditto.
  83087. * dom/Element.cpp:
  83088. (WebCore::Element::~Element): Renamed namedAttrMap to m_attributeMap.
  83089. (WebCore::Element::removeAttribute): Ditto.
  83090. (WebCore::Element::getAttribute): Ditto.
  83091. (WebCore::Element::setAttribute): Ditto.
  83092. (WebCore::Element::setAttributeMap): Ditto.
  83093. (WebCore::Element::hasAttributes): Ditto.
  83094. (WebCore::Element::createAttributeMap): Ditto.
  83095. (WebCore::Element::insertedIntoDocument): Ditto.
  83096. (WebCore::Element::removedFromDocument): Ditto.
  83097. (WebCore::Element::getURLAttribute): Ditto.
  83098. * dom/Element.h: Removed unneeded virtual attributes function.
  83099. Made read-only argument to attributes function default to false.
  83100. (Later, we'll eliminate this.) Renamed namedAttrMap to m_attributeMap
  83101. and made it private instead of protected.
  83102. * dom/StyledElement.cpp:
  83103. (WebCore::StyledElement::attributeChanged): Use attributeMap function
  83104. instead of namedAttrMap data member or mappedAttributes function.
  83105. (WebCore::StyledElement::classAttributeChanged): Ditto.
  83106. (WebCore::StyledElement::parseMappedAttribute): Ditto.
  83107. * dom/StyledElement.h: Removed mappedAttributes function and changed
  83108. callers to use attributeMap function instead.
  83109. * html/HTMLInputElement.cpp:
  83110. (WebCore::HTMLInputElement::setInputType): Use attributeMap instead of
  83111. mappedAttributes.
  83112. * svg/SVGStyledElement.cpp:
  83113. (WebCore::SVGStyledElement::getPresentationAttribute): Ditto.
  83114. 2010-07-06 Anders Carlsson <andersca@apple.com>
  83115. Reviewed by Sam Weinig.
  83116. Add a build rule that removes the old generated Obj-C bindings for PluginArray and MimeTypeArray.
  83117. * DerivedSources.make:
  83118. 2010-07-06 Adam Barth <abarth@webkit.org>
  83119. Unreviewed.
  83120. Make the remaining insertion modes explicit.
  83121. * html/HTMLTreeBuilder.cpp:
  83122. (WebCore::HTMLTreeBuilder::processStartTag):
  83123. (WebCore::HTMLTreeBuilder::processEndTag):
  83124. (WebCore::HTMLTreeBuilder::processCharacter):
  83125. (WebCore::HTMLTreeBuilder::processEndOfFile):
  83126. 2010-07-06 Alexey Proskuryakov <ap@apple.com>
  83127. Not reviewed, fixing a simple copy/paste mistake.
  83128. https://bugs.webkit.org/show_bug.cgi?id=41156
  83129. Cross origin XMLHttpRequest should log the reason why connection failed
  83130. Covered by xmlhttprequest/access-control-basic-non-simple-deny-cached.html
  83131. * loader/CrossOriginPreflightResultCache.cpp:
  83132. (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginHeaders): Fix incorrectly
  83133. copy/pasted header field name.
  83134. 2010-07-06 Xan Lopez <xlopez@igalia.com>
  83135. GTK+ fixes for the DOM plug-in renaming Apocalypse.
  83136. * GNUmakefile.am:
  83137. 2010-07-06 Anders Carlsson <andersca@apple.com>
  83138. Yet another Windows build fix.
  83139. * DerivedSources.cpp:
  83140. 2010-07-06 Anders Carlsson <andersca@apple.com>
  83141. Fix Windows build.
  83142. * WebCore.vcproj/WebCore.vcproj:
  83143. 2010-07-06 Anders Carlsson <andersca@apple.com>
  83144. More build fixes.
  83145. * WebCore.gypi:
  83146. * WebCore.pro:
  83147. 2010-07-06 Anders Carlsson <andersca@apple.com>
  83148. Try to fix Qt build.
  83149. * WebCore.pro:
  83150. 2010-07-06 Anders Carlsson <andersca@apple.com>
  83151. Attempt to fix GTK+ build.
  83152. * GNUmakefile.am:
  83153. 2010-07-06 Adam Barth <abarth@webkit.org>
  83154. Address reviewer comments from https://bugs.webkit.org/show_bug.cgi?id=41671
  83155. Deploy isTableBodyContextTag where possible. No behavior change.
  83156. * html/HTMLTreeBuilder.cpp:
  83157. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  83158. (WebCore::HTMLTreeBuilder::processStartTag):
  83159. (WebCore::HTMLTreeBuilder::processEndTagForInTable):
  83160. (WebCore::HTMLTreeBuilder::processEndTag):
  83161. 2010-07-06 Anders Carlsson <andersca@apple.com>
  83162. Build fixes.
  83163. * WebCore.gypi:
  83164. * bindings/js/JSBindingsAllInOne.cpp:
  83165. 2010-07-06 Anders Carlsson <andersca@apple.com>
  83166. Reviewed by Sam Weinig.
  83167. DOM plug-in related renames
  83168. https://bugs.webkit.org/show_bug.cgi?id=41709
  83169. This is in preparation for using "Plugin" for something other than a DOM object.
  83170. MimeType => DOMMimeType
  83171. MimeTypeArray => DOMMimeTypeArray
  83172. Plugin => DOMPlugin
  83173. PluginArray => DOMPluginArray
  83174. * CMakeLists.txt:
  83175. * DerivedSources.make:
  83176. * GNUmakefile.am:
  83177. * WebCore.pri:
  83178. * WebCore.vcproj/WebCore.vcproj:
  83179. * WebCore.xcodeproj/project.pbxproj:
  83180. * bindings/js/JSDOMMimeTypeArrayCustom.cpp: Added.
  83181. (WebCore::JSDOMMimeTypeArray::canGetItemsForName):
  83182. (WebCore::JSDOMMimeTypeArray::nameGetter):
  83183. * bindings/js/JSDOMPluginArrayCustom.cpp: Added.
  83184. (WebCore::JSDOMPluginArray::canGetItemsForName):
  83185. (WebCore::JSDOMPluginArray::nameGetter):
  83186. * bindings/js/JSDOMPluginCustom.cpp: Added.
  83187. (WebCore::JSDOMPlugin::canGetItemsForName):
  83188. (WebCore::JSDOMPlugin::nameGetter):
  83189. * bindings/js/JSMimeTypeArrayCustom.cpp: Removed.
  83190. * bindings/js/JSPluginArrayCustom.cpp: Removed.
  83191. * bindings/js/JSPluginCustom.cpp: Removed.
  83192. * bindings/scripts/CodeGeneratorJS.pm:
  83193. * page/DOMWindow.idl:
  83194. * page/Navigator.cpp:
  83195. (WebCore::Navigator::plugins):
  83196. (WebCore::Navigator::mimeTypes):
  83197. * page/Navigator.h:
  83198. * page/Navigator.idl:
  83199. * plugins/DOMMimeType.cpp: Added.
  83200. (WebCore::DOMMimeType::DOMMimeType):
  83201. (WebCore::DOMMimeType::~DOMMimeType):
  83202. (WebCore::DOMMimeType::type):
  83203. (WebCore::DOMMimeType::suffixes):
  83204. (WebCore::DOMMimeType::description):
  83205. (WebCore::DOMMimeType::enabledPlugin):
  83206. * plugins/DOMMimeType.h: Added.
  83207. (WebCore::DOMMimeType::create):
  83208. (WebCore::DOMMimeType::mimeClassInfo):
  83209. * plugins/DOMMimeType.idl: Added.
  83210. * plugins/DOMMimeTypeArray.cpp: Added.
  83211. (WebCore::DOMMimeTypeArray::DOMMimeTypeArray):
  83212. (WebCore::DOMMimeTypeArray::~DOMMimeTypeArray):
  83213. (WebCore::DOMMimeTypeArray::length):
  83214. (WebCore::DOMMimeTypeArray::item):
  83215. (WebCore::DOMMimeTypeArray::canGetItemsForName):
  83216. (WebCore::DOMMimeTypeArray::namedItem):
  83217. (WebCore::DOMMimeTypeArray::getPluginData):
  83218. * plugins/DOMMimeTypeArray.h: Added.
  83219. (WebCore::DOMMimeTypeArray::create):
  83220. (WebCore::DOMMimeTypeArray::disconnectFrame):
  83221. * plugins/DOMMimeTypeArray.idl: Added.
  83222. * plugins/DOMPlugin.cpp: Added.
  83223. (WebCore::DOMPlugin::DOMPlugin):
  83224. (WebCore::DOMPlugin::~DOMPlugin):
  83225. (WebCore::DOMPlugin::name):
  83226. (WebCore::DOMPlugin::filename):
  83227. (WebCore::DOMPlugin::description):
  83228. (WebCore::DOMPlugin::length):
  83229. (WebCore::DOMPlugin::item):
  83230. (WebCore::DOMPlugin::canGetItemsForName):
  83231. (WebCore::DOMPlugin::namedItem):
  83232. * plugins/DOMPlugin.h: Added.
  83233. (WebCore::DOMPlugin::create):
  83234. (WebCore::DOMPlugin::pluginInfo):
  83235. * plugins/DOMPlugin.idl: Added.
  83236. * plugins/DOMPluginArray.cpp: Added.
  83237. (WebCore::DOMPluginArray::DOMPluginArray):
  83238. (WebCore::DOMPluginArray::~DOMPluginArray):
  83239. (WebCore::DOMPluginArray::length):
  83240. (WebCore::DOMPluginArray::item):
  83241. (WebCore::DOMPluginArray::canGetItemsForName):
  83242. (WebCore::DOMPluginArray::namedItem):
  83243. (WebCore::DOMPluginArray::refresh):
  83244. (WebCore::DOMPluginArray::pluginData):
  83245. * plugins/DOMPluginArray.h: Added.
  83246. (WebCore::DOMPluginArray::create):
  83247. (WebCore::DOMPluginArray::disconnectFrame):
  83248. * plugins/DOMPluginArray.idl: Added.
  83249. * plugins/MimeType.cpp: Removed.
  83250. * plugins/MimeType.h: Removed.
  83251. * plugins/MimeType.idl: Removed.
  83252. * plugins/MimeTypeArray.cpp: Removed.
  83253. * plugins/MimeTypeArray.h: Removed.
  83254. * plugins/MimeTypeArray.idl: Removed.
  83255. * plugins/Plugin.cpp: Removed.
  83256. * plugins/Plugin.h: Removed.
  83257. * plugins/Plugin.idl: Removed.
  83258. * plugins/PluginArray.cpp: Removed.
  83259. * plugins/PluginArray.h: Removed.
  83260. * plugins/PluginArray.idl: Removed.
  83261. 2010-07-06 Alexey Proskuryakov <ap@apple.com>
  83262. Reviewed by Darin Adler.
  83263. https://bugs.webkit.org/show_bug.cgi?id=41156
  83264. Cross origin XMLHttpRequest should log the reason why connection failed
  83265. Covered by multiple existing tests.
  83266. * loader/CrossOriginAccessControl.cpp:
  83267. (WebCore::passesAccessControlCheck):
  83268. * loader/CrossOriginAccessControl.h:
  83269. * loader/CrossOriginPreflightResultCache.cpp:
  83270. (WebCore::CrossOriginPreflightResultCacheItem::parse):
  83271. (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginMethod):
  83272. (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginHeaders):
  83273. (WebCore::CrossOriginPreflightResultCacheItem::allowsRequest):
  83274. * loader/CrossOriginPreflightResultCache.h:
  83275. Functions that check requests now take a string argument for error explanation.
  83276. * loader/DocumentThreadableLoader.cpp:
  83277. (WebCore::DocumentThreadableLoader::DocumentThreadableLoader): Make an informative error
  83278. if crossOriginRequestPolicy is DenyCrossOriginRequests. This doesn't currently go anywhere,
  83279. since XMLHttpRequest is the only client that logs from didFail(), and it of course supports
  83280. cross origin requests.
  83281. (WebCore::DocumentThreadableLoader::makeSimpleCrossOriginAccessRequest): Make an informative
  83282. error when trying to e.g. send a cross origin XMLHttpRequest to ftp://.
  83283. (WebCore::DocumentThreadableLoader::didReceiveResponse): Pass error explanation from cross
  83284. origin access control code.
  83285. (WebCore::DocumentThreadableLoader::preflightFailure): Ditto.
  83286. * loader/DocumentThreadableLoader.h: preflightFailure() now takes arguments.
  83287. * platform/network/ResourceErrorBase.cpp:
  83288. * platform/network/ResourceErrorBase.h:
  83289. Added a constant for WebKit error domain.
  83290. * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::didFail): Report the error to console.
  83291. One day we'll be able to also provide script file and line number here, so it's best to
  83292. pass error all the way down to XHR for reporting.
  83293. 2010-07-06 Pavel Podivilov <podivilov@chromium.org>
  83294. Reviewed by Pavel Feldman.
  83295. Web Inspector: convert script offset to webkit format in v8 ScriptDebugServer
  83296. https://bugs.webkit.org/show_bug.cgi?id=41696
  83297. * bindings/v8/ScriptDebugServer.cpp:
  83298. (WebCore::ScriptDebugServer::dispatchDidParseSource):
  83299. 2010-07-06 Adam Barth <abarth@webkit.org>
  83300. Reviewed by Eric Seidel.
  83301. Implement InTableBodyMode
  83302. https://bugs.webkit.org/show_bug.cgi?id=41671
  83303. In the process of implementing this patch, Eric and I discussed some of
  83304. the high-level organization of the HTMLTreeBuilder class. We'd like to
  83305. split it up into smaller pieces. In the meantime, I've reordered some
  83306. of the declarations in the header to make the relations between the
  83307. different kinds of functions clearer.
  83308. * html/HTMLElementStack.cpp:
  83309. * html/HTMLTreeBuilder.cpp:
  83310. (WebCore::HTMLTreeBuilder::processIsindexStartTagForInBody):
  83311. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  83312. (WebCore::HTMLTreeBuilder::processStartTagForInTable):
  83313. (WebCore::HTMLTreeBuilder::processStartTag):
  83314. (WebCore::HTMLTreeBuilder::processEndTagForInTable):
  83315. (WebCore::HTMLTreeBuilder::processEndTag):
  83316. (WebCore::HTMLTreeBuilder::processCharacter):
  83317. (WebCore::HTMLTreeBuilder::processEndOfFile):
  83318. * html/HTMLTreeBuilder.h:
  83319. 2010-07-06 Leandro Pereira <leandro@profusion.mobi>
  83320. Unreviewed build fix.
  83321. [EFL] Generate code for RemoteInspector.
  83322. * CMakeLists.txt:
  83323. 2010-07-06 Varun Jain <varunjain@chromium.org>
  83324. Reviewed by Oliver Hunt.
  83325. Implementing CURVE_TO_CUBIC specification for SVG Path Segments. Currently,
  83326. curves specified in relative cordinates such as using createCurvetoCubicRel()
  83327. javascript function are not displayed.
  83328. SVG CurvetoCubic Path not implemented for relative cordinates
  83329. https://bugs.webkit.org/show_bug.cgi?id=41294
  83330. Test: svg/custom/svg-curve-with-relative-cordinates.html
  83331. * svg/SVGPathSegList.cpp:
  83332. (WebCore::SVGPathSegList::toPathData):
  83333. 2010-07-06 Alexey Proskuryakov <ap@apple.com>
  83334. Roll out patch for https://bugs.webkit.org/show_bug.cgi?id=41348 "Remove global variables
  83335. from XSLTProcessorLibxslt.cpp", as it causes crashes on buildbot.
  83336. * xml/XSLTProcessor.h:
  83337. (WebCore::XSLTProcessor::xslStylesheet):
  83338. (WebCore::XSLTProcessor::XSLTProcessor):
  83339. * xml/XSLTProcessorLibxslt.cpp:
  83340. (WebCore::docLoaderFunc):
  83341. (WebCore::setXSLTLoadCallBack):
  83342. (WebCore::xsltStylesheetPointer):
  83343. (WebCore::XSLTProcessor::transformToString):
  83344. 2010-07-06 Eric Seidel <eric@webkit.org>
  83345. Reviewed by Adam Barth.
  83346. Add processing for "in cell" mode and end tag processing for "in row"
  83347. https://bugs.webkit.org/show_bug.cgi?id=41688
  83348. I added several new table tests, not all of which pass yet.
  83349. Remaining failures exist due to lack of full "in table body" mode
  83350. support, which Adam has an outstanding patch for.
  83351. I believe all of the various branches added by this change are
  83352. covered now by our tests.
  83353. * html/HTMLElementStack.cpp:
  83354. - Added QualifiedName versions of inScope functions.
  83355. Using tagName.localName() is wrong for non-HTML elements,
  83356. in preparation for supporting foreign content we should centralize
  83357. our handling of QualifiedName in these functions instead of
  83358. sprinkling more .localName() calls around the code.
  83359. (WebCore::HTMLElementStack::inScope):
  83360. (WebCore::HTMLElementStack::inListItemScope):
  83361. (WebCore::HTMLElementStack::inTableScope):
  83362. * html/HTMLElementStack.h:
  83363. * html/HTMLFormattingElementList.cpp:
  83364. (WebCore::HTMLFormattingElementList::Entry::operator==):
  83365. (WebCore::HTMLFormattingElementList::Entry::operator!=):
  83366. - Calling element() on markers will assert, so use m_element.
  83367. * html/HTMLTreeBuilder.cpp:
  83368. (WebCore::HTMLTreeBuilder::closeTheCell):
  83369. - Implemented per the spec.
  83370. (WebCore::HTMLTreeBuilder::processStartTag):
  83371. - Use isTableBodyContextTag where possible.
  83372. - Add InCellMode.
  83373. (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
  83374. - Use isTableBodyContextTag where possible.
  83375. (WebCore::HTMLTreeBuilder::processTrEndTagForInRow):
  83376. - This code is needed from at least two callsites.
  83377. (WebCore::HTMLTreeBuilder::processEndTag):
  83378. - Add InCellMode and InRowMode
  83379. (WebCore::HTMLTreeBuilder::processCharacter):
  83380. (WebCore::HTMLTreeBuilder::processEndOfFile):
  83381. * html/HTMLTreeBuilder.h:
  83382. 2010-07-06 Eric Seidel <eric@webkit.org>
  83383. Reviewed by Adam Barth.
  83384. Make <a> auto-close any parent <a> tag
  83385. https://bugs.webkit.org/show_bug.cgi?id=41684
  83386. I first fixed <a> to auto-close surrounding <a> tags.
  83387. That caused about 3 more test passes and one new test failure.
  83388. The test failure was due to <marque> not adding a marker
  83389. to the active formatting elements.
  83390. So I made a one-line change to fix <marque>. However that hit an
  83391. ASSERT due to a bug in indexOfFirstUnopenFormattingElement.
  83392. Fixing indexOfFirstUnopenFormattingElement fixed another bunch of
  83393. Adoption Agency related tests (clearly this was the second typo
  83394. which was causing all the adoption agency failures).
  83395. However fixing <marque> and indexOfFirstUnopenFormattingElement,
  83396. added yet another failure due to missing support for </p>
  83397. automatically adding an implicit <p> tag. Fixing </p> finally
  83398. got the tests to a stable (all improving) state.
  83399. In the end, these 4 minor (and very well tested) tweaks fixed a total
  83400. of 9 subtests in html5lib/runner.html.
  83401. Another subtest progressed, but did not fully pass due to missing
  83402. <table> foster-parenting support.
  83403. * html/HTMLTreeBuilder.cpp:
  83404. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  83405. (WebCore::HTMLTreeBuilder::processEndTagForInBody):
  83406. (WebCore::HTMLTreeBuilder::indexOfFirstUnopenFormattingElement):
  83407. 2010-07-02 Philippe Normand <pnormand@igalia.com>
  83408. Reviewed by Xan Lopez
  83409. [GStreamer] can't seek past maxTimeLoaded value
  83410. https://bugs.webkit.org/show_bug.cgi?id=40526
  83411. Extended the seekable range to the whole media. This allows video
  83412. played with progressive download to be seeked past the current
  83413. buffered position.
  83414. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  83415. (WebCore::MediaPlayerPrivateGStreamer::maxTimeSeekable):
  83416. (WebCore::MediaPlayerPrivateGStreamer::updateStates):
  83417. 2010-07-06 Andreas Wictor <andreas.wictor@xcerion.com>
  83418. Reviewed by Alexey Proskuryakov.
  83419. Remove global variables from XSLTProcessorLibxslt.cpp
  83420. https://bugs.webkit.org/show_bug.cgi?id=41348
  83421. Remove the globalProcessor and globalDocLoader global variables
  83422. by using the _private field that exists on most libxml structs.
  83423. No new tests, existing tests covers this.
  83424. * xml/XSLTProcessor.h:
  83425. (WebCore::XSLTProcessor::sourceNode):
  83426. (WebCore::XSLTProcessor::XSLTProcessor):
  83427. * xml/XSLTProcessorLibxslt.cpp:
  83428. (WebCore::registredXSLTProcessors):
  83429. (WebCore::registredXSLStyleSheets):
  83430. (WebCore::docLoaderFunc):
  83431. (WebCore::xsltStylesheetPointer):
  83432. (WebCore::XSLTProcessor::transformToString):
  83433. 2010-07-06 Darin Adler <darin@apple.com>
  83434. Fix Cairo build.
  83435. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  83436. (WebCore::GraphicsContext::createPlatformShadow): Removed unnneded release
  83437. in code that passes a PassOwnPtr to another PassOwnPtr.
  83438. 2010-07-06 Darin Adler <darin@apple.com>
  83439. Fix Chromium build.
  83440. * platform/graphics/skia/SkiaUtils.cpp:
  83441. (WebCore::scratchContext): Use leakPtr instead of release.
  83442. 2010-07-06 Martin Robinson <mrobinson@igalia.com>
  83443. Unreviewed.
  83444. Build fix after r62549.
  83445. * GNUmakefile.am: Generate RemoteInspector files by manually listing
  83446. them instead of building them into libWebCoreJS.la.
  83447. 2010-07-06 Darin Adler <darin@apple.com>
  83448. Reviewed by Adam Barth.
  83449. Add adoptPtr and leakPtr functions for OwnPtr and PassOwnPtr
  83450. https://bugs.webkit.org/show_bug.cgi?id=41320
  83451. Made code changes required because of the change to the release function.
  83452. The equivalent to the old release function is now named leakPtr and
  83453. should be used sparingly. The new release function returns a PassOwnPtr.
  83454. * css/CSSFontFaceSource.cpp:
  83455. (WebCore::CSSFontFaceSource::getFontData): Changed code to call
  83456. leakPtr instead of release.
  83457. * css/CSSParser.cpp:
  83458. (WebCore::CSSParser::addProperty): Ditto.
  83459. * css/CSSSegmentedFontFace.cpp:
  83460. (WebCore::CSSSegmentedFontFace::getFontData): Removed unneeded type
  83461. casting. Not sure why this changed the type to FontData* and then
  83462. casted back to SimpleFontData*.
  83463. * css/MediaQuery.cpp:
  83464. (WebCore::MediaQuery::MediaQuery): Removed call to release on a
  83465. PassOwnPtr, since the data member is now an OwnPtr.
  83466. (WebCore::MediaQuery::~MediaQuery): Removed now-unneeded delete.
  83467. * css/MediaQuery.h: Changed m_expressions to be an OwnPtr.
  83468. * html/HTMLToken.h:
  83469. (WebCore::AtomicHTMLToken::AtomicHTMLToken): Use assignment instead
  83470. of the set function since there are no raw pointers involved.
  83471. * loader/CachedResource.cpp:
  83472. (WebCore::CachedResource::makePurgeable): Ditto.
  83473. * loader/CrossOriginPreflightResultCache.cpp:
  83474. (WebCore::CrossOriginPreflightResultCache::appendEntry): Use
  83475. leakPtr instead of release, and also add FIXME about deleting the
  83476. old value if the original and URL are already in the map. I
  83477. believe dealing with this FIXME may fix a storage leak.
  83478. * loader/CrossOriginPreflightResultCache.h: Change the argument
  83479. to be PassOwnPtr instead of a raw pointer, since this function
  83480. does take ownership.
  83481. * loader/DocumentThreadableLoader.cpp:
  83482. (WebCore::DocumentThreadableLoader::DocumentThreadableLoader):
  83483. Use assignment instead of the set function since there are no raw
  83484. pointers involved.
  83485. * loader/FrameLoader.cpp:
  83486. (WebCore::FrameLoader::startIconLoader): Ditto.
  83487. * loader/TextResourceDecoder.cpp:
  83488. (WebCore::TextResourceDecoder::decode): Ditto.
  83489. (WebCore::TextResourceDecoder::flush): Ditto.
  83490. * page/DOMTimer.cpp:
  83491. (WebCore::DOMTimer::fired): Use OwnPtr instead of an explicit
  83492. delete.
  83493. * platform/CrossThreadCopier.h: Removed explicit code that tried
  83494. to copy PassOwnPtr in a complicated way. It did nothing different
  83495. from just returning the PassOwnPtr. This presumably was done because
  83496. PassRefPtr has issues when copied cross-thread, but there are no
  83497. similar issues for PassOwnPtr. Someone with more experience than I
  83498. might be able to remove the specialization altogether, because
  83499. CrossThreadCopierPassThrough does the right thing in this case.
  83500. * platform/SharedBuffer.cpp:
  83501. (WebCore::SharedBuffer::adoptPurgeableBuffer): Changed argument to
  83502. be a PassOwnPtr.
  83503. (WebCore::SharedBuffer::releasePurgeableBuffer): Changed result to
  83504. be a PassOwnPtr.
  83505. * platform/SharedBuffer.h: Updated for changes above.
  83506. * rendering/RenderSVGResourceFilter.cpp:
  83507. (WebCore::RenderSVGResourceFilter::applyResource): Changed one site
  83508. to use assignment instead of the set function since there are no raw
  83509. pointers involved. Changed another site to use leakPtr instead
  83510. of release.
  83511. * rendering/RenderSVGResourceGradient.cpp:
  83512. (WebCore::createMaskAndSwapContextForTextGradient): Use assignment
  83513. instead of the set function since there are no raw pointers involved.
  83514. * rendering/style/RenderStyle.cpp:
  83515. (WebCore::RenderStyle::setContent): Use leakPtr instead of release.
  83516. (WebCore::RenderStyle::setBoxShadow): Ditto.
  83517. * workers/DefaultSharedWorkerRepository.cpp:
  83518. (WebCore::DefaultSharedWorkerRepository::connectToWorker):
  83519. Removed unneeded call to release function in a code path that passes
  83520. a PassOwnPtr to a function that takes a PassOwnPtr.
  83521. * workers/WorkerContext.cpp:
  83522. (WebCore::WorkerContext::setTimeout): Changed argument type to PassOwnPtr.
  83523. (WebCore::WorkerContext::setInterval): Ditto.
  83524. * workers/WorkerContext.h: Updated for changes above.
  83525. * workers/WorkerMessagingProxy.cpp:
  83526. (WebCore::WorkerMessagingProxy::postMessageToWorkerObject):
  83527. (WebCore::WorkerMessagingProxy::postMessageToWorkerContext):
  83528. Removed unneeded call to release function in code paths that pass
  83529. a PassOwnPtr to a function that takes a PassOwnPtr.
  83530. 2010-07-06 Ilya Tikhonovsky <loislo@chromium.org>
  83531. Reviewed by Yury Semikhatsky.
  83532. WebInspector: generator part of the patch for bug 40675.
  83533. On the way to Remote Debugging we want to support JSON serialization
  83534. on both sides of WebInspector transport.
  83535. As far as InspectorFrontend class is a simple proxy to WebInspector
  83536. it would be better to generate it from an IDL file.
  83537. We have generator infrastructure for binding and will reuse it for
  83538. new generator.
  83539. https://bugs.webkit.org/show_bug.cgi?id=41692
  83540. * CMakeLists.txt:
  83541. * DerivedSources.make:
  83542. * GNUmakefile.am:
  83543. * WebCore.gyp/WebCore.gyp:
  83544. * WebCore.gyp/scripts/rule_binding.py:
  83545. * WebCore.gypi:
  83546. * WebCore.pri:
  83547. * WebCore.vcproj/WebCore.vcproj:
  83548. * WebCore.xcodeproj/project.pbxproj:
  83549. * bindings/scripts/CodeGenerator.pm:
  83550. * bindings/scripts/IDLParser.pm:
  83551. * bindings/scripts/generate-bindings.pl:
  83552. * inspector/CodeGeneratorInspector.pm: Added.
  83553. * inspector/InspectorController.cpp:
  83554. (WebCore::InspectorController::connectFrontend):
  83555. (WebCore::InspectorController::startTimelineProfiler):
  83556. * inspector/InspectorController.h:
  83557. * inspector/InspectorFrontend.cpp:
  83558. * inspector/InspectorFrontend.h:
  83559. * inspector/InspectorFrontend2.idl: Added.
  83560. * inspector/InspectorTimelineAgent.cpp:
  83561. (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
  83562. (WebCore::InspectorTimelineAgent::resetFrontendProxyObject):
  83563. (WebCore::InspectorTimelineAgent::addRecordToTimeline):
  83564. * inspector/InspectorTimelineAgent.h:
  83565. 2010-07-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
  83566. Rubber-stamped by Xan Lopez.
  83567. [GTK] Crashes when going back with page cache in unknown circunstances
  83568. https://bugs.webkit.org/show_bug.cgi?id=41710
  83569. Also NULL-check document, in hopes of fixing this hard to
  83570. reproduce crash that we are getting reported quite a bit.
  83571. * page/FrameView.cpp:
  83572. (WebCore::FrameView::windowClipRect):
  83573. 2010-07-05 Ilya Tikhonovsky <loislo@chromium.org>
  83574. Reviewed by Yury Semikhatsky.
  83575. Web Inspector: On the way to Remote Debuging we want to support JSON
  83576. serialization on both sides of WebInspector transport. As far as
  83577. InspectorFrontend class is a simple proxy to WebInspector it would
  83578. be better to generate it from an IDL file. We have generator
  83579. infostructure for binding and will reuse it for new generator.
  83580. https://bugs.webkit.org/show_bug.cgi?id=40675
  83581. * bindings/js/ScriptCallStack.cpp:
  83582. (WebCore::ScriptCallStack::stackTrace):
  83583. * bindings/js/ScriptCallStack.h:
  83584. * bindings/v8/ScriptCallStack.cpp:
  83585. (WebCore::ScriptCallStack::stackTrace):
  83586. * bindings/v8/ScriptCallStack.h:
  83587. * inspector/InspectorFrontend.cpp:
  83588. (WebCore::InspectorFrontend::addRecordToTimeline):
  83589. * inspector/InspectorFrontend.h:
  83590. * inspector/InspectorTimelineAgent.cpp:
  83591. (WebCore::InspectorTimelineAgent::pushGCEventRecords):
  83592. (WebCore::InspectorTimelineAgent::willCallFunction):
  83593. (WebCore::InspectorTimelineAgent::willDispatchEvent):
  83594. (WebCore::InspectorTimelineAgent::willLayout):
  83595. (WebCore::InspectorTimelineAgent::willRecalculateStyle):
  83596. (WebCore::InspectorTimelineAgent::willPaint):
  83597. (WebCore::InspectorTimelineAgent::willWriteHTML):
  83598. (WebCore::InspectorTimelineAgent::didWriteHTML):
  83599. (WebCore::InspectorTimelineAgent::didInstallTimer):
  83600. (WebCore::InspectorTimelineAgent::didRemoveTimer):
  83601. (WebCore::InspectorTimelineAgent::willFireTimer):
  83602. (WebCore::InspectorTimelineAgent::willChangeXHRReadyState):
  83603. (WebCore::InspectorTimelineAgent::willLoadXHR):
  83604. (WebCore::InspectorTimelineAgent::willEvaluateScript):
  83605. (WebCore::InspectorTimelineAgent::didScheduleResourceRequest):
  83606. (WebCore::InspectorTimelineAgent::willSendResourceRequest):
  83607. (WebCore::InspectorTimelineAgent::willReceiveResourceData):
  83608. (WebCore::InspectorTimelineAgent::willReceiveResourceResponse):
  83609. (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
  83610. (WebCore::InspectorTimelineAgent::didMarkTimeline):
  83611. (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
  83612. (WebCore::InspectorTimelineAgent::didMarkLoadEvent):
  83613. (WebCore::InspectorTimelineAgent::addRecordToTimeline):
  83614. (WebCore::InspectorTimelineAgent::setHeapSizeStatistic):
  83615. (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
  83616. (WebCore::InspectorTimelineAgent::pushCurrentRecord):
  83617. * inspector/InspectorTimelineAgent.h:
  83618. (WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry):
  83619. * inspector/TimelineRecordFactory.cpp:
  83620. (WebCore::TimelineRecordFactory::createGenericRecord):
  83621. (WebCore::TimelineRecordFactory::createGCEventData):
  83622. (WebCore::TimelineRecordFactory::createFunctionCallData):
  83623. (WebCore::TimelineRecordFactory::createEventDispatchData):
  83624. (WebCore::TimelineRecordFactory::createGenericTimerData):
  83625. (WebCore::TimelineRecordFactory::createTimerInstallData):
  83626. (WebCore::TimelineRecordFactory::createXHRReadyStateChangeData):
  83627. (WebCore::TimelineRecordFactory::createXHRLoadData):
  83628. (WebCore::TimelineRecordFactory::createEvaluateScriptData):
  83629. (WebCore::TimelineRecordFactory::createMarkTimelineData):
  83630. (WebCore::TimelineRecordFactory::createScheduleResourceRequestData):
  83631. (WebCore::TimelineRecordFactory::createResourceSendRequestData):
  83632. (WebCore::TimelineRecordFactory::createResourceReceiveResponseData):
  83633. (WebCore::TimelineRecordFactory::createResourceFinishData):
  83634. (WebCore::TimelineRecordFactory::createReceiveResourceData):
  83635. (WebCore::TimelineRecordFactory::createPaintData):
  83636. (WebCore::TimelineRecordFactory::createParseHTMLData):
  83637. * inspector/TimelineRecordFactory.h:
  83638. 2010-07-06 Adam Barth <abarth@webkit.org>
  83639. Reviewed by Eric Seidel.
  83640. Implement InColgroupMode
  83641. https://bugs.webkit.org/show_bug.cgi?id=41663
  83642. * html/HTMLTreeBuilder.cpp:
  83643. (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup):
  83644. (WebCore::HTMLTreeBuilder::processStartTag):
  83645. (WebCore::HTMLTreeBuilder::processEndTag):
  83646. (WebCore::HTMLTreeBuilder::processCharacter):
  83647. (WebCore::HTMLTreeBuilder::processEndOfFile):
  83648. * html/HTMLTreeBuilder.h:
  83649. 2010-07-06 Eric Seidel <eric@webkit.org>
  83650. Reviewed by Adam Barth.
  83651. Implement bookmarking for HTML5 Adoption Agency algorithm
  83652. https://bugs.webkit.org/show_bug.cgi?id=41659
  83653. Was easier than I expected it to be.
  83654. Fixes a bunch of html5lib/runner.html tests.
  83655. * html/HTMLFormattingElementList.cpp:
  83656. (WebCore::HTMLFormattingElementList::bookmarkFor):
  83657. (WebCore::HTMLFormattingElementList::insertAt):
  83658. * html/HTMLFormattingElementList.h:
  83659. (WebCore::HTMLFormattingElementList::Bookmark::Bookmark):
  83660. (WebCore::HTMLFormattingElementList::Bookmark::moveToAfter):
  83661. (WebCore::HTMLFormattingElementList::Bookmark::elementBefore):
  83662. (WebCore::HTMLFormattingElementList::Bookmark::elementAfter):
  83663. * html/HTMLTreeBuilder.cpp:
  83664. (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
  83665. 2010-07-06 Adam Barth <abarth@webkit.org>
  83666. Reviewed by Eric Seidel.
  83667. Implement more of InTableMode
  83668. https://bugs.webkit.org/show_bug.cgi?id=41652
  83669. By the time we got around to landing this patch, it turns out to be
  83670. just a bit of cleanup (the functional changes where landed already.)
  83671. * html/HTMLTreeBuilder.cpp:
  83672. (WebCore::HTMLTreeBuilder::processCharacter):
  83673. (WebCore::HTMLTreeBuilder::processEndOfFile):
  83674. 2010-07-06 Sheriff Bot <webkit.review.bot@gmail.com>
  83675. Unreviewed, rolling out r62529.
  83676. http://trac.webkit.org/changeset/62529
  83677. https://bugs.webkit.org/show_bug.cgi?id=41661
  83678. http/tests/inspector/resource-har-conversion.html is broken
  83679. (Requested by yutak on #webkit).
  83680. * inspector/InspectorController.cpp:
  83681. (WebCore::InspectorController::addResource):
  83682. (WebCore::InspectorController::removeResource):
  83683. * inspector/InspectorController.h:
  83684. * inspector/InspectorResource.cpp:
  83685. (WebCore::InspectorResource::InspectorResource):
  83686. (WebCore::InspectorResource::updateScriptObject):
  83687. (WebCore::InspectorResource::cachedResource):
  83688. (WebCore::InspectorResource::type):
  83689. (WebCore::InspectorResource::resourceData):
  83690. * inspector/InspectorResource.h:
  83691. (WebCore::InspectorResource::):
  83692. (WebCore::InspectorResource::create):
  83693. * inspector/front-end/Resource.js:
  83694. (WebInspector.Resource.Type.toString):
  83695. (WebInspector.Resource.prototype.set type):
  83696. (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType):
  83697. * inspector/front-end/ResourceView.js:
  83698. (WebInspector.ResourceView.prototype._refreshRequestHeaders):
  83699. (WebInspector.ResourceView.prototype._refreshResponseHeaders):
  83700. (WebInspector.ResourceView.prototype._refreshHeaders):
  83701. * inspector/front-end/inspector.css:
  83702. (.resources-category-scripts, .resources-category-xhr, .resources-category-fonts, .resources-category-other):
  83703. * inspector/front-end/inspector.js:
  83704. (WebInspector.loaded):
  83705. (WebInspector.updateResource):
  83706. * websockets/WebSocketChannel.cpp:
  83707. (WebCore::WebSocketChannel::WebSocketChannel):
  83708. (WebCore::WebSocketChannel::disconnect):
  83709. (WebCore::WebSocketChannel::didOpen):
  83710. (WebCore::WebSocketChannel::didClose):
  83711. (WebCore::WebSocketChannel::processBuffer):
  83712. * websockets/WebSocketChannel.h:
  83713. 2010-07-06 Adam Barth <abarth@webkit.org>
  83714. Reviewed by Eric Seidel.
  83715. Implement InCaptionMode
  83716. https://bugs.webkit.org/show_bug.cgi?id=41660
  83717. Implementing this mode also turned up a subtle bug in the adoption
  83718. agency code.
  83719. * html/HTMLTreeBuilder.cpp:
  83720. (WebCore::HTMLTreeBuilder::processStartTag):
  83721. (WebCore::HTMLTreeBuilder::processCaptionEndTagForInCaption):
  83722. (WebCore::HTMLTreeBuilder::processEndTag):
  83723. (WebCore::HTMLTreeBuilder::processCharacter):
  83724. (WebCore::HTMLTreeBuilder::indexOfFirstUnopenFormattingElement):
  83725. - We're supposed to reutrn the first *unopened* formatting element.
  83726. The old code returned the first *opened* formatting element.
  83727. * html/HTMLTreeBuilder.h:
  83728. 2010-07-06 Adam Barth <abarth@webkit.org>
  83729. Reviewed by Eric Seidel.
  83730. Implement defaut cases for InTableMode
  83731. https://bugs.webkit.org/show_bug.cgi?id=41656
  83732. * html/HTMLTreeBuilder.cpp:
  83733. (WebCore::HTMLTreeBuilder::processStartTag):
  83734. (WebCore::HTMLTreeBuilder::processEndTagForInBody):
  83735. (WebCore::HTMLTreeBuilder::processEndTag):
  83736. * html/HTMLTreeBuilder.h:
  83737. 2010-07-05 Nikolas Zimmermann <nzimmermann@rim.com>
  83738. Reviewed by Dirk Schulze.
  83739. SVGRenderContainer forces too many kids to relayout
  83740. https://bugs.webkit.org/show_bug.cgi?id=15391
  83741. Fixing a long-standing performance issue. We should only ever need to relayout container children when the parent bounds change.
  83742. The bounds of a container can only change, if the outermost RenderSVGRoot container uses relative length values and its size changes.
  83743. This can either happen when the window resizes for standalone SVG documents, or if an enclosing RenderBox changes width/height values.
  83744. Only relayout container children if the container has selfNeedsLayout() true, or if the parent bounds change.
  83745. Lively Kernel doesn't do any relayouts anymore, except if you change the Safari window size, this is a great progression.
  83746. * rendering/RenderPath.cpp:
  83747. (WebCore::RenderPath::layout): No need to special case Path updates, if the element uses relative lengths. SVGRenderSupport now handles this case.
  83748. * rendering/RenderSVGContainer.cpp:
  83749. (WebCore::RenderSVGContainer::layout): Fix some style issues.
  83750. * rendering/RenderSVGContainer.h:
  83751. (WebCore::RenderSVGContainer::setDrawsContents): Inlined for speed.
  83752. (WebCore::RenderSVGContainer::drawsContents): Ditto.
  83753. * rendering/RenderSVGRoot.cpp:
  83754. (WebCore::RenderSVGRoot::RenderSVGRoot): Initialize m_isLayoutSizeChanged to false.
  83755. (WebCore::RenderSVGRoot::layout): Set m_isLayoutSizeChanged=true when the RenderSVGRoot size changes during layout.
  83756. (WebCore::RenderSVGRoot::calcViewport): Remove hasRelativeLengths() special case.
  83757. * rendering/RenderSVGRoot.h:
  83758. (WebCore::RenderSVGRoot::isLayoutSizeChanged): New function, which returns true during layout() if the outermost <svg> size changes.
  83759. * rendering/RenderSVGViewportContainer.cpp:
  83760. (WebCore::RenderSVGViewportContainer::calcViewport): Cleanup code, and remove obsolete hasRelativeLengths() special case.
  83761. * rendering/SVGRenderSupport.cpp:
  83762. (WebCore::svgRootTreeObject): Added helper function, that returns the RenderSVGRoot for a given RenderObject.
  83763. (WebCore::SVGRenderSupport::layoutChildren): Remove FIXME, only relayout container children, if the parent bounds change and the child uses relative lengths.
  83764. * svg/SVGStyledElement.cpp:
  83765. (WebCore::SVGStyledElement::updateRelativeLengthsInformation): Implemented this function. Keeps track of relative lengths elements, so that the
  83766. hasRelativeLengths() information is always up2date.
  83767. * svg/SVGStyledElement.h:
  83768. (WebCore::SVGStyledElement::hasRelativeLengths): Don't call the virtual selfHasRelativeLengths() information, just return wheter m_elementsWithRelativeLengths is not empty.
  83769. 2010-07-05 Yuzo Fujishima <yuzo@google.com>
  83770. Reviewed by Dan Bernstein.
  83771. Fix for Bug 41509 - Ranges for @font-face unicode-range must be separated by commas
  83772. https://bugs.webkit.org/show_bug.cgi?id=41509
  83773. Test: fast/css/font-face-multiple-ranges-for-unicode-range.html
  83774. * css/CSSParser.cpp:
  83775. (WebCore::CSSParser::parseFontFaceUnicodeRange):
  83776. 2010-07-05 Yuta Kitamura <yutak@chromium.org>
  83777. Reviewed by Pavel Feldman.
  83778. Add WebSocket resource type to Web Inspector.
  83779. When a new WebSocket connection is established, a line for that connection
  83780. will appear in Web Inspector's Resources tab. If the resource name is
  83781. clicked, the details of handshake request and response will be shown.
  83782. Web Inspector: WebSocket in Resources tab
  83783. https://bugs.webkit.org/show_bug.cgi?id=40768
  83784. * inspector/InspectorController.cpp:
  83785. (WebCore::InspectorController::addResource): WebSocket resource does not
  83786. have an associated loader, thus frame might be null. Need to check it.
  83787. (WebCore::InspectorController::removeResource): Ditto.
  83788. (WebCore::InspectorController::didCreateWebSocket):
  83789. (WebCore::InspectorController::willSendWebSocketHandshakeRequest):
  83790. (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse):
  83791. (WebCore::InspectorController::didCloseWebSocket):
  83792. * inspector/InspectorController.h:
  83793. * inspector/InspectorResource.cpp: Add null checks of m_loader and m_frame,
  83794. because WebSocket does not have a loader and we need to allow null for
  83795. these variables.
  83796. (WebCore::createReadableStringFromBinary):
  83797. (WebCore::InspectorResource::InspectorResource):
  83798. (WebCore::InspectorResource::create): Factory function of
  83799. regular (non-WebSocket) resources.
  83800. (WebCore::InspectorResource::createWebSocket): Factory function of
  83801. WebSocket resources.
  83802. (WebCore::InspectorResource::updateWebSocketRequest):
  83803. (WebCore::InspectorResource::updateWebSocketResponse):
  83804. (WebCore::InspectorResource::updateScriptObject):
  83805. (WebCore::InspectorResource::cachedResource):
  83806. (WebCore::InspectorResource::type):
  83807. (WebCore::InspectorResource::resourceData):
  83808. * inspector/InspectorResource.h:
  83809. (WebCore::InspectorResource::):
  83810. (WebCore::InspectorResource::markWebSocket):
  83811. * inspector/front-end/Resource.js:
  83812. (WebInspector.Resource.Type.toString):
  83813. (WebInspector.Resource.prototype.set type):
  83814. (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType):
  83815. * inspector/front-end/ResourceView.js:
  83816. (WebInspector.ResourceView.prototype._refreshRequestHeaders):
  83817. (WebInspector.ResourceView.prototype._refreshResponseHeaders):
  83818. (WebInspector.ResourceView.prototype._refreshHeaders):
  83819. * inspector/front-end/inspector.css:
  83820. (.resources-category-websockets, .resources-category-other):
  83821. (.resources-category-websockets .resources-graph-bar):
  83822. (.resources-category-websockets.resource-cached .resources-graph-bar):
  83823. * inspector/front-end/inspector.js:
  83824. (WebInspector.loaded):
  83825. (WebInspector.updateResource):
  83826. * websockets/WebSocketChannel.cpp:
  83827. (WebCore::WebSocketChannel::WebSocketChannel):
  83828. (WebCore::WebSocketChannel::disconnect):
  83829. (WebCore::WebSocketChannel::didOpen):
  83830. (WebCore::WebSocketChannel::didClose):
  83831. (WebCore::WebSocketChannel::processBuffer):
  83832. (WebCore::WebSocketChannel::identifier):
  83833. * websockets/WebSocketChannel.h:
  83834. 2010-07-05 Yury Semikhatsky <yurys@chromium.org>
  83835. Unreviewed. Fix Chromium build.
  83836. * inspector/InspectorApplicationCacheAgent.cpp:
  83837. (WebCore::InspectorApplicationCacheAgent::fillResourceList):
  83838. (WebCore::InspectorApplicationCacheAgent::getApplicationCaches):
  83839. 2010-07-05 Adam Barth <abarth@webkit.org>
  83840. Unreviewed.
  83841. Move processStartTagForInBody to its own function.
  83842. * html/HTMLTreeBuilder.cpp:
  83843. (WebCore::HTMLTreeBuilder::processStartTagForInBody):
  83844. (WebCore::HTMLTreeBuilder::processStartTag):
  83845. * html/HTMLTreeBuilder.cpp.orig: Added.
  83846. * html/HTMLTreeBuilder.h:
  83847. 2010-07-05 Eric Seidel <eric@webkit.org>
  83848. Reviewed by Adam Barth.
  83849. Fix one more notImplemented in h1-h6 start tag handling
  83850. https://bugs.webkit.org/show_bug.cgi?id=41654
  83851. * html/HTMLTreeBuilder.cpp:
  83852. (WebCore::HTMLTreeBuilder::processStartTag):
  83853. 2010-07-05 Eric Seidel <eric@webkit.org>
  83854. Unreviewed. Just fixing proess to process.
  83855. Clearly Adam and I can't spell. Thankfully MikeSmith can.
  83856. Add <isindex> support, per HTML5
  83857. https://bugs.webkit.org/show_bug.cgi?id=41650
  83858. * html/HTMLTreeBuilder.cpp:
  83859. (WebCore::HTMLTreeBuilder::processFakeStartTag):
  83860. (WebCore::HTMLTreeBuilder::processFakeEndTag):
  83861. (WebCore::HTMLTreeBuilder::processIsindexStartTagForBody):
  83862. (WebCore::HTMLTreeBuilder::processStartTag):
  83863. * html/HTMLTreeBuilder.h:
  83864. 2010-07-05 Eric Seidel <eric@webkit.org>
  83865. Reviewed by Adam Barth.
  83866. Add <isindex> support, per HTML5
  83867. https://bugs.webkit.org/show_bug.cgi?id=41650
  83868. Covered by html5lib/runner.html including a new
  83869. isindex.dat test suite.
  83870. * html/HTMLToken.h:
  83871. (WebCore::AtomicHTMLToken::AtomicHTMLToken):
  83872. - Support passing attributes to the constructor.
  83873. (WebCore::AtomicHTMLToken::name):
  83874. (WebCore::AtomicHTMLToken::setName):
  83875. (WebCore::AtomicHTMLToken::getAttributeItem):
  83876. (WebCore::AtomicHTMLToken::attributes):
  83877. (WebCore::AtomicHTMLToken::takeAtributes):
  83878. - Reduces ref-churn, and makes it possible for callers
  83879. to modify attributes w/o affecting future uses of the attributes.
  83880. (WebCore::AtomicHTMLToken::usesName):
  83881. - Used by ASSERTS.
  83882. (WebCore::AtomicHTMLToken::usesAttributes):
  83883. - Used by ASSERTS.
  83884. * html/HTMLTreeBuilder.cpp:
  83885. (WebCore::convertToOldStyle):
  83886. - Can't be const, now that we use takeAttributes()
  83887. (WebCore::HTMLTreeBuilder::insertHTMLStartTagBeforeHTML):
  83888. (WebCore::HTMLTreeBuilder::proesssFakeStartTag):
  83889. - New function. I'm not sure this is the perfect design
  83890. (I'd kinda like AtomicHTMLToken to be copyable so we can
  83891. have create functions for it), but this makes the callsites
  83892. using fake tokens much more readable.
  83893. (WebCore::HTMLTreeBuilder::proesssFakeEndTag):
  83894. (WebCore::HTMLTreeBuilder::processFakeCharacters):
  83895. (WebCore::HTMLTreeBuilder::attributesForIsindexInput):
  83896. (WebCore::HTMLTreeBuilder::processIsindexStartTagForBody):
  83897. (WebCore::HTMLTreeBuilder::processStartTag):
  83898. (WebCore::HTMLTreeBuilder::insertScriptElement):
  83899. - Use takeAttributes() for less ref-churn.
  83900. (WebCore::HTMLTreeBuilder::createElement): ditto
  83901. (WebCore::HTMLTreeBuilder::finished):
  83902. - Remove bogus use of AtomicHTMLToken constructor which
  83903. wasn't even being used now that we support emitting EOF tokens
  83904. from the Tokenizer directly.
  83905. * html/HTMLTreeBuilder.h:
  83906. 2010-07-05 Adam Barth <abarth@webkit.org>
  83907. Reviewed by Eric Seidel.
  83908. ASSERT that we're processing the correct type of token
  83909. https://bugs.webkit.org/show_bug.cgi?id=41647
  83910. Making these asserts work required a small (non-observable) tweak to
  83911. some old code.
  83912. * html/HTMLTreeBuilder.cpp:
  83913. (WebCore::HTMLTreeBuilder::processDoctypeToken):
  83914. (WebCore::HTMLTreeBuilder::processStartTag):
  83915. (WebCore::HTMLTreeBuilder::processBodyEndTagForInBody):
  83916. (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
  83917. (WebCore::HTMLTreeBuilder::processEndTag):
  83918. (WebCore::HTMLTreeBuilder::processComment):
  83919. (WebCore::HTMLTreeBuilder::processCharacter):
  83920. (WebCore::HTMLTreeBuilder::processEndOfFile):
  83921. (WebCore::HTMLTreeBuilder::processStartTagForInHead):
  83922. 2010-07-05 Adam Barth <abarth@webkit.org>
  83923. Reviewed by Eric Seidel.
  83924. Implement in select in table
  83925. https://bugs.webkit.org/show_bug.cgi?id=41646
  83926. This mode is mostly a fall-through to the InSelectMode.
  83927. * html/HTMLTreeBuilder.cpp:
  83928. (WebCore::HTMLTreeBuilder::processStartTag):
  83929. (WebCore::HTMLTreeBuilder::processEndTag):
  83930. (WebCore::HTMLTreeBuilder::processCharacter):
  83931. (WebCore::HTMLTreeBuilder::processEndOfFile):
  83932. 2010-07-05 Adam Barth <abarth@webkit.org>
  83933. Reviewed by Eric Seidel.
  83934. Implement basic text node coalescing
  83935. https://bugs.webkit.org/show_bug.cgi?id=41623
  83936. This patch isn't the end-all, be-all of text node coalescing, but it's
  83937. a good start.
  83938. * dom/CharacterData.cpp:
  83939. (WebCore::CharacterData::parserAppendData):
  83940. (WebCore::CharacterData::appendData):
  83941. * dom/CharacterData.h:
  83942. - Added a new method to dance around mutation events.
  83943. * html/HTMLTreeBuilder.cpp:
  83944. (WebCore::HTMLTreeBuilder::insertTextNode):
  83945. 2010-07-05 Adam Barth <abarth@webkit.org>
  83946. Reviewed by Eric Seidel.
  83947. Implement InSelectMode
  83948. https://bugs.webkit.org/show_bug.cgi?id=41627
  83949. * html/HTMLTreeBuilder.cpp:
  83950. (WebCore::HTMLTreeBuilder::processStartTag):
  83951. (WebCore::HTMLTreeBuilder::processEndTag):
  83952. (WebCore::HTMLTreeBuilder::processCharacter):
  83953. (WebCore::HTMLTreeBuilder::processEndOfFile):
  83954. 2010-07-05 Fady Samuel <fsamuel@chromium.org>
  83955. Reviewed by Darin Adler.
  83956. Fixed a svg crash when setting class of an svg ellipse object.
  83957. Altering the CSS class of an attached SVG element causes WebKit to crash
  83958. https://bugs.webkit.org/show_bug.cgi?id=40857
  83959. Test: svg/css/svg-ellipse-render-crash.html
  83960. * dom/StyledElement.cpp:
  83961. (WebCore::StyledElement::classAttributeChanged):
  83962. 2010-07-05 Dan Bernstein <mitz@apple.com>
  83963. Reviewed by Sam Weinig.
  83964. Reproducible crash with Optimize Legibility extension
  83965. https://bugs.webkit.org/show_bug.cgi?id=41585
  83966. Test: fast/css/text-rendering-priority.html
  83967. Moved the text-rendering CSS property to the “high priority” group, because applying it
  83968. during style selection invalidates the font.
  83969. * css/CSSPropertyNames.in: Moved text-rendering to the “high priority” section at the top.
  83970. * css/CSSStyleSelector.cpp:
  83971. (WebCore::CSSStyleSelector::applyDeclarations): Updated compile-time assertion.
  83972. 2010-07-05 Dan Bernstein <mitz@apple.com>
  83973. Reviewed by Sam Weinig.
  83974. optimizeLegibility doesn't play nice with fonts that do not have a space glyph
  83975. https://bugs.webkit.org/show_bug.cgi?id=41599
  83976. No test because none of the fonts available to DumpRenderTree are missing a space glyph.
  83977. * rendering/RenderBlockLineLayout.cpp:
  83978. (WebCore::RenderBlock::findNextLineBreak): When the font does not map the space character
  83979. to a glyph, a fallback font is used for space. Therefore, wordTrailingSpaceWidth must be
  83980. initialized with the width of a space as measured by the Font rather than with the cached
  83981. space width.
  83982. 2010-07-05 Eric Seidel <eric@webkit.org>
  83983. Reviewed by Adam Barth.
  83984. Implement HTML5's "reset insertion mode appropriately"
  83985. https://bugs.webkit.org/show_bug.cgi?id=41628
  83986. This has some minimal testing. One from my previous
  83987. </table> patch, and a few from the main suite.
  83988. Mostly resetInsertionModeAppropriately isn't used yet
  83989. but we're about to add a bunch of states which do use it
  83990. and our test coverage will expand further as we do.
  83991. * html/HTMLTreeBuilder.cpp:
  83992. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  83993. (WebCore::HTMLTreeBuilder::setInsertionModeAndEnd):
  83994. (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
  83995. * html/HTMLTreeBuilder.h:
  83996. 2010-07-04 Eric Seidel <eric@webkit.org>
  83997. Reviewed by Adam Barth.
  83998. Add </table> support for "in table" insertion mode
  83999. https://bugs.webkit.org/show_bug.cgi?id=41591
  84000. resetInsertionModeAppropriately isn't implemented yet, however
  84001. I've added a test for the usage I added.
  84002. * html/HTMLTreeBuilder.cpp:
  84003. (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
  84004. (WebCore::HTMLTreeBuilder::processEndTag):
  84005. * html/HTMLTreeBuilder.h:
  84006. 2010-07-05 Joseph Pecoraro <joepeck@webkit.org>
  84007. Unreviewed build fix for r62503.
  84008. Chromium missing method. Filed bug 41632 to track.
  84009. * loader/appcache/ApplicationCacheHost.h:
  84010. (WebCore::ApplicationCacheHost::applicationCache):
  84011. 2010-07-05 Joseph Pecoraro <joepeck@webkit.org>
  84012. Unreviewed build fix for r62503.
  84013. Missed GTK's build file.
  84014. * GNUmakefile.am:
  84015. 2010-07-05 Joseph Pecoraro <joepeck@webkit.org>
  84016. Unreviewed build fix for r62503.
  84017. Pass a blank ResourceResponse instead of passing 0.
  84018. * loader/appcache/ApplicationCacheGroup.cpp:
  84019. (WebCore::ApplicationCacheGroup::createResourceHandle):
  84020. 2010-07-05 Joseph Pecoraro <joepeck@webkit.org>
  84021. Unreviewed build fix for r62503.
  84022. Forward declare ApplicationCache for Chromium.
  84023. * loader/appcache/ApplicationCacheHost.h:
  84024. 2010-07-05 Joseph Pecoraro <joepeck@webkit.org>
  84025. Reviewed by Pavel Feldman.
  84026. WebInspector: HTML5 Offline Web Applications Support (ApplicationCache)
  84027. https://bugs.webkit.org/show_bug.cgi?id=24529
  84028. Parts of this patch were written by Kavita Kanetkar <kkanetkar@chromium.org>.
  84029. Part 2: Pulling ApplicationCache Resources to Display in the Inspector.
  84030. The InspectorApplicationCacheAgent gathers the information it
  84031. needs and forwards it on to the inspector.
  84032. * inspector/InspectorApplicationCacheAgent.cpp:
  84033. (WebCore::InspectorApplicationCacheAgent::fillResourceList): get information about the resources.
  84034. (WebCore::InspectorApplicationCacheAgent::getApplicationCaches): gathers all the information from the ApplicationCacheHost.
  84035. (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCache):
  84036. (WebCore::InspectorApplicationCacheAgent::buildArrayForApplicationCacheResources):
  84037. (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCacheResource):
  84038. * inspector/InspectorApplicationCacheAgent.h: defines structures to hold information about caches and resources.
  84039. (WebCore::InspectorApplicationCacheAgent::ApplicationCacheInfo::ApplicationCacheInfo):
  84040. (WebCore::InspectorApplicationCacheAgent::ResourceInfo::ResourceInfo):
  84041. (WebCore::InspectorApplicationCacheAgent::~InspectorApplicationCacheAgent):
  84042. * loader/appcache/ApplicationCacheHost.h:
  84043. (WebCore::ApplicationCacheHost::applicationCacheForInspector): new convention, public cache accessor for the inspector.
  84044. (WebCore::ApplicationCacheHost::documentLoader): added const.
  84045. The User Interface uses a DataGrid, like Cookies.
  84046. * inspector/front-end/ApplicationCacheItemsView.js:
  84047. (WebInspector.ApplicationCacheItemsView.prototype._update):
  84048. (WebInspector.ApplicationCacheItemsView.prototype._updateCallback):
  84049. (WebInspector.ApplicationCacheItemsView.prototype._createDataGrid):
  84050. (WebInspector.ApplicationCacheItemsView.prototype._populateDataGrid.numberCompare):
  84051. (WebInspector.ApplicationCacheItemsView.prototype._populateDataGrid.localeCompare):
  84052. (WebInspector.ApplicationCacheItemsView.prototype._populateDataGrid):
  84053. The usual frontend pull workflow, except this goes through
  84054. InspectorApplicationCacheAgent instead of InspectorController.
  84055. * inspector/InspectorBackend.cpp:
  84056. (WebCore::InspectorBackend::getApplicationCaches):
  84057. (WebCore::InspectorBackend::inspectorApplicationCacheAgent):
  84058. * inspector/InspectorBackend.h:
  84059. * inspector/InspectorBackend.idl:
  84060. * inspector/InspectorFrontend.cpp:
  84061. (WebCore::InspectorFrontend::didGetApplicationCaches):
  84062. * inspector/InspectorFrontend.h:
  84063. * inspector/front-end/DOMAgent.js:
  84064. (WebInspector.DOMNode.prototype.hasChildNodes): style fix.
  84065. (WebInspector.DOMAgent.prototype.nodeForId): style fix.
  84066. (WebInspector.ApplicationCache.getApplicationCachesAsync): pull.
  84067. (WebInspector.Cookies.getCookiesAsync):
  84068. * inspector/front-end/StoragePanel.js:
  84069. (WebInspector.StoragePanel.prototype.updateManifest):
  84070. (WebInspector.ApplicationCacheSidebarTreeElement.prototype.onselect):
  84071. * inspector/front-end/inspector.js:
  84072. (WebInspector.updateResource):
  84073. (WebInspector._addAppCacheDomain):
  84074. (WebInspector.reset):
  84075. Miscellaneous. Localized Strings and fixes.
  84076. * English.lproj/localizedStrings.js: "Type", "%s (%s)"
  84077. * inspector/InspectorController.cpp:
  84078. (WebCore::InspectorController::deleteCookie):
  84079. * inspector/InspectorController.h:
  84080. 2010-07-04 Joseph Pecoraro <joepeck@webkit.org>
  84081. Reviewed by Pavel Feldman.
  84082. WebInspector: HTML5 Offline Web Applications Support (ApplicationCache)
  84083. https://bugs.webkit.org/show_bug.cgi?id=24529
  84084. Part 1: Backend -> Frontend Messages. ApplicationCache Status and Connectivity Status.
  84085. This patch adds an InspectorApplicationCacheAgent to monitor application
  84086. cache changes, starts a UI in the Storage panel, handles the boilerplate
  84087. of adding new files.
  84088. Added an agent to encapsulate and handle the application cache logic.
  84089. This is similar to the timeline agent.
  84090. * inspector/InspectorApplicationCacheAgent.cpp: Added.
  84091. (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent):
  84092. (WebCore::InspectorApplicationCacheAgent::~InspectorApplicationCacheAgent):
  84093. (WebCore::InspectorApplicationCacheAgent::didReceiveManifestResponse):
  84094. (WebCore::InspectorApplicationCacheAgent::updateApplicationCacheStatus):
  84095. (WebCore::InspectorApplicationCacheAgent::updateNetworkState):
  84096. * inspector/InspectorApplicationCacheAgent.h: Added.
  84097. InspectorController owns an InspectorApplicationCacheAgent. This
  84098. handles its lifetime management.
  84099. * inspector/InspectorController.cpp:
  84100. (WebCore::InspectorController::~InspectorController):
  84101. (WebCore::InspectorController::connectFrontend): create the agent with a frontend.
  84102. (WebCore::InspectorController::disconnectFrontend): remove the agent when closing.
  84103. (WebCore::InspectorController::releaseFrontendLifetimeAgents):
  84104. * inspector/InspectorController.h:
  84105. User Interface for ApplicationCache in the StoragePanel. This follows
  84106. very closely to Cookies, it will have a sortable table of items. The
  84107. status bar contains connectivity and application cache status
  84108. indicators which update when backend messages are received. There
  84109. are some stubs which the next part will implement.
  84110. * inspector/front-end/ApplicationCacheItemsView.js: Added.
  84111. (WebInspector.ApplicationCacheItemsView):
  84112. (WebInspector.ApplicationCacheItemsView.prototype.get statusBarItems): refresh, delete, connectivity, application cache status.
  84113. (WebInspector.ApplicationCacheItemsView.prototype.show):
  84114. (WebInspector.ApplicationCacheItemsView.prototype.hide):
  84115. (WebInspector.ApplicationCacheItemsView.prototype.updateStatus): this is the application cache status indicator.
  84116. (WebInspector.ApplicationCacheItemsView.prototype.updateNetworkState): this is the online/offline connectivity indicator.
  84117. (WebInspector.ApplicationCacheItemsView.prototype._update):
  84118. (WebInspector.ApplicationCacheItemsView.prototype._updateCallback):
  84119. (WebInspector.ApplicationCacheItemsView.prototype._createDataGrid):
  84120. (WebInspector.ApplicationCacheItemsView.prototype._populateDataGrid):
  84121. (WebInspector.ApplicationCacheItemsView.prototype.resize):
  84122. (WebInspector.ApplicationCacheItemsView.prototype._deleteButtonClicked):
  84123. (WebInspector.ApplicationCacheItemsView.prototype._deleteCallback):
  84124. (WebInspector.ApplicationCacheItemsView.prototype._refreshButtonClicked):
  84125. The usual dispatch flow from the backend, to the frontend, to the
  84126. panel, and then to the visible view. Some slight refactoring to
  84127. eliminate duplicated code.
  84128. * inspector/InspectorFrontend.cpp:
  84129. (WebCore::InspectorFrontend::updateDOMStorage):
  84130. (WebCore::InspectorFrontend::didGetApplicationCaches):
  84131. (WebCore::InspectorFrontend::updateApplicationCacheStatus):
  84132. * inspector/InspectorFrontend.h:
  84133. * inspector/front-end/StoragePanel.js:
  84134. (WebInspector.StoragePanel):
  84135. (WebInspector.StoragePanel.prototype.reset):
  84136. (WebInspector.StoragePanel.prototype.addApplicationCache):
  84137. (WebInspector.StoragePanel.prototype.showDatabase):
  84138. (WebInspector.StoragePanel.prototype.showDOMStorage):
  84139. (WebInspector.StoragePanel.prototype.showCookies):
  84140. (WebInspector.StoragePanel.prototype.showApplicationCache):
  84141. (WebInspector.StoragePanel.prototype._genericViewSetup):
  84142. (WebInspector.StoragePanel.prototype.updateApplicationCacheStatus):
  84143. (WebInspector.StoragePanel.prototype.updateNetworkState):
  84144. (WebInspector.CookieSidebarTreeElement.prototype.set subtitle):
  84145. (WebInspector.ApplicationCacheSidebarTreeElement):
  84146. (WebInspector.ApplicationCacheSidebarTreeElement.prototype.onselect):
  84147. (WebInspector.ApplicationCacheSidebarTreeElement.prototype.get mainTitle):
  84148. (WebInspector.ApplicationCacheSidebarTreeElement.prototype.set mainTitle):
  84149. (WebInspector.ApplicationCacheSidebarTreeElement.prototype.get subtitle):
  84150. (WebInspector.ApplicationCacheSidebarTreeElement.prototype.set subtitle):
  84151. * inspector/front-end/inspector.js:
  84152. (WebInspector.dispatch.delayDispatch):
  84153. (WebInspector.dispatch):
  84154. (WebInspector._addAppCacheDomain):
  84155. (WebInspector.addDOMStorage):
  84156. (WebInspector.updateDOMStorage):
  84157. Notify the InspectorApplicationCacheAgent on application cache changes
  84158. or specifics. Notify the InspectorController on generic resource events.
  84159. That is because ApplicationCacheController is a ResourceClient and needs
  84160. to trigger the resource events normally handled by ResourceLoader.
  84161. * loader/appcache/ApplicationCacheGroup.cpp:
  84162. (WebCore::inspectorUpdateApplicationCacheStatus): helper method to prevent duplicated code.
  84163. (WebCore::ApplicationCacheGroup::setNewestCache): status change.
  84164. (WebCore::ApplicationCacheGroup::makeObsolete): status change.
  84165. (WebCore::ApplicationCacheGroup::update): status change.
  84166. (WebCore::ApplicationCacheGroup::createResourceHandle): resource event.
  84167. (WebCore::ApplicationCacheGroup::willSendRequest): resource event.
  84168. (WebCore::ApplicationCacheGroup::didReceiveResponse): resource event.
  84169. (WebCore::ApplicationCacheGroup::didReceiveData): resource event.
  84170. (WebCore::ApplicationCacheGroup::didFinishLoading): resource event.
  84171. (WebCore::ApplicationCacheGroup::didFail): resource event.
  84172. (WebCore::ApplicationCacheGroup::didFinishLoadingManifest): resource event.
  84173. (WebCore::ApplicationCacheGroup::manifestNotFound): status change.
  84174. (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete): status change.
  84175. (WebCore::ApplicationCacheGroup::setUpdateStatus): single access point for status changes.
  84176. * loader/appcache/ApplicationCacheGroup.h:
  84177. * page/Page.cpp:
  84178. (WebCore::networkStateChanged): connectivity status change.
  84179. Final inspector details to add the new file, style new elements,
  84180. images, and localized strings.
  84181. * inspector/front-end/inspector.css:
  84182. (.application-cache-sidebar-tree-item .icon):
  84183. (.timeline-records-counter, .storage-application-cache-status, .storage-application-cache-connectivity):
  84184. (.storage-application-cache-status-icon, .storage-application-cache-connectivity-icon):
  84185. (.status-bar-divider):
  84186. (.storage-application-cache-status, .storage-application-cache-connectivity):
  84187. * inspector/front-end/inspector.html:
  84188. * inspector/front-end/Images/applicationCache.png: Added.
  84189. * English.lproj/localizedStrings.js: "APPLICATION CACHE", "No Application Cache information available.", "Online", "Offline"
  84190. Updated build files.
  84191. * CMakeLists.txt:
  84192. * WebCore.gypi:
  84193. * WebCore.pro:
  84194. * WebCore.vcproj/WebCore.vcproj:
  84195. * WebCore.xcodeproj/project.pbxproj:
  84196. * inspector/front-end/WebKit.qrc:
  84197. 2010-07-05 Eric Seidel <eric@webkit.org>
  84198. Reviewed by Adam Barth.
  84199. Add basic <col> support to the treebuilder
  84200. https://bugs.webkit.org/show_bug.cgi?id=41590
  84201. * html/HTMLTreeBuilder.cpp:
  84202. (WebCore::HTMLTreeBuilder::processStartTag):
  84203. 2010-07-05 Eric Seidel <eric@webkit.org>
  84204. Reviewed by Adam Barth.
  84205. Add basic "in row" mode to support <td> and <th> insertion
  84206. https://bugs.webkit.org/show_bug.cgi?id=41588
  84207. Also fixed <td> or <th> as a direct child of <table>.
  84208. Most of this was covered by html5lib/runner.html tests,
  84209. but I had to add a new tables01.dat to cover the <th> cases.
  84210. * html/HTMLElementStack.cpp:
  84211. (WebCore::HTMLNames::isTableRowScopeMarker):
  84212. (WebCore::HTMLElementStack::popUntilTableRowScopeMarker):
  84213. * html/HTMLElementStack.h:
  84214. * html/HTMLTreeBuilder.cpp:
  84215. (WebCore::HTMLTreeBuilder::processStartTag):
  84216. 2010-07-05 Eric Seidel <eric@webkit.org>
  84217. Reviewed by Adam Barth.
  84218. Finish implementing "any other end tag" for "in body" mode
  84219. https://bugs.webkit.org/show_bug.cgi?id=41582
  84220. I believe I found a "bug" in the HTML5 spec when writing this:
  84221. http://www.w3.org/Bugs/Public/show_bug.cgi?id=10080
  84222. * html/HTMLTreeBuilder.cpp:
  84223. (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
  84224. (WebCore::HTMLTreeBuilder::processEndTag):
  84225. * html/HTMLTreeBuilder.h:
  84226. 2010-07-05 Martin Robinson <mrobinson@igalia.com>
  84227. Unreviewed.
  84228. Add a missing slash to the list of generated sources. This
  84229. was missing from a previous build fix.
  84230. * GNUmakefile.am:
  84231. 2010-07-05 Pavel Feldman <pfeldman@chromium.org>
  84232. Reviewed by Joseph Pecoraro.
  84233. Web Inspector: preserve scroll positions in source frame when switching between panes.
  84234. https://bugs.webkit.org/show_bug.cgi?id=41620
  84235. * inspector/front-end/ScriptsPanel.js:
  84236. (WebInspector.ScriptsPanel.prototype.hide):
  84237. * inspector/front-end/SourceFrame.js:
  84238. (WebInspector.SourceFrame.prototype.set visible):
  84239. * inspector/front-end/SourceView.js:
  84240. (WebInspector.SourceView.prototype.hide):
  84241. 2010-07-05 Rob Buis <rwlbuis@gmail.com>
  84242. Reviewed by Dirk Schulze.
  84243. IE SVG test fails
  84244. https://bugs.webkit.org/show_bug.cgi?id=41619
  84245. Make SVGSVGElement.createSVGTransform create a SVGTransform with the
  84246. right type, thereby fixing the IE test.
  84247. Test: svg/custom/svg-createsvgtransform-type.html
  84248. * svg/SVGSVGElement.cpp:
  84249. (WebCore::SVGSVGElement::createSVGTransform):
  84250. 2010-07-05 Pavel Feldman <pfeldman@chromium.org>
  84251. Reviewed by Yury Semikhatsky.
  84252. Web Inspector: computed style pane is not updated when styles pane is collapsed.
  84253. https://bugs.webkit.org/show_bug.cgi?id=41615
  84254. * inspector/front-end/ElementsPanel.js:
  84255. (WebInspector.ElementsPanel.prototype.updateStyles):
  84256. 2010-07-05 Nikolas Zimmermann <nzimmermann@rim.com>
  84257. Reviewed by Dirk Schulze.
  84258. Logic to track whether elements are using relative lengths is incomplete
  84259. https://bugs.webkit.org/show_bug.cgi?id=41566
  84260. Add logic to all SVG elements which create renderes to expose a method
  84261. "bool selfHasRelativeLengths()", that returns whether the element uses relative
  84262. lengths (eg. <rect x="50%"...). This will be used soon to avoid relayouts of
  84263. container children, when the bounds have not changed.
  84264. A new method SVGStyledElement::updateRelativeLengthsInformation() is added,
  84265. which is called from the various svgAttributeChanged() methods and insertedIntoDocument/removedFromDocument.
  84266. It will be implemented in a follow-up patch. This patch does not affect any test behaviour related
  84267. to relayouting. As SVGFilterElement finally got a proper svgAttributeChanged() method, it now
  84268. properly invalidates clients on attribute changes - covered by a new test.
  84269. Tests: svg/custom/relative-sized-inner-svg.xhtml
  84270. svg/custom/relative-sized-use-without-attributes-on-symbol.xhtml
  84271. svg/filters/filter-width-update.svg
  84272. * rendering/RenderPath.cpp:
  84273. (WebCore::RenderPath::layout): Rename hasRelativeValues to hasRelativeLengths.
  84274. * rendering/RenderSVGRoot.cpp:
  84275. (WebCore::RenderSVGRoot::layout): Ditto.
  84276. (WebCore::RenderSVGRoot::calcViewport): Ditto.
  84277. * rendering/RenderSVGViewportContainer.cpp:
  84278. (WebCore::RenderSVGViewportContainer::calcViewport): Ditto
  84279. * rendering/SVGRenderSupport.cpp:
  84280. (WebCore::SVGRenderSupport::layoutChildren): Ditto.
  84281. * svg/SVGCircleElement.cpp:
  84282. (WebCore::SVGCircleElement::svgAttributeChanged): Call updateRelativeLengthsInformation() if any attribute which may contain relative lengths changes.
  84283. (WebCore::SVGCircleElement::selfHasRelativeLengths): Ditto. Same for all other SVG*Elements below.
  84284. * svg/SVGCircleElement.h:
  84285. * svg/SVGEllipseElement.cpp:
  84286. (WebCore::SVGEllipseElement::svgAttributeChanged):
  84287. (WebCore::SVGEllipseElement::selfHasRelativeLengths):
  84288. * svg/SVGEllipseElement.h:
  84289. * svg/SVGFilterElement.cpp:
  84290. (WebCore::SVGFilterElement::svgAttributeChanged):
  84291. (WebCore::SVGFilterElement::selfHasRelativeLengths):
  84292. * svg/SVGFilterElement.h:
  84293. * svg/SVGForeignObjectElement.cpp:
  84294. (WebCore::SVGForeignObjectElement::svgAttributeChanged):
  84295. (WebCore::SVGForeignObjectElement::selfHasRelativeLengths):
  84296. * svg/SVGForeignObjectElement.h:
  84297. * svg/SVGImageElement.cpp:
  84298. (WebCore::SVGImageElement::svgAttributeChanged):
  84299. (WebCore::SVGImageElement::selfHasRelativeLengths):
  84300. * svg/SVGImageElement.h:
  84301. * svg/SVGLineElement.cpp:
  84302. (WebCore::SVGLineElement::svgAttributeChanged):
  84303. (WebCore::SVGLineElement::selfHasRelativeLengths):
  84304. * svg/SVGLineElement.h:
  84305. * svg/SVGLinearGradientElement.cpp:
  84306. (WebCore::SVGLinearGradientElement::svgAttributeChanged):
  84307. (WebCore::SVGLinearGradientElement::selfHasRelativeLengths):
  84308. * svg/SVGLinearGradientElement.h:
  84309. * svg/SVGMarkerElement.cpp:
  84310. (WebCore::SVGMarkerElement::svgAttributeChanged):
  84311. (WebCore::SVGMarkerElement::selfHasRelativeLengths):
  84312. * svg/SVGMarkerElement.h:
  84313. * svg/SVGMaskElement.cpp:
  84314. (WebCore::SVGMaskElement::svgAttributeChanged):
  84315. (WebCore::SVGMaskElement::selfHasRelativeLengths):
  84316. * svg/SVGMaskElement.h:
  84317. * svg/SVGPatternElement.cpp:
  84318. (WebCore::SVGPatternElement::svgAttributeChanged):
  84319. (WebCore::SVGPatternElement::selfHasRelativeLengths):
  84320. * svg/SVGPatternElement.h:
  84321. * svg/SVGRadialGradientElement.cpp:
  84322. (WebCore::SVGRadialGradientElement::svgAttributeChanged):
  84323. (WebCore::SVGRadialGradientElement::selfHasRelativeLengths):
  84324. * svg/SVGRadialGradientElement.h:
  84325. * svg/SVGRectElement.cpp:
  84326. (WebCore::SVGRectElement::svgAttributeChanged):
  84327. (WebCore::SVGRectElement::selfHasRelativeLengths):
  84328. * svg/SVGRectElement.h:
  84329. * svg/SVGSVGElement.cpp:
  84330. (WebCore::SVGSVGElement::svgAttributeChanged):
  84331. (WebCore::SVGSVGElement::selfHasRelativeLengths):
  84332. * svg/SVGSVGElement.h:
  84333. * svg/SVGStyledElement.cpp:
  84334. (WebCore::SVGStyledElement::insertedIntoDocument): Call updateRelativeLengthsInformation().
  84335. (WebCore::SVGStyledElement::removedFromDocument): Ditto.
  84336. (WebCore::SVGStyledElement::updateRelativeLengthsInformation): Not implemented so far. Will land in a follow-up patch, together with the render tree changes.
  84337. * svg/SVGStyledElement.h:
  84338. (WebCore::SVGStyledElement::hasRelativeLengths): Devirtualized. For now, just call selfHasRelativeLengths() - this will change in a follow-up patch.
  84339. (WebCore::SVGStyledElement::updateRelativeLengthsInformation):
  84340. (WebCore::SVGStyledElement::selfHasRelativeLengths): Renamed from hasRelativeValues().
  84341. * svg/SVGSymbolElement.cpp:
  84342. (WebCore::SVGSymbolElement::svgAttributeChanged):
  84343. (WebCore::SVGSymbolElement::selfHasRelativeLengths):
  84344. * svg/SVGSymbolElement.h:
  84345. * svg/SVGTextContentElement.cpp:
  84346. (WebCore::SVGTextContentElement::selfHasRelativeLengths):
  84347. * svg/SVGTextContentElement.h:
  84348. * svg/SVGTextPathElement.cpp:
  84349. (WebCore::SVGTextPathElement::svgAttributeChanged):
  84350. (WebCore::SVGTextPathElement::insertedIntoDocument): Call right base class' method. Skipped one in the hierachy before.
  84351. (WebCore::SVGTextPathElement::selfHasRelativeLengths):
  84352. * svg/SVGTextPathElement.h:
  84353. * svg/SVGTextPositioningElement.cpp:
  84354. (WebCore::SVGTextPositioningElement::svgAttributeChanged):
  84355. (WebCore::listContainsRelativeValue): New helper funtion that checks wheter a SVGLengthList contains relative lengths.
  84356. (WebCore::SVGTextPositioningElement::selfHasRelativeLengths):
  84357. * svg/SVGTextPositioningElement.h:
  84358. * svg/SVGUseElement.cpp:
  84359. (WebCore::SVGUseElement::insertedIntoDocument): Call right base class' method. Skipped on in the hierachy before.
  84360. (WebCore::SVGUseElement::removedFromDocument): Ditto.
  84361. (WebCore::SVGUseElement::svgAttributeChanged):
  84362. (WebCore::SVGUseElement::buildShadowAndInstanceTree): Call updateRelativeLengthsInformation() after building the shadow tree.
  84363. (WebCore::SVGUseElement::selfHasRelativeLengths): Same as all other methods, except that it includes the shadow tree root element.
  84364. * svg/SVGUseElement.h:
  84365. 2010-07-05 Pavel Feldman <pfeldman@chromium.org>
  84366. Reviewed by Yury Semikhatsky.
  84367. Web Inspector: Problem with copying a code from Scripts panel.
  84368. https://bugs.webkit.org/show_bug.cgi?id=40432
  84369. * inspector/front-end/TextViewer.js:
  84370. (WebInspector.TextViewer.prototype._getSelection):
  84371. (WebInspector.TextViewer.prototype._selectionToPosition):
  84372. 2010-07-05 Nikolas Zimmermann <nzimmermann@rim.com>
  84373. Reviewed by Dirk Schulze / Darin Adler.
  84374. Node.cloneNode does not work on SVG nodes
  84375. https://bugs.webkit.org/show_bug.cgi?id=41421
  84376. Be sure to synchronize animated SVG properties before checking whether NamedNodeMap exists.
  84377. When creating a SVG element from JS, and setting all attributes via SVG DOM, and not using setAttribute
  84378. the NamedNodeMap does not exist. When cloning such an element, be sure to synchronize SVG <-> XML DOM
  84379. attributes before attempting to clone, otherwhise the SVG animated properties are lost while cloning.
  84380. Test: svg/custom/clone-element-with-animated-svg-properties.html
  84381. * dom/Element.cpp:
  84382. (WebCore::Element::cloneElementWithoutChildren):
  84383. 2010-07-05 Antti Koivisto <koivisto@iki.fi>
  84384. Revert unplanned project file change.
  84385. * WebCore.pri:
  84386. * WebCore.pro:
  84387. 2010-07-05 Nikolas Zimmermann <nzimmermann@rim.com>
  84388. Reviewed by Darin Adler.
  84389. Memory corruption with SVG <use> element
  84390. https://bugs.webkit.org/show_bug.cgi?id=40994
  84391. Fix race condition in svgAttributeChanged. Never call svgAttributeChanged() from attributeChanged()
  84392. when we're synchronizing SVG attributes. It leads to either unnecessary extra work being done or
  84393. crashes. Especially together with <polyline>/<polygon> which always synchronize the SVGAnimatedPoints
  84394. datastructure with the points attribute, no matter if there are changes are not. This should be
  84395. furhter optimized, but this fix is sane and fixes the root of the evil races.
  84396. Test: svg/custom/use-property-synchronization-crash.svg
  84397. * svg/SVGElement.cpp:
  84398. (WebCore::SVGElement::attributeChanged):
  84399. 2010-07-05 Yury Semikhatsky <yurys@chromium.org>
  84400. Reviewed by Pavel Feldman.
  84401. [v8] Web Inspector: remove v8-specific code dealing with getOwnPropertyNames from InjectedScript.js
  84402. https://bugs.webkit.org/show_bug.cgi?id=41595
  84403. * inspector/front-end/InjectedScript.js:
  84404. (injectedScriptConstructor):
  84405. 2010-07-04 Rob Buis <rwlbuis@gmail.com>
  84406. Reviewed by Dirk Schulze.
  84407. SVG polygons should draw polygons up to the first parsing error
  84408. https://bugs.webkit.org/show_bug.cgi?id=41140
  84409. Render polygons up until the first parsing error.
  84410. Test: svg/custom/poly-parsing-error.html
  84411. * svg/SVGPolyElement.cpp:
  84412. (WebCore::SVGPolyElement::parseMappedAttribute):
  84413. 2010-07-04 Alice Liu <alice.liu@apple.com>
  84414. Reviewed by Dan Bernstein.
  84415. Crash reading past end of block in UniscribeController::shapeAndPlaceItem
  84416. https://bugs.webkit.org/show_bug.cgi?id=41554
  84417. Test: platform/win/fast/text/uniscribe-item-boundary-crash.html
  84418. * platform/graphics/win/UniscribeController.cpp:
  84419. (WebCore::UniscribeController::shapeAndPlaceItem):
  84420. Don't look one past the end of str. Instead look to the next item, if applicable.
  84421. 2010-07-04 Eric Seidel <eric@webkit.org>
  84422. Reviewed by Adam Barth.
  84423. Add basic "in table body" mode to support <tr> insertion
  84424. https://bugs.webkit.org/show_bug.cgi?id=41587
  84425. This also adds a (currently untestable?)
  84426. popUntilTableBodyScopeMarker code path.
  84427. Any tags which would be between a tbody a <tr> would end up
  84428. foster parented outside the <table>. I think the spec was
  84429. just being over-cautious with popUntilTableBodyScopeMarker.
  84430. * html/HTMLElementStack.cpp:
  84431. (WebCore::HTMLNames::isTableScopeMarker):
  84432. (WebCore::HTMLNames::isTableBodyScopeMarker):
  84433. (WebCore::HTMLElementStack::popUntilTableBodyScopeMarker):
  84434. * html/HTMLElementStack.h:
  84435. * html/HTMLTreeBuilder.cpp:
  84436. (WebCore::HTMLTreeBuilder::processStartTag):
  84437. (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
  84438. 2010-07-04 Anders Carlsson <andersca@apple.com>
  84439. Fix Windows build.
  84440. * WebCore.vcproj/WebCore.vcproj:
  84441. 2010-07-04 Eric Seidel <eric@webkit.org>
  84442. Reviewed by Adam Barth.
  84443. HTMLTreeBuilder needs an adoption agency
  84444. https://bugs.webkit.org/show_bug.cgi?id=41453
  84445. Fix Qt Minimal build. SVGNames.h should always
  84446. be generated, even when SVG is off, however that's
  84447. not how things currently work.
  84448. * html/HTMLTreeBuilder.cpp:
  84449. 2010-07-04 Eric Seidel <eric@webkit.org>
  84450. Reviewed by Adam Barth.
  84451. Add a very basic InTable insertion mode
  84452. https://bugs.webkit.org/show_bug.cgi?id=41581
  84453. There is still a bunch of low-hanging fruit left for this
  84454. mode, but even this most-basic support lets us pass 6 more tests. :)
  84455. It's a progression, ship it! :)
  84456. * html/HTMLElementStack.cpp:
  84457. (WebCore::HTMLNames::isScopeMarker):
  84458. (WebCore::HTMLNames::isListItemScopeMarker):
  84459. (WebCore::HTMLNames::isTableScopeMarker):
  84460. (WebCore::HTMLElementStack::popUntilTableScopeMarker):
  84461. * html/HTMLElementStack.h:
  84462. * html/HTMLFormattingElementList.cpp:
  84463. (WebCore::HTMLFormattingElementList::appendMarker):
  84464. * html/HTMLFormattingElementList.h:
  84465. * html/HTMLTreeBuilder.cpp:
  84466. (WebCore::HTMLTreeBuilder::processStartTag):
  84467. * html/HTMLTreeBuilder.h:
  84468. 2010-07-01 Eric Seidel <eric@webkit.org>
  84469. Reviewed by Adam Barth.
  84470. HTMLTreeBuilder needs an adoption agency
  84471. https://bugs.webkit.org/show_bug.cgi?id=41453
  84472. This changes some test results, but only makes the simplest
  84473. adoption agency cases pass. I think the code is likely
  84474. very close, but further iteration to make this change larger
  84475. seems counter-productive. I recommend we check in this
  84476. progression and work from here.
  84477. * dom/ContainerNode.cpp:
  84478. (WebCore::ContainerNode::addChildCommon):
  84479. - Make sure callers don't assume this will reparent.
  84480. (WebCore::ContainerNode::parserAddChild):
  84481. - Update comment to document lack of reparenting behavior.
  84482. * html/HTMLElementStack.cpp:
  84483. (WebCore::HTMLElementStack::ElementRecord::ElementRecord):
  84484. (WebCore::HTMLElementStack::ElementRecord::~ElementRecord):
  84485. (WebCore::HTMLElementStack::ElementRecord::replaceElement):
  84486. (WebCore::HTMLElementStack::ElementRecord::isAbove):
  84487. - Added for debugging.
  84488. (WebCore::HTMLElementStack::pushHTMLHtmlElement):
  84489. (WebCore::HTMLElementStack::insertAbove):
  84490. - Needed for the adoption agency.
  84491. (WebCore::HTMLElementStack::topRecord):
  84492. (WebCore::HTMLElementStack::bottom):
  84493. (WebCore::HTMLElementStack::removeHTMLHeadElement):
  84494. (WebCore::HTMLElementStack::remove):
  84495. (WebCore::HTMLElementStack::find):
  84496. (WebCore::HTMLElementStack::topmost):
  84497. (WebCore::HTMLElementStack::contains):
  84498. (WebCore::HTMLElementStack::htmlElement):
  84499. (WebCore::HTMLElementStack::headElement):
  84500. (WebCore::HTMLElementStack::bodyElement):
  84501. (WebCore::HTMLElementStack::pushCommon):
  84502. (WebCore::HTMLElementStack::removeNonTopCommon):
  84503. - Fix the name to match top/bottom.
  84504. * html/HTMLElementStack.h:
  84505. (WebCore::HTMLElementStack::ElementRecord::element):
  84506. (WebCore::HTMLElementStack::ElementRecord::next):
  84507. (WebCore::HTMLElementStack::ElementRecord::releaseNext):
  84508. (WebCore::HTMLElementStack::ElementRecord::setNext):
  84509. * html/HTMLFormattingElementList.cpp:
  84510. (WebCore::HTMLFormattingElementList::closestElementInScopeWithName):
  84511. (WebCore::HTMLFormattingElementList::contains):
  84512. (WebCore::HTMLFormattingElementList::find):
  84513. (WebCore::HTMLFormattingElementList::remove):
  84514. * html/HTMLFormattingElementList.h:
  84515. (WebCore::HTMLFormattingElementList::isEmpty):
  84516. (WebCore::HTMLFormattingElementList::size):
  84517. * html/HTMLTreeBuilder.cpp:
  84518. (WebCore::HTMLTreeBuilder::processStartTag):
  84519. (WebCore::HTMLTreeBuilder::furthestBlockForFormattingElement):
  84520. - Part of the Adoption Agency algorithm.
  84521. (WebCore::HTMLTreeBuilder::findFosterParentFor):
  84522. - Used to move mis-nested content out of tables.
  84523. This doesn't seem to work quite right yet.
  84524. (WebCore::HTMLTreeBuilder::reparentChildren):
  84525. (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
  84526. - The ridiculously long/complicated adoption agency algorithm from HTML5.
  84527. (WebCore::HTMLTreeBuilder::processEndTag):
  84528. * html/HTMLTreeBuilder.h:
  84529. 2010-07-04 Justin Schuh <jschuh@chromium.org>
  84530. Reviewed by Darin Adler.
  84531. Remove custom src bindings for HTMLFrameElement and HTMLIFrameElement
  84532. https://bugs.webkit.org/show_bug.cgi?id=41578
  84533. Remove bindings obsoleted by: http://trac.webkit.org/changeset/59866
  84534. No new tests because behavior is not changed.
  84535. * Android.jscbindings.mk:
  84536. * Android.v8bindings.mk:
  84537. * CMakeLists.txt:
  84538. * GNUmakefile.am:
  84539. * WebCore.gypi:
  84540. * WebCore.pro:
  84541. * WebCore.vcproj/WebCore.vcproj:
  84542. * WebCore.xcodeproj/project.pbxproj:
  84543. * bindings/js/JSBindingsAllInOne.cpp:
  84544. * bindings/js/JSHTMLFrameElementCustom.cpp:
  84545. * bindings/js/JSHTMLIFrameElementCustom.cpp: Removed.
  84546. * bindings/v8/custom/V8HTMLFrameElementCustom.cpp:
  84547. * bindings/v8/custom/V8HTMLIFrameElementCustom.cpp: Removed.
  84548. * html/HTMLFrameElement.idl:
  84549. * html/HTMLIFrameElement.idl:
  84550. 2010-07-03 Adam Barth <abarth@webkit.org>
  84551. Reviewed by Maciej Stachowiak.
  84552. Implement AfterAfterFramesetMode
  84553. https://bugs.webkit.org/show_bug.cgi?id=41561
  84554. This mode is almost unobservable. The main way to observe it seems to
  84555. be seeing where comment nodes get attached to the DOM.
  84556. * html/HTMLTreeBuilder.cpp:
  84557. (WebCore::HTMLTreeBuilder::processStartTag):
  84558. (WebCore::HTMLTreeBuilder::processEndTag):
  84559. (WebCore::HTMLTreeBuilder::processComment):
  84560. (WebCore::HTMLTreeBuilder::processCharacter):
  84561. (WebCore::HTMLTreeBuilder::processEndOfFile):
  84562. 2010-07-03 Zhenyao Mo <zmo@google.com>
  84563. Reviewed by Dimitri Glazkov.
  84564. WebGLRenderingContext::vertexAttrib* leads to possible out-of-range vector member visit
  84565. https://bugs.webkit.org/show_bug.cgi?id=41572
  84566. * html/canvas/WebGLRenderingContext.cpp: Fix the out-of-range vector member visit, also refactor the code.
  84567. (WebCore::WebGLRenderingContext::vertexAttrib1f):
  84568. (WebCore::WebGLRenderingContext::vertexAttrib1fv):
  84569. (WebCore::WebGLRenderingContext::vertexAttrib2f):
  84570. (WebCore::WebGLRenderingContext::vertexAttrib2fv):
  84571. (WebCore::WebGLRenderingContext::vertexAttrib3f):
  84572. (WebCore::WebGLRenderingContext::vertexAttrib3fv):
  84573. (WebCore::WebGLRenderingContext::vertexAttrib4f):
  84574. (WebCore::WebGLRenderingContext::vertexAttrib4fv):
  84575. (WebCore::WebGLRenderingContext::vertexAttribfImpl):
  84576. (WebCore::WebGLRenderingContext::vertexAttribfvImpl):
  84577. * html/canvas/WebGLRenderingContext.h: Helper function declaration.
  84578. 2010-07-03 Jeremy Orlow <jorlow@chromium.org>
  84579. Ugh. Have to put the destructor in the .h file since the .ccp isn't compiled yet.
  84580. * storage/IDBKey.h:
  84581. (WebCore::IDBKey::~IDBKey):
  84582. 2010-07-03 Jeremy Orlow <jorlow@chromium.org>
  84583. Build fix. Forgot destructor.
  84584. * storage/IDBKey.cpp:
  84585. (WebCore::IDBKey::~IDBKey):
  84586. 2010-06-26 Jeremy Orlow <jorlow@chromium.org>
  84587. Reviewed by Dumitru Daniliuc.
  84588. Support for keys and in-memory storage for IndexedDB
  84589. https://bugs.webkit.org/show_bug.cgi?id=41252
  84590. It'll take some time to get data persistence working for IndexedDB,
  84591. so until then, we'll just store everything in an in memory tree.
  84592. The tree uses WTF::AVLTree and is a template so that it can be used by
  84593. object stores (IDBKey -> SerializedScriptValue) and indexes (IDBKey ->
  84594. IDBKey). This class will be used in a subsequent patch.
  84595. Also add an IDBKey type that represents one of these keys. We use a
  84596. custom toJS function in a way similar to IDBAny to convert from WebCore
  84597. to a JS value. For converting the other way, we have to teach the code
  84598. generators what to do (unfortunately). This is done in a way similar
  84599. to serialized script value. Unlike serialized script value, IDBKey is
  84600. in WebCore and only a helper function is JS engine specific.
  84601. This code is not accessable from layout tests. (Will fix in
  84602. https://bugs.webkit.org/show_bug.cgi?id=41250) The bindings tests
  84603. show us that the generated bindings are what we expect.
  84604. * ForwardingHeaders/wtf/AVLTree.h: Added.
  84605. * bindings/js/IDBBindingUtilities.cpp: Added.
  84606. (WebCore::createIDBKeyFromValue):
  84607. * bindings/js/IDBBindingUtilities.h: Added.
  84608. * bindings/js/JSIDBKeyCustom.cpp: Added.
  84609. (WebCore::toJS):
  84610. * bindings/scripts/CodeGeneratorJS.pm:
  84611. * bindings/scripts/CodeGeneratorV8.pm:
  84612. * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
  84613. (WebDOMTestObj::idbKey):
  84614. * bindings/scripts/test/CPP/WebDOMTestObj.h:
  84615. * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  84616. (webkit_dom_test_obj_idb_key):
  84617. * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  84618. * bindings/scripts/test/JS/JSTestObj.cpp:
  84619. (WebCore::):
  84620. (WebCore::jsTestObjPrototypeFunctionIdbKey):
  84621. * bindings/scripts/test/JS/JSTestObj.h:
  84622. * bindings/scripts/test/ObjC/DOMTestObj.h:
  84623. * bindings/scripts/test/ObjC/DOMTestObj.mm:
  84624. (-[DOMTestObj idbKey:]):
  84625. * bindings/scripts/test/TestObj.idl:
  84626. * bindings/scripts/test/V8/V8TestObj.cpp:
  84627. (WebCore::TestObjInternal::idbKeyCallback):
  84628. (WebCore::):
  84629. * bindings/v8/IDBBindingUtilities.cpp: Added.
  84630. (WebCore::createIDBKeyFromValue):
  84631. * bindings/v8/IDBBindingUtilities.h: Added.
  84632. * bindings/v8/custom/V8IDBKeyCustom.cpp: Added.
  84633. (WebCore::toV8):
  84634. * storage/IDBCallbacks.h:
  84635. * storage/IDBKey.cpp: Added.
  84636. (WebCore::IDBKey::IDBKey):
  84637. (WebCore::IDBKey::~IDBKey):
  84638. * storage/IDBKey.h: Added.
  84639. (WebCore::IDBKey::create):
  84640. (WebCore::IDBKey::):
  84641. (WebCore::IDBKey::type):
  84642. (WebCore::IDBKey::string):
  84643. (WebCore::IDBKey::number):
  84644. * storage/IDBKey.idl: Added.
  84645. * storage/IDBKeyTree.h: Added.
  84646. (WebCore::IDBKeyTree::create):
  84647. (WebCore::IDBKeyTree::AVLTreeAbstractor::get_less):
  84648. (WebCore::IDBKeyTree::AVLTreeAbstractor::set_less):
  84649. (WebCore::IDBKeyTree::AVLTreeAbstractor::get_greater):
  84650. (WebCore::IDBKeyTree::AVLTreeAbstractor::set_greater):
  84651. (WebCore::IDBKeyTree::AVLTreeAbstractor::get_balance_factor):
  84652. (WebCore::IDBKeyTree::AVLTreeAbstractor::set_balance_factor):
  84653. (WebCore::IDBKeyTree::AVLTreeAbstractor::null):
  84654. (WebCore::IDBKeyTree::AVLTreeAbstractor::compare_key_node):
  84655. (WebCore::IDBKeyTree::AVLTreeAbstractor::compare_node_node):
  84656. (WebCore::::IDBKeyTree):
  84657. (WebCore::::~IDBKeyTree):
  84658. (WebCore::::AVLTreeAbstractor::compare_key_key):
  84659. (WebCore::::get):
  84660. (WebCore::::insert):
  84661. (WebCore::::remove):
  84662. 2010-07-03 Jon Honeycutt <jhoneycutt@apple.com>
  84663. The missing plug-in indicator should be clickable
  84664. https://bugs.webkit.org/show_bug.cgi?id=41550
  84665. <rdar://problem/8132162>
  84666. From an original patch by Kevin Decker.
  84667. Reviewed by Darin Adler.
  84668. * html/HTMLPlugInElement.cpp:
  84669. (WebCore::HTMLPlugInElement::defaultEventHandler):
  84670. If the renderer is a RenderEmbeddedWidget showing the missing plug-in
  84671. indicator, and the event is a click even, call the ChromeClient's
  84672. missingPluginButtonClicked() function.
  84673. * page/ChromeClient.h:
  84674. (WebCore::ChromeClient::missingPluginButtonClicked):
  84675. Declare missingPluginButtonClicked(), and stub the default
  84676. implementation.
  84677. * rendering/RenderEmbeddedObject.cpp:
  84678. (WebCore::RenderEmbeddedObject::RenderEmbeddedObject):
  84679. Initialize m_showsMissingPluginIndicator.
  84680. (WebCore::RenderEmbeddedObject::setShowsMissingPluginIndicator):
  84681. Assert that we're not currently showing any replacement text. Set
  84682. m_showsMissingPluginIndicator after setting the replacement text.
  84683. (WebCore::RenderEmbeddedObject::setShowsCrashedPluginIndicator):
  84684. Add the same assert as above.
  84685. * rendering/RenderEmbeddedObject.h:
  84686. (WebCore::RenderEmbeddedObject::showsMissingPluginIndicator):
  84687. Getter for m_showsMissingPluginIndicator.
  84688. 2010-07-02 Oliver Hunt <oliver@apple.com>
  84689. Reviewed by Geoffrey Garen.
  84690. Move BOM handling out of the lexer and parser
  84691. https://bugs.webkit.org/show_bug.cgi?id=41539
  84692. Update WebCore to ensure that SourceProviders don't
  84693. produce strings with BOMs in them.
  84694. * bindings/js/ScriptSourceProvider.h:
  84695. (WebCore::ScriptSourceProvider::ScriptSourceProvider):
  84696. * bindings/js/StringSourceProvider.h:
  84697. (WebCore::StringSourceProvider::StringSourceProvider):
  84698. * loader/CachedScript.cpp:
  84699. (WebCore::CachedScript::CachedScript):
  84700. (WebCore::CachedScript::script):
  84701. * loader/CachedScript.h:
  84702. (WebCore::CachedScript::):
  84703. CachedScript now stores decoded data with the BOMs stripped,
  84704. and caches the presence of BOMs across memory purges.
  84705. 2010-07-03 Xan Lopez <xlopez@igalia.com>
  84706. Include DerivedSources/WebCore before DerivedSources/
  84707. Recently DerivedSources generation was changed, with some files no
  84708. longer being generated in the toplevel DerivedSources
  84709. directory. Since that directory is first in the -I flags the build
  84710. can be broken in some cases by including old files unless a 'make
  84711. clean' is done. Change the -I order to fix the build in the 32 bit
  84712. Release bot.
  84713. * GNUmakefile.am:
  84714. 2010-07-03 Erik Arvidsson <arv@chromium.org>
  84715. Reviewed by Ojan Vafai.
  84716. Fix issue where a contextmenu event was reporting the wrong target if
  84717. the context menu was shown due to pressing the context menu key
  84718. (or Shift+F10).
  84719. Split sendContextMenuForEvent into one case for keyboard events and use
  84720. that when the contextmenu event should be dispatched due to a keypress.
  84721. For the keboard case we now use the focused node as the target for the
  84722. event and use the clipped rect to determine the position of the menu.
  84723. https://bugs.webkit.org/show_bug.cgi?id=38129
  84724. Use manual test since DRT does not handle context menu keys.
  84725. * manual-tests/win/contextmenu-key.html: Added.
  84726. * page/EventHandler.cpp:
  84727. (WebCore::EventHandler::sendContextMenuEvent):
  84728. (WebCore::EventHandler::sendContextMenuEventForKey):
  84729. * page/EventHandler.h:
  84730. 2010-07-03 Dirk Schulze <krit@webkit.org>
  84731. Unreviewed sort of Xcode project file.
  84732. * WebCore.xcodeproj/project.pbxproj:
  84733. 2010-07-03 Kwang Yul Seo <skyul@company100.net>
  84734. Reviewed by Kent Tamura.
  84735. [BREWMP] Port Widget
  84736. https://bugs.webkit.org/show_bug.cgi?id=41538
  84737. Make Widget a dummy class. WebKit Brew MP uses the full screen mode
  84738. and does not use the window system introduced in Brew MP.
  84739. * platform/Widget.h:
  84740. * platform/brew/WidgetBrew.cpp: Added.
  84741. (WebCore::Widget::Widget):
  84742. (WebCore::Widget::~Widget):
  84743. (WebCore::Widget::frameRect):
  84744. (WebCore::Widget::setFrameRect):
  84745. (WebCore::Widget::setFocus):
  84746. (WebCore::Widget::setCursor):
  84747. (WebCore::Widget::show):
  84748. (WebCore::Widget::hide):
  84749. (WebCore::Widget::paint):
  84750. (WebCore::Widget::setIsSelected):
  84751. 2010-07-03 Adam Barth <abarth@webkit.org>
  84752. Reviewed by Eric Seidel.
  84753. Implement AfterFramesetMode
  84754. https://bugs.webkit.org/show_bug.cgi?id=41560
  84755. * html/HTMLTreeBuilder.cpp:
  84756. (WebCore::HTMLTreeBuilder::processStartTag):
  84757. (WebCore::HTMLTreeBuilder::processEndTag):
  84758. (WebCore::HTMLTreeBuilder::processCharacter):
  84759. (WebCore::HTMLTreeBuilder::processEndOfFile):
  84760. 2010-07-02 Adam Barth <abarth@webkit.org>
  84761. Reviewed by Eric Seidel.
  84762. Implement InFramesetMode
  84763. https://bugs.webkit.org/show_bug.cgi?id=41559
  84764. Pretty straighforward. We still don't handle character tokens
  84765. correctly.
  84766. * html/HTMLTreeBuilder.cpp:
  84767. (WebCore::HTMLTreeBuilder::processStartTag):
  84768. (WebCore::HTMLTreeBuilder::processEndTag):
  84769. (WebCore::HTMLTreeBuilder::processCharacter):
  84770. (WebCore::HTMLTreeBuilder::processEndOfFile):
  84771. 2010-07-02 Adam Barth <abarth@webkit.org>
  84772. Reviewed by Eric Seidel.
  84773. Handle <frameset> InBody
  84774. https://bugs.webkit.org/show_bug.cgi?id=41558
  84775. Handling the <frameset> tag in the InBody mode is somewhat delicate.
  84776. * html/HTMLElementStack.cpp:
  84777. (WebCore::HTMLElementStack::popHTMLBodyElement):
  84778. (WebCore::HTMLElementStack::popUntil):
  84779. (WebCore::HTMLElementStack::popCommon):
  84780. * html/HTMLElementStack.h:
  84781. * html/HTMLTreeBuilder.cpp:
  84782. (WebCore::HTMLTreeBuilder::processStartTag):
  84783. 2010-07-02 Adam Barth <abarth@webkit.org>
  84784. Reviewed by Eric Seidel.
  84785. Special handling of <rp> and <rt> tags
  84786. https://bugs.webkit.org/show_bug.cgi?id=41557
  84787. So sayeth the spec.
  84788. * html/HTMLTreeBuilder.cpp:
  84789. (WebCore::HTMLTreeBuilder::processStartTag):
  84790. 2010-07-02 Adam Barth <abarth@webkit.org>
  84791. Reviewed by Eric Seidel.
  84792. Implement special optgroup processing
  84793. https://bugs.webkit.org/show_bug.cgi?id=41556
  84794. * html/HTMLTreeBuilder.cpp:
  84795. (WebCore::HTMLTreeBuilder::processStartTag):
  84796. 2010-07-02 Adam Barth <abarth@webkit.org>
  84797. Reviewed by Eric Seidel.
  84798. Handle <image> in new parser
  84799. https://bugs.webkit.org/show_bug.cgi?id=41555
  84800. This patch is kind of goofy but apparently how the world works.
  84801. * html/HTMLToken.h:
  84802. (WebCore::AtomicHTMLToken::setName):
  84803. * html/HTMLTreeBuilder.cpp:
  84804. (WebCore::HTMLTreeBuilder::processStartTag):
  84805. 2010-07-02 Kwang Yul Seo <skyul@company100.net>
  84806. Reviewed by Alexey Proskuryakov.
  84807. Remove extra semicolon at the end of HTMLTreeBuilder::attach
  84808. https://bugs.webkit.org/show_bug.cgi?id=41546
  84809. This is not critical, but the extra semicolon at the end of HTMLTreeBuilder::attach
  84810. causes a warning in RVCT.
  84811. * html/HTMLTreeBuilder.h:
  84812. (WebCore::HTMLTreeBuilder::attach):
  84813. 2010-07-02 Tony Gentilcore <tonyg@chromium.org>
  84814. Reviewed by Darin Adler.
  84815. Performance::disconnectFrame() needs to disconnect its children
  84816. https://bugs.webkit.org/show_bug.cgi?id=41533
  84817. No new tests because no new functionality.
  84818. * page/Performance.cpp:
  84819. (WebCore::Performance::disconnectFrame):
  84820. 2010-07-02 Luiz Agostini <luiz.agostini@openbossa.org>
  84821. Reviewed by Sam Weinig.
  84822. Checking if WTF_USE_JSC is defined before redefining it in config.h
  84823. https://bugs.webkit.org/show_bug.cgi?id=41530
  84824. * config.h:
  84825. 2010-07-02 Tony Gentilcore <tonyg@chromium.org>
  84826. Reviewed by Dimitri Glazkov.
  84827. Add vendor prefix to window.performance
  84828. https://bugs.webkit.org/show_bug.cgi?id=41525
  84829. No new tests because window.performance tests not landed yet.
  84830. * page/DOMWindow.cpp:
  84831. (WebCore::DOMWindow::webkitPerformance):
  84832. * page/DOMWindow.h:
  84833. (WebCore::DOMWindow::optionalWebkitPerformance):
  84834. * page/DOMWindow.idl:
  84835. 2010-07-02 Zoltan Herczeg <zherczeg@webkit.org>
  84836. Reviewed by Oliver Hunt.
  84837. Minor fix: Diffuse constant is float (not integer)
  84838. https://bugs.webkit.org/show_bug.cgi?id=10412
  84839. * svg/SVGFEDiffuseLightingElement.cpp:
  84840. (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
  84841. 2010-07-02 Martin Robinson <mrobinson@igalia.com>
  84842. Unreviewed.
  84843. Build fix for GTK+. Try to force a rebuild of the HTMLNames.h
  84844. file first by touching HTMLTagNames.in.
  84845. * html/HTMLTagNames.in:
  84846. 2010-07-02 Andreas Kling <andreas.kling@nokia.com>
  84847. Reviewed by Oliver Hunt.
  84848. RGB colors should be clamped to the 0-255 range
  84849. https://bugs.webkit.org/show_bug.cgi?id=39482
  84850. Spec link:
  84851. http://www.whatwg.org/specs/web-apps/current-work/#colors
  84852. Test: fast/canvas/canvas-color-clamping.html
  84853. * css/CSSParser.cpp:
  84854. (WebCore::parseColorInt):
  84855. (WebCore::CSSParser::parseColor):
  84856. (WebCore::parseColorIntFromValue):
  84857. (WebCore::CSSParser::parseColorParameters):
  84858. 2010-07-02 Sheriff Bot <webkit.review.bot@gmail.com>
  84859. Unreviewed, rolling out r62410.
  84860. http://trac.webkit.org/changeset/62410
  84861. https://bugs.webkit.org/show_bug.cgi?id=41549
  84862. accursed last minute changes (Requested by olliej on #webkit).
  84863. * bindings/js/ScriptSourceProvider.h:
  84864. (WebCore::ScriptSourceProvider::ScriptSourceProvider):
  84865. * bindings/js/StringSourceProvider.h:
  84866. (WebCore::StringSourceProvider::StringSourceProvider):
  84867. * loader/CachedScript.cpp:
  84868. (WebCore::CachedScript::CachedScript):
  84869. (WebCore::CachedScript::script):
  84870. * loader/CachedScript.h:
  84871. 2010-07-02 Martin Robinson <mrobinson@igalia.com>
  84872. Unreviewed.
  84873. Further Build fix for GTK+. Also include HTMLElementFactory.h in
  84874. the list of dependencies.
  84875. * GNUmakefile.am:
  84876. 2010-07-02 Martin Robinson <mrobinson@igalia.com>
  84877. Unreviewed.
  84878. Build fix for GTK+. *Names.{cpp,h} targets should now include the
  84879. header files. Also adds the header files to the generated sources list.
  84880. * GNUmakefile.am:
  84881. 2010-07-02 Dumitru Daniliuc <dumi@chromium.org>
  84882. Reviewed by Darin Fisher.
  84883. DB clean up.
  84884. https://bugs.webkit.org/show_bug.cgi?id=41404
  84885. 1. Made all DatabaseTasks internal classes of Database and made
  84886. the Database methods called by those tasks private.
  84887. 2. Removed the Database::stop{ed}() methods.
  84888. 3. Removed the code that kept track of open databases from
  84889. ScriptExecutionContext (no longer needed).
  84890. 4. Made minor changes to Database::closeImmediately() to make it
  84891. possible for DatabaseThread to call that method instead of
  84892. close().
  84893. 5. Minor fix to DatabaseTracker: addOpenDatabase() should call
  84894. OriginQuotaManager::addDatabase() if the origin quota manager
  84895. is not tracking this origin.
  84896. 6. Removed Database::performPolicyChecks(). We already update the
  84897. DB size after each transaction, and we enforce a max size for
  84898. the DB at the beginning of each transaction.
  84899. * dom/ScriptExecutionContext.cpp:
  84900. (WebCore::ScriptExecutionContext::stopDatabases):
  84901. * dom/ScriptExecutionContext.h:
  84902. (WebCore::ScriptExecutionContext::hasOpenDatabases):
  84903. * storage/Database.cpp:
  84904. (WebCore::Database::openDatabase):
  84905. (WebCore::Database::Database):
  84906. (WebCore::Database::markAsDeletedAndClose):
  84907. (WebCore::Database::close):
  84908. (WebCore::Database::closeImmediately):
  84909. * storage/Database.h:
  84910. * storage/DatabaseTask.cpp:
  84911. (WebCore::DatabaseTask::performTask):
  84912. (WebCore::Database::DatabaseOpenTask::DatabaseOpenTask):
  84913. (WebCore::Database::DatabaseOpenTask::doPerformTask):
  84914. (WebCore::Database::DatabaseOpenTask::debugTaskName):
  84915. (WebCore::Database::DatabaseCloseTask::DatabaseCloseTask):
  84916. (WebCore::Database::DatabaseCloseTask::doPerformTask):
  84917. (WebCore::Database::DatabaseCloseTask::debugTaskName):
  84918. (WebCore::Database::DatabaseTransactionTask::DatabaseTransactionTask):
  84919. (WebCore::Database::DatabaseTransactionTask::doPerformTask):
  84920. (WebCore::Database::DatabaseTransactionTask::debugTaskName):
  84921. (WebCore::Database::DatabaseTableNamesTask::DatabaseTableNamesTask):
  84922. (WebCore::Database::DatabaseTableNamesTask::doPerformTask):
  84923. (WebCore::Database::DatabaseTableNamesTask::debugTaskName):
  84924. * storage/DatabaseTask.h:
  84925. (WebCore::Database::DatabaseOpenTask::create):
  84926. (WebCore::Database::DatabaseCloseTask::create):
  84927. (WebCore::Database::DatabaseTransactionTask::create):
  84928. (WebCore::Database::DatabaseTableNamesTask::create):
  84929. * storage/DatabaseThread.cpp:
  84930. (WebCore::DatabaseThread::databaseThread):
  84931. * storage/DatabaseTracker.cpp:
  84932. (WebCore::DatabaseTracker::addOpenDatabase):
  84933. * storage/SQLTransaction.cpp:
  84934. (WebCore::SQLTransaction::executeSQL):
  84935. (WebCore::SQLTransaction::checkAndHandleClosedDatabase):
  84936. 2010-07-02 Oliver Hunt <oliver@apple.com>
  84937. Reviewed by Geoffrey Garen.
  84938. Move BOM handling out of the lexer and parser
  84939. https://bugs.webkit.org/show_bug.cgi?id=41539
  84940. Update WebCore to ensure that SourceProviders don't
  84941. produce strings with BOMs in them.
  84942. * bindings/js/ScriptSourceProvider.h:
  84943. (WebCore::ScriptSourceProvider::ScriptSourceProvider):
  84944. * bindings/js/StringSourceProvider.h:
  84945. (WebCore::StringSourceProvider::StringSourceProvider):
  84946. * loader/CachedScript.cpp:
  84947. (WebCore::CachedScript::CachedScript):
  84948. (WebCore::CachedScript::script):
  84949. * loader/CachedScript.h:
  84950. (WebCore::CachedScript::):
  84951. CachedScript now stores decoded data with the BOMs stripped,
  84952. and caches the presence of BOMs across memory purges.
  84953. 2010-07-02 Sam Weinig <sam@webkit.org>
  84954. Add missing symbol to exports file.
  84955. * WebCore.base.exp:
  84956. 2010-07-02 Abhishek Arya <inferno@chromium.org>
  84957. Reviewed by Darin Fisher.
  84958. Remove the extra setFailed() call in JPEG decoder to prevent
  84959. re-using an already freed object.
  84960. https://bugs.webkit.org/show_bug.cgi?id=41487
  84961. Test: fast/images/large-size-image-crash.html
  84962. * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
  84963. (WebCore::JPEGImageReader::decode):
  84964. 2010-07-02 Peter Beverloo <peter@lvp-media.com>
  84965. Reviewed by Maciej Stachowiak.
  84966. Add the HTML5 <mark> element. Text content of the element will have
  84967. a yellow background color and black text.
  84968. Test: fast/html/mark-element.html
  84969. Tests for <p> closing, phrasing child content and residual style.
  84970. * css/html.css:
  84971. (mark):
  84972. * html/HTMLElement.cpp:
  84973. (WebCore::inlineTagList):
  84974. * html/HTMLTagNames.in:
  84975. * html/LegacyHTMLTreeBuilder.cpp:
  84976. (WebCore::LegacyHTMLTreeBuilder::getNode):
  84977. (WebCore::LegacyHTMLTreeBuilder::isInline):
  84978. (WebCore::LegacyHTMLTreeBuilder::isResidualStyleTag):
  84979. 2010-07-02 Zhenyao Mo <zmo@google.com>
  84980. Reviewed by Dimitri Glazkov.
  84981. Fix issues in boundary situations for WebGLRenderingContext::drawArrays/drawElements
  84982. https://bugs.webkit.org/show_bug.cgi?id=41473
  84983. * WebCore.gypi: Add CheckedInt.h.
  84984. * WebCore.xcodeproj/project.pbxproj: Add CheckedInt.h.
  84985. * html/canvas/CheckedInt.h: Added support of safe integer operations.
  84986. (mozilla::CheckedInt_internal::integer_type_manually_recorded_info::):
  84987. (mozilla::CheckedInt_internal::is_unsupported_type::):
  84988. (mozilla::CheckedInt_internal::):
  84989. (mozilla::CheckedInt_internal::integer_traits::):
  84990. (mozilla::CheckedInt_internal::integer_traits::min):
  84991. (mozilla::CheckedInt_internal::integer_traits::max):
  84992. (mozilla::CheckedInt_internal::has_sign_bit):
  84993. (mozilla::CheckedInt_internal::binary_complement):
  84994. (mozilla::CheckedInt_internal::is_in_range):
  84995. (mozilla::CheckedInt_internal::is_add_valid):
  84996. (mozilla::CheckedInt_internal::is_sub_valid):
  84997. (mozilla::CheckedInt_internal::is_mul_valid):
  84998. (mozilla::CheckedInt_internal::is_div_valid):
  84999. (mozilla::CheckedInt::CheckedInt):
  85000. (mozilla::CheckedInt::value):
  85001. (mozilla::CheckedInt::valid):
  85002. (mozilla::CheckedInt::operator -):
  85003. (mozilla::CheckedInt::operator ==):
  85004. (mozilla::CheckedInt::operator !=):
  85005. (mozilla::operator /):
  85006. (mozilla::cast_to_CheckedInt_impl::run):
  85007. (mozilla::):
  85008. (mozilla::cast_to_CheckedInt):
  85009. (mozilla::operator ==):
  85010. * html/canvas/WebGLRenderingContext.cpp:
  85011. (WebCore::WebGLRenderingContext::validateIndexArrayConservative): Fix a bug against 0-size buffer situation.
  85012. (WebCore::WebGLRenderingContext::drawArrays): Deal with overflows and count==0 situation.
  85013. (WebCore::WebGLRenderingContext::drawElements): Deal with count==0 situation.
  85014. 2010-07-02 Zhenyao Mo <zmo@google.com>
  85015. Reviewed by Dimitri Glazkov.
  85016. linkProgram should fail when vertex/fragment shaders are not both present
  85017. https://bugs.webkit.org/show_bug.cgi?id=41380
  85018. Test: fast/canvas/webgl/program-test.html
  85019. * html/canvas/WebGLProgram.cpp: Add flag for link failure due to missing shaders.
  85020. (WebCore::WebGLProgram::WebGLProgram):
  85021. * html/canvas/WebGLProgram.h: Add interface for linkFailure flag.
  85022. (WebCore::WebGLProgram::isLinkFailureFlagSet):
  85023. (WebCore::WebGLProgram::setLinkFailureFlag):
  85024. * html/canvas/WebGLRenderingContext.cpp:
  85025. (WebCore::WebGLRenderingContext::getProgramParameter): Intercept when linkFailureFlag is set.
  85026. (WebCore::WebGLRenderingContext::linkProgram): Check if there are missing shaders and don't link if yes.
  85027. * html/canvas/WebGLShader.cpp: Cache shader type.
  85028. (WebCore::WebGLShader::WebGLShader):
  85029. * html/canvas/WebGLShader.h: Ditto.
  85030. (WebCore::WebGLShader::getType):
  85031. 2010-07-02 Qi Zhang <qi.2.zhang@nokia.com>
  85032. Reviewed by Laszlo Gombos.
  85033. [Qt] Failed on http://philip.html5.org/tests/canvas/suite/tests/2d.drawImage.negativesource.html
  85034. Support negative width and height in canvas image draw
  85035. * platform/graphics/FloatRect.h:
  85036. * platform/graphics/qt/FloatRectQt.cpp:
  85037. (WebCore::FloatRect::normalized):
  85038. * platform/graphics/qt/ImageQt.cpp:
  85039. (WebCore::BitmapImage::draw):
  85040. 2010-06-24 Dimitri Glazkov <dglazkov@chromium.org>
  85041. Reviewed by Alexey Proskuryakov.
  85042. REGRESSION: Enter does not trigger submit of forms when focus is on select.
  85043. https://bugs.webkit.org/show_bug.cgi?id=39532
  85044. Restore behavior where hitting "Enter" on a select element attempts to submit
  85045. form implicitly.
  85046. * dom/SelectElement.cpp:
  85047. (WebCore::SelectElement::menuListDefaultEventHandler): Added htmlForm argument,
  85048. and attempting to submit implicitly.
  85049. (WebCore::SelectElement::listBoxDefaultEventHandler): Ditto.
  85050. (WebCore::SelectElement::defaultEventHandler): Plumbed through htmlForm argument.
  85051. * dom/SelectElement.h: Added htmlForm argument to method declaration.
  85052. * html/HTMLSelectElement.cpp:
  85053. (WebCore::HTMLSelectElement::defaultEventHandler): Changed to provide submitting form
  85054. as the argument.
  85055. 2010-07-02 Kent Tamura <tkent@chromium.org>
  85056. Reviewed by Darin Fisher.
  85057. [Chromium] Support indeterminate checkbox for Linux, and a small fix for Windows
  85058. https://bugs.webkit.org/show_bug.cgi?id=41508
  85059. * rendering/RenderThemeChromiumSkia.cpp:
  85060. (WebCore::RenderThemeChromiumSkia::paintCheckbox):
  85061. Use dedicated images for indeterminate states.
  85062. * rendering/RenderThemeChromiumWin.cpp:
  85063. (WebCore::RenderThemeChromiumWin::determineClassicState):
  85064. Do not use DFCS_CHECKED in a case of indeterminate state in
  85065. order to have consistent appearance of indeterminate checkbox.
  85066. 2010-07-02 Brent Fulgham <bfulgham@webkit.org>
  85067. Reviewed by Gustavo Noronha Silva.
  85068. Fixes https://bugs.webkit.org/show_bug.cgi?id=41323.
  85069. Provides an implementation of the 'squiggle' used for
  85070. bad grammar or spelling, based on the Pango logic used
  85071. by the GTK builds.
  85072. No new tests. Covered by LayoutTests/editing/spelling
  85073. * WebCore.vcproj/WebCore.vcproj: Add new file holding underline
  85074. implementation, set to build only for WinCairo port.
  85075. * platform/graphics/cairo/DrawErrorUnderline.cpp: Added.
  85076. (drawErrorUnderline): New file containing the squiggle drawing
  85077. logic based on the Pango implementation. Placed in its own file
  85078. to isolate licenses.
  85079. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  85080. (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
  85081. Have WinCairo build call new 'drawErrorUnderline' implementation.
  85082. 2010-07-02 Martin Robinson <mrobinson@igalia.com>
  85083. Reviewed by Gustavo Noronha Silva.
  85084. [GTK] Separate DerivedSources per-project
  85085. https://bugs.webkit.org/show_bug.cgi?id=41109
  85086. Generate WebCore derived sources in <builddir>/DerivedSources/WebCore.
  85087. * GNUmakefile.am:
  85088. 2010-07-02 Zhenyao Mo <zmo@google.com>
  85089. Reviewed by Dimitri Glazkov.
  85090. Implement OpenGL ES 2.0 semantics for vertex attribute 0
  85091. https://bugs.webkit.org/show_bug.cgi?id=41300
  85092. Test: fast/canvas/webgl/gl-bind-attrib-location-test.html
  85093. fast/canvas/webgl/gl-vertex-attrib.html
  85094. * html/canvas/WebGLProgram.cpp:
  85095. (WebCore::WebGLProgram::numActiveAttribLocations): const.
  85096. (WebCore::WebGLProgram::getActiveAttribLocation): const.
  85097. (WebCore::WebGLProgram::isUsingVertexAttrib0): Determine whether vertex attrib 0 is used by the program.
  85098. * html/canvas/WebGLProgram.h: Declare isUsingVertexAttrib0.
  85099. * html/canvas/WebGLRenderingContext.cpp:
  85100. (WebCore::WebGLRenderingContext::WebGLRenderingContext): Deal with vertex attrib 0.
  85101. (WebCore::WebGLRenderingContext::disableVertexAttribArray): Ditto.
  85102. (WebCore::WebGLRenderingContext::drawArrays): Ditto.
  85103. (WebCore::WebGLRenderingContext::drawElements): Ditto.
  85104. (WebCore::WebGLRenderingContext::getVertexAttrib): Use cached value instead of calling glGetVertexAtrtrib.
  85105. (WebCore::WebGLRenderingContext::vertexAttrib1f): Validate input, deal with vertex attrib 0.
  85106. (WebCore::WebGLRenderingContext::vertexAttrib1fv): Ditto.
  85107. (WebCore::WebGLRenderingContext::vertexAttrib2f): Ditto.
  85108. (WebCore::WebGLRenderingContext::vertexAttrib2fv): Ditto.
  85109. (WebCore::WebGLRenderingContext::vertexAttrib3f): Ditto.
  85110. (WebCore::WebGLRenderingContext::vertexAttrib3fv): Ditto.
  85111. (WebCore::WebGLRenderingContext::vertexAttrib4f): Ditto.
  85112. (WebCore::WebGLRenderingContext::vertexAttrib4fv): Ditto.
  85113. (WebCore::WebGLRenderingContext::vertexAttribPointer): Ditto.
  85114. (WebCore::WebGLRenderingContext::handleNPOTTextures): Move isGLES2Compliant() to caller.
  85115. (WebCore::WebGLRenderingContext::vertexAttribImpl): Helper for vertexAttribNfv.
  85116. (WebCore::WebGLRenderingContext::initVertexAttrib0): Initialize vertex attrib 0.
  85117. (WebCore::WebGLRenderingContext::simulateVertexAttrib0): Simulate vertex attrib 0.
  85118. (WebCore::WebGLRenderingContext::restoreStatesAfterVertexAttrib0Simulation): Restore states after simulating vertex attrib 0.
  85119. * html/canvas/WebGLRenderingContext.h:
  85120. (WebCore::WebGLRenderingContext::VertexAttribState::VertexAttribState): Tracking full vertex attrib states.
  85121. (WebCore::WebGLRenderingContext::VertexAttribState::initValue): Init value to [0,0,0,1].
  85122. 2010-07-02 Zhenyao Mo <zmo@google.com>
  85123. Reviewed by Dimitri Glazkov.
  85124. Need to validate the size of the incoming arrays for uniform* functions
  85125. https://bugs.webkit.org/show_bug.cgi?id=41383
  85126. * html/canvas/WebGLRenderingContext.cpp: Validate input array size.
  85127. (WebCore::WebGLRenderingContext::uniform1fv):
  85128. (WebCore::WebGLRenderingContext::uniform1iv):
  85129. (WebCore::WebGLRenderingContext::uniform2fv):
  85130. (WebCore::WebGLRenderingContext::uniform2iv):
  85131. (WebCore::WebGLRenderingContext::uniform3fv):
  85132. (WebCore::WebGLRenderingContext::uniform3iv):
  85133. (WebCore::WebGLRenderingContext::uniform4fv):
  85134. (WebCore::WebGLRenderingContext::uniform4iv):
  85135. (WebCore::WebGLRenderingContext::uniformMatrix2fv):
  85136. (WebCore::WebGLRenderingContext::uniformMatrix3fv):
  85137. (WebCore::WebGLRenderingContext::uniformMatrix4fv):
  85138. (WebCore::WebGLRenderingContext::validateUniformParameters):
  85139. (WebCore::WebGLRenderingContext::validateUniformMatrixParameters):
  85140. * html/canvas/WebGLRenderingContext.h: Add helper functions.
  85141. 2010-07-02 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
  85142. Reviewed by Simon Hausmann.
  85143. [Qt] Canvas arcTo() should draw straight line to p1 if p0, p1 and p2 are collinear
  85144. The implementation of PathQt's addArcTo() was not float-safe and also had
  85145. a case where it drew an 'infinite' line, which is not part of the spec.
  85146. http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-arcto
  85147. We now use qFuzzyCompare() in both cases. The method isPointOnPathBorder()
  85148. also had the same problem, and was refactored a bit in the process of fixing
  85149. the bug.
  85150. Initial patch by Andreas Kling.
  85151. https://bugs.webkit.org/show_bug.cgi?id=41412
  85152. * platform/graphics/qt/PathQt.cpp:
  85153. 2010-07-02 Yury Semikhatsky <yurys@chromium.org>
  85154. Reviewed by Pavel Feldman.
  85155. [v8] Web Inspector: inspected page crashes on attempt to change iframe's src attribute
  85156. https://bugs.webkit.org/show_bug.cgi?id=41511
  85157. Tests: fast/events/popup-blocked-from-fake-user-gesture.html
  85158. http/tests/inspector/change-iframe-src.html
  85159. * bindings/v8/ScriptController.cpp:
  85160. (WebCore::ScriptController::processingUserGesture): use V8Proxy from the ScriptController instead of one
  85161. from the call stack. Get event directly from hidden property to avoid unnecessary checks.
  85162. * bindings/v8/V8AbstractEventListener.cpp:
  85163. (WebCore::V8AbstractEventListener::invokeEventHandler):
  85164. * bindings/v8/V8HiddenPropertyName.h:
  85165. * bindings/v8/custom/V8DOMWindowCustom.cpp:
  85166. (WebCore::V8DOMWindow::eventAccessorGetter):
  85167. (WebCore::V8DOMWindow::eventAccessorSetter):
  85168. 2010-07-02 Adam Barth <abarth@webkit.org>
  85169. Reviewed by Eric Seidel.
  85170. Fix tokenization of <!----->
  85171. https://bugs.webkit.org/show_bug.cgi?id=41505
  85172. I noticed this error when browsing through the HTML5lib failures.
  85173. We're adding an extra character to the comment token, contrary to what
  85174. the spec says to do.
  85175. * html/HTMLTokenizer.cpp:
  85176. (WebCore::HTMLTokenizer::nextToken):
  85177. 2010-07-02 Adam Barth <abarth@webkit.org>
  85178. Reviewed by Eric Seidel.
  85179. Implement processFakePEndTagIfPInScope
  85180. https://bugs.webkit.org/show_bug.cgi?id=41503
  85181. This is a common idiom because <p> likes to close itself.
  85182. * html/HTMLTreeBuilder.cpp:
  85183. (WebCore::HTMLTreeBuilder::processFakePEndTagIfPInScope):
  85184. (WebCore::HTMLTreeBuilder::processStartTag):
  85185. * html/HTMLTreeBuilder.h:
  85186. 2010-07-02 Adam Barth <abarth@webkit.org>
  85187. Reviewed by Eric Seidel.
  85188. Implement AfterAfterBodyMode
  85189. https://bugs.webkit.org/show_bug.cgi?id=41501
  85190. In implementing this mode, I noticed a bug in the character processing
  85191. of the AfterBodyMode, which I fixed by adding a break statement. Also,
  85192. to get one of the new tests to pass, I needed to implement one
  85193. notImplemented() in the InBody insertion mode. Yay for testing.
  85194. * html/HTMLTreeBuilder.cpp:
  85195. (WebCore::HTMLTreeBuilder::processStartTag):
  85196. (WebCore::HTMLTreeBuilder::processEndTag):
  85197. (WebCore::HTMLTreeBuilder::processComment):
  85198. (WebCore::HTMLTreeBuilder::processCharacter):
  85199. (WebCore::HTMLTreeBuilder::processEndOfFile):
  85200. 2010-07-02 Sheriff Bot <webkit.review.bot@gmail.com>
  85201. Unreviewed, rolling out r62371.
  85202. http://trac.webkit.org/changeset/62371
  85203. https://bugs.webkit.org/show_bug.cgi?id=41515
  85204. "Breaks media/controls-drag-timebar.html on 32-Bit Release"
  85205. (Requested by philn-tp on #webkit).
  85206. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  85207. (WebCore::MediaPlayerPrivateGStreamer::maxTimeSeekable):
  85208. (WebCore::MediaPlayerPrivateGStreamer::updateStates):
  85209. 2010-06-28 Philippe Normand <pnormand@igalia.com>
  85210. Reviewed by Xan Lopez.
  85211. [GStreamer] can't seek past maxTimeLoaded value
  85212. https://bugs.webkit.org/show_bug.cgi?id=40526
  85213. Extended the seekable range to the whole media. This allows video
  85214. played with progressive download to be seeked past the current
  85215. buffered position.
  85216. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  85217. (WebCore::MediaPlayerPrivateGStreamer::maxTimeSeekable):
  85218. (WebCore::MediaPlayerPrivateGStreamer::updateStates):
  85219. 2010-07-02 Adam Barth <abarth@webkit.org>
  85220. Reviewed by Eric Seidel.
  85221. Implement AfterBodyMode for HTML5 tree builder
  85222. https://bugs.webkit.org/show_bug.cgi?id=41500
  85223. In the coarse of implementing this state, I ran into an ASSERT in how
  85224. </br> tags where handled, which I fixed. Technically, that could be a
  85225. separate patch, but it seemed harmless to include it here (with tests).
  85226. * html/HTMLTreeBuilder.cpp:
  85227. (WebCore::HTMLTreeBuilder::processStartTag):
  85228. (WebCore::HTMLTreeBuilder::processEndTag):
  85229. (WebCore::HTMLTreeBuilder::processComment):
  85230. (WebCore::HTMLTreeBuilder::processCharacter):
  85231. (WebCore::HTMLTreeBuilder::processEndOfFile):
  85232. (WebCore::HTMLTreeBuilder::insertCommentOnHTMLHtmlElement):
  85233. * html/HTMLTreeBuilder.h:
  85234. 2010-07-02 Adam Barth <abarth@webkit.org>
  85235. Reviewed by Eric Seidel.
  85236. Handle <base> and friends in AfterHeadMode
  85237. https://bugs.webkit.org/show_bug.cgi?id=41502
  85238. Implement notImplemented() per spec.
  85239. * html/HTMLTreeBuilder.cpp:
  85240. (WebCore::HTMLTreeBuilder::processStartTag):
  85241. 2010-07-01 Oliver Hunt <oliver@apple.com>
  85242. Build fix
  85243. * dom/Document.h:
  85244. 2010-07-01 Oliver Hunt <oliver@apple.com>
  85245. Reviewed by Maciej Stachowiak.
  85246. Add a FixedArray template to encapsulate fixed length arrays
  85247. https://bugs.webkit.org/show_bug.cgi?id=41506
  85248. Add forwarding header, and replace a few fixed length arrays
  85249. with the new FixedArray type.
  85250. * ForwardingHeaders/wtf/FixedArray.h: Added.
  85251. * dom/Document.h:
  85252. * platform/graphics/GlyphMetricsMap.h:
  85253. 2010-07-01 Simon Fraser <simon.fraser@apple.com>
  85254. No review.
  85255. Fix a link warning in 32-bit by not explicitly exporting WebCore::GraphicsLayer::syncCompositingStateForThisLayerOnly().
  85256. * WebCore.AcceleratedCompositing.exp:
  85257. 2010-07-01 Tony Gentilcore <tonyg@chromium.org>
  85258. Reviewed by Dimitri Glazkov.
  85259. Add window.performance.navigation namespace
  85260. https://bugs.webkit.org/show_bug.cgi?id=41442
  85261. Adds window.performance.navigation namespace consisting of ".type"
  85262. and ".redirectCount". As part of this change, I renmaed "NavigationTiming"
  85263. to just "Timing" to avoid confusion.
  85264. No new tests because tests will be added in a subsequent patch when
  85265. functionality is added.
  85266. * Android.mk:
  85267. * CMakeLists.txt:
  85268. * DerivedSources.cpp:
  85269. * DerivedSources.make:
  85270. * GNUmakefile.am:
  85271. * WebCore.gypi:
  85272. * WebCore.pri:
  85273. * WebCore.pro:
  85274. * WebCore.vcproj/WebCore.vcproj:
  85275. * WebCore.xcodeproj/project.pbxproj:
  85276. * page/Navigation.cpp: Added.
  85277. (WebCore::Navigation::Navigation):
  85278. (WebCore::Navigation::frame):
  85279. (WebCore::Navigation::disconnectFrame):
  85280. (WebCore::Navigation::type):
  85281. (WebCore::Navigation::redirectCount):
  85282. * page/Navigation.h: Added.
  85283. (WebCore::Navigation::create):
  85284. * page/Navigation.idl: Added.
  85285. * page/NavigationTiming.cpp: Removed.
  85286. * page/NavigationTiming.h: Removed.
  85287. * page/NavigationTiming.idl: Removed.
  85288. * page/Performance.cpp:
  85289. (WebCore::Performance::navigation):
  85290. (WebCore::Performance::timing):
  85291. * page/Performance.h:
  85292. * page/Performance.idl:
  85293. * page/Timing.cpp: Added.
  85294. (WebCore::Timing::Timing):
  85295. (WebCore::Timing::frame):
  85296. (WebCore::Timing::disconnectFrame):
  85297. (WebCore::Timing::navigationStart):
  85298. * page/Timing.h: Added.
  85299. (WebCore::Timing::create):
  85300. * page/Timing.idl: Added.
  85301. 2010-07-01 Daniel Cheng <dcheng@chromium.org>
  85302. Reviewed by Jian Li.
  85303. [chromium] Dragging a link triggers an assert when accessing event.dataTransfer.types
  85304. https://bugs.webkit.org/show_bug.cgi?id=41493
  85305. ClipboardChromium::writeURL violates ClipboardChromium's assumption that uriList will always
  85306. be non-empty if url is valid.
  85307. No new tests.
  85308. * platform/chromium/ClipboardChromium.cpp:
  85309. (WebCore::ClipboardChromium::writeURL):
  85310. 2010-07-01 Andreas Kling <andreas.kling@nokia.com>
  85311. Reviewed by Tor Arne Vestbø.
  85312. [Qt] Clamp color stops passed to QGradient to 1.0
  85313. [https://bugs.webkit.org/show_bug.cgi?id=41484
  85314. Fixes an issue where color stops would be silently dropped from radial gradients.
  85315. * platform/graphics/qt/GradientQt.cpp:
  85316. (WebCore::Gradient::platformGradient):
  85317. 2010-07-01 Eric Seidel <eric@webkit.org>
  85318. Reviewed by Adam Barth.
  85319. HTMLTokenizer should ASSERT that it never emits a null character
  85320. https://bugs.webkit.org/show_bug.cgi?id=41448
  85321. No functional change, thus no tests. These ASSERTs would have
  85322. caught the coding error which caused the trouble in bug 41436
  85323. (which was fixed by bug 41439).
  85324. * html/HTMLToken.h:
  85325. (WebCore::HTMLToken::beginStartTag):
  85326. (WebCore::HTMLToken::beginCharacter):
  85327. (WebCore::HTMLToken::beginDOCTYPE):
  85328. (WebCore::HTMLToken::appendToName):
  85329. (WebCore::HTMLToken::appendToComment):
  85330. (WebCore::HTMLToken::appendToAttributeName):
  85331. (WebCore::HTMLToken::appendToAttributeValue):
  85332. (WebCore::HTMLToken::appendToPublicIdentifier):
  85333. (WebCore::HTMLToken::appendToSystemIdentifier):
  85334. 2010-07-01 Andreas Kling <andreas.kling@nokia.com>
  85335. Reviewed by Tor Arne Vestbø.
  85336. Canvas: Don't paint with empty radial gradients
  85337. https://bugs.webkit.org/show_bug.cgi?id=41190
  85338. If a radial gradient has x0==x1 && y0==y1 && r0==r1, don't paint with it.
  85339. * html/canvas/CanvasRenderingContext2D.cpp:
  85340. (WebCore::CanvasRenderingContext2D::fillRect):
  85341. * platform/graphics/Gradient.h:
  85342. (WebCore::Gradient::isZeroSize):
  85343. 2010-07-01 Tony Gentilcore <tonyg@chromium.org>
  85344. Reviewed by Adam Barth.
  85345. Add interface for network platform to pass up timing information
  85346. https://bugs.webkit.org/show_bug.cgi?id=41437
  85347. The Web Timing feature requires the network platform to expose detailed
  85348. timing information for the main resource. This patch adds that data to
  85349. the ResourceResponseBase. Since the 82 bytes of information is only
  85350. needed for the main resource, it is a RefPtr to avoid using the memory
  85351. for other resource types.
  85352. No new tests because no new functionality.
  85353. * GNUmakefile.am:
  85354. * WebCore.gypi:
  85355. * WebCore.pro:
  85356. * WebCore.vcproj/WebCore.vcproj:
  85357. * WebCore.xcodeproj/project.pbxproj:
  85358. * platform/network/ResourceLoadTiming.h: Added.
  85359. (WebCore::ResourceLoadTiming::create):
  85360. (WebCore::ResourceLoadTiming::deepCopy):
  85361. (WebCore::ResourceLoadTiming::operator==):
  85362. (WebCore::ResourceLoadTiming::operator!=):
  85363. (WebCore::ResourceLoadTiming::ResourceLoadTiming):
  85364. * platform/network/ResourceResponseBase.cpp:
  85365. (WebCore::ResourceResponseBase::adopt):
  85366. (WebCore::ResourceResponseBase::copyData):
  85367. (WebCore::ResourceResponseBase::resourceLoadTiming):
  85368. (WebCore::ResourceResponseBase::setResourceLoadTiming):
  85369. (WebCore::ResourceResponseBase::compare):
  85370. * platform/network/ResourceResponseBase.h:
  85371. 2010-07-01 Sheriff Bot <webkit.review.bot@gmail.com>
  85372. Unreviewed, rolling out r62321.
  85373. http://trac.webkit.org/changeset/62321
  85374. https://bugs.webkit.org/show_bug.cgi?id=41494
  85375. Broke the non-win builds. (Requested by dumi on #webkit).
  85376. * dom/ScriptExecutionContext.cpp:
  85377. (WebCore::ScriptExecutionContext::addOpenDatabase):
  85378. (WebCore::ScriptExecutionContext::removeOpenDatabase):
  85379. (WebCore::ScriptExecutionContext::stopDatabases):
  85380. * dom/ScriptExecutionContext.h:
  85381. * storage/Database.cpp:
  85382. (WebCore::Database::openDatabase):
  85383. (WebCore::Database::Database):
  85384. (WebCore::Database::markAsDeletedAndClose):
  85385. (WebCore::ContextRemoveOpenDatabaseTask::create):
  85386. (WebCore::ContextRemoveOpenDatabaseTask::performTask):
  85387. (WebCore::ContextRemoveOpenDatabaseTask::isCleanupTask):
  85388. (WebCore::ContextRemoveOpenDatabaseTask::ContextRemoveOpenDatabaseTask):
  85389. (WebCore::Database::close):
  85390. (WebCore::Database::closeImmediately):
  85391. (WebCore::Database::stop):
  85392. (WebCore::Database::performPolicyChecks):
  85393. * storage/Database.h:
  85394. (WebCore::Database::):
  85395. (WebCore::Database::stopped):
  85396. * storage/DatabaseTask.cpp:
  85397. (WebCore::DatabaseTask::performTask):
  85398. (WebCore::DatabaseOpenTask::DatabaseOpenTask):
  85399. (WebCore::DatabaseOpenTask::doPerformTask):
  85400. (WebCore::DatabaseOpenTask::debugTaskName):
  85401. (WebCore::DatabaseCloseTask::DatabaseCloseTask):
  85402. (WebCore::DatabaseCloseTask::doPerformTask):
  85403. (WebCore::DatabaseCloseTask::debugTaskName):
  85404. (WebCore::DatabaseTransactionTask::DatabaseTransactionTask):
  85405. (WebCore::DatabaseTransactionTask::~DatabaseTransactionTask):
  85406. (WebCore::DatabaseTransactionTask::doPerformTask):
  85407. (WebCore::DatabaseTransactionTask::debugTaskName):
  85408. (WebCore::DatabaseTableNamesTask::DatabaseTableNamesTask):
  85409. (WebCore::DatabaseTableNamesTask::doPerformTask):
  85410. (WebCore::DatabaseTableNamesTask::debugTaskName):
  85411. * storage/DatabaseTask.h:
  85412. (WebCore::DatabaseOpenTask::create):
  85413. (WebCore::DatabaseCloseTask::create):
  85414. (WebCore::DatabaseTransactionTask::create):
  85415. (WebCore::DatabaseTableNamesTask::create):
  85416. * storage/DatabaseThread.cpp:
  85417. (WebCore::DatabaseThread::databaseThread):
  85418. * storage/DatabaseTracker.cpp:
  85419. (WebCore::DatabaseTracker::addOpenDatabase):
  85420. * storage/SQLTransaction.cpp:
  85421. (WebCore::SQLTransaction::executeSQL):
  85422. (WebCore::SQLTransaction::checkAndHandleClosedDatabase):
  85423. 2010-07-01 Xan Lopez <xlopez@igalia.com>
  85424. Reviewed by Gustavo Noronha.
  85425. [GTK] Stop using GdkRegion in 3.x mode
  85426. https://bugs.webkit.org/show_bug.cgi?id=41463
  85427. Make us compile without using GdkRegion, since it's gone from GTK+
  85428. 3.x.
  85429. * platform/graphics/IntRect.h:
  85430. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  85431. (WebCore::GraphicsContext::drawFocusRing):
  85432. * platform/graphics/gtk/FontGtk.cpp:
  85433. (WebCore::cairo_region_shrink):
  85434. (WebCore::Font::drawComplexText):
  85435. * platform/gtk/GtkPluginWidget.cpp:
  85436. (WebCore::GtkPluginWidget::paint):
  85437. * platform/gtk/RenderThemeGtk.h:
  85438. * platform/gtk/ScrollbarGtk.cpp:
  85439. (ScrollbarGtk::paint):
  85440. 2010-06-30 Dumitru Daniliuc <dumi@chromium.org>
  85441. Reviewed by Darin Fisher.
  85442. DB clean up.
  85443. https://bugs.webkit.org/show_bug.cgi?id=41404
  85444. 1. Made all DatabaseTasks internal classes of Database and made
  85445. the Database methods called by those tasks private.
  85446. 2. Removed the Database::stop{ed}() methods.
  85447. 3. Removed the code that kept track of open databases from
  85448. ScriptExecutionContext (no longer needed).
  85449. 4. Made minor changes to Database::closeImmediately() to make it
  85450. possible for DatabaseThread to call that method instead of
  85451. close().
  85452. 5. Minor fix to DatabaseTracker: addOpenDatabase() should call
  85453. OriginQuotaManager::addDatabase() if the origin quota manager
  85454. is not tracking this origin.
  85455. 6. Removed Database::performPolicyChecks(). We already update the
  85456. DB size after each transaction, and we enforce a max size for
  85457. the DB at the beginning of each transaction.
  85458. * dom/ScriptExecutionContext.cpp:
  85459. (WebCore::ScriptExecutionContext::stopDatabases):
  85460. * dom/ScriptExecutionContext.h:
  85461. (WebCore::ScriptExecutionContext::hasOpenDatabases):
  85462. * storage/Database.cpp:
  85463. (WebCore::Database::openDatabase):
  85464. (WebCore::Database::Database):
  85465. (WebCore::Database::markAsDeletedAndClose):
  85466. (WebCore::Database::close):
  85467. (WebCore::Database::closeImmediately):
  85468. * storage/Database.h:
  85469. * storage/DatabaseTask.cpp:
  85470. (WebCore::DatabaseTask::performTask):
  85471. (WebCore::Database::DatabaseOpenTask::DatabaseOpenTask):
  85472. (WebCore::Database::DatabaseOpenTask::doPerformTask):
  85473. (WebCore::Database::DatabaseOpenTask::debugTaskName):
  85474. (WebCore::Database::DatabaseCloseTask::DatabaseCloseTask):
  85475. (WebCore::Database::DatabaseCloseTask::doPerformTask):
  85476. (WebCore::Database::DatabaseCloseTask::debugTaskName):
  85477. (WebCore::Database::DatabaseTransactionTask::DatabaseTransactionTask):
  85478. (WebCore::Database::DatabaseTransactionTask::doPerformTask):
  85479. (WebCore::Database::DatabaseTransactionTask::debugTaskName):
  85480. (WebCore::Database::DatabaseTableNamesTask::DatabaseTableNamesTask):
  85481. (WebCore::Database::DatabaseTableNamesTask::doPerformTask):
  85482. (WebCore::Database::DatabaseTableNamesTask::debugTaskName):
  85483. * storage/DatabaseTask.h:
  85484. (WebCore::Database::DatabaseOpenTask::create):
  85485. (WebCore::Database::DatabaseCloseTask::create):
  85486. (WebCore::Database::DatabaseTransactionTask::create):
  85487. (WebCore::Database::DatabaseTableNamesTask::create):
  85488. * storage/DatabaseThread.cpp:
  85489. (WebCore::DatabaseThread::databaseThread):
  85490. * storage/DatabaseTracker.cpp:
  85491. (WebCore::DatabaseTracker::addOpenDatabase):
  85492. * storage/SQLTransaction.cpp:
  85493. (WebCore::SQLTransaction::executeSQL):
  85494. (WebCore::SQLTransaction::checkAndHandleClosedDatabase):
  85495. 2010-07-01 Kent Tamura <tkent@chromium.org>
  85496. Reviewed by Darin Fisher.
  85497. [Chromium] Support indeterminate checkbox for Windows
  85498. https://bugs.webkit.org/show_bug.cgi?id=41444
  85499. * rendering/RenderThemeChromiumWin.cpp:
  85500. (WebCore::RenderThemeChromiumWin::determineState):
  85501. Check isIndeterminate() and set an appropriate flag value.
  85502. 2010-07-01 Alexey Proskuryakov <ap@apple.com>
  85503. Reviewed by Dan Bernstein.
  85504. https://bugs.webkit.org/show_bug.cgi?id=41488
  85505. <rdar://problem/7487420> Crash in SubresourceLoader::create when load is initiated from plug-in destructor
  85506. Test: plugins/js-from-destroy.html
  85507. * loader/SubresourceLoader.cpp: (WebCore::SubresourceLoader::create): Null check active
  85508. document loader.
  85509. 2010-07-01 Andy Estes <aestes@apple.com>
  85510. Reviewed by Darin Adler.
  85511. <rdar://problem/8113003> Correctly fire beforeload events for images
  85512. added to the DOM using .innerHTML.
  85513. https://bugs.webkit.org/show_bug.cgi?id=40919
  85514. Test: fast/dom/beforeload/image-before-load-innerHTML.html
  85515. * html/LegacyHTMLDocumentParser.cpp:
  85516. (WebCore::LegacyHTMLDocumentParser::write): Do not fire synchronous
  85517. image beforeload events immediately after parsing a document fragment.
  85518. Let the events fire later, giving the fragment time to potentially be
  85519. inserted into the document.
  85520. 2010-07-01 Andreas Kling <andreas.kling@nokia.com>
  85521. Reviewed by Tor Arne Vestbø.
  85522. Canvas: bezierCurveTo() and quadraticCurveTo() must ensure subpaths
  85523. https://bugs.webkit.org/show_bug.cgi?id=41192
  85524. If the current path is empty, bezierCurveTo() and quadraticCurveTo() will now
  85525. move to the (first) control point before adding the curve.
  85526. Spec links:
  85527. http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-beziercurveto
  85528. http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-quadraticcurveto
  85529. * html/canvas/CanvasRenderingContext2D.cpp:
  85530. (WebCore::CanvasRenderingContext2D::quadraticCurveTo):
  85531. (WebCore::CanvasRenderingContext2D::bezierCurveTo):
  85532. 2010-07-01 Andreas Kling <andreas.kling@nokia.com>
  85533. Reviewed by Darin Adler.
  85534. Canvas element cannot have negative width or height (HTML5 spec 4.8.11)
  85535. https://bugs.webkit.org/show_bug.cgi?id=39149
  85536. If assigned a negative value, it should default to 300 for width and 150 for height.
  85537. Spec link:
  85538. http://www.whatwg.org/specs/web-apps/current-work/#attr-canvas-width
  85539. Test: fast/canvas/canvas-negative-size.html
  85540. * html/HTMLCanvasElement.cpp:
  85541. (WebCore::HTMLCanvasElement::reset):
  85542. 2010-07-01 Darin Adler <darin@apple.com>
  85543. Reviewed by Steve Falkenburg.
  85544. Turn on adoptRef assertion for TreeShared.
  85545. * platform/TreeShared.h: Remove LOOSE_TREE_SHARED and all the ifdefs.
  85546. Actually, I used LOOSE_REF_COUNTED by accident in a few places, but
  85547. removing them all now.
  85548. * rendering/ShadowElement.cpp:
  85549. (WebCore::ShadowBlockElement::create): Added adoptRef. This was a
  85550. storage leak before, probably recently introduced r61324.
  85551. (WebCore::ShadowInputElement::create): Ditto.
  85552. 2010-07-01 Xan Lopez <xlopez@igalia.com>
  85553. Reviewed by Gustavo Noronha.
  85554. Only include the geolocation IDL in the GObject DOM bindings set
  85555. if geolocation is enabled.
  85556. * GNUmakefile.am:
  85557. 2010-07-01 Timothy Hatcher <timothy@apple.com>
  85558. Provide a WebView preference to disable DNS prefetching.
  85559. https://bugs.webkit.org/show_bug.cgi?id=28825
  85560. rdar://problem/7181249
  85561. Reviewed by Darin Adler.
  85562. * WebCore.base.exp: Added Settings::setDNSPrefetchingEnabled.
  85563. * dom/Document.cpp:
  85564. (WebCore::Document::initDNSPrefetch): Check settings->dnsPrefetchingEnabled().
  85565. * page/Settings.cpp:
  85566. (WebCore::Settings::Settings): Set m_dnsPrefetchingEnabled to true.
  85567. (WebCore::Settings::setDNSPrefetchingEnabled): Added. Set m_dnsPrefetchingEnabled.
  85568. * page/Settings.h:
  85569. (WebCore::Settings::dnsPrefetchingEnabled): Added. Return m_dnsPrefetchingEnabled.
  85570. 2010-07-01 Simon Fraser <simon.fraser@apple.com>
  85571. Reviewed by Darin Adler.
  85572. Get accelerated compositing working with webkit2
  85573. https://bugs.webkit.org/show_bug.cgi?id=41084
  85574. Step 2: add a method, syncCompositingStateForThisLayerOnly(), to GraphicsLayer to commit
  85575. batched changes non-recursively. This allows us to use GraphicsLayer in places where we
  85576. don't want to kick off a recursive commit of the entire tree.
  85577. * platform/graphics/GraphicsLayer.h:
  85578. (WebCore::GraphicsLayer::syncCompositingStateForThisLayerOnly):
  85579. * platform/graphics/mac/GraphicsLayerCA.h:
  85580. * platform/graphics/mac/GraphicsLayerCA.mm:
  85581. (WebCore::GraphicsLayerCA::syncCompositingStateForThisLayerOnly):
  85582. * WebCore.AcceleratedCompositing.exp: Export the new method for use in WebKit2.
  85583. 2010-07-01 Simon Fraser <simon.fraser@apple.com>
  85584. Reviewed by Sam Weinig.
  85585. Get accelerated compositing working with webkit2
  85586. https://bugs.webkit.org/show_bug.cgi?id=41084
  85587. Step 1: add a new .exp file for WebCore, which exports symbols only when USE(ACCELERATED_COMPOSITING)
  85588. is defined.
  85589. Also export WebCore::FloatSize::FloatSize(WebCore::IntSize const&) from WebCore.
  85590. * DerivedSources.make:
  85591. * WebCore.AcceleratedCompositing.exp: Added.
  85592. * WebCore.base.exp:
  85593. * WebCore.xcodeproj/project.pbxproj:
  85594. 2010-07-01 Alexey Proskuryakov <ap@apple.com>
  85595. Reviewed by Darin Adler.
  85596. <rdar://problem/8148656> <https://bugs.webkit.org/show_bug.cgi?id=41431>
  85597. REGRESSION (r49411): Various crashes due to JavaScript execution during plug-in destruction
  85598. Test: plugins/write-xssauditor-from-destroy.html
  85599. Fix specific known cases that also crash in same process case. I don't know if there is
  85600. any rule for when documentLoader should be checked for being null, it looks like a mess.
  85601. * loader/FrameLoader.cpp:
  85602. (WebCore::FrameLoader::referrer):
  85603. * page/XSSAuditor.cpp:
  85604. (WebCore::XSSAuditor::findInRequest):
  85605. 2010-07-01 Andreas Kling <andreas.kling@nokia.com>
  85606. Reviewed by Darin Adler.
  85607. The HTML5 canvas 2d.drawImage.zerocanvas test does not pass
  85608. https://bugs.webkit.org/show_bug.cgi?id=40271
  85609. Throw INVALID_STATE_ERR when attempting to draw a canvas with zero width or height.
  85610. Spec link:
  85611. http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-drawimage
  85612. * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
  85613. (WebCore::JSCanvasRenderingContext2D::drawImage): Call setDOMException after drawImage(canvas, x, y)
  85614. * html/canvas/CanvasRenderingContext2D.cpp:
  85615. (WebCore::CanvasRenderingContext2D::drawImage):
  85616. 2010-07-01 Andreas Kling <andreas.kling@nokia.com>
  85617. Reviewed by Oliver Hunt.
  85618. [Qt] Canvas: clip() should use non-zero winding rule
  85619. https://bugs.webkit.org/show_bug.cgi?id=41466
  85620. Use non-zero winding number rule when clipping a GraphicsContext from canvas.
  85621. Fixes appearance of the "pill" in the web inspector.
  85622. * platform/graphics/qt/GraphicsContextQt.cpp:
  85623. (WebCore::GraphicsContext::canvasClip):
  85624. 2010-07-01 Sheriff Bot <webkit.review.bot@gmail.com>
  85625. Unreviewed, rolling out r62246.
  85626. http://trac.webkit.org/changeset/62246
  85627. https://bugs.webkit.org/show_bug.cgi?id=41470
  85628. "Worker tests are broken in Chromium" (Requested by yurys on
  85629. #webkit).
  85630. * bindings/v8/ScriptController.cpp:
  85631. (WebCore::ScriptController::processingUserGesture):
  85632. * bindings/v8/V8AbstractEventListener.cpp:
  85633. (WebCore::V8AbstractEventListener::invokeEventHandler):
  85634. * bindings/v8/V8HiddenPropertyName.h:
  85635. * bindings/v8/custom/V8DOMWindowCustom.cpp:
  85636. (WebCore::V8DOMWindow::eventAccessorGetter):
  85637. (WebCore::V8DOMWindow::eventAccessorSetter):
  85638. 2010-07-01 Andreas Kling <andreas.kling@nokia.com>
  85639. Reviewed by Tor Arne Vestbø.
  85640. Canvas: Exception erroneously thrown for drawImage() when image.complete=false
  85641. https://bugs.webkit.org/show_bug.cgi?id=33968
  85642. Do nothing in drawImage() if called with an image whose 'complete'
  85643. attribute is false, or a video whose readyState is either HAVE_NOTHING
  85644. or HAVE_METADATA.
  85645. Spec link:
  85646. http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-drawimage
  85647. Test: fast/canvas/canvas-drawImage-incomplete.html
  85648. * html/canvas/CanvasRenderingContext2D.cpp:
  85649. (WebCore::CanvasRenderingContext2D::drawImage):
  85650. 2010-07-01 Justin Schuh <jschuh@chromium.org>
  85651. Reviewed by Dan Bernstein.
  85652. Prevent crash on counter destruction
  85653. https://bugs.webkit.org/show_bug.cgi?id=40032
  85654. Added counter destruction to RenderWidget::destroy()
  85655. Test: fast/css/counters/destroy-counter-crash.html
  85656. * rendering/RenderWidget.cpp:
  85657. (WebCore::RenderWidget::destroy):
  85658. 2010-07-01 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  85659. Unreviewed build fix after r62215.
  85660. No new functionality, so no new tests.
  85661. * CMakeLists.txt: Add missing files and re-sort.
  85662. 2010-07-01 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
  85663. Reviewed by Kenneth Rohde Christiansen.
  85664. [Qt] Remove an unneeded assert.
  85665. This assert is triggered for example while showing the falling leaves demo.
  85666. GraphicsLayerQtImpl::toGraphicsLayerQtImpl asserts that its input
  85667. pointer is null. Looking at the uses of this method it seems like
  85668. it is expected to return null if a null pointer is given to it.
  85669. * platform/graphics/qt/GraphicsLayerQt.cpp:
  85670. (WebCore::toGraphicsLayerQtImpl):
  85671. 2010-06-16 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
  85672. Reviewed by Simon Hausmann.
  85673. [Qt] Fix qmake vcproj generation for QtWebKit.
  85674. qmake use TARGET=/LIBS+= -lTARGET to create dependencies
  85675. between projects in a subdir template.
  85676. Since when compiling outside of Qt we hijack the target name of
  85677. QtWebKit to add the configuration and version suffix to the binary
  85678. filename, qmake can't establish the WebCore project as a dependency
  85679. to QtTestBrowser.
  85680. This patch makes sure that the target is not hijacked on the
  85681. first of the three passes where the dependencies are determined.
  85682. * WebCore.pro:
  85683. 2010-07-01 Nikolas Zimmermann <nzimmermann@rim.com>
  85684. Reviewed by Dirk Schulze.
  85685. SVGRenderStyle::diff() is missing
  85686. https://bugs.webkit.org/show_bug.cgi?id=41455
  85687. Don't just return StyleDifferenceLayout when two SVGRenderStyle objects differ.
  85688. Figure out when to repaint, and as last resort do a relayout.
  85689. Lively Kernel doesn't do any relayouts anymore, same for lots of demos in the IE9 testcenter.
  85690. * rendering/style/RenderStyle.cpp:
  85691. (WebCore::RenderStyle::diff):
  85692. * rendering/style/SVGRenderStyle.cpp:
  85693. (WebCore::SVGRenderStyle::diff):
  85694. * rendering/style/SVGRenderStyle.h:
  85695. 2010-07-01 Antti Koivisto <koivisto@iki.fi>
  85696. Revert accidental commit.
  85697. * platform/network/qt/ResourceRequestQt.cpp:
  85698. (WebCore::ResourceRequest::toNetworkRequest):
  85699. 2010-07-01 Patrick Gansterer <paroga@paroga.com>
  85700. Reviewed by Nikolas Zimmermann.
  85701. Buildfix for !ENABLE(SVG_FOREIGN_OBJECT) after r62196.
  85702. https://bugs.webkit.org/show_bug.cgi?id=40984
  85703. * rendering/SVGRenderSupport.cpp:
  85704. (WebCore::SVGRenderSupport::finishRenderSVGContent):
  85705. 2010-07-04 Patrick Gansterer <paroga@paroga.com>
  85706. Reviewed by Dirk Schulze.
  85707. Buildfix for !ENABLE(FILTERS) after r62238.
  85708. https://bugs.webkit.org/show_bug.cgi?id=41456
  85709. * rendering/SVGRenderSupport.cpp:
  85710. (WebCore::SVGRenderSupport::prepareToRenderSVGContent):
  85711. 2010-07-01 MORITA Hajime <morrita@google.com>
  85712. Unreviewed build fix.
  85713. * rendering/RenderInputSpeech.cpp:
  85714. (WebCore::RenderInputSpeech::paintInputFieldSpeechButton):
  85715. * rendering/RenderInputSpeech.h:
  85716. * rendering/RenderTheme.cpp:
  85717. (WebCore::RenderTheme::paintInputFieldSpeechButton):
  85718. * rendering/RenderTheme.h:
  85719. 2010-07-01 Satish Sampath <satish@chromium.org>
  85720. Reviewed by Kent Tamura.
  85721. Rendering the speech button in input elements.
  85722. https://bugs.webkit.org/show_bug.cgi?id=40984
  85723. The button currently has only one state and rendered as an image on all platforms. Subsequent
  85724. patches will add user input handling and more states + rendering code to the button. The
  85725. button's appearance can be customized by individual ports in their RenderTheme implementation
  85726. if required.
  85727. Tests: platform/mac/fast/forms/input-appearance-numberandspeech.html
  85728. platform/mac/fast/forms/input-appearance-searchandspeech.html
  85729. platform/mac/fast/forms/input-appearance-speechbutton.html
  85730. * GNUmakefile.am:
  85731. * Resources/inputSpeech.png: Added.
  85732. * Resources/inputSpeech.tiff: Added. Used by the Mac implementation.
  85733. * WebCore.gypi:
  85734. * WebCore.pro:
  85735. * WebCore.qrc:
  85736. * WebCore.xcodeproj/project.pbxproj:
  85737. * platform/graphics/qt/ImageQt.cpp:
  85738. (loadResourcePixmap): Load the speech button images for Qt port.
  85739. * rendering/RenderInputSpeech.cpp: Added.
  85740. (WebCore::RenderInputSpeech::adjustInputFieldSpeechButtonStyle): Sets the button's dimensions.
  85741. (WebCore::RenderInputSpeech::paintInputFieldSpeechButton):
  85742. * rendering/RenderInputSpeech.h: Added.
  85743. * rendering/RenderTextControlSingleLine.cpp:
  85744. (WebCore::RenderTextControlSingleLine::layout):
  85745. (WebCore::RenderTextControlSingleLine::forwardEvent):
  85746. (WebCore::RenderTextControlSingleLine::createSubtreeIfNeeded): Create the speech button.
  85747. (WebCore::RenderTextControlSingleLine::createInnerBlockStyle):
  85748. * rendering/RenderTheme.cpp:
  85749. (WebCore::RenderTheme::adjustStyle):
  85750. (WebCore::RenderTheme::paint):
  85751. (WebCore::RenderTheme::adjustInputFieldSpeechButtonStyle):
  85752. (WebCore::RenderTheme::paintInputFieldSpeechButton):
  85753. * rendering/RenderTheme.h:
  85754. * rendering/RenderThemeMac.mm:
  85755. (WebCore::RenderThemeMac::paintSearchFieldCancelButton): Get cancel button to render to the left of
  85756. speech button when enabled.
  85757. 2010-07-01 Mario Sanchez Prada <msanchez@igalia.com>
  85758. Reviewed by Xan Lopez.
  85759. [GTK] Extra nullcheck needed at SelectionControllerGtk.cpp
  85760. https://bugs.webkit.org/show_bug.cgi?id=41447
  85761. Extra null check added.
  85762. * editing/gtk/SelectionControllerGtk.cpp:
  85763. (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
  85764. 2010-07-01 Yury Semikhatsky <yurys@chromium.org>
  85765. Reviewed by Adam Barth.
  85766. [v8] Web Inspector: inspected page crashes on attempt to change iframe's src attribute
  85767. https://bugs.webkit.org/show_bug.cgi?id=41350
  85768. Tests: fast/events/popup-blocked-from-fake-user-gesture.html
  85769. http/tests/inspector/change-iframe-src.html
  85770. * bindings/v8/ScriptController.cpp:
  85771. (WebCore::ScriptController::processingUserGesture): use V8Proxy from the ScriptController instead of one
  85772. from the call stack. Get event directly from hidden property to avoid unnecessary checks.
  85773. * bindings/v8/V8AbstractEventListener.cpp:
  85774. (WebCore::V8AbstractEventListener::invokeEventHandler):
  85775. * bindings/v8/V8HiddenPropertyName.h:
  85776. * bindings/v8/custom/V8DOMWindowCustom.cpp:
  85777. (WebCore::V8DOMWindow::eventAccessorGetter):
  85778. (WebCore::V8DOMWindow::eventAccessorSetter):
  85779. 2010-07-01 Nikolas Zimmermann <nzimmermann@rim.com>
  85780. Reviewed by Dirk Schulze.
  85781. RenderSVGContainer/RenderSVGRoot report wrong strokeBoundingBox()
  85782. https://bugs.webkit.org/show_bug.cgi?id=41450
  85783. strokeBoundingBox() was reporting the repaintRectInLocalCoordinates() for children of a container,
  85784. instead of the actual strokeBoundingBox(). Only visible in WebInspector when looking at a container
  85785. which has a resource applied and contains a children which also has a resource applied.
  85786. Doesn't affect any test results.
  85787. * rendering/RenderSVGContainer.cpp:
  85788. (WebCore::RenderSVGContainer::objectBoundingBox):
  85789. (WebCore::RenderSVGContainer::strokeBoundingBox):
  85790. (WebCore::RenderSVGContainer::repaintRectInLocalCoordinates):
  85791. * rendering/RenderSVGRoot.cpp:
  85792. (WebCore::RenderSVGRoot::objectBoundingBox): Deinlined this functions, it's virtual so there's no gain.
  85793. (WebCore::RenderSVGRoot::strokeBoundingBox): Ditto.
  85794. (WebCore::RenderSVGRoot::repaintRectInLocalCoordinates):
  85795. * rendering/RenderSVGRoot.h:
  85796. * rendering/SVGRenderSupport.cpp:
  85797. (WebCore::SVGRenderSupport::computeContainerBoundingBox):
  85798. * rendering/SVGRenderSupport.h: Add enum controlling the mode of container bounding box mode calculation.
  85799. 2010-07-01 Zoltan Herczeg <zherczeg@webkit.org>
  85800. Reviewed by Nikolas Zimmermann.
  85801. Implementing feConvolveMatrix svg filter
  85802. https://bugs.webkit.org/show_bug.cgi?id=5861
  85803. The implementation is optimized for speed, and uses
  85804. multiple algorithms for different parts of the image.
  85805. See SVGFEConvolveMatrixElement.cpp for a detailed
  85806. description.
  85807. * svg/SVGFEConvolveMatrixElement.cpp:
  85808. (WebCore::SVGFEConvolveMatrixElement::build):
  85809. * svg/graphics/filters/SVGFEConvolveMatrix.cpp:
  85810. (WebCore::clampRGBAValue):
  85811. (WebCore::FEConvolveMatrix::fastSetInteriorPixels):
  85812. (WebCore::FEConvolveMatrix::getPixelValue):
  85813. (WebCore::FEConvolveMatrix::fastSetOuterPixels):
  85814. (WebCore::FEConvolveMatrix::setInteriorPixels):
  85815. (WebCore::FEConvolveMatrix::setOuterPixels):
  85816. (WebCore::FEConvolveMatrix::apply):
  85817. * svg/graphics/filters/SVGFEConvolveMatrix.h:
  85818. (WebCore::FEConvolveMatrix::uniteChildEffectSubregions):
  85819. 2010-07-01 Adam Barth <abarth@webkit.org>
  85820. Reviewed by Eric Seidel.
  85821. Abstract 'a'-'z' checks into a function
  85822. https://bugs.webkit.org/show_bug.cgi?id=41438
  85823. Hopefully this version is more readable.
  85824. * html/HTMLTokenizer.cpp:
  85825. (WebCore::HTMLTokenizer::nextToken):
  85826. 2010-07-01 Adam Barth <abarth@webkit.org>
  85827. Reviewed by Eric Seidel.
  85828. Parameter names in frame src URLs parsed incorrectly if resembles HTML entity code followed by underscore
  85829. https://bugs.webkit.org/show_bug.cgi?id=41345
  85830. Apparently whether an HTML entity requires a trailing semicolon varies
  85831. depending on the entity. The full table is in the spec:
  85832. http://www.whatwg.org/specs/web-apps/current-work/multipage/named-character-references.html#named-character-references
  85833. I believe branch added in this patch is accurate. At some point, I'll
  85834. add a full test suite for all the named entities.
  85835. * html/HTMLEntityParser.cpp:
  85836. (WebCore::consumeHTMLEntity):
  85837. 2010-07-01 Eric Seidel <eric@webkit.org>
  85838. Unreviewed. Fix paste-o in Gtk build file.
  85839. Split out HTMLFormattingElementList into its own file
  85840. https://bugs.webkit.org/show_bug.cgi?id=41440
  85841. * GNUmakefile.am:
  85842. 2010-07-01 Nikolas Zimmermann <nzimmermann@rim.com>
  85843. Reviewed by Eric Seidel & Dirk Schulze.
  85844. Performance regression for setting content of <text> in SVG
  85845. https://bugs.webkit.org/show_bug.cgi?id=36564
  85846. Dramatically reducing the number of repaintRectInLocalCoordinates() calls needed while painting.
  85847. Do not pass the repaintRect to prepareToRenderSVGContent, only calculate it if opacity < 1 or -webkit-svg-shadow is set.
  85848. Most noticeable is that RenderSVGRoot had to visit all children, before actually painting, just to calculate the repaint rect.
  85849. And as RenderSVGRoot never carries shadow or opacity it was completly useless.
  85850. RenderSVGContainer also called repaintRectInLocalCoordinates, but the result is only needed when painting outlines, which is a rare case.
  85851. These modifications fix the performance regression and the number of repaintRectInLocalCoordinate calls for the complex example in
  85852. the bug report with 500 runs shrinks from 1.7 million calls to less than 105.000.
  85853. 50 runs without the patch: ~ 520.8ms
  85854. 50 runs with the patch : ~ 501.8ms
  85855. The test calls setTimeout(0) 50 times, that already accounts for the 500ms. So setting the content of a <text>
  85856. element withs clippers applied, is very cheap now.
  85857. Also remove the need to pass in a filter argument to prepareToRenderSVGContent/finishRenderSVGContent, it can easily be grabbed
  85858. of the cache - just like all other resources are handled, simplifying the code.
  85859. * rendering/RenderPath.cpp:
  85860. (WebCore::RenderPath::paint):
  85861. * rendering/RenderSVGContainer.cpp:
  85862. (WebCore::RenderSVGContainer::paint):
  85863. (WebCore::RenderSVGContainer::repaintRectInLocalCoordinates):
  85864. * rendering/RenderSVGImage.cpp:
  85865. (WebCore::RenderSVGImage::paint):
  85866. * rendering/RenderSVGRoot.cpp:
  85867. (WebCore::RenderSVGRoot::paint):
  85868. * rendering/SVGInlineFlowBox.cpp:
  85869. (WebCore::SVGInlineFlowBox::paint):
  85870. * rendering/SVGRenderSupport.cpp:
  85871. (WebCore::SVGRenderSupport::prepareToRenderSVGContent):
  85872. (WebCore::SVGRenderSupport::finishRenderSVGContent):
  85873. * rendering/SVGRenderSupport.h:
  85874. * rendering/SVGRootInlineBox.cpp:
  85875. (WebCore::SVGRootInlineBox::paint):
  85876. 2010-07-01 Eric Seidel <eric@webkit.org>
  85877. Reviewed by Adam Barth.
  85878. Split out HTMLFormattingElementList into its own file
  85879. https://bugs.webkit.org/show_bug.cgi?id=41440
  85880. No functional changes, thus no tests.
  85881. * Android.mk:
  85882. * CMakeLists.txt:
  85883. * GNUmakefile.am:
  85884. * WebCore.gypi:
  85885. * WebCore.pro:
  85886. * WebCore.vcproj/WebCore.vcproj:
  85887. * WebCore.xcodeproj/project.pbxproj:
  85888. * html/HTMLTreeBuilder.cpp:
  85889. (WebCore::HTMLTreeBuilder::processEndTag):
  85890. (WebCore::HTMLTreeBuilder::indexOfFirstUnopenFormattingElement):
  85891. (WebCore::HTMLTreeBuilder::reconstructTheActiveFormattingElements):
  85892. * html/HTMLTreeBuilder.h:
  85893. 2010-07-01 Adam Barth <abarth@webkit.org>
  85894. Reviewed by Eric Seidel.
  85895. BogusCommentState should come in from the cold
  85896. https://bugs.webkit.org/show_bug.cgi?id=41439
  85897. The BogusCommentState has always been wrong. The proximate issue is
  85898. that it didn't handle resuming correctly when parsing a partial input
  85899. stream. Now that we have EOF working properly, we can actually
  85900. implement this state correctly.
  85901. We need to distinguish when we enter this state from when we continue
  85902. in this state. We could do that with a branch for each character, but
  85903. it seemed easier to split the state in two, even though that leaves us
  85904. with one more state in our tokenizer than we have in the HTML5 spec.
  85905. * html/HTMLTokenizer.cpp:
  85906. (WebCore::HTMLTokenizer::nextToken):
  85907. * html/HTMLTokenizer.h:
  85908. (WebCore::HTMLTokenizer::):
  85909. 2010-06-30 Adam Barth <abarth@webkit.org>
  85910. Reviewed by Eric Seidel.
  85911. HTMLTokenizer's whitespace checks are very redundant
  85912. https://bugs.webkit.org/show_bug.cgi?id=41434
  85913. This patch adds isTokenizerWhitespace, which replaces a lot of
  85914. redundant logic in nextToken.
  85915. * html/HTMLTokenizer.cpp:
  85916. (WebCore::HTMLTokenizer::nextToken):
  85917. 2010-06-30 Andreas Kling <andreas.kling@nokia.com>
  85918. Reviewed by Kenneth Rohde Christiansen.
  85919. [Qt] Crash when uploading document to Google Docs
  85920. https://bugs.webkit.org/show_bug.cgi?id=40795
  85921. Fix bug where the local file wasn't opened (for POSTing)
  85922. if it were the first element in the form.
  85923. * platform/network/qt/QNetworkReplyHandler.cpp:
  85924. (WebCore::FormDataIODevice::FormDataIODevice):
  85925. (WebCore::FormDataIODevice::moveToNextElement):
  85926. (WebCore::FormDataIODevice::openFileForCurrentElement):
  85927. * platform/network/qt/QNetworkReplyHandler.h:
  85928. 2010-06-30 Eric Seidel <eric@webkit.org>
  85929. Reviewed by Adam Barth.
  85930. Implement generateImpliedEndTags and deploy to steps which were blocked on it
  85931. https://bugs.webkit.org/show_bug.cgi?id=41432
  85932. This fixes one subtest in html5lib/runner.html and positively
  85933. effects a couple others.
  85934. More code sharing will be needed here. For the moment
  85935. we're using copy/paste code, but that will soon be shared.
  85936. * html/HTMLTreeBuilder.cpp:
  85937. (WebCore::HTMLTreeBuilder::processEndTag):
  85938. (WebCore::HTMLTreeBuilder::generateImpliedEndTagsWithExclusion):
  85939. (WebCore::HTMLTreeBuilder::generateImpliedEndTags):
  85940. * html/HTMLTreeBuilder.h:
  85941. 2010-06-30 Csaba Osztrogonác <ossy@webkit.org>
  85942. Unreviewed buildfix after r62196 and r62214.
  85943. * html/HTMLElementStack.cpp: Put !ENABLE(SVG) guard instead of
  85944. !ENABLE(SVG_FOREIGN_OBJECT) around include of SVGNames.h.
  85945. 2010-06-30 Sam Weinig <sam@webkit.org>
  85946. Really fix the windows build.
  85947. * bindings/js/JSBindingsAllInOne.cpp:
  85948. 2010-06-30 Sam Weinig <sam@webkit.org>
  85949. Another Chromium build fix.
  85950. * page/DOMWindow.idl:
  85951. 2010-06-30 Sam Weinig <sam@webkit.org>
  85952. Fix Chromium build.
  85953. * WebCore.gyp/WebCore.gyp:
  85954. 2010-06-30 Sam Weinig <sam@webkit.org>
  85955. Fix Windows build.
  85956. * bindings/js/JSBindingsAllInOne.cpp:
  85957. 2010-06-30 Sam Weinig <sam@webkit.org>
  85958. Fix Gtk build.
  85959. * GNUmakefile.am:
  85960. 2010-06-29 Sam Weinig <sam@webkit.org>
  85961. Reviewed by Dan Bernstein.
  85962. Patch for https://bugs.webkit.org/show_bug.cgi?id=41146
  85963. <rdar://problem/8126069>
  85964. Implement the .dataset DOM property
  85965. Tests: fast/dom/dataset-xhtml.xhtml
  85966. fast/dom/dataset.html
  85967. * DerivedSources.cpp:
  85968. * DerivedSources.make:
  85969. * GNUmakefile.am:
  85970. * WebCore.gypi:
  85971. * WebCore.pro:
  85972. * WebCore.vcproj/WebCore.vcproj:
  85973. * WebCore.xcodeproj/project.pbxproj:
  85974. * bindings/js/JSDOMStringMapCustom.cpp: Added.
  85975. (WebCore::JSDOMStringMap::canGetItemsForName):
  85976. (WebCore::JSDOMStringMap::nameGetter):
  85977. (WebCore::JSDOMStringMap::getOwnPropertyNames):
  85978. (WebCore::JSDOMStringMap::deleteProperty):
  85979. (WebCore::JSDOMStringMap::putDelegate):
  85980. * bindings/js/JSDOMStringMapCustom.h: Added.
  85981. * dom/DOMStringMap.cpp: Added.
  85982. (WebCore::DOMStringMap::~DOMStringMap):
  85983. * dom/DOMStringMap.h: Added.
  85984. (WebCore::DOMStringMap::DOMStringMap):
  85985. * dom/DOMStringMap.idl: Added.
  85986. * dom/DatasetDOMStringMap.cpp: Added.
  85987. (WebCore::isValidAttributeName):
  85988. (WebCore::convertAttributeNameToPropertyName):
  85989. (WebCore::propertyNameMatchesAttributeName):
  85990. (WebCore::isValidPropertyName):
  85991. (WebCore::convertPropertyNameToAttributeName):
  85992. (WebCore::DatasetDOMStringMap::ref):
  85993. (WebCore::DatasetDOMStringMap::deref):
  85994. (WebCore::DatasetDOMStringMap::getNames):
  85995. (WebCore::DatasetDOMStringMap::item):
  85996. (WebCore::DatasetDOMStringMap::contains):
  85997. (WebCore::DatasetDOMStringMap::setItem):
  85998. (WebCore::DatasetDOMStringMap::deleteItem):
  85999. * dom/DatasetDOMStringMap.h: Added.
  86000. (WebCore::DatasetDOMStringMap::create):
  86001. (WebCore::DatasetDOMStringMap::DatasetDOMStringMap):
  86002. * dom/Element.cpp:
  86003. (WebCore::Element::dataset):
  86004. * dom/Element.h:
  86005. * dom/Element.idl:
  86006. * dom/ElementRareData.h:
  86007. * page/DOMWindow.idl:
  86008. 2010-06-30 Darin Adler <darin@apple.com>
  86009. More Qt build fix.
  86010. * html/HTMLElementStack.cpp: Put !ENABLE(SVG_FOREIGN_OBJECT) around
  86011. include of SVGNames.h too.
  86012. 2010-06-30 Darin Adler <darin@apple.com>
  86013. Reviewed by Adam Barth.
  86014. Add assertion, off by default, for when you forget to do adoptRef
  86015. https://bugs.webkit.org/show_bug.cgi?id=41422
  86016. * platform/TreeShared.h: Added code to require adoption and assert if
  86017. you don't call adoptRef. For now, it is turned off because of the
  86018. LOOSE_TREE_SHARED define in this header. Later we can turn it on
  86019. once we get everything working without asserting. Note also that it
  86020. only works for objects with an initial reference count of 1.
  86021. 2010-06-30 Patrick Gansterer <paroga@paroga.com>
  86022. Reviewed by Darin Adler.
  86023. Buildfix for !ENABLE(SVG_FOREIGN_OBJECT) after r62196.
  86024. https://bugs.webkit.org/show_bug.cgi?id=41429
  86025. * html/HTMLElementStack.cpp:
  86026. 2010-06-30 Eric Seidel <eric@webkit.org>
  86027. Reviewed by Adam Barth.
  86028. Add new popUntil(tagName) function and deploy
  86029. https://bugs.webkit.org/show_bug.cgi?id=41405
  86030. Add a new popUntil function to share some common code
  86031. between states. There is more code to share here, but this
  86032. is a start.
  86033. I also filled in a couple similar states to these with the
  86034. hope of sharing more code, but decided to wait for a later
  86035. patch.
  86036. No test changes, since this code doesn't do enough yet to
  86037. pass any more subtests. Lack of generateImpliedEndTags is the main
  86038. blocking issue.
  86039. * html/HTMLElementStack.cpp:
  86040. (WebCore::HTMLElementStack::popUntil):
  86041. * html/HTMLElementStack.h:
  86042. * html/HTMLTreeBuilder.cpp:
  86043. (WebCore::HTMLTreeBuilder::processEndTag):
  86044. 2010-06-30 Xan Lopez <xlopez@igalia.com>
  86045. Reviewed by Gustavo Noronha.
  86046. [GTK] Unit test for DOM insertion methods
  86047. https://bugs.webkit.org/show_bug.cgi?id=40495
  86048. Fix typo in custom function detection method.
  86049. * bindings/scripts/CodeGeneratorGObject.pm:
  86050. 2010-06-30 Eric Seidel <eric@webkit.org>
  86051. Reviewed by Adam Barth.
  86052. Implement HTML5 "in scope" algorithm and attempt to use it
  86053. https://bugs.webkit.org/show_bug.cgi?id=41402
  86054. Implemented the 4 needed "in scope" functions for HTML5.
  86055. 3 for the different sets of scope markers, and one for
  86056. doing exact element comparisons instead of tag name searches.
  86057. I deployed inScope("body") for </body> and </html> in InBody.
  86058. Adds two new (expected) failures, since we're now
  86059. switching out of InBody to AfterBody when seeing
  86060. </html>. We don't implement AfterBody yet, so
  86061. the rest of the content after </html> is ignored.
  86062. * html/HTMLElementStack.cpp:
  86063. (WebCore::inScopeCommon):
  86064. (WebCore::HTMLElementStack::inScope):
  86065. (WebCore::HTMLElementStack::inListItemScope):
  86066. (WebCore::HTMLElementStack::inTableScope):
  86067. * html/HTMLElementStack.h:
  86068. * html/HTMLTreeBuilder.cpp:
  86069. (WebCore::HTMLTreeBuilder::processBodyEndTagForInBody):
  86070. (WebCore::HTMLTreeBuilder::processEndTag):
  86071. * html/HTMLTreeBuilder.h:
  86072. 2010-06-30 Eric Seidel <eric@webkit.org>
  86073. Reviewed by Adam Barth.
  86074. Split HTMLElementStack out into its own file
  86075. https://bugs.webkit.org/show_bug.cgi?id=41399
  86076. No functional change, thus no tests.
  86077. * Android.mk:
  86078. * CMakeLists.txt:
  86079. * GNUmakefile.am:
  86080. * WebCore.gypi:
  86081. * WebCore.pro:
  86082. * WebCore.vcproj/WebCore.vcproj:
  86083. * WebCore.xcodeproj/project.pbxproj:
  86084. * html/HTMLElementStack.cpp: Added.
  86085. (WebCore::HTMLElementStack::ElementRecord::ElementRecord):
  86086. (WebCore::HTMLElementStack::ElementRecord::element):
  86087. (WebCore::HTMLElementStack::ElementRecord::next):
  86088. (WebCore::HTMLElementStack::ElementRecord::releaseNext):
  86089. (WebCore::HTMLElementStack::ElementRecord::setNext):
  86090. (WebCore::HTMLElementStack::HTMLElementStack):
  86091. (WebCore::HTMLElementStack::~HTMLElementStack):
  86092. (WebCore::HTMLElementStack::popHTMLHeadElement):
  86093. (WebCore::HTMLElementStack::pop):
  86094. (WebCore::HTMLElementStack::pushHTMLHtmlElement):
  86095. (WebCore::HTMLElementStack::pushHTMLHeadElement):
  86096. (WebCore::HTMLElementStack::pushHTMLBodyElement):
  86097. (WebCore::HTMLElementStack::push):
  86098. (WebCore::HTMLElementStack::top):
  86099. (WebCore::HTMLElementStack::removeHTMLHeadElement):
  86100. (WebCore::HTMLElementStack::remove):
  86101. (WebCore::HTMLElementStack::contains):
  86102. (WebCore::HTMLElementStack::inScope):
  86103. (WebCore::HTMLElementStack::htmlElement):
  86104. (WebCore::HTMLElementStack::headElement):
  86105. (WebCore::HTMLElementStack::bodyElement):
  86106. (WebCore::HTMLElementStack::pushCommon):
  86107. (WebCore::HTMLElementStack::popCommon):
  86108. (WebCore::HTMLElementStack::removeNonFirstCommon):
  86109. * html/HTMLElementStack.h: Added.
  86110. * html/HTMLTreeBuilder.h:
  86111. 2010-06-30 Kenneth Russell <kbr@google.com>
  86112. Reviewed by Oliver Hunt.
  86113. WebCore::WebGLArrayInternal::lengthAttrGetter ReadAV@NULL (b1a3e1a3e9d01f17fd493d68eeb2742f)
  86114. https://bugs.webkit.org/show_bug.cgi?id=38040
  86115. Changed custom ArrayBufferView constructors to create a
  86116. fully-initialized, zero-length array when called with zero
  86117. arguments. This is the simplest fix which works identically in
  86118. both the JSC and V8 bindings.
  86119. Test: fast/canvas/webgl/array-buffer-view-crash.html
  86120. * bindings/js/JSArrayBufferViewHelper.h:
  86121. (WebCore::constructArrayBufferView):
  86122. * bindings/v8/custom/V8ArrayBufferViewCustom.h:
  86123. (WebCore::constructWebGLArray):
  86124. 2010-06-30 Victor Wang <victorw@chromium.org>
  86125. Reviewed by Darin Fisher.
  86126. [chromium] update webcore gyp to use v8 dll for chromium multi dll build.
  86127. https://bugs.webkit.org/show_bug.cgi?id=41376
  86128. * WebCore.gyp/WebCore.gyp:
  86129. 2010-06-30 Jeremy Moskovich <jeremy@chromium.org>
  86130. Reviewed by Dimitri Glazkov.
  86131. [Chromium] Add OOP font loading to FontPlatformDataChromiumMac.
  86132. On OS X, with font management software installed. Fonts
  86133. can reside in an arbitrary path on disk which is blocked by
  86134. Chromium's sandbox.
  86135. This change adds hooks to FontPlaformData which allow cross-process
  86136. font loading in case of need.
  86137. https://bugs.webkit.org/show_bug.cgi?id=41148
  86138. Not possible to test - requires sandboxing which DRT doesn't support.
  86139. * WebCore.gypi:
  86140. * platform/graphics/chromium/FontPlatformDataChromiumMac.mm: Added.
  86141. (WebCore::FontPlatformData::FontPlatformData):
  86142. (WebCore::FontPlatformData::~FontPlatformData):
  86143. (WebCore::FontPlatformData::operator=):
  86144. (WebCore::FontPlatformData::setFont):
  86145. (WebCore::FontPlatformData::roundsGlyphAdvances):
  86146. (WebCore::FontPlatformData::allowsLigatures):
  86147. (WebCore::FontPlatformData::description):
  86148. 2010-06-30 Jeremy Moskovich <jeremy@chromium.org>
  86149. Reviewed by Dan Bernstein.
  86150. Minor tweaks to FontPlatformDataMac & SimpleFontDataMac.mm
  86151. * Avoid an extra FontPlatformData copy in SimpleFontDataMac.mm
  86152. * Fix a typo in FontPlatformDataMac.mm
  86153. https://bugs.webkit.org/show_bug.cgi?id=41152
  86154. No behavior changes so no new tests.
  86155. * platform/graphics/mac/FontPlatformDataMac.mm:
  86156. (WebCore::FontPlatformData::description):
  86157. * platform/graphics/mac/SimpleFontDataMac.mm:
  86158. (WebCore::copyFontTableForTag):
  86159. 2010-06-30 Andreas Kling <andreas.kling@nokia.com>
  86160. Reviewed by Kenneth Rohde Christiansen.
  86161. [Qt] Make "disallow multiple calls to SetWindow" on windowed plugins a quirk
  86162. https://bugs.webkit.org/show_bug.cgi?id=41407
  86163. Only disallow calling SetWindow more than once if we're using Flash 9 or older.
  86164. This fixes resizing of YouTube videos via the player's own button.
  86165. Removed copy-pasted logic in PluginViewGtk since the issue only exists
  86166. when running Flash with a non-Gtk toolkit.
  86167. * plugins/PluginPackage.cpp:
  86168. (WebCore::PluginPackage::determineQuirks):
  86169. * plugins/PluginQuirkSet.h:
  86170. (WebCore::):
  86171. * plugins/gtk/PluginViewGtk.cpp:
  86172. (WebCore::PluginView::setNPWindowIfNeeded): Remove unnecessary logic copy-pasted from PluginViewQt.
  86173. * plugins/qt/PluginViewQt.cpp:
  86174. (WebCore::PluginView::setNPWindowIfNeeded):
  86175. 2010-06-30 Andreas Kling <andreas.kling@nokia.com>
  86176. Reviewed by Antti Koivisto.
  86177. [Qt, Gtk, Symbian] Mind the semantics of NPRect for windowed plugin clip rects
  86178. https://bugs.webkit.org/show_bug.cgi?id=41406
  86179. NPRect has right/bottom instead of width/height.
  86180. This was fixed in PluginViewMac with http://trac.webkit.org/changeset/45815
  86181. * plugins/gtk/PluginViewGtk.cpp:
  86182. (WebCore::PluginView::setNPWindowIfNeeded):
  86183. * plugins/qt/PluginViewQt.cpp:
  86184. (WebCore::PluginView::setNPWindowIfNeeded):
  86185. * plugins/symbian/PluginViewSymbian.cpp:
  86186. (WebCore::PluginView::setNPWindowIfNeeded):
  86187. 2010-06-30 Antonio Gomes <tonikitoo@webkit.org>
  86188. Reviewed by Simon Fraser.
  86189. Spatial Navigation: make elements in inner frames nested more than 1 level deep focusable
  86190. https://bugs.webkit.org/show_bug.cgi?id=41160
  86191. Patch addresses the problem of spatial navigation not work properly with nested
  86192. inner frames by adding the isNodeDeepDescendantOfDocument method. It recursively checks
  86193. if a give node is descendant of a given document or any parent of it.
  86194. Test: fast/events/spatial-navigation/snav-iframe-nested.html
  86195. * page/FocusController.cpp:
  86196. (WebCore::FocusController::deepFindFocusableNodeInDirection):
  86197. * page/SpatialNavigation.cpp:
  86198. (WebCore::isNodeDeepDescendantOfDocument):
  86199. * page/SpatialNavigation.h:
  86200. 2010-06-30 Adam Barth <abarth@webkit.org>
  86201. Reviewed by Eric Seidel.
  86202. HTMLTokenizer should use fewer macros
  86203. https://bugs.webkit.org/show_bug.cgi?id=41397
  86204. Macros are sadness. Inline functions are the new hotness.
  86205. * html/HTMLTokenizer.cpp:
  86206. (WebCore::HTMLTokenizer::processEntity):
  86207. (WebCore::HTMLTokenizer::emitAndResumeIn):
  86208. (WebCore::HTMLTokenizer::emitAndReconsumeIn):
  86209. (WebCore::HTMLTokenizer::emitEndOfFile):
  86210. (WebCore::HTMLTokenizer::flushBufferedEndTag):
  86211. (WebCore::HTMLTokenizer::flushEmitAndResumeIn):
  86212. (WebCore::HTMLTokenizer::nextToken):
  86213. (WebCore::HTMLTokenizer::bufferCharacter):
  86214. (WebCore::HTMLTokenizer::bufferCodePoint):
  86215. (WebCore::HTMLTokenizer::bufferParseError):
  86216. (WebCore::HTMLTokenizer::bufferCurrentToken):
  86217. (WebCore::HTMLTokenizer::bufferEndOfFile):
  86218. * html/HTMLTokenizer.h:
  86219. 2010-06-30 Justin Schuh <jschuh@chromium.org>
  86220. Reviewed by Adam Barth.
  86221. Remove dead binding code
  86222. https://bugs.webkit.org/show_bug.cgi?id=41388
  86223. Removed BindingElement because it was obsoleted by r59866.
  86224. * WebCore.gypi:
  86225. * bindings/generic/BindingElement.h: Removed.
  86226. * bindings/v8/SerializedScriptValue.cpp:
  86227. * bindings/v8/V8Binding.h:
  86228. * bindings/v8/custom/V8DatabaseCustom.cpp:
  86229. * bindings/v8/custom/V8DatabaseSyncCustom.cpp:
  86230. * bindings/v8/custom/V8SQLTransactionCustom.cpp:
  86231. * bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:
  86232. 2010-06-30 Eric Seidel <eric@webkit.org>
  86233. Reviewed by Adam Barth.
  86234. HTMLTokenizer needs EndOfFile support
  86235. https://bugs.webkit.org/show_bug.cgi?id=41344
  86236. EndOfFile support uncovered a bug in our implementation of finish().
  86237. finish() may be called more than once if the first call does not
  86238. result in end() being called (and parsing thus actually stopping).
  86239. SegmentedString::close() should have ASSERTed that it was not already
  86240. closed when close() is called. I've added such an assert now.
  86241. * html/HTMLDocumentParser.cpp:
  86242. (WebCore::HTMLDocumentParser::finish):
  86243. * platform/text/SegmentedString.cpp:
  86244. (WebCore::SegmentedString::close):
  86245. * platform/text/SegmentedString.h:
  86246. 2010-06-29 Eric Seidel <eric@webkit.org>
  86247. Reviewed by Adam Barth.
  86248. HTMLTokenizer needs EndOfFile support
  86249. https://bugs.webkit.org/show_bug.cgi?id=41344
  86250. We're using \0 as the EndOfFile marker as HTML5 replaces
  86251. all other \0 with \0xFFFD. Added some special case logic
  86252. to InputStreamPreprocessor::peek not to replace \0 when
  86253. its being used at the end of a stream.
  86254. This fixed 60 subtests in html5lib/runner.html.
  86255. There are still at least two states (BogusCommentState and
  86256. CDATASectionState) which do not have proper EOF support.
  86257. * html/HTMLDocumentParser.cpp:
  86258. (WebCore::HTMLDocumentParser::finish):
  86259. (WebCore::HTMLDocumentParser::finishWasCalled):
  86260. * html/HTMLInputStream.h:
  86261. (WebCore::HTMLInputStream::markEndOfFile):
  86262. (WebCore::HTMLInputStream::haveSeenEndOfFile):
  86263. * html/HTMLToken.h:
  86264. (WebCore::HTMLToken::makeEndOfFile):
  86265. * html/HTMLTokenizer.cpp:
  86266. (WebCore::HTMLTokenizer::nextToken):
  86267. (WebCore::HTMLTokenizer::emitEndOfFile):
  86268. * html/HTMLTokenizer.h:
  86269. (WebCore::HTMLTokenizer::InputStreamPreprocessor::peek):
  86270. (WebCore::HTMLTokenizer::InputStreamPreprocessor::shouldTreatNullAsEndOfFileMarker):
  86271. * html/HTMLTreeBuilder.cpp:
  86272. (WebCore::HTMLTreeBuilder::passTokenToLegacyParser):
  86273. 2010-06-28 Eric Seidel <eric@webkit.org>
  86274. Reviewed by Adam Barth.
  86275. Teach HTML5TreeBuilder how to merge attributes from extra html/body elements
  86276. https://bugs.webkit.org/show_bug.cgi?id=41337
  86277. Had to teach ElementStack to store pointers to html, head, and body
  86278. elements.
  86279. This fixed a few tests in LayoutTests/html5lib.
  86280. * html/HTMLTreeBuilder.cpp:
  86281. (WebCore::HTMLTreeBuilder::insertHTMLStartTagBeforeHTML):
  86282. (WebCore::HTMLTreeBuilder::mergeAttributesFromTokenIntoElement):
  86283. (WebCore::HTMLTreeBuilder::insertHTMLStartTagInBody):
  86284. (WebCore::HTMLTreeBuilder::processStartTag):
  86285. (WebCore::HTMLTreeBuilder::processEndTag):
  86286. (WebCore::HTMLTreeBuilder::createElementAndAttachToCurrent):
  86287. (WebCore::HTMLTreeBuilder::insertHTMLHtmlElement):
  86288. (WebCore::HTMLTreeBuilder::insertHTMLHeadElement):
  86289. (WebCore::HTMLTreeBuilder::insertHTMLBodyElement):
  86290. (WebCore::HTMLTreeBuilder::insertElement):
  86291. (WebCore::HTMLTreeBuilder::insertGenericRCDATAElement):
  86292. (WebCore::HTMLTreeBuilder::insertGenericRawTextElement):
  86293. * html/HTMLTreeBuilder.h:
  86294. (WebCore::HTMLTreeBuilder::ElementStack::ElementStack):
  86295. (WebCore::HTMLTreeBuilder::ElementStack::popHTMLHeadElement):
  86296. (WebCore::HTMLTreeBuilder::ElementStack::pop):
  86297. (WebCore::HTMLTreeBuilder::ElementStack::pushHTMLHtmlElement):
  86298. (WebCore::HTMLTreeBuilder::ElementStack::pushHTMLHeadElement):
  86299. (WebCore::HTMLTreeBuilder::ElementStack::pushHTMLBodyElement):
  86300. (WebCore::HTMLTreeBuilder::ElementStack::push):
  86301. (WebCore::HTMLTreeBuilder::ElementStack::removeHTMLHeadElement):
  86302. (WebCore::HTMLTreeBuilder::ElementStack::remove):
  86303. (WebCore::HTMLTreeBuilder::ElementStack::htmlElement):
  86304. (WebCore::HTMLTreeBuilder::ElementStack::headElement):
  86305. (WebCore::HTMLTreeBuilder::ElementStack::bodyElement):
  86306. (WebCore::HTMLTreeBuilder::ElementStack::pushCommon):
  86307. (WebCore::HTMLTreeBuilder::ElementStack::popCommon):
  86308. (WebCore::HTMLTreeBuilder::ElementStack::removeNonFirstCommon):
  86309. 2010-06-30 José Millán Soto <jmillan@igalia.com>
  86310. Reviewed by Xan Lopez.
  86311. [Gtk] Text attributes not exposed
  86312. https://bugs.webkit.org/show_bug.cgi?id=25528
  86313. Implemented the get_run_attributes and get_default_attributes
  86314. functions for the ATK_TEXT role.
  86315. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  86316. (getAttributeSetForAccessibilityObject):
  86317. (compareAttribute):
  86318. (attributeSetDifference):
  86319. (accessibilityObjectLength):
  86320. (getAccessibilityObjectForOffset):
  86321. (getRunAttributesFromAccesibilityObject):
  86322. (webkit_accessible_text_get_run_attributes):
  86323. (webkit_accessible_text_get_default_attributes):
  86324. 2010-06-30 Yuta Kitamura <yutak@chromium.org>
  86325. Reviewed by Alexey Proskuryakov.
  86326. Fix Sec-WebSocketKey{1,2} headers.
  86327. According to WebSocket specification, a value of Sec-WebSocketKey{1,2} header
  86328. should not start or end with a space.
  86329. WebSocket: Malformed handshake headers in a worker due to rand_s failing
  86330. https://bugs.webkit.org/show_bug.cgi?id=41327
  86331. No new tests. ASSERT should catch the problem.
  86332. * websockets/WebSocketHandshake.cpp:
  86333. (WebCore::generateSecWebSocketKey):
  86334. 2010-06-30 Yuzo Fujishima <yuzo@google.com>
  86335. Reviewed by Dan Bernstein.
  86336. Fix for Bug 41339 - unicode-range property only with a descending range
  86337. causes a crash
  86338. https://bugs.webkit.org/show_bug.cgi?id=41339
  86339. Test: fast/css/font-face-descending-unicode-range.html
  86340. * css/CSSParser.cpp:
  86341. (WebCore::CSSParser::parseFontFaceUnicodeRange):
  86342. 2010-06-29 Abhinav Mithal <abhinav.mithal@nokia.com>
  86343. Reviewed by Laszlo Gombos.
  86344. [Qt] [Symbian] Fix doube-deallocation while destroying PluginContainerSymbian
  86345. https://bugs.webkit.org/show_bug.cgi?id=37303
  86346. * plugins/symbian/PluginViewSymbian.cpp:
  86347. (WebCore::PluginView::platformDestroy):
  86348. 2010-06-29 Zhenyao Mo <zmo@google.com>
  86349. Reviewed by Dimitri Glazkov.
  86350. Implement getAttachedShaders
  86351. https://bugs.webkit.org/show_bug.cgi?id=31172
  86352. * bindings/js/JSWebGLRenderingContextCustom.cpp: JS binding for getAttachedShaders().
  86353. (WebCore::JSWebGLRenderingContext::getAttachedShaders):
  86354. * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: V8 binding for getAttachedShaders().
  86355. (WebCore::V8WebGLRenderingContext::getAttachedShadersCallback):
  86356. * html/canvas/WebGLRenderingContext.cpp:
  86357. (WebCore::WebGLRenderingContext::getAttachedShaders): Implementation of getAttachedShaders().
  86358. (WebCore::WebGLRenderingContext::findShader): Helper function to find a shader object from its name.
  86359. * html/canvas/WebGLRenderingContext.h: Declaration of getAttachedShaders().
  86360. * html/canvas/WebGLRenderingContext.idl: Ditto.
  86361. * platform/graphics/GraphicsContext3D.h: Ditto.
  86362. * platform/graphics/mac/GraphicsContext3DMac.mm:
  86363. (WebCore::GraphicsContext3D::getAttachedShaders): Implementation of getAttachedShaders().
  86364. 2010-06-29 MORITA Hajime <morrita@google.com>
  86365. Reviewed by Kent Tamura.
  86366. REGRESSION: [Chromium] <progress> appearance on windows looks not good
  86367. https://bugs.webkit.org/show_bug.cgi?id=41343
  86368. RenderThemeChromiumWin::paintProgressBar() should return false,
  86369. which indicates the widget is painted.
  86370. Test: fast/dom/HTMLProgressElement/progress-element.html
  86371. * rebaselined with a wrong expectation.
  86372. * rendering/RenderThemeChromiumWin.cpp:
  86373. (WebCore::RenderThemeChromiumWin::paintProgressBar):
  86374. 2010-06-29 Kinuko Yasuda <kinuko@chromium.org>
  86375. Reviewed by Jian Li.
  86376. Fix http/tests/local/blob/send-data-blob.html on Windows
  86377. https://bugs.webkit.org/show_bug.cgi?id=41228
  86378. Fix a regression bug in the line-conversion code.
  86379. Rewrite the line-conversion function with simpler functions to
  86380. make it less error prone.
  86381. No new tests as this is for bug fixes.
  86382. * platform/BlobItem.cpp:
  86383. (WebCore::StringBlobItem::convertToCString):
  86384. 2010-06-29 Dumitru Daniliuc <dumi@chromium.org>
  86385. Reviewed by Darin Fisher.
  86386. Implementing DatabaseSync::openDatabaseSync().
  86387. https://bugs.webkit.org/show_bug.cgi?id=40607
  86388. 1. Moved some common code from Database to AbstractDatabase.
  86389. 2. Made performOpenAndVerify() virtual, since DatabaseSync doesn't
  86390. need to interact with DatabaseThread.
  86391. 3. Removed the m_creationCallback field, since it's only needed in
  86392. the openDatabase{Sync} methods.
  86393. * storage/AbstractDatabase.cpp:
  86394. (WebCore::retrieveTextResultFromDatabase):
  86395. (WebCore::setTextValueInDatabase):
  86396. (WebCore::guidMutex):
  86397. (WebCore::guidToVersionMap):
  86398. (WebCore::updateGuidVersionMap):
  86399. (WebCore::guidToDatabaseMap):
  86400. (WebCore::guidForOriginAndName):
  86401. (WebCore::AbstractDatabase::databaseInfoTableName):
  86402. (WebCore::AbstractDatabase::AbstractDatabase):
  86403. (WebCore::AbstractDatabase::closeDatabase):
  86404. (WebCore::AbstractDatabase::version):
  86405. (WebCore::AbstractDatabase::performOpenAndVerify):
  86406. (WebCore::AbstractDatabase::scriptExecutionContext):
  86407. (WebCore::AbstractDatabase::securityOrigin):
  86408. (WebCore::AbstractDatabase::stringIdentifier):
  86409. (WebCore::AbstractDatabase::displayName):
  86410. (WebCore::AbstractDatabase::estimatedSize):
  86411. (WebCore::AbstractDatabase::fileName):
  86412. (WebCore::AbstractDatabase::databaseVersionKey):
  86413. (WebCore::AbstractDatabase::getVersionFromDatabase):
  86414. (WebCore::AbstractDatabase::setVersionInDatabase):
  86415. (WebCore::AbstractDatabase::versionMatchesExpected):
  86416. (WebCore::AbstractDatabase::setExpectedVersion):
  86417. (WebCore::AbstractDatabase::disableAuthorizer):
  86418. (WebCore::AbstractDatabase::enableAuthorizer):
  86419. (WebCore::AbstractDatabase::setAuthorizerReadOnly):
  86420. (WebCore::AbstractDatabase::lastActionChangedDatabase):
  86421. (WebCore::AbstractDatabase::lastActionWasInsert):
  86422. (WebCore::AbstractDatabase::resetDeletes):
  86423. (WebCore::AbstractDatabase::hadDeletes):
  86424. (WebCore::AbstractDatabase::resetAuthorizer):
  86425. * storage/AbstractDatabase.h:
  86426. (WebCore::AbstractDatabase::opened):
  86427. (WebCore::AbstractDatabase::isNew):
  86428. (WebCore::AbstractDatabase::databaseDebugName):
  86429. * storage/Database.cpp:
  86430. (WebCore::DatabaseCreationCallbackTask::create):
  86431. (WebCore::DatabaseCreationCallbackTask::performTask):
  86432. (WebCore::DatabaseCreationCallbackTask::DatabaseCreationCallbackTask):
  86433. (WebCore::Database::openDatabase):
  86434. (WebCore::Database::Database):
  86435. (WebCore::Database::version):
  86436. (WebCore::Database::openAndVerifyVersion):
  86437. (WebCore::Database::close):
  86438. (WebCore::Database::stop):
  86439. (WebCore::Database::performOpenAndVerify):
  86440. * storage/Database.h:
  86441. (WebCore::Database::sqliteDatabase):
  86442. * storage/DatabaseAuthorizer.cpp:
  86443. (WebCore::DatabaseAuthorizer::create):
  86444. (WebCore::DatabaseAuthorizer::DatabaseAuthorizer):
  86445. (WebCore::DatabaseAuthorizer::denyBasedOnTableName):
  86446. * storage/DatabaseAuthorizer.h:
  86447. * storage/DatabaseSync.cpp:
  86448. (WebCore::DatabaseSync::openDatabaseSync):
  86449. (WebCore::DatabaseSync::DatabaseSync):
  86450. (WebCore::DatabaseSync::~DatabaseSync):
  86451. (WebCore::DatabaseSync::markAsDeletedAndClose):
  86452. (WebCore::CloseSyncDatabaseOnContextThreadTask::create):
  86453. (WebCore::CloseSyncDatabaseOnContextThreadTask::performTask):
  86454. (WebCore::CloseSyncDatabaseOnContextThreadTask::CloseSyncDatabaseOnContextThreadTask):
  86455. (WebCore::DatabaseSync::closeImmediately):
  86456. * storage/DatabaseSync.h:
  86457. * storage/DatabaseTask.cpp:
  86458. (WebCore::DatabaseOpenTask::DatabaseOpenTask):
  86459. (WebCore::DatabaseOpenTask::doPerformTask):
  86460. * storage/DatabaseTask.h:
  86461. (WebCore::DatabaseOpenTask::create):
  86462. 2010-06-29 François Sausset <sausset@gmail.com>
  86463. Reviewed by Darin Adler.
  86464. Fix a bug when a msubsup element is inside a mrow element
  86465. https://bugs.webkit.org/show_bug.cgi?id=36525
  86466. Test: mathml/presentation/subsup.xhtml
  86467. * mathml/RenderMathMLSubSup.cpp:
  86468. (WebCore::RenderMathMLSubSup::stretchToHeight):
  86469. 2010-06-29 Zhenyao Mo <zmo@google.com>
  86470. Reviewed by Dimitri Glazkov.
  86471. uniformmatrix* should generate INVALID_VALUE with transpose = true
  86472. https://bugs.webkit.org/show_bug.cgi?id=41235
  86473. Test: fast/canvas/webgl/gl-uniformmatrix4fv.html
  86474. * html/canvas/WebGLRenderingContext.cpp:
  86475. (WebCore::WebGLRenderingContext::uniformMatrix2fv): Call validateUniformMatrixParameters instead.
  86476. (WebCore::WebGLRenderingContext::uniformMatrix3fv): Ditto.
  86477. (WebCore::WebGLRenderingContext::uniformMatrix4fv): Ditto.
  86478. (WebCore::WebGLRenderingContext::validateUniformMatrixParameters): Validate input parameters for uniformMatrix*().
  86479. * html/canvas/WebGLRenderingContext.h: Declare validateUniformMatrixParameters().
  86480. 2010-06-29 Kenneth Russell <kbr@google.com>
  86481. Reviewed by Dimitri Glazkov.
  86482. Support UNPACK_FLIP_Y_WEBGL and UNPACK_PREMULTIPLY_ALPHA_WEBGL for texImage2D taking ArrayBufferView
  86483. https://bugs.webkit.org/show_bug.cgi?id=40398
  86484. Added support for UNPACK_FLIP_Y_WEBGL and UNPACK_PREMULTIPLY_ALPHA_WEBGL pixel store
  86485. parameters to texImage2D and texSubImage2D entry points taking ArrayBufferView.
  86486. More cleanly separated the unpacking and packing phases of user-supplied pixel data
  86487. in GraphicsContext3D, and added support for unpack alignment. Fixed bug in handling
  86488. of unpackAlignment in GraphicsContext3D::flipVertically. Necessarily added
  86489. validation of the amount of data passed to texImage2D and texSubImage2D. Modified
  86490. fast/canvas/webgl/tex-image-with-format-and-type.html to include premultiplied alpha
  86491. tests for relevant source formats; added new test which exercises all combinations
  86492. of UNPACK_FLIP_Y_WEBGL, UNPACK_PREMULTIPLY_ALPHA_WEBGL, and UNPACK_ALIGNMENT pixel
  86493. store parameters.
  86494. Test: fast/canvas/webgl/tex-image-and-sub-image-2d-with-array-buffer-view.html
  86495. * html/canvas/WebGLRenderingContext.cpp:
  86496. (WebCore::WebGLRenderingContext::texImage2D):
  86497. (WebCore::WebGLRenderingContext::texSubImage2D):
  86498. (WebCore::WebGLRenderingContext::validateTexFuncData):
  86499. * html/canvas/WebGLRenderingContext.h:
  86500. * platform/graphics/GraphicsContext3D.cpp:
  86501. (WebCore::GraphicsContext3D::extractImageData):
  86502. (WebCore::GraphicsContext3D::extractTextureData):
  86503. (WebCore::GraphicsContext3D::flipVertically):
  86504. (WebCore::doUnpackingAndPacking):
  86505. (WebCore::computeIncrementParameters):
  86506. (WebCore::doPacking):
  86507. (WebCore::GraphicsContext3D::packPixels):
  86508. * platform/graphics/GraphicsContext3D.h:
  86509. (WebCore::GraphicsContext3D::):
  86510. * platform/graphics/cg/GraphicsContext3DCG.cpp:
  86511. (WebCore::GraphicsContext3D::getImageData):
  86512. * platform/graphics/qt/GraphicsContext3DQt.cpp:
  86513. (WebCore::GraphicsContext3D::getImageData):
  86514. * platform/graphics/skia/GraphicsContext3DSkia.cpp:
  86515. (WebCore::GraphicsContext3D::getImageData):
  86516. 2010-06-29 Patrick Gansterer <paroga@paroga.com>
  86517. Reviewed by Dirk Schulze.
  86518. Buildfix for !ENABLE(SVG_FOREIGN_OBJECT) after r61667.
  86519. https://bugs.webkit.org/show_bug.cgi?id=41367
  86520. * svg/SVGSVGElement.cpp:
  86521. (WebCore::SVGSVGElement::isOutermostSVG): Add missing ENABLE(SVG_FOREIGN_OBJECT).
  86522. 2010-06-29 Patrick Gansterer <paroga@paroga.com>
  86523. Reviewed by Darin Adler.
  86524. Buildfix after r62118.
  86525. https://bugs.webkit.org/show_bug.cgi?id=41365
  86526. * rendering/RenderSVGRoot.cpp: Inlude missing RenderSVGResource.h.
  86527. 2010-06-29 Sheriff Bot <webkit.review.bot@gmail.com>
  86528. Unreviewed, rolling out r62052.
  86529. http://trac.webkit.org/changeset/62052
  86530. https://bugs.webkit.org/show_bug.cgi?id=41357
  86531. Causes crashes in JSLazyEventListener::initializeFunction (see
  86532. bug 41352) (Requested by aroben on #webkit).
  86533. * bindings/js/ScriptEventListener.cpp:
  86534. (WebCore::createAttributeEventListener):
  86535. * bindings/js/ScriptEventListener.h:
  86536. * bindings/v8/ScriptEventListener.cpp:
  86537. (WebCore::createAttributeEventListener):
  86538. * bindings/v8/ScriptEventListener.h:
  86539. * html/HTMLBodyElement.cpp:
  86540. (WebCore::HTMLBodyElement::parseMappedAttribute):
  86541. * html/HTMLFrameSetElement.cpp:
  86542. (WebCore::HTMLFrameSetElement::parseMappedAttribute):
  86543. * svg/SVGSVGElement.cpp:
  86544. (WebCore::SVGSVGElement::parseMappedAttribute):
  86545. 2010-06-29 Sheriff Bot <webkit.review.bot@gmail.com>
  86546. Unreviewed, rolling out r62129.
  86547. http://trac.webkit.org/changeset/62129
  86548. https://bugs.webkit.org/show_bug.cgi?id=41362
  86549. Needed to roll out r62052 (see bug 41357) (Requested by aroben
  86550. on #webkit).
  86551. * bindings/js/ScriptEventListener.cpp:
  86552. (WebCore::createWindowAttributeEventListener):
  86553. 2010-06-29 Beth Dakin <bdakin@apple.com>
  86554. Reviewed by Darin Adler.
  86555. Speculative fix for <rdar://problem/8071558> CrashTracer: [USER]
  86556. 2300+ crashes in Safari at com.apple.WebCore:
  86557. WebCore::FrameView::scheduleRelayout + 352
  86558. Unfortunately, we don't have a reproducible case for this bug, and
  86559. therefore, we do not have a layout test either. It is pretty clear
  86560. from the logs that m_frame->settings() is null in
  86561. FrameView::scheduleRelayout() in the crashing case.
  86562. m_frame->settings() is null whenever page is null. Everywhere else
  86563. in FrameView.cpp we null-check either page or settings before using
  86564. settings. It seems plausible to me that scheduleRelayout could be
  86565. called when page is null, so the fix is just to add null-checks.
  86566. * page/FrameView.cpp:
  86567. (WebCore::FrameView::layout):
  86568. (WebCore::FrameView::scheduleRelayout):
  86569. 2010-06-29 Dan Bernstein <mitz@apple.com>
  86570. Reviewed by Darin Adler.
  86571. <rdar://problem/7975842> Certain text is repeated after using splitText()
  86572. Tests: fast/text/setData-dirty-lines.html
  86573. fast/text/splitText-dirty-lines.html
  86574. * dom/CharacterData.cpp:
  86575. (WebCore::CharacterData::setData): Call RenderText::setTextWithOffset() rather than
  86576. setText(), because only the former correctly dirties line boxes.
  86577. * dom/Text.cpp:
  86578. (WebCore::Text::splitText): Ditto.
  86579. 2010-06-29 Sheriff Bot <webkit.review.bot@gmail.com>
  86580. Unreviewed, rolling out r62073.
  86581. http://trac.webkit.org/changeset/62073
  86582. https://bugs.webkit.org/show_bug.cgi?id=41359
  86583. Necessary to fix chromium build when r62052 is rolled out.
  86584. (Requested by dave_levin on #webkit).
  86585. * bindings/v8/ScriptEventListener.h:
  86586. 2010-06-29 Vangelis Kokkevis <vangelis@chromium.org>
  86587. Reviewed by Darin Fisher.
  86588. [Chromium] Hooking up WebGL layers to the gpu-compositor. Implement missing
  86589. methods to set the contents of a GraphicsLayer with a platform specific WebGL
  86590. Layer, and to update the contents of the WebGL Layer when needed.
  86591. https://bugs.webkit.org/show_bug.cgi?id=41243
  86592. * platform/graphics/GraphicsContext3D.h:
  86593. * platform/graphics/chromium/GraphicsLayerChromium.cpp:
  86594. (WebCore::GraphicsLayerChromium::setContentsToWebGL):
  86595. * platform/graphics/chromium/GraphicsLayerChromium.h:
  86596. * platform/graphics/chromium/LayerChromium.cpp:
  86597. (WebCore::LayerChromium::removeAllSublayers):
  86598. No need to call setNeedsCommit() from here as the previous call to
  86599. layer->removeFromSuperlayer() will have that effect (and we only need
  86600. to notify the owner if there were actually any sublayers removed).
  86601. * platform/graphics/chromium/LayerChromium.h:
  86602. * platform/graphics/chromium/LayerRendererChromium.cpp:
  86603. (WebCore::LayerRendererChromium::drawLayer):
  86604. * platform/graphics/chromium/WebGLLayerChromium.cpp:
  86605. (WebCore::WebGLLayerChromium::create):
  86606. (WebCore::WebGLLayerChromium::updateTextureContents):
  86607. (WebCore::WebGLLayerChromium::setContext):
  86608. 2010-06-29 Csaba Osztrogonác <ossy@webkit.org>
  86609. Reviewed by Nikolas Zimmermann.
  86610. Buildfix for --minimal build after r62052
  86611. https://bugs.webkit.org/show_bug.cgi?id=41338
  86612. * bindings/js/ScriptEventListener.cpp: #if ENABLE(SVG) guards added.
  86613. (WebCore::createWindowAttributeEventListener):
  86614. 2010-06-29 Brent Fulgham <bfulgham@webkit.org>
  86615. Build fix. Not reviewd.
  86616. CGColor is only used for PLATFORM(CG). Conditionalize include
  86617. to correct build failure for WinCairo.
  86618. * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp:
  86619. Conditionalize use of CGColor.
  86620. 2010-06-29 Martin Robinson <mrobinson@igalia.com>
  86621. Reviewed by Xan Lopez.
  86622. [GTK] Clean up the source lists in the GNUMakefile.am files
  86623. https://bugs.webkit.org/show_bug.cgi?id=41229
  86624. Clean up the GNUMakefile.am a little bit. Alphabetize and conglomerate
  86625. the source lists.
  86626. * GNUmakefile.am:
  86627. 2010-06-29 Martin Robinson <mrobinson@igalia.com>
  86628. Reviewed by Xan Lopez.
  86629. [GTK] DragDataGtk should use DataObjectGtk as the platformDragData
  86630. https://bugs.webkit.org/show_bug.cgi?id=40307
  86631. Use DataObjectGtk as the platformDragData for DragDataGtk. DataObjectGtk
  86632. contains all the information necessary to keep track of drops in progress.
  86633. * platform/DragData.h: Use a DataObjectGtk* as the platform drag data.
  86634. * platform/gtk/DragDataGtk.cpp:
  86635. (WebCore::DragData::containsFiles): Retrieve information via platformDragData.
  86636. (WebCore::DragData::asFilenames): Ditto.
  86637. (WebCore::DragData::containsPlainText): Ditto.
  86638. (WebCore::DragData::asPlainText): Ditto.
  86639. (WebCore::DragData::createClipboard): Create the Clipboard with the platformDragData.
  86640. (WebCore::DragData::containsCompatibleContent): Retrieve information via platformDragData.
  86641. (WebCore::DragData::containsURL): Ditto.
  86642. (WebCore::DragData::asURL): Ditto.
  86643. (WebCore::DragData::asFragment): Ditto.
  86644. 2010-06-29 Adam Langley <agl@chromium.org>
  86645. Build fix. Not reviewd.
  86646. * platform/graphics/chromium/FontPlatformDataLinux.cpp:
  86647. (WebCore::FontPlatformData::setupPaint):
  86648. The name of the Skia function changed between writing this patch and
  86649. commiting it.
  86650. 2010-06-29 Adam Langley <agl@chromium.org>
  86651. Reviewed by Kent Tamura.
  86652. [chromium] Support forced autohinting.
  86653. https://bugs.webkit.org/show_bug.cgi?id=40493
  86654. Freetype (the typical font rendering on Linux) includes an 'autohinter':
  86655. an algorithm for hinting glyph shapes without using the embedded hinting
  86656. bytecode in a font.
  86657. Some people prefer the autohinter's results, so we support forcing its
  86658. use.
  86659. This change also fixes a bug where two FontPlatformData structures would
  86660. compare equal, even if their rendering styles were different.
  86661. * platform/graphics/chromium/FontPlatformDataLinux.cpp:
  86662. (WebCore::FontPlatformData::setupPaint):
  86663. In order to compare FontPlatformData structures we need to make sure
  86664. that they are initialised.
  86665. (WebCore::FontPlatformData::operator==):
  86666. * platform/graphics/chromium/FontRenderStyle.h:
  86667. (WebCore::FontRenderStyle::FontRenderStyle):
  86668. (WebCore::FontRenderStyle::operator==):
  86669. This fixes the case where two FontPlatformData structures, differing
  86670. only by rendering style, would compare equal.
  86671. 2010-06-29 Laszlo Gombos <laszlo.1.gombos@nokia.com>
  86672. Unreviewed, Symbian build fix.
  86673. Add more directories to USERINCLUDE so that they get included
  86674. before the Symbian system headers.
  86675. This is a workaround to some toolchain problems; bug 31273 is used to
  86676. find a better solution.
  86677. No new tests as there is no new functionality.
  86678. * WebCore.pro:
  86679. 2010-06-29 Nikolas Zimmermann <nzimmermann@rim.com>
  86680. Reviewed by Dirk Schulze.
  86681. Cleanup SVGRenderSupport
  86682. https://bugs.webkit.org/show_bug.cgi?id=41347
  86683. Remove SVGRenderBase base class from all SVG renderers. It was meant as temporary solution until all SVG renderers inherit from RenderSVGModelObject,
  86684. though this is not going to happen. RenderSVGModelObject inherits from RenderObject, making it impossible to inherit eg. RenderSVGImage from it, as
  86685. it already indirectly inherits from RenderObject, through RenderImage. Other examples are RenderForeignObject (RenderBlock inheritance),
  86686. RenderSVGInlineText (RenderText inheritance) etc.
  86687. Rename SVGRenderBase to SVGRenderSupport, just like the file is named, remove all free functions, and make them all static functions in SVGRenderSupport.
  86688. We can still share code between all SVG renderers, but don't need a special base class for all renderers -> shrink size of all SVG renderers.
  86689. Doesn't affect any test.
  86690. * rendering/RenderBox.cpp: Remove localTransform() override, not needed at all.
  86691. * rendering/RenderBox.h: Ditto.
  86692. * rendering/RenderForeignObject.cpp: s/SVGRenderBase/SVGRenderSupport/
  86693. (WebCore::RenderForeignObject::paint):
  86694. (WebCore::RenderForeignObject::clippedOverflowRectForRepaint):
  86695. (WebCore::RenderForeignObject::computeRectForRepaint):
  86696. (WebCore::RenderForeignObject::nodeAtFloatPoint):
  86697. (WebCore::RenderForeignObject::mapLocalToContainer):
  86698. * rendering/RenderPath.cpp:
  86699. (WebCore::BoundingRectStrokeStyleApplier::strokeStyle): applyStrokeStyleToContext is a static function in SVGRenderSupport now.
  86700. (WebCore::RenderPath::paint): s/SVGRenderBase/SVGRenderSupport/
  86701. (WebCore::RenderPath::nodeAtFloatPoint): Ditto.
  86702. (WebCore::RenderPath::updateCachedBoundaries): Ditto.
  86703. * rendering/RenderSVGBlock.h: Remove SVGRenderBase inheritance.
  86704. * rendering/RenderSVGContainer.cpp:
  86705. (WebCore::RenderSVGContainer::layout): layoutChildren is a static function in SVGRenderSupport now.
  86706. (WebCore::RenderSVGContainer::paint): prepareToRenderSVGContent/finishRenderSVGContent are now static functions in SVGRenderSupport.
  86707. (WebCore::RenderSVGContainer::objectBoundingBox): computeContainerBoundingBox is a static function in SVGRenderSupport now.
  86708. (WebCore::RenderSVGContainer::strokeBoundingBox): Ditto.
  86709. (WebCore::RenderSVGContainer::repaintRectInLocalCoordinates): Remove call to computeContainerBoundingBox, use strokeBoundingBox instead, for consistency.
  86710. (WebCore::RenderSVGContainer::nodeAtFloatPoint): pointInClippingArea is a static function in SVGRenderSupport now.
  86711. * rendering/RenderSVGHiddenContainer.cpp:
  86712. (WebCore::RenderSVGHiddenContainer::layout): layoutChildren is a static function in SVGRenderSupport now.
  86713. * rendering/RenderSVGImage.cpp:
  86714. (WebCore::RenderSVGImage::paint): prepareToRenderSVGContent/finishRenderSVGContent are static functions in SVGRenderSupport now.
  86715. (WebCore::RenderSVGImage::destroy): deregisterResource was renamed to invalidateAllResourcesOfRenderer and is a static function in SVGRenderSupport.
  86716. (WebCore::RenderSVGImage::nodeAtFloatPoint): pointInClippingArea is a static function in SVGRenderSupport now.
  86717. (WebCore::RenderSVGImage::repaintRectInLocalCoordinates): intersectRepaintRectWithResources is a static function in SVGRenderSupport now.
  86718. (WebCore::RenderSVGImage::clippedOverflowRectForRepaint): s/SVGRenderBase/SVGRenderSupport/
  86719. (WebCore::RenderSVGImage::computeRectForRepaint): Ditto.
  86720. (WebCore::RenderSVGImage::mapLocalToContainer): Ditto.
  86721. * rendering/RenderSVGImage.h: Remove SVGRenderBase inheritance.
  86722. * rendering/RenderSVGInline.cpp:
  86723. (WebCore::RenderSVGInline::objectBoundingBox): findTextRootObject is a static function in SVGRenderSupport now.
  86724. (WebCore::RenderSVGInline::strokeBoundingBox): Ditto.
  86725. (WebCore::RenderSVGInline::repaintRectInLocalCoordinates): Ditto.
  86726. (WebCore::RenderSVGInline::clippedOverflowRectForRepaint): s/SVGRenderBase/SVGRenderSupport/
  86727. (WebCore::RenderSVGInline::computeRectForRepaint): Ditto,.
  86728. (WebCore::RenderSVGInline::mapLocalToContainer): Ditto.
  86729. (WebCore::RenderSVGInline::absoluteQuads): findTextRootObject is a static function in SVGRenderSupport now.
  86730. * rendering/RenderSVGInline.h: Remove SVGRenderBase inheritance.
  86731. * rendering/RenderSVGModelObject.cpp:
  86732. (WebCore::RenderSVGModelObject::clippedOverflowRectForRepaint): s/SVGRenderBase/SVGRenderSupport/
  86733. (WebCore::RenderSVGModelObject::computeRectForRepaint): Ditto.
  86734. (WebCore::RenderSVGModelObject::mapLocalToContainer): Ditto.
  86735. (WebCore::RenderSVGModelObject::destroy): deregisterResource was renamed to invalidateAllResourcesOfRenderer and is a static function in SVGRenderSupport.
  86736. * rendering/RenderSVGModelObject.h: Remove SVGRenderBase inheritance.
  86737. * rendering/RenderSVGResource.cpp:
  86738. (WebCore::invalidatePaintingResource): Moved here from SVGRenderSupport (static inline helper function).
  86739. (WebCore::RenderSVGResource::invalidateAllResourcesOfRenderer): Moved here from SVGRenderSupport and renamed from deregisterFromResources.
  86740. * rendering/RenderSVGResource.h: Expose invalidateAllResourcesOfRenderer function.
  86741. * rendering/RenderSVGResourceClipper.cpp:
  86742. (WebCore::RenderSVGResourceClipper::createClipData): renderSubtreeToImage is a static function in SVGRenderSupport now.
  86743. (WebCore::RenderSVGResourceClipper::hitTestClipContent): Ditto.
  86744. * rendering/RenderSVGResourceGradient.cpp:
  86745. (WebCore::createMaskAndSwapContextForTextGradient): findTextRootObject is a static function in SVGRenderSupport now.
  86746. (WebCore::clipToTextMask): Ditto.
  86747. (WebCore::RenderSVGResourceGradient::applyResource): applyStrokeStyleToContext is a static function in SVGRenderSupport now.
  86748. (WebCore::RenderSVGResourceGradient::postApplyResource): findTextRootObject is a static function in SVGRenderSupport now.
  86749. * rendering/RenderSVGResourceMarker.cpp:
  86750. (WebCore::RenderSVGResourceMarker::applyViewportClip): s/SVGRenderBase/SVGRenderSupport/
  86751. * rendering/RenderSVGResourceMasker.cpp:
  86752. (WebCore::RenderSVGResourceMasker::createMaskImage): renderSubtreeToImage is a static function in SVGRenderSupport now.
  86753. * rendering/RenderSVGResourcePattern.cpp:
  86754. (WebCore::RenderSVGResourcePattern::applyResource): applyStrokeStyleToContext is a static function in SVGRenderSupport now.
  86755. (WebCore::clampImageBufferSizeToViewport): Moved here from SVGRenderSupport.
  86756. (WebCore::RenderSVGResourcePattern::createTileImage): renderSubtreeToImage is a static function in SVGRenderSupport now.
  86757. * rendering/RenderSVGResourceSolidColor.cpp:
  86758. (WebCore::RenderSVGResourceSolidColor::applyResource): applyStrokeStyleToContext is a static function in SVGRenderSupport now
  86759. * rendering/RenderSVGRoot.cpp:
  86760. (WebCore::RenderSVGRoot::layout): layoutChildren is a static function in SVGRenderSupport now.
  86761. (WebCore::RenderSVGRoot::paint): prepareToRenderSVGContent/finishRenderSVGContent are now static functions in SVGRenderSupport.
  86762. (WebCore::RenderSVGRoot::destroy): deregisterResource was renamed to invalidateAllResourcesOfRenderer and is a static function in SVGRenderSupport.
  86763. (WebCore::RenderSVGRoot::repaintRectInLocalCoordinates): Remove call to computeContainerBoundingBox, use strokeBoundingBox instead, for consistency.
  86764. * rendering/RenderSVGRoot.h: Remove localTransform() override, no longer needed. Remove SVGRenderBase inheritance.
  86765. (WebCore::RenderSVGRoot::objectBoundingBox): Inlined for speeed.
  86766. (WebCore::RenderSVGRoot::strokeBoundingBox): computeContainerBoundingBox is a static function in SVGRenderSupport now.
  86767. * rendering/RenderSVGText.cpp:
  86768. (WebCore::RenderSVGText::clippedOverflowRectForRepaint): s/SVGRenderBase/SVGRenderSupport/
  86769. (WebCore::RenderSVGText::computeRectForRepaint): Ditto.
  86770. (WebCore::RenderSVGText::mapLocalToContainer): Ditto.
  86771. (WebCore::RenderSVGText::nodeAtFloatPoint): pointInClippingArea is a static function in SVGRenderSupport now.
  86772. (WebCore::RenderSVGText::destroy): deregisterResource was renamed to invalidateAllResourcesOfRenderer and is a static function in SVGRenderSupport.
  86773. (WebCore::RenderSVGText::repaintRectInLocalCoordinates): intersectRepaintRectWithResources is a static function in SVGRenderSupport now.
  86774. * rendering/RenderSVGViewportContainer.cpp:
  86775. (WebCore::RenderSVGViewportContainer::applyViewportClip): s/SVGRenderBase/SVGRenderSupport/
  86776. (WebCore::RenderSVGViewportContainer::pointIsInsideViewportClip): pointInClippingArea is a static function in SVGRenderSupport now.
  86777. * rendering/SVGInlineFlowBox.cpp:
  86778. (WebCore::SVGInlineFlowBox::paint): prepareToRenderSVGContent/finishRenderSVGContent are now static functions in SVGRenderSupport.
  86779. * rendering/SVGRenderSupport.cpp: Make it impossible to construct the class. Remove virtual destructor, made all methods static.
  86780. (WebCore::SVGRenderSupport::clippedOverflowRectForRepaint): s/SVGRenderBase/SVGRenderSupport/
  86781. (WebCore::SVGRenderSupport::computeRectForRepaint): Ditto.
  86782. (WebCore::SVGRenderSupport::mapLocalToContainer): Ditto.
  86783. (WebCore::SVGRenderSupport::prepareToRenderSVGContent): Ditto.
  86784. (WebCore::SVGRenderSupport::finishRenderSVGContent): Ditto.
  86785. (WebCore::SVGRenderSupport::renderSubtreeToImage): Made static.
  86786. (WebCore::SVGRenderSupport::computeContainerBoundingBox): Ditto.
  86787. (WebCore::SVGRenderSupport::layoutChildren): Ditto.
  86788. (WebCore::SVGRenderSupport::isOverflowHidden): s/SVGRenderBase/SVGRenderSupport/
  86789. (WebCore::SVGRenderSupport::intersectRepaintRectWithResources): Ditto.
  86790. (WebCore::SVGRenderSupport::pointInClippingArea): Made static.
  86791. (WebCore::SVGRenderSupport::dashArrayFromRenderingStyle): Ditto.
  86792. (WebCore::SVGRenderSupport::applyStrokeStyleToContext): Ditto.
  86793. (WebCore::SVGRenderSupport::findTextRootObject): Ditto.
  86794. * rendering/SVGRenderSupport.h:
  86795. * rendering/SVGRenderTreeAsText.cpp:
  86796. (WebCore::writeStyle): dashArrayFromRenderingStyle is a static function in SVGRenderSupport now.
  86797. * rendering/SVGRootInlineBox.cpp:
  86798. (WebCore::SVGRootInlineBox::paint): s/SVGRenderBase/SVGRenderSupport/
  86799. * rendering/SVGRootInlineBox.h: Remove SVGRenderBase inheritance.
  86800. * svg/SVGFEImageElement.cpp: Add RenderObject.h include, otherwhise it won't build anymore.
  86801. (WebCore::SVGFEImageElement::build): renderSubtreeToImage is a static function in SVGRenderSupport now.
  86802. * svg/SVGStyledElement.cpp:
  86803. (WebCore::SVGStyledElement::svgAttributeChanged): deregisterResource was renamed to invalidateAllResourcesOfRenderer and is a static function in SVGRenderSupport.
  86804. 2010-06-21 Philippe Normand <pnormand@igalia.com>
  86805. Reviewed by Xan Lopez.
  86806. [PNG decoder] direct access to jmpbuf is deprecated in libpng >= 1.4.0beta103
  86807. https://bugs.webkit.org/show_bug.cgi?id=40907
  86808. Define a JMPBUF macro to cope with deprecation of the jmpbuf
  86809. attribute in libpng >= 1.4.
  86810. * platform/image-decoders/png/PNGImageDecoder.cpp:
  86811. (WebCore::decodingFailed):
  86812. (WebCore::PNGImageReader::decode):
  86813. (WebCore::PNGImageDecoder::headerAvailable):
  86814. (WebCore::PNGImageDecoder::rowAvailable):
  86815. 2010-06-29 Kristian Amlie <kristian.amlie@nokia.com>
  86816. Reviewed by Simon Hausmann.
  86817. [Qt/Symbian] Fixed deployment paths for WebKit declarative plugin.
  86818. * WebCore.pro:
  86819. 2010-06-29 Yury Semikhatsky <yurys@chromium.org>
  86820. Unreviewed: Chromium Win and Mac build fix.
  86821. * bindings/v8/ScriptDebugServer.cpp:
  86822. (WebCore::ScriptDebugServer::setBreakpoint):
  86823. 2010-06-29 Nikolas Zimmermann <nzimmermann@rim.com>
  86824. Reviewed by Dirk Schulze.
  86825. Move PaintInfo/PaintPhase into their own headers, out of RenderObject
  86826. https://bugs.webkit.org/show_bug.cgi?id=41342
  86827. 1) Move enums PaintPhase/PaintBehaviorFlags and the PaintBehaviour typedef from RenderObject into PaintPhase.h.
  86828. Move PaintInfo from RenderObject into PaintInfo.h. Replace s/RenderObject::PaintInfo/PaintInfo/ throughout WebCore/.
  86829. Also move the OverlapTestRequestMap typedef into PaintInfo.h, and replace s/RenderObject::OverlapTestRequestMap/OverlapTestRequestMap/ everywhere.
  86830. 2) Move "RenderObject* paintingRootForChildren(PaintInfo& paintInfo) const" from RenderObject to PaintInfo
  86831. and modify it to take a renderer: "void updatePaintingRootForChildren(const RenderObject* renderer)".
  86832. This changes a common idiom:
  86833. - info.paintingRoot = paintingRootForChildren(paintInfo);
  86834. + info.updatePaintingRootForChildren(this);
  86835. We save resetting the paintingRoot to 0 if it was 0 already and thus do less work.
  86836. 3) Move "bool shouldPaintWithinRoot(PaintInfo& paintInfo) const" from RenderObject to PaintInfo
  86837. and modify it to take a renderer: "bool shouldPaintWithinRoot(const RenderObject* renderer) const".
  86838. This changes a common idiom:
  86839. - if (!shouldPaintWithinRoot(paintInfo))
  86840. + if (!paintInfo.shouldPaintWithinRoot(this))
  86841. 4) Move "void applyTransformToPaintInfo(RenderObject::PaintInfo&, const AffineTransform& localToChildTransform)"
  86842. from SVGRenderSupport to PaintInfo and rename it to "applyTransform", guarded with ENABLE(SVG) blocks.
  86843. This changes a common idiom:
  86844. - applyTransformToPaintInfo(childPaintInfo, localToParentTransform());
  86845. + childPaintInfo.applyTransform(localToParentTransform());
  86846. Add PaintInfo.h / PaintPhase.h to all build systems that list headers.
  86847. * GNUmakefile.am:
  86848. * WebCore.gypi:
  86849. * WebCore.pro:
  86850. * WebCore.vcproj/WebCore.vcproj:
  86851. * WebCore.xcodeproj/project.pbxproj:
  86852. * platform/android/RenderThemeAndroid.cpp:
  86853. (WebCore::getCanvasFromInfo):
  86854. (WebCore::RenderThemeAndroid::paintCheckbox):
  86855. (WebCore::RenderThemeAndroid::paintButton):
  86856. (WebCore::RenderThemeAndroid::paintRadio):
  86857. (WebCore::RenderThemeAndroid::paintTextField):
  86858. (WebCore::RenderThemeAndroid::paintTextArea):
  86859. (WebCore::RenderThemeAndroid::paintSearchField):
  86860. (WebCore::RenderThemeAndroid::paintCombo):
  86861. (WebCore::RenderThemeAndroid::paintMenuList):
  86862. (WebCore::RenderThemeAndroid::paintMenuListButton):
  86863. * platform/android/RenderThemeAndroid.h:
  86864. * platform/efl/RenderThemeEfl.cpp:
  86865. (WebCore::RenderThemeEfl::paintThemePart):
  86866. (WebCore::RenderThemeEfl::paintCheckbox):
  86867. (WebCore::RenderThemeEfl::paintRadio):
  86868. (WebCore::RenderThemeEfl::paintButton):
  86869. (WebCore::RenderThemeEfl::paintMenuList):
  86870. (WebCore::RenderThemeEfl::paintTextField):
  86871. (WebCore::RenderThemeEfl::paintTextArea):
  86872. (WebCore::RenderThemeEfl::paintSearchFieldDecoration):
  86873. (WebCore::RenderThemeEfl::paintSearchFieldResultsButton):
  86874. (WebCore::RenderThemeEfl::paintSearchFieldResultsDecoration):
  86875. (WebCore::RenderThemeEfl::paintSearchFieldCancelButton):
  86876. (WebCore::RenderThemeEfl::paintSearchField):
  86877. * platform/efl/RenderThemeEfl.h:
  86878. * platform/gtk/RenderThemeGtk.cpp:
  86879. (WebCore::paintMozillaGtkWidget):
  86880. (WebCore::RenderThemeGtk::paintCheckbox):
  86881. (WebCore::RenderThemeGtk::paintRadio):
  86882. (WebCore::RenderThemeGtk::paintButton):
  86883. (WebCore::RenderThemeGtk::paintMenuList):
  86884. (WebCore::RenderThemeGtk::paintTextField):
  86885. (WebCore::RenderThemeGtk::paintTextArea):
  86886. (WebCore::RenderThemeGtk::paintSearchFieldResultsButton):
  86887. (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration):
  86888. (WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
  86889. (WebCore::RenderThemeGtk::paintSearchField):
  86890. (WebCore::RenderThemeGtk::paintSliderTrack):
  86891. (WebCore::RenderThemeGtk::paintSliderThumb):
  86892. (WebCore::RenderThemeGtk::paintMediaFullscreenButton):
  86893. (WebCore::RenderThemeGtk::paintMediaMuteButton):
  86894. (WebCore::RenderThemeGtk::paintMediaPlayButton):
  86895. (WebCore::RenderThemeGtk::paintMediaSeekBackButton):
  86896. (WebCore::RenderThemeGtk::paintMediaSeekForwardButton):
  86897. (WebCore::RenderThemeGtk::paintMediaSliderTrack):
  86898. (WebCore::RenderThemeGtk::paintMediaSliderThumb):
  86899. (WebCore::RenderThemeGtk::paintProgressBar):
  86900. * platform/gtk/RenderThemeGtk.h:
  86901. * platform/haiku/RenderThemeHaiku.cpp:
  86902. (WebCore::RenderThemeHaiku::paintCheckbox):
  86903. (WebCore::RenderThemeHaiku::paintRadio):
  86904. (WebCore::RenderThemeHaiku::paintMenuList):
  86905. * platform/haiku/RenderThemeHaiku.h:
  86906. * platform/qt/RenderThemeQt.cpp:
  86907. (WebCore::StylePainter::StylePainter):
  86908. (WebCore::RenderThemeQt::paintCheckbox):
  86909. (WebCore::RenderThemeQt::paintRadio):
  86910. (WebCore::RenderThemeQt::paintButton):
  86911. (WebCore::RenderThemeQt::paintTextField):
  86912. (WebCore::RenderThemeQt::paintTextArea):
  86913. (WebCore::RenderThemeQt::paintMenuList):
  86914. (WebCore::RenderThemeQt::paintMenuListButton):
  86915. (WebCore::RenderThemeQt::paintProgressBar):
  86916. (WebCore::RenderThemeQt::paintSliderTrack):
  86917. (WebCore::RenderThemeQt::paintSliderThumb):
  86918. (WebCore::RenderThemeQt::paintSearchField):
  86919. (WebCore::RenderThemeQt::paintSearchFieldCancelButton):
  86920. (WebCore::RenderThemeQt::paintSearchFieldDecoration):
  86921. (WebCore::RenderThemeQt::paintSearchFieldResultsDecoration):
  86922. (WebCore::RenderThemeQt::paintMediaFullscreenButton):
  86923. (WebCore::RenderThemeQt::paintMediaMuteButton):
  86924. (WebCore::RenderThemeQt::paintMediaPlayButton):
  86925. (WebCore::RenderThemeQt::paintMediaSeekBackButton):
  86926. (WebCore::RenderThemeQt::paintMediaSeekForwardButton):
  86927. (WebCore::RenderThemeQt::paintMediaCurrentTime):
  86928. (WebCore::RenderThemeQt::paintMediaVolumeSliderTrack):
  86929. (WebCore::RenderThemeQt::paintMediaVolumeSliderThumb):
  86930. (WebCore::RenderThemeQt::paintMediaSliderTrack):
  86931. (WebCore::RenderThemeQt::paintMediaSliderThumb):
  86932. * platform/qt/RenderThemeQt.h:
  86933. * platform/wx/RenderThemeWx.cpp:
  86934. (WebCore::RenderThemeWx::paintCheckbox):
  86935. (WebCore::RenderThemeWx::paintRadio):
  86936. (WebCore::RenderThemeWx::paintButton):
  86937. (WebCore::RenderThemeWx::paintTextField):
  86938. (WebCore::RenderThemeWx::paintMenuList):
  86939. (WebCore::RenderThemeWx::paintMenuListButton):
  86940. * rendering/EllipsisBox.cpp:
  86941. (WebCore::EllipsisBox::paint):
  86942. * rendering/EllipsisBox.h:
  86943. * rendering/InlineBox.cpp:
  86944. (WebCore::InlineBox::paint):
  86945. * rendering/InlineBox.h:
  86946. * rendering/InlineFlowBox.cpp:
  86947. (WebCore::InlineFlowBox::paint):
  86948. (WebCore::InlineFlowBox::paintFillLayers):
  86949. (WebCore::InlineFlowBox::paintFillLayer):
  86950. (WebCore::InlineFlowBox::paintBoxDecorations):
  86951. (WebCore::InlineFlowBox::paintMask):
  86952. (WebCore::InlineFlowBox::paintTextDecorations):
  86953. * rendering/InlineFlowBox.h:
  86954. * rendering/InlineTextBox.cpp:
  86955. (WebCore::InlineTextBox::paint):
  86956. * rendering/InlineTextBox.h:
  86957. * rendering/PaintInfo.h: Added.
  86958. (WebCore::PaintInfo::PaintInfo):
  86959. (WebCore::PaintInfo::updatePaintingRootForChildren):
  86960. (WebCore::PaintInfo::shouldPaintWithinRoot):
  86961. (WebCore::PaintInfo::applyTransform):
  86962. * rendering/PaintPhase.h: Added.
  86963. (WebCore::):
  86964. * rendering/RenderBlock.cpp:
  86965. (WebCore::RenderBlock::paint):
  86966. (WebCore::RenderBlock::paintChildren):
  86967. (WebCore::RenderBlock::paintEllipsisBoxes):
  86968. (WebCore::clipOutPositionedObjects):
  86969. (WebCore::RenderBlock::layoutColumns):
  86970. * rendering/RenderBox.cpp:
  86971. (WebCore::RenderBox::paint):
  86972. (WebCore::RenderBox::paintBoxDecorations):
  86973. (WebCore::RenderBox::paintMask):
  86974. * rendering/RenderFieldset.cpp:
  86975. (WebCore::RenderFieldset::paintBoxDecorations):
  86976. * rendering/RenderForeignObject.cpp:
  86977. (WebCore::RenderForeignObject::paint):
  86978. * rendering/RenderLayer.cpp:
  86979. (WebCore::RenderLayer::paint):
  86980. (WebCore::performOverlapTests):
  86981. (WebCore::RenderLayer::paintLayer):
  86982. (WebCore::RenderLayer::paintList):
  86983. (WebCore::RenderLayer::paintPaginatedChildLayer):
  86984. (WebCore::RenderLayer::paintChildLayerIntoColumns):
  86985. * rendering/RenderLayer.h:
  86986. * rendering/RenderLayerBacking.cpp:
  86987. (WebCore::RenderLayerBacking::paintIntoLayer):
  86988. * rendering/RenderLineBoxList.cpp:
  86989. (WebCore::RenderLineBoxList::paint):
  86990. * rendering/RenderLineBoxList.h:
  86991. * rendering/RenderMediaControls.cpp:
  86992. (WebCore::RenderMediaControls::paintMediaControlsPart):
  86993. * rendering/RenderMediaControls.h:
  86994. * rendering/RenderMediaControlsChromium.cpp:
  86995. (WebCore::paintMediaMuteButton):
  86996. (WebCore::paintMediaPlayButton):
  86997. (WebCore::paintMediaSlider):
  86998. (WebCore::paintMediaSliderThumb):
  86999. (WebCore::paintMediaVolumeSlider):
  87000. (WebCore::paintMediaVolumeSliderThumb):
  87001. (WebCore::paintMediaTimelineContainer):
  87002. (WebCore::RenderMediaControlsChromium::paintMediaControlsPart):
  87003. * rendering/RenderMediaControlsChromium.h:
  87004. * rendering/RenderObject.h:
  87005. * rendering/RenderPath.cpp:
  87006. (WebCore::RenderPath::paint):
  87007. * rendering/RenderReplaced.cpp:
  87008. (WebCore::RenderReplaced::paint):
  87009. (WebCore::RenderReplaced::shouldPaint):
  87010. * rendering/RenderSVGContainer.cpp:
  87011. (WebCore::RenderSVGContainer::paint):
  87012. * rendering/RenderSVGResourceMarker.cpp:
  87013. (WebCore::RenderSVGResourceMarker::draw):
  87014. * rendering/RenderSVGResourceMarker.h:
  87015. * rendering/RenderSVGRoot.cpp:
  87016. (WebCore::RenderSVGRoot::paint):
  87017. * rendering/RenderSVGText.cpp:
  87018. (WebCore::RenderSVGText::paint):
  87019. * rendering/RenderScrollbarPart.cpp:
  87020. (WebCore::RenderScrollbarPart::paintIntoRect):
  87021. * rendering/RenderTable.cpp:
  87022. (WebCore::RenderTable::paintObject):
  87023. (WebCore::RenderTable::paintBoxDecorations):
  87024. * rendering/RenderTableCell.cpp:
  87025. (WebCore::RenderTableCell::paint):
  87026. (WebCore::RenderTableCell::paintBackgroundsBehindCell):
  87027. (WebCore::RenderTableCell::paintBoxDecorations):
  87028. * rendering/RenderTheme.cpp:
  87029. (WebCore::RenderTheme::paint):
  87030. (WebCore::RenderTheme::paintBorderOnly):
  87031. (WebCore::RenderTheme::paintDecorations):
  87032. (WebCore::RenderTheme::paintMeter):
  87033. * rendering/RenderTheme.h:
  87034. (WebCore::RenderTheme::paintCapsLockIndicator):
  87035. (WebCore::RenderTheme::paintCheckbox):
  87036. (WebCore::RenderTheme::paintRadio):
  87037. (WebCore::RenderTheme::paintButton):
  87038. (WebCore::RenderTheme::paintInnerSpinButton):
  87039. (WebCore::RenderTheme::paintOuterSpinButton):
  87040. (WebCore::RenderTheme::paintTextField):
  87041. (WebCore::RenderTheme::paintTextArea):
  87042. (WebCore::RenderTheme::paintMenuList):
  87043. (WebCore::RenderTheme::paintMenuListButton):
  87044. (WebCore::RenderTheme::paintProgressBar):
  87045. (WebCore::RenderTheme::paintSliderTrack):
  87046. (WebCore::RenderTheme::paintSliderThumb):
  87047. (WebCore::RenderTheme::paintSearchField):
  87048. (WebCore::RenderTheme::paintSearchFieldCancelButton):
  87049. (WebCore::RenderTheme::paintSearchFieldDecoration):
  87050. (WebCore::RenderTheme::paintSearchFieldResultsDecoration):
  87051. (WebCore::RenderTheme::paintSearchFieldResultsButton):
  87052. (WebCore::RenderTheme::paintMediaFullscreenButton):
  87053. (WebCore::RenderTheme::paintMediaPlayButton):
  87054. (WebCore::RenderTheme::paintMediaMuteButton):
  87055. (WebCore::RenderTheme::paintMediaSeekBackButton):
  87056. (WebCore::RenderTheme::paintMediaSeekForwardButton):
  87057. (WebCore::RenderTheme::paintMediaSliderTrack):
  87058. (WebCore::RenderTheme::paintMediaSliderThumb):
  87059. (WebCore::RenderTheme::paintMediaVolumeSliderContainer):
  87060. (WebCore::RenderTheme::paintMediaVolumeSliderTrack):
  87061. (WebCore::RenderTheme::paintMediaVolumeSliderThumb):
  87062. (WebCore::RenderTheme::paintMediaRewindButton):
  87063. (WebCore::RenderTheme::paintMediaReturnToRealtimeButton):
  87064. (WebCore::RenderTheme::paintMediaToggleClosedCaptionsButton):
  87065. (WebCore::RenderTheme::paintMediaControlsBackground):
  87066. (WebCore::RenderTheme::paintMediaCurrentTime):
  87067. (WebCore::RenderTheme::paintMediaTimeRemaining):
  87068. * rendering/RenderThemeChromiumMac.h:
  87069. * rendering/RenderThemeChromiumMac.mm:
  87070. (WebCore::RenderThemeChromiumMac::paintMediaPlayButton):
  87071. (WebCore::RenderThemeChromiumMac::paintMediaMuteButton):
  87072. (WebCore::RenderThemeChromiumMac::paintMediaSliderTrack):
  87073. (WebCore::RenderThemeChromiumMac::paintMediaControlsBackground):
  87074. (WebCore::RenderThemeChromiumMac::paintMediaVolumeSliderTrack):
  87075. (WebCore::RenderThemeChromiumMac::paintMediaVolumeSliderThumb):
  87076. * rendering/RenderThemeChromiumSkia.cpp:
  87077. (WebCore::RenderThemeChromiumSkia::paintCheckbox):
  87078. (WebCore::RenderThemeChromiumSkia::paintRadio):
  87079. (WebCore::paintButtonLike):
  87080. (WebCore::RenderThemeChromiumSkia::paintButton):
  87081. (WebCore::RenderThemeChromiumSkia::paintTextField):
  87082. (WebCore::RenderThemeChromiumSkia::paintTextArea):
  87083. (WebCore::RenderThemeChromiumSkia::paintSearchField):
  87084. (WebCore::RenderThemeChromiumSkia::paintSearchFieldCancelButton):
  87085. (WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsDecoration):
  87086. (WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsButton):
  87087. (WebCore::RenderThemeChromiumSkia::paintMediaControlsBackground):
  87088. (WebCore::RenderThemeChromiumSkia::paintMediaSliderTrack):
  87089. (WebCore::RenderThemeChromiumSkia::paintMediaVolumeSliderTrack):
  87090. (WebCore::RenderThemeChromiumSkia::paintMediaSliderThumb):
  87091. (WebCore::RenderThemeChromiumSkia::paintMediaVolumeSliderThumb):
  87092. (WebCore::RenderThemeChromiumSkia::paintMediaPlayButton):
  87093. (WebCore::RenderThemeChromiumSkia::paintMediaMuteButton):
  87094. (WebCore::RenderThemeChromiumSkia::paintMenuList):
  87095. (WebCore::RenderThemeChromiumSkia::paintMenuListButton):
  87096. (WebCore::RenderThemeChromiumSkia::paintSliderTrack):
  87097. (WebCore::RenderThemeChromiumSkia::paintSliderThumb):
  87098. (WebCore::RenderThemeChromiumSkia::paintProgressBar):
  87099. * rendering/RenderThemeChromiumSkia.h:
  87100. * rendering/RenderThemeChromiumWin.cpp:
  87101. (WebCore::RenderThemeChromiumWin::paintCheckbox):
  87102. (WebCore::RenderThemeChromiumWin::paintRadio):
  87103. (WebCore::RenderThemeChromiumWin::paintButton):
  87104. (WebCore::RenderThemeChromiumWin::paintTextField):
  87105. (WebCore::RenderThemeChromiumWin::paintSliderTrack):
  87106. (WebCore::RenderThemeChromiumWin::paintSliderThumb):
  87107. (WebCore::RenderThemeChromiumWin::paintMenuList):
  87108. (WebCore::RenderThemeChromiumWin::paintTextFieldInternal):
  87109. (WebCore::RenderThemeChromiumWin::paintProgressBar):
  87110. * rendering/RenderThemeChromiumWin.h:
  87111. * rendering/RenderThemeMac.h:
  87112. * rendering/RenderThemeMac.mm:
  87113. (WebCore::RenderThemeMac::paintTextField):
  87114. (WebCore::RenderThemeMac::paintCapsLockIndicator):
  87115. (WebCore::RenderThemeMac::paintTextArea):
  87116. (WebCore::RenderThemeMac::paintMenuList):
  87117. (WebCore::RenderThemeMac::paintMeter):
  87118. (WebCore::RenderThemeMac::paintProgressBar):
  87119. (WebCore::RenderThemeMac::paintMenuListButtonGradients):
  87120. (WebCore::RenderThemeMac::paintMenuListButton):
  87121. (WebCore::RenderThemeMac::paintSliderTrack):
  87122. (WebCore::RenderThemeMac::paintSliderThumb):
  87123. (WebCore::RenderThemeMac::paintSearchField):
  87124. (WebCore::RenderThemeMac::paintSearchFieldCancelButton):
  87125. (WebCore::RenderThemeMac::paintSearchFieldDecoration):
  87126. (WebCore::RenderThemeMac::paintSearchFieldResultsDecoration):
  87127. (WebCore::RenderThemeMac::paintSearchFieldResultsButton):
  87128. (WebCore::getUnzoomedRectAndAdjustCurrentContext):
  87129. (WebCore::RenderThemeMac::paintMediaFullscreenButton):
  87130. (WebCore::RenderThemeMac::paintMediaMuteButton):
  87131. (WebCore::RenderThemeMac::paintMediaPlayButton):
  87132. (WebCore::RenderThemeMac::paintMediaSeekBackButton):
  87133. (WebCore::RenderThemeMac::paintMediaSeekForwardButton):
  87134. (WebCore::RenderThemeMac::paintMediaSliderTrack):
  87135. (WebCore::RenderThemeMac::paintMediaSliderThumb):
  87136. (WebCore::RenderThemeMac::paintMediaRewindButton):
  87137. (WebCore::RenderThemeMac::paintMediaReturnToRealtimeButton):
  87138. (WebCore::RenderThemeMac::paintMediaToggleClosedCaptionsButton):
  87139. (WebCore::RenderThemeMac::paintMediaControlsBackground):
  87140. (WebCore::RenderThemeMac::paintMediaCurrentTime):
  87141. (WebCore::RenderThemeMac::paintMediaTimeRemaining):
  87142. * rendering/RenderThemeSafari.cpp:
  87143. (WebCore::RenderThemeSafari::paintCheckbox):
  87144. (WebCore::RenderThemeSafari::paintRadio):
  87145. (WebCore::RenderThemeSafari::paintButton):
  87146. (WebCore::RenderThemeSafari::paintTextField):
  87147. (WebCore::RenderThemeSafari::paintCapsLockIndicator):
  87148. (WebCore::RenderThemeSafari::paintTextArea):
  87149. (WebCore::RenderThemeSafari::paintMenuList):
  87150. (WebCore::RenderThemeSafari::paintMenuListButtonGradients):
  87151. (WebCore::RenderThemeSafari::paintMenuListButton):
  87152. (WebCore::RenderThemeSafari::paintSliderTrack):
  87153. (WebCore::RenderThemeSafari::paintSliderThumb):
  87154. (WebCore::RenderThemeSafari::paintSearchField):
  87155. (WebCore::RenderThemeSafari::paintSearchFieldCancelButton):
  87156. (WebCore::RenderThemeSafari::paintSearchFieldDecoration):
  87157. (WebCore::RenderThemeSafari::paintSearchFieldResultsDecoration):
  87158. (WebCore::RenderThemeSafari::paintSearchFieldResultsButton):
  87159. (WebCore::RenderThemeSafari::paintMediaFullscreenButton):
  87160. (WebCore::RenderThemeSafari::paintMediaMuteButton):
  87161. (WebCore::RenderThemeSafari::paintMediaPlayButton):
  87162. (WebCore::RenderThemeSafari::paintMediaSeekBackButton):
  87163. (WebCore::RenderThemeSafari::paintMediaSeekForwardButton):
  87164. (WebCore::RenderThemeSafari::paintMediaSliderTrack):
  87165. (WebCore::RenderThemeSafari::paintMediaSliderThumb):
  87166. * rendering/RenderThemeSafari.h:
  87167. * rendering/RenderThemeWin.cpp:
  87168. (WebCore::RenderThemeWin::paintButton):
  87169. (WebCore::RenderThemeWin::paintTextField):
  87170. (WebCore::RenderThemeWin::paintMenuList):
  87171. (WebCore::RenderThemeWin::paintMenuListButton):
  87172. (WebCore::RenderThemeWin::paintSliderTrack):
  87173. (WebCore::RenderThemeWin::paintSliderThumb):
  87174. (WebCore::RenderThemeWin::paintSearchField):
  87175. (WebCore::RenderThemeWin::paintSearchFieldCancelButton):
  87176. (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration):
  87177. (WebCore::RenderThemeWin::paintSearchFieldResultsButton):
  87178. (WebCore::RenderThemeWin::paintMediaFullscreenButton):
  87179. (WebCore::RenderThemeWin::paintMediaMuteButton):
  87180. (WebCore::RenderThemeWin::paintMediaPlayButton):
  87181. (WebCore::RenderThemeWin::paintMediaSeekBackButton):
  87182. (WebCore::RenderThemeWin::paintMediaSeekForwardButton):
  87183. (WebCore::RenderThemeWin::paintMediaSliderTrack):
  87184. (WebCore::RenderThemeWin::paintMediaSliderThumb):
  87185. (WebCore::RenderThemeWin::paintMediaToggleClosedCaptionsButton):
  87186. * rendering/RenderThemeWin.h:
  87187. (WebCore::RenderThemeWin::paintCheckbox):
  87188. (WebCore::RenderThemeWin::paintRadio):
  87189. (WebCore::RenderThemeWin::paintTextArea):
  87190. (WebCore::RenderThemeWin::paintSearchFieldDecoration):
  87191. * rendering/RenderThemeWince.cpp:
  87192. (WebCore::RenderThemeWince::paintButton):
  87193. (WebCore::RenderThemeWince::paintTextField):
  87194. (WebCore::RenderThemeWince::paintMenuList):
  87195. (WebCore::RenderThemeWince::paintMenuListButton):
  87196. (WebCore::RenderThemeWince::paintSearchField):
  87197. (WebCore::RenderThemeWince::paintSearchFieldCancelButton):
  87198. (WebCore::RenderThemeWince::paintSearchFieldResultsDecoration):
  87199. (WebCore::RenderThemeWince::paintSearchFieldResultsButton):
  87200. (WebCore::RenderThemeWince::paintSliderTrack):
  87201. (WebCore::RenderThemeWince::paintSliderThumb):
  87202. (WebCore::RenderThemeWince::paintMediaFullscreenButton):
  87203. (WebCore::RenderThemeWince::paintMediaMuteButton):
  87204. (WebCore::RenderThemeWince::paintMediaPlayButton):
  87205. (WebCore::RenderThemeWince::paintMediaSeekBackButton):
  87206. (WebCore::RenderThemeWince::paintMediaSeekForwardButton):
  87207. (WebCore::RenderThemeWince::paintMediaSliderTrack):
  87208. (WebCore::RenderThemeWince::paintMediaSliderThumb):
  87209. * rendering/RenderThemeWince.h:
  87210. (WebCore::RenderThemeWince::paintCheckbox):
  87211. (WebCore::RenderThemeWince::paintRadio):
  87212. (WebCore::RenderThemeWince::paintTextArea):
  87213. (WebCore::RenderThemeWince::paintSearchFieldDecoration):
  87214. * rendering/RootInlineBox.cpp:
  87215. (WebCore::RootInlineBox::paintEllipsisBox):
  87216. (WebCore::RootInlineBox::paintCustomHighlight):
  87217. (WebCore::RootInlineBox::paint):
  87218. (WebCore::RootInlineBox::fillLineSelectionGap):
  87219. * rendering/RootInlineBox.h:
  87220. * rendering/SVGInlineFlowBox.cpp:
  87221. (WebCore::SVGInlineFlowBox::paint):
  87222. * rendering/SVGInlineFlowBox.h:
  87223. * rendering/SVGInlineTextBox.cpp:
  87224. (WebCore::SVGInlineTextBox::paint):
  87225. * rendering/SVGInlineTextBox.h:
  87226. * rendering/SVGMarkerLayoutInfo.cpp:
  87227. (WebCore::SVGMarkerLayoutInfo::drawMarkers):
  87228. * rendering/SVGMarkerLayoutInfo.h:
  87229. * rendering/SVGRenderSupport.cpp:
  87230. (WebCore::SVGRenderBase::prepareToRenderSVGContent):
  87231. (WebCore::SVGRenderBase::finishRenderSVGContent):
  87232. (WebCore::renderSubtreeToImage):
  87233. * rendering/SVGRenderSupport.h:
  87234. * rendering/SVGRootInlineBox.cpp:
  87235. (WebCore::SVGRootInlineBox::paint):
  87236. * rendering/SVGRootInlineBox.h:
  87237. 2010-06-29 Nikolas Zimmermann <nzimmermann@rim.com>
  87238. Not reviewed. Sort Xcode project file.
  87239. * WebCore.xcodeproj/project.pbxproj:
  87240. 2010-06-29 Nikolas Zimmermann <nzimmermann@rim.com>
  87241. Reviewed by Dirk Schulze.
  87242. Provide floating-point support for text selection framework
  87243. https://bugs.webkit.org/show_bug.cgi?id=40665
  87244. Rename 'glyphScale' to 'horizontalGlyphStretch' upon Dans' request.
  87245. Also guard the variables in ENABLE(SVG) blocks. Initialize variable to 1 instead of 1.0f, as that's the new style rule.
  87246. No functional changes, thus no new tests.
  87247. * platform/graphics/TextRun.h:
  87248. (WebCore::TextRun::TextRun):
  87249. (WebCore::TextRun::horizontalGlyphStretch):
  87250. (WebCore::TextRun::setHorizontalGlyphStretch):
  87251. (WebCore::TextRun::spacingDisabled):
  87252. * platform/graphics/WidthIterator.cpp:
  87253. (WebCore::WidthIterator::advance):
  87254. * rendering/SVGInlineTextBox.cpp:
  87255. (WebCore::SVGInlineTextBox::offsetForPosition):
  87256. 2010-06-29 Nikolas Zimmermann <nzimmermann@rim.com>
  87257. Reviewed by Dirk Schulze.
  87258. REGRESSION: text-shadow CSS applied to SVG no longer works
  87259. https://bugs.webkit.org/show_bug.cgi?id=40960
  87260. Readd text-shadow support, this time supporting multiple shadows.
  87261. It's not exactly like HTML, because SVG draws fill/stroke phases seperated - the png shows the difference.
  87262. Tests: svg/css/text-shadow-multiple.xhtml
  87263. * rendering/InlineTextBox.cpp:
  87264. (WebCore::InlineTextBox::applyShadowToGraphicsContext): Refactored from paintTextWithShadows(), so SVG can reuse.
  87265. (WebCore::paintTextWithShadows): Use refactored applyShadowToGraphicsContext() function.
  87266. * rendering/InlineTextBox.h:
  87267. * rendering/SVGInlineTextBox.cpp:
  87268. (WebCore::SVGInlineTextBox::paintTextWithShadows): Added.
  87269. (WebCore::SVGInlineTextBox::paintText): Call paintTextWithShadows() instead of directly drawing the text.
  87270. * rendering/SVGInlineTextBox.h:
  87271. 2010-06-29 Pavel Podivilov <podivilov@chromium.org>
  87272. Reviewed by Yury Semikhatsky.
  87273. Web Inspector: show actual breakpoint position in UI.
  87274. When user sets breakpoint from UI, javascript engine may actually set
  87275. it on a different line. If so, move breakpoint to the correct position
  87276. in frontend.
  87277. https://bugs.webkit.org/show_bug.cgi?id=40781
  87278. * bindings/js/ScriptDebugServer.cpp:
  87279. (WebCore::ScriptDebugServer::setBreakpoint):
  87280. (WebCore::ScriptDebugServer::dispatchDidPause):
  87281. * bindings/js/ScriptDebugServer.h:
  87282. * bindings/v8/ScriptDebugServer.cpp:
  87283. (WebCore::ScriptDebugServer::setBreakpoint):
  87284. (WebCore::ScriptDebugServer::currentCallFrame):
  87285. * bindings/v8/ScriptDebugServer.h:
  87286. * inspector/InspectorBackend.cpp:
  87287. (WebCore::InspectorBackend::setBreakpoint):
  87288. * inspector/InspectorBackend.h:
  87289. * inspector/InspectorBackend.idl:
  87290. * inspector/InspectorController.cpp:
  87291. (WebCore::InspectorController::didCommitLoad):
  87292. (WebCore::InspectorController::setBreakpoint):
  87293. (WebCore::InspectorController::removeBreakpoint):
  87294. (WebCore::InspectorController::didParseSource):
  87295. * inspector/InspectorController.h:
  87296. * inspector/InspectorFrontend.cpp:
  87297. (WebCore::InspectorFrontend::didSetBreakpoint):
  87298. * inspector/InspectorFrontend.h:
  87299. * inspector/front-end/BreakpointManager.js:
  87300. (WebInspector.BreakpointManager.prototype.setOneTimeBreakpoint):
  87301. (WebInspector.BreakpointManager.prototype.removeOneTimeBreakpoint):
  87302. (WebInspector.BreakpointManager.prototype.setBreakpoint):
  87303. (WebInspector.BreakpointManager.prototype.restoredBreakpoint):
  87304. (WebInspector.BreakpointManager.prototype.removeBreakpoint):
  87305. (WebInspector.BreakpointManager.prototype._setBreakpoint):
  87306. (WebInspector.BreakpointManager.prototype._removeBreakpoint):
  87307. (WebInspector.BreakpointManager.prototype._setBreakpointOnBackend.didSetBreakpoint):
  87308. (WebInspector.BreakpointManager.prototype._setBreakpointOnBackend):
  87309. (WebInspector.Breakpoint.prototype.set enabled):
  87310. (WebInspector.Breakpoint.prototype.set condition):
  87311. * inspector/front-end/InspectorBackendStub.js:
  87312. (.WebInspector.InspectorBackendStub.prototype.setBreakpoint):
  87313. * inspector/front-end/ScriptView.js:
  87314. (WebInspector.ScriptView.prototype._addBreakpoint):
  87315. * inspector/front-end/SourceView.js:
  87316. (WebInspector.SourceView.prototype._addBreakpoint):
  87317. 2010-06-29 Dumitru Daniliuc <dumi@chromium.org>
  87318. Reviewed by Adam Barth.
  87319. Catch toString() exceptions in all DB-related code.
  87320. https://bugs.webkit.org/show_bug.cgi?id=41297
  87321. * bindings/v8/custom/V8BindingMacros.h:
  87322. * bindings/v8/custom/V8DOMWindowCustom.cpp:
  87323. (WebCore::V8DOMWindow::openDatabaseCallback):
  87324. * bindings/v8/custom/V8DatabaseCustom.cpp:
  87325. (WebCore::V8Database::changeVersionCallback):
  87326. * bindings/v8/custom/V8DatabaseSyncCustom.cpp:
  87327. (WebCore::V8DatabaseSync::changeVersionCallback):
  87328. * bindings/v8/custom/V8SQLTransactionCustom.cpp:
  87329. (WebCore::V8SQLTransaction::executeSqlCallback):
  87330. * bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:
  87331. (WebCore::V8SQLTransactionSync::executeSqlCallback):
  87332. * bindings/v8/custom/V8WorkerContextCustom.cpp:
  87333. (WebCore::V8WorkerContext::openDatabaseCallback):
  87334. (WebCore::V8WorkerContext::openDatabaseSyncCallback):
  87335. 2010-06-29 Herczeg Zoltan <zherczeg@webkit.org>
  87336. Rubber-stamped by Nikolas Zimmermann.
  87337. Windows build fix.
  87338. https://bugs.webkit.org/show_bug.cgi?id=5861
  87339. * svg/SVGFEConvolveMatrixElement.cpp:
  87340. (WebCore::SVGFEConvolveMatrixElement::build):
  87341. 2010-06-29 Zoltan Herczeg <zherczeg@webkit.org>
  87342. Reviewed by Nikolas Zimmermann.
  87343. Add ConvolveMatrix SVG filter effect
  87344. https://bugs.webkit.org/show_bug.cgi?id=5861
  87345. The patch was originally started by Dirk Schulze,
  87346. and the .cpp and .h files are mostly his work.
  87347. I updated the build systems and do some minor updates
  87348. to the source files as well. The patch does not contain
  87349. the implementation of the filter: this is intended,
  87350. and will be landed in a follow-up patch.
  87351. * Android.derived.jscbindings.mk:
  87352. * Android.derived.v8bindings.mk:
  87353. * Android.mk:
  87354. * CMakeLists.txt:
  87355. * DerivedSources.cpp:
  87356. * DerivedSources.make:
  87357. * GNUmakefile.am:
  87358. * WebCore.gypi:
  87359. * WebCore.pri:
  87360. * WebCore.pro:
  87361. * WebCore.vcproj/WebCore.vcproj:
  87362. * WebCore.xcodeproj/project.pbxproj:
  87363. * bindings/objc/DOM.mm:
  87364. (WebCore::createElementClassMap):
  87365. * bindings/objc/DOMSVG.h:
  87366. * page/DOMWindow.idl:
  87367. * svg/SVGAllInOne.cpp:
  87368. * svg/SVGFEConvolveMatrixElement.cpp: Added.
  87369. (WebCore::SVGFEConvolveMatrixElement::SVGFEConvolveMatrixElement):
  87370. (WebCore::SVGFEConvolveMatrixElement::~SVGFEConvolveMatrixElement):
  87371. (WebCore::SVGFEConvolveMatrixElement::parseMappedAttribute):
  87372. (WebCore::SVGFEConvolveMatrixElement::setOrder):
  87373. (WebCore::SVGFEConvolveMatrixElement::setKernelUnitLength):
  87374. (WebCore::SVGFEConvolveMatrixElement::build):
  87375. * svg/SVGFEConvolveMatrixElement.h: Added.
  87376. * svg/SVGFEConvolveMatrixElement.idl: Added.
  87377. * svg/graphics/filters/SVGFEConvolveMatrix.cpp:
  87378. (WebCore::FEConvolveMatrix::FEConvolveMatrix):
  87379. (WebCore::FEConvolveMatrix::create):
  87380. (WebCore::FEConvolveMatrix::kernelSize):
  87381. (WebCore::FEConvolveMatrix::setKernelSize):
  87382. (WebCore::FEConvolveMatrix::targetOffset):
  87383. (WebCore::FEConvolveMatrix::setTargetOffset):
  87384. (WebCore::operator<<):
  87385. (WebCore::FEConvolveMatrix::externalRepresentation):
  87386. * svg/graphics/filters/SVGFEConvolveMatrix.h:
  87387. (WebCore::):
  87388. * svg/svgattrs.in:
  87389. * svg/svgtags.in:
  87390. 2010-06-28 Adam Barth <abarth@webkit.org>
  87391. Reviewed by Eric Seidel.
  87392. HTML5 tree builder shouldn't ASSERT on HTML5lib test suite
  87393. https://bugs.webkit.org/show_bug.cgi?id=41335
  87394. Sketch out the EndTag handling for InBodyMode.
  87395. * html/HTMLTreeBuilder.cpp:
  87396. (WebCore::HTMLTreeBuilder::processEndTag):
  87397. * html/HTMLTreeBuilder.h:
  87398. (WebCore::HTMLTreeBuilder::ElementStack::inScope):
  87399. (WebCore::HTMLTreeBuilder::clearActiveFormatingElementsUpToLastMarker):
  87400. (WebCore::HTMLTreeBuilder::generateImpliedEndTags):
  87401. 2010-06-28 David Levin <levin@chromium.org>
  87402. Reviewed by NOBODY (chromium build fix).
  87403. * rendering/RenderObject.h: Add missing forward declaration.
  87404. 2010-06-28 Adam Barth <abarth@webkit.org>
  87405. Unreviewed.
  87406. I accidently gave up my ref and tried to dereference a null pointer.
  87407. This code is keeping an extra ref that it doesn't need, but that fact
  87408. was somewhat hidden before.
  87409. * dom/ContainerNode.cpp:
  87410. (WebCore::ContainerNode::addChildCommon):
  87411. (WebCore::ContainerNode::parserAddChild):
  87412. (WebCore::ContainerNode::legacyParserAddChild):
  87413. * dom/ContainerNode.h:
  87414. 2010-06-28 Adam Barth <abarth@webkit.org>
  87415. Unreviewed.
  87416. Refactor common code into addChildCommon
  87417. https://bugs.webkit.org/show_bug.cgi?id=41326
  87418. Eric asked that we share the common code between these codepaths.
  87419. * dom/ContainerNode.cpp:
  87420. (WebCore::ContainerNode::addChildCommon):
  87421. (WebCore::ContainerNode::parserAddChild):
  87422. (WebCore::ContainerNode::addChild):
  87423. * dom/ContainerNode.h:
  87424. 2010-06-28 Eric Seidel <eric@webkit.org>
  87425. Reviewed by Adam Barth.
  87426. Implement HTMLTreeBuilder::reconstructTheActiveFormattingElements
  87427. https://bugs.webkit.org/show_bug.cgi?id=41319
  87428. Restructure the code to not use in-band data, which is what
  87429. got us in trouble with a signed/unsigned mismatch before.
  87430. * html/HTMLTreeBuilder.cpp:
  87431. (WebCore::HTMLTreeBuilder::indexOfFirstUnopenFormattingElement):
  87432. (WebCore::HTMLTreeBuilder::reconstructTheActiveFormattingElements):
  87433. * html/HTMLTreeBuilder.h:
  87434. 2010-06-28 Daniel Bates <dbates@rim.com>
  87435. Unreviewed, attempt to fix Qt bots.
  87436. Attempt to fix the build after changeset 62079 <http://trac.webkit.org/changeset/62079>
  87437. (https://bugs.webkit.org/show_bug.cgi?id=41324).
  87438. Rename some more call sites that were missed in the initial landing.
  87439. * dom/XMLDocumentParserQt.cpp:
  87440. (WebCore::XMLDocumentParser::parseStartElement):
  87441. (WebCore::XMLDocumentParser::parseProcessingInstruction):
  87442. (WebCore::XMLDocumentParser::parseCdata):
  87443. (WebCore::XMLDocumentParser::parseComment):
  87444. (WebCore::XMLDocumentParser::parseDtd):
  87445. 2010-06-28 Daniel Bates <dbates@rim.com>
  87446. Unreviewed, build fix.
  87447. Change return type of method HTMLTreeBuilder::reconstructTheActiveFormattingElements()
  87448. from int to unsigned.
  87449. Attempt to fix the build after changeset 62077 <https://trac.webkit.org/changeset/62077>
  87450. (https://bugs.webkit.org/show_bug.cgi?id=41319).
  87451. * html/HTMLTreeBuilder.cpp:
  87452. (WebCore::HTMLTreeBuilder::indexOfLastOpenFormattingElementOrMarker):
  87453. (WebCore::HTMLTreeBuilder::reconstructTheActiveFormattingElements):
  87454. * html/HTMLTreeBuilder.h:
  87455. 2010-06-28 Eric Seidel <eric@webkit.org>
  87456. Reviewed by Adam Barth.
  87457. Rename ContainerNode::addChild to legacyParserAddChild to indicate its parser-only intended use
  87458. https://bugs.webkit.org/show_bug.cgi?id=41324
  87459. A bunch of places in the code were calling ContainerNode::addChild.
  87460. I don't think they actually want to be doing that, as it has special
  87461. form-related handling which is part of LegacyHTMLTreeBuilder.
  87462. No functional changes, thus no tests.
  87463. * dom/ContainerNode.cpp:
  87464. (WebCore::ContainerNode::legacyParserAddChild):
  87465. * dom/ContainerNode.h:
  87466. * dom/DOMImplementation.cpp:
  87467. (WebCore::DOMImplementation::createDocument):
  87468. * dom/Node.cpp:
  87469. (WebCore::Node::legacyParserAddChild):
  87470. * dom/Node.h:
  87471. * html/HTMLKeygenElement.cpp:
  87472. (WebCore::HTMLKeygenElement::HTMLKeygenElement):
  87473. * html/HTMLTableElement.cpp:
  87474. (WebCore::HTMLTableElement::legacyParserAddChild):
  87475. * html/HTMLTableElement.h:
  87476. * html/HTMLTableRowElement.cpp:
  87477. (WebCore::HTMLTableRowElement::legacyParserAddChild):
  87478. * html/HTMLTableRowElement.h:
  87479. * html/HTMLTableSectionElement.cpp:
  87480. (WebCore::HTMLTableSectionElement::legacyParserAddChild):
  87481. * html/HTMLTableSectionElement.h:
  87482. * html/HTMLViewSourceDocument.cpp:
  87483. (WebCore::HTMLViewSourceDocument::createContainingTable):
  87484. (WebCore::HTMLViewSourceDocument::addSpanWithClassName):
  87485. (WebCore::HTMLViewSourceDocument::addLine):
  87486. (WebCore::HTMLViewSourceDocument::addText):
  87487. (WebCore::HTMLViewSourceDocument::addLink):
  87488. 2010-06-28 Eric Seidel <eric@webkit.org>
  87489. Reviewed by Adam Barth.
  87490. Implement HTMLTreeBuilder::reconstructTheActiveFormattingElements
  87491. https://bugs.webkit.org/show_bug.cgi?id=41319
  87492. This is basically a direct transcription of HTML5 TreeBuilder spec:
  87493. http://www.whatwg.org/specs/web-apps/current-work/multipage/parsing.html#list-of-active-formatting-elements
  87494. This code is covered by various tests in html5lib/runner which we
  87495. can't run yet due to other asserts. Adam and I are working on
  87496. getting rid of those ASSERTS so that this (and other code) will
  87497. be better tested shortly.
  87498. * html/HTMLTreeBuilder.cpp:
  87499. (WebCore::HTMLTreeBuilder::insertFormatingElement):
  87500. (WebCore::HTMLTreeBuilder::reconstructTheActiveFormattingElements):
  87501. * html/HTMLTreeBuilder.h:
  87502. (WebCore::HTMLTreeBuilder::ElementStack::contains):
  87503. (WebCore::HTMLTreeBuilder::FormatingElementEntry::FormatingElementEntry):
  87504. (WebCore::HTMLTreeBuilder::FormatingElementEntry::):
  87505. (WebCore::HTMLTreeBuilder::FormatingElementEntry::isMarker):
  87506. (WebCore::HTMLTreeBuilder::FormatingElementEntry::element):
  87507. (WebCore::HTMLTreeBuilder::FormatingElementEntry::replaceElement):
  87508. 2010-06-28 Adam Barth <abarth@webkit.org>
  87509. Reviewed by Eric Seidel.
  87510. Fix ASSERT so we can run more HTML5lib tests
  87511. https://bugs.webkit.org/show_bug.cgi?id=41325
  87512. We can't call Node::addChild because that function contains a bunch of
  87513. logic from the old parser. Instead, this patch creates a new version
  87514. of addChild that's does less validating (that's the tree builder's
  87515. job).
  87516. * dom/ContainerNode.cpp:
  87517. (WebCore::ContainerNode::parserAddChild):
  87518. * dom/ContainerNode.h:
  87519. * dom/Node.cpp:
  87520. (WebCore::Node::parserAddChild):
  87521. * dom/Node.h:
  87522. * html/HTMLTreeBuilder.h:
  87523. (WebCore::HTMLTreeBuilder::attach):
  87524. 2010-06-28 David Levin <levin@chromium.org>
  87525. Reviewed by NOBODY (chromium build fix).
  87526. * bindings/v8/ScriptEventListener.h: Changed forward declaration
  87527. to correspond to the code change doing in r62052.
  87528. 2010-06-28 Brady Eidson <beidson@apple.com>
  87529. Reviewed by Alexey Proskuryakov.
  87530. Support for https://bugs.webkit.org/show_bug.cgi?id=40484
  87531. In working on adding beforeProcess, it becomes necessary for JSLazyEventListeners to always know what their
  87532. original Node* was, even if it was a window event listener.
  87533. For HTMLFrameSet, HTMLBody, and SVGSVG elements, a second form of createAttributeEventListener was used that
  87534. took a Frame* argument and didn't set the original Node* on the JSLazyEventListener.
  87535. This patch changes that form of the function to createWindowAttributeEventListener, and passes the Node* along
  87536. for later use by the beforeProcess mechanism.
  87537. No new tests. (No change in behavior)
  87538. * bindings/js/ScriptEventListener.cpp:
  87539. (WebCore::createWindowAttributeEventListener): Renamed from createAttributeEventListener, takes a Node* instead
  87540. of a Frame*, and figures out the Frame* itself internally.
  87541. * bindings/js/ScriptEventListener.h:
  87542. * bindings/v8/ScriptEventListener.cpp:
  87543. (WebCore::createWindowAttributeEventListener): Renamed from createAttributeEventListener, takes a Node* instead
  87544. of a Frame*, and figures out the Frame* itself internally. Note that V8LazyEventListener doesn't allow us to
  87545. pass the Element* argument in so this beforeprocess feature won't fully work on V8 builds until this is changed.
  87546. * bindings/v8/ScriptEventListener.h:
  87547. * html/HTMLBodyElement.cpp:
  87548. (WebCore::HTMLBodyElement::parseMappedAttribute): Use createWindowAttributeEventListener instead.
  87549. * html/HTMLFrameSetElement.cpp:
  87550. (WebCore::HTMLFrameSetElement::parseMappedAttribute): Ditto.
  87551. * svg/SVGSVGElement.cpp:
  87552. (WebCore::SVGSVGElement::parseMappedAttribute): Ditto. Also add some missing copyright dates that `svn log` proves
  87553. should be there.
  87554. 2010-06-28 John Gregg <johnnyg@google.com>
  87555. Reviewed by Kent Tamura.
  87556. add ENABLE_DIRECTORY_UPLOAD build support
  87557. https://bugs.webkit.org/show_bug.cgi?id=41100
  87558. * Configurations/FeatureDefines.xcconfig:
  87559. * GNUmakefile.am:
  87560. * WebCore.pri:
  87561. 2010-06-28 Adam Barth <abarth@webkit.org>
  87562. Reviewed by Eric Seidel.
  87563. Don't use the new tree builder for fragments
  87564. https://bugs.webkit.org/show_bug.cgi?id=41316
  87565. We need to walk before we can run. After this change, we can run the
  87566. runner.html tests (with the ASSERT caveat).
  87567. * html/HTMLTreeBuilder.cpp:
  87568. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  87569. 2010-06-28 Adam Barth <abarth@webkit.org>
  87570. Reviewed by Eric Seidel.
  87571. The new tree builder should actually finish building the tree
  87572. https://bugs.webkit.org/show_bug.cgi?id=41314
  87573. Again, this patch makes progress on runner.html, but I haven't removed
  87574. the ASSERT yet.
  87575. * html/HTMLTreeBuilder.cpp:
  87576. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  87577. (WebCore::HTMLTreeBuilder::finished):
  87578. * html/HTMLTreeBuilder.h:
  87579. 2010-06-28 Dumitru Daniliuc <dumi@chromium.org>
  87580. Reviewed by Eric Seidel.
  87581. Fix a race condition that can happen when using DBs in workers.
  87582. https://bugs.webkit.org/show_bug.cgi?id=41105
  87583. * storage/DatabaseTracker.cpp:
  87584. (WebCore::DatabaseTracker::addOpenDatabase):
  87585. * storage/DatabaseTracker.h:
  87586. 2010-06-28 Adam Barth <abarth@webkit.org>
  87587. Reviewed by Eric Seidel.
  87588. Add text nodes to the DOM
  87589. https://bugs.webkit.org/show_bug.cgi?id=41306
  87590. Actually add some text nodes to the DOM when parsing a document. We're
  87591. going to need to do something fancier here eventually, but this gets us
  87592. past the error we're seeing currently in runner.html.
  87593. Unfortunately, this patch "regresses" runner.html in the sense that we
  87594. now hit an assert, but it's still an improvement... I'll update the
  87595. HTML5 expectations once we get past the assert.
  87596. * html/HTMLTreeBuilder.cpp:
  87597. (WebCore::HTMLTreeBuilder::processCharacter):
  87598. (WebCore::HTMLTreeBuilder::insertTextNode):
  87599. * html/HTMLTreeBuilder.h:
  87600. 2010-06-28 Beth Dakin <bdakin@apple.com>
  87601. Build fix for non-PATH_BASED_BORDER_RADIUS_DRAWING platforms.
  87602. * rendering/RenderBoxModelObject.cpp:
  87603. 2010-06-28 Andreas Kling <andreas.kling@nokia.com>
  87604. Reviewed by Kenneth Rohde Christiansen.
  87605. [Qt] Use HTML5-conformant gradient interpolation mode
  87606. https://bugs.webkit.org/show_bug.cgi?id=41298
  87607. Change the Qt Gradient implementation to use ComponentInterpolation mode.
  87608. Spec link:
  87609. http://www.whatwg.org/specs/web-apps/current-work/#colors-and-styles
  87610. * platform/graphics/qt/GradientQt.cpp:
  87611. (WebCore::Gradient::platformGradient):
  87612. 2010-06-28 Beth Dakin <bdakin@apple.com>
  87613. Reviewed by Sam Weinig.
  87614. Fix for https://bugs.webkit.org/show_bug.cgi?id=9197 CSS3: Borders
  87615. with border-radius and double, groove, or ridge styles should look
  87616. better
  87617. This patch re-works border radius painting to stroke paths instead
  87618. of arcs.
  87619. Added new function clipConvexPolygon(). Added static
  87620. addConvexPolygonToContext so that code can be shared between
  87621. drawConvexPolygon() and clipConvexPolygon().
  87622. * platform/graphics/GraphicsContext.h:
  87623. * platform/graphics/cg/GraphicsContextCG.cpp:
  87624. (WebCore::addConvexPolygonToContext):
  87625. (WebCore::GraphicsContext::drawConvexPolygon):
  87626. (WebCore::GraphicsContext::clipConvexPolygon):
  87627. Shells of implementations on non-CG platforms.
  87628. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  87629. (WebCore::GraphicsContext::clipConvexPolygon):
  87630. * platform/graphics/haiku/GraphicsContextHaiku.cpp:
  87631. (WebCore::GraphicsContext::clipConvexPolygon):
  87632. * platform/graphics/qt/GraphicsContextQt.cpp:
  87633. (WebCore::GraphicsContext::clipConvexPolygon):
  87634. * platform/graphics/skia/GraphicsContextSkia.cpp:
  87635. (WebCore::GraphicsContext::clipConvexPolygon):
  87636. * platform/graphics/wince/GraphicsContextWince.cpp:
  87637. (WebCore::GraphicsContext::clipConvexPolygon):
  87638. * platform/graphics/wx/GraphicsContextWx.cpp:
  87639. (WebCore::GraphicsContext::clipConvexPolygon):
  87640. This new helper function determines if the inner corners of the
  87641. border will arch in or meet at a right angle.
  87642. * rendering/RenderBoxModelObject.cpp:
  87643. (WebCore::borderWillArcInnerEdge):
  87644. This function is re-written so that, for each side of the border,
  87645. if borderWillArcInnerEdge() is true, we go down a brand new code
  87646. path of clipping to a convex polygon for the border side and then
  87647. we paint the side using the new function drawBoxSideFromPath(). If
  87648. borderWillArcInnerEdge() is false, then we call into the old
  87649. familiar drawLineForBoxSide() which relies on the rounder clip
  87650. rects we have set up to arch the outer edge of the border.
  87651. (WebCore::RenderBoxModelObject::paintBorder):
  87652. This new function does the math to figure out the convex polygon
  87653. to clip to in the case where we need to arch the inner edge of the
  87654. border. This calls into a new GraphicsContext function that is only
  87655. implemented on CG at this time. This is the reason we are keeping
  87656. around an old version of paintBorder() for now.
  87657. (WebCore::RenderBoxModelObject::clipBorderSidePolygon):
  87658. * rendering/RenderBoxModelObject.h:
  87659. borderInnerRect() is a new convenience function called from
  87660. RenderObject and RenderBoxModelObject to determine the rect of the
  87661. inside edge of the border.
  87662. * rendering/RenderObject.cpp:
  87663. (WebCore::RenderObject::borderInnerRect):
  87664. This new function re-works drawArcForBoxSide to draw from Paths
  87665. when appropriate instead of stroking arcs.
  87666. (WebCore::RenderObject::drawBoxSideFromPath):
  87667. Keep this around for that do not HAVE(PATH_BASED_BORDER_RADIUS_DRAWING) until
  87668. GraphicsContext::clipConvexPolygon() is implemented.
  87669. (WebCore::RenderObject::drawArcForBoxSide):
  87670. * rendering/RenderObject.h:
  87671. New function
  87672. RenderStyle::getInnerBorderRadiiForRectWithBorderWidths() gets the
  87673. inner radius values for a rect. It takes border widths a parameters
  87674. rather than using the style's border widths so that it can be used
  87675. in inner radius calculations for double and groove/ridge
  87676. calculations. The W3C corner constraining rules were moved to a
  87677. static function that can be called from both getBorderRadiiForRect
  87678. () and getInnerBorderRadiiForRectWithBorderWidths().
  87679. * rendering/style/RenderStyle.cpp:
  87680. (WebCore::constrainCornerRadiiForRect):
  87681. (WebCore::RenderStyle::getBorderRadiiForRect):
  87682. (WebCore::RenderStyle::getInnerBorderRadiiForRectWithBorderWidths):
  87683. * rendering/style/RenderStyle.h:
  87684. 2010-06-28 Martin Robinson <mrobinson@igalia.com>
  87685. Reviewed by Xan Lopez.
  87686. [GTK] Add support for the progress bar tag
  87687. https://bugs.webkit.org/show_bug.cgi?id=41014
  87688. Add support for rendering the progress tag for WebKit GTK+.
  87689. * GNUmakefile.am:
  87690. * platform/gtk/RenderThemeGtk.cpp:
  87691. (WebCore::RenderThemeGtk::animationRepeatIntervalForProgressBar):
  87692. Added. Currently progress bar animations are disabled. As it looks like
  87693. there may not be a good way to support this with Mozilla's theme drawing code.
  87694. (WebCore::RenderThemeGtk::animationDurationForProgressBar): Ditto.
  87695. (WebCore::RenderThemeGtk::adjustProgressBarStyle): Added.
  87696. (WebCore::RenderThemeGtk::paintProgressBar): Added.
  87697. * platform/gtk/RenderThemeGtk.h: Add declarations for new methods.
  87698. * platform/gtk/gtk2drawing.c:
  87699. (moz_gtk_get_progress_widget): Expose the progress widget so that the chunk can be positioned properly.
  87700. * platform/gtk/gtkdrawing.h: Added declaration for moz_gtk_get_progress_widget.
  87701. 2010-06-28 Adam Barth <abarth@webkit.org>
  87702. Reviewed by Eric Seidel.
  87703. HTML5 Regression: Crash in insert()
  87704. https://bugs.webkit.org/show_bug.cgi?id=41281
  87705. We need to call endIfDelayed() outside of the script nesting block
  87706. because endIfDelayed() might call end(), which deletes the
  87707. HTMLDocumentParser. If we try to exit the script nesting block after
  87708. the HTMLDocumentParser has been deleted, we'll decrement unallocated
  87709. memory, which is bad times.
  87710. Moving endIfDelayed outside of the script nesting block also lets us
  87711. avoid ending if inWrite() is true. If we're inWrite(), then there's
  87712. folks above us on the stack who will crash of the HTMLDocumentParser is
  87713. deallocated. Adding this check matches the LegacyHTMLDocumentParser
  87714. and the logic in attemptToEnd, facilitating a small refactoring of the
  87715. common logic for improved readability.
  87716. I don't know of any test case that changes in behavior because of this
  87717. patch, but this bug exists on the same line of code that the reliablity
  87718. tests crashed. I'm not sure whether this patch will fix that crash,
  87719. but removing bugs (even theoretical ones) seems like a good idea.
  87720. * html/HTMLDocumentParser.cpp:
  87721. (WebCore::HTMLDocumentParser::insert):
  87722. (WebCore::HTMLDocumentParser::append):
  87723. (WebCore::HTMLDocumentParser::attemptToEnd):
  87724. (WebCore::HTMLDocumentParser::endIfDelayed):
  87725. (WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution):
  87726. * html/HTMLDocumentParser.h:
  87727. (WebCore::HTMLDocumentParser::shouldDelayEnd):
  87728. 2010-06-28 Eric Carlson <eric.carlson@apple.com>
  87729. Reviewed by Sam Weinig.
  87730. MediaPlayerPrivate::getSupportedTypes does not return "modern" MIME types
  87731. https://bugs.webkit.org/show_bug.cgi?id=41287
  87732. <rdar://problem/8137402>
  87733. No new test because getSupportedTypes is used privately by MediaPlayer.
  87734. * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
  87735. (WebCore::MediaPlayerPrivate::getSupportedTypes): Build hash set with both common and
  87736. modern types.
  87737. 2010-06-28 James Robinson <jamesr@chromium.org>
  87738. Reviewed by Darin Adler.
  87739. REGRESSION(53790): Neopets page with mismatched elements misrenders
  87740. https://bugs.webkit.org/show_bug.cgi?id=41181
  87741. Misnested formatting tags require fixup in order to create a valid DOM. Because this takes
  87742. O(N^2) time in some cases, http://trac.webkit.org/changeset/53790 added an iteration limit
  87743. of 5 to this algorithm to avoid hangs. This limit is too low for neopets, but a limit of
  87744. 7 is sufficient. This raises the limit to 10 to have a bit of breathing room. HTML5
  87745. defines the fixup algorithm http://www.whatwg.org/specs/web-apps/current-work/#adoptionAgency
  87746. but doesn't specify any particular iteration limit.
  87747. * html/LegacyHTMLTreeBuilder.cpp:
  87748. 2010-06-28 Adam Barth <abarth@webkit.org>
  87749. Reviewed by Eric Seidel.
  87750. The new tree builder needs to call attach() on elements it attaches to
  87751. the DOM
  87752. https://bugs.webkit.org/show_bug.cgi?id=41293
  87753. Apparently Nodes expect to have their attach() method called when they
  87754. are attached to the DOM. The new tree builder is happy to oblige.
  87755. Making this call requires some fancy footwork with RefPtr/PassRefPtr to
  87756. avoid extra ref churn while keeping each function small.
  87757. * html/HTMLTreeBuilder.cpp:
  87758. (WebCore::HTMLTreeBuilder::insertHTMLStartTagBeforeHTML):
  87759. (WebCore::HTMLTreeBuilder::processCharacter):
  87760. (WebCore::HTMLTreeBuilder::insertDoctype):
  87761. (WebCore::HTMLTreeBuilder::insertComment):
  87762. (WebCore::HTMLTreeBuilder::insertCommentOnDocument):
  87763. (WebCore::HTMLTreeBuilder::insertElement):
  87764. (WebCore::HTMLTreeBuilder::insertSelfClosingElement):
  87765. (WebCore::HTMLTreeBuilder::insertScriptElement):
  87766. * html/HTMLTreeBuilder.h:
  87767. (WebCore::HTMLTreeBuilder::attach):
  87768. 2010-06-28 Xan Lopez <xlopez@igalia.com>
  87769. Fix distcheck.
  87770. * GNUmakefile.am:
  87771. 2010-06-28 Kenneth Russell <kbr@google.com>
  87772. Reviewed by Dimitri Glazkov.
  87773. Index validation caches buffer size information too aggressively
  87774. https://bugs.webkit.org/show_bug.cgi?id=41092
  87775. Test: fast/canvas/webgl/index-validation-with-resized-buffer.html
  87776. * html/canvas/WebGLRenderingContext.cpp:
  87777. (WebCore::WebGLRenderingContext::validateRenderingState):
  87778. - Compute the number of valid elements each time based on the latched buffer.
  87779. (WebCore::WebGLRenderingContext::vertexAttribPointer):
  87780. - Do not cache the buffer size, only the attributes used to
  87781. compute the number of required elements.
  87782. * html/canvas/WebGLRenderingContext.h:
  87783. (WebCore::WebGLRenderingContext::VertexAttribState::VertexAttribState):
  87784. - Ditto.
  87785. 2010-06-28 Andreas Kling <andreas.kling@nokia.com>
  87786. Reviewed by Simon Hausmann.
  87787. [Qt] Replace single treat-as-space characters with normal space
  87788. https://bugs.webkit.org/show_bug.cgi?id=41278
  87789. This keeps Qt from attempting glyph substitution and loading a bunch
  87790. of extra fonts when encountering &nbsp; entities.
  87791. * platform/graphics/qt/FontQt.cpp:
  87792. (WebCore::Font::floatWidthForComplexText):
  87793. 2010-06-28 Robin Cao <robin.cao@torchmobile.com.cn>
  87794. Reviewed by Dan Bernstein.
  87795. canvas fillText with @font-face crashes
  87796. https://bugs.webkit.org/show_bug.cgi?id=35486
  87797. The font object in CanvasRenderingContext2D may become invalid at some point.
  87798. Override recalcStyle() in HTMLCanvasElement, and update the font object from there if needed.
  87799. A test already exists: canvas/philip/tests/2d.text.draw.fontface.repeat.html
  87800. * html/HTMLCanvasElement.cpp:
  87801. (WebCore::HTMLCanvasElement::recalcStyle):
  87802. * html/HTMLCanvasElement.h:
  87803. * html/canvas/CanvasRenderingContext2D.cpp:
  87804. (WebCore::CanvasRenderingContext2D::updateFont):
  87805. * html/canvas/CanvasRenderingContext2D.h:
  87806. 2010-06-28 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  87807. Unreviewed build fix.
  87808. [EFL] Build fix for latest version of Ecore library.
  87809. Ecore recently changed return type of callbacks from int to Eina_Bool.
  87810. No new functionality, so no new tests.
  87811. * platform/efl/SharedTimerEfl.cpp:
  87812. (WebCore::timerEvent): Return Eina_Bool instead of int.
  87813. 2010-06-28 Xan Lopez <xlopez@igalia.com>
  87814. Fix build with GTK+ older than 2.18
  87815. * platform/gtk/ScrollViewGtk.cpp:
  87816. (WebCore::ScrollView::visibleContentRect):
  87817. 2010-06-28 Xan Lopez <xlopez@igalia.com>
  87818. Reviewed by Adam Barth.
  87819. [GTK] Push NULL context on every DOM bindings entry point
  87820. https://bugs.webkit.org/show_bug.cgi?id=39967
  87821. Update GObject DOM bindings to push the NULL context on every API
  87822. entry point, and update bindings test results.
  87823. * bindings/scripts/CodeGeneratorGObject.pm:
  87824. * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
  87825. * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
  87826. * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  87827. 2010-06-28 Martin Robinson <martin.james.robinson@gmail.com>
  87828. Reviewed by Adam Roben.
  87829. [WinCairo] Text box backgrounds do not render in partially opaque layers
  87830. https://bugs.webkit.org/show_bug.cgi?id=41113
  87831. Tests:
  87832. manual-tests/partially-opaque-text-input.html
  87833. * platform/graphics/win/GraphicsContextCairoWin.cpp:
  87834. (WebCore::GraphicsContext::releaseWindowsContext):
  87835. When restoring a context which does not support alpha blending, manually
  87836. set the alpha channel of the HBITMAP to fully opaque. This will effectively
  87837. ignore the alpha channel of the HBITMAP, which is necessary because GDI
  87838. drawing functions set the alpha value to be fully transparent (0).
  87839. 2010-06-28 Martin Robinson <martin.james.robinson@gmail.com>
  87840. Reviewed by Adam Roben.
  87841. [WinCairo] Rendering of themed elements on a layer with opacity produces nothing
  87842. https://bugs.webkit.org/show_bug.cgi?id=41111
  87843. Tests:
  87844. manual-tests/partially-opaque-form-elements.html
  87845. * platform/graphics/win/GraphicsContextCairoWin.cpp:
  87846. (WebCore::GraphicsContext::releaseWindowsContext):
  87847. Preform a cairo_save() and a cairo_restore() around code modifying the transformation
  87848. matrix of the Cairo surface. Also set the destination coordinates before adjusting
  87849. the transformation matrix scale, so that the destination coordinates are not scaled
  87850. as well.
  87851. 2010-06-28 Sam Magnuson <smagnuson@netflix.com>
  87852. Reviewed by Kenneth Rohde Christiansen.
  87853. [Qt] GraphicsLayerQt delay seems unnecessary.
  87854. https://bugs.webkit.org/show_bug.cgi?id=40846
  87855. Test: compositing/animation/busy-indicator.html
  87856. * platform/graphics/qt/GraphicsLayerQt.cpp:
  87857. (WebCore::GraphicsLayerQtImpl::recache):
  87858. (WebCore::GraphicsLayerQtImpl::flushChanges):
  87859. (WebCore::GraphicsLayerQt::setContentsToImage):
  87860. (WebCore::GraphicsLayerQt::addAnimation):
  87861. 2010-06-28 Xan Lopez <xlopez@igalia.com>
  87862. Reviewed by Gustavo Noronha.
  87863. Until now we were adding the event listeners for a given object in
  87864. the wrap method, since that's the first moment we have accoss to
  87865. the core WebCore object. The problem is that we only install the
  87866. listeners that the topmost class in the class hierarchy needs (eg,
  87867. HTMLParagrahElement for a P element), when most of the actual
  87868. event attributes are defined in the base classes (Node, Element,
  87869. ...).
  87870. To fix this set the core object as a construct/write-only property
  87871. on the wrapper GObject, and set the eventlisteners in the cGObject
  87872. 'construct' method, chaining up through all the class hierarchy
  87873. until the end. This way we'll get all the eventlisteners defined
  87874. in all the superclasses of our object, which is what we want.
  87875. * bindings/gobject/WebKitDOMObject.cpp:
  87876. (webkit_dom_object_get_property):
  87877. (webkit_dom_object_set_property):
  87878. (webkit_dom_object_class_init):
  87879. * bindings/scripts/CodeGeneratorGObject.pm:
  87880. * dom/Node.idl:
  87881. 2010-06-28 Xan Lopez <xlopez@igalia.com>
  87882. Fix GTK+ build.
  87883. * platform/gtk/RenderThemeGtk.cpp:
  87884. 2010-06-28 Xan Lopez <xlopez@igalia.com>
  87885. Reviewed by Gustavo Noronha.
  87886. [GTK] Does not compile with -DGSEAL_ENABLE
  87887. https://bugs.webkit.org/show_bug.cgi?id=37851
  87888. Fix build with GSEAL enabled.
  87889. * GNUmakefile.am:
  87890. * platform/gtk/GtkVersioning.h:
  87891. * platform/gtk/RenderThemeGtk.cpp:
  87892. (WebCore::paintMozillaGtkWidget):
  87893. (WebCore::RenderThemeGtk::platformActiveSelectionBackgroundColor):
  87894. (WebCore::RenderThemeGtk::platformInactiveSelectionBackgroundColor):
  87895. (WebCore::RenderThemeGtk::platformActiveSelectionForegroundColor):
  87896. (WebCore::RenderThemeGtk::platformInactiveSelectionForegroundColor):
  87897. (WebCore::RenderThemeGtk::activeListBoxSelectionBackgroundColor):
  87898. (WebCore::RenderThemeGtk::inactiveListBoxSelectionBackgroundColor):
  87899. (WebCore::RenderThemeGtk::activeListBoxSelectionForegroundColor):
  87900. (WebCore::RenderThemeGtk::inactiveListBoxSelectionForegroundColor):
  87901. (WebCore::RenderThemeGtk::systemColor):
  87902. * platform/gtk/ScrollViewGtk.cpp:
  87903. (WebCore::ScrollView::platformRemoveChild):
  87904. (WebCore::ScrollView::visibleContentRect):
  87905. * platform/gtk/gtk2drawing.c:
  87906. (ensure_toggle_button_widget):
  87907. (ensure_combo_box_widgets):
  87908. (ensure_combo_box_entry_widgets):
  87909. (ensure_tree_header_cell_widget):
  87910. (moz_gtk_button_paint):
  87911. (moz_gtk_toggle_paint):
  87912. (calculate_button_inner_rect):
  87913. (calculate_arrow_rect):
  87914. (moz_gtk_scrollbar_button_paint):
  87915. (moz_gtk_scrollbar_trough_paint):
  87916. (moz_gtk_scrollbar_thumb_paint):
  87917. (moz_gtk_spin_paint):
  87918. (moz_gtk_spin_updown_paint):
  87919. (moz_gtk_scale_paint):
  87920. (moz_gtk_scale_thumb_paint):
  87921. (moz_gtk_gripper_paint):
  87922. (moz_gtk_hpaned_paint):
  87923. (moz_gtk_vpaned_paint):
  87924. (moz_gtk_entry_paint):
  87925. (moz_gtk_treeview_paint):
  87926. (moz_gtk_tree_header_sort_arrow_paint):
  87927. (moz_gtk_treeview_expander_paint):
  87928. (moz_gtk_expander_paint):
  87929. (moz_gtk_combo_box_paint):
  87930. (moz_gtk_downarrow_paint):
  87931. (moz_gtk_combo_box_entry_button_paint):
  87932. (moz_gtk_container_paint):
  87933. (moz_gtk_toggle_label_paint):
  87934. (moz_gtk_toolbar_paint):
  87935. (moz_gtk_toolbar_separator_paint):
  87936. (moz_gtk_tooltip_paint):
  87937. (moz_gtk_resizer_paint):
  87938. (moz_gtk_frame_paint):
  87939. (moz_gtk_progressbar_paint):
  87940. (moz_gtk_progress_chunk_paint):
  87941. (moz_gtk_get_tab_thickness):
  87942. (moz_gtk_tab_paint):
  87943. (moz_gtk_tabpanels_paint):
  87944. (moz_gtk_tab_scroll_arrow_paint):
  87945. (moz_gtk_menu_bar_paint):
  87946. (moz_gtk_menu_popup_paint):
  87947. (moz_gtk_menu_separator_paint):
  87948. (moz_gtk_menu_item_paint):
  87949. (moz_gtk_menu_arrow_paint):
  87950. 2010-06-28 Xan Lopez <xlopez@igalia.com>
  87951. Reviewed by Gustavo Noronha.
  87952. [GTK] Add support for GTK+3
  87953. https://bugs.webkit.org/show_bug.cgi?id=41253
  87954. Adapt build system for 3.x support.
  87955. * GNUmakefile.am:
  87956. 2010-06-28 Yury Semikhatsky <yurys@chromium.org>
  87957. Reviewed by Pavel Feldman.
  87958. [v8] Web Inspector: properties of scope variables are flattened while on a breakpoint.
  87959. https://bugs.webkit.org/show_bug.cgi?id=41214
  87960. Test: inspector/debugger-proto-property.html
  87961. * inspector/front-end/InjectedScript.js:
  87962. (injectedScriptConstructor): object proxy with non-empty path cannot be scope proxy.
  87963. 2010-06-28 MORITA Hajime <morrita@google.com>
  87964. Unreviewed attempt to fix windows build.
  87965. * page/DOMWindow.idl:
  87966. 2010-06-22 MORITA Hajime <morrita@google.com>
  87967. Reviewed by Kent Tamura.
  87968. <progress> should be styled with -webkit-progress-bar-value
  87969. https://bugs.webkit.org/show_bug.cgi?id=40823
  87970. Fixed to peek styles of the shadow node pseudo class to fallback
  87971. to non-styled painting.
  87972. * css/html.css:
  87973. (progress): Added defaul background-color.
  87974. (progress::-webkit-progress-bar-value): Added defaul background-color.
  87975. * rendering/RenderProgress.cpp:
  87976. (WebCore::RenderProgress::shouldHaveParts):
  87977. (WebCore::RenderProgress::updatePartsState):
  87978. Test: fast/dom/HTMLProgressElement/progress-bar-value-pseudo-element.html
  87979. 2010-06-28 Csaba Osztrogonác <ossy@webkit.org>
  87980. Reviewed by Kent Tamura.
  87981. GCC suggest parentheses around && within ||
  87982. https://bugs.webkit.org/show_bug.cgi?id=41245
  87983. * rendering/RenderBlock.cpp:
  87984. (WebCore::RenderBlock::paintChildren):
  87985. 2010-06-28 Adam Barth <abarth@webkit.org>
  87986. Reviewed by Eric Seidel.
  87987. Don't dump contents of <script> elements in LayoutTests
  87988. https://bugs.webkit.org/show_bug.cgi?id=41277
  87989. Apparently we need to tell each element when we start and stop parsing
  87990. its children. If we don't do this, we see the contents of every script
  87991. and style element in dumpAsText LayoutTests. (This patch is *well*
  87992. covered by LayoutTests.)
  87993. * html/HTMLTreeBuilder.h:
  87994. (WebCore::HTMLTreeBuilder::ElementStack::pop):
  87995. (WebCore::HTMLTreeBuilder::ElementStack::push):
  87996. 2010-06-28 Eric Seidel <eric@webkit.org>
  87997. Reviewed by Adam Barth.
  87998. Make it possible to test the new HTML5 TreeBuilder
  87999. https://bugs.webkit.org/show_bug.cgi?id=41276
  88000. Adam was concerned that someone might make their port
  88001. depend on this setting (I guess we had some trouble with that
  88002. with the HTML5Parser setting), so I littered the code with warnings.
  88003. test-html5-parser now tests this code path.
  88004. * html/HTMLTreeBuilder.cpp:
  88005. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  88006. (WebCore::HTMLTreeBuilder::constructTreeFromToken):
  88007. (WebCore::HTMLTreeBuilder::finished):
  88008. * page/Settings.cpp:
  88009. (WebCore::Settings::Settings):
  88010. * page/Settings.h:
  88011. (WebCore::Settings::setHTML5TreeBuilderEnabled_DO_NOT_USE):
  88012. (WebCore::Settings::html5TreeBuilderEnabled):
  88013. 2010-06-28 Adam Barth <abarth@webkit.org>
  88014. Reviewed by Eric Seidel.
  88015. Make the html5lib runner.html not assert
  88016. https://bugs.webkit.org/show_bug.cgi?id=41273
  88017. This patch gets us closer to being able to run the parser tests. We
  88018. still don't get parsing correct, but at least we don't assert. :)
  88019. * html/HTMLTreeBuilder.cpp:
  88020. (WebCore::HTMLTreeBuilder::processStartTag):
  88021. (WebCore::HTMLTreeBuilder::processComment):
  88022. (WebCore::HTMLTreeBuilder::insertCommentOnDocument):
  88023. * html/HTMLTreeBuilder.h:
  88024. 2010-06-28 Eric Seidel <eric@webkit.org>
  88025. Unreviewed. Attempt to fix Chromium and Qt builders.
  88026. Add a new baseclass for XML, HTML and Text DocumentParsers to clean up DocumentParser call sites
  88027. https://bugs.webkit.org/show_bug.cgi?id=41141
  88028. No functional changes, thus no tests.
  88029. * bindings/v8/ScriptController.cpp:
  88030. (WebCore::ScriptController::eventHandlerLineNumber):
  88031. (WebCore::ScriptController::eventHandlerColumnNumber):
  88032. * dom/XMLDocumentParserQt.cpp:
  88033. (WebCore::XMLDocumentParser::XMLDocumentParser):
  88034. (WebCore::XMLDocumentParser::stopParsing):
  88035. 2010-06-28 Adam Barth <abarth@webkit.org>
  88036. Reviewed by Eric Seidel.
  88037. Add support for parsing attributes
  88038. https://bugs.webkit.org/show_bug.cgi?id=41272
  88039. This patch lets use parse the following document:
  88040. <script src="data:text/javascript,alert('PASS')"></script>
  88041. * html/HTMLTreeBuilder.cpp:
  88042. (WebCore::HTMLTreeBuilder::constructTreeFromToken):
  88043. (WebCore::HTMLTreeBuilder::insertHTMLStartTagBeforeHTML):
  88044. (WebCore::HTMLTreeBuilder::insertScriptElement):
  88045. (WebCore::HTMLTreeBuilder::createElement):
  88046. 2010-06-28 Eric Seidel <eric@webkit.org>
  88047. Reviewed by Darin Adler.
  88048. Add a new baseclass for XML, HTML and Text DocumentParsers to clean up DocumentParser call sites
  88049. https://bugs.webkit.org/show_bug.cgi?id=41141
  88050. By splitting ScriptableDocumentParser and DecodedDataDocumentParser
  88051. out from DocumentParser we've made the DocumentParser and
  88052. RawDataDocumentParser classes simpler.
  88053. No functional change, thus no tests.
  88054. * Android.mk:
  88055. * CMakeLists.txt:
  88056. * GNUmakefile.am:
  88057. * WebCore.gypi:
  88058. * WebCore.pro:
  88059. * WebCore.vcproj/WebCore.vcproj:
  88060. * WebCore.xcodeproj/project.pbxproj:
  88061. * bindings/js/ScriptController.cpp:
  88062. (WebCore::ScriptController::eventHandlerLineNumber):
  88063. * css/CSSStyleSheet.cpp:
  88064. (WebCore::CSSStyleSheet::checkLoaded):
  88065. * dom/Document.cpp:
  88066. (WebCore::Document::scriptableDocumentParser):
  88067. (WebCore::Document::open):
  88068. (WebCore::Document::implicitOpen):
  88069. (WebCore::Document::implicitClose):
  88070. (WebCore::Document::removePendingSheet):
  88071. * dom/Document.h:
  88072. (WebCore::Document::parser):
  88073. * dom/DocumentParser.cpp:
  88074. (WebCore::DocumentParser::DocumentParser):
  88075. * dom/DocumentParser.h:
  88076. (WebCore::DocumentParser::asScriptableDocumentParser):
  88077. * dom/RawDataDocumentParser.h:
  88078. (WebCore::RawDataDocumentParser::finishWasCalled):
  88079. * dom/ScriptableDocumentParser.cpp: Copied from WebCore/html/HTMLEntityParser.h.
  88080. (WebCore::ScriptableDocumentParser::ScriptableDocumentParser):
  88081. * dom/ScriptableDocumentParser.h: Added.
  88082. (WebCore::ScriptableDocumentParser::isExecutingScript):
  88083. (WebCore::ScriptableDocumentParser::executeScriptsWaitingForStylesheets):
  88084. (WebCore::ScriptableDocumentParser::xssAuditor):
  88085. (WebCore::ScriptableDocumentParser::setXSSAuditor):
  88086. (WebCore::ScriptableDocumentParser::processingContentWrittenByScript):
  88087. (WebCore::ScriptableDocumentParser::asScriptableDocumentParser):
  88088. * dom/ViewportArguments.cpp:
  88089. (WebCore::parserLineNumber):
  88090. (WebCore::reportViewportWarning):
  88091. * dom/XMLDocumentParser.h:
  88092. * dom/XMLDocumentParserLibxml2.cpp:
  88093. (WebCore::XMLDocumentParser::XMLDocumentParser):
  88094. * html/HTMLDocumentParser.cpp:
  88095. (WebCore::HTMLDocumentParser::HTMLDocumentParser):
  88096. (WebCore::HTMLDocumentParser::shouldLoadExternalScriptFromSrc):
  88097. * html/HTMLDocumentParser.h:
  88098. * html/LegacyHTMLDocumentParser.cpp:
  88099. (WebCore::LegacyHTMLDocumentParser::LegacyHTMLDocumentParser):
  88100. (WebCore::LegacyHTMLDocumentParser::parseTag):
  88101. * html/LegacyHTMLDocumentParser.h:
  88102. (WebCore::LegacyHTMLDocumentParser::processingContentWrittenByScript):
  88103. * html/LegacyHTMLTreeBuilder.cpp:
  88104. (WebCore::LegacyHTMLTreeBuilder::reportErrorToConsole):
  88105. * loader/DocumentLoader.cpp:
  88106. * loader/DocumentWriter.cpp:
  88107. * loader/TextDocument.cpp:
  88108. (WebCore::TextDocumentParser::TextDocumentParser):
  88109. (WebCore::TextDocumentParser::finish):
  88110. * svg/SVGDocumentExtensions.cpp:
  88111. (WebCore::parserLineNumber):
  88112. (WebCore::reportMessage):
  88113. (WebCore::SVGDocumentExtensions::reportWarning):
  88114. (WebCore::SVGDocumentExtensions::reportError):
  88115. 2010-06-27 Steve Falkenburg <sfalken@apple.com>
  88116. Reviewed by Mark Rowe.
  88117. WebKit2 build exceeds address space on 32-bit Windows builders
  88118. https://bugs.webkit.org/show_bug.cgi?id=41270
  88119. Add all-in-one file for render-related SVG files.
  88120. Clean up other all-in-one files by adding missing files, excluding matching files from the vcproj.
  88121. Reduces release WebCore.lib size by 10% (160MB).
  88122. * DerivedSources.cpp:
  88123. * WebCore.vcproj/WebCore.vcproj:
  88124. * bindings/js/JSBindingsAllInOne.cpp:
  88125. * html/HTMLElementsAllInOne.cpp:
  88126. * rendering/RenderSVGAllInOne.cpp: Added.
  88127. 2010-06-27 Adam Barth <abarth@webkit.org>
  88128. Reviewed by Eric Seidel.
  88129. Sketch out the InBodyMode for the tree builder
  88130. https://bugs.webkit.org/show_bug.cgi?id=41271
  88131. This gives us some basic behavior for the InBodyMode. I've implemented
  88132. some of the easier logic. The more complicated logic will be in
  88133. subsequent patches.
  88134. * html/HTMLTreeBuilder.cpp:
  88135. (WebCore::HTMLTreeBuilder::processStartTag):
  88136. (WebCore::HTMLTreeBuilder::processEndTag):
  88137. (WebCore::HTMLTreeBuilder::insertFormatingElement):
  88138. (WebCore::HTMLTreeBuilder::reconstructTheActiveFormattingElements):
  88139. * html/HTMLTreeBuilder.h:
  88140. 2010-06-25 Yuzo Fujishima <yuzo@google.com>
  88141. Reviewed by Shinichiro Hamaji.
  88142. Improve default value handling for page format properties.
  88143. Default page size and orientation have been hard-coded.
  88144. Instead, pass default page size and margins to
  88145. WebCore::Document::pageSizeAndMarginsInPixels to handle auto page size
  88146. and margins specified as percentages.
  88147. Return margins instead of page rect.
  88148. https://bugs.webkit.org/show_bug.cgi?id=41150
  88149. * WebCore.base.exp:
  88150. * css/CSSStyleSelector.cpp:
  88151. (WebCore::CSSStyleSelector::applyPageSizeProperty):
  88152. (WebCore::CSSStyleSelector::pageSizeFromName):
  88153. * css/html.css:
  88154. (@page):
  88155. * dom/Document.cpp:
  88156. (WebCore::Document::pageSizeAndMarginsInPixels):
  88157. * dom/Document.h:
  88158. * page/PrintContext.cpp:
  88159. (WebCore::PrintContext::pageProperty):
  88160. (WebCore::PrintContext::pageSizeAndMarginsInPixels):
  88161. * page/PrintContext.h:
  88162. * rendering/style/RenderStyle.h:
  88163. (WebCore::InheritedFlags::pageSizeType):
  88164. (WebCore::InheritedFlags::setPageSizeType):
  88165. (WebCore::InheritedFlags::resetPageSizeType):
  88166. * rendering/style/StyleRareNonInheritedData.cpp:
  88167. (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
  88168. (WebCore::StyleRareNonInheritedData::operator==):
  88169. * rendering/style/StyleRareNonInheritedData.h:
  88170. (WebCore::):
  88171. 2010-06-27 Adam Barth <abarth@webkit.org>
  88172. Reviewed by Eric Seidel.
  88173. Clean up some loose ends in HTML5 tree builder
  88174. https://bugs.webkit.org/show_bug.cgi?id=41265
  88175. This patch cleans up a few loose ends in HTML5 tree builder.
  88176. Technically, we could do each of these as individual patches, but that
  88177. didn't seem worth while.
  88178. * html/HTMLTreeBuilder.cpp:
  88179. (WebCore::HTMLTreeBuilder::processStartTag):
  88180. - Add missing break before default case statement. I don't think
  88181. this change is observable.
  88182. (WebCore::HTMLTreeBuilder::processComment):
  88183. - Originally I thought that comments had special processing in the
  88184. InHeadNoscriptMode, but it turns out that when you unwind the
  88185. definitions, it amounts to exactly the same thing.
  88186. (WebCore::HTMLTreeBuilder::processEndOfFile):
  88187. - Add missing break before default case statement. I don't think
  88188. this change is observable.
  88189. (WebCore::HTMLTreeBuilder::insertComment):
  88190. - Eliminate one unnecessary ref/deref pair.
  88191. (WebCore::HTMLTreeBuilder::insertSelfClosingElement):
  88192. - When we insert self-closing elements, there's no reason to push
  88193. them onto the stack of open elements just to pop them off again.
  88194. This change saves a malloc/free pair as well as a ref/deref pair.
  88195. Go team.
  88196. * html/HTMLTreeBuilder.h:
  88197. - Remove unused function.
  88198. 2010-06-27 Adam Barth <abarth@webkit.org>
  88199. Reviewed by Eric Seidel.
  88200. Implement remaining StartTag processing for InHeadNoscriptMode
  88201. https://bugs.webkit.org/show_bug.cgi?id=41264
  88202. The InHeadNoscriptMode processes some start tags "as if" the tree
  88203. builder were in the InHeadMode. This is an idiom we'll see more of
  88204. later. My approach is this patch is to factor all the logic for
  88205. processing start tags in the InHeadMode into a separate function that
  88206. can be called from both locations. This seems cleaner than just
  88207. splitting out the parts that are actually used by both modes.
  88208. * html/HTMLTreeBuilder.cpp:
  88209. (WebCore::HTMLTreeBuilder::processStartTag):
  88210. (WebCore::HTMLTreeBuilder::processStartTagForInHead):
  88211. (WebCore::HTMLTreeBuilder::insertSelfClosingElement):
  88212. * html/HTMLTreeBuilder.h:
  88213. 2010-06-27 Adam Barth <abarth@webkit.org>
  88214. Reviewed by Eric Seidel.
  88215. Add support for <title> and <style> elements
  88216. https://bugs.webkit.org/show_bug.cgi?id=41263
  88217. These elements use the generic RCDATA and RawText algorithms,
  88218. respectively.
  88219. * html/HTMLTreeBuilder.cpp:
  88220. (WebCore::HTMLTreeBuilder::processEndTag):
  88221. (WebCore::HTMLTreeBuilder::insertGenericRCDATAElement):
  88222. (WebCore::HTMLTreeBuilder::insertGenericRawTextElement):
  88223. 2010-06-27 Adam Barth <abarth@webkit.org>
  88224. Reviewed by Eric Seidel.
  88225. Actually insert Doctype elements
  88226. https://bugs.webkit.org/show_bug.cgi?id=41262
  88227. This code is pretty much the same as in the old tree builder.
  88228. * html/HTMLToken.h:
  88229. (WebCore::AtomicHTMLToken::publicIdentifier):
  88230. (WebCore::AtomicHTMLToken::systemIdentifier):
  88231. * html/HTMLTreeBuilder.cpp:
  88232. (WebCore::HTMLTreeBuilder::insertDoctype):
  88233. 2010-06-27 Andreas Kling <andreas.kling@nokia.com>
  88234. Reviewed by Darin Adler.
  88235. Canvas: Ignore calls to drawImage() with non-finite parameters
  88236. https://bugs.webkit.org/show_bug.cgi?id=38929
  88237. This also fixes a Qt assert when using the raster graphics system.
  88238. Spec link:
  88239. http://www.whatwg.org/specs/web-apps/current-work/#2dcontext
  88240. * html/canvas/CanvasRenderingContext2D.cpp:
  88241. (WebCore::CanvasRenderingContext2D::drawImage):
  88242. 2010-06-27 Andreas Kling <andreas.kling@nokia.com>
  88243. Reviewed by Kenneth Rohde Christiansen.
  88244. editing/execCommand/copy-without-selection.html fails on Qt after r61637
  88245. https://bugs.webkit.org/show_bug.cgi?id=41025
  88246. The problem was that when getting data back via Clipboard::getData(),
  88247. the String::String(const char*, int) constructor was called
  88248. with UTF-16 data.
  88249. The solution is to use QMimeData's text() and setText() for "text/plain".
  88250. setText() which makes sure Qt passes the string in proper format to the
  88251. system clipboard. (The previous implementation would convert it to UTF-8)
  88252. text() makes sure that the correct encoding is used (UTF-16) and that
  88253. we get back whatever we originally put in there.
  88254. * platform/qt/ClipboardQt.cpp:
  88255. (WebCore::isTextMimeType):
  88256. (WebCore::ClipboardQt::getData):
  88257. (WebCore::ClipboardQt::setData):
  88258. 2010-06-27 Adam Barth <abarth@webkit.org>
  88259. Reviewed by Eric Seidel.
  88260. HTML5 tree builder should be able to execute inline scripts
  88261. https://bugs.webkit.org/show_bug.cgi?id=41257
  88262. This patch implements enough machinery so that we can execute inline
  88263. scripts in extremely simple documents such as the following:
  88264. <html>
  88265. <script>
  88266. alert(1);
  88267. </script>
  88268. To get this to work, I had to flesh out a surprising amount of the data
  88269. structures for processing the <head>. No tests because this is
  88270. already covered by most LayoutTests.
  88271. * html/HTMLTreeBuilder.cpp:
  88272. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  88273. (WebCore::HTMLTreeBuilder::constructTreeFromToken):
  88274. (WebCore::HTMLTreeBuilder::processStartTag):
  88275. (WebCore::HTMLTreeBuilder::processEndTag):
  88276. (WebCore::HTMLTreeBuilder::processCharacter):
  88277. (WebCore::HTMLTreeBuilder::insertComment):
  88278. (WebCore::HTMLTreeBuilder::insertElement):
  88279. (WebCore::HTMLTreeBuilder::insertScriptElement):
  88280. * html/HTMLTreeBuilder.h:
  88281. (WebCore::HTMLTreeBuilder::ElementRecord::ElementRecord):
  88282. (WebCore::HTMLTreeBuilder::ElementRecord::element):
  88283. (WebCore::HTMLTreeBuilder::ElementRecord::next):
  88284. (WebCore::HTMLTreeBuilder::ElementRecord::releaseNext):
  88285. (WebCore::HTMLTreeBuilder::ElementRecord::setNext):
  88286. (WebCore::HTMLTreeBuilder::ElementStack::pop):
  88287. (WebCore::HTMLTreeBuilder::ElementStack::push):
  88288. (WebCore::HTMLTreeBuilder::ElementStack::top):
  88289. (WebCore::HTMLTreeBuilder::ElementStack::remove):
  88290. (WebCore::HTMLTreeBuilder::currentElement):
  88291. 2010-06-26 Brady Eidson <beidson@apple.com>
  88292. Reviewed by Darin Adler.
  88293. beforeProcess event needs to fire before inline scripts/stylesheets take effect
  88294. <rdar://problem/8084335> and https://bugs.webkit.org/show_bug.cgi?id=40484
  88295. This patch adds the Event, the onBeforeProcess attribute, and hooks the attribute up in a few places.
  88296. Besides that, no change in behavior.
  88297. Layout tests will come with the actual implementations as a followup to this patch.
  88298. Project file nonsense:
  88299. * DerivedSources.make:
  88300. * GNUmakefile.am:
  88301. * WebCore.gypi:
  88302. * WebCore.pri:
  88303. * WebCore.pro:
  88304. * WebCore.vcproj/WebCore.vcproj:
  88305. * WebCore.xcodeproj/project.pbxproj:
  88306. Scaffolding for the event itself:
  88307. * dom/BeforeProcessEvent.cpp: Added.
  88308. (WebCore::BeforeProcessEvent::text):
  88309. (WebCore::BeforeProcessEvent::setText):
  88310. * dom/BeforeProcessEvent.h: Added.
  88311. (WebCore::BeforeProcessEvent::create):
  88312. (WebCore::BeforeProcessEvent::initBeforeProcessEvent):
  88313. (WebCore::BeforeProcessEvent::BeforeProcessEvent):
  88314. * dom/BeforeProcessEvent.idl: Added.
  88315. * dom/EventNames.h:
  88316. Respect the onBeforeProcess attribute:
  88317. * dom/Document.cpp:
  88318. (WebCore::Document::addListenerTypeIfNeeded):
  88319. * dom/Document.h:
  88320. (WebCore::Document::):
  88321. * html/HTMLAttributeNames.in:
  88322. * html/HTMLScriptElement.cpp:
  88323. (WebCore::HTMLScriptElement::parseMappedAttribute):
  88324. * html/HTMLStyleElement.cpp:
  88325. (WebCore::HTMLStyleElement::parseMappedAttribute):
  88326. 2010-06-26 Darin Adler <darin@apple.com>
  88327. Try to fix Chromium build by adding back function used only by Chromium WebKit.
  88328. * html/HTMLInputElement.cpp:
  88329. (WebCore::HTMLInputElement::defaultChecked): Added back.
  88330. * html/HTMLInputElement.h: Added defaultChecked function.
  88331. * html/HTMLMetaElement.cpp:
  88332. (WebCore::HTMLMetaElement::httpEquiv): Added back.
  88333. * html/HTMLMetaElement.h: Added httpEquiv function.
  88334. * html/HTMLOptionElement.cpp:
  88335. (WebCore::HTMLOptionElement::defaultSelected): Added back.
  88336. * html/HTMLOptionElement.h: Added defaultSelected function.
  88337. * rendering/style/StyleRareNonInheritedData.h: Fixed incorrect struct vs. class
  88338. here as seen in warnings on Chromium Windows bot.
  88339. 2010-06-26 Darin Adler <darin@apple.com>
  88340. Try to fix Windows build by adding back function used only by Windows WebKit.
  88341. * html/HTMLOptionElement.cpp:
  88342. (WebCore::HTMLOptionElement::label): Added back.
  88343. * html/HTMLOptionElement.h: Added label function.
  88344. 2010-06-26 Darin Adler <darin@apple.com>
  88345. Try to fix Qt build by adding back function used only by Qt WebKit.
  88346. * html/HTMLMetaElement.cpp:
  88347. (WebCore::HTMLMetaElement::content): Added back.
  88348. * html/HTMLMetaElement.h: Added content function.
  88349. 2010-06-26 Darin Adler <darin@apple.com>
  88350. * html/HTMLFormElement.h: Removed stray character that got in here before landing.
  88351. 2010-06-26 Darin Adler <darin@apple.com>
  88352. Reviewed by Sam Weinig.
  88353. Add more use of reflection, remove unused functions
  88354. https://bugs.webkit.org/show_bug.cgi?id=41255
  88355. Also noticed that HTMLDirectoryElement was missing its create function
  88356. and added that so the element will get the correct class.
  88357. * html/HTMLBaseFontElement.idl: Use reflection for the size attribute
  88358. in the Objective-C code path too.
  88359. * html/HTMLSelectElement.idl: Use reflection for disabled and autofocus
  88360. attributes. Also removed spaces and indenting to match other IDL files.
  88361. * html/HTMLStyleElement.idl: Use reflection for disabled attribute.
  88362. * html/HTMLTableCellElement.idl: Use reflection for noWrap attribute.
  88363. * html/HTMLTextAreaElement.idl: Use reflection for disabled, autofocus,
  88364. readOnly, and required attributes.
  88365. * html/HTMLUListElement.idl: Use reflection for compact attribute.
  88366. * html/HTMLDirectoryElement.cpp:
  88367. (WebCore::HTMLDirectoryElement::HTMLDirectoryElement): Made inline.
  88368. (WebCore::HTMLDirectoryElement::create): Added.
  88369. * html/HTMLDirectoryElement.h:
  88370. Added create, made constructor private, removed unused functions.
  88371. * html/HTMLStyleElement.cpp:
  88372. (WebCore::HTMLStyleElement::parseMappedAttribute): Removed code to
  88373. set unused m_media data member.
  88374. * html/HTMLStyleElement.h:
  88375. Removed unused functions and m_media data member. Also made some
  88376. functions private.
  88377. * html/HTMLAppletElement.cpp:
  88378. * html/HTMLAppletElement.h:
  88379. * html/HTMLAreaElement.cpp:
  88380. * html/HTMLAreaElement.h:
  88381. * html/HTMLBaseFontElement.cpp:
  88382. * html/HTMLBaseFontElement.h:
  88383. * html/HTMLButtonElement.cpp:
  88384. * html/HTMLButtonElement.h:
  88385. * html/HTMLDListElement.cpp:
  88386. * html/HTMLDListElement.h:
  88387. * html/HTMLDivElement.cpp:
  88388. * html/HTMLDivElement.h:
  88389. * html/HTMLFontElement.cpp:
  88390. * html/HTMLFontElement.h:
  88391. * html/HTMLFormControlElement.cpp:
  88392. * html/HTMLFormControlElement.h:
  88393. * html/HTMLFormElement.cpp:
  88394. * html/HTMLFormElement.h:
  88395. * html/HTMLFrameElement.cpp: Also removed an incorrect FIXME comment
  88396. here after I did a little research to disprove it.
  88397. * html/HTMLFrameElement.h:
  88398. * html/HTMLFrameSetElement.cpp:
  88399. * html/HTMLFrameSetElement.h:
  88400. * html/HTMLHRElement.cpp:
  88401. * html/HTMLHRElement.h:
  88402. * html/HTMLHeadElement.cpp:
  88403. * html/HTMLHeadElement.h:
  88404. * html/HTMLHeadingElement.cpp:
  88405. * html/HTMLHeadingElement.h:
  88406. * html/HTMLHtmlElement.cpp:
  88407. * html/HTMLHtmlElement.h:
  88408. * html/HTMLImageElement.cpp:
  88409. * html/HTMLImageElement.h:
  88410. * html/HTMLInputElement.cpp:
  88411. * html/HTMLInputElement.h:
  88412. * html/HTMLIsIndexElement.cpp:
  88413. * html/HTMLIsIndexElement.h:
  88414. * html/HTMLLIElement.cpp:
  88415. * html/HTMLLIElement.h:
  88416. * html/HTMLLabelElement.cpp:
  88417. * html/HTMLLabelElement.h:
  88418. * html/HTMLLegendElement.cpp:
  88419. * html/HTMLLegendElement.h:
  88420. * html/HTMLLinkElement.cpp:
  88421. * html/HTMLLinkElement.h:
  88422. * html/HTMLMapElement.cpp:
  88423. * html/HTMLMapElement.h:
  88424. * html/HTMLMenuElement.cpp:
  88425. * html/HTMLMenuElement.h:
  88426. * html/HTMLMetaElement.cpp:
  88427. * html/HTMLMetaElement.h:
  88428. * html/HTMLModElement.cpp:
  88429. * html/HTMLModElement.h:
  88430. * html/HTMLOListElement.cpp:
  88431. * html/HTMLOListElement.h:
  88432. * html/HTMLObjectElement.cpp:
  88433. * html/HTMLObjectElement.h:
  88434. * html/HTMLOptGroupElement.cpp:
  88435. * html/HTMLOptGroupElement.h:
  88436. * html/HTMLOptionElement.cpp:
  88437. * html/HTMLOptionElement.h:
  88438. * html/HTMLParagraphElement.cpp:
  88439. * html/HTMLParagraphElement.h:
  88440. * html/HTMLParamElement.cpp:
  88441. * html/HTMLParamElement.h:
  88442. * html/HTMLPlugInElement.cpp:
  88443. * html/HTMLPlugInElement.h:
  88444. * html/HTMLPreElement.cpp:
  88445. * html/HTMLPreElement.h:
  88446. * html/HTMLQuoteElement.cpp:
  88447. * html/HTMLQuoteElement.h:
  88448. * html/HTMLScriptElement.cpp:
  88449. * html/HTMLScriptElement.h:
  88450. * html/HTMLTableCaptionElement.cpp:
  88451. * html/HTMLTableCaptionElement.h:
  88452. * html/HTMLTableCellElement.cpp:
  88453. * html/HTMLTableCellElement.h:
  88454. * html/HTMLTableColElement.cpp:
  88455. * html/HTMLTableColElement.h:
  88456. * html/HTMLTableElement.cpp:
  88457. * html/HTMLTableElement.h:
  88458. * html/HTMLTableRowElement.cpp:
  88459. * html/HTMLTableRowElement.h:
  88460. * html/HTMLTextAreaElement.cpp:
  88461. * html/HTMLTextAreaElement.h:
  88462. * html/HTMLUListElement.cpp:
  88463. * html/HTMLUListElement.h:
  88464. * html/HTMLVideoElement.cpp:
  88465. * html/HTMLVideoElement.h:
  88466. Removed unused functions.
  88467. 2010-06-26 Tony Gentilcore <tonyg@chromium.org>
  88468. Reviewed by Adam Barth.
  88469. Exclude line numbers for sources which are not from the network.
  88470. https://bugs.webkit.org/show_bug.cgi?id=41060
  88471. * html/HTMLDocumentParser.cpp:
  88472. (WebCore::HTMLDocumentParser::write):
  88473. 2010-06-25 Antonio Gomes <tonikitoo@webkit.org>
  88474. Unreviewed complementary fix for r61818. It added StaticHashSetListNode.cpp|h to the system,
  88475. but did not added it to chromium build system.
  88476. * WebCore.gypi:
  88477. 2010-06-26 Pavel Feldman <pfeldman@chromium.org>
  88478. Reviewed by Yury Semikhatsky.
  88479. Web Inspector: ScripsPanel.prototype.editScriptSource uses old addBreakpoint signature.
  88480. https://bugs.webkit.org/show_bug.cgi?id=41247
  88481. * inspector/front-end/BreakpointManager.js:
  88482. (WebInspector.BreakpointManager.prototype.removeBreakpoint):
  88483. (WebInspector.Breakpoint.prototype.set enabled):
  88484. (WebInspector.Breakpoint.prototype.set condition):
  88485. * inspector/front-end/Object.js:
  88486. (WebInspector.Object.prototype.addEventListener):
  88487. (WebInspector.Object.prototype.removeEventListener):
  88488. (WebInspector.Object.prototype.removeAllListeners):
  88489. * inspector/front-end/ScriptsPanel.js:
  88490. (WebInspector.ScriptsPanel.prototype.editScriptSource.mycallback):
  88491. (WebInspector.ScriptsPanel.prototype.editScriptSource):
  88492. 2010-06-26 Tony Gentilcore <tonyg@chromium.org>
  88493. Reviewed by Dimitri Glazkov.
  88494. Add a guarded window.performance.timing binding which is disabled by default.
  88495. https://bugs.webkit.org/show_bug.cgi?id=38924
  88496. This is where Web Timing support will be implemented. Web Timing is a
  88497. draft spec for exposing load times to web pages. It will be enabled
  88498. once the spec and implementaiton are solidified. See:
  88499. http://dev.w3.org/2006/webapi/WebTiming/
  88500. No new tests because guarded behind a #DEFINE. Will add tests as
  88501. functionality is landed.
  88502. * Android.mk:
  88503. * CMakeLists.txt:
  88504. * Configurations/FeatureDefines.xcconfig:
  88505. * DerivedSources.cpp:
  88506. * DerivedSources.make:
  88507. * GNUmakefile.am:
  88508. * WebCore.gypi:
  88509. * WebCore.pri:
  88510. * WebCore.pro:
  88511. * WebCore.vcproj/WebCore.vcproj:
  88512. * WebCore.xcodeproj/project.pbxproj:
  88513. * page/DOMWindow.cpp:
  88514. (WebCore::DOMWindow::clear):
  88515. (WebCore::DOMWindow::performance):
  88516. * page/DOMWindow.h:
  88517. (WebCore::DOMWindow::optionalPerformance):
  88518. * page/DOMWindow.idl:
  88519. * page/NavigationTiming.cpp: Added.
  88520. (WebCore::NavigationTiming::NavigationTiming):
  88521. (WebCore::NavigationTiming::frame):
  88522. (WebCore::NavigationTiming::disconnectFrame):
  88523. (WebCore::NavigationTiming::navigationStart):
  88524. * page/NavigationTiming.h: Added.
  88525. (WebCore::NavigationTiming::create):
  88526. * page/NavigationTiming.idl: Added.
  88527. * page/Performance.cpp: Added.
  88528. (WebCore::Performance::Performance):
  88529. (WebCore::Performance::frame):
  88530. (WebCore::Performance::disconnectFrame):
  88531. (WebCore::Performance::timing):
  88532. * page/Performance.h: Added.
  88533. (WebCore::Performance::create):
  88534. * page/Performance.idl: Added.
  88535. 2010-06-25 Zhenyao Mo <zmo@google.com>
  88536. Reviewed by Dimitri Glazkov.
  88537. activeTexture wrongly generates error with legal input.
  88538. https://bugs.webkit.org/show_bug.cgi?id=41227
  88539. Test: fast/canvas/webgl/texture-active-bind.html
  88540. * html/canvas/WebGLRenderingContext.cpp:
  88541. (WebCore::WebGLRenderingContext::activeTexture): Fix the upper limit test for test units.
  88542. 2010-06-25 Johnny Ding <jnd@chromium.org>
  88543. Reviewed by Adam Barth.
  88544. https://bugs.webkit.org/show_bug.cgi?id=41061
  88545. Make sure Chromium's ScriptController::processingUserGesture follows the JSC's behavior.
  88546. Set right value in UserGestureIndicator when handling events in PopupMenuList in chromium.
  88547. Test: fast/events/popup-when-select-change.html
  88548. * bindings/v8/ScriptController.cpp:
  88549. (WebCore::ScriptController::processingUserGesture):
  88550. * platform/chromium/PopupMenuChromium.cpp:
  88551. (WebCore::PopupContainer::handleMouseDownEvent):
  88552. (WebCore::PopupContainer::handleMouseMoveEvent):
  88553. (WebCore::PopupContainer::handleMouseReleaseEvent):
  88554. (WebCore::PopupContainer::handleWheelEvent):
  88555. (WebCore::PopupContainer::handleKeyEvent):
  88556. 2010-06-25 Tony Gentilcore <tonyg@chromium.org>
  88557. Reviewed by Eric Seidel.
  88558. Make PendingScript hold a CachedResourceClient open for its lifetime
  88559. https://bugs.webkit.org/show_bug.cgi?id=40968
  88560. This replaces the mechanism introduced in r61374 with a simpler
  88561. appraoch for preventing unexpected purges: always keep a client open.
  88562. This approach will allow deferred scripts to add a client after
  88563. the resource may have already been loaded without having to worry about
  88564. the buffer being purged in the meantime.
  88565. No new tests because making a CachedResource purse itself is not
  88566. testable from a LayoutTest.
  88567. * html/HTMLDocumentParser.cpp:
  88568. (WebCore::HTMLDocumentParser::watchForLoad):
  88569. (WebCore::HTMLDocumentParser::notifyFinished):
  88570. * html/HTMLScriptRunner.cpp:
  88571. (WebCore::HTMLScriptRunner::~HTMLScriptRunner):
  88572. (WebCore::HTMLScriptRunner::sourceFromPendingScript):
  88573. (WebCore::HTMLScriptRunner::isPendingScriptReady):
  88574. (WebCore::HTMLScriptRunner::executePendingScript):
  88575. (WebCore::HTMLScriptRunner::watchForLoad):
  88576. (WebCore::HTMLScriptRunner::stopWatchingForLoad):
  88577. (WebCore::HTMLScriptRunner::executeScriptsWaitingForLoad):
  88578. (WebCore::HTMLScriptRunner::requestScript):
  88579. (WebCore::HTMLScriptRunner::PendingScript::~PendingScript):
  88580. (WebCore::HTMLScriptRunner::PendingScript::releaseElementAndClear):
  88581. (WebCore::HTMLScriptRunner::PendingScript::setCachedScript):
  88582. (WebCore::HTMLScriptRunner::PendingScript::cachedScript):
  88583. * html/HTMLScriptRunner.h:
  88584. (WebCore::HTMLScriptRunner::PendingScript::PendingScript):
  88585. (WebCore::HTMLScriptRunner::PendingScript::watchingForLoad):
  88586. (WebCore::HTMLScriptRunner::PendingScript::setWatchingForLoad):
  88587. (WebCore::HTMLScriptRunner::PendingScript::notifyFinished):
  88588. * html/HTMLScriptRunnerHost.h:
  88589. 2010-06-25 Zhenyao Mo <zmo@google.com>
  88590. Reviewed by Dimitri Glazkov.
  88591. getUniform will not work for fetching uniform array elements
  88592. https://bugs.webkit.org/show_bug.cgi?id=34508
  88593. Test: fast/canvas/webgl/gl-uniform-arrays.html
  88594. * html/canvas/WebGLRenderingContext.cpp:
  88595. (WebCore::WebGLRenderingContext::attachShader): Generate correct errors.
  88596. (WebCore::WebGLRenderingContext::getUniform): Dealing with array elements.
  88597. (WebCore::WebGLRenderingContext::useProgram): Deal with program==null.
  88598. (WebCore::WebGLRenderingContext::validateProgram): Generate correct errors.
  88599. * platform/graphics/mac/GraphicsContext3DMac.mm:
  88600. (WebCore::GraphicsContext3D::useProgram): Deal with program==null.
  88601. 2010-06-25 Zhenyao Mo <zmo@google.com>
  88602. Reviewed by Dimitri Glazkov.
  88603. Bring set/get state functions to GLES2 conformance
  88604. https://bugs.webkit.org/show_bug.cgi?id=41095
  88605. Tests: fast/canvas/webgl/gl-enable-enum-test.html
  88606. fast/canvas/webgl/gl-enum-tests.html
  88607. * html/canvas/WebGLRenderingContext.cpp: Check input parameters according to GLES2 spec.
  88608. (WebCore::WebGLRenderingContext::blendEquation):
  88609. (WebCore::WebGLRenderingContext::blendEquationSeparate):
  88610. (WebCore::WebGLRenderingContext::disable):
  88611. (WebCore::WebGLRenderingContext::enable):
  88612. (WebCore::WebGLRenderingContext::hint):
  88613. (WebCore::WebGLRenderingContext::isEnabled):
  88614. (WebCore::WebGLRenderingContext::pixelStorei):
  88615. (WebCore::WebGLRenderingContext::validateBlendEquation):
  88616. (WebCore::WebGLRenderingContext::validateCapability):
  88617. * html/canvas/WebGLRenderingContext.h: Add helper function declaration.
  88618. 2010-06-25 Sterling Swigart <sswigart@google.com>
  88619. Reviewed by David Levin.
  88620. Callback code generation fixed so that now string parameters are converted to JSString
  88621. using the jsString method instead of the toJS method which would not compile.
  88622. https://bugs.webkit.org/show_bug.cgi?id=41119
  88623. * bindings/scripts/CodeGeneratorJS.pm: Now generates jsString for String parameters in callbacks.
  88624. * bindings/scripts/test/JS/JSTestCallback.cpp: Fixed test for above.
  88625. (WebCore::JSTestCallback::callbackWithClass2Param): Ditto.
  88626. 2010-06-25 Zhenyao Mo <zmo@google.com>
  88627. Reviewed by Dimitri Glazkov.
  88628. A buffer should be bound to one target in its lifetime
  88629. https://bugs.webkit.org/show_bug.cgi?id=41108
  88630. Test: fast/canvas/webgl/buffer-bind-test.html
  88631. * html/canvas/WebGLBuffer.cpp:
  88632. (WebCore::WebGLBuffer::WebGLBuffer): Init target to 0.
  88633. (WebCore::WebGLBuffer::associateBufferData): Remove target parameter, use one byteLength member.
  88634. (WebCore::WebGLBuffer::associateBufferSubData): Ditto.
  88635. (WebCore::WebGLBuffer::byteLength): Ditto.
  88636. (WebCore::WebGLBuffer::setTarget): Set target.
  88637. * html/canvas/WebGLBuffer.h: Cache target in the WebGLBuffer object, use one byteLength member.
  88638. (WebCore::WebGLBuffer::getTarget):
  88639. * html/canvas/WebGLRenderingContext.cpp:
  88640. (WebCore::WebGLRenderingContext::bindBuffer): Check if a buffer is bound to another target; set buffer object internal target.
  88641. (WebCore::WebGLRenderingContext::bufferData): Remove target parameter and use the WebGLBuffer cached target instead.
  88642. (WebCore::WebGLRenderingContext::bufferSubData): Ditto.
  88643. (WebCore::WebGLRenderingContext::validateElementArraySize): Ditto.
  88644. (WebCore::WebGLRenderingContext::validateIndexArrayConservative): Ditto.
  88645. (WebCore::WebGLRenderingContext::vertexAttribPointer): Ditto.
  88646. 2010-06-25 Dean Jackson <dino@apple.com>
  88647. Reviewed by Simon Fraser.
  88648. https://bugs.webkit.org/show_bug.cgi?id=41188
  88649. Animations should not require 0% and 100% keyframes
  88650. When we are generating the animation lists in CSSStyleSelector,
  88651. rather than bail if we notice that "from" or "to" are missing, we
  88652. now generate synthetic keyframes for those cases.
  88653. Tests: animations/missing-from-to-transforms.html
  88654. animations/missing-from-to.html
  88655. WebCore/manual-tests/animation-with-transition.html
  88656. * css/CSSStyleSelector.cpp:
  88657. (WebCore::CSSStyleSelector::styleForKeyframe):
  88658. Moved individual keyframe generation into a new function.
  88659. (WebCore::CSSStyleSelector::keyframeStylesForAnimation):
  88660. Call the new function above for regular keyframes, and
  88661. also check for missing keyframes and generate them if
  88662. necessary.
  88663. * css/CSSStyleSelector.h:
  88664. 2010-06-25 Adam Barth <abarth@webkit.org>
  88665. Reviewed by Eric Seidel.
  88666. We should parse <html>
  88667. https://bugs.webkit.org/show_bug.cgi?id=41239
  88668. This patch is hard to test, but I think this patch lets us parse a
  88669. document consisting of only an <html> start tag.
  88670. * html/HTMLTreeBuilder.cpp:
  88671. (WebCore::HTMLTreeBuilder::constructTreeFromToken):
  88672. (WebCore::HTMLTreeBuilder::insertHTMLStartTagBeforeHTML):
  88673. (WebCore::HTMLTreeBuilder::insertHTMLStartTagInBody):
  88674. (WebCore::HTMLTreeBuilder::processStartTag):
  88675. (WebCore::HTMLTreeBuilder::processDefaultForBeforeHTMLMode):
  88676. * html/HTMLTreeBuilder.h:
  88677. (WebCore::HTMLTreeBuilder::ElementStack::push):
  88678. 2010-06-25 Dan Bernstein <mitz@apple.com>
  88679. Reviewed by Sam Weinig.
  88680. <rdar://problem/8000667> Certain text is repeated before and after a line break
  88681. Test: fast/text/bidi-explicit-embedding-past-end.html
  88682. * platform/text/BidiResolver.h:
  88683. (WebCore::::createBidiRunsForLine): Committing explicit embedding past the end of the range
  88684. creates BidiRuns up to the end of the range, so at that point, we can stop iterating.
  88685. 2010-06-25 Eric Seidel <eric@webkit.org>
  88686. Reviewed by Adam Barth.
  88687. Move decoding into DocumentParser to further simplify RawDataDocumentParser and DocumentWriter
  88688. https://bugs.webkit.org/show_bug.cgi?id=41202
  88689. Hit the Windoze with the compile bat.
  88690. * WebCore.vcproj/WebCore.vcproj:
  88691. 2010-06-25 Adam Barth <abarth@webkit.org>
  88692. Reviewed by Eric Seidel.
  88693. HTMLTreeBuilder should branch first on token type and then on insertion mode
  88694. https://bugs.webkit.org/show_bug.cgi?id=41232
  88695. This is different than how the spec is written, but it lets us remove a
  88696. lot of redudancy in the algorithm. We might even want to pull some of
  88697. the branches on token name outside the insertion mode branch, but I'll
  88698. leave that for a future patch.
  88699. Although this looks like a big patch, it's mostly just a mechanical
  88700. switch permutation.
  88701. * html/HTMLTreeBuilder.cpp:
  88702. (WebCore::HTMLTreeBuilder::constructTreeFromToken):
  88703. (WebCore::HTMLTreeBuilder::processToken):
  88704. (WebCore::HTMLTreeBuilder::processDoctypeToken):
  88705. (WebCore::HTMLTreeBuilder::processStartTag):
  88706. (WebCore::HTMLTreeBuilder::processEndTag):
  88707. (WebCore::HTMLTreeBuilder::processComment):
  88708. (WebCore::HTMLTreeBuilder::processCharacter):
  88709. (WebCore::HTMLTreeBuilder::processEndOfFile):
  88710. (WebCore::HTMLTreeBuilder::processDefaultForInitialMode):
  88711. (WebCore::HTMLTreeBuilder::processDefaultForBeforeHTMLMode):
  88712. (WebCore::HTMLTreeBuilder::processDefaultForBeforeHeadMode):
  88713. (WebCore::HTMLTreeBuilder::processDefaultForInHeadMode):
  88714. (WebCore::HTMLTreeBuilder::processDefaultForInHeadNoscriptMode):
  88715. (WebCore::HTMLTreeBuilder::processDefaultForAfterHeadMode):
  88716. * html/HTMLTreeBuilder.h:
  88717. 2010-06-25 Adam Barth <abarth@webkit.org>
  88718. Reviewed by Darin Adler.
  88719. Tree builder doesn't need to return a Node
  88720. https://bugs.webkit.org/show_bug.cgi?id=41225
  88721. The old tree builder returned the newly inserted Node, but the new tree
  88722. builder doesn't need to do that as far as I can tell. Removing the
  88723. return value cuts down on a bunch of accounting.
  88724. * html/HTMLTreeBuilder.cpp:
  88725. (WebCore::HTMLTreeBuilder::passTokenToLegacyParser):
  88726. (WebCore::HTMLTreeBuilder::constructTreeFromToken):
  88727. (WebCore::HTMLTreeBuilder::processToken):
  88728. (WebCore::HTMLTreeBuilder::insertDoctype):
  88729. (WebCore::HTMLTreeBuilder::insertComment):
  88730. (WebCore::HTMLTreeBuilder::insertGenericRCDATAElement):
  88731. (WebCore::HTMLTreeBuilder::insertGenericRawTextElement):
  88732. (WebCore::HTMLTreeBuilder::insertScriptElement):
  88733. * html/HTMLTreeBuilder.h:
  88734. 2010-06-25 Zhenyao Mo <zmo@google.com>
  88735. Reviewed by Dimitri Glazkov.
  88736. getParameter(COLOR_WRITEMASK) needs to return Array
  88737. https://bugs.webkit.org/show_bug.cgi?id=40437
  88738. * bindings/js/JSWebGLRenderingContextCustom.cpp: Handling bool array.
  88739. (WebCore::toJS):
  88740. * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: Handling bool array.
  88741. (WebCore::toV8Object):
  88742. * html/canvas/WebGLGetInfo.cpp: Handling bool array.
  88743. (WebCore::WebGLGetInfo::WebGLGetInfo):
  88744. (WebCore::WebGLGetInfo::getBoolArray):
  88745. * html/canvas/WebGLGetInfo.h: Handling bool array.
  88746. (WebCore::WebGLGetInfo::):
  88747. * html/canvas/WebGLRenderingContext.cpp: Handling bool array.
  88748. (WebCore::WebGLRenderingContext::getParameter):
  88749. (WebCore::WebGLRenderingContext::getBooleanArrayParameter):
  88750. * html/canvas/WebGLRenderingContext.h: Handling bool array.
  88751. 2010-06-25 Evan Stade <estade@chromium.org>
  88752. Reviewed by Darin Fisher.
  88753. [chromium linux] Improve look of scrollbars
  88754. https://bugs.webkit.org/show_bug.cgi?id=35775
  88755. This will affect layout pixel tests, which will need to be rebaselined.
  88756. * platform/Scrollbar.cpp: need the buttons to be invalidated when the
  88757. thumb moves as they paint differently if the thumb is at the top or
  88758. bottom
  88759. (WebCore::Scrollbar::updateThumbPosition):
  88760. (WebCore::Scrollbar::updateThumbProportion):
  88761. * platform/chromium/ScrollbarThemeChromium.cpp:
  88762. (WebCore::ScrollbarThemeChromium::trackRect): share code between
  88763. linux/windows
  88764. * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
  88765. (WebCore::ScrollbarThemeChromiumLinux::scrollbarThickness):
  88766. (WebCore::outlineColor): up the contrast
  88767. (WebCore::ScrollbarThemeChromiumLinux::paintButton): add custom button
  88768. drawing implementation
  88769. (WebCore::ScrollbarThemeChromiumLinux::buttonSize): add buttons
  88770. * platform/chromium/ScrollbarThemeChromiumWin.cpp: share code between
  88771. linux/windows
  88772. * rendering/RenderThemeChromiumLinux.cpp: improve stock colors to get
  88773. better contrast and integration with stock chrome theme
  88774. 2010-06-25 Eric Seidel <eric@webkit.org>
  88775. Reviewed by Adam Barth.
  88776. Move decoding into DocumentParser to further simplify RawDataDocumentParser and DocumentWriter
  88777. https://bugs.webkit.org/show_bug.cgi?id=41202
  88778. The silly thing about this patch is that none of the
  88779. RawDataDocumentParser subclasses actually use any of the
  88780. data passed to them via appendBytes.
  88781. This makes the relationship between DocumentWriter and
  88782. DocumentParser slightly more confusing, however I think this
  88783. DocumentParser API is slightly nicer.
  88784. Next step is to split DecodedDataDocumentParser out from
  88785. DocumentParser, and then the base DocumentParser won't know
  88786. anything about decoding or SegmentedString.
  88787. No functional change, thus no tests.
  88788. * WebCore.xcodeproj/project.pbxproj:
  88789. * dom/DocumentParser.h:
  88790. * dom/RawDataDocumentParser.h:
  88791. * loader/DocumentWriter.cpp:
  88792. (WebCore::DocumentWriter::replaceDocument):
  88793. (WebCore::DocumentWriter::createDecoderIfNeeded):
  88794. (WebCore::DocumentWriter::reportDataRecieved):
  88795. (WebCore::DocumentWriter::addData):
  88796. * loader/DocumentWriter.h:
  88797. * loader/ImageDocument.cpp:
  88798. (WebCore::ImageDocumentParser::appendBytes):
  88799. * loader/MediaDocument.cpp:
  88800. (WebCore::MediaDocumentParser::appendBytes):
  88801. * loader/PluginDocument.cpp:
  88802. (WebCore::PluginDocumentParser::appendBytes):
  88803. * loader/SinkDocument.cpp:
  88804. (WebCore::SinkDocumentParser::SinkDocumentParser):
  88805. (WebCore::SinkDocumentParser::appendBytes):
  88806. (WebCore::SinkDocument::createParser):
  88807. 2010-06-25 Eric Seidel <eric@webkit.org>
  88808. Reviewed by Adam Barth.
  88809. Split DocumentParser::write into separate append and insert calls
  88810. https://bugs.webkit.org/show_bug.cgi?id=41197
  88811. Unfortunately this is still somewhat confusing as
  88812. "insert" means "insert this data at the current
  88813. insertion point and run the parser synchronously
  88814. unless we're in a nested write call" and "append"
  88815. means "append this data to the end and run the
  88816. parser if not in a nested call or until possibly yielding".
  88817. This at least makes clearer which document parsers implement
  88818. which behavior, and paves the way for moving the decoding
  88819. logic into DocumentParser from DocumentWriter.
  88820. No functional changes, thus no tests.
  88821. * dom/Document.cpp:
  88822. (WebCore::Document::write):
  88823. * dom/DocumentParser.h:
  88824. * dom/RawDataDocumentParser.h:
  88825. (WebCore::RawDataDocumentParser::insert):
  88826. (WebCore::RawDataDocumentParser::append):
  88827. * dom/XMLDocumentParser.cpp:
  88828. (WebCore::XMLDocumentParser::insert):
  88829. (WebCore::XMLDocumentParser::append):
  88830. * dom/XMLDocumentParser.h:
  88831. * dom/XMLDocumentParserLibxml2.cpp:
  88832. (WebCore::XMLDocumentParser::resumeParsing):
  88833. * html/HTMLDocumentParser.cpp:
  88834. (WebCore::HTMLDocumentParser::insert):
  88835. (WebCore::HTMLDocumentParser::append):
  88836. (WebCore::HTMLDocumentParser::parseDocumentFragment):
  88837. * html/HTMLDocumentParser.h:
  88838. * html/LegacyHTMLDocumentParser.cpp:
  88839. (WebCore::LegacyHTMLDocumentParser::insert):
  88840. (WebCore::LegacyHTMLDocumentParser::append):
  88841. * html/LegacyHTMLDocumentParser.h:
  88842. * loader/DocumentWriter.cpp:
  88843. (WebCore::DocumentWriter::replaceDocument):
  88844. (WebCore::DocumentWriter::addData):
  88845. * loader/FTPDirectoryDocument.cpp:
  88846. (WebCore::FTPDirectoryDocumentParser::FTPDirectoryDocumentParser):
  88847. (WebCore::FTPDirectoryDocumentParser::loadDocumentTemplate):
  88848. (WebCore::FTPDirectoryDocumentParser::append):
  88849. * loader/TextDocument.cpp:
  88850. (WebCore::TextDocumentParser::insert):
  88851. (WebCore::TextDocumentParser::append):
  88852. (WebCore::TextDocumentParser::finish):
  88853. 2010-06-25 Daniel Cheng <dcheng@chromium.org>
  88854. Reviewed by Darin Fisher.
  88855. [chromium] Add new stubs for querying platform drag-and-drop and copy-and-paste data.
  88856. This change adds new stubs for querying for data in a clipboard or drag operation. This is
  88857. so adding support for more data types in clipboard/drag operations doesn't become
  88858. increasingly expensive, since we currently copy all the drag data we need every time a new
  88859. web drop target is entered. It also adds a new mechanism to write back to the system
  88860. clipboard that isn't tied to one data type.
  88861. https://bugs.webkit.org/show_bug.cgi?id=40540
  88862. No new tests since we're just adding new ChromiumBridge APIs. When we switch to it, it will
  88863. be covered by the existing tests.
  88864. * platform/chromium/ChromiumBridge.h:
  88865. * platform/chromium/PasteboardPrivate.h:
  88866. (WebCore::PasteboardPrivate::):
  88867. 2010-06-25 Mario Sanchez Prada <msanchez@igalia.com>
  88868. Reviewed by Xan Lopez.
  88869. [Gtk] Implement atk_table_get_column_header
  88870. https://bugs.webkit.org/show_bug.cgi?id=30896
  88871. Implemented get_column_header and modified get_row_header
  88872. accordingly to keep them both coherent among themselves.
  88873. Based on a previous patch by Joanmarie Diggs.
  88874. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  88875. (webkit_accessible_table_get_column_header):
  88876. (webkit_accessible_table_get_row_header):
  88877. 2010-06-29 Martin Robinson <mrobinson@igalia.com>
  88878. Reviewed by Xan Lopez.
  88879. [GTK] Pasteboard code does not take into account the nil character when getting and setting markup/netscape-url data
  88880. https://bugs.webkit.org/show_bug.cgi?id=41221
  88881. Take into account null-terminator when getting and setting markup and
  88882. Netscape URL pasteboard types. This means that if the selection data
  88883. contains the null terminator, it won't be included in the final String.
  88884. When setting the pasteboard data the null terminator is now included to
  88885. match the behavior of other applications.
  88886. * platform/gtk/PasteboardHelper.cpp:
  88887. (WebCore::PasteboardHelper::getClipboardContents):
  88888. Create the markup string after using g_strndup to protect against non-null-terminated
  88889. strings. Use String::fromUTF8 here to ensure that the string is not longer than the
  88890. first null-terminator. Also fix a small indentation issue.
  88891. (WebCore::PasteboardHelper::fillSelectionData):
  88892. Always include the null-terminator when setting pasteboard data manually. This matches
  88893. the behavior of other browser applications.
  88894. 2010-06-25 Sam Magnuson <smagnuson@netflix.com>
  88895. Reviewed by Kenneth Rohde Christiansen.
  88896. [Qt] When any geometry change happens to a node it will resize the
  88897. backing cache
  88898. https://bugs.webkit.org/show_bug.cgi?id=40378
  88899. Continue to grow the cache, but never toss it. When the pixmap
  88900. cache gets too big it will be lost and created at the right size
  88901. next time.
  88902. No new tests: this is an optimization.
  88903. * platform/graphics/qt/GraphicsLayerQt.cpp:
  88904. (WebCore::GraphicsLayerQtImpl::recache):
  88905. (WebCore::GraphicsLayerQtImpl::paint):
  88906. (WebCore::GraphicsLayerQtImpl::flushChanges):
  88907. 2010-06-25 Andreas Kling <andreas.kling@nokia.com>
  88908. Reviewed by Darin Adler.
  88909. https://bugs.webkit.org/show_bug.cgi?id=41019
  88910. Canvas: Remember verified clean origins for drawImage()
  88911. Made CanvasRenderingContext2D cache the KURLs of clean origins
  88912. for fast repeated lookup.
  88913. * html/canvas/CanvasRenderingContext2D.cpp:
  88914. (WebCore::CanvasRenderingContext2D::checkOrigin):
  88915. * html/canvas/CanvasRenderingContext2D.h:
  88916. 2010-06-25 Robert Hogan <robert@webkit.org>
  88917. Reviewed by Kenneth Rohde Christiansen.
  88918. [Qt] HTTP 307 after a 303 after a POST re-sends POST data from the original request
  88919. https://bugs.webkit.org/show_bug.cgi?id=35301
  88920. Qt needs to use ResourceRequest::request()->httpMethod()) in order to determine
  88921. the appropriate method for a 307 redirect request.
  88922. When deciding if it needs to override a POST method with a GET method during a
  88923. redirect chain, QNetworkReplyHandler needs to check the HTTP method stored
  88924. in ResourceRequest::request()->httpMethod(). This will always contain the
  88925. original request method in a redirect chain and, more importantly, is the
  88926. method that will be used for the request created from the redirect
  88927. if it is not overridden.
  88928. * platform/network/qt/QNetworkReplyHandler.cpp:
  88929. (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
  88930. 2010-06-25 Dan Bernstein <mitz@apple.com>
  88931. Reviewed by Anders Carlsson.
  88932. Removed a one-line method that only had one internal caller.
  88933. * rendering/RenderBlock.h: Removed bidiReorderLine()
  88934. * rendering/RenderBlockLineLayout.cpp:
  88935. (WebCore::RenderBlock::layoutInlineChildren): Moved the implementation of
  88936. bidiReorderLine() inline here.
  88937. 2010-06-25 Nate Chapin <japhet@chromium.org>
  88938. Reviewed by Adam Barth.
  88939. Take a KURL parameter in Document's constructor.
  88940. This will remove the one case where Document::url()
  88941. and FrameLoader::url() are not equal, allowing us to
  88942. remove FrameLoader::url().
  88943. https://bugs.webkit.org/show_bug.cgi?id=41166
  88944. Refactor only, no new tests.
  88945. * dom/DOMImplementation.cpp:
  88946. (WebCore::DOMImplementation::createDocument): Take a KURL and pass it through to Document.
  88947. (WebCore::DOMImplementation::createHTMLDocument):
  88948. * dom/DOMImplementation.h:
  88949. * dom/Document.cpp:
  88950. (WebCore::Document::Document): Call setURL() if a frame or a non-empty KURL is specified.
  88951. (WebCore::Document::initSecurityContext): m_url is now initialized, so use it instead
  88952. of m_frame->loader()->url() for initializing the SecurityOrigin.
  88953. * dom/Document.h:
  88954. (WebCore::Document::create):
  88955. (WebCore::Document::createXHTML):
  88956. * html/HTMLDocument.cpp:
  88957. * html/HTMLDocument.h: Add KURL parameter to create() and constructor.
  88958. * html/HTMLViewSourceDocument.cpp:
  88959. * html/HTMLViewSourceDocument.h: Add KURL parameter to create() and constructor.
  88960. * loader/CachedFont.cpp:
  88961. (WebCore::CachedFont::ensureSVGFontData):
  88962. * loader/DocumentWriter.cpp:
  88963. (WebCore::DocumentWriter::createDocument): Take a KURL and pass it through to Document.
  88964. (WebCore::DocumentWriter::begin): Pass existing url parameter to constructors, and remove
  88965. redundant Document::setURL() call.
  88966. * loader/DocumentWriter.h:
  88967. * loader/FTPDirectoryDocument.cpp:
  88968. * loader/FTPDirectoryDocument.h: Add KURL parameter to create() and constructor.
  88969. * loader/ImageDocument.cpp:
  88970. * loader/ImageDocument.h: Add KURL parameter to create() and constructor.
  88971. * loader/MediaDocument.cpp:
  88972. * loader/MediaDocument.h: Add KURL parameter to create() and constructor.
  88973. * loader/PlaceholderDocument.h: Add KURL parameter to create() and constructor.
  88974. * loader/PluginDocument.cpp:
  88975. * loader/PluginDocument.h: Add KURL parameter to create() and constructor.
  88976. * loader/SinkDocument.cpp:
  88977. * loader/SinkDocument.h: Add KURL parameter to create() and constructor.
  88978. * loader/TextDocument.cpp:
  88979. * loader/TextDocument.h: Add KURL parameter to create() and constructor.
  88980. * svg/SVGDocument.cpp:
  88981. * svg/SVGDocument.h: Add KURL parameter to create() and constructor.
  88982. * xml/DOMParser.cpp:
  88983. (WebCore::DOMParser::parseFromString):
  88984. * xml/XMLHttpRequest.cpp:
  88985. (WebCore::XMLHttpRequest::responseXML):
  88986. * xml/XSLTProcessor.cpp:
  88987. (WebCore::XSLTProcessor::createDocumentFromSource):
  88988. 2010-06-25 Sheriff Bot <webkit.review.bot@gmail.com>
  88989. Unreviewed, rolling out r61812.
  88990. http://trac.webkit.org/changeset/61812
  88991. https://bugs.webkit.org/show_bug.cgi?id=41216
  88992. breaks Chromium workers tests (Requested by mnaganov on
  88993. #webkit).
  88994. * storage/AbstractDatabase.cpp:
  88995. * storage/AbstractDatabase.h:
  88996. * storage/Database.cpp:
  88997. (WebCore::Database::databaseInfoTableName):
  88998. (WebCore::guidMutex):
  88999. (WebCore::guidToVersionMap):
  89000. (WebCore::updateGuidVersionMap):
  89001. (WebCore::guidToDatabaseMap):
  89002. (WebCore::databaseVersionKey):
  89003. (WebCore::DatabaseCreationCallbackTask::create):
  89004. (WebCore::DatabaseCreationCallbackTask::performTask):
  89005. (WebCore::DatabaseCreationCallbackTask::DatabaseCreationCallbackTask):
  89006. (WebCore::Database::openDatabase):
  89007. (WebCore::Database::Database):
  89008. (WebCore::Database::openAndVerifyVersion):
  89009. (WebCore::retrieveTextResultFromDatabase):
  89010. (WebCore::Database::getVersionFromDatabase):
  89011. (WebCore::setTextValueInDatabase):
  89012. (WebCore::Database::setVersionInDatabase):
  89013. (WebCore::Database::versionMatchesExpected):
  89014. (WebCore::Database::close):
  89015. (WebCore::Database::disableAuthorizer):
  89016. (WebCore::Database::enableAuthorizer):
  89017. (WebCore::Database::setAuthorizerReadOnly):
  89018. (WebCore::Database::lastActionChangedDatabase):
  89019. (WebCore::Database::lastActionWasInsert):
  89020. (WebCore::Database::resetDeletes):
  89021. (WebCore::Database::hadDeletes):
  89022. (WebCore::guidForOriginAndName):
  89023. (WebCore::Database::resetAuthorizer):
  89024. (WebCore::Database::performOpenAndVerify):
  89025. (WebCore::Database::performCreationCallback):
  89026. (WebCore::Database::version):
  89027. (WebCore::Database::setExpectedVersion):
  89028. (WebCore::Database::stringIdentifier):
  89029. (WebCore::Database::displayName):
  89030. (WebCore::Database::estimatedSize):
  89031. (WebCore::Database::fileName):
  89032. * storage/Database.h:
  89033. (WebCore::Database::scriptExecutionContext):
  89034. (WebCore::Database::opened):
  89035. (WebCore::Database::isNew):
  89036. (WebCore::Database::databaseDebugName):
  89037. * storage/DatabaseAuthorizer.cpp:
  89038. (WebCore::DatabaseAuthorizer::DatabaseAuthorizer):
  89039. (WebCore::DatabaseAuthorizer::denyBasedOnTableName):
  89040. * storage/DatabaseAuthorizer.h:
  89041. (WebCore::DatabaseAuthorizer::create):
  89042. * storage/DatabaseSync.cpp:
  89043. (WebCore::DatabaseSync::databaseInfoTableName):
  89044. (WebCore::DatabaseSync::openDatabaseSync):
  89045. (WebCore::DatabaseSync::DatabaseSync):
  89046. (WebCore::DatabaseSync::~DatabaseSync):
  89047. (WebCore::DatabaseSync::version):
  89048. (WebCore::DatabaseSync::changeVersion):
  89049. (WebCore::DatabaseSync::transaction):
  89050. (WebCore::DatabaseSync::scriptExecutionContext):
  89051. * storage/DatabaseSync.h:
  89052. (WebCore::DatabaseSync::databaseDebugName):
  89053. * storage/DatabaseTask.cpp:
  89054. (WebCore::DatabaseOpenTask::DatabaseOpenTask):
  89055. (WebCore::DatabaseOpenTask::doPerformTask):
  89056. * storage/DatabaseTask.h:
  89057. (WebCore::DatabaseOpenTask::create):
  89058. 2010-06-25 Lei Zheng <lzheng@chromium.org>
  89059. Reviewed by Dimitri Glazkov.
  89060. Add a flag to the ResourceResponse for tracking if a request was fetched when
  89061. Alternate-protocol is available.
  89062. https://bugs.webkit.org/show_bug.cgi?id=41001
  89063. No new tests. (This is just a setter and getter.)
  89064. * platform/network/chromium/ResourceResponse.h:
  89065. (WebCore::ResourceResponse::ResourceResponse):
  89066. (WebCore::ResourceResponse::wasAlternateProtocolAvailable):
  89067. (WebCore::ResourceResponse::setWasAlternateProtocolAvailable):
  89068. 2010-06-25 Lyon Chen <liachen@rim.com>
  89069. Reviewed by Darin Adler.
  89070. InspectorCSSStore.cpp is not surrounded with ENABLE(INSPECTOR)
  89071. https://bugs.webkit.org/show_bug.cgi?id=41004
  89072. Surround InspectorCSSStore.cpp code with ENABLE(INSPECTOR) so it will not
  89073. break the build when INSPECTOR is disabled.
  89074. * inspector/InspectorCSSStore.cpp:
  89075. 2010-06-25 No'am Rosenthal <noam.rosenthal@nokia.com>
  89076. Reviewed by Simon Hausmann.
  89077. [Qt] WebGL: missing file
  89078. https://bugs.webkit.org/show_bug.cgi?id=40998
  89079. Added a missing file to WebCore.pro
  89080. No new tests; build fix
  89081. * WebCore.pro:
  89082. 2010-06-25 Adam Roben <aroben@apple.com>
  89083. Windows build fix
  89084. * WebCore.vcproj/WebCore.vcproj: Added a missing </File> tag.
  89085. 2010-06-25 Alex Milowski <alex@milowski.com>
  89086. Reviewed by Kenneth Rohde Christiansen.
  89087. This patch changes the vertical alignment to rely upon baseline
  89088. alignment for all MathML rendering. This fixes a number of layout
  89089. issues and the implementation is much more clean.
  89090. Also, this patch adds a horizontal green line in the debug layout
  89091. so you can see the top padding of any RenderMathMLBlock instance.
  89092. Test: mathml/presentation/row-alignment.xhtml
  89093. * css/mathml.css:
  89094. * mathml/RenderMathMLBlock.cpp:
  89095. * mathml/RenderMathMLFraction.cpp:
  89096. * mathml/RenderMathMLFraction.h:
  89097. * mathml/RenderMathMLOperator.cpp:
  89098. * mathml/RenderMathMLOperator.h:
  89099. * mathml/RenderMathMLRoot.cpp:
  89100. * mathml/RenderMathMLRow.cpp:
  89101. * mathml/RenderMathMLRow.h:
  89102. * mathml/RenderMathMLSquareRoot.cpp:
  89103. * mathml/RenderMathMLSubSup.cpp:
  89104. * mathml/RenderMathMLUnderOver.cpp:
  89105. 2010-06-25 Yury Semikhatsky <yurys@chromium.org>
  89106. Reviewed by Pavel Feldman.
  89107. Can't see source when hitting debugger statement in evaled source
  89108. https://bugs.webkit.org/show_bug.cgi?id=41058
  89109. Test: inspector/debugger-pause-in-eval-script.html
  89110. * bindings/js/ScriptDebugServer.cpp:
  89111. (WebCore::ScriptDebugServer::sourceParsed): use lexical global object to figure out
  89112. where the script is compiled. Otherwise scripts typed in Web Inspector console will
  89113. be treated as ones evaluated in the context of Web Inspector and won't appear in the
  89114. scripts list.
  89115. * inspector/InspectorController.cpp:
  89116. (WebCore::InspectorController::didParseSource): cache script sources for eval's too.
  89117. 2010-06-25 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  89118. Reviewed by Kenneth Rohde Christiansen.
  89119. [EFL] Use a descriptive string in FileChooser when multiple files can
  89120. be selected.
  89121. https://bugs.webkit.org/show_bug.cgi?id=40943
  89122. EFL port has no tests yet, so no new tests.
  89123. * platform/efl/FileChooserEfl.cpp:
  89124. (WebCore::FileChooser::basenameForWidth):
  89125. 2010-06-25 Nikolas Zimmermann <nzimmermann@rim.com>
  89126. Reviewed by Dirk Schulze.
  89127. SVG Text Highlighting not yet supported (in Safari)
  89128. https://bugs.webkit.org/show_bug.cgi?id=41200
  89129. Add text match marker highlighting support for SVG text - searching for SVG text in Safari now paints the nice yellow highlighting rect, and the
  89130. white rectangles for all text matches. Behaves exactly like HTML text, but respecting SVGs per-character/per-chunk transformations,
  89131. allowing to highlight textPaths, tspans with absolute per-character positions etc..
  89132. Only manually testable, thus no new tests.
  89133. * rendering/InlineBox.h: Expose calculateBoundaries() in non-SVG builds as well, now used by InlineTextBox too.
  89134. * rendering/InlineTextBox.h: Add calculateBoundaries(), which will be used to refactor some code in RenderText, see below.
  89135. (WebCore::InlineTextBox::calculateBoundaries): Just return a IntRect(x(), y(), width(), height()) here.
  89136. (WebCore::RenderObject::isSVGInlineText):
  89137. * rendering/RenderSVGInlineText.h:
  89138. (WebCore::RenderSVGInlineText::isSVGInlineText): Return true for isSVGInlineText(), return false for isSVGText() (default in RenderObject.h)
  89139. * rendering/RenderSVGRoot.cpp:
  89140. (WebCore::RenderSVGRoot::paint): Only paint box decorations in PaintPhase(Child)BlockBackground, exit afterwards just like RenderBlock does.
  89141. Otherwise the white text match marker rectangle gets drawn over the yellow highlight that Safari draws.
  89142. * rendering/RenderSVGText.cpp:
  89143. (WebCore::RenderSVGText::paint): Accept a new painting phase: PaintPhaseSelection, used by Safari when drawing the yellow highlight rect.
  89144. * rendering/RenderText.cpp:
  89145. (WebCore::RenderText::absoluteQuads): Use calculateBoundaries() instead of IntRect(x(), y(), width(), height()). SVG provides different boundaries here.
  89146. (WebCore::RenderText::absoluteQuadsForRange): Ditto. This is the main change, leading to correct text highlight placement.
  89147. * rendering/SVGInlineFlowBox.cpp: Add assertion that painting is not disabled, for consistency. Change paint phase assertion to include PaintPhaseSelection.
  89148. (WebCore::SVGInlineFlowBox::paint):
  89149. * rendering/SVGInlineTextBox.cpp:
  89150. (WebCore::SVGInlineTextBox::selectionRectForTextChunkPart): Refactored from selectionRect(), to share code between selectionRect/computeTextMatchMarkerRect.
  89151. (WebCore::SVGInlineTextBox::selectionRect): Use new helper function selectionRectForTextChunkPart().
  89152. (WebCore::SVGInlineTextBox::paint): Ditto. Call new computeTextMatchMarkerRect() function.
  89153. (WebCore::SVGInlineTextBox::computeTextMatchMarkerRect): Implemented similar to HTML, but respecting SVGs concept of text chunk parts.
  89154. (WebCore::SVGInlineTextBox::paintText): In PaintPhaseSelection, only paint selected text, not anything before/after the selection start/end.
  89155. (WebCore::SVGInlineTextBox::calculateBoundaries): Early exit, if m_chunkTransformation is identity.
  89156. * rendering/SVGInlineTextBox.h: Added "bool paintSelectedTextOnly" to paintText() and add new computeTextMatchMarkerRect(RenderStyle*) function.
  89157. * rendering/SVGRootInlineBox.cpp:
  89158. (WebCore::SVGRootInlineBox::paint): Change paint phase assertion to include PaintPhaseSelection.
  89159. 2010-06-25 John Gregg <johnnyg@google.com>
  89160. Reviewed by Darin Fisher.
  89161. Notification should expose ltr/rtl as TextDirection, not String
  89162. https://bugs.webkit.org/show_bug.cgi?id=40871
  89163. No new tests; existing test covers this, just renaming a method.
  89164. * notifications/Notification.h:
  89165. (WebCore::Notification::direction):
  89166. 2010-06-25 Sheriff Bot <webkit.review.bot@gmail.com>
  89167. Unreviewed, rolling out r61842.
  89168. http://trac.webkit.org/changeset/61842
  89169. https://bugs.webkit.org/show_bug.cgi?id=41208
  89170. It broke Windows build (Requested by Ossy_ on #webkit).
  89171. * ForwardingHeaders/wtf/win/OwnPtrWin.h: Removed.
  89172. 2010-06-25 Patrick Gansterer <paroga@paroga.com>
  89173. Reviewed by Darin Adler.
  89174. Remove unneeded whitespace from svgtags.in.
  89175. https://bugs.webkit.org/show_bug.cgi?id=40912
  89176. make_names.pl throws an error at non-empty lines
  89177. when using cl.exe as preprocessor.
  89178. * svg/svgtags.in:
  89179. 2010-06-25 Nikolas Zimmermann <nzimmermann@rim.com>
  89180. Reviewed by Rob Buis.
  89181. Split up isSVGText() in isSVGText() / isSVGInlineText()
  89182. https://bugs.webkit.org/show_bug.cgi?id=41204
  89183. Introduce isSVGInlineText(), to provide a safe mechanism to differentiate between RenderSVGText / RenderSVGInlineText.
  89184. No change in functionality, thus no new tests.
  89185. * rendering/RenderBlockLineLayout.cpp:
  89186. (WebCore::shouldPreserveNewline): s/isSVGText/isSVGInlineText/
  89187. (WebCore::RenderBlock::findNextLineBreak): Ditto.
  89188. * rendering/RenderObject.h:
  89189. (WebCore::RenderObject::isSVGInlineText): Return false, by default.
  89190. * rendering/RenderSVGInlineText.h:
  89191. (WebCore::RenderSVGInlineText::isSVGInlineText): Return true here, don't return true anymore for isSVGText().
  89192. * rendering/RenderText.cpp:
  89193. (WebCore::RenderText::setTextInternal): s/isSVGText/isSVGInlineText/
  89194. * rendering/RenderTreeAsText.cpp: Remove hack, now that we can properly differentiate between RenderSVGText / RenderSVGInlineText.
  89195. (WebCore::write):
  89196. 2010-06-25 Kwang Yul Seo <skyul@company100.net>
  89197. Reviewed by Adam Barth.
  89198. Change OwnPtrCommon to include platform-specific headers
  89199. https://bugs.webkit.org/show_bug.cgi?id=40279
  89200. Adding new type to OwnPtrCommon needlessly causes all ports to do full rebuilds.
  89201. Change OwnPtrCommon to include platform-specific headers to avoid all ports rebuilds.
  89202. * ForwardingHeaders/wtf/win: Added.
  89203. * ForwardingHeaders/wtf/win/OwnPtrWin.h: Added.
  89204. 2010-06-25 Patrick Gansterer <paroga@paroga.com>
  89205. Reviewed by Adam Barth.
  89206. Implement TextCodecs for WinCE port.
  89207. https://bugs.webkit.org/show_bug.cgi?id=32169
  89208. Originally written by Yong Li <yong.li@torchmobile.com>
  89209. * platform/graphics/FontCache.h:
  89210. * platform/graphics/wince/FontCacheWince.cpp:
  89211. (WebCore::FontCache::getMultiLanguageInterface):
  89212. * platform/text/wince/TextCodecWinCE.cpp: Added.
  89213. (WebCore::codePageCharsets):
  89214. (WebCore::knownCharsets):
  89215. (WebCore::supportedCharsets):
  89216. (WebCore::languageManager):
  89217. (WebCore::addCharset):
  89218. (WebCore::LanguageManager::LanguageManager):
  89219. (WebCore::getCodePage):
  89220. (WebCore::newTextCodecWinCE):
  89221. (WebCore::TextCodecWinCE::TextCodecWinCE):
  89222. (WebCore::TextCodecWinCE::~TextCodecWinCE):
  89223. (WebCore::TextCodecWinCE::registerBaseEncodingNames):
  89224. (WebCore::TextCodecWinCE::registerBaseCodecs):
  89225. (WebCore::TextCodecWinCE::registerExtendedEncodingNames):
  89226. (WebCore::TextCodecWinCE::registerExtendedCodecs):
  89227. (WebCore::getCodePageFlags):
  89228. (WebCore::findFirstNonAsciiCharacter):
  89229. (WebCore::decode):
  89230. (WebCore::TextCodecWinCE::decode):
  89231. (WebCore::TextCodecWinCE::encode):
  89232. (WebCore::TextCodecWinCE::enumerateSupportedEncodings):
  89233. * platform/text/wince/TextCodecWinCE.h: Added.
  89234. 2010-06-24 Rob Buis <rwlbuis@gmail.com>
  89235. Reviewed by Dirk Schulze.
  89236. Bug 40880 - SVG properties fill and stroke do not accept system colors
  89237. https://bugs.webkit.org/show_bug.cgi?id=40880
  89238. Handle css system colors in fill and stroke properties.
  89239. Test: svg/css/rect-system-color.xhtml
  89240. * css/CSSParser.cpp: Remove comment and unneeded if condition
  89241. (WebCore::CSSParser::parseValue):
  89242. * css/SVGCSSParser.cpp: Allow css system colors
  89243. (WebCore::CSSParser::parseSVGValue):
  89244. 2010-06-24 Eric Seidel <eric@webkit.org>
  89245. Reviewed by Adam Barth.
  89246. Make DocumentParser API private on subclasses to catch misuse bugs
  89247. https://bugs.webkit.org/show_bug.cgi?id=41186
  89248. This already found one bug:
  89249. https://bugs.webkit.org/show_bug.cgi?id=41187
  89250. Added a new HTMLDocumentParaser::parseDocumentFragment so that
  89251. DocumentFragment.cpp does not need to use private methods.
  89252. * dom/DocumentFragment.cpp:
  89253. (WebCore::DocumentFragment::parseHTML):
  89254. * dom/XMLDocumentParser.h:
  89255. (WebCore::XMLDocumentParser::setIsXHTMLDocument):
  89256. (WebCore::XMLDocumentParser::isXHTMLDocument):
  89257. (WebCore::XMLDocumentParser::setIsXHTMLMPDocument):
  89258. (WebCore::XMLDocumentParser::isXHTMLMPDocument):
  89259. * html/HTMLDocumentParser.cpp:
  89260. (WebCore::HTMLDocumentParser::parseDocumentFragment):
  89261. * html/HTMLDocumentParser.h:
  89262. * html/LegacyHTMLDocumentParser.cpp:
  89263. (WebCore::LegacyHTMLDocumentParser::parseDocumentFragment):
  89264. * html/LegacyHTMLDocumentParser.h:
  89265. (WebCore::LegacyHTMLDocumentParser::forceSynchronous):
  89266. (WebCore::LegacyHTMLDocumentParser::processingContentWrittenByScript):
  89267. * html/LegacyHTMLTreeBuilder.cpp:
  89268. (WebCore::LegacyHTMLTreeBuilder::reportErrorToConsole):
  89269. * loader/DocumentWriter.cpp:
  89270. (WebCore::DocumentWriter::replaceDocument):
  89271. * loader/TextDocument.cpp:
  89272. 2010-05-28 Philippe Normand <pnormand@igalia.com>
  89273. Reviewed by Gustavo Noronha.
  89274. [GStreamer] multiple video sink support
  89275. https://bugs.webkit.org/show_bug.cgi?id=39472
  89276. Playbin2 video-sink is now a bin containing a tee element capable
  89277. of dispatching the buffers to multiple video sinks. By default
  89278. only our webkit video sink is used. This will allow
  89279. GStreamerGWorld to add support for autovideosink in the future.
  89280. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  89281. (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
  89282. (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
  89283. (WebCore::MediaPlayerPrivateGStreamer::naturalSize):
  89284. (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
  89285. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
  89286. 2010-06-24 Adam Barth <abarth@webkit.org>
  89287. Reviewed by Eric Seidel.
  89288. Sketch out AfterHeadMode for tree builder
  89289. https://bugs.webkit.org/show_bug.cgi?id=41191
  89290. This mode is fairly similar to the others. I needed to change some of
  89291. the types around w.r.t. Nodes/Elements.
  89292. * html/HTMLTreeBuilder.cpp:
  89293. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  89294. (WebCore::HTMLTreeBuilder::processToken):
  89295. (WebCore::HTMLTreeBuilder::insertElement):
  89296. * html/HTMLTreeBuilder.h:
  89297. (WebCore::HTMLTreeBuilder::ElementStack::push):
  89298. (WebCore::HTMLTreeBuilder::ElementStack::remove):
  89299. 2010-06-24 Adam Barth <abarth@webkit.org>
  89300. Reviewed by Eric Seidel.
  89301. Sketch out InHeadNoscriptMode for tree builder
  89302. https://bugs.webkit.org/show_bug.cgi?id=41189
  89303. Lots of notImplemented() calls in this state. I need to figure how to
  89304. delegate handling of a token from one state to another.
  89305. * html/HTMLTreeBuilder.cpp:
  89306. (WebCore::HTMLTreeBuilder::processToken):
  89307. 2010-06-24 Adam Barth <abarth@webkit.org>
  89308. Reviewed by Eric Seidel.
  89309. Sketch out InHeadMode for tree builder
  89310. https://bugs.webkit.org/show_bug.cgi?id=41184
  89311. This state is relatively straightforward. We introduce the stack of
  89312. open elements to track that notion in the spec. The old tree builder
  89313. has a nice data structure for that, which we'll probably steal, but I'd
  89314. like to see what the full API is first.
  89315. * html/HTMLTreeBuilder.cpp:
  89316. (WebCore::HTMLTreeBuilder::processToken):
  89317. (WebCore::HTMLTreeBuilder::insertCharacter):
  89318. (WebCore::HTMLTreeBuilder::insertGenericRCDATAElement):
  89319. (WebCore::HTMLTreeBuilder::insertGenericRawTextElement):
  89320. (WebCore::HTMLTreeBuilder::insertScriptElement):
  89321. * html/HTMLTreeBuilder.h:
  89322. (WebCore::HTMLTreeBuilder::ElementStack::pop):
  89323. (WebCore::HTMLTreeBuilder::ElementStack::top):
  89324. 2010-06-24 Adam Barth <abarth@webkit.org>
  89325. Reviewed by Eric Seidel.
  89326. Sketch out BeforeHeadMode tree builder state
  89327. https://bugs.webkit.org/show_bug.cgi?id=41183
  89328. This makes procesToken recursive, which might not be the best idea.
  89329. Also, we can now make fake AtomicHTMLTokens for use by the algorithm.
  89330. * html/HTMLToken.h:
  89331. (WebCore::AtomicHTMLToken::AtomicHTMLToken):
  89332. * html/HTMLTreeBuilder.cpp:
  89333. (WebCore::HTMLTreeBuilder::processToken):
  89334. (WebCore::HTMLTreeBuilder::insertElement):
  89335. * html/HTMLTreeBuilder.h:
  89336. 2010-06-22 Antonio Gomes <tonikitoo@webkit.org>
  89337. Reviewed by David Hyatt.
  89338. Add a NodeList-derivated wrapper class for a ListHashSet.
  89339. https://bugs.webkit.org/show_bug.cgi?id=41081
  89340. StaticHashSetList will work as a wrapper to ListHashSet objects that are
  89341. aimed to be exposed to the DOM.
  89342. As a use case, the rect based HitTest (bug 40197) will store the retrieved nodes
  89343. in a ListHashSet. It is going to be exposed to the DOM through are nodesFromRect
  89344. of Document returning a NodeList (i.e. StatisHashSetList) wrapping a ListHashSet.
  89345. No new tests.
  89346. 2010-06-24 Cris Neckar <cdn@chromium.org>
  89347. Reviewed by Darin Fisher.
  89348. [Chromium] Out of bounds write in WebCore::PNGImageDecoder::rowAvailable
  89349. https://bugs.webkit.org/show_bug.cgi?id=40798
  89350. Catches error in row callback for libPNG when extra rows are returned.
  89351. Test: fast/images/png-extra-row-crash.html
  89352. * platform/image-decoders/png/PNGImageDecoder.cpp:
  89353. (WebCore::PNGImageDecoder::rowAvailable):
  89354. 2010-06-24 Eric Seidel <eric@webkit.org>
  89355. Reviewed by Adam Barth.
  89356. Clean up and document DocumentWriter::replaceDocument code path
  89357. https://bugs.webkit.org/show_bug.cgi?id=41182
  89358. No functional changes, thus no tests.
  89359. * loader/DocumentWriter.cpp:
  89360. (WebCore::DocumentWriter::replaceDocument):
  89361. - Remove comment which could be misleading.
  89362. 2010-06-23 Dumitru Daniliuc <dumi@chromium.org>
  89363. Reviewed by Adam Barth.
  89364. Implementing DatabaseSync::openDatabaseSync().
  89365. https://bugs.webkit.org/show_bug.cgi?id=40607
  89366. Moved some common code from Database to AbstractDatabase. Made
  89367. performOpenAndVerify() virtual, since DatabaseSync doesn't need to
  89368. interact with DatabaseThread. Removed the m_creationCallback
  89369. field, since it's only needed in the openDatabase{Sync} methods.
  89370. * storage/AbstractDatabase.cpp:
  89371. (WebCore::retrieveTextResultFromDatabase):
  89372. (WebCore::setTextValueInDatabase):
  89373. (WebCore::guidMutex):
  89374. (WebCore::guidToVersionMap):
  89375. (WebCore::updateGuidVersionMap):
  89376. (WebCore::guidToDatabaseMap):
  89377. (WebCore::guidForOriginAndName):
  89378. (WebCore::AbstractDatabase::databaseInfoTableName):
  89379. (WebCore::AbstractDatabase::AbstractDatabase):
  89380. (WebCore::AbstractDatabase::closeDatabase):
  89381. (WebCore::AbstractDatabase::version):
  89382. (WebCore::AbstractDatabase::performOpenAndVerify):
  89383. (WebCore::AbstractDatabase::scriptExecutionContext):
  89384. (WebCore::AbstractDatabase::securityOrigin):
  89385. (WebCore::AbstractDatabase::stringIdentifier):
  89386. (WebCore::AbstractDatabase::displayName):
  89387. (WebCore::AbstractDatabase::estimatedSize):
  89388. (WebCore::AbstractDatabase::fileName):
  89389. (WebCore::AbstractDatabase::databaseVersionKey):
  89390. (WebCore::AbstractDatabase::getVersionFromDatabase):
  89391. (WebCore::AbstractDatabase::setVersionInDatabase):
  89392. (WebCore::AbstractDatabase::versionMatchesExpected):
  89393. (WebCore::AbstractDatabase::setExpectedVersion):
  89394. (WebCore::AbstractDatabase::disableAuthorizer):
  89395. (WebCore::AbstractDatabase::enableAuthorizer):
  89396. (WebCore::AbstractDatabase::setAuthorizerReadOnly):
  89397. (WebCore::AbstractDatabase::lastActionChangedDatabase):
  89398. (WebCore::AbstractDatabase::lastActionWasInsert):
  89399. (WebCore::AbstractDatabase::resetDeletes):
  89400. (WebCore::AbstractDatabase::hadDeletes):
  89401. (WebCore::AbstractDatabase::resetAuthorizer):
  89402. * storage/AbstractDatabase.h:
  89403. (WebCore::AbstractDatabase::opened):
  89404. (WebCore::AbstractDatabase::isNew):
  89405. (WebCore::AbstractDatabase::databaseDebugName):
  89406. * storage/Database.cpp:
  89407. (WebCore::DatabaseCreationCallbackTask::create):
  89408. (WebCore::DatabaseCreationCallbackTask::performTask):
  89409. (WebCore::DatabaseCreationCallbackTask::DatabaseCreationCallbackTask):
  89410. (WebCore::Database::openDatabase):
  89411. (WebCore::Database::Database):
  89412. (WebCore::Database::version):
  89413. (WebCore::Database::openAndVerifyVersion):
  89414. (WebCore::Database::close):
  89415. (WebCore::Database::stop):
  89416. (WebCore::Database::performOpenAndVerify):
  89417. * storage/Database.h:
  89418. (WebCore::Database::sqliteDatabase):
  89419. * storage/DatabaseAuthorizer.cpp:
  89420. (WebCore::DatabaseAuthorizer::create):
  89421. (WebCore::DatabaseAuthorizer::DatabaseAuthorizer):
  89422. (WebCore::DatabaseAuthorizer::denyBasedOnTableName):
  89423. * storage/DatabaseAuthorizer.h:
  89424. * storage/DatabaseSync.cpp:
  89425. (WebCore::DatabaseSync::openDatabaseSync):
  89426. (WebCore::DatabaseSync::DatabaseSync):
  89427. (WebCore::DatabaseSync::changeVersion):
  89428. (WebCore::DatabaseSync::transaction):
  89429. (WebCore::DatabaseSync::markAsDeletedAndClose):
  89430. (WebCore::CloseSyncDatabaseOnContextThreadTask::create):
  89431. (WebCore::CloseSyncDatabaseOnContextThreadTask::performTask):
  89432. (WebCore::CloseSyncDatabaseOnContextThreadTask::CloseSyncDatabaseOnContextThreadTask):
  89433. (WebCore::DatabaseSync::closeImmediately):
  89434. * storage/DatabaseSync.h:
  89435. * storage/DatabaseTask.cpp:
  89436. (WebCore::DatabaseOpenTask::DatabaseOpenTask):
  89437. (WebCore::DatabaseOpenTask::doPerformTask):
  89438. * storage/DatabaseTask.h:
  89439. (WebCore::DatabaseOpenTask::create):
  89440. 2010-06-24 Steve Falkenburg <sfalken@apple.com>
  89441. Windows build fix.
  89442. * platform/network/cf/AuthenticationCF.h:
  89443. 2010-06-24 Martin Robinson <mrobinson@igalia.com>
  89444. Unreviewed. Build fix.
  89445. Fix the build after r61798.
  89446. * platform/gtk/PasteboardHelper.cpp:
  89447. (WebCore::PasteboardHelper::getClipboardContents):
  89448. 2010-06-24 Alexey Proskuryakov <ap@apple.com>
  89449. Reviewed by Brady Eidson.
  89450. https://bugs.webkit.org/show_bug.cgi?id=41178
  89451. Timed refresh in subframes isn't stopped when going into b/f cache
  89452. Test: fast/history/timed-refresh-in-cached-frame.html
  89453. * history/CachedFrame.cpp: (WebCore::CachedFrame::CachedFrame): Top frame's stopLoading()
  89454. won't help cached subframes; stop loading from here.
  89455. * loader/FrameLoader.cpp:
  89456. (WebCore::FrameLoader::stopLoading): Don't stop loading in child frames. This didn't work
  89457. for cached frames due to frame tree having been already desonstructed, and it's not necessary
  89458. in non-cached case because stopLoading() will be called for subframes via
  89459. FrameLoader::detachFromParent() and closeURL().
  89460. (WebCore::FrameLoader::pageHidden): This was a second code path that dispatched pagehide
  89461. event - it's no longer needed, because everything goes through FrameLoader::stopLoading().
  89462. (WebCore::FrameLoader::commitProvisionalLoad): Don't call pageHidden(), the code for adding
  89463. frame to b/f cache will do everything.
  89464. * loader/FrameLoader.h: Removed pageHidden().
  89465. 2010-06-24 Eric Seidel <eric@webkit.org>
  89466. Unreviewed. Fix the build. I am a bad man.
  89467. * loader/DocumentWriter.cpp:
  89468. (WebCore::DocumentWriter::replaceDocument):
  89469. 2010-06-24 Martin Robinson <mrobinson@igalia.com>
  89470. Reviewed by Xan Lopez.
  89471. Build fix for building against GTK+ 3.x.
  89472. No new tests as functionality has not changed.
  89473. * platform/gtk/GtkVersioning.h:
  89474. * platform/gtk/PasteboardHelper.cpp:
  89475. (WebCore::PasteboardHelper::getClipboardContents):
  89476. (WebCore::PasteboardHelper::fillSelectionData):
  89477. 2010-06-24 Eric Seidel <eric@webkit.org>
  89478. Reviewed by Adam Barth.
  89479. Clean up and document DocumentWriter::replaceDocument code path
  89480. https://bugs.webkit.org/show_bug.cgi?id=41182
  89481. No functional change, thus no test.
  89482. * loader/DocumentWriter.cpp:
  89483. (WebCore::DocumentWriter::replaceDocument):
  89484. * loader/DocumentWriter.h:
  89485. 2010-06-24 Jer Noble <jer.noble@apple.com>
  89486. Reviewed by Eric Carlson.
  89487. Full-screened content doesn't keep the display on: Safari not grabbing a power assertion?
  89488. https://bugs.webkit.org/show_bug.cgi?id=40939
  89489. rdar://problem/7996172
  89490. Export -[MediaElement playbackRate];
  89491. * WebCore.Video.exp:
  89492. 2010-06-21 Evan Martin <evan@chromium.org>
  89493. Reviewed by Adam Barth.
  89494. [chromium] overlapping characters in complex text
  89495. https://bugs.webkit.org/show_bug.cgi?id=40966
  89496. We need to clear all the buffers we hand to Harfbuzz before we use them.
  89497. While I'm here, refactor the code slightly to make its behavior more
  89498. clear and correct (previously, we would repeatedly double our buffer
  89499. size when we could have just sized it correctly on the second try).
  89500. * platform/graphics/chromium/FontLinux.cpp:
  89501. (WebCore::TextRunWalker::TextRunWalker):
  89502. (WebCore::TextRunWalker::nextScriptRun):
  89503. (WebCore::TextRunWalker::createGlyphArrays):
  89504. (WebCore::TextRunWalker::shapeGlyphs):
  89505. 2010-06-24 Adele Peterson <adele@apple.com>
  89506. Reviewed by Sam Weinig.
  89507. Updated fix for <rdar://problem/8093680> "Paste and Match Style" should fire paste events
  89508. https://bugs.webkit.org/show_bug.cgi?id=41085
  89509. Covered by existing tests.
  89510. * editing/EditorCommand.cpp:
  89511. (WebCore::executePasteAsPlainText): Added.
  89512. (WebCore::createCommandMap): Added pasteAsPlainText command.
  89513. 2010-06-24 Adam Barth <abarth@webkit.org>
  89514. Reviewed by Eric Seidel.
  89515. Sketch out BeforeHTMLMode state
  89516. https://bugs.webkit.org/show_bug.cgi?id=41133
  89517. In this patch, we switch the TreeBuidler over to using AtomicHTMLTokens
  89518. and sketch out another state. These states don't actually do anything
  89519. yet, I'm still just getting the structure of the spec into the code so
  89520. we can implement the details incrementally.
  89521. * html/HTMLTreeBuilder.cpp:
  89522. (WebCore::HTMLTreeBuilder::constructTreeFromToken):
  89523. (WebCore::HTMLTreeBuilder::processToken):
  89524. (WebCore::HTMLTreeBuilder::insertDoctype):
  89525. (WebCore::HTMLTreeBuilder::insertComment):
  89526. * html/HTMLTreeBuilder.h:
  89527. (WebCore::HTMLTreeBuilder::parseError):
  89528. 2010-06-24 Adam Barth <abarth@webkit.org>
  89529. Reviewed by Eric Seidel.
  89530. Add AtomicHTMLToken
  89531. https://bugs.webkit.org/show_bug.cgi?id=41131
  89532. We need an atomized version of the token for use in the tree builder.
  89533. Eventually, we should make the existing HTMLToken an internal detail of
  89534. the HTMLTokenizer. This new AtomicHTMLToken should be also be more
  89535. easily cached between the preload scanner and the tree builder.
  89536. * html/HTMLToken.h:
  89537. (WebCore::AtomicHTMLToken::AtomicHTMLToken):
  89538. (WebCore::AtomicHTMLToken::type):
  89539. (WebCore::AtomicHTMLToken::name):
  89540. (WebCore::AtomicHTMLToken::selfClosing):
  89541. (WebCore::AtomicHTMLToken::attributes):
  89542. (WebCore::AtomicHTMLToken::characters):
  89543. (WebCore::AtomicHTMLToken::comment):
  89544. (WebCore::AtomicHTMLToken::publicIdentifier):
  89545. (WebCore::AtomicHTMLToken::systemIdentifier):
  89546. (WebCore::AtomicHTMLToken::forceQuirks):
  89547. * html/HTMLTreeBuilder.cpp:
  89548. (WebCore::convertToOldStyle):
  89549. (WebCore::HTMLTreeBuilder::passTokenToLegacyParser):
  89550. 2010-06-24 Eric Seidel <eric@webkit.org>
  89551. Reviewed by Adam Barth.
  89552. Add RawDataDocumentParser to get rid of a bunch of copy/paste code in DocumentParser subclasses
  89553. https://bugs.webkit.org/show_bug.cgi?id=41136
  89554. I think this is likely far from the final design,
  89555. however this is almost entirely minus lines which is a
  89556. good thing.
  89557. The original authors of these DocumentParser subclasses
  89558. seem to have just copied the files whole, as they all
  89559. had the same includes, many of which were unnecessary for
  89560. some of the files.
  89561. I think eventually the FrameLoader will call a virtual
  89562. DocumentParser::appendData which will in turn decode
  89563. and call another write/appendData call. In the case
  89564. of these RawDataDocumentParsers, they will just override
  89565. the low-level appendData call instead of needing
  89566. DocumentWriter to have a special if based on
  89567. DocumentParser::wantsRawData.
  89568. No functional change, thus no tests.
  89569. * GNUmakefile.am:
  89570. * WebCore.gypi:
  89571. * WebCore.pro:
  89572. * WebCore.xcodeproj/project.pbxproj:
  89573. * dom/DocumentParser.h:
  89574. (WebCore::DocumentParser::writeRawData):
  89575. * loader/ImageDocument.cpp:
  89576. (WebCore::ImageDocumentParser::ImageDocumentParser):
  89577. (WebCore::ImageDocumentParser::finish):
  89578. * loader/MediaDocument.cpp:
  89579. (WebCore::MediaDocumentParser::MediaDocumentParser):
  89580. (WebCore::MediaDocumentParser::writeRawData):
  89581. * loader/PluginDocument.cpp:
  89582. (WebCore::PluginDocumentParser::PluginDocumentParser):
  89583. * loader/SinkDocument.cpp:
  89584. (WebCore::SinkDocument::createParser):
  89585. 2010-06-23 Peter Kasting <pkasting@google.com>
  89586. Reviewed by Adam Barth.
  89587. REGRESSION (r61619): Memory corruption in open-source ICO decoder
  89588. https://bugs.webkit.org/show_bug.cgi?id=41107
  89589. * platform/image-decoders/bmp/BMPImageReader.cpp:
  89590. (WebCore::BMPImageReader::processInfoHeader): Fix memory corruption.
  89591. * platform/image-decoders/ico/ICOImageDecoder.cpp:
  89592. (WebCore::ICOImageDecoder::processDirectoryEntries): Handle sizing failure correctly (though failure should be impossible).
  89593. 2010-06-24 Sheriff Bot <webkit.review.bot@gmail.com>
  89594. Unreviewed, rolling out r61783.
  89595. http://trac.webkit.org/changeset/61783
  89596. https://bugs.webkit.org/show_bug.cgi?id=41179
  89597. Caused a couple of test failures (Requested by japhet on
  89598. #webkit).
  89599. * dom/DOMImplementation.cpp:
  89600. (WebCore::DOMImplementation::createDocument):
  89601. (WebCore::DOMImplementation::createHTMLDocument):
  89602. * dom/DOMImplementation.h:
  89603. * dom/Document.cpp:
  89604. (WebCore::Document::Document):
  89605. (WebCore::Document::initSecurityContext):
  89606. * dom/Document.h:
  89607. (WebCore::Document::create):
  89608. (WebCore::Document::createXHTML):
  89609. * html/HTMLDocument.cpp:
  89610. (WebCore::HTMLDocument::HTMLDocument):
  89611. * html/HTMLDocument.h:
  89612. (WebCore::HTMLDocument::create):
  89613. * html/HTMLViewSourceDocument.cpp:
  89614. (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument):
  89615. * html/HTMLViewSourceDocument.h:
  89616. (WebCore::HTMLViewSourceDocument::create):
  89617. * loader/CachedFont.cpp:
  89618. (WebCore::CachedFont::ensureSVGFontData):
  89619. * loader/DocumentWriter.cpp:
  89620. (WebCore::DocumentWriter::createDocument):
  89621. (WebCore::DocumentWriter::begin):
  89622. * loader/DocumentWriter.h:
  89623. * loader/FTPDirectoryDocument.cpp:
  89624. (WebCore::FTPDirectoryDocument::FTPDirectoryDocument):
  89625. * loader/FTPDirectoryDocument.h:
  89626. (WebCore::FTPDirectoryDocument::create):
  89627. * loader/ImageDocument.cpp:
  89628. (WebCore::ImageDocument::ImageDocument):
  89629. * loader/ImageDocument.h:
  89630. (WebCore::ImageDocument::create):
  89631. * loader/MediaDocument.cpp:
  89632. (WebCore::MediaDocument::MediaDocument):
  89633. * loader/MediaDocument.h:
  89634. (WebCore::MediaDocument::create):
  89635. * loader/PlaceholderDocument.h:
  89636. (WebCore::PlaceholderDocument::create):
  89637. (WebCore::PlaceholderDocument::PlaceholderDocument):
  89638. * loader/PluginDocument.cpp:
  89639. (WebCore::PluginDocument::PluginDocument):
  89640. * loader/PluginDocument.h:
  89641. (WebCore::PluginDocument::create):
  89642. * loader/SinkDocument.cpp:
  89643. (WebCore::SinkDocument::SinkDocument):
  89644. * loader/SinkDocument.h:
  89645. (WebCore::SinkDocument::create):
  89646. * loader/TextDocument.cpp:
  89647. (WebCore::TextDocument::TextDocument):
  89648. * loader/TextDocument.h:
  89649. (WebCore::TextDocument::create):
  89650. * svg/SVGDocument.cpp:
  89651. (WebCore::SVGDocument::SVGDocument):
  89652. * svg/SVGDocument.h:
  89653. (WebCore::SVGDocument::create):
  89654. * xml/DOMParser.cpp:
  89655. (WebCore::DOMParser::parseFromString):
  89656. * xml/XMLHttpRequest.cpp:
  89657. (WebCore::XMLHttpRequest::responseXML):
  89658. * xml/XSLTProcessor.cpp:
  89659. (WebCore::XSLTProcessor::createDocumentFromSource):
  89660. 2010-06-24 Martin Robinson <mrobinson@igalia.com>
  89661. Reviewed by Xan Lopez.
  89662. [GTK] Small code cleanup in RenderThemeGtk
  89663. https://bugs.webkit.org/show_bug.cgi?id=40989
  89664. Reduce the amount of duplicated code slightly and prepare this section for
  89665. future improvements, such as sharing the clipping rectangle calculation with
  89666. the slow path.
  89667. No new tests as functionality has not changed.
  89668. * platform/gtk/RenderThemeGtk.cpp:
  89669. (WebCore::paintMozillaGtkWidget): Small code cleanup.
  89670. 2010-06-24 Nate Chapin <japhet@chromium.org>
  89671. Reviewed by Adam Barth.
  89672. Take a KURL parameter in Document's constructor.
  89673. This will remove the one case where Document::url()
  89674. and FrameLoader::url() are not equal, allowing us to
  89675. remove FrameLoader::url().
  89676. https://bugs.webkit.org/show_bug.cgi?id=41166
  89677. Refactor only, no new tests.
  89678. * dom/DOMImplementation.cpp:
  89679. (WebCore::DOMImplementation::createDocument): Take a KURL and pass it through to Document.
  89680. (WebCore::DOMImplementation::createHTMLDocument):
  89681. * dom/DOMImplementation.h:
  89682. * dom/Document.cpp:
  89683. (WebCore::Document::Document): Call setURL() for non-empty KURL input parameters.
  89684. (WebCore::Document::initSecurityContext): m_url is now initialized, so use it instead
  89685. of m_frame->loader()->url() for initializing the SecurityOrigin.
  89686. * dom/Document.h:
  89687. (WebCore::Document::create):
  89688. (WebCore::Document::createXHTML):
  89689. * html/HTMLDocument.cpp:
  89690. * html/HTMLDocument.h: Add KURL parameter to create() and constructor.
  89691. * html/HTMLViewSourceDocument.cpp:
  89692. * html/HTMLViewSourceDocument.h: Add KURL parameter to create() and constructor.
  89693. * loader/CachedFont.cpp:
  89694. (WebCore::CachedFont::ensureSVGFontData):
  89695. * loader/DocumentWriter.cpp:
  89696. (WebCore::DocumentWriter::createDocument): Take a KURL and pass it through to Document.
  89697. (WebCore::DocumentWriter::begin): Pass existing url parameter to constructors, and remove
  89698. redundant Document::setURL() call.
  89699. * loader/DocumentWriter.h:
  89700. * loader/FTPDirectoryDocument.cpp:
  89701. * loader/FTPDirectoryDocument.h: Add KURL parameter to create() and constructor.
  89702. * loader/ImageDocument.cpp:
  89703. * loader/ImageDocument.h: Add KURL parameter to create() and constructor.
  89704. * loader/MediaDocument.cpp:
  89705. * loader/MediaDocument.h: Add KURL parameter to create() and constructor.
  89706. * loader/PlaceholderDocument.h: Add KURL parameter to create() and constructor.
  89707. * loader/PluginDocument.cpp:
  89708. * loader/PluginDocument.h: Add KURL parameter to create() and constructor.
  89709. * loader/SinkDocument.cpp:
  89710. * loader/SinkDocument.h: Add KURL parameter to create() and constructor.
  89711. * loader/TextDocument.cpp:
  89712. * loader/TextDocument.h: Add KURL parameter to create() and constructor.
  89713. * svg/SVGDocument.cpp:
  89714. * svg/SVGDocument.h: Add KURL parameter to create() and constructor.
  89715. * xml/DOMParser.cpp:
  89716. (WebCore::DOMParser::parseFromString):
  89717. * xml/XMLHttpRequest.cpp:
  89718. (WebCore::XMLHttpRequest::responseXML):
  89719. * xml/XSLTProcessor.cpp:
  89720. (WebCore::XSLTProcessor::createDocumentFromSource):
  89721. 2010-06-24 Brady Eidson <beidson@apple.com>
  89722. Reviewed by Sam Weinig.
  89723. <rdar://problem/8044645> and https://bugs.webkit.org/show_bug.cgi?id=41082
  89724. Webarchives will null main resource cause a repro crash.
  89725. Test: webarchive/loading/mainresource-null-mimetype-crash.html
  89726. * loader/archive/cf/LegacyWebArchive.cpp:
  89727. (WebCore::LegacyWebArchive::createResource): Fail to create the archive resource if the main resource's
  89728. mime type is null.
  89729. 2010-06-24 Damian Kaleta <dkaleta@apple.com>
  89730. Reviewed by Sam Weinig.
  89731. Provide a way to obtain the rendered rectangle for box elements.
  89732. * WebCore.base.exp: Export the symbol so we can see it in WebKit.
  89733. * dom/Node.cpp:
  89734. (WebCore::Node::renderRect): Added new ethod that will return a rendered rectangle for box elements.
  89735. * dom/Node.h: Ditto.
  89736. 2010-06-24 Vangelis Kokkevis <vangelis@chromium.org>
  89737. Reviewed by Darin Fisher.
  89738. [Chromium] Create specialized classes for Transform,
  89739. Image and WebGL layers to replace the rather monolithic LayerChromium class.
  89740. Layers can now own the GL texture they use for backing store and a different
  89741. shading program can be used by the compositor for each layer type. WebGL layers
  89742. are not yet hooked up to GraphicsContext3D.
  89743. https://bugs.webkit.org/show_bug.cgi?id=41106
  89744. * WebCore.gypi:
  89745. * platform/graphics/chromium/GraphicsLayerChromium.cpp:
  89746. (WebCore::GraphicsLayerChromium::GraphicsLayerChromium):
  89747. (WebCore::GraphicsLayerChromium::setContentsToImage):
  89748. (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
  89749. * platform/graphics/chromium/GraphicsLayerChromium.h:
  89750. (WebCore::GraphicsLayerChromium::):
  89751. * platform/graphics/chromium/ImageLayerChromium.cpp: Added.
  89752. (WebCore::ImageLayerChromium::create):
  89753. (WebCore::ImageLayerChromium::ImageLayerChromium):
  89754. (WebCore::ImageLayerChromium::setContents):
  89755. (WebCore::ImageLayerChromium::updateTextureContents):
  89756. * platform/graphics/chromium/ImageLayerChromium.h: Added.
  89757. (WebCore::ImageLayerChromium::drawsContent):
  89758. * platform/graphics/chromium/LayerChromium.cpp:
  89759. (WebCore::LayerChromium::create):
  89760. (WebCore::LayerChromium::LayerChromium):
  89761. (WebCore::LayerChromium::updateTextureContents):
  89762. (WebCore::LayerChromium::updateTextureRect):
  89763. * platform/graphics/chromium/LayerChromium.h:
  89764. (WebCore::LayerChromium::drawsContent):
  89765. (WebCore::LayerChromium::ownsTexture):
  89766. (WebCore::LayerChromium::textureId):
  89767. (WebCore::LayerChromium::setShaderProgramId):
  89768. (WebCore::LayerChromium::shaderProgramId):
  89769. * platform/graphics/chromium/LayerRendererChromium.cpp:
  89770. (WebCore::LayerRendererChromium::createLayerShader):
  89771. (WebCore::ShaderProgram::ShaderProgram):
  89772. (WebCore::LayerRendererChromium::LayerRendererChromium):
  89773. (WebCore::LayerRendererChromium::~LayerRendererChromium):
  89774. (WebCore::LayerRendererChromium::useShaderProgram):
  89775. (WebCore::LayerRendererChromium::drawTexturedQuad):
  89776. (WebCore::LayerRendererChromium::drawLayers):
  89777. (WebCore::LayerRendererChromium::drawDebugBorder):
  89778. (WebCore::LayerRendererChromium::updateLayersRecursive):
  89779. (WebCore::LayerRendererChromium::drawLayer):
  89780. (WebCore::LayerRendererChromium::bindCommonAttribLocations):
  89781. (WebCore::LayerRendererChromium::initializeSharedGLObjects):
  89782. * platform/graphics/chromium/LayerRendererChromium.h:
  89783. (WebCore::LayerRendererChromium::):
  89784. * platform/graphics/chromium/TransformLayerChromium.cpp: Added.
  89785. (WebCore::TransformLayerChromium::create):
  89786. (WebCore::TransformLayerChromium::TransformLayerChromium):
  89787. * platform/graphics/chromium/TransformLayerChromium.h: Added.
  89788. (WebCore::TransformLayerChromium::drawsContent):
  89789. * platform/graphics/chromium/WebGLLayerChromium.cpp: Added.
  89790. (WebCore::WebGLLayerChromium::WebGLLayerChromium):
  89791. (WebCore::WebGLLayerChromium::textureId):
  89792. (WebCore::WebGLLayerChromium::updateTextureContents):
  89793. (WebCore::WebGLLayerChromium::setContext):
  89794. * platform/graphics/chromium/WebGLLayerChromium.h: Added.
  89795. (WebCore::WebGLLayerChromium::drawsContent):
  89796. (WebCore::WebGLLayerChromium::ownsTexture):
  89797. (WebCore::WebGLLayerChromium::shaderProgramId):
  89798. (WebCore::WebGLLayerChromium::setShaderProgramId):
  89799. 2010-06-24 Pavel Feldman <pfeldman@chromium.org>
  89800. Reviewed by Yury Semikhatsky.
  89801. Web Inspector: Inspector cleanup + better DevTools alignment with Inspector.
  89802. https://bugs.webkit.org/show_bug.cgi?id=41094
  89803. - Removed a bunch of unused methods from all over the place
  89804. - Added client callbacks for states surviving navigation
  89805. - Implemented more user-friendly stub for InspectorFrontendHost.platform
  89806. * inspector/InspectorClient.h:
  89807. (WebCore::InspectorClient::resourceTrackingWasEnabled):
  89808. (WebCore::InspectorClient::resourceTrackingWasDisabled):
  89809. (WebCore::InspectorClient::timelineProfilerWasStarted):
  89810. (WebCore::InspectorClient::timelineProfilerWasStopped):
  89811. * inspector/InspectorController.cpp:
  89812. (WebCore::InspectorController::enableResourceTracking):
  89813. (WebCore::InspectorController::disableResourceTracking):
  89814. (WebCore::InspectorController::ensureSettingsLoaded):
  89815. (WebCore::InspectorController::startTimelineProfiler):
  89816. (WebCore::InspectorController::stopTimelineProfiler):
  89817. * inspector/InspectorFrontend.cpp:
  89818. * inspector/InspectorFrontend.h:
  89819. * inspector/front-end/InspectorBackendStub.js:
  89820. * inspector/front-end/InspectorFrontendHostStub.js:
  89821. (.WebInspector.InspectorFrontendHostStub.prototype.platform):
  89822. 2010-06-23 Alexey Proskuryakov <ap@apple.com>
  89823. Reviewed by Darin Adler.
  89824. https://bugs.webkit.org/show_bug.cgi?id=41099
  89825. Assertion failure: !m_suspended when XMLHttpRequest fails
  89826. This was a general problem with load failure timer not being deferred.
  89827. Test: manual-tests/xhr-failure-behind-alert.html
  89828. * manual-tests/xhr-failure-behind-alert.html: Added.
  89829. * platform/network/ResourceHandle.cpp:
  89830. (WebCore::ResourceHandle::fireFailure): Added an empty case for NoFailure. Reset
  89831. m_scheduledFailureType to NoFailure when firing.
  89832. (WebCore::ResourceHandle::setDefersLoading): Stop failure timer when deferring, restart when
  89833. un-deferring loads.
  89834. * platform/network/ResourceHandle.h: Renamed m_failureType to m_scheduledFailureType to
  89835. make it clear that it is only set when a timer is scheduled.
  89836. * platform/network/ResourceHandleInternal.h:
  89837. (WebCore::ResourceHandleInternal::ResourceHandleInternal): Initialize m_scheduledFailureType
  89838. to NoFailure, so that we can look at it when un-deferring loads.
  89839. * platform/network/android/ResourceHandleAndroid.cpp:
  89840. (WebCore::ResourceHandle::platformSetDefersLoading):
  89841. * platform/network/cf/ResourceHandleCFNet.cpp:
  89842. (WebCore::ResourceHandle::platformSetDefersLoading):
  89843. * platform/network/curl/ResourceHandleCurl.cpp:
  89844. (WebCore::ResourceHandle::platformSetDefersLoading):
  89845. * platform/network/mac/ResourceHandleMac.mm:
  89846. (WebCore::ResourceHandle::platformSetDefersLoading):
  89847. * platform/network/qt/ResourceHandleQt.cpp:
  89848. (WebCore::ResourceHandle::platformSetDefersLoading):
  89849. * platform/network/soup/ResourceHandleSoup.cpp:
  89850. Platform specific parts of setDefersLoading() are now in a separate function.
  89851. 2010-06-24 Pavel Feldman <pfeldman@chromium.org>
  89852. Not reviewed: revert 61766.
  89853. * inspector/InspectorClient.h:
  89854. * inspector/InspectorController.cpp:
  89855. (WebCore::InspectorController::enableResourceTracking):
  89856. (WebCore::InspectorController::disableResourceTracking):
  89857. (WebCore::InspectorController::ensureSettingsLoaded):
  89858. (WebCore::InspectorController::startTimelineProfiler):
  89859. (WebCore::InspectorController::stopTimelineProfiler):
  89860. * inspector/InspectorFrontend.cpp:
  89861. (WebCore::InspectorFrontend::setAttachedWindow):
  89862. * inspector/InspectorFrontend.h:
  89863. * inspector/front-end/InspectorBackendStub.js:
  89864. (.WebInspector.InspectorBackendStub.prototype.setAttachedWindowHeight):
  89865. * inspector/front-end/InspectorFrontendHostStub.js:
  89866. (.WebInspector.InspectorFrontendHostStub.prototype.platform):
  89867. 2010-06-23 Pavel Feldman <pfeldman@chromium.org>
  89868. Reviewed by Yury Semikhatsky.
  89869. Web Inspector: Inspector cleanup + better DevTools alignment with Inspector.
  89870. https://bugs.webkit.org/show_bug.cgi?id=41094
  89871. - Removed a bunch of unused methods from all over the place
  89872. - Added client callbacks for states surviving navigation
  89873. - Implemented more user-friendly stub for InspectorFrontendHost.platform
  89874. * inspector/InspectorClient.h:
  89875. (WebCore::InspectorClient::resourceTrackingWasEnabled):
  89876. (WebCore::InspectorClient::resourceTrackingWasDisabled):
  89877. (WebCore::InspectorClient::timelineProfilerWasStarted):
  89878. (WebCore::InspectorClient::timelineProfilerWasStopped):
  89879. * inspector/InspectorController.cpp:
  89880. (WebCore::InspectorController::enableResourceTracking):
  89881. (WebCore::InspectorController::disableResourceTracking):
  89882. (WebCore::InspectorController::ensureSettingsLoaded):
  89883. (WebCore::InspectorController::startTimelineProfiler):
  89884. (WebCore::InspectorController::stopTimelineProfiler):
  89885. * inspector/InspectorFrontend.cpp:
  89886. * inspector/InspectorFrontend.h:
  89887. * inspector/front-end/InspectorBackendStub.js:
  89888. * inspector/front-end/InspectorFrontendHostStub.js:
  89889. (.WebInspector.InspectorFrontendHostStub.prototype.platform):
  89890. 2010-06-24 Nikolas Zimmermann <nzimmermann@rim.com>
  89891. Reviewed by Dirk Schulze.
  89892. Inspector & SVG Text have problems, kids of RenderSVGText are not properly placed.
  89893. https://bugs.webkit.org/show_bug.cgi?id=41143
  89894. Simplify code path taken for SVG text in InspectorController, take the code path currently only used for RenderInline,
  89895. that just calls absoluteQuads(), and displays the result. Refactored code that all SVG renderers (except RenderSVGRoot)
  89896. take this code path -> highlighting now works as expected.
  89897. Don't use absoluteClippedOverlowRect() in the various RenderSVG*::absoluteQuads() methods, as we're loosing floating-point precision.
  89898. Instead use localToAbsoluteQuad(strokeBoundingBox()) in order to highlight the unclipped, unfiltered, etc.. region that this renderer would paint.
  89899. No new tests, as this is only manual testable - at least I didn't find any Inspector-Highlighting tests, if someone knows please mail me.
  89900. * inspector/InspectorController.cpp:
  89901. (WebCore::drawHighlightForLineBoxesOrSVGRenderer):
  89902. (WebCore::InspectorController::drawNodeHighlight):
  89903. * rendering/RenderSVGBlock.cpp:
  89904. (WebCore::RenderSVGBlock::absoluteRects): ASSERT_NOT_REACHED() here. SVG should only be inspected through absoluteQuads().
  89905. * rendering/RenderSVGBlock.h: Add absoluteRects() in this base class for RenderForeignObject/RenderSVGText.
  89906. * rendering/RenderSVGHiddenContainer.cpp: Remove absoluteRects() - RenderSVGModelObject already has it.
  89907. * rendering/RenderSVGHiddenContainer.h: Ditto.
  89908. * rendering/RenderSVGImage.cpp:
  89909. (WebCore::RenderSVGImage::absoluteRects): ASSERT_NOT_REACHED() here.
  89910. (WebCore::RenderSVGImage::absoluteQuads): Don't use absoluteClippedOverlowRect() but localToAbsoluteQuad(repaintRectInLocalCoordinates()).
  89911. * rendering/RenderSVGImage.h:
  89912. (WebCore::RenderSVGImage::objectBoundingBox): Inlined
  89913. * rendering/RenderSVGInline.cpp:
  89914. (WebCore::RenderSVGInline::absoluteQuads): Take RenderSVGText translation into account, allows inspecting <tspan>/<tref> etc.
  89915. * rendering/RenderSVGInline.h:
  89916. * rendering/RenderSVGModelObject.cpp:
  89917. (WebCore::RenderSVGModelObject::absoluteRects): ASSERT_NOT_REACHED() here.
  89918. (WebCore::RenderSVGModelObject::absoluteQuads): Don't use absoluteClippedOverlowRect() but localToAbsoluteQuad(repaintRectInLocalCoordinates()).
  89919. * rendering/RenderSVGModelObject.h:
  89920. * rendering/RenderSVGRoot.cpp: Fix typo in license s/aint/along. Need to touch this file in order to let Mac build.
  89921. * rendering/RenderSVGText.cpp:
  89922. (WebCore::RenderSVGText::mapLocalToContainer): Remove hack, which moved the transformState by x()/y(). Not needed anymore.
  89923. (WebCore::RenderSVGText::absoluteQuads): Proper implementation, respecting x/y translation.
  89924. * rendering/RenderSVGText.h: Reorder some functions.
  89925. * rendering/SVGRenderSupport.h: Removed last virtual function strokeBoundingBox().
  89926. 2010-06-24 Kent Tamura <tkent@chromium.org>
  89927. Unreviewed. Build fix for Tiger.
  89928. * platform/mac/ThemeMac.mm:
  89929. (WebCore::setControlSize):
  89930. 2010-06-24 Kent Tamura <tkent@chromium.org>
  89931. Unreviewed. Build fix for Tiger.
  89932. * platform/mac/ThemeMac.mm:
  89933. (WebCore::setControlSize):
  89934. (WebCore::ThemeMac::inflateControlPaintRect):
  89935. 2010-06-24 Kent Tamura <tkent@chromium.org>
  89936. Unreviewed. Build fix for Chromium Mac.
  89937. * html/HTMLInputElement.cpp:
  89938. (WebCore::HTMLInputElement::isSpeechEnabled):
  89939. 2010-06-24 Simon Hausmann <simon.hausmann@nokia.com>
  89940. Unreviewed Symbian build fix.
  89941. The QML WebKit integration needs to be part of QtWebKit.sis
  89942. * WebCore.pro: Deploy qmlwebkitplugin.dll.
  89943. 2010-06-24 Satish Sampath <satish@chromium.org>
  89944. Reviewed by Kent Tamura.
  89945. Add a speech button to input elements, no rendering or actions yet.
  89946. Speech Input: Add a speech button to text input element (no rendering or actions yet)
  89947. https://bugs.webkit.org/show_bug.cgi?id=40925
  89948. No new tests. Will create a layout test in a subsequent patch.
  89949. * css/CSSPrimitiveValueMappings.h:
  89950. (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
  89951. * css/CSSSelector.cpp:
  89952. (WebCore::CSSSelector::pseudoId):
  89953. (WebCore::nameToPseudoTypeMap):
  89954. (WebCore::CSSSelector::extractPseudoType):
  89955. * css/CSSSelector.h:
  89956. (WebCore::CSSSelector::):
  89957. * css/CSSValueKeywords.in:
  89958. * css/html.css:
  89959. (input::-webkit-input-speech-button):
  89960. * dom/InputElement.h:
  89961. * html/HTMLAttributeNames.in:
  89962. * html/HTMLInputElement.cpp:
  89963. (WebCore::HTMLInputElement::isSpeechEnabled):
  89964. * html/HTMLInputElement.h:
  89965. * platform/ThemeTypes.h:
  89966. (WebCore::):
  89967. * rendering/RenderTextControlSingleLine.cpp:
  89968. (WebCore::RenderTextControlSingleLine::nodeAtPoint):
  89969. (WebCore::RenderTextControlSingleLine::forwardEvent):
  89970. (WebCore::RenderTextControlSingleLine::styleDidChange):
  89971. (WebCore::RenderTextControlSingleLine::hasControlClip):
  89972. (WebCore::RenderTextControlSingleLine::controlClipRect):
  89973. (WebCore::RenderTextControlSingleLine::textBlockWidth):
  89974. (WebCore::RenderTextControlSingleLine::preferredContentWidth):
  89975. (WebCore::RenderTextControlSingleLine::adjustControlHeightBasedOnLineHeight):
  89976. (WebCore::RenderTextControlSingleLine::createSubtreeIfNeeded):
  89977. (WebCore::RenderTextControlSingleLine::createSpeechButtonStyle):
  89978. (WebCore::RenderTextControlSingleLine::clientPaddingRight):
  89979. * rendering/RenderTextControlSingleLine.h:
  89980. * rendering/RenderTheme.cpp:
  89981. (WebCore::RenderTheme::adjustStyle):
  89982. (WebCore::RenderTheme::paint):
  89983. (WebCore::RenderTheme::paintBorderOnly):
  89984. (WebCore::RenderTheme::paintDecorations):
  89985. * rendering/TextControlInnerElements.cpp:
  89986. (WebCore::InputFieldSpeechButtonElement::InputFieldSpeechButtonElement):
  89987. (WebCore::InputFieldSpeechButtonElement::create):
  89988. (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
  89989. * rendering/TextControlInnerElements.h:
  89990. * rendering/style/RenderStyleConstants.h:
  89991. (WebCore::):
  89992. 2010-06-24 Kent Tamura <tkent@chromium.org>
  89993. Reviewed by Adam Barth.
  89994. [Mac] The upper button of <input type=number> has no visual effect on click
  89995. https://bugs.webkit.org/show_bug.cgi?id=38380
  89996. Because we have no ways to draw an NSStepperCell with its up button
  89997. highlighted, use HIThemeDrawButton() instead.
  89998. Test: platform/mac/fast/forms/input-appearance-spinbutton-up.html
  89999. * platform/mac/ThemeMac.mm:
  90000. (WebCore::controlSizeFromPixelSize):
  90001. New function. Made from a part of setControlSize().
  90002. (WebCore::setControlSize):
  90003. (WebCore::convertControlStatesToThemeDrawState):
  90004. (WebCore::paintStepper): Use HITheme API instead of NSStepperCell.
  90005. (WebCore::ThemeMac::inflateControlPaintRect):
  90006. Use controlSizeFromPixelSize().
  90007. 2010-06-24 Yury Semikhatsky <yurys@chromium.org>
  90008. Reviewed by Pavel Feldman.
  90009. Web Inspector: implement layout tests for debugger
  90010. https://bugs.webkit.org/show_bug.cgi?id=40774
  90011. Test: inspector/debugger-pause-on-debugger-statement.html
  90012. * bindings/js/ScriptDebugServer.cpp: remove unused obsolete code that deals with global listeners.
  90013. (WebCore::ScriptDebugServer::ScriptDebugServer):
  90014. (WebCore::ScriptDebugServer::removeListener):
  90015. (WebCore::ScriptDebugServer::dispatchFunctionToListeners):
  90016. (WebCore::ScriptDebugServer::pauseIfNeeded):
  90017. (WebCore::ScriptDebugServer::didAddListener):
  90018. (WebCore::ScriptDebugServer::didRemoveListener):
  90019. * bindings/js/ScriptDebugServer.h:
  90020. * platform/mac/EventLoopMac.mm:
  90021. (WebCore::EventLoop::cycle): wait at most 10ms for new event, otherwise layout tests would
  90022. hang because in their case there may be no events ever.
  90023. 2010-06-24 Andrey Kosyakov <caseq@chromium.org>
  90024. Reviewed by Yury Semikhatsky.
  90025. Fixed evaluation & logging of null values in console.
  90026. Changed handling of null and undefined in ScriptValue::toString()
  90027. to match JSC bindings (i.e. "null" and "undefined" instead of "").
  90028. https://bugs.webkit.org/show_bug.cgi?id=40980
  90029. * bindings/v8/ScriptValue.cpp:
  90030. (WebCore::ScriptValue::toString):
  90031. * inspector/front-end/InjectedScript.js:
  90032. (injectedScriptConstructor):
  90033. 2010-06-24 Yury Semikhatsky <yurys@chromium.org>
  90034. Reviewed by Pavel Feldman.
  90035. Web Inspector: live edit doesn't work when resource tracking is off
  90036. https://bugs.webkit.org/show_bug.cgi?id=41076
  90037. * inspector/front-end/ScriptView.js:
  90038. (WebInspector.ScriptView.prototype._sourceIDForLine): implement this method for ScriptView,
  90039. it's needed for editLine to work.
  90040. 2010-06-23 Adam Barth <abarth@webkit.org>
  90041. Reviewed by Eric Seidel.
  90042. Sketch out InitialMode of HTML5 tree builder
  90043. https://bugs.webkit.org/show_bug.cgi?id=41126
  90044. Transliterated from the spec. Currently doesn't do anything. Mostly
  90045. an experiment to see where this goes.
  90046. * html/HTMLTreeBuilder.cpp:
  90047. (WebCore::HTMLTreeBuilder::processToken):
  90048. (WebCore::HTMLTreeBuilder::insertDoctype):
  90049. (WebCore::HTMLTreeBuilder::insertComment):
  90050. * html/HTMLTreeBuilder.h:
  90051. 2010-06-23 Adam Barth <abarth@webkit.org>
  90052. Reviewed by Eric Seidel.
  90053. Add all the HTML5 tree builder insertion modes
  90054. https://bugs.webkit.org/show_bug.cgi?id=41124
  90055. These are just copied verbatim from the spec. No tests because these
  90056. don't do anything yet.
  90057. * html/HTMLTreeBuilder.cpp:
  90058. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  90059. (WebCore::HTMLTreeBuilder::passTokenToLegacyParser):
  90060. * html/HTMLTreeBuilder.h:
  90061. (WebCore::HTMLTreeBuilder::):
  90062. 2010-06-23 Eric Seidel <eric@webkit.org>
  90063. Unreviewed. Fix namespace indent. Just whitespace changes.
  90064. * dom/DocumentParser.h:
  90065. (WebCore::DocumentParser::~DocumentParser):
  90066. (WebCore::DocumentParser::isExecutingScript):
  90067. (WebCore::DocumentParser::stopParsing):
  90068. (WebCore::DocumentParser::processingData):
  90069. (WebCore::DocumentParser::wantsRawData):
  90070. (WebCore::DocumentParser::writeRawData):
  90071. (WebCore::DocumentParser::wellFormed):
  90072. (WebCore::DocumentParser::lineNumber):
  90073. (WebCore::DocumentParser::columnNumber):
  90074. (WebCore::DocumentParser::executeScriptsWaitingForStylesheets):
  90075. (WebCore::DocumentParser::htmlTreeBuilder):
  90076. (WebCore::DocumentParser::asHTMLDocumentParser):
  90077. (WebCore::DocumentParser::inViewSourceMode):
  90078. (WebCore::DocumentParser::setInViewSourceMode):
  90079. (WebCore::DocumentParser::document):
  90080. (WebCore::DocumentParser::xssAuditor):
  90081. (WebCore::DocumentParser::setXSSAuditor):
  90082. (WebCore::DocumentParser::DocumentParser):
  90083. 2010-06-23 Eric Seidel <eric@webkit.org>
  90084. Unreviewed. Speculative build fix for Qt.
  90085. Move Document* down onto DocumentParser, since every DocumentParser needs one.
  90086. https://bugs.webkit.org/show_bug.cgi?id=41117
  90087. XMLDocumentParserQt is a huge pile of donkey barf.
  90088. I can't believe I ever r+'d the creation of this pile of
  90089. copy/paste code.
  90090. I clearly missed removing m_doc from this code as well and thus
  90091. broke Qt.
  90092. We really need to fix both XMLDocumentParserLibxml2 and
  90093. XMLDocumentParserQt not to be so poorly abstracted so
  90094. that if we're going to have two of them they can at least
  90095. share some code.
  90096. * dom/XMLDocumentParserQt.cpp:
  90097. (WebCore::XMLDocumentParser::XMLDocumentParser):
  90098. (WebCore::XMLDocumentParser::~XMLDocumentParser):
  90099. (WebCore::XMLDocumentParser::doWrite):
  90100. (WebCore::XMLDocumentParser::doEnd):
  90101. (WebCore::XMLDocumentParser::parse):
  90102. (WebCore::XMLDocumentParser::startDocument):
  90103. (WebCore::XMLDocumentParser::parseStartElement):
  90104. (WebCore::XMLDocumentParser::parseEndElement):
  90105. (WebCore::XMLDocumentParser::parseProcessingInstruction):
  90106. (WebCore::XMLDocumentParser::parseCdata):
  90107. (WebCore::XMLDocumentParser::parseComment):
  90108. (WebCore::XMLDocumentParser::parseDtd):
  90109. 2010-06-23 Eric Seidel <eric@webkit.org>
  90110. Reviewed by Adam Barth.
  90111. Move Document* down onto DocumentParser, since every DocumentParser needs one.
  90112. https://bugs.webkit.org/show_bug.cgi?id=41117
  90113. This eliminated the need for document() on HTMLDocumentParser.
  90114. This paves the way for more code sharing between various
  90115. DocumentParser subclasses.
  90116. * dom/DocumentParser.h:
  90117. (WebCore::DocumentParser::inViewSourceMode):
  90118. (WebCore::DocumentParser::setInViewSourceMode):
  90119. (WebCore::DocumentParser::document):
  90120. (WebCore::DocumentParser::DocumentParser):
  90121. * dom/XMLDocumentParser.cpp:
  90122. (WebCore::XMLDocumentParser::isWMLDocument):
  90123. (WebCore::XMLDocumentParser::pushCurrentNode):
  90124. (WebCore::XMLDocumentParser::popCurrentNode):
  90125. (WebCore::XMLDocumentParser::clearCurrentNodeStack):
  90126. (WebCore::XMLDocumentParser::enterText):
  90127. (WebCore::XMLDocumentParser::end):
  90128. (WebCore::XMLDocumentParser::insertErrorMessageBlock):
  90129. * dom/XMLDocumentParser.h:
  90130. * dom/XMLDocumentParserLibxml2.cpp:
  90131. (WebCore::XMLDocumentParser::XMLDocumentParser):
  90132. (WebCore::XMLDocumentParser::~XMLDocumentParser):
  90133. (WebCore::XMLDocumentParser::doWrite):
  90134. (WebCore::XMLDocumentParser::startElementNs):
  90135. (WebCore::XMLDocumentParser::endElementNs):
  90136. (WebCore::XMLDocumentParser::processingInstruction):
  90137. (WebCore::XMLDocumentParser::cdataBlock):
  90138. (WebCore::XMLDocumentParser::comment):
  90139. (WebCore::XMLDocumentParser::startDocument):
  90140. (WebCore::XMLDocumentParser::internalSubset):
  90141. (WebCore::XMLDocumentParser::initializeParserContext):
  90142. (WebCore::XMLDocumentParser::doEnd):
  90143. * html/HTMLDocumentParser.cpp:
  90144. (WebCore::HTMLDocumentParser::HTMLDocumentParser):
  90145. * html/HTMLDocumentParser.h:
  90146. * html/LegacyHTMLDocumentParser.cpp:
  90147. (WebCore::LegacyHTMLDocumentParser::LegacyHTMLDocumentParser):
  90148. (WebCore::LegacyHTMLDocumentParser::begin):
  90149. (WebCore::LegacyHTMLDocumentParser::scriptHandler):
  90150. (WebCore::LegacyHTMLDocumentParser::scriptExecution):
  90151. (WebCore::LegacyHTMLDocumentParser::parseTag):
  90152. (WebCore::LegacyHTMLDocumentParser::continueProcessing):
  90153. (WebCore::LegacyHTMLDocumentParser::willWriteHTML):
  90154. (WebCore::LegacyHTMLDocumentParser::didWriteHTML):
  90155. (WebCore::LegacyHTMLDocumentParser::write):
  90156. (WebCore::LegacyHTMLDocumentParser::stopParsing):
  90157. (WebCore::LegacyHTMLDocumentParser::timerFired):
  90158. (WebCore::LegacyHTMLDocumentParser::end):
  90159. (WebCore::LegacyHTMLDocumentParser::processToken):
  90160. (WebCore::LegacyHTMLDocumentParser::processDoctypeToken):
  90161. (WebCore::LegacyHTMLDocumentParser::executeScriptsWaitingForStylesheets):
  90162. (WebCore::LegacyHTMLDocumentParser::executeExternalScriptsIfReady):
  90163. (WebCore::LegacyHTMLDocumentParser::executeExternalScriptsTimerFired):
  90164. * html/LegacyHTMLDocumentParser.h:
  90165. * loader/ImageDocument.cpp:
  90166. (WebCore::ImageDocumentParser::ImageDocumentParser):
  90167. (WebCore::ImageDocumentParser::imageDocument):
  90168. (WebCore::ImageDocumentParser::write):
  90169. (WebCore::ImageDocumentParser::writeRawData):
  90170. (WebCore::ImageDocumentParser::finish):
  90171. (WebCore::ImageDocumentParser::finishWasCalled):
  90172. (WebCore::ImageDocumentParser::isWaitingForScripts):
  90173. (WebCore::ImageDocument::createParser):
  90174. * loader/MediaDocument.cpp:
  90175. (WebCore::MediaDocumentParser::MediaDocumentParser):
  90176. (WebCore::MediaDocumentParser::createDocumentStructure):
  90177. (WebCore::MediaDocumentParser::finish):
  90178. (WebCore::MediaDocumentParser::finishWasCalled):
  90179. * loader/PluginDocument.cpp:
  90180. (WebCore::PluginDocumentParser::PluginDocumentParser):
  90181. (WebCore::PluginDocumentParser::createDocumentStructure):
  90182. (WebCore::PluginDocumentParser::writeRawData):
  90183. (WebCore::PluginDocumentParser::finish):
  90184. (WebCore::PluginDocumentParser::finishWasCalled):
  90185. * loader/SinkDocument.cpp:
  90186. (WebCore::SinkDocumentParser::SinkDocumentParser):
  90187. * loader/TextDocument.cpp:
  90188. (WebCore::TextDocumentParser::TextDocumentParser):
  90189. (WebCore::TextDocumentParser::write):
  90190. (WebCore::TextDocumentParser::finish):
  90191. (WebCore::TextDocumentParser::finishWasCalled):
  90192. 2010-06-23 Eric Seidel <eric@webkit.org>
  90193. Reviewed by Adam Barth.
  90194. Start to clean up DocumentParser interface
  90195. https://bugs.webkit.org/show_bug.cgi?id=41114
  90196. The first of many cleanups needed to the DocumentParser
  90197. interface. Rename executingScript() to isExecutingScript()
  90198. and make it return a bool instead of an int. Also added a
  90199. FIXME to XMLDocumentParser about implementing it and did
  90200. some minor other cleanup to the XMLDocumentParser header.
  90201. No functional change, thus no tests.
  90202. * dom/Document.cpp:
  90203. (WebCore::Document::open):
  90204. * dom/DocumentParser.h:
  90205. (WebCore::DocumentParser::isExecutingScript):
  90206. * dom/XMLDocumentParser.h:
  90207. (WebCore::XMLDocumentParser::wellFormed):
  90208. * html/HTMLDocumentParser.cpp:
  90209. (WebCore::HTMLDocumentParser::attemptToEnd):
  90210. (WebCore::HTMLDocumentParser::endIfDelayed):
  90211. (WebCore::HTMLDocumentParser::isExecutingScript):
  90212. * html/HTMLDocumentParser.h:
  90213. * html/LegacyHTMLDocumentParser.h:
  90214. (WebCore::LegacyHTMLDocumentParser::isExecutingScript):
  90215. 2010-06-22 Maciej Stachowiak <mjs@apple.com>
  90216. Reviewed by Simon Fraser.
  90217. Implement IDL attribute for HTML5 hidden
  90218. https://bugs.webkit.org/show_bug.cgi?id=41039
  90219. Test: fast/html/hidden-attr-dom.html
  90220. * html/HTMLElement.idl: Just add to the IDL file. [Reflect] takes
  90221. care of the rest.
  90222. 2010-06-23 Joanmarie Diggs <joanmarie.diggs@gmail.com>
  90223. Reviewed by Chris Fleizach.
  90224. [Gtk] nameFromChildren is obsolete
  90225. https://bugs.webkit.org/show_bug.cgi?id=36128
  90226. Look to the AtkText interface implemented by the objects in
  90227. question.
  90228. Test: platform/gtk/accessibility/name-from-label.html
  90229. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  90230. (webkit_accessible_get_name):
  90231. (webkit_accessible_table_get_column_description):
  90232. (webkit_accessible_table_get_row_description):
  90233. 2010-06-23 Kwang Yul Seo <skyul@company100.net>
  90234. Reviewed by Kent Tamura.
  90235. [BREWMP] Port FileSystem
  90236. https://bugs.webkit.org/show_bug.cgi?id=34323
  90237. Port FileSystem with IFileMgr interface.
  90238. * platform/FileSystem.h:
  90239. * platform/brew/FileSystemBrew.cpp: Added.
  90240. (WebCore::getFileSize):
  90241. (WebCore::getFileModificationTime):
  90242. (WebCore::fileExists):
  90243. (WebCore::deleteFile):
  90244. (WebCore::deleteEmptyDirectory):
  90245. (WebCore::pathByAppendingComponent):
  90246. (WebCore::fileSystemRepresentation):
  90247. (WebCore::canonicalPath):
  90248. (WebCore::makeAllDirectories):
  90249. (WebCore::homeDirectoryPath):
  90250. (WebCore::pathGetFileName):
  90251. (WebCore::directoryName):
  90252. (WebCore::openTemporaryFile):
  90253. (WebCore::closeFile):
  90254. (WebCore::writeToFile):
  90255. (WebCore::unloadModule):
  90256. (WebCore::listDirectory):
  90257. 2010-06-23 Alexendar Pavlov <apavlov@chromium.org>
  90258. Reviewed by David Hyatt.
  90259. Swap checks in Position::isCandidate so that the less expensive
  90260. nodeIsUserSelectNode (node && node->renderer() &&
  90261. node->renderer()->style()->userSelect() == SELECT_NONE) came first.
  90262. (Was Web Inspector: Hangup when expanding elements with enormous
  90263. text node content in Elements panel).
  90264. https://bugs.webkit.org/show_bug.cgi?id=35926
  90265. * dom/Position.cpp:
  90266. (WebCore::Position::isCandidate):
  90267. * dom/PositionIterator.cpp:
  90268. (WebCore::PositionIterator::isCandidate):
  90269. 2010-06-23 Kwang Yul Seo <skyul@company100.net>
  90270. Reviewed by Kent Tamura.
  90271. [BREWMP] Add PopupMenu implementation
  90272. https://bugs.webkit.org/show_bug.cgi?id=40226
  90273. Delegate PopupMenu handling to ChromeClientBrew.
  90274. * page/brew/ChromeClientBrew.h: Added.
  90275. * platform/PopupMenu.h:
  90276. * platform/brew/PopupMenuBrew.cpp: Added.
  90277. (WebCore::PopupMenu::PopupMenu):
  90278. (WebCore::PopupMenu::~PopupMenu):
  90279. (WebCore::PopupMenu::show):
  90280. (WebCore::PopupMenu::hide):
  90281. (WebCore::PopupMenu::updateFromElement):
  90282. (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  90283. 2010-06-23 Kenneth Russell <kbr@google.com>
  90284. Reviewed by Dimitri Glazkov.
  90285. Implement format conversions in texImage2D and texSubImage2D taking HTML data
  90286. https://bugs.webkit.org/show_bug.cgi?id=40319
  90287. Generalized code supporting premultiplication of alpha and
  90288. vertical flip to pack texture data into requested format and type.
  90289. Handled incoming image data of various formats, RGBA and BGRA in
  90290. particular, both to reduce the number of temporary copies during
  90291. texture upload and to support premultiplying alpha for the
  90292. texImage2D and texSubImage2D entry points taking ArrayBufferView
  90293. in a subsequent bug. Added test case exercising all combinations
  90294. of format/type combinations, premultiplication of alpha, and
  90295. Image/ImageData upload. (Incorporated pnglib.js under
  90296. fast/canvas/webgl/resources/ to be able to generate Image elements
  90297. programmatically.) Tested in Safari on Mac OS X and in Chromium on
  90298. Mac OS X, Windows and Linux.
  90299. Test: fast/canvas/webgl/tex-image-with-format-and-type.html
  90300. * html/canvas/WebGLRenderingContext.cpp:
  90301. (WebCore::WebGLRenderingContext::readPixels):
  90302. (WebCore::WebGLRenderingContext::texImage2DImpl):
  90303. (WebCore::WebGLRenderingContext::texImage2D):
  90304. (WebCore::WebGLRenderingContext::texSubImage2DImpl):
  90305. (WebCore::WebGLRenderingContext::texSubImage2D):
  90306. (WebCore::WebGLRenderingContext::validateTexFuncFormatAndType):
  90307. (WebCore::WebGLRenderingContext::validateTexFuncParameters):
  90308. * platform/graphics/GraphicsContext3D.cpp:
  90309. (WebCore::GraphicsContext3D::computeFormatAndTypeParameters):
  90310. (WebCore::GraphicsContext3D::extractImageData):
  90311. (WebCore::GraphicsContext3D::flipVertically):
  90312. (WebCore::doUnpackingAndPacking):
  90313. (WebCore::doPacking):
  90314. (WebCore::GraphicsContext3D::packPixels):
  90315. * platform/graphics/GraphicsContext3D.h:
  90316. (WebCore::GraphicsContext3D::):
  90317. * platform/graphics/cg/GraphicsContext3DCG.cpp:
  90318. (WebCore::GraphicsContext3D::getImageData):
  90319. * platform/graphics/mac/GraphicsContext3DMac.mm:
  90320. (WebCore::narrowInternalFormat):
  90321. (WebCore::GraphicsContext3D::texImage2D):
  90322. * platform/graphics/qt/GraphicsContext3DQt.cpp:
  90323. (WebCore::GraphicsContext3D::getImageData):
  90324. * platform/graphics/skia/GraphicsContext3DSkia.cpp:
  90325. (WebCore::GraphicsContext3D::getImageData):
  90326. 2010-06-23 Stephen White <senorblanco@chromium.org>
  90327. Unreviewed; correcting bad patch.
  90328. In my haste to land r61710, I mistakenly landed the wrong version, in
  90329. which a chunk of code was moved. This patch moves that chunk of code
  90330. to where it was in the patch that was reviewed. Mea culpa.
  90331. * rendering/RenderBoxModelObject.cpp:
  90332. (WebCore::ImageQualityController::shouldPaintAtLowQuality):
  90333. 2010-06-23 Stephen White <senorblanco@chromium.org>
  90334. Reviewed by David Hyatt.
  90335. This is a tweak to the resize algorithm introduced in r61341, and
  90336. is a fix for the regression described in
  90337. https://bugs.webkit.org/show_bug.cgi?id=41036
  90338. The goal is to bring back the some of old behaviour, without regressing
  90339. too much of the performance gains in r61341.
  90340. The old algorithm was:
  90341. - on first resize, draw in high quality and record the paint time
  90342. - if we've already drawn at this size, use the same quality as last time
  90343. - on subsequent resizes, if the resize occurs within X ms of the
  90344. previous one, draw at low quality and set a timer (one timer per
  90345. image).
  90346. - when each timer expires, draw that image at high quality
  90347. The r61341 algorithm was:
  90348. - on first resize, draw the image in low quality, add it to a list of
  90349. resized images, and set a timer (one timer for all images)
  90350. - when the timer expires, redraw all resized images in high quality
  90351. The new algorithm is:
  90352. - on first resize, if no other animated resizes are outstanding, draw in
  90353. high quality and set the timer (one timer for all images)
  90354. - if any images have been resized to two different sizes in the last
  90355. X ms, draw all resized images in low quality and kick the timer
  90356. forward
  90357. - when the timer expires, if any animated resizes occured, redraw all
  90358. resized images in high quality, and reset the flag
  90359. This should cause GUIMark and the IE9 demos to have good performance
  90360. after the first frame, while other pages with only static resizes
  90361. should be unaffected.
  90362. * rendering/RenderBoxModelObject.cpp:
  90363. Change the LastPaintTimeMap to a LastPaintSizeMap: we now record the
  90364. last size an image was resized to, rather than the time it was painted
  90365. (the time actually became redundant in r61341 when I added the
  90366. check for m_timer.isActive(): we only care if anything is resizing
  90367. while the timer is active).
  90368. (WebCore::ImageQualityController::ImageQualityController):
  90369. Add an initializer for the m_animatedResizeIsActive flag.
  90370. (WebCore::ImageQualityController::objectDestroyed):
  90371. Reset the m_animatedResizeIsActive flag if this was the last object
  90372. in the list.
  90373. (WebCore::ImageQualityController::highQualityRepaintTimerFired):
  90374. Only repaint all the images if there was an animated resize (otherwise,
  90375. everything is already high quality).
  90376. (WebCore::ImageQualityController::shouldPaintAtLowQuality):
  90377. Implement the above algorithm.
  90378. 2010-06-23 Abhishek Arya <inferno@chromium.org>
  90379. Reviewed by Kenneth Rohde Christiansen.
  90380. Bad cast after DOM mutation in RenderMenuList
  90381. https://bugs.webkit.org/show_bug.cgi?id=40828
  90382. Firing the onchange event on select which changes its size > 1 causes the select
  90383. object to change from a menulist to a listbox. However, when propogating the events,
  90384. we do a bad cast assuming the object will remain a menulist. Added proper checks to
  90385. make sure we check the renderer after the onchange is fired and propogate the event
  90386. based on correct object type.
  90387. Test: fast/events/select-onchange-crash.html
  90388. * dom/SelectElement.cpp:
  90389. (WebCore::SelectElement::setSelectedIndex):
  90390. 2010-06-23 Andy Estes <aestes@apple.com>
  90391. Reviewed by Alexey Proskuryakov.
  90392. <rdar://problem/8107855> Prevent a crash in WebCore when removing an
  90393. object element with an invalid data URL in in a listener to its
  90394. beforeload event.
  90395. https://bugs.webkit.org/show_bug.cgi?id=41054
  90396. Tests: fast/dom/beforeload/remove-bad-object-in-beforeload-listener.html
  90397. * html/HTMLObjectElement.cpp:
  90398. (WebCore::HTMLObjectElement::renderFallbackContent): Exit early if the
  90399. object element is not in the document.
  90400. * rendering/RenderEmbeddedObject.cpp:
  90401. (WebCore::RenderEmbeddedObject::updateWidget): If RenderWidget::destroy()
  90402. was called during processing of onbeforeload, do not proceed with loading
  90403. the object.
  90404. 2010-06-23 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
  90405. Reviewed by Xan Lopez.
  90406. [gtk] web fonts not loaded properly in scribd html5 reader
  90407. https://bugs.webkit.org/show_bug.cgi?id=38758
  90408. Drop filling the pattern with default values, because this
  90409. restricts the matching more than we want.
  90410. * platform/graphics/cairo/FontCacheCairo.cpp:
  90411. (WebCore::FontCache::createFontPlatformData):
  90412. 2010-06-23 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
  90413. Reviewed by Xan Lopez.
  90414. [gtk] web fonts not loaded properly in scribd html5 reader
  90415. https://bugs.webkit.org/show_bug.cgi?id=38758
  90416. Also special-case `sans' amd `mono', which are aliases commonly
  90417. used in GTK+ applications.
  90418. * platform/graphics/cairo/FontCacheCairo.cpp:
  90419. (WebCore::isWellKnownFontName):
  90420. 2010-06-23 Justin Schuh <jschuh@chromium.org>
  90421. Unreviewed, rolling out r61695.
  90422. http://trac.webkit.org/changeset/61695
  90423. https://bugs.webkit.org/show_bug.cgi?id=40798
  90424. 61695 broke all the Linux builds.
  90425. * platform/image-decoders/png/PNGImageDecoder.cpp:
  90426. (WebCore::PNGImageDecoder::rowAvailable):
  90427. 2010-06-23 Kevin Ollivier <kevino@theolliviers.com>
  90428. Reviewed by Darin Adler.
  90429. Fix PluginViewNone.cpp compilation for ports that also compile PluginView.cpp
  90430. https://bugs.webkit.org/show_bug.cgi?id=37939
  90431. * plugins/PluginViewNone.cpp:
  90432. (WebCore::PluginView::handleFocusInEvent):
  90433. (WebCore::PluginView::handleFocusOutEvent):
  90434. (WebCore::PluginView::keepAlive):
  90435. (WebCore::PluginView::privateBrowsingStateChanged):
  90436. (WebCore::PluginView::setJavaScriptPaused):
  90437. 2010-06-23 Cris Neckar <cdn@chromium.org>
  90438. Reviewed by Darin Fisher.
  90439. [Chromium] Out of bounds write in WebCore::PNGImageDecoder::rowAvailable
  90440. https://bugs.webkit.org/show_bug.cgi?id=40798
  90441. Catches error in row callback for libPNG when extra rows are returned.
  90442. Test: fast/images/png-extra-row-crash.html
  90443. * platform/image-decoders/png/PNGImageDecoder.cpp:
  90444. (WebCore::PNGImageDecoder::rowAvailable):
  90445. 2010-06-23 James Robinson <jamesr@chromium.org>
  90446. Reviewed by Dan Bernstein.
  90447. Do not set needsLayout when the style attribute changes on an SVG element
  90448. https://bugs.webkit.org/show_bug.cgi?id=40366
  90449. SVGSVGElement::svgAttributeChanged was incorrectly calling renderer()->setNeedsLayout(true)
  90450. whenever the styleAttr changed on its element. This could happen during layout in some
  90451. circumstances due to lazy style attribute synchronization. When it did, it could cause the
  90452. layout flags to become inconsistent. See the test case for details.
  90453. Changes to an element's style attribute always mark an element as needing layout anyway so
  90454. this call was redundant.
  90455. Test: fast/repaint/svg-layout-root-style-attr-update.html
  90456. * svg/SVGStyledElement.cpp:
  90457. (WebCore::SVGStyledElement::isKnownAttribute):
  90458. 2010-06-23 Simon Fraser <simon.fraser@apple.com>
  90459. Reviewed by Dan Bernstein.
  90460. r61215 broke Acid3
  90461. https://bugs.webkit.org/show_bug.cgi?id=41034
  90462. The code added in r61215, which tests whether the root renderer will fill
  90463. the entire viewport, should not run for subframes. So bail from
  90464. RenderView::paintBoxDecorations() if document()->ownerElement() is not null.
  90465. The old code was trying to do this by checking 'elt', but that ends up as
  90466. null after the for loop above.
  90467. We can also bail early if the is no FrameView().
  90468. Test: fast/frames/paint-iframe-background.html
  90469. * rendering/RenderView.cpp:
  90470. (WebCore::RenderView::paintBoxDecorations):
  90471. 2010-06-23 Pavel Feldman <pfeldman@chromium.org>
  90472. Reviewed by Yury Semikhatsky.
  90473. Web Inspector: do not reset profiles panel on navigation.
  90474. https://bugs.webkit.org/show_bug.cgi?id=41068
  90475. * inspector/InspectorController.cpp:
  90476. (WebCore::InspectorController::didCommitLoad):
  90477. * inspector/InspectorFrontend.cpp:
  90478. (WebCore::InspectorFrontend::resetProfilesPanel):
  90479. * inspector/InspectorFrontend.h:
  90480. * inspector/front-end/ProfilesPanel.js:
  90481. (WebInspector.ProfilesPanel):
  90482. (WebInspector.ProfilesPanel.prototype.populateInterface):
  90483. (WebInspector.ProfilesPanel.prototype.profilerWasDisabled):
  90484. (WebInspector.ProfilesPanel.prototype._reset):
  90485. (WebInspector.ProfilesPanel.prototype._clearProfiles):
  90486. * inspector/front-end/inspector.js:
  90487. (WebInspector.resetProfilesPanel):
  90488. 2010-06-23 Yury Semikhatsky <yurys@chromium.org>
  90489. Reviewed by Pavel Feldman.
  90490. Web Inspector: InspectorController should be added only once as ScriptDebugListener to
  90491. ScriptDebugServer.
  90492. https://bugs.webkit.org/show_bug.cgi?id=41070
  90493. * inspector/InspectorController.cpp:
  90494. (WebCore::InspectorController::connectFrontend):
  90495. (WebCore::InspectorController::disconnectFrontend):
  90496. (WebCore::InspectorController::enableDebuggerFromFrontend):
  90497. * inspector/front-end/ScriptsPanel.js:
  90498. (WebInspector.ScriptsPanel): don't call InspectorBackend.enableDebugger if debugger is always enabled,
  90499. InspectorController will do this on its side when the front end is connected.
  90500. 2010-06-23 Pavel Podivilov <podivilov@chromium.org>
  90501. Reviewed by Yury Semikhatsky.
  90502. Clear breakpoints before restoring them, not after.
  90503. https://bugs.webkit.org/show_bug.cgi?id=41071
  90504. * inspector/InspectorController.cpp:
  90505. (WebCore::InspectorController::enableDebuggerFromFrontend):
  90506. 2010-06-23 Benjamin Poulain <benjamin.poulain@nokia.com>
  90507. Reviewed by Kenneth Rohde Christiansen.
  90508. Do not render the full frame when there is some elements with fixed positioning
  90509. https://bugs.webkit.org/show_bug.cgi?id=33150
  90510. Do not render the full frame when there is some elements with fixed positioning
  90511. https://bugs.webkit.org/show_bug.cgi?id=33150
  90512. The frame view take into acount the list of fixed object when scrolling
  90513. the view. If the number of object is lower than a certain threshold, the pixel
  90514. are blitted, and the invalidated area updated.
  90515. * page/FrameView.cpp:
  90516. (WebCore::FrameView::addFixedObject):
  90517. (WebCore::FrameView::removeFixedObject):
  90518. (WebCore::FrameView::scrollContentsFastPath):
  90519. * page/FrameView.h:
  90520. * platform/ScrollView.cpp:
  90521. (WebCore::ScrollView::scrollContents):
  90522. (WebCore::ScrollView::scrollContentsFastPath):
  90523. * platform/ScrollView.h:
  90524. * rendering/RenderLayer.cpp:
  90525. (WebCore::RenderLayer::repaintRectIncludingDescendants):
  90526. * rendering/RenderLayer.h:
  90527. * rendering/RenderObject.cpp:
  90528. (WebCore::RenderObject::styleWillChange):
  90529. 2010-06-23 Mikhail Naganov <mnaganov@chromium.org>
  90530. Reviewed by Pavel Feldman.
  90531. Web Inspector: Fix displaying of several CPU profiles with the same name.
  90532. https://bugs.webkit.org/show_bug.cgi?id=40992
  90533. * inspector/front-end/ProfilesPanel.js:
  90534. (WebInspector.ProfileGroupSidebarTreeElement.prototype.onselect):
  90535. 2010-06-23 Adam Barth <abarth@webkit.org>
  90536. Unreviewed. clean-header-guards that were made dirty by recent
  90537. renames.
  90538. * html/HTMLDocumentParser.h:
  90539. * html/HTMLPreloadScanner.h:
  90540. * html/HTMLTokenizer.h:
  90541. * html/HTMLTreeBuilder.h:
  90542. * html/LegacyHTMLDocumentParser.h:
  90543. * html/LegacyHTMLTreeBuilder.h:
  90544. * html/LegacyPreloadScanner.h:
  90545. 2010-06-23 Adam Barth <abarth@webkit.org>
  90546. Reviewed by Eric Seidel.
  90547. Rename LegacyHTMLTreeConstructor to LegacyHTMLTreeBuilder
  90548. https://bugs.webkit.org/show_bug.cgi?id=41053
  90549. There was some debate about whether to call this class (and the
  90550. non-legacy version) "tree builder" or "tree constructor". Maciej
  90551. pointed out that other implementations (including Mozilla and HTML5Lib)
  90552. call it a tree builder. The path of least resistance seems to be call
  90553. it that for now.
  90554. * Android.mk:
  90555. * CMakeLists.txt:
  90556. * GNUmakefile.am:
  90557. * WebCore.gypi:
  90558. * WebCore.pro:
  90559. * WebCore.vcproj/WebCore.vcproj:
  90560. * WebCore.xcodeproj/project.pbxproj:
  90561. * dom/Document.cpp:
  90562. * dom/DocumentParser.h:
  90563. (WebCore::DocumentParser::htmlTreeConstructor):
  90564. * html/HTMLDocumentParser.cpp:
  90565. (WebCore::HTMLDocumentParser::htmlTreeConstructor):
  90566. * html/HTMLDocumentParser.h:
  90567. * html/HTMLFormControlElement.cpp:
  90568. (WebCore::HTMLFormControlElement::removedFromTree):
  90569. * html/HTMLInputElement.cpp:
  90570. * html/HTMLMeterElement.cpp:
  90571. * html/HTMLProgressElement.cpp:
  90572. * html/HTMLTreeBuilder.cpp:
  90573. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  90574. * html/HTMLTreeBuilder.h:
  90575. (WebCore::HTMLTreeBuilder::legacyTreeConstructor):
  90576. * html/LegacyHTMLDocumentParser.cpp:
  90577. (WebCore::LegacyHTMLDocumentParser::LegacyHTMLDocumentParser):
  90578. * html/LegacyHTMLDocumentParser.h:
  90579. (WebCore::LegacyHTMLDocumentParser::htmlTreeConstructor):
  90580. * html/LegacyHTMLTreeBuilder.cpp: Copied from WebCore/html/LegacyHTMLTreeConstructor.cpp.
  90581. (WebCore::LegacyHTMLTreeBuilder::LegacyHTMLTreeBuilder):
  90582. (WebCore::LegacyHTMLTreeBuilder::~LegacyHTMLTreeBuilder):
  90583. (WebCore::LegacyHTMLTreeBuilder::reset):
  90584. (WebCore::LegacyHTMLTreeBuilder::setCurrent):
  90585. (WebCore::LegacyHTMLTreeBuilder::limitDepth):
  90586. (WebCore::LegacyHTMLTreeBuilder::insertNodeAfterLimitDepth):
  90587. (WebCore::LegacyHTMLTreeBuilder::parseToken):
  90588. (WebCore::LegacyHTMLTreeBuilder::parseDoctypeToken):
  90589. (WebCore::LegacyHTMLTreeBuilder::insertNode):
  90590. (WebCore::LegacyHTMLTreeBuilder::handleError):
  90591. (WebCore::LegacyHTMLTreeBuilder::textCreateErrorCheck):
  90592. (WebCore::LegacyHTMLTreeBuilder::commentCreateErrorCheck):
  90593. (WebCore::LegacyHTMLTreeBuilder::headCreateErrorCheck):
  90594. (WebCore::LegacyHTMLTreeBuilder::bodyCreateErrorCheck):
  90595. (WebCore::LegacyHTMLTreeBuilder::framesetCreateErrorCheck):
  90596. (WebCore::LegacyHTMLTreeBuilder::formCreateErrorCheck):
  90597. (WebCore::LegacyHTMLTreeBuilder::isindexCreateErrorCheck):
  90598. (WebCore::LegacyHTMLTreeBuilder::selectCreateErrorCheck):
  90599. (WebCore::LegacyHTMLTreeBuilder::ddCreateErrorCheck):
  90600. (WebCore::LegacyHTMLTreeBuilder::dtCreateErrorCheck):
  90601. (WebCore::LegacyHTMLTreeBuilder::rpCreateErrorCheck):
  90602. (WebCore::LegacyHTMLTreeBuilder::rtCreateErrorCheck):
  90603. (WebCore::LegacyHTMLTreeBuilder::nestedCreateErrorCheck):
  90604. (WebCore::LegacyHTMLTreeBuilder::nestedPCloserCreateErrorCheck):
  90605. (WebCore::LegacyHTMLTreeBuilder::nestedStyleCreateErrorCheck):
  90606. (WebCore::LegacyHTMLTreeBuilder::tableCellCreateErrorCheck):
  90607. (WebCore::LegacyHTMLTreeBuilder::tableSectionCreateErrorCheck):
  90608. (WebCore::LegacyHTMLTreeBuilder::noembedCreateErrorCheck):
  90609. (WebCore::LegacyHTMLTreeBuilder::noframesCreateErrorCheck):
  90610. (WebCore::LegacyHTMLTreeBuilder::noscriptCreateErrorCheck):
  90611. (WebCore::LegacyHTMLTreeBuilder::pCloserCreateErrorCheck):
  90612. (WebCore::LegacyHTMLTreeBuilder::pCloserStrictCreateErrorCheck):
  90613. (WebCore::LegacyHTMLTreeBuilder::mapCreateErrorCheck):
  90614. (WebCore::LegacyHTMLTreeBuilder::getNode):
  90615. (WebCore::LegacyHTMLTreeBuilder::allowNestedRedundantTag):
  90616. (WebCore::LegacyHTMLTreeBuilder::processCloseTag):
  90617. (WebCore::LegacyHTMLTreeBuilder::isHeadingTag):
  90618. (WebCore::LegacyHTMLTreeBuilder::isInline):
  90619. (WebCore::LegacyHTMLTreeBuilder::isResidualStyleTag):
  90620. (WebCore::LegacyHTMLTreeBuilder::isAffectedByResidualStyle):
  90621. (WebCore::LegacyHTMLTreeBuilder::handleResidualStyleCloseTagAcrossBlocks):
  90622. (WebCore::LegacyHTMLTreeBuilder::reopenResidualStyleTags):
  90623. (WebCore::LegacyHTMLTreeBuilder::pushBlock):
  90624. (WebCore::LegacyHTMLTreeBuilder::popBlock):
  90625. (WebCore::LegacyHTMLTreeBuilder::popOneBlockCommon):
  90626. (WebCore::LegacyHTMLTreeBuilder::popOneBlock):
  90627. (WebCore::LegacyHTMLTreeBuilder::moveOneBlockToStack):
  90628. (WebCore::LegacyHTMLTreeBuilder::checkIfHasPElementInScope):
  90629. (WebCore::LegacyHTMLTreeBuilder::popInlineBlocks):
  90630. (WebCore::LegacyHTMLTreeBuilder::freeBlock):
  90631. (WebCore::LegacyHTMLTreeBuilder::createHead):
  90632. (WebCore::LegacyHTMLTreeBuilder::handleIsindex):
  90633. (WebCore::LegacyHTMLTreeBuilder::startBody):
  90634. (WebCore::LegacyHTMLTreeBuilder::finished):
  90635. (WebCore::LegacyHTMLTreeBuilder::reportErrorToConsole):
  90636. * html/LegacyHTMLTreeBuilder.h: Copied from WebCore/html/LegacyHTMLTreeConstructor.h.
  90637. * html/LegacyHTMLTreeConstructor.cpp: Removed.
  90638. * html/LegacyHTMLTreeConstructor.h: Removed.
  90639. * html/StepRange.cpp:
  90640. * html/ValidityState.cpp:
  90641. * rendering/RenderSlider.cpp:
  90642. 2010-06-23 Adam Barth <abarth@webkit.org>
  90643. Reviewed by Eric Seidel.
  90644. Rename the preload scanners
  90645. https://bugs.webkit.org/show_bug.cgi?id=41052
  90646. Renames PreloadScanner to LegacyPreloadScanner because this code is now
  90647. off by default. Also, rename HTML5PreloadScanner to
  90648. HTMLPreloadScanner. We're not calling it PreloadScanner because we've
  90649. factored out the CSSPreloadScanner and the HTMLPreloadScanner from the
  90650. original PreloadScanner.
  90651. * Android.mk:
  90652. * CMakeLists.txt:
  90653. * GNUmakefile.am:
  90654. * WebCore.gypi:
  90655. * WebCore.pro:
  90656. * WebCore.vcproj/WebCore.vcproj:
  90657. * WebCore.xcodeproj/project.pbxproj:
  90658. * html/HTML5PreloadScanner.cpp: Removed.
  90659. * html/HTML5PreloadScanner.h: Removed.
  90660. * html/HTMLDocumentParser.cpp:
  90661. (WebCore::HTMLDocumentParser::pumpTokenizer):
  90662. * html/HTMLDocumentParser.h:
  90663. * html/HTMLPreloadScanner.cpp: Copied from WebCore/html/HTML5PreloadScanner.cpp.
  90664. (WebCore::HTMLPreloadScanner::HTMLPreloadScanner):
  90665. (WebCore::HTMLPreloadScanner::appendToEnd):
  90666. (WebCore::HTMLPreloadScanner::scan):
  90667. (WebCore::HTMLPreloadScanner::processToken):
  90668. (WebCore::HTMLPreloadScanner::scanningBody):
  90669. * html/HTMLPreloadScanner.h: Copied from WebCore/html/HTML5PreloadScanner.h.
  90670. * html/LegacyHTMLDocumentParser.cpp:
  90671. (WebCore::LegacyHTMLDocumentParser::scriptHandler):
  90672. (WebCore::LegacyHTMLDocumentParser::scriptExecution):
  90673. * html/LegacyHTMLDocumentParser.h:
  90674. * html/LegacyPreloadScanner.cpp: Copied from WebCore/html/PreloadScanner.cpp.
  90675. (WebCore::LegacyPreloadScanner::LegacyPreloadScanner):
  90676. (WebCore::LegacyPreloadScanner::~LegacyPreloadScanner):
  90677. (WebCore::LegacyPreloadScanner::begin):
  90678. (WebCore::LegacyPreloadScanner::end):
  90679. (WebCore::LegacyPreloadScanner::reset):
  90680. (WebCore::LegacyPreloadScanner::scanningBody):
  90681. (WebCore::LegacyPreloadScanner::write):
  90682. (WebCore::LegacyPreloadScanner::clearLastCharacters):
  90683. (WebCore::LegacyPreloadScanner::rememberCharacter):
  90684. (WebCore::LegacyPreloadScanner::lastCharactersMatch):
  90685. (WebCore::LegacyPreloadScanner::consumeEntity):
  90686. (WebCore::LegacyPreloadScanner::tokenize):
  90687. (WebCore::LegacyPreloadScanner::processAttribute):
  90688. (WebCore::LegacyPreloadScanner::emitCharacter):
  90689. (WebCore::LegacyPreloadScanner::tokenizeCSS):
  90690. (WebCore::LegacyPreloadScanner::emitTag):
  90691. (WebCore::LegacyPreloadScanner::emitCSSRule):
  90692. * html/LegacyPreloadScanner.h: Copied from WebCore/html/PreloadScanner.h.
  90693. * html/PreloadScanner.cpp: Removed.
  90694. * html/PreloadScanner.h: Removed.
  90695. * page/XSSAuditor.cpp:
  90696. (WebCore::XSSAuditor::decodeHTMLEntities):
  90697. 2010-06-23 Adam Barth <abarth@webkit.org>
  90698. Reviewed by Eric Seidel.
  90699. Yet more HTML5 => HTML renames
  90700. https://bugs.webkit.org/show_bug.cgi?id=41051
  90701. This patch renames HTML5DocumentParser to HTMLDocumentParser and
  90702. HTML5TreeBuilder to HTMLTreeBuilder. There was some discussion about
  90703. whether to use the name HTMLTreeBuilder or HTMLTreeConstructor, but
  90704. tree builder seems to be the dominate name in other implementations.
  90705. * Android.mk:
  90706. * CMakeLists.txt:
  90707. * GNUmakefile.am:
  90708. * WebCore.gypi:
  90709. * WebCore.pro:
  90710. * WebCore.vcproj/WebCore.vcproj:
  90711. * WebCore.xcodeproj/project.pbxproj:
  90712. * dom/DocumentFragment.cpp:
  90713. (WebCore::DocumentFragment::parseHTML):
  90714. * html/HTML5DocumentParser.cpp: Removed.
  90715. * html/HTML5DocumentParser.h: Removed.
  90716. * html/HTML5PreloadScanner.cpp:
  90717. (WebCore::HTML5PreloadScanner::scan):
  90718. (WebCore::HTML5PreloadScanner::processToken):
  90719. * html/HTML5TreeBuilder.cpp: Removed.
  90720. * html/HTML5TreeBuilder.h: Removed.
  90721. * html/HTMLDocument.cpp:
  90722. (WebCore::HTMLDocument::createParser):
  90723. * html/HTMLDocumentParser.cpp: Copied from WebCore/html/HTML5DocumentParser.cpp.
  90724. (WebCore::HTMLDocumentParser::HTMLDocumentParser):
  90725. (WebCore::HTMLDocumentParser::~HTMLDocumentParser):
  90726. (WebCore::HTMLDocumentParser::begin):
  90727. (WebCore::HTMLDocumentParser::stopParsing):
  90728. (WebCore::HTMLDocumentParser::processingData):
  90729. (WebCore::HTMLDocumentParser::pumpTokenizerIfPossible):
  90730. (WebCore::HTMLDocumentParser::isScheduledForResume):
  90731. (WebCore::HTMLDocumentParser::resumeParsingAfterYield):
  90732. (WebCore::HTMLDocumentParser::runScriptsForPausedTreeConstructor):
  90733. (WebCore::HTMLDocumentParser::pumpTokenizer):
  90734. (WebCore::HTMLDocumentParser::willPumpLexer):
  90735. (WebCore::HTMLDocumentParser::didPumpLexer):
  90736. (WebCore::HTMLDocumentParser::write):
  90737. (WebCore::HTMLDocumentParser::end):
  90738. (WebCore::HTMLDocumentParser::attemptToEnd):
  90739. (WebCore::HTMLDocumentParser::endIfDelayed):
  90740. (WebCore::HTMLDocumentParser::finish):
  90741. (WebCore::HTMLDocumentParser::finishWasCalled):
  90742. (WebCore::HTMLDocumentParser::executingScript):
  90743. (WebCore::HTMLDocumentParser::inScriptExecution):
  90744. (WebCore::HTMLDocumentParser::lineNumber):
  90745. (WebCore::HTMLDocumentParser::columnNumber):
  90746. (WebCore::HTMLDocumentParser::htmlTreeConstructor):
  90747. (WebCore::HTMLDocumentParser::isWaitingForScripts):
  90748. (WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution):
  90749. (WebCore::HTMLDocumentParser::watchForLoad):
  90750. (WebCore::HTMLDocumentParser::stopWatchingForLoad):
  90751. (WebCore::HTMLDocumentParser::shouldLoadExternalScriptFromSrc):
  90752. (WebCore::HTMLDocumentParser::notifyFinished):
  90753. (WebCore::HTMLDocumentParser::executeScriptsWaitingForStylesheets):
  90754. (WebCore::HTMLDocumentParser::script):
  90755. * html/HTMLDocumentParser.h: Copied from WebCore/html/HTML5DocumentParser.h.
  90756. * html/HTMLParserScheduler.cpp:
  90757. (WebCore::HTMLParserScheduler::HTMLParserScheduler):
  90758. * html/HTMLParserScheduler.h:
  90759. * html/HTMLTreeBuilder.cpp: Copied from WebCore/html/HTML5TreeBuilder.cpp.
  90760. (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
  90761. (WebCore::HTMLTreeBuilder::~HTMLTreeBuilder):
  90762. (WebCore::HTMLTreeBuilder::handleScriptStartTag):
  90763. (WebCore::HTMLTreeBuilder::handleScriptEndTag):
  90764. (WebCore::HTMLTreeBuilder::takeScriptToProcess):
  90765. (WebCore::HTMLTreeBuilder::adjustedLexerState):
  90766. (WebCore::HTMLTreeBuilder::passTokenToLegacyParser):
  90767. (WebCore::HTMLTreeBuilder::constructTreeFromToken):
  90768. (WebCore::HTMLTreeBuilder::processToken):
  90769. (WebCore::HTMLTreeBuilder::finished):
  90770. (WebCore::HTMLTreeBuilder::isScriptingFlagEnabled):
  90771. * html/HTMLTreeBuilder.h: Copied from WebCore/html/HTML5TreeBuilder.h.
  90772. 2010-06-23 Adam Barth <abarth@webkit.org>
  90773. Reviewed by Eric Seidel.
  90774. More HTML5 => HTML renames
  90775. https://bugs.webkit.org/show_bug.cgi?id=41049
  90776. This patch renames HTML5ScriptRunner, HTML5ScriptRunnerHost, and
  90777. HTML5Token to remove the "5" from their names. These clases aren't
  90778. specific to HTML5 and will be used going forward.
  90779. * Android.mk:
  90780. * CMakeLists.txt:
  90781. * GNUmakefile.am:
  90782. * WebCore.gypi:
  90783. * WebCore.pro:
  90784. * WebCore.vcproj/WebCore.vcproj:
  90785. * WebCore.xcodeproj/project.pbxproj:
  90786. * html/CSSPreloadScanner.cpp:
  90787. (WebCore::CSSPreloadScanner::scan):
  90788. * html/CSSPreloadScanner.h:
  90789. * html/HTML5DocumentParser.cpp:
  90790. (WebCore::HTML5DocumentParser::HTML5DocumentParser):
  90791. (WebCore::HTML5DocumentParser::notifyFinished):
  90792. * html/HTML5DocumentParser.h:
  90793. * html/HTML5PreloadScanner.cpp:
  90794. (WebCore::HTMLNames::PreloadTask::PreloadTask):
  90795. (WebCore::HTMLNames::PreloadTask::processAttributes):
  90796. (WebCore::HTML5PreloadScanner::processToken):
  90797. * html/HTML5PreloadScanner.h:
  90798. * html/HTML5ScriptRunner.cpp: Removed.
  90799. * html/HTML5ScriptRunner.h: Removed.
  90800. * html/HTML5ScriptRunnerHost.h: Removed.
  90801. * html/HTML5Token.h: Removed.
  90802. * html/HTML5TreeBuilder.cpp:
  90803. (WebCore::convertToOldStyle):
  90804. (WebCore::HTML5TreeBuilder::handleScriptEndTag):
  90805. (WebCore::HTML5TreeBuilder::passTokenToLegacyParser):
  90806. (WebCore::HTML5TreeBuilder::constructTreeFromToken):
  90807. (WebCore::HTML5TreeBuilder::processToken):
  90808. * html/HTML5TreeBuilder.h:
  90809. * html/HTMLScriptRunner.cpp: Copied from WebCore/html/HTML5ScriptRunner.cpp.
  90810. (WebCore::HTMLScriptRunner::HTMLScriptRunner):
  90811. (WebCore::HTMLScriptRunner::~HTMLScriptRunner):
  90812. (WebCore::HTMLScriptRunner::sourceFromPendingScript):
  90813. (WebCore::HTMLScriptRunner::isPendingScriptReady):
  90814. (WebCore::HTMLScriptRunner::executePendingScript):
  90815. (WebCore::HTMLScriptRunner::executeScript):
  90816. (WebCore::HTMLScriptRunner::hasScriptsWaitingForLoad):
  90817. (WebCore::HTMLScriptRunner::watchForLoad):
  90818. (WebCore::HTMLScriptRunner::stopWatchingForLoad):
  90819. (WebCore::HTMLScriptRunner::execute):
  90820. (WebCore::HTMLScriptRunner::haveParsingBlockingScript):
  90821. (WebCore::HTMLScriptRunner::executeParsingBlockingScripts):
  90822. (WebCore::HTMLScriptRunner::executeScriptsWaitingForLoad):
  90823. (WebCore::HTMLScriptRunner::executeScriptsWaitingForStylesheets):
  90824. (WebCore::HTMLScriptRunner::requestScript):
  90825. (WebCore::HTMLScriptRunner::runScript):
  90826. * html/HTMLScriptRunner.h: Copied from WebCore/html/HTML5ScriptRunner.h.
  90827. * html/HTMLScriptRunnerHost.h: Copied from WebCore/html/HTML5ScriptRunnerHost.h.
  90828. (WebCore::HTMLScriptRunnerHost::~HTMLScriptRunnerHost):
  90829. * html/HTMLToken.h: Copied from WebCore/html/HTML5Token.h.
  90830. (WebCore::HTMLToken::HTMLToken):
  90831. * html/HTMLTokenizer.cpp:
  90832. (WebCore::HTMLTokenizer::nextToken):
  90833. (WebCore::HTMLTokenizer::emitCharacter):
  90834. (WebCore::HTMLTokenizer::emitCurrentToken):
  90835. (WebCore::HTMLTokenizer::shouldEmitBufferedCharacterToken):
  90836. * html/HTMLTokenizer.h:
  90837. 2010-06-23 Adam Barth <abarth@webkit.org>
  90838. Reviewed by Eric Seidel.
  90839. Rename HTML5EntityParser to HTMLEntityParser
  90840. https://bugs.webkit.org/show_bug.cgi?id=41048
  90841. Mostly the result of do-webcore-rename, but I tweaked the header guard
  90842. and the name of the free function.
  90843. * Android.mk:
  90844. * CMakeLists.txt:
  90845. * GNUmakefile.am:
  90846. * WebCore.gypi:
  90847. * WebCore.pro:
  90848. * WebCore.vcproj/WebCore.vcproj:
  90849. * WebCore.xcodeproj/project.pbxproj:
  90850. * html/HTML5EntityParser.cpp: Removed.
  90851. * html/HTML5EntityParser.h: Removed.
  90852. * html/HTMLEntityParser.cpp: Copied from WebCore/html/HTML5EntityParser.cpp.
  90853. (WebCore::consumeHTMLEntity):
  90854. * html/HTMLEntityParser.h: Copied from WebCore/html/HTML5EntityParser.h.
  90855. * html/HTMLTokenizer.cpp:
  90856. (WebCore::HTMLTokenizer::processEntity):
  90857. (WebCore::HTMLTokenizer::nextToken):
  90858. 2010-06-22 Yuta Kitamura <yutak@chromium.org>
  90859. Reviewed by Alexey Proskuryakov.
  90860. Add a new class that stores information about WebSocket handshake response.
  90861. In the future, instances of the new class will be passed to the Web Inspector
  90862. so that it will be able to display information about WebSocket handshake
  90863. response.
  90864. WebSocket: Add WebSocketHandshakeResponse
  90865. https://bugs.webkit.org/show_bug.cgi?id=38728
  90866. Test: websocket/tests/handshake-fail-by-no-cr.html
  90867. * GNUmakefile.am:
  90868. * WebCore.gypi:
  90869. * WebCore.pro:
  90870. * WebCore.vcproj/WebCore.vcproj:
  90871. * WebCore.xcodeproj/project.pbxproj:
  90872. * websockets/WebSocketHandshake.cpp:
  90873. (WebCore::trimConsoleMessage):
  90874. (WebCore::WebSocketHandshake::readServerHandshake):
  90875. (WebCore::WebSocketHandshake::serverHandshakeResponse):
  90876. (WebCore::WebSocketHandshake::readStatusLine): Moved from extractResponseCode.
  90877. Add more error checks and make error messages more descriptive.
  90878. (WebCore::WebSocketHandshake::readHTTPHeaders):
  90879. (WebCore::WebSocketHandshake::processHeaders):
  90880. * websockets/WebSocketHandshake.h:
  90881. * websockets/WebSocketHandshakeResponse.cpp: Added.
  90882. (WebCore::WebSocketHandshakeResponse::ChallengeResponse::ChallengeResponse):
  90883. (WebCore::WebSocketHandshakeResponse::ChallengeResponse::set):
  90884. (WebCore::WebSocketHandshakeResponse::WebSocketHandshakeResponse):
  90885. (WebCore::WebSocketHandshakeResponse::~WebSocketHandshakeResponse):
  90886. (WebCore::WebSocketHandshakeResponse::statusCode):
  90887. (WebCore::WebSocketHandshakeResponse::setStatusCode):
  90888. (WebCore::WebSocketHandshakeResponse::statusText):
  90889. (WebCore::WebSocketHandshakeResponse::setStatusText):
  90890. (WebCore::WebSocketHandshakeResponse::headerFields):
  90891. (WebCore::WebSocketHandshakeResponse::addHeaderField):
  90892. (WebCore::WebSocketHandshakeResponse::clearHeaderFields):
  90893. (WebCore::WebSocketHandshakeResponse::challengeResponse):
  90894. (WebCore::WebSocketHandshakeResponse::setChallengeResponse):
  90895. * websockets/WebSocketHandshakeResponse.h: Added.
  90896. 2010-06-23 Yuzo Fujishima <yuzo@google.com>
  90897. Reviewed by Shinichiro Hamaji.
  90898. Implement page format data programming interface.
  90899. The final goal is to implement CSS Paged Media Module Level 3 (http://dev.w3.org/csswg/css3-page/).
  90900. To begin with, this change adds methods to know:
  90901. - if page box is visible,
  90902. - the page area rectangle, and
  90903. - preferred page size.
  90904. https://bugs.webkit.org/show_bug.cgi?id=37538
  90905. Test: printing/page-format-data.html
  90906. * WebCore.base.exp:
  90907. * css/CSSParser.cpp:
  90908. (WebCore::CSSParser::parseSizeParameter):
  90909. * css/CSSStyleSelector.cpp:
  90910. (WebCore::CSSStyleSelector::applyProperty):
  90911. (WebCore::CSSStyleSelector::applyPageSizeProperty):
  90912. (WebCore::CSSStyleSelector::pageSizeFromName):
  90913. (WebCore::CSSStyleSelector::mmLength):
  90914. (WebCore::CSSStyleSelector::inchLength):
  90915. * css/CSSStyleSelector.h:
  90916. * css/html.css:
  90917. (@page):
  90918. * dom/Document.cpp:
  90919. (WebCore::Document::isPageBoxVisible):
  90920. (WebCore::Document::pageAreaRectInPixels):
  90921. (WebCore::Document::preferredPageSizeInPixels):
  90922. * dom/Document.h:
  90923. * page/PrintContext.cpp:
  90924. (WebCore::PrintContext::isPageBoxVisible):
  90925. (WebCore::PrintContext::pageAreaRectInPixels):
  90926. (WebCore::PrintContext::preferredPageSizeInPixels):
  90927. * page/PrintContext.h:
  90928. * rendering/style/RenderStyle.h:
  90929. (WebCore::InheritedFlags::pageSize):
  90930. (WebCore::InheritedFlags::setPageSize):
  90931. * rendering/style/StyleRareNonInheritedData.h:
  90932. 2010-06-23 Adam Barth <abarth@webkit.org>
  90933. Reviewed by Eric Seidel.
  90934. Rename lexer and m_lexer to tokenizer and m_tokenizer, respectively
  90935. https://bugs.webkit.org/show_bug.cgi?id=41046
  90936. This is a follow up to the recent HTML5Lexer => HTMLTokenizer rename.
  90937. * html/HTML5DocumentParser.cpp:
  90938. (WebCore::HTML5DocumentParser::HTML5DocumentParser):
  90939. (WebCore::HTML5DocumentParser::begin):
  90940. (WebCore::HTML5DocumentParser::pumpLexer):
  90941. (WebCore::HTML5DocumentParser::willPumpLexer):
  90942. (WebCore::HTML5DocumentParser::didPumpLexer):
  90943. (WebCore::HTML5DocumentParser::lineNumber):
  90944. (WebCore::HTML5DocumentParser::columnNumber):
  90945. * html/HTML5DocumentParser.h:
  90946. * html/HTML5PreloadScanner.cpp:
  90947. (WebCore::HTML5PreloadScanner::scan):
  90948. (WebCore::HTML5PreloadScanner::processToken):
  90949. * html/HTML5PreloadScanner.h:
  90950. * html/HTML5TreeBuilder.cpp:
  90951. (WebCore::HTML5TreeBuilder::HTML5TreeBuilder):
  90952. (WebCore::HTML5TreeBuilder::handleScriptStartTag):
  90953. (WebCore::HTML5TreeBuilder::passTokenToLegacyParser):
  90954. * html/HTML5TreeBuilder.h:
  90955. * html/HTMLTokenizer.h:
  90956. * html/LegacyHTMLDocumentParser.h:
  90957. 2010-06-23 Nikolas Zimmermann <nzimmermann@rim.com>
  90958. Reviewed by Eric Seidel.
  90959. Reproducible crash in com.apple.WebCore 0x01ed3784 WebCore::RenderLineBoxList::appendLineBox(WebCore::InlineFlowBox*) + 36
  90960. https://bugs.webkit.org/show_bug.cgi?id=40953
  90961. REGRESSION (r58209-58231): Memory corruption with invalid SVG
  90962. https://bugs.webkit.org/show_bug.cgi?id=40173
  90963. Fix several crashes, all related to <foreignObject> and/or invalid SVG documents.
  90964. - Only allow <svg> nodes, as direct children of a <foreignObject>, not any other "partial" SVG content.
  90965. - Assure to create RenderSVGRoot objects for <svg> nodes in <foreignObject>, treat them as "outermost SVG elements".
  90966. - Never allow any partial SVG content to appear in any document. Only <svg> elements are allowed.
  90967. Tests: svg/custom/bug45331.svg
  90968. svg/foreignObject/disallowed-svg-nodes-as-direct-children.svg
  90969. svg/foreignObject/no-crash-with-svg-content-in-html-document.svg
  90970. svg/foreignObject/svg-document-as-direct-child.svg
  90971. svg/foreignObject/svg-document-in-html-document.svg
  90972. svg/foreignObject/text-tref-02-b.svg
  90973. * dom/Element.cpp: Added childShouldCreateRenderer, with ENABLE(SVG) guards.
  90974. (WebCore::Element::childShouldCreateRenderer): Only create a renderer for a SVG child, if we're a SVG element, or if the child is a <svg> element.
  90975. * dom/Element.h: Added childShouldCreateRenderer, with ENABLE(SVG) guards.
  90976. * svg/SVGForeignObjectElement.cpp:
  90977. (WebCore::SVGForeignObjectElement::childShouldCreateRenderer): Disallow arbitary SVG content, only <svg> elements are allowed as direct children of a <foreignObject>
  90978. * svg/SVGSVGElement.cpp:
  90979. (WebCore::SVGSVGElement::isOutermostSVG): Be sure to create RenderSVGRoot objects for <svg> elements inside <foreignObject>
  90980. 2010-06-22 Adam Barth <abarth@webkit.org>
  90981. Reviewed by Eric Seidel.
  90982. Rename HTML5Lexer to HTMLTokenizer
  90983. https://bugs.webkit.org/show_bug.cgi?id=41045
  90984. This might be slightly confusing given that the old class was called
  90985. HTMLTokenizer, but it matches the terminology in the HTML5 spec.
  90986. * Android.mk:
  90987. * CMakeLists.txt:
  90988. * GNUmakefile.am:
  90989. * WebCore.gypi:
  90990. * WebCore.pro:
  90991. * WebCore.vcproj/WebCore.vcproj:
  90992. * WebCore.xcodeproj/project.pbxproj:
  90993. * html/HTML5DocumentParser.cpp:
  90994. (WebCore::HTML5DocumentParser::HTML5DocumentParser):
  90995. (WebCore::HTML5DocumentParser::pumpLexer):
  90996. * html/HTML5DocumentParser.h:
  90997. * html/HTML5Lexer.cpp: Removed.
  90998. * html/HTML5Lexer.h: Removed.
  90999. * html/HTML5PreloadScanner.cpp:
  91000. (WebCore::HTML5PreloadScanner::processToken):
  91001. * html/HTML5PreloadScanner.h:
  91002. * html/HTML5TreeBuilder.cpp:
  91003. (WebCore::HTML5TreeBuilder::HTML5TreeBuilder):
  91004. (WebCore::HTML5TreeBuilder::handleScriptStartTag):
  91005. (WebCore::HTML5TreeBuilder::adjustedLexerState):
  91006. * html/HTML5TreeBuilder.h:
  91007. * html/HTMLTokenizer.cpp: Copied from WebCore/html/HTML5Lexer.cpp.
  91008. (WebCore::HTMLNames::isEndTagBufferingState):
  91009. (WebCore::HTMLTokenizer::HTMLTokenizer):
  91010. (WebCore::HTMLTokenizer::~HTMLTokenizer):
  91011. (WebCore::HTMLTokenizer::reset):
  91012. (WebCore::HTMLTokenizer::processEntity):
  91013. (WebCore::HTMLTokenizer::nextToken):
  91014. (WebCore::HTMLTokenizer::temporaryBufferIs):
  91015. (WebCore::HTMLTokenizer::addToPossibleEndTag):
  91016. (WebCore::HTMLTokenizer::isAppropriateEndTag):
  91017. (WebCore::HTMLTokenizer::emitCharacter):
  91018. (WebCore::HTMLTokenizer::emitCodePoint):
  91019. (WebCore::HTMLTokenizer::emitParseError):
  91020. (WebCore::HTMLTokenizer::emitCurrentToken):
  91021. (WebCore::HTMLTokenizer::shouldEmitBufferedCharacterToken):
  91022. * html/HTMLTokenizer.h: Copied from WebCore/html/HTML5Lexer.h.
  91023. 2010-06-22 Simon Hausmann <simon.hausmann@nokia.com>
  91024. Unreviewed Qt/Symbian build fix.
  91025. Fix "make clean" to not try to execute clean commands for
  91026. the extra targets we use to simulate "make install".
  91027. * WebCore.pro: Use no_clean in CONFIG of extra compilers.
  91028. 2010-06-22 Eric Seidel <eric@webkit.org>
  91029. Reviewed by Adam Barth.
  91030. Run clean-header-guards to fix some header guards
  91031. https://bugs.webkit.org/show_bug.cgi?id=41044
  91032. No functional changes, thus no tests.
  91033. This entire change was generated by running
  91034. clean-header-guards, and then reverting changes
  91035. to files which shouldn't be changed. Those which
  91036. are left all should be updated.
  91037. Some of these changes are just fixing 755 permissions
  91038. to be 644, since it seems various files have the wrong
  91039. execute bit which don't need it. clean-header-guards
  91040. made those (welcome) permission fixes unintentionally.
  91041. * bindings/v8/custom/V8HTMLAudioElementConstructor.h:
  91042. * bindings/v8/custom/V8HTMLImageElementConstructor.h:
  91043. * bindings/v8/custom/V8HTMLOptionElementConstructor.h:
  91044. * dom/Touch.h:
  91045. * dom/TouchList.h:
  91046. * dom/XMLDocumentParser.h:
  91047. * dom/XMLDocumentParserScope.h:
  91048. * html/HTML5DocumentParser.h:
  91049. * html/LegacyHTMLTreeConstructor.h:
  91050. * loader/CrossOriginPreflightResultCache.h:
  91051. * page/OriginAccessEntry.h:
  91052. * page/win/FrameWin.h:
  91053. * platform/ThreadTimers.h:
  91054. * platform/chromium/KeyboardCodes.h:
  91055. * platform/graphics/chromium/FontPlatformDataChromiumWin.h:
  91056. * platform/graphics/chromium/FontUtilsChromiumWin.h:
  91057. * platform/graphics/filters/FEBlend.h:
  91058. * platform/graphics/filters/FEColorMatrix.h:
  91059. * platform/graphics/filters/FEComponentTransfer.h:
  91060. * platform/graphics/filters/FEComposite.h:
  91061. * platform/graphics/gstreamer/DataSourceGStreamer.h:
  91062. * platform/graphics/gstreamer/VideoSinkGStreamer.h:
  91063. - I checked, this crazy define was not referenced
  91064. anywhere else. It's safe to change the name. :)
  91065. * platform/graphics/haiku/FontPlatformData.h:
  91066. * platform/graphics/qt/FontCustomPlatformData.h:
  91067. * platform/graphics/skia/SkiaFontWin.h:
  91068. * platform/graphics/win/GraphicsLayerCACF.h:
  91069. * platform/graphics/win/QTMovieWinTimer.h:
  91070. * platform/graphics/win/RefCountedGDIHandle.h:
  91071. * platform/graphics/win/WebLayer.h:
  91072. * platform/graphics/win/WebTiledLayer.h:
  91073. * platform/graphics/wince/FontPlatformData.h:
  91074. * platform/graphics/wx/FontPlatformData.h:
  91075. * platform/network/CredentialStorage.h:
  91076. * platform/network/cf/FormDataStreamCFNet.h:
  91077. * platform/network/curl/FormDataStreamCurl.h:
  91078. * platform/network/qt/DnsPrefetchHelper.h:
  91079. * platform/network/qt/QNetworkReplyHandler.h:
  91080. * platform/win/PlatformScrollBar.h:
  91081. * plugins/PluginDatabase.h:
  91082. * plugins/PluginPackage.h:
  91083. * plugins/PluginStream.h:
  91084. * plugins/qt/PluginContainerQt.h:
  91085. * plugins/symbian/npinterface.h:
  91086. * rendering/RenderSelectionInfo.h:
  91087. * rendering/SVGRenderSupport.h:
  91088. * storage/IDBObjectStoreImpl.h:
  91089. * svg/animation/SMILTimeContainer.h:
  91090. * wml/WMLErrorHandling.h:
  91091. 2010-06-22 Adam Barth <abarth@webkit.org>
  91092. Reviewed by Eric Seidel.
  91093. Rename HTMLDocumentParser to LegacyHTMLDocumentParser
  91094. https://bugs.webkit.org/show_bug.cgi?id=41043
  91095. As requested by Darin Adler.
  91096. * Android.mk:
  91097. * CMakeLists.txt:
  91098. * GNUmakefile.am:
  91099. * WebCore.gypi:
  91100. * WebCore.pro:
  91101. * WebCore.vcproj/WebCore.vcproj:
  91102. * WebCore.xcodeproj/project.pbxproj:
  91103. * css/CSSStyleSheet.cpp:
  91104. (WebCore::CSSStyleSheet::checkLoaded):
  91105. * dom/Document.cpp:
  91106. (WebCore::Document::write):
  91107. * dom/DocumentFragment.cpp:
  91108. * dom/DocumentParser.h:
  91109. (WebCore::DocumentParser::asHTMLDocumentParser):
  91110. * dom/XMLDocumentParserLibxml2.cpp:
  91111. * dom/XMLDocumentParserQt.cpp:
  91112. * html/HTML5Lexer.h:
  91113. (WebCore::HTML5Lexer::columnNumber):
  91114. * html/HTML5TreeBuilder.cpp:
  91115. * html/HTMLDocument.cpp:
  91116. (WebCore::HTMLDocument::createParser):
  91117. * html/HTMLDocumentParser.cpp: Removed.
  91118. * html/HTMLDocumentParser.h: Removed.
  91119. * html/HTMLFormControlElement.cpp:
  91120. * html/HTMLParserScheduler.cpp:
  91121. (WebCore::parserChunkSize):
  91122. * html/HTMLViewSourceDocument.cpp:
  91123. (WebCore::HTMLViewSourceDocument::createParser):
  91124. (WebCore::HTMLViewSourceDocument::addViewSourceToken):
  91125. * html/HTMLViewSourceDocument.h:
  91126. * html/LegacyHTMLDocumentParser.cpp: Copied from WebCore/html/HTMLDocumentParser.cpp.
  91127. (WebCore::LegacyHTMLDocumentParser::LegacyHTMLDocumentParser):
  91128. (WebCore::LegacyHTMLDocumentParser::reset):
  91129. (WebCore::LegacyHTMLDocumentParser::begin):
  91130. (WebCore::LegacyHTMLDocumentParser::setForceSynchronous):
  91131. (WebCore::LegacyHTMLDocumentParser::processListing):
  91132. (WebCore::LegacyHTMLDocumentParser::parseNonHTMLText):
  91133. (WebCore::LegacyHTMLDocumentParser::scriptHandler):
  91134. (WebCore::LegacyHTMLDocumentParser::scriptExecution):
  91135. (WebCore::LegacyHTMLDocumentParser::parseComment):
  91136. (WebCore::LegacyHTMLDocumentParser::parseServer):
  91137. (WebCore::LegacyHTMLDocumentParser::parseProcessingInstruction):
  91138. (WebCore::LegacyHTMLDocumentParser::parseText):
  91139. (WebCore::LegacyHTMLDocumentParser::parseEntity):
  91140. (WebCore::LegacyHTMLDocumentParser::parseDoctype):
  91141. (WebCore::LegacyHTMLDocumentParser::parseTag):
  91142. (WebCore::LegacyHTMLDocumentParser::continueProcessing):
  91143. (WebCore::LegacyHTMLDocumentParser::advance):
  91144. (WebCore::LegacyHTMLDocumentParser::willWriteHTML):
  91145. (WebCore::LegacyHTMLDocumentParser::didWriteHTML):
  91146. (WebCore::LegacyHTMLDocumentParser::write):
  91147. (WebCore::LegacyHTMLDocumentParser::stopParsing):
  91148. (WebCore::LegacyHTMLDocumentParser::processingData):
  91149. (WebCore::LegacyHTMLDocumentParser::timerFired):
  91150. (WebCore::LegacyHTMLDocumentParser::end):
  91151. (WebCore::LegacyHTMLDocumentParser::finish):
  91152. (WebCore::LegacyHTMLDocumentParser::finishWasCalled):
  91153. (WebCore::LegacyHTMLDocumentParser::processToken):
  91154. (WebCore::LegacyHTMLDocumentParser::processDoctypeToken):
  91155. (WebCore::LegacyHTMLDocumentParser::~LegacyHTMLDocumentParser):
  91156. (WebCore::LegacyHTMLDocumentParser::enlargeBuffer):
  91157. (WebCore::LegacyHTMLDocumentParser::enlargeScriptBuffer):
  91158. (WebCore::LegacyHTMLDocumentParser::executeScriptsWaitingForStylesheets):
  91159. (WebCore::LegacyHTMLDocumentParser::notifyFinished):
  91160. (WebCore::LegacyHTMLDocumentParser::executeExternalScriptsIfReady):
  91161. (WebCore::LegacyHTMLDocumentParser::executeExternalScriptsTimerFired):
  91162. (WebCore::LegacyHTMLDocumentParser::continueExecutingExternalScripts):
  91163. (WebCore::LegacyHTMLDocumentParser::isWaitingForScripts):
  91164. (WebCore::LegacyHTMLDocumentParser::setSrc):
  91165. (WebCore::parseLegacyHTMLDocumentFragment):
  91166. * html/LegacyHTMLDocumentParser.h: Copied from WebCore/html/HTMLDocumentParser.h.
  91167. (WebCore::LegacyHTMLDocumentParser::asHTMLDocumentParser):
  91168. * html/LegacyHTMLTreeConstructor.cpp:
  91169. (WebCore::LegacyHTMLTreeConstructor::reportErrorToConsole):
  91170. * html/LegacyHTMLTreeConstructor.h:
  91171. * loader/FTPDirectoryDocument.cpp:
  91172. (WebCore::FTPDirectoryDocumentParser::FTPDirectoryDocumentParser):
  91173. (WebCore::FTPDirectoryDocumentParser::loadDocumentTemplate):
  91174. (WebCore::FTPDirectoryDocumentParser::finish):
  91175. * page/XSSAuditor.h:
  91176. 2010-06-22 Shinichiro Hamaji <hamaji@chromium.org>
  91177. Unreviewed attempt to fix the windows build.
  91178. Split out HTML5DocumentParser yield/resume logic into a separate class
  91179. https://bugs.webkit.org/show_bug.cgi?id=41018
  91180. * WebCore.vcproj/WebCore.vcproj:
  91181. 2010-06-22 Eric Seidel <eric@webkit.org>
  91182. Reviewed by Adam Barth.
  91183. Split out HTML5DocumentParser yield/resume logic into a separate class
  91184. https://bugs.webkit.org/show_bug.cgi?id=41018
  91185. The HTML5DocumentParser is just the coordinator, and shouldn't have
  91186. any real parsing logic of his own. Continuing along that path, I'm
  91187. moving the when-to-yield/resume logic out into a separate class.
  91188. I could have create a new HTMLParserSchedulerHost virtual interface
  91189. to allow the HTMLParserScheduler to talk back to the
  91190. HTML5DocumentParser, but instead I just exposed the one method it
  91191. needs (resumeParsing()) as a public method. Since no code besides
  91192. HTMLDocument (and DocumentFrament) ever should know about the
  91193. HTML5DocumentParser DocumentParser subclass, no class should ever
  91194. see the resumeParsing() method anyway.
  91195. Most of this change is just moving code from HTML5DocumentParser
  91196. to the new HTMLParserScheduler.
  91197. Some of this change is wrapping previous direct access to
  91198. m_continueNextChunkTimer.isActive() with isScheduledForResume().
  91199. * Android.mk:
  91200. * CMakeLists.txt:
  91201. * GNUmakefile.am:
  91202. * WebCore.gypi:
  91203. * WebCore.pro:
  91204. * WebCore.xcodeproj/project.pbxproj:
  91205. * html/HTML5DocumentParser.cpp:
  91206. (WebCore::HTML5DocumentParser::HTML5DocumentParser):
  91207. (WebCore::HTML5DocumentParser::stopParsing):
  91208. (WebCore::HTML5DocumentParser::processingData):
  91209. (WebCore::HTML5DocumentParser::pumpLexerIfPossible):
  91210. (WebCore::HTML5DocumentParser::isScheduledForResume):
  91211. (WebCore::HTML5DocumentParser::resumeParsing):
  91212. (WebCore::HTML5DocumentParser::pumpLexer):
  91213. (WebCore::HTML5DocumentParser::end):
  91214. (WebCore::HTML5DocumentParser::attemptToEnd):
  91215. (WebCore::HTML5DocumentParser::endIfDelayed):
  91216. * html/HTML5DocumentParser.h:
  91217. (WebCore::HTML5DocumentParser::document):
  91218. - Exposed for HTMLParserScheduler.
  91219. * html/HTMLParserScheduler.cpp: Added.
  91220. (WebCore::parserTimeLimit): Moved from HTML5DocumentParser.
  91221. (WebCore::parserChunkSize): ditto.
  91222. (WebCore::HTMLParserScheduler::HTMLParserScheduler):
  91223. (WebCore::HTMLParserScheduler::~HTMLParserScheduler):
  91224. (WebCore::isLayoutTimerActive):
  91225. (WebCore::HTMLParserScheduler::continueNextChunkTimerFired):
  91226. - Moved from HTML5DocumentParser.
  91227. * html/HTMLParserScheduler.h: Added.
  91228. (WebCore::HTMLParserScheduler::PumpSession::PumpSession):
  91229. - Moved from HTML5DocumentParser.
  91230. (WebCore::HTMLParserScheduler::shouldContinueParsing):
  91231. (WebCore::HTMLParserScheduler::isScheduledForResume):
  91232. 2010-06-22 Pavel Feldman <pfeldman@chromium.org>
  91233. Reviewed by Yury Semikhatsky.
  91234. Web Inspector: move nodeByPath from InjectedScript to InspectorBackend.
  91235. https://bugs.webkit.org/show_bug.cgi?id=40988
  91236. * inspector/InjectedScriptHost.cpp:
  91237. * inspector/InjectedScriptHost.h:
  91238. * inspector/InjectedScriptHost.idl:
  91239. * inspector/InspectorBackend.cpp:
  91240. (WebCore::InspectorBackend::pushNodeByPathToFrontend):
  91241. * inspector/InspectorBackend.h:
  91242. * inspector/InspectorBackend.idl:
  91243. * inspector/InspectorDOMAgent.cpp:
  91244. (WebCore::InspectorDOMAgent::pushNodeByPathToFrontend):
  91245. (WebCore::InspectorDOMAgent::nodeForPath):
  91246. * inspector/InspectorDOMAgent.h:
  91247. * inspector/InspectorFrontend.cpp:
  91248. (WebCore::InspectorFrontend::didPushNodeByPathToFrontend):
  91249. * inspector/InspectorFrontend.h:
  91250. * inspector/front-end/DOMAgent.js:
  91251. * inspector/front-end/ElementsPanel.js:
  91252. (WebInspector.ElementsPanel.prototype.setDocument):
  91253. * inspector/front-end/InjectedScript.js:
  91254. * inspector/front-end/InjectedScriptAccess.js:
  91255. 2010-06-22 David Levin <levin@chromium.org>
  91256. Reviewed by Alexey Proskuryakov.
  91257. REGRESSION: (r47291): Upload progress events are not fired for simple cross-site XHR.
  91258. https://bugs.webkit.org/show_bug.cgi?id=39029
  91259. Specifically, WebKit should fire upload events if one or more event listeners are
  91260. registered on the XMLHttpRequestUpload object when send is called in an async manner.
  91261. * xml/XMLHttpRequest.cpp:
  91262. (WebCore::XMLHttpRequest::createRequest): Allow upload events to be fired when there are
  91263. handlers for them in the cross-origin simple request case.
  91264. 2010-06-22 Kent Tamura <tkent@chromium.org>
  91265. Reviewed by Adam Barth.
  91266. Fix uninitialized SubframeLoader::m_containsPlugins
  91267. https://bugs.webkit.org/show_bug.cgi?id=41035
  91268. * loader/SubframeLoader.cpp:
  91269. (WebCore::SubframeLoader::SubframeLoader):
  91270. Initialize m_containsPlugins with false.
  91271. 2010-06-22 Kinuko Yasuda <kinuko@chromium.org>
  91272. Reviewed by Adam Barth.
  91273. Add BlobBuilder.idl to expose BlobBuilder interface
  91274. https://bugs.webkit.org/show_bug.cgi?id=40593
  91275. (Resubmitting with the correct file set.)
  91276. BlobBuilder is defined in FileAPI's FileWriter spec.
  91277. (http://dev.w3.org/2009/dap/file-system/file-writer.html)
  91278. Also removes the ENABLE_FILE_WRITER ifdef guard for BlobBuilder.
  91279. Tests: http/tests/local/blob/send-data-blob.html
  91280. http/tests/local/blob/send-hybrid-blob.html
  91281. http/tests/local/blob/send-sliced-data-blob.html
  91282. * Android.derived.jscbindings.mk:
  91283. * Android.derived.v8bindings.mk:
  91284. * CMakeLists.txt:
  91285. * DerivedSources.cpp:
  91286. * DerivedSources.make:
  91287. * GNUmakefile.am:
  91288. * WebCore.gypi:
  91289. * WebCore.pri:
  91290. * WebCore.pro:
  91291. * WebCore.vcproj/WebCore.vcproj:
  91292. * WebCore.xcodeproj/project.pbxproj:
  91293. * html/BlobBuilder.cpp:
  91294. (WebCore::BlobBuilder::append):
  91295. * html/BlobBuilder.h:
  91296. * html/BlobBuilder.idl: Added.
  91297. * page/DOMWindow.idl:
  91298. 2010-06-22 Kent Tamura <tkent@chromium.org>
  91299. Unreviewed, build fix for r61648.
  91300. * platform/graphics/GraphicsContext3D.h:
  91301. 2010-06-22 Vangelis Kokkevis <vangelis@chromium.org>
  91302. Reviewed by Kent Tamura.
  91303. Define GraphicsContext3D::platformLayer() for all remaining (non PLATFORM(MAC))
  91304. ports to get RenderLayerBacking.cpp compiling again.
  91305. https://bugs.webkit.org/show_bug.cgi?id=41026
  91306. * platform/graphics/GraphicsContext3D.h:
  91307. (WebCore::GraphicsContext3D::platformLayer):
  91308. 2010-06-22 Eric Seidel <eric@webkit.org>
  91309. Unreviewed. Rolling out http://trac.webkit.org/changeset/61638
  91310. made a few tests crash.
  91311. Make PendingScript hold a CachedResourceClient open for its lifetime
  91312. https://bugs.webkit.org/show_bug.cgi?id=40968
  91313. * html/HTML5DocumentParser.cpp:
  91314. (WebCore::HTML5DocumentParser::watchForLoad):
  91315. (WebCore::HTML5DocumentParser::notifyFinished):
  91316. * html/HTML5ScriptRunner.cpp:
  91317. (WebCore::HTML5ScriptRunner::~HTML5ScriptRunner):
  91318. (WebCore::HTML5ScriptRunner::sourceFromPendingScript):
  91319. (WebCore::HTML5ScriptRunner::isPendingScriptReady):
  91320. (WebCore::HTML5ScriptRunner::executePendingScript):
  91321. (WebCore::HTML5ScriptRunner::hasScriptsWaitingForLoad):
  91322. (WebCore::HTML5ScriptRunner::watchForLoad):
  91323. (WebCore::HTML5ScriptRunner::stopWatchingForLoad):
  91324. (WebCore::HTML5ScriptRunner::executeScriptsWaitingForLoad):
  91325. (WebCore::HTML5ScriptRunner::executeScriptsWaitingForStylesheets):
  91326. (WebCore::HTML5ScriptRunner::requestScript):
  91327. * html/HTML5ScriptRunner.h:
  91328. (WebCore::HTML5ScriptRunner::PendingScript::):
  91329. (WebCore::HTML5ScriptRunner::PendingScript::PendingScript):
  91330. (WebCore::HTML5ScriptRunner::PendingScript::watchingForLoad):
  91331. * html/HTML5ScriptRunnerHost.h:
  91332. 2010-06-22 Adele Peterson <adele@apple.com>
  91333. Reviewed by Darin Adler.
  91334. Fix for Crash when the renderer for the button in <input type="number"> goes away during event handling
  91335. https://bugs.webkit.org/show_bug.cgi?id=41013
  91336. Test: fast/forms/input-number-crash.html
  91337. * rendering/TextControlInnerElements.cpp: (WebCore::SpinButtonElement::defaultEventHandler):
  91338. Nil check the RenderBox since its possible the renderer has gone away during event handling.
  91339. 2010-06-22 Tony Gentilcore <tonyg@chromium.org>
  91340. Reviewed by Eric Seidel.
  91341. Pull script line number from DocumentParser instead of pushing it to ScriptController
  91342. https://bugs.webkit.org/show_bug.cgi?id=40649
  91343. This approach is cleaner and improves WebCore/benchmarks/parser/html-parser.html by ~2%.
  91344. Tests: fast/js/script-line-number.html
  91345. * bindings/js/ScriptController.cpp:
  91346. (WebCore::ScriptController::ScriptController):
  91347. (WebCore::ScriptController::eventHandlerLineNumber):
  91348. * bindings/js/ScriptController.h:
  91349. * bindings/v8/ScriptController.cpp:
  91350. (WebCore::ScriptController::eventHandlerLineNumber):
  91351. (WebCore::ScriptController::eventHandlerColumnNumber):
  91352. * bindings/v8/ScriptController.h:
  91353. * bindings/v8/ScriptEventListener.cpp:
  91354. (WebCore::createAttributeEventListener):
  91355. * bindings/v8/V8Proxy.h:
  91356. * dom/XMLDocumentParserLibxml2.cpp:
  91357. (WebCore::XMLDocumentParser::startElementNs):
  91358. * html/HTML5DocumentParser.cpp:
  91359. (WebCore::HTML5DocumentParser::pumpLexer):
  91360. * html/HTMLDocumentParser.cpp:
  91361. (WebCore::HTMLDocumentParser::processToken):
  91362. 2010-06-22 Tony Gentilcore <tonyg@chromium.org>
  91363. Reviewed by Eric Seidel.
  91364. Make PendingScript hold a CachedResourceClient open for its lifetime
  91365. https://bugs.webkit.org/show_bug.cgi?id=40968
  91366. This replaces the mechanism introduced in r61374 with a simpler
  91367. approach from preventing unexpected purges; always keep a client open.
  91368. This will approach will allow deferred scripts to add a client after
  91369. the resource may have already been loaded without having to worry about
  91370. the buffer being purged in the meantime.
  91371. No new tests because making a CachedResource purge itself is not
  91372. testable from a LayoutTest.
  91373. * html/HTML5DocumentParser.cpp:
  91374. (WebCore::HTML5DocumentParser::watchForLoad):
  91375. (WebCore::HTML5DocumentParser::notifyFinished):
  91376. * html/HTML5ScriptRunner.cpp:
  91377. (WebCore::HTML5ScriptRunner::~HTML5ScriptRunner):
  91378. (WebCore::HTML5ScriptRunner::sourceFromPendingScript):
  91379. (WebCore::HTML5ScriptRunner::isPendingScriptReady):
  91380. (WebCore::HTML5ScriptRunner::executePendingScript):
  91381. (WebCore::HTML5ScriptRunner::watchForLoad):
  91382. (WebCore::HTML5ScriptRunner::stopWatchingForLoad):
  91383. (WebCore::HTML5ScriptRunner::executeScriptsWaitingForLoad):
  91384. (WebCore::HTML5ScriptRunner::executeScriptsWaitingForStylesheets):
  91385. (WebCore::HTML5ScriptRunner::requestScript):
  91386. * html/HTML5ScriptRunner.h:
  91387. (WebCore::HTML5ScriptRunner::PendingScript::PendingScript):
  91388. (WebCore::HTML5ScriptRunner::PendingScript::~PendingScript):
  91389. (WebCore::HTML5ScriptRunner::PendingScript::setCachedScript):
  91390. (WebCore::HTML5ScriptRunner::PendingScript::cachedScript):
  91391. (WebCore::HTML5ScriptRunner::PendingScript::notifyFinished):
  91392. * html/HTML5ScriptRunnerHost.h:
  91393. 2010-06-22 Eric Seidel <eric@webkit.org>
  91394. Reviewed by Adam Barth.
  91395. Fragment parsing needs to go through the HTML5 Parser code path
  91396. https://bugs.webkit.org/show_bug.cgi?id=40645
  91397. Added a new HTML5DocumentParser::parseHTMLDocumentFragment
  91398. codepath which optionally calls through to the old fragment
  91399. parsing path, now renamed parseLegacyHTMLDocumentFragment.
  91400. * dom/Element.cpp:
  91401. (WebCore::Element::createContextualFragment):
  91402. - Use document()->createDocumentFragment() instead
  91403. of DocumentFragment::create() to match other callers
  91404. (and not depend on DocumentFragment.h).
  91405. - Update call to parseHTMLDocumentFragment to use the new
  91406. HTML5 parser codepath.
  91407. * dom/MappedAttributeEntry.h:
  91408. - Add a FIXME about this horrible enum placement.
  91409. Sadly this will cause a world-rebuild for everyone.
  91410. * html/HTML5DocumentParser.cpp:
  91411. (WebCore::HTML5DocumentParser::HTML5DocumentParser):
  91412. (WebCore::HTML5DocumentParser::runScriptsForPausedTreeConstructor):
  91413. - The main pumpLexer function has gotten to large. Move the script
  91414. running logic into this new function.
  91415. - Handle the case where we have no m_scriptRunner (fragment case).
  91416. (WebCore::HTML5DocumentParser::pumpLexer):
  91417. - Use new runScriptsForPausedTreeConstructor().
  91418. (WebCore::HTML5DocumentParser::executingScript):
  91419. (WebCore::HTML5DocumentParser::inScriptExecution):
  91420. - New function to handle the case where m_scriptRunner is null.
  91421. (WebCore::HTML5DocumentParser::resumeParsingAfterScriptExecution):
  91422. - Use inScriptExecution() instead of m_scriptRunner->inScriptExecution().
  91423. (WebCore::HTML5DocumentParser::executeScript): ditto.
  91424. (WebCore::HTML5DocumentParser::notifyFinished): ditto.
  91425. (WebCore::HTML5DocumentParser::executeScriptsWaitingForStylesheets): ditto.
  91426. (WebCore::shouldUseLegacyParser):
  91427. - Helper function to check the html5ParserEnabled() setting.
  91428. (WebCore::HTML5DocumentParser::parseHTMLDocumentFragment):
  91429. - Run HTML5DocumentParser in fragment mode, or optionally run
  91430. the legacy parser if !html5ParserEnabled().
  91431. * html/HTML5DocumentParser.h:
  91432. * html/HTML5TreeBuilder.cpp:
  91433. (WebCore::HTML5TreeBuilder::HTML5TreeBuilder):
  91434. (WebCore::HTML5TreeBuilder::passTokenToLegacyParser):
  91435. - Implement the FragmentScriptingNotAllowed hack for platform/Pasteboard.
  91436. * html/HTML5TreeBuilder.h:
  91437. * html/HTMLDocumentParser.cpp:
  91438. (WebCore::parseLegacyHTMLDocumentFragment):
  91439. - Renamed from parseHTMLDocumentFragment
  91440. * html/HTMLDocumentParser.h:
  91441. * html/HTMLElement.cpp:
  91442. (WebCore::HTMLElement::insertAdjacentHTML):
  91443. - Call HTML5DocumentParser::parseHTMLDocumentFragment.
  91444. * platform/mac/PasteboardMac.mm:
  91445. (WebCore::Pasteboard::documentFragment): ditto.
  91446. * xml/XSLTProcessor.cpp:
  91447. (WebCore::createFragmentFromSource): ditto.
  91448. 2010-06-22 Chris Marrin <cmarrin@apple.com>
  91449. Reviewed by Simon Fraser.
  91450. https://bugs.webkit.org/show_bug.cgi?id=40643
  91451. Final phase of moving ownership of WebGLLayer to GraphicsContext3D.
  91452. As it turns out, I still have to have a separate CGLContextObj for
  91453. rendering because Core Animation composites in a separate thread,
  91454. so we need to disconnect WebGL rendering from CA compositing. But
  91455. this change is still worthwhile because it reduces dependencies
  91456. and makes it easier to port WebGL to other platforms.
  91457. No new tests since this is just restructuring and the current tests
  91458. are all still valid and do a sufficient test of WebGL functionality.
  91459. * platform/graphics/GraphicsContext3D.h:
  91460. (WebCore::GraphicsContext3D::platformLayer):
  91461. * platform/graphics/GraphicsLayer.h:
  91462. (WebCore::GraphicsLayer::setContentsToWebGL):
  91463. (WebCore::GraphicsLayer::setWebGLNeedsDisplay):
  91464. * platform/graphics/mac/GraphicsContext3DMac.mm: Add creation of WebGLLayer
  91465. (WebCore::GraphicsContext3D::GraphicsContext3D):
  91466. * platform/graphics/mac/GraphicsLayerCA.h:
  91467. (WebCore::GraphicsLayerCA::):
  91468. * platform/graphics/mac/GraphicsLayerCA.mm: Handle setting of WebGLLayer as content the same as for MediaLayer. Also changed WebGL related names for clarity
  91469. (WebCore::GraphicsLayerCA::GraphicsLayerCA):
  91470. (WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers):
  91471. (WebCore::GraphicsLayerCA::updateContentsWebGLLayer):
  91472. (WebCore::GraphicsLayerCA::setContentsToWebGL):
  91473. (WebCore::GraphicsLayerCA::setWebGLNeedsDisplay):
  91474. * platform/graphics/mac/WebGLLayer.h:
  91475. * platform/graphics/mac/WebGLLayer.mm: Got rid of storage for context and texture, now just store GraphicsContext3D and get them from there when needed
  91476. (-[WebGLLayer copyCGLPixelFormatForDisplayMask:]):
  91477. (-[WebGLLayer copyCGLContextForPixelFormat:]):
  91478. (-[WebGLLayer drawInCGLContext:pixelFormat:forLayerTime:displayTime:]):
  91479. (-[WebGLLayer copyImageSnapshotWithColorSpace:]):
  91480. * rendering/RenderLayerBacking.cpp: Changed init of WebGL contentsLayer to pass WebGLLayer rather than GraphicsContext3D
  91481. (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
  91482. (WebCore::RenderLayerBacking::rendererContentChanged):
  91483. 2010-06-22 Darin Adler <darin@apple.com>
  91484. Reviewed by Dave Hyatt.
  91485. * html/HTMLTableCellElement.cpp:
  91486. (WebCore::HTMLTableCellElement::parseMappedAttribute): Removed incorrect FIXME comments.
  91487. 2010-06-22 Dan Bernstein <mitz@apple.com>
  91488. Reviewed by Anders Carlsson.
  91489. <rdar://problem/8119403> REGRESSION (r61548): PLT is almost 1.5% slower, Google page cycler slower
  91490. https://bugs.webkit.org/show_bug.cgi?id=41012
  91491. * rendering/RenderBlockLineLayout.cpp:
  91492. (WebCore::RenderBlock::computeHorizontalPositionsForLine): Removed a redundant statement that was
  91493. left over in the original patch and resulted in double the calls to RenderText::width() here.
  91494. (WebCore::RenderBlock::findNextLineBreak): Changed the order of evaluating conditions for a
  91495. potential speedup.
  91496. 2010-06-22 Darin Adler <darin@apple.com>
  91497. Reviewed by Alexey Proskuryakov.
  91498. Alexey asked me to take out the autorelease pools because he believes
  91499. that there is no code that should be running using Objective-C
  91500. autorelease. Most likely, the code that is triggering these stderr
  91501. messages is incorrect, and that bug should be fixed instead.
  91502. * workers/WorkerRunLoop.cpp:
  91503. (WebCore::WorkerRunLoop::run): Roll out use of AutodrainedPool.
  91504. 2010-06-22 Darin Adler <darin@apple.com>
  91505. Reviewed by Brady Eidson.
  91506. Fix autorelease problem seen when running worker regression tests.
  91507. We were seeing logs to stderr saying autorelease was used without
  91508. an autorelease pool being set up.
  91509. * workers/WorkerRunLoop.cpp:
  91510. (WebCore::WorkerRunLoop::run): Use an AutodrainedPool as the file
  91511. thread, icon database, and database thread do. No effect on platforms
  91512. other than Mac.
  91513. 2010-06-22 Chris Fleizach <cfleizach@apple.com>
  91514. Reviewed by Darin Adler.
  91515. AX: If an element that is a continuation is removed, its parent tree is not notified appropriately that their children have changed
  91516. https://bugs.webkit.org/show_bug.cgi?id=41000
  91517. Test: accessibility/removed-continuation-element-causes-crash.html
  91518. * accessibility/AccessibilityObject.h:
  91519. (WebCore::AccessibilityObject::updateChildrenIfNecessary):
  91520. * accessibility/AccessibilityRenderObject.cpp:
  91521. (WebCore::AccessibilityRenderObject::childrenChanged):
  91522. (WebCore::AccessibilityRenderObject::addChildren):
  91523. * accessibility/AccessibilityRenderObject.h:
  91524. 2010-06-22 Peter Kasting <pkasting@google.com>
  91525. Reviewed by Adam Barth.
  91526. Override setFailed() in each image decoder to clean up any temporary
  91527. objects.
  91528. https://bugs.webkit.org/show_bug.cgi?id=35411
  91529. In a few cases, we need to be careful to avoid deleting objects until
  91530. after they're no longer needed. These cases usually mean some jumping
  91531. through hoops, to the detriment of code simplicity.
  91532. No layout tests because this does not change the visible output of
  91533. decoding in any way.
  91534. * platform/image-decoders/ImageDecoder.h:
  91535. (WebCore::ImageDecoder::setData):
  91536. * platform/image-decoders/bmp/BMPImageDecoder.cpp:
  91537. (WebCore::BMPImageDecoder::setFailed):
  91538. (WebCore::BMPImageDecoder::decode):
  91539. * platform/image-decoders/bmp/BMPImageDecoder.h:
  91540. * platform/image-decoders/bmp/BMPImageReader.cpp:
  91541. (WebCore::BMPImageReader::decodeBMP):
  91542. (WebCore::BMPImageReader::readInfoHeaderSize):
  91543. (WebCore::BMPImageReader::processInfoHeader):
  91544. (WebCore::BMPImageReader::readInfoHeader):
  91545. (WebCore::BMPImageReader::processBitmasks):
  91546. (WebCore::BMPImageReader::processColorTable):
  91547. (WebCore::BMPImageReader::processRLEData):
  91548. (WebCore::BMPImageReader::processNonRLEData):
  91549. * platform/image-decoders/bmp/BMPImageReader.h:
  91550. (WebCore::BMPImageReader::):
  91551. * platform/image-decoders/gif/GIFImageDecoder.cpp:
  91552. (WebCore::GIFImageDecoder::setFailed):
  91553. (WebCore::GIFImageDecoder::decode):
  91554. * platform/image-decoders/gif/GIFImageDecoder.h:
  91555. * platform/image-decoders/ico/ICOImageDecoder.cpp:
  91556. (WebCore::ICOImageDecoder::setFailed):
  91557. (WebCore::ICOImageDecoder::decode):
  91558. * platform/image-decoders/ico/ICOImageDecoder.h:
  91559. * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
  91560. (WebCore::JPEGImageReader::decode):
  91561. (WebCore::JPEGImageDecoder::setFailed):
  91562. (WebCore::JPEGImageDecoder::decode):
  91563. * platform/image-decoders/jpeg/JPEGImageDecoder.h:
  91564. * platform/image-decoders/png/PNGImageDecoder.cpp:
  91565. (WebCore::PNGImageReader::decode):
  91566. (WebCore::PNGImageDecoder::PNGImageDecoder):
  91567. (WebCore::PNGImageDecoder::setFailed):
  91568. (WebCore::PNGImageDecoder::headerAvailable):
  91569. (WebCore::PNGImageDecoder::decode):
  91570. * platform/image-decoders/png/PNGImageDecoder.h:
  91571. 2010-06-04 Dimitri Glazkov <dglazkov@chromium.org>
  91572. Reviewed by Darin Adler.
  91573. Remove side effects of form submission and prepare FormDataBuilder for splitting up.
  91574. https://bugs.webkit.org/show_bug.cgi?id=40184
  91575. Refactoring, covered by existing tests.
  91576. * html/HTMLFormElement.cpp:
  91577. (WebCore::HTMLFormElement::prepareFormSubmission):
  91578. * Changed to use new accessors on FormDataBuilder;
  91579. * Simplified the logic around action URL;
  91580. * Removed form submission side effect of element's enctype property being updated when
  91581. submitting a mailto form;
  91582. * Removed unnecessary updating of action URL for mailto forms.
  91583. (WebCore::HTMLFormElement::submit): Moved action URL check into prepareFormSubmission.
  91584. (WebCore::HTMLFormElement::parseMappedAttribute): Updated to use new methods on FormDataBuilder.
  91585. * html/HTMLFormElement.h: Removed decls for isMailtoForm and dataEncoding methods;
  91586. moved m_target and m_url to FormDataBuilder.
  91587. * platform/network/FormData.cpp:
  91588. (WebCore::FormData::appendDOMFormData): Removed unnecessary instantiation of FormDataBuilder.
  91589. * platform/network/FormDataBuilder.cpp:
  91590. (WebCore::FormDataBuilder::parseAction): Moved from HTMLFormControl.
  91591. * platform/network/FormDataBuilder.h:
  91592. (WebCore::FormDataBuilder::action): Ditto.
  91593. (WebCore::FormDataBuilder::target): Ditto.
  91594. (WebCore::FormDataBuilder::setTarget): Ditto.
  91595. 2010-06-22 Yuta Kitamura <yutak@chromium.org>
  91596. Reviewed by Alexey Proskuryakov.
  91597. Fix WebSocketHandshakeRequest so that it fits the new handshake protocol.
  91598. The new WebSocket specification (draft 76 and later) allows a browser to
  91599. send header fields in arbitrary order. Thus we can use a HTTPHeaderMap to
  91600. store header fields instead of Vector of pairs of a field name and
  91601. a field value.
  91602. This patch also does refactoring of WebSocketHandshakeRequest class
  91603. to make it simpler and easier to use.
  91604. Fix WebSocketHandshakeRequest so that it fits the new handshake protocol
  91605. https://bugs.webkit.org/show_bug.cgi?id=39864
  91606. No new tests, because there is no functional change.
  91607. * websockets/WebSocketHandshake.cpp:
  91608. (WebCore::WebSocketHandshake::clientHandshakeRequest):
  91609. * websockets/WebSocketHandshakeRequest.cpp:
  91610. (WebCore::WebSocketHandshakeRequest::Key3::Key3):
  91611. (WebCore::WebSocketHandshakeRequest::Key3::set):
  91612. (WebCore::WebSocketHandshakeRequest::WebSocketHandshakeRequest):
  91613. (WebCore::WebSocketHandshakeRequest::requestMethod):
  91614. (WebCore::WebSocketHandshakeRequest::url):
  91615. (WebCore::WebSocketHandshakeRequest::addHeaderField):
  91616. (WebCore::WebSocketHandshakeRequest::headerFields):
  91617. (WebCore::WebSocketHandshakeRequest::key3):
  91618. (WebCore::WebSocketHandshakeRequest::setKey3):
  91619. * websockets/WebSocketHandshakeRequest.h:
  91620. 2010-06-20 MORITA Hajime <morrita@google.com>
  91621. Reviewed by Kent Tamura.
  91622. <meter> should be yellow when min < value < low < optimum
  91623. https://bugs.webkit.org/show_bug.cgi?id=40824
  91624. Fixed a wrong conditional on HTMLMeterElement::gaugeRegion().
  91625. * html/HTMLMeterElement.cpp:
  91626. (WebCore::HTMLMeterElement::gaugeRegion):
  91627. Tests: fast/dom/HTMLMeterElement/meter-appearances-capacity.html
  91628. fast/dom/HTMLMeterElement/meter-optimums.html
  91629. 2010-06-22 Adam Barth <abarth@webkit.org>
  91630. Reviewed by Eric Seidel.
  91631. Follow the HTML5 spec more closely w.r.t. when to save the insertion point
  91632. https://bugs.webkit.org/show_bug.cgi?id=40976
  91633. The spec always increments the nesting level and saves the insertion
  91634. point at the same time. In this patch, we now do those operations
  91635. packaged as a RAII.
  91636. As a side effect, the test case below no longer ASSERTs. (The output
  91637. is wrong, but we'll get to that next.)
  91638. Test: fast/tokenizer/write-on-load.html
  91639. * html/HTML5ScriptRunner.cpp:
  91640. (WebCore::NestScript::NestScript):
  91641. (WebCore::NestScript::~NestScript):
  91642. (WebCore::HTML5ScriptRunner::executePendingScript):
  91643. (WebCore::HTML5ScriptRunner::executeScript):
  91644. (WebCore::HTML5ScriptRunner::requestScript):
  91645. (WebCore::HTML5ScriptRunner::runScript):
  91646. * html/HTMLInputStream.h:
  91647. 2010-06-22 Adam Barth <abarth@webkit.org>
  91648. Reviewed by Eric Seidel.
  91649. Expose HTMLInputStream to ScriptRunner so that ScriptRunner can save the insertion point itself
  91650. https://bugs.webkit.org/show_bug.cgi?id=40975
  91651. This saves us having to call back into the HTML5DocumentParser each
  91652. time we need to save the insertion point. This prepares us for another
  91653. place we need to save the insertion point.
  91654. * html/HTML5DocumentParser.cpp:
  91655. * html/HTML5DocumentParser.h:
  91656. (WebCore::HTML5DocumentParser::inputStream):
  91657. * html/HTML5ScriptRunner.cpp:
  91658. (WebCore::HTML5ScriptRunner::executeScript):
  91659. (WebCore::HTML5ScriptRunner::requestScript):
  91660. * html/HTML5ScriptRunnerHost.h:
  91661. 2010-06-22 Adam Barth <abarth@webkit.org>
  91662. Reviewed by Eric Seidel.
  91663. Move HTMLInputStream to its own file
  91664. https://bugs.webkit.org/show_bug.cgi?id=40974
  91665. No new tests, just code motion.
  91666. * GNUmakefile.am:
  91667. * WebCore.gypi:
  91668. * WebCore.vcproj/WebCore.vcproj:
  91669. * WebCore.xcodeproj/project.pbxproj:
  91670. * html/HTML5DocumentParser.h:
  91671. 2010-06-21 Adam Barth <abarth@webkit.org>
  91672. Reviewed by Eric Seidel.
  91673. Save the insertion point before beforeload events
  91674. https://bugs.webkit.org/show_bug.cgi?id=40973
  91675. We need to save the insertion point before dispatching the beforeload
  91676. event in case someone decides to document.write during beforeload.
  91677. Prior to this patch, such writes would pump the lexer too much and
  91678. tokenize the rest of the document before executing the script.
  91679. * html/HTML5DocumentParser.cpp:
  91680. (WebCore::HTML5DocumentParser::dispatchBeforeLoad):
  91681. * html/HTML5DocumentParser.h:
  91682. * html/HTML5ScriptRunner.cpp:
  91683. (WebCore::HTML5ScriptRunner::requestScript):
  91684. * html/HTML5ScriptRunnerHost.h:
  91685. 2010-06-21 Adam Barth <abarth@webkit.org>
  91686. Reviewed by Eric Seidel.
  91687. document.write from BeforeLoad should not assert
  91688. https://bugs.webkit.org/show_bug.cgi?id=40971
  91689. We're setting the parse blocking script too early. It's not actually
  91690. blocking parsing yet.
  91691. Test: fast/tokenizer/write-before-load.html
  91692. * html/HTML5ScriptRunner.cpp:
  91693. (WebCore::HTML5ScriptRunner::requestScript):
  91694. 2010-06-21 Chris Fleizach <cfleizach@apple.com>
  91695. No review. QT build fix again.
  91696. AX: VoiceOver does not announce WAI-ARIA state change of aria-expanded
  91697. https://bugs.webkit.org/show_bug.cgi?id=40927
  91698. * accessibility/AXObjectCache.h:
  91699. (WebCore::AXObjectCache::postNotification):
  91700. 2010-06-21 Chris Fleizach <cfleizach@apple.com>
  91701. No review. QT build fix.
  91702. AX: VoiceOver does not announce WAI-ARIA state change of aria-expanded
  91703. https://bugs.webkit.org/show_bug.cgi?id=40927
  91704. * accessibility/AXObjectCache.h:
  91705. (WebCore::AXObjectCache::postNotification):
  91706. 2010-06-21 Chris Fleizach <cfleizach@apple.com>
  91707. Reviewed by Beth Dakin.
  91708. AX: VoiceOver does not announce WAI-ARIA state change of aria-expanded
  91709. https://bugs.webkit.org/show_bug.cgi?id=40927
  91710. Test: platform/mac/accessibility/aria-expanded-notifications.html
  91711. * accessibility/AXObjectCache.cpp:
  91712. (WebCore::AXObjectCache::handleAriaExpandedChange):
  91713. * accessibility/AXObjectCache.h:
  91714. (WebCore::AXObjectCache::handleAriaExpandedChange):
  91715. * accessibility/AccessibilityObject.h:
  91716. (WebCore::AccessibilityObject::handleAriaExpandedChanged):
  91717. * accessibility/AccessibilityRenderObject.cpp:
  91718. (WebCore::AccessibilityRenderObject::handleAriaExpandedChanged):
  91719. * accessibility/AccessibilityRenderObject.h:
  91720. * accessibility/mac/AXObjectCacheMac.mm:
  91721. (WebCore::AXObjectCache::postPlatformNotification):
  91722. * dom/Element.cpp:
  91723. (WebCore::Element::updateAfterAttributeChanged):
  91724. 2010-06-21 Sheriff Bot <webkit.review.bot@gmail.com>
  91725. Unreviewed, rolling out r61585.
  91726. http://trac.webkit.org/changeset/61585
  91727. https://bugs.webkit.org/show_bug.cgi?id=40950
  91728. It broke builds (Requested by kinuko on #webkit).
  91729. * Android.derived.jscbindings.mk:
  91730. * Android.derived.v8bindings.mk:
  91731. * CMakeLists.txt:
  91732. * DerivedSources.cpp:
  91733. * DerivedSources.make:
  91734. * GNUmakefile.am:
  91735. * WebCore.gypi:
  91736. * WebCore.pri:
  91737. * WebCore.vcproj/WebCore.vcproj:
  91738. * WebCore.xcodeproj/project.pbxproj:
  91739. * html/BlobBuilder.cpp:
  91740. (WebCore::BlobBuilder::appendString):
  91741. (WebCore::BlobBuilder::appendBlob):
  91742. * html/BlobBuilder.h:
  91743. * page/DOMWindow.idl:
  91744. 2010-06-21 Kinuko Yasuda <kinuko@chromium.org>
  91745. Reviewed by Adam Barth.
  91746. Add BlobBuilder.idl to expose BlobBuilder interface
  91747. https://bugs.webkit.org/show_bug.cgi?id=40593
  91748. BlobBuilder is defined in FileAPI's FileWriter spec.
  91749. (http://dev.w3.org/2009/dap/file-system/file-writer.html)
  91750. Also removes the ENABLE_FILE_WRITER ifdef guard for BlobBuilder.
  91751. Tests: http/tests/local/blob/send-data-blob.html
  91752. http/tests/local/blob/send-hybrid-blob.html
  91753. http/tests/local/blob/send-sliced-data-blob.html
  91754. * Android.derived.jscbindings.mk:
  91755. * Android.derived.v8bindings.mk:
  91756. * CMakeLists.txt:
  91757. * DerivedSources.cpp:
  91758. * DerivedSources.make:
  91759. * GNUmakefile.am:
  91760. * WebCore.gypi:
  91761. * WebCore.pri:
  91762. * WebCore.pro:
  91763. * WebCore.vcproj/WebCore.vcproj:
  91764. * WebCore.xcodeproj/project.pbxproj:
  91765. * html/BlobBuilder.cpp:
  91766. (WebCore::BlobBuilder::append):
  91767. * html/BlobBuilder.h:
  91768. * html/BlobBuilder.idl: Added.
  91769. * page/DOMWindow.idl:
  91770. 2010-06-21 Nate Chapin <japhet@chromium.org>
  91771. Reviewed by Adam Barth.
  91772. FrameLoader cleanup: Split high level subframe and plugin
  91773. loading functions into a separate class.
  91774. https://bugs.webkit.org/show_bug.cgi?id=40453
  91775. Refactor only, no new tests.
  91776. * Android.mk:
  91777. * CMakeLists.txt:
  91778. * GNUmakefile.am:
  91779. * WebCore.base.exp:
  91780. * WebCore.gypi:
  91781. * WebCore.pro:
  91782. * WebCore.vcproj/WebCore.vcproj:
  91783. * WebCore.xcodeproj/project.pbxproj:
  91784. * dom/DOMImplementation.cpp:
  91785. * history/PageCache.cpp:
  91786. * html/HTMLFrameElementBase.cpp:
  91787. * html/HTMLMediaElement.cpp:
  91788. * loader/FrameLoader.cpp:
  91789. * loader/FrameLoader.h:
  91790. (WebCore::FrameLoader::subframeLoader):
  91791. * loader/PluginDocument.cpp:
  91792. * loader/SubframeLoader.cpp: Added.
  91793. (WebCore::SubframeLoader::SubframeLoader):
  91794. (WebCore::toPlugInElement):
  91795. (WebCore::SubframeLoader::clear):
  91796. (WebCore::SubframeLoader::requestFrame):
  91797. (WebCore::SubframeLoader::requestObject):
  91798. (WebCore::FrameLoader::loadMediaPlayerProxyPlugin):
  91799. (WebCore::SubframeLoader::createJavaAppletWidget):
  91800. (WebCore::SubframeLoader::loadSubframe):
  91801. (WebCore::SubframeLoader::allowPlugins):
  91802. (WebCore::SubframeLoader::shouldUsePlugin):
  91803. (WebCore::SubframeLoader::loadPlugin):
  91804. (WebCore::SubframeLoader::completeURL):
  91805. * loader/SubframeLoader.h: Added.
  91806. (WebCore::SubframeLoader::containsPlugins):
  91807. * page/Page.cpp:
  91808. * page/XSSAuditor.h:
  91809. * platform/graphics/wince/MediaPlayerProxy.cpp:
  91810. * plugins/MimeType.cpp:
  91811. * rendering/RenderApplet.cpp:
  91812. * rendering/RenderEmbeddedObject.cpp:
  91813. 2010-06-21 Nate Chapin <japhet@chromium.org>
  91814. Unreviewed, build fix.
  91815. Bad merge, left a reference to m_committedFirstRealDocumentLoad in
  91816. http://trac.webkit.org/changeset/61568.
  91817. * loader/FrameLoader.cpp:
  91818. (WebCore::FrameLoader::transitionToCommitted):
  91819. 2010-06-21 Nate Chapin <japhet@chromium.org>
  91820. Reviewed by Adam Barth.
  91821. Remove a couple of FrameLoader's unused boolean members
  91822. (m_receivedData, m_cancellingWithLoadInProcess) and merge
  91823. several more into a single state machine called FrameLoaderStateMachine
  91824. (m_firstLayoutDone, m_creatingInitialEmptyDocument,
  91825. m_isDisplayingInitialEmptyDocument, m_committedFirstRealDocumentLoad).
  91826. https://bugs.webkit.org/show_bug.cgi?id=39695
  91827. Refactor only, so no new tests.
  91828. * WebCore.base.exp:
  91829. * WebCore.xcodeproj/project.pbxproj:
  91830. * loader/DocumentWriter.cpp:
  91831. (WebCore::DocumentWriter::createDocument):
  91832. (WebCore::DocumentWriter::begin):
  91833. * loader/FrameLoader.cpp:
  91834. (WebCore::FrameLoader::FrameLoader):
  91835. (WebCore::FrameLoader::init):
  91836. (WebCore::FrameLoader::stopLoading):
  91837. (WebCore::FrameLoader::didOpenURL):
  91838. (WebCore::FrameLoader::didExplicitOpen):
  91839. (WebCore::FrameLoader::clear):
  91840. (WebCore::FrameLoader::didBeginDocument):
  91841. (WebCore::FrameLoader::finishedParsing):
  91842. (WebCore::FrameLoader::provisionalLoadStarted):
  91843. (WebCore::FrameLoader::logCanCachePageDecision):
  91844. (WebCore::FrameLoader::logCanCacheFrameDecision):
  91845. (WebCore::FrameLoader::frameHasLoaded):
  91846. (WebCore::FrameLoader::commitProvisionalLoad):
  91847. (WebCore::FrameLoader::transitionToCommitted):
  91848. (WebCore::FrameLoader::finishedLoadingDocument):
  91849. (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
  91850. (WebCore::FrameLoader::didFirstLayout):
  91851. (WebCore::FrameLoader::frameLoadCompleted):
  91852. (WebCore::FrameLoader::dispatchDidCommitLoad):
  91853. * loader/FrameLoader.h:
  91854. (WebCore::FrameLoader::stateMachine):
  91855. * loader/FrameLoaderStateMachine.cpp: Added.
  91856. * loader/FrameLoaderStateMachine.h: Added.
  91857. * loader/HistoryController.cpp:
  91858. (WebCore::HistoryController::restoreScrollPositionAndViewState):
  91859. (WebCore::HistoryController::saveDocumentState):
  91860. * loader/ProgressTracker.cpp:
  91861. (WebCore::ProgressTracker::incrementProgress):
  91862. * loader/RedirectScheduler.cpp:
  91863. (WebCore::RedirectScheduler::scheduleLocationChange):
  91864. (WebCore::RedirectScheduler::scheduleFormSubmission):
  91865. 2010-06-21 Kevin Ollivier <kevino@theolliviers.com>
  91866. [wx] Build fix. Fix header includes for ENABLE(DATABASE)
  91867. * bindings/js/JSExceptionBase.cpp:
  91868. 2010-06-21 Anders Carlsson <andersca@apple.com>
  91869. Fix clang++ build.
  91870. * loader/FormSubmission.h:
  91871. 2010-06-21 Dimitri Glazkov <dglazkov@chromium.org>
  91872. Unreviewed, build fix.
  91873. Add a missing include in AsyncImageResizer.h
  91874. * html/AsyncImageResizer.h: Added the IntSize include.
  91875. 2010-06-21 Adam Roben <aroben@apple.com>
  91876. Call NotifyAddrChange again each time we are notified of a change
  91877. NotifyAddrChange only notifies you of a single change. If you want to
  91878. listen for subsequent changes, you have to call it again.
  91879. Fixes <http://webkit.org/b/33004> NetworkStateNotifier ignores all
  91880. state changes after the first.
  91881. No test possible, as we don't have a way to modify the system's
  91882. network adapters when running tests.
  91883. Reviewed by Anders Carlsson.
  91884. * platform/network/win/NetworkStateNotifierWin.cpp:
  91885. (WebCore::NetworkStateNotifier::addrChangeCallback): Call
  91886. registerForAddressChange as soon as we're notified of an address
  91887. change, so we'll also get notified of the *next* address change. I
  91888. added the call here instead of in addressChanged (which is called
  91889. later on the main thread) to minimize the time between the callback
  91890. and registering again (so that we won't miss changes that happen in
  91891. rapid succession).
  91892. 2010-06-21 Dan Bernstein <mitz@apple.com>
  91893. Release build fix
  91894. * rendering/RenderBlockLineLayout.cpp:
  91895. (WebCore::tryHyphenating):
  91896. 2010-06-21 Dan Bernstein <mitz@apple.com>
  91897. Windows build fix
  91898. * WebCore.vcproj/WebCore.vcproj: Fixed a typo.
  91899. 2010-06-21 Dan Bernstein <mitz@apple.com>
  91900. Reviewed by Darin Adler.
  91901. CSS3: Implement the 'hyphens' and 'hyphenate-character' properties
  91902. https://bugs.webkit.org/show_bug.cgi?id=10228
  91903. Tests: fast/text/hyphenate-character.html
  91904. fast/text/hyphens.html
  91905. Added -webkit-hyphens and -webkit-hyphenate-character as specified in
  91906. <http://www.w3.org/TR/2010/WD-css3-gcpm-20100608/#hyphenation>.
  91907. * Android.mk: Added Hyphenation.cpp.
  91908. * CMakeLists.txt: Ditto.
  91909. * GNUmakefile.am: Added Hyphenation.{cpp,h}.
  91910. * WebCore.base.exp: Exported wkGetHyphenationLocationBeforeIndex().
  91911. * WebCore.gypi: Added Hyphenation.{cpp,h}.
  91912. * WebCore.pro: Added Hyphenation.{cpp,h}.
  91913. * WebCore.vcproj/WebCore.vcproj: Added Hyphenation.{cpp,h}.
  91914. * WebCore.xcodeproj/project.pbxproj: Added Hyphenation.{cpp,h}.
  91915. * css/CSSComputedStyleDeclaration.cpp:
  91916. (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added the -webkit-hyphenate-character
  91917. and -webkit-hyphens cases.
  91918. * css/CSSParser.cpp:
  91919. (WebCore::CSSParser::parseValue): Validate values for the new properties.
  91920. * css/CSSPrimitiveValueMappings.h:
  91921. (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Added. Maps from a Hyphens value to an identifier.
  91922. (WebCore::CSSPrimitiveValue::operator Hyphens): Added. Maps from an identifier to a Hyphens value.
  91923. * css/CSSPropertyNames.in: Added -webkit-hyphenate-character and -webkit-hyphens.
  91924. * css/CSSStyleSelector.cpp:
  91925. (WebCore::CSSStyleSelector::applyProperty): Apply the new properties to the RenderStyle.
  91926. * css/CSSValueKeywords.in:
  91927. * platform/mac/WebCoreSystemInterface.h: Added wkGetHyphenationLocationBeforeIndex.
  91928. * platform/mac/WebCoreSystemInterface.mm: Ditto.
  91929. * platform/text/CharacterNames.h: Added the hyphen character.
  91930. * platform/text/Hyphenation.cpp: Added.
  91931. (WebCore::lastHyphenLocation): Added this default implementation for platforms that do not implement
  91932. hyphenation yet. It calls notImplemented() and returns 0.
  91933. * platform/text/Hyphenation.h: Added.
  91934. * platform/text/cf/HyphenationCF.cpp: Added.
  91935. (WebCore::lastHyphenLocation): Returns the last hyphenation location occurring in the given string before
  91936. the given index. Uses the current search locale (which is based on the top language preference of the user)
  91937. for hyphenation.
  91938. * platform/text/mac/HyphenationMac.mm: Added.
  91939. (WebCore::lastHyphenLocation): Returns the last hyphenation location occurring in the given string before
  91940. the given index. Returns 0 if the current search locale is not "en", because the platform only knows how to
  91941. hyphenate English.
  91942. * rendering/BidiRun.h:
  91943. (WebCore::BidiRun::BidiRun): Added a boolean member, m_hasHyphen, and initialized it to false in the constructor.
  91944. * rendering/InlineBox.h:
  91945. (WebCore::InlineBox::InlineBox): Renamed m_hasEllipsisBox to m_hasEllipsisBoxOrHyphen, because this bit is now
  91946. shared by two subclass: RootInlineBox uses it for hasEllipsisBox(), while InlineTextBox uses it for hasHyphen().
  91947. * rendering/InlineTextBox.cpp:
  91948. (WebCore::adjustCharactersAndLengthForHyphen): Added this helper function to get the hyphen string from the style
  91949. and return a UChar* and length for the concatenation of the given text with the hyphen string.
  91950. (WebCore::InlineTextBox::selectionRect): If the selected range touches the end and the box has a hyphen,
  91951. compute the width of the text with the hyphen string concatenated to it.
  91952. (WebCore::InlineTextBox::paint): If the box has a hyphen, draw the text with the hyphen string concatenated to it.
  91953. (WebCore::InlineTextBox::paintSelection): Similarly concatenate the hyphen string.
  91954. * rendering/InlineTextBox.h:
  91955. (WebCore::InlineTextBox::hasHyphen): Added this accessor.
  91956. (WebCore::InlineTextBox::setHasHyphen): Ditto.
  91957. * rendering/RenderBlock.h:
  91958. * rendering/RenderBlockLineLayout.cpp:
  91959. (WebCore::RenderBlock::constructLine): Copy the m_hasHyphen flag from the run to its text box.
  91960. (WebCore::RenderBlock::computeHorizontalPositionsForLine): Add the width of the hyphen string when computing the
  91961. width of a box that has a hyphen.
  91962. (WebCore::RenderBlock::layoutInlineChildren): If the line was hyphenated, set the m_hasHyphen flag on the
  91963. logically last run.
  91964. (WebCore::tryHyphenating): Added this helper function which checks if a piece of text that does not fit on the
  91965. line could be hyphenated such that the part before the hyphen, including the hyphen, would fit. Given the amount
  91966. of space remaining on the line, it finds the longest prefix that can fit in the remaining space (which leaving room for
  91967. the hyphen), and then checks for a hyphenation location within that prefix.
  91968. (WebCore::RenderBlock::findNextLineBreak): In the 'hyphens: none' case, prevent line breaks at soft hyphens.
  91969. In the 'hyphens: auto' case, try hyphenating when a word will not fit in the remaining space on the line.
  91970. * rendering/RootInlineBox.cpp:
  91971. (WebCore::RootInlineBox::detachEllipsisBox): Changed to use hasEllipsisBox() and setHasEllipsisBox().
  91972. (WebCore::RootInlineBox::clearTruncation): Ditto.
  91973. (WebCore::RootInlineBox::placeEllipsis): Ditto.
  91974. (WebCore::RootInlineBox::paintEllipsisBox): Ditto.
  91975. (WebCore::RootInlineBox::nodeAtPoint): Ditto.
  91976. (WebCore::RootInlineBox::ellipsisBox): Ditto.
  91977. * rendering/RootInlineBox.h:
  91978. (WebCore::RootInlineBox::hasEllipsisBox): Added this accessor.
  91979. (WebCore::RootInlineBox::setHasEllipsisBox): Ditto.
  91980. * rendering/style/RenderStyle.cpp:
  91981. (WebCore::RenderStyle::diff): Return a layout hint if the hyphens setting or hyphenate-character differs.
  91982. (WebCore::RenderStyle::hyphenString): Added. For hyphenate-character: auto, returns the hyphen character.
  91983. * rendering/style/RenderStyle.h:
  91984. (WebCore::InheritedFlags::hyphens): Added this accessor.
  91985. (WebCore::InheritedFlags::hyphenateCharacter): Ditto.
  91986. (WebCore::InheritedFlags::setHyphens): Ditto.
  91987. (WebCore::InheritedFlags::setHyphenateCharacter): Ditto.
  91988. (WebCore::InheritedFlags::initialHyphens): Added. Returns HyphensManual.
  91989. (WebCore::InheritedFlags::initialHyphenateCharacter): Added. Returns the null string, corresponding to
  91990. a value of 'auto'.
  91991. * rendering/style/RenderStyleConstants.h:
  91992. Added a Hyphens enum.
  91993. * rendering/style/StyleRareInheritedData.cpp:
  91994. (WebCore::StyleRareInheritedData::StyleRareInheritedData): Initialize and copy the new members.
  91995. (WebCore::StyleRareInheritedData::operator==): Compare the new members.
  91996. * rendering/style/StyleRareInheritedData.h: Added two new members: hyphens and hyphenateCharacter.
  91997. 2010-06-03 Dimitri Glazkov <dglazkov@chromium.org>
  91998. Reviewed by Darin Adler.
  91999. Plumb FormSubmission through to ScheduledFormSubmission.
  92000. https://bugs.webkit.org/show_bug.cgi?id=40137
  92001. No behavior change, covered by existing tests.
  92002. * html/HTMLFormElement.cpp:
  92003. (WebCore::HTMLFormElement::prepareFormSubmission): Moved creation of action URL
  92004. instance here from FrameLoader::submit, because it makes more sense here,
  92005. also added a FIXME to investigate existing code later.
  92006. * loader/FormSubmission.cpp:
  92007. (WebCore::FormSubmission::FormSubmission): Changed action to be a KURL, not a String.
  92008. (WebCore::FormSubmission::create): Ditto.
  92009. (WebCore::FormSubmission::populateFrameLoadRequest): Added, moving the logic from
  92010. FrameLoader::submit closer to the data.
  92011. * loader/FormSubmission.h:
  92012. (WebCore::FormSubmission::action): Changed type to KURL.
  92013. (WebCore::FormSubmission::clearTarget): Added.
  92014. (WebCore::FormSubmission::referrer): Added.
  92015. (WebCore::FormSubmission::setReferrer): Added.
  92016. (WebCore::FormSubmission::origin): Added.
  92017. (WebCore::FormSubmission::setOrigin): Added.
  92018. * loader/FrameLoader.cpp:
  92019. (WebCore::FrameLoader::submitForm): Cleaned up to make it more about decision-making,
  92020. not data manipulation.
  92021. * loader/RedirectScheduler.cpp:
  92022. (WebCore::ScheduledFormSubmission::ScheduledFormSubmission): Changed to accept FormSubmission as argument.
  92023. (WebCore::ScheduledFormSubmission::fire): Changed to use FormSubmission.
  92024. (WebCore::RedirectScheduler::scheduleFormSubmission): Removed assert that no longer makes sense,
  92025. changed to use FormSubmission.
  92026. * loader/RedirectScheduler.h: Updated ScheduledFormSubmission decl to hold FormSubmission ref.
  92027. 2010-06-21 Satish Sampath <satish@chromium.org>
  92028. Reviewed by Steve Block.
  92029. Speech Input Patch 0: Added compilation argument to conditionally compile pending patches.
  92030. https://bugs.webkit.org/show_bug.cgi?id=40878
  92031. No new tests are needed, because there is no new functionality.
  92032. * Configurations/FeatureDefines.xcconfig:
  92033. * GNUmakefile.am:
  92034. * WebCore.pri:
  92035. 2010-06-21 Hans Wennborg <hans@chromium.org>
  92036. Reviewed by Jeremy Orlow.
  92037. Delete DOM storage databases when they are empty.
  92038. https://bugs.webkit.org/show_bug.cgi?id=40767
  92039. Even if a page clears its local storage, the database file for it stays around,
  92040. and there is currently no mechanism that deletes them.
  92041. After doing the "final sync" of a storage area, the StorageAreaSyncMaster should
  92042. see if the database is empty, and in that case delete it.
  92043. Tests:
  92044. manual-tests/localstorage-empty-database.html
  92045. * manual-tests/localstorage-empty-database.html:
  92046. Added link to clear local storage for testing that the file is removed.
  92047. * storage/LocalStorageTask.cpp:
  92048. (WebCore::LocalStorageTask::LocalStorageTask):
  92049. Added local storage task type DeleteEmptyDatabase.
  92050. (WebCore::LocalStorageTask::performTask):
  92051. Ditto.
  92052. * storage/LocalStorageTask.h:
  92053. (WebCore::LocalStorageTask::):
  92054. Ditto.
  92055. (WebCore::LocalStorageTask::createDeleteEmptyDatabase):
  92056. Ditto.
  92057. * storage/StorageAreaSync.cpp:
  92058. (WebCore::StorageAreaSync::scheduleFinalSync):
  92059. When scheduling final sync, also schedule DeleteEmptyDatabase.
  92060. (WebCore::StorageAreaSync::sync):
  92061. Return early if final sync has nothing to sync.
  92062. (WebCore::StorageAreaSync::deleteEmptyDatabase):
  92063. Added function to check if a database is empty and in that case delete it.
  92064. * storage/StorageAreaSync.h:
  92065. Ditto.
  92066. * storage/StorageSyncManager.cpp:
  92067. (WebCore::StorageSyncManager::scheduleDeleteEmptyDatabase):
  92068. Added function for scheduling DeleteEmptyDatabase task.
  92069. * storage/StorageSyncManager.h:
  92070. Ditto.
  92071. 2010-06-21 Balazs Kelemen <kb@inf.u-szeged.hu>
  92072. Reviewed by Simon Hausmann.
  92073. [Qt] Avoid unnecessary image conversion in RGBA32Buffer::zeroFill()
  92074. https://bugs.webkit.org/show_bug.cgi?id=40910
  92075. * platform/image-decoders/qt/RGBA32BufferQt.cpp:
  92076. (WebCore::RGBA32Buffer::zeroFill):
  92077. 2010-06-21 Benjamin Poulain <benjamin.poulain@nokia.com>
  92078. Reviewed by Kenneth Rohde Christiansen.
  92079. [Qt] Decode images directly to QPixmap
  92080. https://bugs.webkit.org/show_bug.cgi?id=40797
  92081. Decode images to QPixmap directly instead of QImage when possible.
  92082. RGBA32Buffer transforms the pixmap back to image if
  92083. necessary.
  92084. This improve the performance with certain graphic system, and
  92085. can reduce memory usage.
  92086. * platform/graphics/qt/ImageDecoderQt.cpp:
  92087. (WebCore::ImageDecoderQt::setData):
  92088. (WebCore::ImageDecoderQt::internalHandleCurrentImage):
  92089. * platform/image-decoders/ImageDecoder.h:
  92090. (WebCore::RGBA32Buffer::getAddr):
  92091. * platform/image-decoders/qt/RGBA32BufferQt.cpp:
  92092. (WebCore::RGBA32Buffer::clear):
  92093. (WebCore::RGBA32Buffer::zeroFill):
  92094. (WebCore::RGBA32Buffer::copyBitmapData):
  92095. (WebCore::RGBA32Buffer::setSize):
  92096. (WebCore::RGBA32Buffer::asNewNativeImage):
  92097. (WebCore::RGBA32Buffer::setPixmap):
  92098. 2010-06-20 Dumitru Daniliuc <dumi@chromium.org>
  92099. Reviewed by Adam Barth.
  92100. Adding the SQLException class which will be used to report sync DB errors.
  92101. https://bugs.webkit.org/show_bug.cgi?id=40607
  92102. * Android.derived.jscbindings.mk:
  92103. * Android.derived.v8bindings.mk:
  92104. * CMakeLists.txt:
  92105. * DerivedSources.cpp:
  92106. * DerivedSources.make:
  92107. * GNUmakefile.am:
  92108. * WebCore.gypi:
  92109. * WebCore.pri:
  92110. * WebCore.vcproj/WebCore.vcproj:
  92111. * WebCore.xcodeproj/project.pbxproj:
  92112. * bindings/js/JSDOMBinding.cpp:
  92113. (WebCore::setDOMException):
  92114. * bindings/js/JSExceptionBase.cpp:
  92115. (WebCore::toExceptionBase):
  92116. * bindings/v8/V8Proxy.cpp:
  92117. (WebCore::V8Proxy::setDOMException):
  92118. * bindings/v8/V8Proxy.h:
  92119. * dom/ExceptionCode.cpp:
  92120. (WebCore::):
  92121. (WebCore::getExceptionCodeDescription):
  92122. * dom/ExceptionCode.h:
  92123. (WebCore::):
  92124. * page/DOMWindow.idl:
  92125. * storage/SQLException.h: Added.
  92126. (WebCore::SQLException::create):
  92127. (WebCore::SQLException::):
  92128. (WebCore::SQLException::SQLException):
  92129. * storage/SQLException.idl: Added.
  92130. 2010-06-20 Yury Semikhatsky <yurys@chromium.org>
  92131. Reviewed by Pavel Feldman.
  92132. [v8] Web Inspector: don't add ScriptDebugServer as v8 listener if browser exposes
  92133. v8 debugging protocol.
  92134. https://bugs.webkit.org/show_bug.cgi?id=40844
  92135. * bindings/v8/ScriptDebugServer.cpp:
  92136. (WebCore::ScriptDebugServer::ScriptDebugServer):
  92137. (WebCore::ScriptDebugServer::addListener):
  92138. (WebCore::ScriptDebugServer::setEnabled):
  92139. (WebCore::ScriptDebugServer::isDebuggerAlwaysEnabled):
  92140. * bindings/v8/ScriptDebugServer.h:
  92141. 2010-06-20 Gyuyoung Kim <gyuyoung.kim@samsung.com>
  92142. Unreviewed build fix.
  92143. [EFL] Build break for r61527
  92144. https://bugs.webkit.org/post_bug.cgi
  92145. * CMakeLists.txt: Add loader/FormSubmission.cpp
  92146. 2010-06-20 Anders Carlsson <andersca@apple.com>
  92147. Reviewed by Dan Bernstein.
  92148. Remove bogus const qualifiers.
  92149. * platform/mac/PasteboardHelper.h:
  92150. 2010-06-20 Patrick Gansterer <paroga@paroga.com>
  92151. Reviewed by Kent Tamura.
  92152. Buildfix for NotificationCenter.h.
  92153. https://bugs.webkit.org/show_bug.cgi?id=40890
  92154. ScriptExecutionContext::completeURL is used in header,
  92155. but ScriptExecutionContext.h wasn't included.
  92156. * notifications/NotificationCenter.h:
  92157. 2010-06-20 Tony Gentilcore <tonyg@chromium.org>
  92158. Reviewed by Eric Seidel.
  92159. Recognize async attribute on HTML script tags.
  92160. https://bugs.webkit.org/show_bug.cgi?id=39026
  92161. This does not implement async behavior, it only parses the async
  92162. attribute for HTML script tags. SVG script tags continue to not
  92163. support the async attribute.
  92164. Tests: fast/dom/HTMLScriptElement/script-async-attr.html
  92165. svg/dom/SVGScriptElement/script-async-attr.svg
  92166. * dom/ScriptElement.cpp:
  92167. (WebCore::ScriptElementData::isAsynchronous):
  92168. (WebCore::ScriptElementData::isDeferred):
  92169. * dom/ScriptElement.h:
  92170. * html/HTMLAttributeNames.in:
  92171. * html/HTMLScriptElement.cpp:
  92172. (WebCore::HTMLScriptElement::async):
  92173. (WebCore::HTMLScriptElement::setAsync):
  92174. (WebCore::HTMLScriptElement::defer):
  92175. (WebCore::HTMLScriptElement::asyncAttributeValue):
  92176. (WebCore::HTMLScriptElement::deferAttributeValue):
  92177. * html/HTMLScriptElement.h:
  92178. * html/HTMLScriptElement.idl:
  92179. * svg/SVGScriptElement.cpp:
  92180. (WebCore::SVGScriptElement::asyncAttributeValue):
  92181. (WebCore::SVGScriptElement::deferAttributeValue):
  92182. * svg/SVGScriptElement.h:
  92183. 2010-06-20 Nikita Vasilyev <me@elv1s.ru>
  92184. Reviewed by Joseph Pecoraro.
  92185. Web Inspector: Auto-completion for CSS property names in Styles pane
  92186. https://bugs.webkit.org/show_bug.cgi?id=17374
  92187. Added autocompletion for CSS properties. A suggestion for a property
  92188. shows when you type. You can also cycle through known property names
  92189. using the Up and Down arrow keys.
  92190. * WebCore.gypi:
  92191. * inspector/front-end/CSSCompletions.js: Added.
  92192. (WebInspector.CSSCompletions):
  92193. (WebInspector.CSSCompletions.startsWith):
  92194. (WebInspector.CSSCompletions.firstStartsWith):
  92195. (WebInspector.CSSCompletions._firstIndexOfPrefix):
  92196. (WebInspector.CSSCompletions.next):
  92197. (WebInspector.CSSCompletions.previous):
  92198. (WebInspector.CSSCompletions._closest):
  92199. * inspector/front-end/StylesSidebarPane.js:
  92200. (WebInspector.StylePropertyTreeElement.prototype):
  92201. * inspector/front-end/WebKit.qrc:
  92202. * inspector/front-end/inspector.html:
  92203. * inspector/front-end/utilities.js:
  92204. (Text.prototype.select):
  92205. ():
  92206. 2010-06-14 Dimitri Glazkov <dglazkov@chromium.org>
  92207. Reviewed by Darin Adler.
  92208. Introduce FormSubmission, the structure representing a form submission.
  92209. https://bugs.webkit.org/show_bug.cgi?id=40084
  92210. No change in functionality, covered by existing tests.
  92211. * GNUmakefile.am: Added FormSubmission.h/cpp.
  92212. * WebCore.gypi: Ditto.
  92213. * WebCore.pro: Ditto.
  92214. * WebCore.vcproj/WebCore.vcproj: Ditto.
  92215. * WebCore.xcodeproj/project.pbxproj: Ditto.
  92216. * html/HTMLFormElement.cpp:
  92217. (WebCore::HTMLFormElement::prepareFormSubmission): Renamed prepareFormData to prepareFormSubmission,
  92218. added code for populating a FormSubmission instance, moved the loop of accumulating text input
  92219. values into this functions (it belongs here logically).
  92220. (WebCore::HTMLFormElement::submit): Modified to use prepareFormSubmission.
  92221. * html/HTMLFormElement.h:
  92222. * loader/FormSubmission.cpp: Added.
  92223. * loader/FormSubmission.h: Added.
  92224. * loader/FrameLoader.cpp:
  92225. (WebCore::FrameLoader::submitForm): Modified to use FormSubmission. Stopped plumbing further to keep
  92226. the patch size down.
  92227. * loader/FrameLoader.h: Modified submitForm signature.
  92228. 2010-06-20 Joseph Pecoraro <joepeck@webkit.org>
  92229. Unreviewed rollout r61506, because it made 1 test crash.
  92230. Causes crash. Will approach the solution in a different way.
  92231. 2010-06-20 Joseph Pecoraro <joepeck@webkit.org>
  92232. Reviewed by Timothy Hatcher.
  92233. Web Inspector: Should Autocomplete Style Properties
  92234. https://bugs.webkit.org/show_bug.cgi?id=38448
  92235. This Autocompletes style properties when in the console.
  92236. * inspector/front-end/InjectedScript.js:
  92237. (injectedScriptConstructor):
  92238. 2010-06-20 Robert Hogan <robert@webkit.org>
  92239. Reviewed by Simon Hausmann.
  92240. [Qt] NPP_SetWindow seems to not be called when TestNetscapePlugin is moved
  92241. https://bugs.webkit.org/show_bug.cgi?id=36702
  92242. setNPWindowIfNeeded() is called on paint() in PluginViewQt, which doesn't
  92243. work for DRT. So call it if we are in DRT mode and the window geometry
  92244. has changed.
  92245. Unskips plugins/reentrant-update-widget-positions.html
  92246. * plugins/qt/PluginViewQt.cpp:
  92247. (WebCore::PluginView::updatePluginWidget):
  92248. 2010-06-19 Tony Gentilcore <tonyg@chromium.org>
  92249. Reviewed by Adam Barth.
  92250. Persist V8's ScriptData to the memory cache.
  92251. https://bugs.webkit.org/show_bug.cgi?id=38661
  92252. This stores V8's ScriptData in the memory cache and also causes the
  92253. network platform layer to be notified of the available cacheable
  92254. metadata.
  92255. Chromium's morejs benchmark showed a ~7% improvement when this was
  92256. originally submitted (before it had to be rolled back).
  92257. Test: fast/js/parser-high-byte-character.html
  92258. * bindings/v8/ScriptSourceCode.h:
  92259. (WebCore::ScriptSourceCode::ScriptSourceCode):
  92260. (WebCore::ScriptSourceCode::cachedScript):
  92261. * bindings/v8/V8Proxy.cpp:
  92262. (WebCore::V8Proxy::compileScript):
  92263. (WebCore::V8Proxy::precompileScript):
  92264. (WebCore::V8Proxy::evaluate):
  92265. * bindings/v8/V8Proxy.h:
  92266. 2010-06-19 Kwang Yul Seo <skyul@company100.net>
  92267. Reviewed by Kent Tamura.
  92268. [BREWMP] Port SocketStream
  92269. https://bugs.webkit.org/show_bug.cgi?id=39671
  92270. Port SocketStream with BREW MP's ISocket interface.
  92271. * platform/network/brew/SocketStreamError.h: Added.
  92272. (WebCore::SocketStreamError::SocketStreamError):
  92273. * platform/network/brew/SocketStreamHandle.h: Added.
  92274. (WebCore::SocketStreamHandle::create):
  92275. * platform/network/brew/SocketStreamHandleBrew.cpp: Added.
  92276. (WebCore::socketStreamConnectCallback):
  92277. (WebCore::getHostByNameCallback):
  92278. (WebCore::socketReadableCallback):
  92279. (WebCore::networkManager):
  92280. (WebCore::SocketStreamHandlePrivate::SocketStreamHandlePrivate):
  92281. (WebCore::SocketStreamHandlePrivate::~SocketStreamHandlePrivate):
  92282. (WebCore::SocketStreamHandlePrivate::socketConnected):
  92283. (WebCore::SocketStreamHandlePrivate::socketReadyRead):
  92284. (WebCore::SocketStreamHandlePrivate::connect):
  92285. (WebCore::SocketStreamHandlePrivate::send):
  92286. (WebCore::SocketStreamHandlePrivate::close):
  92287. (WebCore::SocketStreamHandlePrivate::socketClosed):
  92288. (WebCore::SocketStreamHandlePrivate::socketError):
  92289. (WebCore::SocketStreamHandle::SocketStreamHandle):
  92290. (WebCore::SocketStreamHandle::~SocketStreamHandle):
  92291. (WebCore::SocketStreamHandle::platformSend):
  92292. (WebCore::SocketStreamHandle::platformClose):
  92293. (WebCore::SocketStreamHandle::didReceiveAuthenticationChallenge):
  92294. (WebCore::SocketStreamHandle::receivedCredential):
  92295. (WebCore::SocketStreamHandle::receivedRequestToContinueWithoutCredential):
  92296. (WebCore::SocketStreamHandle::receivedCancellation):
  92297. * platform/network/brew/SocketStreamHandlePrivate.h: Added.
  92298. 2010-06-19 Nikita Vasilyev <me@elv1s.ru>
  92299. Reviewed by Pavel Feldman.
  92300. Web Inspector: Prevent from copying "filename.css" in Styles pane
  92301. https://bugs.webkit.org/show_bug.cgi?id=40420
  92302. * inspector/front-end/Section.js:
  92303. (WebInspector.Section.prototype.set subtitle):
  92304. (WebInspector.Section.prototype.get subtitleAsText):
  92305. * inspector/front-end/StylesSidebarPane.js:
  92306. (WebInspector.StylePropertiesSection):
  92307. * inspector/front-end/inspector.css:
  92308. (.styles-section .subtitle::before, .styles-section .subtitle a::before):
  92309. 2010-06-19 Alex Milowski <alex@milowski.com>
  92310. Reviewed by Darin Adler.
  92311. A fix for a change in https://bugs.webkit.org/show_bug.cgi?id=39941
  92312. that caused a compile error in MathML.
  92313. https://bugs.webkit.org/show_bug.cgi?id=40827
  92314. * mathml/MathMLElement.cpp:
  92315. (WebCore::MathMLElement::MathMLElement):
  92316. 2010-06-19 Kartikaya Gupta <kagupta@rim.com>
  92317. Reviewed by Nikolas Zimmermann.
  92318. CPP bindings missing some APIs
  92319. https://bugs.webkit.org/show_bug.cgi?id=40570
  92320. Add missing C++ DOM API bindings. Specifically:
  92321. - NodeFilter callback support
  92322. - Missing custom method implementations in HTMLCollection and HTMLOptionsCollection
  92323. - Missing EventTarget static type-determination methods
  92324. - Fix CPP binding generator to not generate d-ptrs for classes that extend EventTarget and just use the parent's d-ptr instead
  92325. - Switch binding generator to use DOMWindow instead of AbstractView so that necessary W3C-defined methods (e.g. getComputedStyle) are accessible.
  92326. * bindings/cpp/WebDOMDOMWindowCustom.cpp: Added.
  92327. (WebDOMDOMWindow::addEventListener):
  92328. (WebDOMDOMWindow::removeEventListener):
  92329. * bindings/cpp/WebDOMEventTarget.cpp:
  92330. (toWebKit):
  92331. * bindings/cpp/WebDOMEventTarget.h:
  92332. * bindings/cpp/WebDOMHTMLCollectionCustom.cpp: Added.
  92333. (WebDOMHTMLCollection::item):
  92334. (WebDOMHTMLCollection::namedItem):
  92335. * bindings/cpp/WebDOMHTMLOptionsCollectionCustom.cpp: Added.
  92336. (WebDOMHTMLOptionsCollection::length):
  92337. (WebDOMHTMLOptionsCollection::setLength):
  92338. * bindings/cpp/WebDOMNodeFilterCustom.cpp: Added.
  92339. (WebDOMNodeFilter::acceptNode):
  92340. (toWebKit):
  92341. * bindings/cpp/WebNativeNodeFilterCondition.cpp: Added.
  92342. (WebNativeNodeFilterCondition::WebNativeNodeFilterCondition):
  92343. (WebNativeNodeFilterCondition::~WebNativeNodeFilterCondition):
  92344. (WebNativeNodeFilterCondition::acceptNode):
  92345. * bindings/cpp/WebNativeNodeFilterCondition.h: Added.
  92346. (WebNativeNodeFilterCondition::create):
  92347. * bindings/scripts/CodeGeneratorCPP.pm:
  92348. * dom/NodeFilter.idl:
  92349. * page/DOMWindow.idl:
  92350. 2010-06-19 Vangelis Kokkevis <vangelis@chromium.org>
  92351. Reviewed by Dimitri Glazkov.
  92352. [chromium] Adding a conditional gyp dependency for the WebCore target to
  92353. the gles2_c_lib which is required by the gpu compositor. The dependency will
  92354. only kick in if the accelerated_compositing path is enabled.
  92355. https://bugs.webkit.org/show_bug.cgi?id=40801
  92356. * WebCore.gyp/WebCore.gyp:
  92357. 2010-06-19 Yael Aharon <yael.aharon@nokia.com>
  92358. Reviewed by Kenneth Rohde Christiansen.
  92359. [Qt] Platform plugin's multi-select does not take OptGroup into account
  92360. https://bugs.webkit.org/show_bug.cgi?id=40718
  92361. In multi-select elements, optgroup elements are counted in the index calculation,
  92362. but in single-select they are not. Keep the same logic even when NO_LISTBOX_RENDERING
  92363. is enabled.
  92364. Added tests to the existing manual test, as testing this requires a special build, in which
  92365. NO_LISTBOX_RENDERING is enabled.
  92366. * html/HTMLSelectElement.cpp:
  92367. (WebCore::HTMLSelectElement::listBoxSelectItem):
  92368. * manual-tests/no-listbox-rendering.html:
  92369. * rendering/RenderMenuList.cpp:
  92370. (WebCore::RenderMenuList::listBoxSelectItem):
  92371. 2010-06-19 Thomas Van Lenten <thomasvl@chromium.org>
  92372. Reviewed by David Levin.
  92373. Warnings from -Wextra in a Chromium Mac build
  92374. 1. checks of unsigned >= 0
  92375. 2. enumeral and non-enumeral type in conditional expression
  92376. 3. copy ctors that don't call the super copy ctor or ctor
  92377. No functionality change so no new tests.
  92378. https://bugs.webkit.org/show_bug.cgi?id=40791
  92379. * platform/chromium/ChromiumDataObject.cpp:
  92380. (WebCore::ChromiumDataObject::ChromiumDataObject):
  92381. * platform/chromium/ThemeChromiumMac.mm:
  92382. (WebCore::updateStates):
  92383. * rendering/RenderThemeChromiumMac.mm:
  92384. (WebCore::RenderThemeChromiumMac::updateActiveState):
  92385. 2010-06-19 Ben Murdoch <benm@google.com>
  92386. Reviewed by Pavel Feldman.
  92387. Fix build break with inspector disabled.
  92388. https://bugs.webkit.org/show_bug.cgi?id=40790
  92389. Replace a #include with a forward declaration.
  92390. Fixing a build break so no new tests required.
  92391. * inspector/InspectorController.h: Forward declare InspectorValue
  92392. rather than #including its header which has its content guarded
  92393. out.
  92394. 2010-06-19 Zhe Su <suzhe@chromium.org>
  92395. Reviewed by Darin Fisher.
  92396. [chromium]Refactor input method related APIs.
  92397. https://bugs.webkit.org/show_bug.cgi?id=40608
  92398. No new tests are needed, because there is no new functionality.
  92399. * page/FocusController.cpp:
  92400. (WebCore::FocusController::setFocusedNode):
  92401. 2010-06-19 George Wright <gwright@rim.com>
  92402. Reviewed by George Staikos.
  92403. https://bugs.webkit.org/show_bug.cgi?id=40720
  92404. Make setWapInputFormat() public again as CSSStyleSelector.cpp calls this when WCSS is enabled.
  92405. * html/HTMLInputElement.h:
  92406. (WebCore::HTMLInputElement::data):
  92407. 2010-06-02 Robert Hogan <robert@webkit.org>
  92408. Reviewed by Adam Barth.
  92409. [Qt] Support evaluateScriptInIsolatedWorld()
  92410. https://bugs.webkit.org/show_bug.cgi?id=40079
  92411. getOwnPropertyNames() crashes if PropertyNameArray is size 0. This change allows
  92412. http/tests/world-reuse.html and didClearWindowObject.html to fail instead of crash.
  92413. * WebCore.pro: Add qwebscriptworld.*
  92414. * bridge/qt/qt_runtime.cpp:
  92415. (JSC::Bindings::convertValueToQVariant):
  92416. 2010-06-19 Tony Gentilcore <tonyg@chromium.org>
  92417. Reviewed by Eric Seidel.
  92418. Some very minor cleanups for HTML5 Parser
  92419. https://bugs.webkit.org/show_bug.cgi?id=40638
  92420. No new tests because no new functionality.
  92421. * html/HTML5DocumentParser.cpp:
  92422. (WebCore::): Make ctor explicit.
  92423. * html/HTML5DocumentParser.h:
  92424. (WebCore::HTML5DocumentParser::InsertionPointRecord::InsertionPointRecord): Make ctor explicit.
  92425. * html/HTML5Lexer.cpp:
  92426. (WebCore::HTMLNames::isEndTagBufferingState): Use switch to generate an efficient table with single branch.
  92427. * html/HTML5Token.h:
  92428. (WebCore::HTML5Token::forceQuirks): Add const.
  92429. * html/HTML5TreeBuilder.h:
  92430. (WebCore::HTML5TreeBuilder::isPaused): Add const.
  92431. 2010-06-18 Aaron Boodman <aa@chromium.org>
  92432. Remove WebKit::WebDocument::isXHTMLDocument.
  92433. https://bugs.webkit.org/show_bug.cgi?id=40815
  92434. * dom/Document.h: remove isXHTML() getter.
  92435. 2010-06-19 Aaron Boodman <aa@chromium.org>
  92436. Unreviewed, rolling out r61466.
  92437. http://trac.webkit.org/changeset/61466
  92438. https://bugs.webkit.org/show_bug.cgi?id=40816
  92439. Landed wrong change
  92440. * bindings/v8/V8DOMWindowShell.cpp:
  92441. (WebCore::V8DOMWindowShell::initContextIfNeeded):
  92442. * bindings/v8/V8DOMWindowShell.h:
  92443. 2010-06-18 Aaron Boodman <aa@chromium.org>
  92444. WebKit API: Undo static hooks into V8 when WebKit is shut down.
  92445. https://bugs.webkit.org/show_bug.cgi?id=40816
  92446. * bindings/v8/V8DOMWindowShell.cpp:
  92447. (WebCore::V8DOMWindowShell::initContextIfNeeded):
  92448. (WebCore::V8DOMWindowShell::initializeV8IfNeeded):
  92449. (WebCore::V8DOMWindowShell::uninitializeV8IfNeeded):
  92450. * bindings/v8/V8DOMWindowShell.h:
  92451. 2010-06-18 Jessie Berlin <jberlin@webkit.org>
  92452. Reviewed by Darin Adler.
  92453. Bug 19509 - Database Tables in the Inspector should be sortable
  92454. https://bugs.webkit.org/show_bug.cgi?id=19509
  92455. * inspector/front-end/StoragePanel.js:
  92456. (WebInspector.StoragePanel.prototype.dataGridForResult):
  92457. Make each column in the DataGrid sortable.
  92458. (WebInspector.StoragePanel.prototype._sortDataGrid.comparator):
  92459. Make sure to sort numeric columns by their numeric values, instead of lexicographically.
  92460. (WebInspector.StoragePanel.prototype._sortDataGrid):
  92461. Sort the entries in the DataGrid based on the selected column.
  92462. 2010-06-18 Anders Carlsson <andersca@apple.com>
  92463. Reviewed by Oliver Hunt.
  92464. More clang++ warning fixes.
  92465. * inspector/InspectorFrontendClientLocal.cpp:
  92466. (WebCore::InspectorFrontendClientLocal::restoreAttachedWindowHeight):
  92467. * platform/graphics/mac/FontPlatformData.h:
  92468. * platform/graphics/mac/WebLayer.mm:
  92469. (-[CALayer _descriptionWithPrefix:]):
  92470. 2010-06-18 Dimitri Glazkov <dglazkov@chromium.org>
  92471. Unreviewed, build fix.
  92472. * WebCore.gyp/WebCore.gyp: Modified inclusion rule in to actually add WebSystemInterface.mm.
  92473. 2010-06-18 Dimitri Glazkov <dglazkov@chromium.org>
  92474. Unreviewed, build fix.
  92475. * WebCore.gyp/WebCore.gyp: Renamed WebSystemInterface.m to WebSystemInterface.mm.
  92476. 2010-06-18 Anders Carlsson <andersca@apple.com>
  92477. Reviewed by Sam Weinig.
  92478. Make WebCoreSystemInterface.h a C++ only header
  92479. https://bugs.webkit.org/show_bug.cgi?id=40867
  92480. * platform/mac/WebCoreSystemInterface.h:
  92481. 2010-06-18 Abhishek Arya <inferno@chromium.org>
  92482. Reviewed by Adam Barth.
  92483. Convert column span from an unsigned short type to an unsigned int
  92484. type. Fixes a divide-by-zero crash arising from using a zero colspan
  92485. value coming from a narrow cast of an int to an unsigned short.
  92486. https://bugs.webkit.org/show_bug.cgi?id=40812
  92487. Test: fast/table/zero-colspan-crash.html
  92488. * rendering/RenderTable.h: Change span from unsigned short to unsigned int.
  92489. * rendering/RenderTableSection.cpp: Fix a compiler warning with comparing
  92490. unsigned int with signed int. Value of an unsigned int here cannot be
  92491. greater than maximum positive value of a signed int.
  92492. (WebCore::RenderTableSection::addCell):
  92493. 2010-06-18 Ananth Jasty <ext-ananth.jasty@nokia.com>
  92494. Reviewed by Simon Hausmann.
  92495. [Qt] Text spacing miscalculation when using wordSpacing.
  92496. https://bugs.webkit.org/show_bug.cgi?id=40483
  92497. Removed wordSpacing compensation in FontQt whitespace width
  92498. calculation. The QFontMetrics::width() overload that takes
  92499. a character does not take QFont's word spacing into account.
  92500. * platform/graphics/qt/FontQt.cpp:
  92501. (WebCore::Font::floatWidthForComplexText):
  92502. 2010-06-18 Anders Carlsson <andersca@apple.com>
  92503. Reviewed by Darin Adler.
  92504. Get rid of PluginDataMac.mm and use the plug-in strategy instead
  92505. https://bugs.webkit.org/show_bug.cgi?id=40860
  92506. * WebCore.xcodeproj/project.pbxproj:
  92507. * page/mac/WebCoreViewFactory.h:
  92508. * plugins/PluginData.cpp:
  92509. (WebCore::PluginData::refresh):
  92510. (WebCore::PluginData::initPlugins):
  92511. * plugins/PluginStrategy.h:
  92512. * plugins/mac/PluginDataMac.mm: Removed.
  92513. 2010-06-18 Anders Carlsson <andersca@apple.com>
  92514. Reviewed by Dan Bernstein.
  92515. Fix some (not all) clang++ warnings.
  92516. * dom/Position.h:
  92517. (WebCore::lastOffsetInNode):
  92518. * editing/CompositeEditCommand.cpp:
  92519. (WebCore::CompositeEditCommand::deleteInsignificantText):
  92520. * loader/appcache/ApplicationCache.cpp:
  92521. (WebCore::ApplicationCache::resourceForRequest):
  92522. * platform/graphics/mac/ComplexTextController.cpp:
  92523. (WebCore::ComplexTextController::offsetForPosition):
  92524. (WebCore::ComplexTextController::collectComplexTextRuns):
  92525. * platform/network/CredentialStorage.cpp:
  92526. (WebCore::protectionSpaceMapKeyFromURL):
  92527. * rendering/style/StyleRareNonInheritedData.h:
  92528. 2010-06-18 Anders Carlsson <andersca@apple.com>
  92529. Reviewed by Dan Bernstein.
  92530. Add stubbed out WebPlatformStrategies class to WebKit.
  92531. https://bugs.webkit.org/show_bug.cgi?id=40851
  92532. * WebCore.base.exp:
  92533. * platform/PlatformStrategies.cpp:
  92534. * platform/PlatformStrategies.h:
  92535. (WebCore::PlatformStrategies::~PlatformStrategies):
  92536. 2010-06-18 Anders Carlsson <andersca@apple.com>
  92537. Reviewed by Darin Adler.
  92538. Fix build errors when building with clang++.
  92539. * loader/archive/cf/LegacyWebArchiveMac.mm:
  92540. Move the const qualifier to the right place.
  92541. * page/EditorClient.h:
  92542. * platform/Pasteboard.h:
  92543. Use @class when forward declaring Objective-C classes in Objective-C.
  92544. 2010-06-18 Alexey Proskuryakov <ap@apple.com>
  92545. Reviewed by Geoff Garen.
  92546. https://bugs.webkit.org/show_bug.cgi?id=40852
  92547. <rdar://problem/8105498> Limit simultaneous DNS prefetch request number (40852)
  92548. No change in functionality, so no tests.
  92549. We still queue up to 64 names, but only make up to 8 requests at once. If there are names
  92550. remaining in queue, we retry after a short timeout (which is easier than posting
  92551. notifications from client callback).
  92552. * platform/network/cf/DNSCFNet.cpp:
  92553. (WebCore::DNSResolveQueue::add):
  92554. (WebCore::DNSResolveQueue::fired):
  92555. 2010-06-18 Zhenyao Mo <zmo@google.com>
  92556. Reviewed by Simon Fraser.
  92557. WebGL demos show bad flicker
  92558. https://bugs.webkit.org/show_bug.cgi?id=38560
  92559. * platform/graphics/mac/GraphicsContext3DMac.mm:
  92560. (WebCore::GraphicsContext3D::prepareTexture): Move ensureContext() out of if-block so it's always executed.
  92561. 2010-06-18 Anders Carlsson <andersca@apple.com>
  92562. Reviewed by Sam Weinig.
  92563. Add PlatformStrategies and PluginStrategy classes.
  92564. https://bugs.webkit.org/show_bug.cgi?id=40850
  92565. * WebCore.xcodeproj/project.pbxproj:
  92566. * platform/PlatformStrategies.cpp: Added.
  92567. (WebCore::PlatformStrategies::~PlatformStrategies):
  92568. (WebCore::platformStrategies):
  92569. (WebCore::setPlatformStrategies):
  92570. * platform/PlatformStrategies.h: Added.
  92571. (WebCore::PlatformStrategies::pluginStrategy):
  92572. (WebCore::PlatformStrategies::PlatformStrategies):
  92573. * plugins/PluginData.cpp:
  92574. * plugins/PluginStrategy.h: Added.
  92575. (WebCore::PluginStrategy::~PluginStrategy):
  92576. 2010-06-18 Martin Robinson <mrobinson@igalia.com>
  92577. Unreviewed.
  92578. Fix the GTK+ build after r61413 and 61379.
  92579. * bindings/scripts/CodeGeneratorGObject.pm:
  92580. Produce a g_value_set that uses getterExpressionPrefix instead of the raw getter.
  92581. * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  92582. (webkit_dom_test_obj_get_property): Update expected test results.
  92583. 2010-06-18 Leandro Pereira <leandro@profusion.mobi>
  92584. [EFL] Unreviewed build fix.
  92585. * CMakeLists.txt: Add inspector/ScriptBreakpoint.cpp.
  92586. 2010-06-18 Andy Estes <aestes@apple.com>
  92587. Rubber-stamped by Sam Weinig.
  92588. Update copyright header.
  92589. * html/HTMLLinkElement.h:
  92590. 2010-06-17 Andy Estes <aestes@apple.com>
  92591. Reviewed by Dan Bernstein.
  92592. <rdar://problem/8091385> Prevent a crash in WebCore when removing a stylesheet link element in
  92593. in a listener to its beforeload event.
  92594. https://bugs.webkit.org/show_bug.cgi?id=40742
  92595. Postpone loading of link elements until after they have been inserted into the DOM and
  92596. attached. This prevents DOM mutations triggered by beforeload handlers from firing in the
  92597. midst of DOM insertion, which can lead to assertion failures and crashes.
  92598. Test: fast/dom/beforeload/remove-link-in-beforeload-listener.html
  92599. * html/HTMLLinkElement.cpp:
  92600. (WebCore::HTMLLinkElement::HTMLLinkElement): Initialize m_shouldProcessAfterAttach to false.
  92601. (WebCore::HTMLLinkElement::processCallback): Add a static callback function which calls
  92602. HTMLLinkElement::process().
  92603. (WebCore::HTMLLinkElement::insertedIntoDocument): Instead of calling process() directly, set
  92604. m_shouldProcessAfterAttach to true to indicate that process() should be called after attach().
  92605. (WebCore::HTMLLinkElement::removedFromDocument): Set m_shouldProcessAfterAttach to false.
  92606. (WebCore::HTMLLinkElement::attach): If m_shouldProcessAfterAttach is true, register
  92607. HTMLLinkElement::processCallback() as a post-attach callback.
  92608. * html/HTMLLinkElement.h: Add m_shouldProcessAfterAttach.
  92609. (WebCore::HTMLLinkElement::canLazyAttach): Override canLazyAttach() to return false to
  92610. indicate that a full attach should be performed. This ensures the post-attach callbacks are
  92611. fired.
  92612. 2010-06-18 Chris Fleizach <cfleizach@apple.com>
  92613. Unreviewed. Windows build fix.
  92614. AX: presentational role needs to be inherited by required elements
  92615. https://bugs.webkit.org/show_bug.cgi?id=40132
  92616. * accessibility/AccessibilityRenderObject.cpp:
  92617. (WebCore::AccessibilityRenderObject::inheritsPresentationalRole):
  92618. 2010-06-18 Chris Fleizach <cfleizach@apple.com>
  92619. Reviewed by David Kilzer.
  92620. AX: presentational role needs to be inherited by required elements
  92621. https://bugs.webkit.org/show_bug.cgi?id=40132
  92622. Test: platform/mac/accessibility/inherited-presentational-lists.html
  92623. * accessibility/AccessibilityRenderObject.cpp:
  92624. (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
  92625. (WebCore::AccessibilityRenderObject::inheritsPresentationalRole):
  92626. * accessibility/AccessibilityRenderObject.h:
  92627. (WebCore::AccessibilityRenderObject::node):
  92628. 2010-06-18 Darin Adler <darin@apple.com>
  92629. Fix GTK build after reflection change.
  92630. * bindings/scripts/CodeGeneratorGObject.pm: Changed code
  92631. that emits setters to convey the correct type of the attribute.
  92632. The GObject code generator takes a different approach to attributes
  92633. than the others, so it's hacked a bit to make it more like them.
  92634. We should find a way to share more code between the different generators.
  92635. * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  92636. Updated to expect correct results.
  92637. 2010-06-18 Yury Semikhatsky <yurys@chromium.org>
  92638. Unreviewed: Qt build fix.
  92639. * inspector/InspectorController.cpp:
  92640. 2010-06-18 Justin Garcia <justin.garcia@apple.com>
  92641. Reviewed by Ojan Vafai.
  92642. https://bugs.webkit.org/show_bug.cgi?id=39798
  92643. No selection change notification for editing operation that doesn't change the selection's DOM position
  92644. Some editing operations change the selection visually without affecting its position within
  92645. the DOM. This was previously known to occur for certain typing commands, but it can also
  92646. occur for some Pastes and changes to block style.
  92647. * editing/Editor.cpp:
  92648. (WebCore::Editor::appliedEditing):
  92649. (WebCore::Editor::unappliedEditing):
  92650. (WebCore::Editor::reappliedEditing):
  92651. (WebCore::Editor::changeSelectionAfterCommand):
  92652. * editing/Editor.h:
  92653. 2010-06-18 Gyuyoung Kim <gyuyoung.kim@samsung.com>
  92654. Unreviewed build fix.
  92655. [EFL] Build break on Debug build.
  92656. https://bugs.webkit.org/show_bug.cgi?id=40810
  92657. * CMakeLists.txt: Add CSSPreloadScanner.cpp
  92658. 2010-06-18 Pavel Podivilov <podivilov@chromium.org>
  92659. Reviewed by Yury Semikhatsky.
  92660. Web Inspector: persist breakpoints in inspector settings.
  92661. https://bugs.webkit.org/show_bug.cgi?id=14190
  92662. * GNUmakefile.am:
  92663. * WebCore.gypi:
  92664. * WebCore.pro:
  92665. * WebCore.vcproj/WebCore.vcproj:
  92666. * WebCore.xcodeproj/project.pbxproj:
  92667. * inspector/InspectorController.cpp:
  92668. (WebCore::InspectorController::InspectorController):
  92669. (WebCore::InspectorController::setSessionSettings):
  92670. (WebCore::InspectorController::didCommitLoad):
  92671. (WebCore::InspectorController::setBreakpoint):
  92672. (WebCore::InspectorController::removeBreakpoint):
  92673. (WebCore::InspectorController::didParseSource):
  92674. (WebCore::InspectorController::breakpointsSettingKey):
  92675. (WebCore::InspectorController::loadBreakpoints):
  92676. (WebCore::InspectorController::saveBreakpoints):
  92677. * inspector/InspectorController.h:
  92678. * inspector/InspectorValues.cpp:
  92679. (WebCore::InspectorValue::parseJSON):
  92680. * inspector/InspectorValues.h:
  92681. * inspector/ScriptBreakpoint.cpp: Added.
  92682. (WebCore::ScriptBreakpoint::sourceBreakpointsFromInspectorObject):
  92683. (WebCore::ScriptBreakpoint::inspectorObjectFromSourceBreakpoints):
  92684. * inspector/ScriptBreakpoint.h:
  92685. * inspector/front-end/BreakpointManager.js:
  92686. (WebInspector.BreakpointManager.prototype.addBreakpoint):
  92687. (WebInspector.BreakpointManager.prototype.restoredBreakpoint):
  92688. (WebInspector.BreakpointManager.prototype.breakpointsForSourceID):
  92689. (WebInspector.BreakpointManager.prototype.breakpointsForURL):
  92690. (WebInspector.BreakpointManager.prototype._addBreakpoint):
  92691. * inspector/front-end/inspector.js:
  92692. (WebInspector.restoredBreakpoint):
  92693. 2010-06-18 Darin Adler <darin@apple.com>
  92694. Reviewed by Sam Weinig.
  92695. Implement additional DOM attribute reflection for bindings
  92696. https://bugs.webkit.org/show_bug.cgi?id=39936
  92697. - Added support for [Reflect] for long, unsigned long, and boolean
  92698. attributes.
  92699. - Fixed code that set attributes like this: <video controls="controls">
  92700. to instead set them like this: <video controls>.
  92701. - Added lots more uses of [Reflect].
  92702. - Removed now-unneeded [ConvertFromString].
  92703. - Made [Reflect] imply [ConvertNullToNullString] so we can get rid
  92704. of most uses of the latter.
  92705. - Made [Reflect] automatically lowercase the name of the reflected
  92706. content attribute to minimize the need to specify a custom content
  92707. attribute name.
  92708. One thing this patch does *not* do is remove the unneeded functions
  92709. in the various DOM classes that are no longer used by the bindings.
  92710. We should do that in a followup.
  92711. * bindings/scripts/CodeGenerator.pm: Added new functions so code
  92712. can be shared across bindings, GetterExpressionPrefix and
  92713. SetterExpressionPrefix. We can do a lot more refactoring like
  92714. this in the future.
  92715. * bindings/scripts/CodeGeneratorCPP.pm: Removed unneeded
  92716. ConvertFromString handling, changed to use the new
  92717. GetterExpressionPrefix and SetterExpressionPrefix functions
  92718. to better handle reflected DOM attributes.
  92719. * bindings/scripts/CodeGeneratorGObject.pm: Removed unneeded
  92720. ConvertFromString handling, changed to use the new
  92721. GetterExpressionPrefix and SetterExpressionPrefix functions
  92722. to better handle reflected DOM attributes. Fixed a few things
  92723. in the output so the .cpp file will have more WebKit style.
  92724. The .h file should be GTK style, but the .cpp file can be the
  92725. standard WebKit style eventually.
  92726. * bindings/scripts/CodeGeneratorJS.pm: Changed to use the new
  92727. GetterExpressionPrefix and SetterExpressionPrefix functions
  92728. and removed a now-unneeded IsSVGAnimatedType special case since
  92729. the new functions take care of it. Made reflected attributes
  92730. automatically convert null to the null string without a
  92731. separate ConvertNullToNullString attribute.
  92732. * bindings/scripts/CodeGeneratorObjC.pm: Changed to use the new
  92733. GetterExpressionPrefix and SetterExpressionPrefix functions
  92734. and removed a now-unneeded IsSVGAnimatedType special case since
  92735. the new functions take care of it. Redid the special cases for
  92736. ownerDocument and for operator to fit better with the new code
  92737. paths. Removed unneeded ConvertFromString handling.
  92738. * bindings/scripts/CodeGeneratorV8.pm: Changed to use the new
  92739. GetterExpressionPrefix and SetterExpressionPrefix functions
  92740. and removed a now-unneeded IsSVGAnimatedType special case since
  92741. the new functions take care of it. Made reflected attributes
  92742. automatically convert null to the null string without a
  92743. separate ConvertNullToNullString attribute.
  92744. * bindings/scripts/test/TestObj.idl: Added some test cases for
  92745. content attribute reflection and for exceptions in string-typed
  92746. attributes.
  92747. * bindings/scripts/test/CPP/WebKitDOMTestObj.cpp: Updated.
  92748. * bindings/scripts/test/CPP/WebKitDOMTestObj.h: Ditto.
  92749. * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: Ditto.
  92750. * bindings/scripts/test/GObject/WebKitDOMTestObj.h: Ditto.
  92751. * bindings/scripts/test/JS/JSTestObj.cpp: Ditto.
  92752. * bindings/scripts/test/JS/JSTestObj.h: Ditto.
  92753. * bindings/scripts/test/ObjC/DOMTestObj.h: Ditto.
  92754. * bindings/scripts/test/ObjC/DOMTestObj.mm: Ditto.
  92755. * bindings/scripts/test/V8/V8TestObj.cpp: Ditto.
  92756. * dom/Element.cpp:
  92757. (WebCore::Element::getIntegralAttribute): Added.
  92758. (WebCore::Element::setIntegralAttribute): Added.
  92759. (WebCore::Element::getUnsignedIntegralAttribute): Added.
  92760. (WebCore::Element::setUnsignedIntegralAttribute): Added.
  92761. * dom/Element.h: Added new attribute get/set functions for bindings.
  92762. * html/HTMLMediaElement.cpp:
  92763. (WebCore::HTMLMediaElement::isURLAttribute): Added. Returns true for
  92764. srcAttr.
  92765. * html/HTMLMediaElement.h: Added isURLAttribute.
  92766. * html/HTMLVideoElement.cpp:
  92767. (WebCore::HTMLVideoElement::isURLAttribute): Changed to call
  92768. HTMLMediaElement::isURLAttribute before checking for posterAttr.
  92769. * html/HTMLAnchorElement.idl:
  92770. * html/HTMLAppletElement.idl:
  92771. * html/HTMLAreaElement.idl:
  92772. * html/HTMLBRElement.idl:
  92773. * html/HTMLBaseElement.idl:
  92774. * html/HTMLBaseFontElement.idl:
  92775. * html/HTMLBlockquoteElement.idl:
  92776. * html/HTMLBodyElement.idl:
  92777. * html/HTMLButtonElement.idl:
  92778. * html/HTMLDListElement.idl:
  92779. * html/HTMLDirectoryElement.idl:
  92780. * html/HTMLDivElement.idl:
  92781. * html/HTMLElement.idl:
  92782. * html/HTMLEmbedElement.idl:
  92783. * html/HTMLFontElement.idl:
  92784. * html/HTMLFormElement.idl:
  92785. * html/HTMLFrameElement.idl:
  92786. * html/HTMLFrameSetElement.idl:
  92787. * html/HTMLHRElement.idl:
  92788. * html/HTMLHeadElement.idl:
  92789. * html/HTMLHeadingElement.idl:
  92790. * html/HTMLHtmlElement.idl:
  92791. * html/HTMLIFrameElement.idl:
  92792. * html/HTMLImageElement.idl:
  92793. * html/HTMLInputElement.idl:
  92794. * html/HTMLIsIndexElement.idl:
  92795. * html/HTMLLIElement.idl:
  92796. * html/HTMLLabelElement.idl:
  92797. * html/HTMLLegendElement.idl:
  92798. * html/HTMLLinkElement.idl:
  92799. * html/HTMLMapElement.idl:
  92800. * html/HTMLMediaElement.idl:
  92801. * html/HTMLMenuElement.idl:
  92802. * html/HTMLMetaElement.idl:
  92803. * html/HTMLModElement.idl:
  92804. * html/HTMLOListElement.idl:
  92805. * html/HTMLObjectElement.idl:
  92806. * html/HTMLOptGroupElement.idl:
  92807. * html/HTMLOptionElement.idl:
  92808. * html/HTMLParagraphElement.idl:
  92809. * html/HTMLParamElement.idl:
  92810. * html/HTMLPreElement.idl:
  92811. * html/HTMLQuoteElement.idl:
  92812. * html/HTMLScriptElement.idl:
  92813. * html/HTMLStyleElement.idl:
  92814. * html/HTMLTableCaptionElement.idl:
  92815. * html/HTMLTableCellElement.idl:
  92816. * html/HTMLTableColElement.idl:
  92817. * html/HTMLTableElement.idl:
  92818. * html/HTMLTableRowElement.idl:
  92819. * html/HTMLTableSectionElement.idl:
  92820. * html/HTMLTextAreaElement.idl:
  92821. * html/HTMLUListElement.idl:
  92822. * html/HTMLVideoElement.idl:
  92823. * svg/SVGElement.idl:
  92824. Added more uses of [Reflect]. Got rid of uses of [ConvertNullToNullString] that
  92825. are now unneeded since [Reflect] now implies that. Changed formatting to be
  92826. simpler and consistent without all the lining up and multiple lines.
  92827. 2010-06-17 Dumitru Daniliuc <dumi@chromium.org>
  92828. Reviewed by Dimitri Glazkov.
  92829. Remove some unnecessary checks that cause compiler warnings.
  92830. https://bugs.webkit.org/show_bug.cgi?id=40772
  92831. * bindings/v8/custom/V8SQLResultSetRowListCustom.cpp:
  92832. (WebCore::V8SQLResultSetRowList::itemCallback):
  92833. * bindings/v8/npruntime.cpp:
  92834. 2010-06-18 Mikhail Naganov <mnaganov@chromium.org>
  92835. Reviewed by Yury Semikhatsky.
  92836. Implement 'takeHeapSnapshot' in InspectorController.
  92837. https://bugs.webkit.org/show_bug.cgi?id=40834
  92838. * bindings/js/ScriptProfiler.h:
  92839. (WebCore::ScriptProfiler::takeHeapSnapshot):
  92840. * bindings/v8/ScriptProfiler.cpp:
  92841. (WebCore::ScriptProfiler::takeHeapSnapshot):
  92842. * bindings/v8/ScriptProfiler.h:
  92843. * inspector/InspectorBackend.cpp:
  92844. (WebCore::InspectorBackend::takeHeapSnapshot):
  92845. * inspector/InspectorBackend.h:
  92846. * inspector/InspectorBackend.idl:
  92847. * inspector/InspectorController.cpp:
  92848. (WebCore::InspectorController::takeHeapSnapshot):
  92849. * inspector/InspectorController.h:
  92850. 2010-06-18 Dan Bernstein <mitz@apple.com>
  92851. Reviewed by Anders Carlsson.
  92852. REGRESSION (r61379?): Assertion failure in Element::getURLAttribute() when accessing the src attribute of a script element
  92853. https://bugs.webkit.org/show_bug.cgi?id=40831
  92854. Test: fast/dom/HTMLScriptElement/isURLAttribute.html
  92855. * html/HTMLScriptElement.cpp:
  92856. (WebCore::HTMLScriptElement::isURLAttribute): Check for the 'src' attribute.
  92857. 2010-06-18 Sheriff Bot <webkit.review.bot@gmail.com>
  92858. Unreviewed, rolling out r61405.
  92859. http://trac.webkit.org/changeset/61405
  92860. https://bugs.webkit.org/show_bug.cgi?id=40838
  92861. broke chromium mac compile (Requested by tonyg-cr1 on
  92862. #webkit).
  92863. * bindings/v8/ScriptSourceCode.h:
  92864. (WebCore::ScriptSourceCode::ScriptSourceCode):
  92865. * bindings/v8/V8Proxy.cpp:
  92866. (WebCore::V8Proxy::compileScript):
  92867. (WebCore::V8Proxy::evaluate):
  92868. * bindings/v8/V8Proxy.h:
  92869. 2010-06-18 Zhenyao Mo <zmo@google.com>
  92870. Reviewed by Dimitri Glazkov.
  92871. Fix WebGLRenderingContext helper functions find{Texture/Renderbuffer/Buffer}
  92872. https://bugs.webkit.org/show_bug.cgi?id=40176
  92873. * html/canvas/WebGLBuffer.cpp: Remove constructor with existing name.
  92874. * html/canvas/WebGLBuffer.h: Ditto.
  92875. * html/canvas/WebGLRenderingContext.cpp:
  92876. (WebCore::WebGLRenderingContext::getVertexAttrib): Use findBuffer instead of creating a new WebGLBuffer.
  92877. (WebCore::WebGLRenderingContext::findTexture): Deal with name == 0 case and return raw pointer.
  92878. (WebCore::WebGLRenderingContext::findRenderbuffer): Ditto.
  92879. (WebCore::WebGLRenderingContext::findBuffer): Find WebGLBuffer object using given name.
  92880. * html/canvas/WebGLRenderingContext.h: Add findBuffer function declaration, change return type to raw pointer.
  92881. 2010-06-18 Tony Gentilcore <tonyg@chromium.org>
  92882. Reviewed by David Levin.
  92883. Persist V8's ScriptData to the memory cache.
  92884. https://bugs.webkit.org/show_bug.cgi?id=38661
  92885. This stores V8's ScriptData in the memory cache and also causes the
  92886. network platform layer to be notified of the available cacheable
  92887. metadata.
  92888. Chromium's morejs benchmark showed a ~7% improvement when this was
  92889. originally submitted (before it had to be rolled back).
  92890. Test: fast/js/parser-high-byte-character.html
  92891. * bindings/v8/ScriptSourceCode.h:
  92892. (WebCore::ScriptSourceCode::ScriptSourceCode):
  92893. (WebCore::ScriptSourceCode::cachedScript):
  92894. * bindings/v8/V8Proxy.cpp:
  92895. (WebCore::V8Proxy::compileScript):
  92896. (WebCore::V8Proxy::precompileScript):
  92897. (WebCore::V8Proxy::evaluate):
  92898. * bindings/v8/V8Proxy.h:
  92899. 2010-06-18 Anton Muhin <antonm@chromium.org>
  92900. Reviewed by Dimitri Glazkov.
  92901. [v8] Finish migration to new named property query API
  92902. https://bugs.webkit.org/show_bug.cgi?id=40771
  92903. Remove definition which allowed gradual transition to new API.
  92904. See https://bugs.webkit.org/show_bug.cgi?id=40303 for first phase.
  92905. * config.h:
  92906. 2010-06-17 Pavel Feldman <pfeldman@chromium.org>
  92907. Reviewed by Yury Semikhatsky.
  92908. Web Inspector: bring XHR console records back.
  92909. - adds "Enable XHR Monitor" / "Disable XHR Monitor" actions to the console's context menu
  92910. - make the chosen option persist in the settings.
  92911. https://bugs.webkit.org/show_bug.cgi?id=40799
  92912. * English.lproj/localizedStrings.js:
  92913. * inspector/InspectorBackend.cpp:
  92914. (WebCore::InspectorBackend::disableSearchingForNode):
  92915. (WebCore::InspectorBackend::enableMonitoringXHR):
  92916. (WebCore::InspectorBackend::disableMonitoringXHR):
  92917. * inspector/InspectorBackend.h:
  92918. * inspector/InspectorBackend.idl:
  92919. * inspector/InspectorController.cpp:
  92920. (WebCore::InspectorController::InspectorController):
  92921. (WebCore::InspectorController::setMonitoringXHR):
  92922. (WebCore::InspectorController::didLoadResourceFromMemoryCache):
  92923. (WebCore::InspectorController::identifierForInitialRequest):
  92924. (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
  92925. (WebCore::InspectorController::ensureSettingsLoaded):
  92926. * inspector/InspectorController.h:
  92927. * inspector/InspectorFrontend.cpp:
  92928. (WebCore::InspectorFrontend::monitoringXHRWasEnabled):
  92929. (WebCore::InspectorFrontend::monitoringXHRWasDisabled):
  92930. * inspector/InspectorFrontend.h:
  92931. * inspector/front-end/ConsoleView.js:
  92932. (WebInspector.ConsoleView.prototype._handleContextMenuEvent):
  92933. (WebInspector.ConsoleView.prototype._registerShortcuts):
  92934. * inspector/front-end/InjectedScript.js:
  92935. (injectedScriptConstructor.):
  92936. * inspector/front-end/InspectorBackendStub.js:
  92937. (.WebInspector.InspectorBackendStub):
  92938. (.WebInspector.InspectorBackendStub.prototype.enableMonitoringXHR):
  92939. (.WebInspector.InspectorBackendStub.prototype.disableMonitoringXHR):
  92940. * inspector/front-end/inspector.js:
  92941. (WebInspector.monitoringXHRWasEnabled):
  92942. (WebInspector.monitoringXHRWasDisabled):
  92943. * xml/XMLHttpRequest.cpp:
  92944. (WebCore::XMLHttpRequest::didFinishLoading):
  92945. 2010-06-18 Nikolas Zimmermann <nzimmermann@rim.com>
  92946. Reviewed by Dirk Schulze.
  92947. Modernize SVG Text code, following the HTML design
  92948. https://bugs.webkit.org/show_bug.cgi?id=40663
  92949. SVG Text does not support subpixel positioning
  92950. https://bugs.webkit.org/show_bug.cgi?id=12172
  92951. RenderSVGText can't do partial repaints
  92952. https://bugs.webkit.org/show_bug.cgi?id=15386
  92953. HTML and SVG need to share more text painting code
  92954. https://bugs.webkit.org/show_bug.cgi?id=15644
  92955. Rewrite SVG Text rendering, only keeping the layout of the actual characters/chunks as it was.
  92956. We're now drawing SVG Text very similar to HTML Text, utilizing the SVGInlineFlowBox/SVGInlineTextBox structure,
  92957. instead of painting all text content of a <text> element from the SVGRootInlineBox, as it was the last years.
  92958. Rough overview of the changes:
  92959. - Partial repainting support for text selections (startPos/endPos are respected), no more redrawing of the whole <text> content while selecting
  92960. - Subpixel positioning (near pixel-perfect rendering for all W3C tests that contain text, finally!)
  92961. -> much better textPath results, characters now align as expected, as all rounding hacks are disabled for SVG text runs, and subpixel precision is used while painting
  92962. - No more custom handling of selection, the standard methods offsetFromPosition() / selectionRectForText() are used instead.
  92963. - Selection works as expected on stretched/squeezed text (lengthAdjust="spacingAndGlyphs"), takes 'includePartialGlyphs' into account - just like HTML text
  92964. - Correct text decoration drawing (proper with and positions and rendering-order, underline/overline before text, strike-through afterwards)
  92965. - Proper sizing of all InlineBoxes, starting from the SVGRootInlineBox, down to every single flow & text box
  92966. -> correct DRT results, no more weird negative offsets of text runs, etc. Looks exactly like the HTML text test results.
  92967. - Rewritten SVGTextContentElement API to take per-character / per-chunk transformations into account.
  92968. - Speeeeeed! Drawing is much faster now.
  92969. Add 24 new testcases covering basic selection features and the SVGTextContentElement API. Each test draws a half-opaque red rectangle, calculated using
  92970. SVGTextContentElement API to highlight the area that is supposed to be selected. Then eventSender API is utilized to move the mouse to the calculated
  92971. start origin, holding it down and moving it to the end position.
  92972. A detailed list of tests that show progression, can be found in the corresponding LayoutTests/ChangeLog.
  92973. Note that this requires a rebaselining of all SVG tests containing text elements.
  92974. Tests: svg/hixie/text/001.xml (moved from svg/hixie/text/001-broken.xml)
  92975. svg/text/lengthAdjust-text-metrics.html
  92976. svg/text/select-textLength-spacing-squeeze-1.svg
  92977. svg/text/select-textLength-spacing-squeeze-2.svg
  92978. svg/text/select-textLength-spacing-squeeze-3.svg
  92979. svg/text/select-textLength-spacing-squeeze-4.svg
  92980. svg/text/select-textLength-spacing-stretch-1.svg
  92981. svg/text/select-textLength-spacing-stretch-2.svg
  92982. svg/text/select-textLength-spacing-stretch-3.svg
  92983. svg/text/select-textLength-spacing-stretch-4.svg
  92984. svg/text/select-textLength-spacingAndGlyphs-squeeze-1.svg
  92985. svg/text/select-textLength-spacingAndGlyphs-squeeze-2.svg
  92986. svg/text/select-textLength-spacingAndGlyphs-squeeze-3.svg
  92987. svg/text/select-textLength-spacingAndGlyphs-squeeze-4.svg
  92988. svg/text/select-textLength-spacingAndGlyphs-stretch-1.svg
  92989. svg/text/select-textLength-spacingAndGlyphs-stretch-2.svg
  92990. svg/text/select-textLength-spacingAndGlyphs-stretch-3.svg
  92991. svg/text/select-textLength-spacingAndGlyphs-stretch-4.svg
  92992. svg/text/select-x-list-1.svg
  92993. svg/text/select-x-list-2.svg
  92994. svg/text/select-x-list-3.svg
  92995. svg/text/select-x-list-4.svg
  92996. svg/text/select-x-list-with-tspans-1.svg
  92997. svg/text/select-x-list-with-tspans-2.svg
  92998. svg/text/select-x-list-with-tspans-3.svg
  92999. svg/text/select-x-list-with-tspans-4.svg
  93000. * rendering/InlineBox.h: Remove not needed isInlineBox() method.
  93001. (WebCore::InlineBox::isInlineTextBox): Constify this method.
  93002. (WebCore::InlineBox::isSVGInlineTextBox): Added, with ENABLE(SVG) guards, just like the existing isSVGRootInlineBox().
  93003. (WebCore::InlineBox::isSVGRootInlineBox): Constify this method.
  93004. (WebCore::InlineBox::calculateBoundaries): Added, with ENABLE(SVG) guards, used to calculate the whole boundaries of a InlineText/FlowBox, only used in SVG text.
  93005. * rendering/InlineFlowBox.h: Devirtualize placeBoxesHorizontally(), SVG no more overrides it.
  93006. * rendering/InlineTextBox.h: Virtualize selectionStartEnd() - SVGInlineTextBox needs to change start/endPositions based on the current text chunk part that it's rendering.
  93007. SVGTextChunkLayoutInfo.h contains a detailed documentation what a SVGTextChunk/SVGTextChunkPart is, and why they are necessary.
  93008. (WebCore::InlineTextBox::isInlineTextBox): Constify this method.
  93009. * rendering/RenderBlock.h:
  93010. (WebCore::RenderBlock::forceLayoutInlineChildren): Add helper method, used only by RenderSVGText, to use a simplified layout strategy, which is a big speed win.
  93011. * rendering/RenderBlockLineLayout.cpp:
  93012. (WebCore::RenderBlock::computeHorizontalPositionsForLine): Remove all isSVGText() special cases, as this function is not called anymore for SVG text.
  93013. (WebCore::RenderBlock::layoutInlineChildren): Don't call computeHorizontalPositionsForLine() for SVG text. computePerCharacterLayoutInformation() overrides it anyway.
  93014. * rendering/RenderSVGInline.cpp: Remove custom absoluteRects/absoluteQuads code, all shared with RenderInline now.
  93015. (WebCore::RenderSVGInline::clippedOverflowRectForRepaint): Added, forward to SVGRenderBase, just like all other non-text SVG renderers do.
  93016. (WebCore::RenderSVGInline::computeRectForRepaint): Ditto.
  93017. (WebCore::RenderSVGInline::mapLocalToContainer): Ditto
  93018. * rendering/RenderSVGInline.h:
  93019. * rendering/RenderSVGInlineText.cpp: Remove destroy() hack, which called setNeedsLayoutAndPrefWidthsRecalc/repaint on destruction.
  93020. As repaint rects work properly now, this hack is no longer necessary, it was only hiding the real problem.
  93021. (WebCore::RenderSVGInlineText::styleDidChange): Don't skip RenderText::styleDidChange() anymore, which automatically schedules layout changes for us.
  93022. (WebCore::RenderSVGInlineText::localCaretRect): Remove outdated comment, localCaretRect() is not yet needed in SVG text code.
  93023. * rendering/RenderSVGInlineText.h: Remove custom absoluteRects/absoluteQuads/selectionRectForRepaint/positionForPoint/destroy/computeRectForRepaint* code, all shared with RenderText now.
  93024. * rendering/RenderSVGText.cpp:
  93025. (WebCore::RenderSVGText::mapLocalToContainer): Take x/y translation into account, but do NOT include in localToParentTransform(), as that would affect rendering.
  93026. (WebCore::RenderSVGText::layout): Use super-simplified layout strategy, removing a lot of uncessary stuff done by RenderBlock, that SVG does not need.
  93027. (WebCore::RenderSVGText::absoluteRects): Remove dead-code, retreving the RenderSVGRoot* object, not necessary since a longer time.
  93028. (WebCore::RenderSVGText::absoluteQuads): Ditto.
  93029. (WebCore::RenderSVGText::paint): Early exit if we're not in PaintPhaseForeground/PaintPhaseSelfOutline. We're not interessted in other phases.
  93030. (WebCore::RenderSVGText::strokeBoundingBox): Fix stroke width calculation, no need to special case SVGFonts.
  93031. * rendering/RenderSVGText.h: Remove updateFirstLineBlock/updateFirstLetter overrides, the new RenderSVGText::layout() code, doesn't use these methods at all.
  93032. We asked RenderBlock to layout before, which was calling updateFirstLetter & co, this is gone now, as it was all not needed.
  93033. (WebCore::RenderSVGText::objectBoundingBox): Directly return the frameRect here, inlined for speed.
  93034. * rendering/RootInlineBox.cpp:
  93035. (WebCore::RootInlineBox::verticallyAlignBoxes): Early-exit if we're a SVGRootInlineBox. SVG handles this on its own.
  93036. * rendering/RootInlineBox.h: Devirtualize verticallyAlignBoxes(), SVG no longer overrides it. Remove virtual computePerCharacterLayoutInformation() method, only lives in SVGRootInlineBox now.
  93037. * rendering/SVGCharacterData.h: Remove no longer needed SVGTextDecorationInfo.
  93038. * rendering/SVGCharacterLayoutInfo.cpp: Don't pass a reference to a Vector<SVGChar> to SVGCharacterLayoutInfo, let it create it.
  93039. (WebCore::SVGCharacterLayoutInfo::SVGCharacterLayoutInfo):
  93040. * rendering/SVGCharacterLayoutInfo.h:
  93041. * rendering/SVGInlineFlowBox.cpp:
  93042. (WebCore::SVGInlineFlowBox::paint): Ask children to paint.
  93043. (WebCore::SVGInlineFlowBox::calculateBoundaries): Calculate boundaries by uniting all direct children boundaries.
  93044. * rendering/SVGInlineFlowBox.h: Remove placeBoxesHorizontally, which does not get called anymore, and does not need to be overriden.
  93045. * rendering/SVGInlineTextBox.cpp:
  93046. (WebCore::SVGInlineTextBox::SVGInlineTextBox): Don't use abbrevations for variable names, initialize new member variables.
  93047. (WebCore::SVGInlineTextBox::measureCharacter): New helper function extracted from buildLayoutInformation, replacing calculateGlyphWidth/Height.
  93048. (WebCore::SVGInlineTextBox::offsetForPosition): Implement this method by utilizing Font::offsetForPosition(), but respecting the text chunk parts.
  93049. (WebCore::SVGInlineTextBox::positionForOffset): No change here, still not used.
  93050. (WebCore::SVGInlineTextBox::selectionRect): Rewritten, utilizing Font::selectionRectForText(), taking text chunk parts into account, and the supplied startPos/endPos.
  93051. (WebCore::SVGInlineTextBox::paint): Rewritten, to handle paint servers much more elegant, than the old solution. See code for details, too much to explain here.
  93052. (WebCore::SVGInlineTextBox::acquirePaintingResource): Helper function, used from paint().
  93053. (WebCore::SVGInlineTextBox::releasePaintingResource): Ditto.
  93054. (WebCore::SVGInlineTextBox::prepareGraphicsContextForTextPainting): Ditto.
  93055. (WebCore::SVGInlineTextBox::restoreGraphicsContextAfterTextPainting): Ditto.
  93056. (WebCore::SVGInlineTextBox::constructTextRun): Helper function centralizing the creation of a TextRun object, used to draw/measure SVG text.
  93057. (WebCore::SVGInlineTextBox::mapStartEndPositionsIntoChunkPartCoordinates): Important helper function, mapping a startPos/endPos from InlineTextBox
  93058. coordinate space to the SVGInlineTextBox, respecting the current text chunk part.
  93059. (WebCore::SVGInlineTextBox::selectionStartEnd): Call InlineTextBox::selectionStartEnd(), and apply post fixes when m_currentChunkPart is set. (called when painting a selected chunk part)
  93060. (WebCore::positionOffsetForDecoration): Refactored from old paintDecoration() code.
  93061. (WebCore::thicknessForDecoration): Ditto.
  93062. (WebCore::findRenderObjectDefininingTextDecoration): Ditto.
  93063. (WebCore::SVGInlineTextBox::paintDecoration): Ditto. (Can not share the code with HTML, as we need floating point precision, and directly call fillRect, instead of drawHighlightForText.)
  93064. (WebCore::SVGInlineTextBox::paintDecorationWithStyle): Ditto.
  93065. (WebCore::SVGInlineTextBox::paintSelection): New method, painting text selections with floating-point precision.
  93066. (WebCore::SVGInlineTextBox::paintText): New method, painting text with floating-point precision, correctly handling selected text, removing the need for special SVG text sub-paint phases.
  93067. (GlyphFill/StrokeSelectionPhase, GlyphFill/StrokePhase)
  93068. (WebCore::SVGInlineTextBox::buildLayoutInformation): Use new measureCharacter() helper function, renamed some variables, to avoid abbrevations.
  93069. (WebCore::SVGInlineTextBox::calculateGlyphBoundaries): Rewritten to use new measureCharacter() helper function.
  93070. (WebCore::SVGInlineTextBox::calculateBoundaries): Rewritten to take text chunk parts into account, serves as central method used to layout InlineBoxes (see SVGRootInlineBox.)
  93071. * rendering/SVGInlineTextBox.h:
  93072. (WebCore::SVGInlineTextBox::isSVGInlineTextBox): Added.
  93073. (WebCore::SVGInlineTextBox::setHeight): Rename variable, to avoid abbrevations.
  93074. (WebCore::SVGInlineTextBox::chunkTransformation): New helper function, returning the transformation, that gets applied to the complete text chunk, if any.
  93075. (WebCore::SVGInlineTextBox::setChunkTransformation): New helper function used by SVGRrootInlineBox, to set the chunk transformation, during text chunk part propagation phase.
  93076. (WebCore::SVGInlineTextBox::addChunkPartInformation): Ditto.
  93077. (WebCore::SVGInlineTextBox::svgTextChunkParts): Ditto.
  93078. * rendering/SVGRootInlineBox.cpp: Virtually rewritten, to be designed more like HTMLs RootInlineBox, diving into children for painting.
  93079. (WebCore::SVGRootInlineBox::paint): Ask children to paint, nothing more. No more traversing through the SVGTextChunks, figuring out which part to render, this is done in layout phase now.
  93080. (WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation): Completly redesigned, see SVGTextChunkLayoutInfo.h for a high-level overview.
  93081. (WebCore::SVGRootInlineBox::buildLayoutInformation): Just small cleanups, nothing changed here.
  93082. (WebCore::SVGRootInlineBox::layoutChildBoxes): New helper function, extracted from old layoutInlineBoxes().
  93083. (WebCore::SVGRootInlineBox::layoutRootBox): Ditto.
  93084. (WebCore::SVGRootInlineBox::propagateTextChunkPartInformation): Key-concept of the new design, builds "text chunk parts" and propagates that knownledge to all child SVGInlineTextBoxes.
  93085. * rendering/SVGRootInlineBox.h:
  93086. (WebCore::SVGRootInlineBox::isSVGRootInlineBox): Constified method.
  93087. (WebCore::SVGRootInlineBox::setHeight): Change variable name, to avoid abbrevations.
  93088. * rendering/SVGTextChunkLayoutInfo.cpp: Remove if 0, enable compilation.
  93089. * rendering/SVGTextChunkLayoutInfo.h: Add large comment explaining text chunk parts, the key concept of the new design. Remove SVGTextChunkWalker & friends, no longer used.
  93090. (WebCore::SVGTextChunkPart::SVGTextChunkPart):
  93091. (WebCore::SVGTextChunkPart::isValid):
  93092. (WebCore::SVGTextChunk::SVGTextChunk):
  93093. (WebCore::SVGTextChunkLayoutInfo::SVGTextChunkLayoutInfo):
  93094. (WebCore::SVGTextChunkLayoutInfo::textChunks):
  93095. * rendering/SVGTextLayoutUtilities.cpp:
  93096. (WebCore::cummulatedWidthOfInlineBoxCharacterRange):
  93097. (WebCore::cummulatedHeightOfInlineBoxCharacterRange):
  93098. (WebCore::svgTextRunForInlineTextBox): Disable rounding hacks, explain parameters with comments, why they have which values.
  93099. * rendering/SVGTextLayoutUtilities.h: Remove SVGTextPaintSubphase and SVGTextPaintInfo.
  93100. * rendering/SVGTextQuery.cpp: Remove if 0, enable compilation.
  93101. * rendering/SVGTextQuery.h: Ditto.
  93102. * svg/SVGStyledElement.cpp: Very important change! Do not treat CSS attributes as recognized attributes, that would lead to setNeedsLayout() calls, reducing performance!
  93103. This hack existed, as we were not dealing with text updates correctly, now that RenderSVGInlineText::styleDidChange is fixed, it's no longer necessary.
  93104. (WebCore::SVGStyledElement::isKnownAttribute):
  93105. * svg/SVGTextContentElement.cpp: Completely remove the SVGTextContentElement API, that manually traversed all text chunks, instead use the new SVGTextQuery API.
  93106. (WebCore::SVGTextContentElement::getNumberOfChars):
  93107. (WebCore::SVGTextContentElement::getComputedTextLength):
  93108. (WebCore::SVGTextContentElement::getSubStringLength):
  93109. (WebCore::SVGTextContentElement::getStartPositionOfChar):
  93110. (WebCore::SVGTextContentElement::getEndPositionOfChar):
  93111. (WebCore::SVGTextContentElement::getExtentOfChar):
  93112. (WebCore::SVGTextContentElement::getRotationOfChar):
  93113. (WebCore::SVGTextContentElement::getCharNumAtPosition):
  93114. * svg/SVGTextElement.cpp: Very important change! Do not calls setNeedsLayout() on RenderSVGText, if childrenChanged() has been called.
  93115. * svg/SVGTextElement.h: Completly remove childrenChanged() - no longer necessary, updates work as expected without it now.
  93116. 2010-06-18 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  93117. Reviewed by David Levin.
  93118. Fix compilation when filters are disabled. Revision r60689
  93119. changed the signature of SVGRenderBase::prepareToRenderSVGContent()
  93120. but didn't change the unsused parameters when filters are disabled.
  93121. https://bugs.webkit.org/show_bug.cgi?id=40625
  93122. No new tests. Compilation fix.
  93123. * rendering/SVGRenderSupport.cpp:
  93124. (WebCore::SVGRenderBase::prepareToRenderSVGContent):
  93125. 2010-06-18 Adam Barth <abarth@webkit.org>
  93126. Reviewed by Darin Adler.
  93127. noAccess url schemes block access to inline stylesheets
  93128. https://bugs.webkit.org/show_bug.cgi?id=32309
  93129. Instead of using baseURL() to grab the security context we should just
  93130. use finalURL directly. When I wrote the original patch that added this
  93131. security check, finalURL didn't exist yet.
  93132. If finalURL is an empty URL, that means we generated the style sheet
  93133. from text that didn't have a URL. It would be slightly safer to store
  93134. a bit on CSSStyleSheet indicating whether it came from an inline style
  93135. sheet, but I think this check is fairly accurate.
  93136. Test: http/tests/security/data-url-inline.css.html
  93137. * css/CSSStyleSheet.cpp:
  93138. (WebCore::CSSStyleSheet::cssRules):
  93139. 2010-06-18 Adam Barth <abarth@webkit.org>
  93140. Reviewed by Darin Adler.
  93141. Remove unneeded custom code for WebSocket.send
  93142. https://bugs.webkit.org/show_bug.cgi?id=38180
  93143. We don't appear to require a custom binding here. The old function was
  93144. wacky in two ways:
  93145. 1) It required all of its arguments.
  93146. 2) If the toString of its argument threw, it would catch the exception
  93147. and re-throw a different exception.
  93148. I've kept the first behavior but changed the second (and documented it
  93149. with a test).
  93150. Test: websocket/tests/send-throw.html
  93151. * bindings/js/JSWebSocketCustom.cpp:
  93152. * bindings/v8/custom/V8WebSocketCustom.cpp:
  93153. * websockets/WebSocket.idl:
  93154. 2010-06-15 Dumitru Daniliuc <dumi@chromium.org>
  93155. Reviewed by Adam Barth.
  93156. Move isAvailable()/setIsAvailable() from Database/DatabaseSync to AbstractDatabase.
  93157. https://bugs.webkit.org/show_bug.cgi?id=39041
  93158. * WebCore.base.exp
  93159. * bindings/generic/RuntimeEnabledFeatures.cpp:
  93160. (WebCore::RuntimeEnabledFeatures::openDatabaseEnabled):
  93161. (WebCore::RuntimeEnabledFeatures::openDatabaseSyncEnabled):
  93162. * page/DOMWindow.cpp:
  93163. (WebCore::DOMWindow::openDatabase):
  93164. * storage/AbstractDatabase.cpp:
  93165. (WebCore::AbstractDatabase::isAvailable):
  93166. (WebCore::AbstractDatabase::setIsAvailable):
  93167. * storage/AbstractDatabase.h:
  93168. * storage/Database.cpp:
  93169. * storage/Database.h:
  93170. * storage/DatabaseSync.cpp:
  93171. * storage/DatabaseSync.h:
  93172. * workers/WorkerContext.cpp:
  93173. (WebCore::WorkerContext::openDatabase):
  93174. (WebCore::WorkerContext::openDatabaseSync):
  93175. * workers/WorkerContext.h:
  93176. 2010-06-18 Adam Barth <abarth@webkit.org>
  93177. Rubber-stamped by Eric Seidel.
  93178. Fix the namespace indent for HTML5Lexer. This patch changes
  93179. white-space only.
  93180. * html/HTML5Lexer.h:
  93181. (WebCore::HTML5Lexer::):
  93182. (WebCore::HTML5Lexer::lineNumber):
  93183. (WebCore::HTML5Lexer::columnNumber):
  93184. (WebCore::HTML5Lexer::state):
  93185. (WebCore::HTML5Lexer::setState):
  93186. (WebCore::HTML5Lexer::skipLeadingNewLineForListing):
  93187. (WebCore::HTML5Lexer::InputStreamPreprocessor::InputStreamPreprocessor):
  93188. (WebCore::HTML5Lexer::InputStreamPreprocessor::nextInputCharacter):
  93189. (WebCore::HTML5Lexer::InputStreamPreprocessor::peek):
  93190. (WebCore::HTML5Lexer::InputStreamPreprocessor::advance):
  93191. 2010-06-18 Fumitoshi Ukai <ukai@chromium.org>
  93192. Unreviewed test breakage fix.
  93193. WebSocket: resume should not process buffer if already processing.
  93194. https://bugs.webkit.org/show_bug.cgi?id=39340
  93195. MessageLoop runs in main thread, so we don't need to use timer in worker thread.
  93196. Also, we should not use Timer in worker thread.
  93197. * websockets/ThreadableWebSocketChannelClientWrapper.h:
  93198. (WebCore::ThreadableWebSocketChannelClientWrapper::resume):
  93199. (WebCore::ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper):
  93200. 2010-06-17 Sheriff Bot <webkit.review.bot@gmail.com>
  93201. Unreviewed, rolling out r61379.
  93202. http://trac.webkit.org/changeset/61379
  93203. https://bugs.webkit.org/show_bug.cgi?id=40813
  93204. Broke multiple tests on all platforms (Requested by tkent on
  93205. #webkit).
  93206. * bindings/scripts/CodeGenerator.pm:
  93207. * bindings/scripts/CodeGeneratorCPP.pm:
  93208. * bindings/scripts/CodeGeneratorGObject.pm:
  93209. * bindings/scripts/CodeGeneratorJS.pm:
  93210. * bindings/scripts/CodeGeneratorObjC.pm:
  93211. * bindings/scripts/CodeGeneratorV8.pm:
  93212. * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
  93213. (WebDOMTestObj::attrWithException):
  93214. (WebDOMTestObj::setAttrWithException):
  93215. (WebDOMTestObj::attrWithSetterException):
  93216. (WebDOMTestObj::attrWithGetterException):
  93217. (WebDOMTestObj::setAttrWithGetterException):
  93218. * bindings/scripts/test/CPP/WebDOMTestObj.h:
  93219. * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
  93220. (webkit_dom_test_callback_callback_with_class1param):
  93221. (webkit_dom_test_callback_callback_with_class2param):
  93222. (webkit_dom_test_callback_callback_with_non_bool_return_type):
  93223. * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  93224. (webkit_dom_test_obj_void_method):
  93225. (webkit_dom_test_obj_void_method_with_args):
  93226. (webkit_dom_test_obj_int_method):
  93227. (webkit_dom_test_obj_int_method_with_args):
  93228. (webkit_dom_test_obj_obj_method):
  93229. (webkit_dom_test_obj_obj_method_with_args):
  93230. (webkit_dom_test_obj_method_that_requires_all_args):
  93231. (webkit_dom_test_obj_method_that_requires_all_args_and_throws):
  93232. (webkit_dom_test_obj_serialized_value):
  93233. (webkit_dom_test_obj_method_with_exception):
  93234. (webkit_dom_test_obj_with_dynamic_frame):
  93235. (webkit_dom_test_obj_with_dynamic_frame_and_arg):
  93236. (webkit_dom_test_obj_with_dynamic_frame_and_optional_arg):
  93237. (webkit_dom_test_obj_with_dynamic_frame_and_user_gesture):
  93238. (webkit_dom_test_obj_with_dynamic_frame_and_user_gesture_asad):
  93239. (webkit_dom_test_obj_with_script_state_void):
  93240. (webkit_dom_test_obj_with_script_state_obj):
  93241. (webkit_dom_test_obj_with_script_state_void_exception):
  93242. (webkit_dom_test_obj_with_script_state_obj_exception):
  93243. (webkit_dom_test_obj_with_script_execution_context):
  93244. (webkit_dom_test_obj_method_with_optional_arg):
  93245. (webkit_dom_test_obj_method_with_non_optional_arg_and_optional_arg):
  93246. (webkit_dom_test_obj_method_with_non_optional_arg_and_two_optional_args):
  93247. (webkit_dom_test_obj_get_read_only_int_attr):
  93248. (webkit_dom_test_obj_get_read_only_string_attr):
  93249. (webkit_dom_test_obj_get_read_only_test_obj_attr):
  93250. (webkit_dom_test_obj_get_int_attr):
  93251. (webkit_dom_test_obj_set_int_attr):
  93252. (webkit_dom_test_obj_get_long_long_attr):
  93253. (webkit_dom_test_obj_set_long_long_attr):
  93254. (webkit_dom_test_obj_get_unsigned_long_long_attr):
  93255. (webkit_dom_test_obj_set_unsigned_long_long_attr):
  93256. (webkit_dom_test_obj_get_string_attr):
  93257. (webkit_dom_test_obj_set_string_attr):
  93258. (webkit_dom_test_obj_get_test_obj_attr):
  93259. (webkit_dom_test_obj_set_test_obj_attr):
  93260. (webkit_dom_test_obj_get_attr_with_exception):
  93261. (webkit_dom_test_obj_set_attr_with_exception):
  93262. (webkit_dom_test_obj_get_attr_with_setter_exception):
  93263. (webkit_dom_test_obj_set_attr_with_setter_exception):
  93264. (webkit_dom_test_obj_get_attr_with_getter_exception):
  93265. (webkit_dom_test_obj_set_attr_with_getter_exception):
  93266. (webkit_dom_test_obj_get_script_string_attr):
  93267. (webkit_dom_test_obj_get_conditional_attr1):
  93268. (webkit_dom_test_obj_set_conditional_attr1):
  93269. (webkit_dom_test_obj_get_conditional_attr2):
  93270. (webkit_dom_test_obj_set_conditional_attr2):
  93271. (webkit_dom_test_obj_get_conditional_attr3):
  93272. (webkit_dom_test_obj_set_conditional_attr3):
  93273. (webkit_dom_test_obj_get_description):
  93274. (webkit_dom_test_obj_get_id):
  93275. (webkit_dom_test_obj_set_id):
  93276. (webkit_dom_test_obj_get_hash):
  93277. (webkit_dom_test_obj_set_property):
  93278. (webkit_dom_test_obj_get_property):
  93279. (webkit_dom_test_obj_class_init):
  93280. * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  93281. * bindings/scripts/test/JS/JSTestObj.cpp:
  93282. (WebCore::):
  93283. (WebCore::jsTestObjAttrWithException):
  93284. (WebCore::jsTestObjAttrWithSetterException):
  93285. (WebCore::jsTestObjAttrWithGetterException):
  93286. (WebCore::setJSTestObjAttrWithException):
  93287. (WebCore::setJSTestObjAttrWithGetterException):
  93288. (WebCore::jsTestObjPrototypeFunctionOverloadedMethod):
  93289. * bindings/scripts/test/JS/JSTestObj.h:
  93290. * bindings/scripts/test/ObjC/DOMTestObj.h:
  93291. * bindings/scripts/test/ObjC/DOMTestObj.mm:
  93292. (-[DOMTestObj attrWithException]):
  93293. (-[DOMTestObj setAttrWithException:]):
  93294. (-[DOMTestObj attrWithSetterException]):
  93295. (-[DOMTestObj attrWithGetterException]):
  93296. (-[DOMTestObj setAttrWithGetterException:]):
  93297. * bindings/scripts/test/TestObj.idl:
  93298. * bindings/scripts/test/V8/V8TestObj.cpp:
  93299. (WebCore::TestObjInternal::attrWithExceptionAttrGetter):
  93300. (WebCore::TestObjInternal::attrWithExceptionAttrSetter):
  93301. (WebCore::TestObjInternal::attrWithSetterExceptionAttrGetter):
  93302. (WebCore::TestObjInternal::attrWithGetterExceptionAttrGetter):
  93303. (WebCore::TestObjInternal::attrWithGetterExceptionAttrSetter):
  93304. (WebCore::TestObjInternal::overloadedMethodCallback):
  93305. (WebCore::):
  93306. * dom/Element.cpp:
  93307. * dom/Element.h:
  93308. * html/HTMLAnchorElement.idl:
  93309. * html/HTMLAppletElement.idl:
  93310. * html/HTMLAreaElement.idl:
  93311. * html/HTMLBRElement.idl:
  93312. * html/HTMLBaseElement.idl:
  93313. * html/HTMLBaseFontElement.idl:
  93314. * html/HTMLBlockquoteElement.idl:
  93315. * html/HTMLBodyElement.idl:
  93316. * html/HTMLButtonElement.idl:
  93317. * html/HTMLDListElement.idl:
  93318. * html/HTMLDirectoryElement.idl:
  93319. * html/HTMLDivElement.idl:
  93320. * html/HTMLElement.idl:
  93321. * html/HTMLEmbedElement.idl:
  93322. * html/HTMLFontElement.idl:
  93323. * html/HTMLFormElement.idl:
  93324. * html/HTMLFrameElement.idl:
  93325. * html/HTMLFrameSetElement.idl:
  93326. * html/HTMLHRElement.idl:
  93327. * html/HTMLHeadElement.idl:
  93328. * html/HTMLHeadingElement.idl:
  93329. * html/HTMLHtmlElement.idl:
  93330. * html/HTMLIFrameElement.idl:
  93331. * html/HTMLImageElement.idl:
  93332. * html/HTMLInputElement.idl:
  93333. * html/HTMLIsIndexElement.idl:
  93334. * html/HTMLLIElement.idl:
  93335. * html/HTMLLabelElement.idl:
  93336. * html/HTMLLegendElement.idl:
  93337. * html/HTMLLinkElement.idl:
  93338. * html/HTMLMapElement.idl:
  93339. * html/HTMLMediaElement.idl:
  93340. * html/HTMLMenuElement.idl:
  93341. * html/HTMLMetaElement.idl:
  93342. * html/HTMLModElement.idl:
  93343. * html/HTMLOListElement.idl:
  93344. * html/HTMLObjectElement.idl:
  93345. * html/HTMLOptGroupElement.idl:
  93346. * html/HTMLOptionElement.idl:
  93347. * html/HTMLParagraphElement.idl:
  93348. * html/HTMLParamElement.idl:
  93349. * html/HTMLPreElement.idl:
  93350. * html/HTMLQuoteElement.idl:
  93351. * html/HTMLScriptElement.idl:
  93352. * html/HTMLStyleElement.idl:
  93353. * html/HTMLTableCaptionElement.idl:
  93354. * html/HTMLTableCellElement.idl:
  93355. * html/HTMLTableColElement.idl:
  93356. * html/HTMLTableElement.idl:
  93357. * html/HTMLTableRowElement.idl:
  93358. * html/HTMLTableSectionElement.idl:
  93359. * html/HTMLTextAreaElement.idl:
  93360. * html/HTMLUListElement.idl:
  93361. * html/HTMLVideoElement.idl:
  93362. * svg/SVGElement.idl:
  93363. 2010-06-17 Rob Buis <rwlbuis@gmail.com>
  93364. Reviewed by Dave Hyatt.
  93365. CSS3 "Property is declared twice in rule" test fails
  93366. https://bugs.webkit.org/show_bug.cgi?id=36282
  93367. Filter out duplicate properties in style declaration.
  93368. Test: fast/css/duplicate-property-in-rule.html
  93369. * css/CSSMutableStyleDeclaration.cpp: Filter out duplicate properties
  93370. (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
  93371. * css/CSSParser.cpp:
  93372. (WebCore::CSSParser::parseValue): Discard negative padding values
  93373. * css/CSSStyleSelector.cpp: Remove negative padding check
  93374. (WebCore::CSSStyleSelector::applyProperty):
  93375. 2010-06-17 Darin Adler <darin@apple.com>
  93376. Reviewed by Sam Weinig.
  93377. Implement additional DOM attribute reflection for bindings
  93378. https://bugs.webkit.org/show_bug.cgi?id=39936
  93379. - Added support for [Reflect] for long, unsigned long, and boolean
  93380. attributes.
  93381. - Fixed code that set attributes like this: <video controls="controls">
  93382. to instead set them like this: <video controls>.
  93383. - Added lots more uses of [Reflect].
  93384. - Removed now-unneeded [ConvertFromString].
  93385. - Made [Reflect] imply [ConvertNullToNullString] so we can get rid
  93386. of most uses of the latter.
  93387. - Made [Reflect] automatically lowercase the name of the reflected
  93388. content attribute to minimize the need to specify a custom content
  93389. attribute name.
  93390. One thing this patch does *not* do is remove the unneeded functions
  93391. in the various DOM classes that are no longer used by the bindings.
  93392. We should do that in a followup.
  93393. * bindings/scripts/CodeGenerator.pm: Added new functions so code
  93394. can be shared across bindings, GetterExpressionPrefix and
  93395. SetterExpressionPrefix. We can do a lot more refactoring like
  93396. this in the future.
  93397. * bindings/scripts/CodeGeneratorCPP.pm: Removed unneeded
  93398. ConvertFromString handling, changed to use the new
  93399. GetterExpressionPrefix and SetterExpressionPrefix functions
  93400. to better handle reflected DOM attributes.
  93401. * bindings/scripts/CodeGeneratorGObject.pm: Removed unneeded
  93402. ConvertFromString handling, changed to use the new
  93403. GetterExpressionPrefix and SetterExpressionPrefix functions
  93404. to better handle reflected DOM attributes. Fixed a few things
  93405. in the output so the .cpp file will have more WebKit style.
  93406. The .h file should be GTK style, but the .cpp file can be the
  93407. standard WebKit style eventually.
  93408. * bindings/scripts/CodeGeneratorJS.pm: Changed to use the new
  93409. GetterExpressionPrefix and SetterExpressionPrefix functions
  93410. and removed a now-unneeded IsSVGAnimatedType special case since
  93411. the new functions take care of it. Made reflected attributes
  93412. automatically convert null to the null string without a
  93413. separate ConvertNullToNullString attribute.
  93414. * bindings/scripts/CodeGeneratorObjC.pm: Changed to use the new
  93415. GetterExpressionPrefix and SetterExpressionPrefix functions
  93416. and removed a now-unneeded IsSVGAnimatedType special case since
  93417. the new functions take care of it. Redid the special cases for
  93418. ownerDocument and for operator to fit better with the new code
  93419. paths. Removed unneeded ConvertFromString handling.
  93420. * bindings/scripts/CodeGeneratorV8.pm: Changed to use the new
  93421. GetterExpressionPrefix and SetterExpressionPrefix functions
  93422. and removed a now-unneeded IsSVGAnimatedType special case since
  93423. the new functions take care of it. Made reflected attributes
  93424. automatically convert null to the null string without a
  93425. separate ConvertNullToNullString attribute.
  93426. * bindings/scripts/test/TestObj.idl: Added some test cases for
  93427. content attribute reflection and for exceptions in string-typed
  93428. attributes.
  93429. * bindings/scripts/test/CPP/WebKitDOMTestObj.cpp: Updated.
  93430. * bindings/scripts/test/CPP/WebKitDOMTestObj.h: Ditto.
  93431. * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: Ditto.
  93432. * bindings/scripts/test/GObject/WebKitDOMTestObj.h: Ditto.
  93433. * bindings/scripts/test/JS/JSTestObj.cpp: Ditto.
  93434. * bindings/scripts/test/JS/JSTestObj.h: Ditto.
  93435. * bindings/scripts/test/ObjC/DOMTestObj.h: Ditto.
  93436. * bindings/scripts/test/ObjC/DOMTestObj.mm: Ditto.
  93437. * bindings/scripts/test/V8/V8TestObj.cpp: Ditto.
  93438. * dom/Element.cpp:
  93439. (WebCore::Element::getIntegralAttribute): Added.
  93440. (WebCore::Element::setIntegralAttribute): Added.
  93441. (WebCore::Element::getUnsignedIntegralAttribute): Added.
  93442. (WebCore::Element::setUnsignedIntegralAttribute): Added.
  93443. * dom/Element.h: Added new attribute get/set functions for bindings.
  93444. * html/HTMLAnchorElement.idl:
  93445. * html/HTMLAppletElement.idl:
  93446. * html/HTMLAreaElement.idl:
  93447. * html/HTMLBRElement.idl:
  93448. * html/HTMLBaseElement.idl:
  93449. * html/HTMLBaseFontElement.idl:
  93450. * html/HTMLBlockquoteElement.idl:
  93451. * html/HTMLBodyElement.idl:
  93452. * html/HTMLButtonElement.idl:
  93453. * html/HTMLDListElement.idl:
  93454. * html/HTMLDirectoryElement.idl:
  93455. * html/HTMLDivElement.idl:
  93456. * html/HTMLElement.idl:
  93457. * html/HTMLEmbedElement.idl:
  93458. * html/HTMLFontElement.idl:
  93459. * html/HTMLFormElement.idl:
  93460. * html/HTMLFrameElement.idl:
  93461. * html/HTMLFrameSetElement.idl:
  93462. * html/HTMLHRElement.idl:
  93463. * html/HTMLHeadElement.idl:
  93464. * html/HTMLHeadingElement.idl:
  93465. * html/HTMLHtmlElement.idl:
  93466. * html/HTMLIFrameElement.idl:
  93467. * html/HTMLImageElement.idl:
  93468. * html/HTMLInputElement.idl:
  93469. * html/HTMLIsIndexElement.idl:
  93470. * html/HTMLLIElement.idl:
  93471. * html/HTMLLabelElement.idl:
  93472. * html/HTMLLegendElement.idl:
  93473. * html/HTMLLinkElement.idl:
  93474. * html/HTMLMapElement.idl:
  93475. * html/HTMLMediaElement.idl:
  93476. * html/HTMLMenuElement.idl:
  93477. * html/HTMLMetaElement.idl:
  93478. * html/HTMLModElement.idl:
  93479. * html/HTMLOListElement.idl:
  93480. * html/HTMLObjectElement.idl:
  93481. * html/HTMLOptGroupElement.idl:
  93482. * html/HTMLOptionElement.idl:
  93483. * html/HTMLParagraphElement.idl:
  93484. * html/HTMLParamElement.idl:
  93485. * html/HTMLPreElement.idl:
  93486. * html/HTMLQuoteElement.idl:
  93487. * html/HTMLScriptElement.idl:
  93488. * html/HTMLStyleElement.idl:
  93489. * html/HTMLTableCaptionElement.idl:
  93490. * html/HTMLTableCellElement.idl:
  93491. * html/HTMLTableColElement.idl:
  93492. * html/HTMLTableElement.idl:
  93493. * html/HTMLTableRowElement.idl:
  93494. * html/HTMLTableSectionElement.idl:
  93495. * html/HTMLTextAreaElement.idl:
  93496. * html/HTMLUListElement.idl:
  93497. * html/HTMLVideoElement.idl:
  93498. * svg/SVGElement.idl:
  93499. Added more uses of [Reflect]. Got rid of uses of [ConvertNullToNullString] that
  93500. are now unneeded since [Reflect] now implies that. Changed formatting to be
  93501. simpler and consistent without all the lining up and multiple lines.
  93502. 2010-06-17 MORITA Hajime <morrita@google.com>
  93503. Unreviewd, fixed a build break.
  93504. * css/CSSSelector.cpp:
  93505. (WebCore::CSSSelector::pseudoId):
  93506. 2010-06-16 MORITA Hajime <morrita@google.com>
  93507. Reviewed by Kent Tamura.
  93508. <meter> should allow styling for each gauge-level and component
  93509. https://bugs.webkit.org/show_bug.cgi?id=40280
  93510. - Introduced following new pseudo classes for <meter> element.
  93511. - -webkit-meter-horizontal-bar
  93512. - -webkit-meter-vertical-bar
  93513. - -webkit-meter-horizontal-optimum-value
  93514. - -webkit-meter-vertical-optimum-value
  93515. - -webkit-meter-horizontal-suboptimal-value
  93516. - -webkit-meter-vertical-suboptimal-value
  93517. - -webkit-meter-horizontal-even-less-good-value
  93518. - -webkit-meter-vertical-even-less-good-value
  93519. - Introduced 2 shadow nodes for RenderMeter to handle CSS styling.
  93520. one for bar part and another for value part.
  93521. - Removed RenderTheme::paintMeter() implementation because it can be
  93522. handled by styled painting without RenderTheme.
  93523. - Pulled RenderIndicator up to super class from RenderProgress,
  93524. then make RenderMeter a subclass of it.
  93525. - Moved shadow related methods from RenderProgress to ShadowBlockElement
  93526. to share it with RenderMeter.
  93527. - Added rules for html.css for new pseudo classes.
  93528. Tests: fast/dom/HTMLMeterElement/meter-styles-changing-pseudo.html
  93529. fast/dom/HTMLMeterElement/meter-styles.html
  93530. * CMakeLists.txt:
  93531. * GNUmakefile.am:
  93532. * WebCore.gypi:
  93533. * WebCore.pro:
  93534. * WebCore.vcproj/WebCore.vcproj:
  93535. * WebCore.xcodeproj/project.pbxproj:
  93536. * css/CSSSelector.cpp:
  93537. (WebCore::CSSSelector::pseudoId):
  93538. (WebCore::nameToPseudoTypeMap):
  93539. (WebCore::CSSSelector::extractPseudoType):
  93540. * css/CSSSelector.h:
  93541. (WebCore::CSSSelector::):
  93542. * css/html.css:
  93543. (meter::-webkit-meter-horizontal-bar):
  93544. (meter::-webkit-meter-vertical-bar):
  93545. (meter::-webkit-meter-horizontal-optimum-value):
  93546. (meter::-webkit-meter-horizontal-suboptimal-value):
  93547. (meter::-webkit-meter-horizontal-even-less-good-value):
  93548. (meter::-webkit-meter-vertical-optimum-value):
  93549. (meter::-webkit-meter-vertical-suboptimal-value):
  93550. (meter::-webkit-meter-vertical-even-less-good-value):
  93551. * rendering/RenderIndicator.cpp: Added.
  93552. (WebCore::RenderIndicator::RenderIndicator):
  93553. (WebCore::RenderIndicator::~RenderIndicator):
  93554. (WebCore::RenderIndicator::layout):
  93555. (WebCore::RenderIndicator::styleDidChange):
  93556. (WebCore::RenderIndicator::updateFromElement):
  93557. (WebCore::RenderIndicator::hasParts):
  93558. (WebCore::RenderIndicator::requestLayoutForParts):
  93559. * rendering/RenderIndicator.h: Added.
  93560. (WebCore::RenderIndicator::requiresForcedStyleRecalcPropagation):
  93561. * rendering/RenderMeter.cpp:
  93562. (WebCore::RenderMeter::RenderMeter):
  93563. (WebCore::RenderMeter::~RenderMeter):
  93564. (WebCore::RenderMeter::layoutParts): Added.
  93565. (WebCore::RenderMeter::shouldHaveParts): Added.
  93566. (WebCore::RenderMeter::valueRatio): Added.
  93567. (WebCore::RenderMeter::barPartRect): Added.
  93568. (WebCore::RenderMeter::valuePartRect): Added.
  93569. (WebCore::RenderMeter::isHorizontal): Added.
  93570. (WebCore::RenderMeter::valuePseudoId): Added.
  93571. (WebCore::RenderMeter::barPseudoId): Added.
  93572. (WebCore::RenderMeter::updatePartsState): Added.
  93573. * rendering/RenderMeter.h:
  93574. * rendering/RenderProgress.cpp:
  93575. (WebCore::RenderProgress::RenderProgress):
  93576. (WebCore::RenderProgress::updateFromElement):
  93577. (WebCore::RenderProgress::paint):
  93578. (WebCore::RenderProgress::layoutParts): Added.
  93579. (WebCore::RenderProgress::shouldHaveParts): Added.
  93580. (WebCore::RenderProgress::updatePartsState):
  93581. (WebCore::RenderProgress::valuePartRect):
  93582. * rendering/RenderProgress.h:
  93583. * rendering/RenderTheme.cpp:
  93584. (WebCore::RenderTheme::isControlStyled):
  93585. (WebCore::RenderTheme::paintMeter):
  93586. * rendering/RenderTheme.h:
  93587. (WebCore::RenderTheme::supportsMeter): Added.
  93588. * rendering/RenderThemeMac.h:
  93589. * rendering/RenderThemeMac.mm:
  93590. (WebCore::RenderThemeMac::supportsMeter): Added.
  93591. * rendering/ShadowElement.cpp:
  93592. (WebCore::ShadowBlockElement::layoutAsPart): Added.
  93593. (WebCore::ShadowBlockElement::updateStyleForPart): Added.
  93594. (WebCore::ShadowBlockElement::createForPart): Added.
  93595. (WebCore::ShadowBlockElement::createStyleForPart): Added.
  93596. (WebCore::ShadowBlockElement::partShouldHaveStyle): Added.
  93597. * rendering/ShadowElement.h:
  93598. * rendering/style/RenderStyleConstants.h:
  93599. (WebCore::):
  93600. 2010-06-17 Fumitoshi Ukai <ukai@chromium.org>
  93601. Reviewed by Alexey Proskuryakov.
  93602. WebSocket: resume should not process buffer if already processing.
  93603. https://bugs.webkit.org/show_bug.cgi?id=39340
  93604. Test: websocket/tests/alert-in-event-handler.html
  93605. While running an event handler of WebSocket object, it may be suspended
  93606. and resumed in various reason. e.g. alert() will suspend/resume
  93607. ActiveDOM objects. In chromium, sending IPC message would also
  93608. suspend/resume ActiveDOM objects.
  93609. If resume process pending buffer in this case, another event might
  93610. be fired while running the initial event handler.
  93611. Thus, resume should not process pending buffer immediately.
  93612. Pending buffer would be processed after the current task has been
  93613. finished.
  93614. * websockets/ThreadableWebSocketChannelClientWrapper.h:
  93615. * websockets/WebSocketChannel.cpp:
  93616. (WebCore::WebSocketChannel::WebSocketChannel):
  93617. (WebCore::WebSocketChannel::resume):
  93618. Just set one shot timer for resumeTimerFired() if not yet set.
  93619. (WebCore::WebSocketChannel::resumeTimerFired):
  93620. Process pending event after resume was called.
  93621. * websockets/WebSocketChannel.h:
  93622. 2010-06-17 Eric Seidel <eric@webkit.org>
  93623. Reviewed by Adam Barth.
  93624. REGRESSION(HTML5 parser): editing/selection/leave-requested-block.html can fail or crash
  93625. https://bugs.webkit.org/show_bug.cgi?id=40764
  93626. HTML5ScriptRunner was careful to only call CachedResource::addClient
  93627. for cases where the resource was not already loaded. This was to
  93628. avoid getting synchronous notifyFinished callbacks from inside
  93629. addClient. (The old HTMLDocumentParser also has hacks to work around
  93630. addClient's synchronous notifyFinished behavior for already-loaded
  93631. resources as well.)
  93632. It turns out that CachedResource will mark itself as purgeable if it
  93633. has no clients, thus it could have its data cleared (but itself not
  93634. deleted) in the case where we yield back to the runloop to wait for
  93635. CSS to load before executing the loaded script.
  93636. The fix is to act more like the old parser and always call addClient
  93637. on every CachedScript we load. But unlike the old parser, we're
  93638. careful not to re-enter from addClient -> notifyFinished
  93639. using guards in HTML5DocumentParser::watchForLoad.
  93640. I do not know how to make a CachedResource purge itself
  93641. from a LayoutTest, so this is not currently testable.
  93642. If anyone knows how I'm happy to make a test.
  93643. * html/HTML5DocumentParser.cpp:
  93644. (WebCore::HTML5DocumentParser::watchForLoad):
  93645. - It is now expected to call watchForLoad with a loaded script.
  93646. (WebCore::HTML5DocumentParser::notifyFinished):
  93647. - Now that watchForLoad is called with loaded scripts, notifyFinished
  93648. may be be called from addClient, thus we may be in the middle of
  93649. script execution when it's called. It's OK. We pass the call
  93650. along to HTML5ScriptRunner::executeScriptsWaitingForLoad
  93651. and it knows how to ignore the call in that case.
  93652. * html/HTML5DocumentParser.h:
  93653. - Document these member variables more.
  93654. * html/HTML5ScriptRunner.cpp:
  93655. (WebCore::HTML5ScriptRunner::~HTML5ScriptRunner):
  93656. (WebCore::HTML5ScriptRunner::executePendingScript):
  93657. (WebCore::HTML5ScriptRunner::hasScriptsWaitingForLoad):
  93658. (WebCore::HTML5ScriptRunner::watchForLoad):
  93659. - Set the pending script to RegisteringForWatch state before
  93660. watching and WatchingForLoad after.
  93661. (WebCore::HTML5ScriptRunner::stopWatchingForLoad):
  93662. - Set the pending script to NotWatchingForLoad.
  93663. (WebCore::HTML5ScriptRunner::executeScriptsWaitingForLoad):
  93664. - Assert that callers checked hasScriptsWaitingForLoad()
  93665. (WebCore::HTML5ScriptRunner::requestScript):
  93666. * html/HTML5ScriptRunner.h:
  93667. (WebCore::HTML5ScriptRunner::PendingScript::):
  93668. (WebCore::HTML5ScriptRunner::PendingScript::PendingScript):
  93669. (WebCore::HTML5ScriptRunner::PendingScript::watchingForLoad):
  93670. * html/HTML5ScriptRunnerHost.h:
  93671. - Document the new expectations of watchForLoad
  93672. 2010-06-17 Tony Gentilcore <tonyg@chromium.org>
  93673. Reviewed by Eric Seidel.
  93674. Prevent HTML5PreloadScanner from loading resources in <noscript> tags.
  93675. https://bugs.webkit.org/show_bug.cgi?id=40779
  93676. No new tests. Will create a layout test in a subsequent patch.
  93677. * html/HTML5PreloadScanner.cpp:
  93678. (WebCore::HTML5PreloadScanner::processToken):
  93679. * html/HTML5TreeBuilder.cpp:
  93680. (WebCore::HTML5TreeBuilder::adjustedLexerState):
  93681. (WebCore::HTML5TreeBuilder::passTokenToLegacyParser):
  93682. (WebCore::HTML5TreeBuilder::isScriptingFlagEnabled):
  93683. * html/HTML5TreeBuilder.h:
  93684. 2010-06-17 Adam Barth <abarth@webkit.org>
  93685. Reviewed by Eric Seidel.
  93686. HTML5PreloadScanner parses <script> in DataState
  93687. https://bugs.webkit.org/show_bug.cgi?id=40804
  93688. The ScriptDataState is handled separately from the rest of the lexer
  93689. state changes because it's more complicted in the tree builder. The
  93690. easiest thing is to just handle it separately in the preloader too.
  93691. * html/HTML5PreloadScanner.cpp:
  93692. (WebCore::HTML5PreloadScanner::processToken):
  93693. 2010-06-17 Adam Barth <abarth@webkit.org>
  93694. Reviewed by Eric Seidel.
  93695. Add CSS scanning to HTML5PreloadScanner
  93696. https://bugs.webkit.org/show_bug.cgi?id=40802
  93697. This patch just cribs the CSS preload scanning algorithm from the old
  93698. preload scanner. We also invented a way of testing the preload
  93699. scanner.
  93700. Tests: fast/preloader/image.html
  93701. fast/preloader/link.html
  93702. fast/preloader/script.html
  93703. fast/preloader/style.html
  93704. * Android.mk:
  93705. * GNUmakefile.am:
  93706. * WebCore.gypi:
  93707. * WebCore.pro:
  93708. * WebCore.vcproj/WebCore.vcproj:
  93709. * WebCore.xcodeproj/project.pbxproj:
  93710. * html/CSSPreloadScanner.cpp: Added.
  93711. (WebCore::isWhitespace):
  93712. (WebCore::CSSPreloadScanner::CSSPreloadScanner):
  93713. (WebCore::CSSPreloadScanner::reset):
  93714. (WebCore::CSSPreloadScanner::scan):
  93715. (WebCore::CSSPreloadScanner::tokenize):
  93716. (WebCore::CSSPreloadScanner::emitRule):
  93717. * html/CSSPreloadScanner.h: Added.
  93718. (WebCore::CSSPreloadScanner::):
  93719. * html/HTML5PreloadScanner.cpp:
  93720. (WebCore::HTML5PreloadScanner::HTML5PreloadScanner):
  93721. (WebCore::HTML5PreloadScanner::processToken):
  93722. (WebCore::HTML5PreloadScanner::scanningBody):
  93723. * html/HTML5PreloadScanner.h:
  93724. 2010-06-17 Abhishek Arya <inferno@chromium.org>
  93725. Reviewed by David Kilzer.
  93726. (Landed by Dirk Pranke).
  93727. Check for a null frame before setting drag selection.
  93728. https://bugs.webkit.org/show_bug.cgi?id=38893
  93729. Same Layout test as https://bugs.webkit.org/show_bug.cgi?id=37168.
  93730. Test: editing/pasteboard/drag-drop-iframe-refresh-crash.html
  93731. Note that you need to run the test manually 20-30 times for the crash
  93732. to reproduce.
  93733. * editing/SelectionController.cpp:
  93734. (WebCore::SelectionController::setSelection):
  93735. 2010-06-17 Benjamin Poulain <benjamin.poulain@nokia.com>
  93736. Reviewed by Simon Hausmann.
  93737. [Qt] Get rid of the the unused imageSize of ImageDecoderQt::internalHandleCurrentImage()
  93738. https://bugs.webkit.org/show_bug.cgi?id=40620
  93739. Remove an unused variable.
  93740. * platform/graphics/qt/ImageDecoderQt.cpp:
  93741. (WebCore::ImageDecoderQt::internalHandleCurrentImage):
  93742. 2010-06-17 Jeremy Moskovich <jeremy@chromium.org>
  93743. Reviewed by Darin Fisher.
  93744. [Chromium API] Implement WebSandboxSupport on OS X and add stubs to allow
  93745. OOP loading of fonts.
  93746. https://bugs.webkit.org/show_bug.cgi?id=40544
  93747. * platform/chromium/ChromiumBridge.h: Add prototype for loadFont()
  93748. 2010-06-17 Nicolas Weber <thakis@chromium.org>
  93749. Reviewed by Eric Seidel.
  93750. Fix various warnings that are reported when building with clang
  93751. https://bugs.webkit.org/show_bug.cgi?id=40503
  93752. * accessibility/AccessibilityRenderObject.cpp:
  93753. (WebCore::AccessibilityRenderObject::labelElementContainer):
  93754. * accessibility/AccessibilityTableCell.cpp:
  93755. (WebCore::AccessibilityTableCell::parentTable):
  93756. * bindings/v8/NPV8Object.cpp:
  93757. (WebCore::npObjectTypeInfo):
  93758. * bindings/v8/custom/V8HTMLAudioElementConstructor.cpp:
  93759. (WebCore::):
  93760. * bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
  93761. (WebCore::):
  93762. * bindings/v8/custom/V8HTMLOptionElementConstructor.cpp:
  93763. (WebCore::):
  93764. * css/CSSStyleSheet.h:
  93765. * html/HTMLFormElement.cpp:
  93766. (WebCore::HTMLFormElement::getNamedElements):
  93767. * inspector/InspectorValues.cpp:
  93768. (WebCore::InspectorObject::getObject):
  93769. (WebCore::InspectorObject::getArray):
  93770. * page/animation/AnimationBase.h:
  93771. * platform/graphics/BitmapImage.h:
  93772. (WTF::):
  93773. * platform/graphics/mac/FontPlatformData.h:
  93774. * rendering/RenderBlock.h:
  93775. * rendering/RootInlineBox.cpp:
  93776. (WebCore::RootInlineBox::ellipsisBox):
  93777. * storage/StorageNamespaceImpl.cpp:
  93778. (WebCore::StorageNamespaceImpl::storageArea):
  93779. 2010-06-17 Kwang Yul Seo <skyul@company100.net>
  93780. Reviewed by Pavel Feldman.
  93781. Add ENABLE(INSPECTOR) guard for m_sessionSettings
  93782. https://bugs.webkit.org/show_bug.cgi?id=40611
  93783. Build fix.
  93784. * inspector/InspectorController.h:
  93785. 2010-06-17 Eric Seidel <eric@webkit.org>
  93786. Reviewed by Adam Barth.
  93787. Add FIXME to explain HTMLDocumentParser's forceSynchronous bool
  93788. https://bugs.webkit.org/show_bug.cgi?id=40609
  93789. No functional change, just adding comment.
  93790. * dom/Document.cpp:
  93791. (WebCore::Document::write):
  93792. 2010-06-13 Robert Hogan <robert@webkit.org>
  93793. Reviewed by Kenneth Rohde Christiansen.
  93794. WebCore EventHandler needs to take account of onLoad events
  93795. fired before layout() complete
  93796. https://bugs.webkit.org/show_bug.cgi?id=40102
  93797. WebCore 'cheats' by firing onLoad events before the frame's layout
  93798. has been performed. This can result in event listeners performing
  93799. operations that depend on the document's final layout, such as
  93800. scrolling operations.
  93801. When scrolling a frameview in eventhandler ensure the layout is complete.
  93802. * page/EventHandler.cpp:
  93803. (WebCore::EventHandler::scrollRecursively):
  93804. 2010-06-16 Dumitru Daniliuc <dumi@chromium.org>
  93805. Reviewed by Dimitri Glazkov.
  93806. Add the error codes defined in the async DB spec to SQLError.idl and SQLError.h.
  93807. https://bugs.webkit.org/show_bug.cgi?id=40748
  93808. Test: storage/sql-error-codes.html
  93809. * storage/SQLError.h:
  93810. (WebCore::SQLError::):
  93811. * storage/SQLError.idl:
  93812. * storage/SQLStatement.cpp:
  93813. (WebCore::SQLStatement::execute):
  93814. (WebCore::SQLStatement::setDatabaseDeletedError):
  93815. (WebCore::SQLStatement::setVersionMismatchedError):
  93816. (WebCore::SQLStatement::setFailureDueToQuota):
  93817. (WebCore::SQLStatement::lastExecutionFailedDueToQuota):
  93818. * storage/SQLTransaction.cpp:
  93819. (WebCore::SQLTransaction::openTransactionAndPreflight):
  93820. (WebCore::SQLTransaction::deliverTransactionCallback):
  93821. (WebCore::SQLTransaction::handleCurrentStatementError):
  93822. (WebCore::SQLTransaction::deliverStatementCallback):
  93823. (WebCore::SQLTransaction::postflightAndCommit):
  93824. 2010-06-17 Kinuko Yasuda <kinuko@chromium.org>
  93825. Reviewed by Jian Li.
  93826. Fix CRLF ending conversion in StringBlobItem.
  93827. https://bugs.webkit.org/show_bug.cgi?id=40736
  93828. Also: fix referencing uninitialized member bug and slice length bug
  93829. in hybrid blob case.
  93830. Tests will be added when we add BlobBuilder jsc bindings.
  93831. * platform/BlobItem.cpp:
  93832. (WebCore::StringBlobItem::convertToCString):
  93833. (WebCore::DataRangeBlobItem::DataRangeBlobItem):
  93834. 2010-06-17 Dimitri Glazkov <dglazkov@chromium.org>
  93835. Unreviewed, rolling out r61340.
  93836. http://trac.webkit.org/changeset/61340
  93837. https://bugs.webkit.org/show_bug.cgi?id=36282
  93838. Broke several editing tests.
  93839. * css/CSSMutableStyleDeclaration.cpp:
  93840. (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
  93841. * css/CSSParser.cpp:
  93842. (WebCore::CSSParser::parseValue):
  93843. * css/CSSStyleSelector.cpp:
  93844. (WebCore::CSSStyleSelector::applyProperty):
  93845. 2010-06-17 Jian Li <jianli@chromium.org>
  93846. Reviewed by David Levin.
  93847. Add optional contentType parameter to Blob.slice per latest File API spec.
  93848. https://bugs.webkit.org/show_bug.cgi?id=40647
  93849. Tested by http/tests/local/resources/send-sliced-dragged-file.html.
  93850. * html/Blob.cpp:
  93851. (WebCore::Blob::slice):
  93852. * html/Blob.h:
  93853. * html/Blob.idl:
  93854. 2010-06-17 Jesus Sanchez-Palencia <jesus@webkit.org>, Kenneth Rohde Christiansen <kenneth@webkit.org>
  93855. Reviewed by Simon Hausmann.
  93856. [Qt] QtWebKit does not support viewport meta tag
  93857. https://bugs.webkit.org/show_bug.cgi?id=39902
  93858. Add windowRect() to page client.
  93859. * platform/qt/QWebPageClient.h:
  93860. 2010-06-17 Stephen White <senorblanco@chromium.org>
  93861. Reviewed by David Levin.
  93862. Fix for slow multiple animated resize issue.
  93863. https://bugs.webkit.org/show_bug.cgi?id=38233
  93864. The timer-based resize quality approach implemented in
  93865. http://trac.webkit.org/changeset/34210 is a good idea, but doesn't
  93866. scale to multiple images with animated resizes. This fix unifies all
  93867. outstanding resize timers into a single timer, and removes the "use
  93868. last quality" check (which doesn't work when images are overlapping).
  93869. It also refactors the copy of this code implemented in
  93870. RenderBoxModelObject in http://trac.webkit.org/changeset/53949.
  93871. This improves Safari performance for the following IE9 platform demos on my C2D MacPro (10.5):
  93872. http://ie.microsoft.com/testdrive/Performance/01FlyingImages/Default.html (4->60fps)
  93873. http://ie.microsoft.com/testdrive/Performance/10FlickrExplorer/Default.html (3->16fps)
  93874. http://ie.microsoft.com/testdrive/Performance/11BrowserFlip/Default.html (9->60fps)
  93875. * rendering/RenderBoxModelObject.cpp:
  93876. (WebCore::ImageQualityController::ImageQualityController):
  93877. Unify all timers into a single timer, rename RenderBoxModelScaleObserver
  93878. to ImageQualityController, and remove the resize quality "stickness",
  93879. since it doesn't work with multiple outstanding resizes.
  93880. (WebCore::ImageQualityController::objectDestroyed):
  93881. gImages global is now m_lastPaintTimeMap member.
  93882. (WebCore::ImageQualityController::highQualityRepaintTimerFired):
  93883. Function made non-static; repaint all pending resizes (not just one).
  93884. (WebCore::ImageQualityController::restartTimer):
  93885. Added function to restart timer at 1.05x threshold.
  93886. (WebCore::imageQualityController):
  93887. Static function to return singleton.
  93888. (WebCore::ImageQualityController::shouldPaintAtLowQuality):
  93889. Use m_lastPaintTimeMap, not gImages global. Implement new timer
  93890. algorithm. Remove resize "stickiness".
  93891. (WebCore::RenderBoxModelObject::shouldPaintAtLowQuality):
  93892. Implement shouldPaintAtLowQuality, which pulls out "this" and passes
  93893. the call to the ImageQualityController.
  93894. (WebCore::RenderBoxModelObject::~RenderBoxModelObject):
  93895. Call ImageQualityController singleton's objectDestroyed() instead of
  93896. old static function.
  93897. (WebCore::RenderBoxModelObject::paintFillLayerExtended):
  93898. Modify shouldPaintAtLowQuality() call to match new class name and
  93899. function signature.
  93900. * rendering/RenderBoxModelObject.h:
  93901. Expose shouldPaintAtLowQuality as a member function.
  93902. * rendering/RenderImage.cpp:
  93903. (WebCore::RenderImage::~RenderImage):
  93904. No need to call objectDestroyed() here anymore, since the
  93905. RenderBoxModelObject destructor will do this for us.
  93906. (WebCore::RenderImage::paintIntoRect):
  93907. Rip out RenderImageScaleObserver, and call
  93908. RenderBoxModelObject::shouldPaintAtLowQuality() instead.
  93909. 2010-06-17 Rob Buis <rwlbuis@gmail.com>
  93910. Reviewed by Dave Hyatt.
  93911. CSS3 "Property is declared twice in rule" test fails
  93912. https://bugs.webkit.org/show_bug.cgi?id=36282
  93913. Filter out duplicate properties in style declaration.
  93914. Test: fast/css/duplicate-property-in-rule.html
  93915. * css/CSSMutableStyleDeclaration.cpp: Filter out duplicate properties
  93916. (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
  93917. * css/CSSParser.cpp:
  93918. (WebCore::CSSParser::parseValue): Discard negative padding values
  93919. * css/CSSStyleSelector.cpp: Remove negative padding check
  93920. (WebCore::CSSStyleSelector::applyProperty):
  93921. 2010-06-17 Kenneth Russell <kbr@google.com>
  93922. Reviewed by Dimitri Glazkov.
  93923. Clean up error conditions for Typed Arrays
  93924. https://bugs.webkit.org/show_bug.cgi?id=40755
  93925. * bindings/js/JSArrayBufferCustom.cpp:
  93926. (WebCore::JSArrayBufferConstructor::constructJSArrayBuffer):
  93927. - Fixed handling of NaN/+inf/-inf lengths. Throw RangeError for too-large or negative lengths.
  93928. * bindings/js/JSArrayBufferViewHelper.h:
  93929. (WebCore::constructArrayBufferView):
  93930. - Changed all error code paths to throw exceptions. Clarified exception types.
  93931. * bindings/js/JSFloat32ArrayCustom.cpp:
  93932. (WebCore::JSFloat32ArrayConstructor::constructJSFloat32Array):
  93933. - Removed throwing of INDEX_SIZE_ERROR, delegating responsibility to constructArrayBufferView.
  93934. * bindings/js/JSInt16ArrayCustom.cpp:
  93935. (WebCore::JSInt16ArrayConstructor::constructJSInt16Array):
  93936. - Removed throwing of INDEX_SIZE_ERROR, delegating responsibility to constructArrayBufferView.
  93937. * bindings/js/JSInt32ArrayCustom.cpp:
  93938. (WebCore::JSInt32ArrayConstructor::constructJSInt32Array):
  93939. - Removed throwing of INDEX_SIZE_ERROR, delegating responsibility to constructArrayBufferView.
  93940. * bindings/js/JSInt8ArrayCustom.cpp:
  93941. (WebCore::JSInt8ArrayConstructor::constructJSInt8Array):
  93942. - Removed throwing of INDEX_SIZE_ERROR, delegating responsibility to constructArrayBufferView.
  93943. * bindings/js/JSUint16ArrayCustom.cpp:
  93944. (WebCore::JSUint16ArrayConstructor::constructJSUint16Array):
  93945. - Removed throwing of INDEX_SIZE_ERROR, delegating responsibility to constructArrayBufferView.
  93946. * bindings/js/JSUint32ArrayCustom.cpp:
  93947. (WebCore::JSUint32ArrayConstructor::constructJSUint32Array):
  93948. - Removed throwing of INDEX_SIZE_ERROR, delegating responsibility to constructArrayBufferView.
  93949. * bindings/js/JSUint8ArrayCustom.cpp:
  93950. (WebCore::JSUint8ArrayConstructor::constructJSUint8Array):
  93951. - Removed throwing of INDEX_SIZE_ERROR, delegating responsibility to constructArrayBufferView.
  93952. * bindings/v8/custom/V8ArrayBufferCustom.cpp:
  93953. (WebCore::V8ArrayBuffer::constructorCallback):
  93954. - Fixed handling of NaN/+inf/-inf lengths. Throw RangeError for too-large or negative lengths.
  93955. Clarified exception types.
  93956. * bindings/v8/custom/V8ArrayBufferViewCustom.h:
  93957. (WebCore::constructWebGLArray):
  93958. - Clarified exception types and throwing of exceptions along all error code paths.
  93959. * html/canvas/TypedArrayBase.h:
  93960. (WebCore::TypedArrayBase::create):
  93961. - Added necessary null checks during allocation.
  93962. 2010-06-17 Shu Chang <chang.shu@nokia.com>
  93963. Reviewed by Kenneth Rohde Christiansen.
  93964. [Qt] Fix the link error on symbian with ENABLE_JIT=0.
  93965. 1. Add "#if ENABLE(JIT)" in the header file;
  93966. 2. Put feature enable/disable logic to a common.pri so
  93967. that both JavaScriptCore.pri and WebCore.pri can share.
  93968. https://bugs.webkit.org/show_bug.cgi?id=40780
  93969. * WebCore.pri:
  93970. 2010-06-17 Kenneth Russell <kbr@google.com>
  93971. Reviewed by Oliver Hunt.
  93972. Differences in error reporting for overloaded methods causing fast/canvas/webgl/texImageTest.html to fail
  93973. https://bugs.webkit.org/show_bug.cgi?id=40750
  93974. Added V8Proxy::throwTypeError() and throwSyntaxError for parity
  93975. with JSC::throwTypeError() and throwSyntaxError. Changed
  93976. CodeGeneratorV8.pm to use throwTypeError for overload resolution
  93977. failures. Revised CodeGeneratorJS.pm to use throwVMTypeError
  93978. instead of manual call to JSValue::encode. Deleted now-unnecessary
  93979. Chromium expectations for fast/canvas/webgl/texImageTest.html.
  93980. * bindings/scripts/CodeGeneratorJS.pm:
  93981. * bindings/scripts/CodeGeneratorV8.pm:
  93982. * bindings/v8/V8Proxy.cpp:
  93983. (WebCore::V8Proxy::throwTypeError):
  93984. (WebCore::V8Proxy::throwSyntaxError):
  93985. * bindings/v8/V8Proxy.h:
  93986. 2010-06-17 Darin Fisher <darin@chromium.org>
  93987. Reviewed by Brady Eidson.
  93988. If Page::goToItem is passed a HistoryItem that is the current item,
  93989. then the page should be loaded again.
  93990. https://bugs.webkit.org/show_bug.cgi?id=40660
  93991. * loader/HistoryController.cpp:
  93992. (WebCore::HistoryController::recursiveGoToItem): Add a check to
  93993. recursiveGoToItem that matches the one in FrameLoader::loadItem.
  93994. 2010-06-17 Kwang Yul Seo <skyul@company100.net>
  93995. Reviewed by Kent Tamura.
  93996. [BREWMP] Build fix for DragDataBrew
  93997. https://bugs.webkit.org/show_bug.cgi?id=40610
  93998. http://trac.webkit.org/changeset/60957 was not applied to DragDataBrew.cpp.
  93999. Add FilenameConversionPolicy argument to DragData::containsURL and DragData::asURL.
  94000. * platform/brew/DragDataBrew.cpp:
  94001. (WebCore::DragData::containsURL):
  94002. (WebCore::DragData::asURL):
  94003. 2010-06-17 Zhenyao Mo <zmo@google.com>
  94004. Reviewed by David Levin.
  94005. Rename internalformat to internalFormat
  94006. https://bugs.webkit.org/show_bug.cgi?id=40149
  94007. * html/canvas/WebGLFramebuffer.cpp: Rename internalformat to internalFormat.
  94008. (WebCore::WebGLFramebuffer::getColorBufferFormat):
  94009. * html/canvas/WebGLRenderbuffer.cpp: Ditto.
  94010. (WebCore::WebGLRenderbuffer::WebGLRenderbuffer):
  94011. * html/canvas/WebGLRenderbuffer.h: Ditto.
  94012. (WebCore::WebGLRenderbuffer::setInternalFormat):
  94013. (WebCore::WebGLRenderbuffer::getInternalFormat):
  94014. * html/canvas/WebGLRenderingContext.cpp: Ditto.
  94015. (WebCore::WebGLRenderingContext::copyTexImage2D):
  94016. (WebCore::WebGLRenderingContext::copyTexSubImage2D):
  94017. (WebCore::WebGLRenderingContext::framebufferRenderbuffer):
  94018. (WebCore::WebGLRenderingContext::getRenderbufferParameter):
  94019. (WebCore::WebGLRenderingContext::renderbufferStorage):
  94020. (WebCore::WebGLRenderingContext::texImage2DBase):
  94021. (WebCore::WebGLRenderingContext::isTexInternalFormatColorBufferCombinationValid):
  94022. * html/canvas/WebGLRenderingContext.h: Ditto.
  94023. * html/canvas/WebGLTexture.cpp: Ditto.
  94024. (WebCore::WebGLTexture::WebGLTexture):
  94025. * html/canvas/WebGLTexture.h: Ditto.
  94026. (WebCore::WebGLTexture::setInternalFormat):
  94027. (WebCore::WebGLTexture::getInternalFormat):
  94028. 2010-06-17 Zhenyao Mo <zmo@google.com>
  94029. Reviewed by David Levin.
  94030. Remove input parameter validation for "level" upper limit in *tex* functions
  94031. https://bugs.webkit.org/show_bug.cgi?id=40603
  94032. * html/canvas/WebGLRenderingContext.cpp:
  94033. (WebCore::WebGLRenderingContext::validateTexFuncParameters): Don't check for "level" upper limit.
  94034. 2010-06-17 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  94035. Reviewed by Eric Seidel.
  94036. Clean EFL header files in order to diminish the compilation time with
  94037. EFL from subversion. We remove the EFL includes from header files and use
  94038. forward declarations, including the headers in correspondent source
  94039. files when needed. This causes only the needed source files to be
  94040. recompiled in case a new version of EFL is installed instead of
  94041. triggering a recompilation of almost all WebCore/WebKit.
  94042. https://bugs.webkit.org/show_bug.cgi?id=40575
  94043. No new functionalities, so no new tests.
  94044. * CMakeListsEfl.txt:
  94045. * platform/PlatformKeyboardEvent.h: forward declaration.
  94046. * platform/PlatformMouseEvent.h: forward declaration and change method
  94047. signature to not require enum.
  94048. * platform/PlatformWheelEvent.h: forward declaration.
  94049. * platform/Widget.h: forward declaration.
  94050. * platform/efl/PlatformKeyboardEventEfl.cpp: include needed header.
  94051. * platform/efl/PlatformMouseEventEfl.cpp:
  94052. (WebCore::PlatformMouseEvent::setClickCount): change method signature
  94053. as mentioned above.
  94054. * platform/efl/PlatformWheelEventEfl.cpp: include needed header.
  94055. * platform/efl/RenderThemeEfl.cpp: include needed header
  94056. * platform/efl/RenderThemeEfl.h: forward declaration.
  94057. * platform/efl/ScrollbarEfl.cpp: include needed header.
  94058. * platform/efl/ScrollbarEfl.h: forward declaration.
  94059. * platform/efl/WidgetEfl.cpp: include needed header.
  94060. * platform/graphics/FloatRect.h: remove unused method.
  94061. * platform/graphics/Icon.h: forward declaration.
  94062. * platform/graphics/IntRect.h: remove unused method.
  94063. * platform/graphics/efl/FloatRectEfl.cpp: Removed. This file was
  94064. implementing an unused method.
  94065. * platform/graphics/efl/IntRectEfl.cpp: Removed. This file was
  94066. implementing an unused method.
  94067. 2010-06-17 Alex Milowski <alex@milowski.com>
  94068. Reviewed by Darin Adler.
  94069. Fixed a compile error in the paint() methods by making them use the
  94070. new visitedDependentColor() method.
  94071. https://bugs.webkit.org/show_bug.cgi?id=40327
  94072. * mathml/RenderMathMLRoot.cpp:
  94073. (WebCore::RenderMathMLRoot::paint):
  94074. (WebCore::RenderMathMLRoot::layout): Fixed a crash where every child
  94075. was assumed to be a RenderMathMLBlock instance when that isn't the
  94076. case. Also, layout() needed to mark the index for layout before
  94077. calling layout() on the index.
  94078. * mathml/RenderMathMLSquareRoot.cpp:
  94079. (WebCore::RenderMathMLSquareRoot::paint):
  94080. 2010-06-17 Darin Adler <darin@apple.com>
  94081. Reviewed by Sam Weinig.
  94082. Use adoptRef and create functions in more code paths
  94083. https://bugs.webkit.org/show_bug.cgi?id=40760
  94084. This helps prepare for an assertion that fires if you ref or destroy an
  94085. object before calling adoptRef on it. That will help us catch mistakes
  94086. that can lead to storage leaks.
  94087. * WebCore.base.exp: Updated export now that Frame::create is not an
  94088. inline function.
  94089. * css/CSSInitialValue.h:
  94090. (WebCore::CSSInitialValue::createExplicit): Use create.
  94091. (WebCore::CSSInitialValue::createImplicit): Ditto.
  94092. (WebCore::CSSInitialValue::create): Added.
  94093. * css/CSSPrimitiveValue.cpp:
  94094. (WebCore::CSSPrimitiveValue::createUncachedIdentifier): Added.
  94095. (WebCore::CSSPrimitiveValue::createUncachedColor): Added.
  94096. (WebCore::CSSPrimitiveValue::createUncached): Added.
  94097. (WebCore::CSSPrimitiveValue::createIdentifier): Use createUncachedIdentifier
  94098. instead of using new directly.
  94099. (WebCore::CSSPrimitiveValue::createColor): Use createUncachedColor instead
  94100. of using new directly.
  94101. (WebCore::CSSPrimitiveValue::create): Use createdUncached instead of using
  94102. new directly.
  94103. * css/CSSPrimitiveValue.h: Declare the new functions above.
  94104. * css/CSSStyleSelector.cpp:
  94105. (WebCore::loadFullDefaultStyle): Deref simpleDefaultStyleSheet instead of
  94106. explicitly deleting it.
  94107. * loader/SubresourceLoader.cpp:
  94108. (WebCore::SubresourceLoader::SubresourceLoader): Move the call to
  94109. addSubresourceLoader out of here.
  94110. (WebCore::SubresourceLoader::create): Move it in here. This makes it so
  94111. we don't ref the loader before finishing its creation and calling adoptRef.
  94112. * page/Frame.cpp:
  94113. (WebCore::Frame::Frame): Move the call to setMainFrame out of here.
  94114. Also refactor the code so an assertion is easier to read.
  94115. (WebCore::Frame::create): Move the call to setMainFrame in here.
  94116. This makes it so we don't ref the frame before finishing its creation
  94117. and calling adoptRef.
  94118. * page/Frame.h: Made the create function non-inline.
  94119. * platform/text/BidiContext.cpp:
  94120. (WebCore::BidiContext::createUncached): Added.
  94121. (WebCore::BidiContext::create): Call createUncached instead of callling
  94122. new directly.
  94123. * platform/text/BidiContext.h: Declare createUncached.
  94124. * rendering/RenderSVGResourceFilter.cpp:
  94125. (WebCore::RenderSVGResourceFilter::buildPrimitives): Use PassRefPtr and
  94126. RefPtr instead of OwnPtr. And use the create function instead of new.
  94127. * rendering/RenderSVGResourceFilter.h: Ditto.
  94128. * rendering/SVGRenderTreeAsText.cpp:
  94129. (WebCore::writeSVGResourceContainer): Ditto.
  94130. * storage/StorageAreaImpl.cpp:
  94131. (WebCore::StorageAreaImpl::StorageAreaImpl): Move the code that calls
  94132. StorageAreaSync::create out of here.
  94133. (WebCore::StorageAreaImpl::create): Move it in here. This makes it so we
  94134. don't ref the storage area before finishing its creation and calling adoptRef.
  94135. * svg/SVGPaint.cpp:
  94136. (WebCore::SVGPaint::defaultFill): Use create instead of new.
  94137. (WebCore::SVGPaint::defaultStroke): Ditto.
  94138. * svg/graphics/filters/SVGFilterBuilder.h: Made the constructor private
  94139. and added a create function since this is a reference counted object and
  94140. should not be constructed directly.
  94141. 2010-06-17 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  94142. Reviewed by Gustavo Noronha.
  94143. Update CMake build system to use new script for generating source files
  94144. with gperf (r61091).
  94145. This updates also the build system to cope with recent changes to
  94146. source files list.
  94147. https://bugs.webkit.org/show_bug.cgi?id=40628
  94148. No new tests since it's just compilation fixes.
  94149. * CMakeLists.txt:
  94150. 2010-06-17 Darin Adler <darin@apple.com>
  94151. Reviewed by Sam Weinig.
  94152. Fix boolean reflected attributes to use empty string consistently for the content attribute value
  94153. https://bugs.webkit.org/show_bug.cgi?id=40758
  94154. Test: fast/dom/boolean-attribute-reflection.html
  94155. The HTML5 specification and other browsers are all consistent:
  94156. When setting a boolean IDL attribute to true, the attribute value
  94157. gets set to the empty string. The guidelines for authors allow either
  94158. the empty string or the name of the attribute, but for implementers
  94159. of the DOM, the reflected attribute gets empty string.
  94160. * dom/Element.cpp:
  94161. (WebCore::Element::setBooleanAttribute): Use emptyAtom to set the
  94162. attribute to the empty string.
  94163. * html/HTMLFormControlElement.cpp:
  94164. (WebCore::HTMLFormControlElement::setAutofocus): Use the empty string,
  94165. not "autofocus".
  94166. (WebCore::HTMLFormControlElement::setRequired): Use the empty string,
  94167. not "required".
  94168. 2010-06-17 Pavel Feldman <pfeldman@chromium.org>
  94169. Unreviewed: chromium tests fix. Added InspectorBackend delegates for new inspector methods.
  94170. * inspector/front-end/InspectorBackendStub.js:
  94171. (.WebInspector.InspectorBackendStub.prototype.clearConsoleMessages):
  94172. (.WebInspector.InspectorBackendStub.prototype.getOuterHTML):
  94173. (.WebInspector.InspectorBackendStub.prototype.setOuterHTML):
  94174. (.WebInspector.InspectorBackendStub.prototype.addInspectedNode):
  94175. 2010-06-17 Mark Brand <mabrand@mabrand.nl>
  94176. Reviewed by Simon Hausmann.
  94177. [Qt] use "win32-g++*" scope to match all MinGW makespecs
  94178. The scope "win32-g++" comes from the name of the makespec. However, it
  94179. is frequently used to check for MinGW. This works fine as long as
  94180. win32-g++ is the only makespec for MinGW. Now we need the wildcard
  94181. to cover "win32-g++-cross" as well.
  94182. * WebCore.pro:
  94183. 2010-06-16 Pavel Feldman <pfeldman@chromium.org>
  94184. Reviewed by Joe Pecoraro.
  94185. Web Inspector: move get/setOuterHTML, addInspectedNode and
  94186. clearConsole to native InspectorDOMAgent. This is done to allow
  94187. inspected nodes array to store nodes from different domains,
  94188. also moves outerhtml manipulation closer to the rest of the DOM
  94189. operations. In addition to that, we are slowly getting rid of
  94190. InjectedScriptAccess in favor of IDL-defined InspectorBackend
  94191. interface for clearer remote debugging API.
  94192. https://bugs.webkit.org/show_bug.cgi?id=40733
  94193. * inspector/InjectedScriptHost.cpp:
  94194. (WebCore::InjectedScriptHost::inspectedNode):
  94195. * inspector/InjectedScriptHost.h:
  94196. * inspector/InspectorBackend.cpp:
  94197. (WebCore::InspectorBackend::changeTagName):
  94198. (WebCore::InspectorBackend::getOuterHTML):
  94199. (WebCore::InspectorBackend::setOuterHTML):
  94200. (WebCore::InspectorBackend::addInspectedNode):
  94201. (WebCore::InspectorBackend::clearConsoleMessages):
  94202. * inspector/InspectorBackend.h:
  94203. * inspector/InspectorBackend.idl:
  94204. * inspector/InspectorDOMAgent.cpp:
  94205. (WebCore::InspectorDOMAgent::inspectedNode):
  94206. (WebCore::InspectorDOMAgent::changeTagName):
  94207. (WebCore::InspectorDOMAgent::getOuterHTML):
  94208. (WebCore::InspectorDOMAgent::setOuterHTML):
  94209. (WebCore::InspectorDOMAgent::addInspectedNode):
  94210. * inspector/InspectorDOMAgent.h:
  94211. * inspector/InspectorFrontend.cpp:
  94212. (WebCore::InspectorFrontend::didGetOuterHTML):
  94213. (WebCore::InspectorFrontend::didSetOuterHTML):
  94214. * inspector/InspectorFrontend.h:
  94215. * inspector/front-end/ConsoleView.js:
  94216. (WebInspector.ConsoleView.prototype.requestClearMessages):
  94217. * inspector/front-end/DOMAgent.js:
  94218. * inspector/front-end/ElementsPanel.js:
  94219. (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged):
  94220. (WebInspector.ElementsPanel):
  94221. * inspector/front-end/ElementsTreeOutline.js:
  94222. (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted.changeTagNameCallback):
  94223. (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted):
  94224. ():
  94225. * inspector/front-end/InjectedScript.js:
  94226. (injectedScriptConstructor):
  94227. * inspector/front-end/InjectedScriptAccess.js:
  94228. 2010-06-17 John Gregg <johnnyg@google.com>
  94229. Reviewed by David Levin.
  94230. Move the call to the notification presenter that a Notification is being
  94231. destroyed from the destructor (not safe) to the ActiveDOMObject::contextDestroyed
  94232. method.
  94233. Also fix up an incorrect reference loss in the V8 bindings code for Notifications.
  94234. https://bugs.webkit.org/show_bug.cgi?id=40097
  94235. No new tests; code paths are well-covered by existing tests.
  94236. * bindings/v8/custom/V8NotificationCenterCustom.cpp:
  94237. (WebCore::V8NotificationCenter::createHTMLNotificationCallback):
  94238. (WebCore::V8NotificationCenter::createNotificationCallback):
  94239. * notifications/Notification.cpp:
  94240. (WebCore::Notification::~Notification):
  94241. (WebCore::Notification::contextDestroyed):
  94242. * notifications/Notification.h:
  94243. 2010-06-17 Csaba Osztrogonác <ossy@webkit.org>
  94244. Unreviewed rollout r61311, because it made 2 tests fail on Qt bot.
  94245. [Qt] NPP_SetWindow seems to not be called when TestNetscapePlugin is moved
  94246. https://bugs.webkit.org/show_bug.cgi?id=36702
  94247. * plugins/qt/PluginViewQt.cpp:
  94248. (WebCore::PluginView::updatePluginWidget):
  94249. 2010-05-28 Viatcheslav Ostapenko <ostapenko.viatcheslav@nokia.com>
  94250. Reviewed by Simon Hausmann, Antti Koivisto
  94251. Make repaint throttling parameters runtime configurable.
  94252. https://bugs.webkit.org/show_bug.cgi?id=38401
  94253. REPAINT_THROTTLING now chooses default values for throttling parameters.
  94254. Should be removed when applications start using runtime configuration.
  94255. * page/FrameView.cpp:
  94256. (WebCore::FrameView::reset):
  94257. (WebCore::FrameView::updateDeferredRepaintDelay):
  94258. (WebCore::FrameView::setRepaintThrottlingDeferredRepaintDelay):
  94259. (WebCore::FrameView::setRepaintThrottlingnInitialDeferredRepaintDelayDuringLoading):
  94260. (WebCore::FrameView::setRepaintThrottlingMaxDeferredRepaintDelayDuringLoading):
  94261. (WebCore::FrameView::setRepaintThrottlingDeferredRepaintDelayIncrementDuringLoading):
  94262. * page/FrameView.h:
  94263. 2010-06-17 Robert Hogan <robert@webkit.org>
  94264. Reviewed by Kenneth Rohde Christiansen.
  94265. [Qt] NPP_SetWindow seems to not be called when TestNetscapePlugin is moved
  94266. https://bugs.webkit.org/show_bug.cgi?id=36702
  94267. setNPWindowIfNeeded() is called on paint() in PluginViewQt, which doesn't
  94268. work for DRT. So call it if we are in DRT mode and the window geometry
  94269. has changed.
  94270. Unskips plugins/reentrant-update-widget-positions.html
  94271. * plugins/qt/PluginViewQt.cpp:
  94272. (WebCore::PluginView::updatePluginWidget):
  94273. 2010-06-17 Simon Hausmann <simon.hausmann@nokia.com>
  94274. Reviewed by Kenneth Christiansen.
  94275. [Qt] Avoid unnecessary calls to save() and restore() when drawing images
  94276. Avoid calling the expensive save() and restore() on the GraphicsContext just
  94277. for changing the composition mode. Instead save and restore it manually
  94278. on QPainter.
  94279. Change fac227f609e544f8f55aca8447b4328d6534407a in Qt makes sure that the
  94280. call to QPainter::setCompositionMode doesn't do anything if the mode hasn't
  94281. changed.
  94282. * platform/graphics/GraphicsContext.h:
  94283. * platform/graphics/qt/GraphicsContextQt.cpp:
  94284. (WebCore::GraphicsContext::toQtCompositionMode):
  94285. * platform/graphics/qt/ImageQt.cpp:
  94286. (WebCore::BitmapImage::draw):
  94287. 2010-06-16 Dawit Alemayehu <adawit@kde.org>
  94288. Reviewed by Simon Hausmann.
  94289. [Qt] QtWebKit crashes while initializing flash plugin 10.1.53.64.
  94290. https://bugs.webkit.org/show_bug.cgi?id=40567
  94291. Avoid preventable crashes by ensuring gtk_init() is called in the
  94292. flash viewer plugins before calling NP_Initialize.
  94293. * plugins/qt/PluginPackageQt.cpp:
  94294. (WebCore::PluginPackage::load):
  94295. 2010-06-16 Tony Gentilcore <tonyg@chromium.org>
  94296. Reviewed by David Levin.
  94297. Guarantee that references are held for CachedScripts in HTMLDocumentParser.
  94298. https://bugs.webkit.org/show_bug.cgi?id=40177
  94299. No new tests because no new functionality.
  94300. * html/HTMLDocumentParser.cpp:
  94301. (WebCore::HTMLDocumentParser::reset):
  94302. (WebCore::HTMLDocumentParser::executeExternalScriptsIfReady):
  94303. 2010-06-16 Qi Zhang <qi.2.zhang@nokia.com>
  94304. Reviewed by Laszlo Gombos.
  94305. [Qt] Repeat pattern should start from origin
  94306. https://bugs.webkit.org/show_bug.cgi?id=39225
  94307. Patterns must be painted so that the top left of the first image
  94308. is anchored at the origin of the coordinate space.
  94309. * platform/graphics/qt/GraphicsContextQt.cpp:
  94310. (WebCore::drawRepeatPattern):
  94311. (WebCore::GraphicsContext::fillRect):
  94312. 2010-06-16 Jarkko Sakkinen <jarkko.j.sakkinen@gmail.com>
  94313. Reviewed by Simon Hausmann.
  94314. [Qt] WebGL viewport does not show up on N900
  94315. https://bugs.webkit.org/show_bug.cgi?id=38528
  94316. With OGLES2 add default precision to the shader code.
  94317. Use GLsizeiptr and GLintptr with OGLES2.
  94318. Call paint() in beginPaint() so that drawTexture() is used
  94319. whenever possible.
  94320. * platform/graphics/qt/GraphicsContext3DQt.cpp:
  94321. (WebCore::GraphicsContext3D::beginPaint):
  94322. (WebCore::GraphicsContext3D::paint):
  94323. (WebCore::GraphicsContext3D::shaderSource):
  94324. 2010-06-16 Antonio Gomes <tonikitoo@webkit.org>
  94325. Reviewed by Simon Fraser.
  94326. Spatial Navigation: refactor scrollInDirection to work with scrollable content
  94327. https://bugs.webkit.org/show_bug.cgi?id=39195
  94328. scrollInDirection now receives as parameter the node that the Spatial Navigation
  94329. found as the more appropriated to move focus to. If it is in a scrollable container
  94330. (e.g. <div> with clipped overflow content), it scrolls recursively starting from
  94331. the container, not the current focused node.
  94332. Test: fast/events/spatial-navigation/snav-only-clipped-overflow-content.html
  94333. * page/FocusController.cpp:
  94334. (WebCore::FocusController::advanceFocusDirectionally):
  94335. * page/SpatialNavigation.cpp:
  94336. (WebCore::scrollInDirection):
  94337. * page/SpatialNavigation.h:
  94338. 2010-06-16 Brady Eidson <beidson@apple.com>
  94339. Reviewed by Eric Carlson
  94340. <rdar://problem/7249553> and https://bugs.webkit.org/show_bug.cgi?id=40749
  94341. ResourceLoader::willCacheResponse() needs to null-check Frame::Settings()
  94342. No new tests. (Discovered via crash reports, no reproducible cases noted)
  94343. * loader/ResourceLoader.cpp:
  94344. (WebCore::ResourceLoader::willCacheResponse): Null check m_frame->settings(),
  94345. but also add an ASSERT so debug-build developers can learn more about why
  94346. this might be happening.
  94347. 2010-06-16 Darin Adler <darin@apple.com>
  94348. Try to fix the MathML build.
  94349. * mathml/MathMLMathElement.h: Added missing return type.
  94350. 2010-06-16 Darin Adler <darin@apple.com>
  94351. Reviewed by David Levin.
  94352. Deploy adoptRef in more places, including all HTML and MathML elements
  94353. https://bugs.webkit.org/show_bug.cgi?id=39941
  94354. * dom/Element.cpp:
  94355. (WebCore::Element::dispatchAttrRemovalEvent): Use create instead of new
  94356. in commented-out code.
  94357. (WebCore::Element::dispatchAttrAdditionEvent): Ditto.
  94358. * dom/Node.h: Removed now-unused CreateElementZeroRefCount and
  94359. CreateHTMLElementZeroRefCount.
  94360. * editing/InsertListCommand.cpp:
  94361. (WebCore::InsertListCommand::insertList): Use create instead of new, fixing
  94362. a storage leak.
  94363. * editing/ModifySelectionListLevel.cpp:
  94364. (WebCore::IncreaseSelectionListLevelCommand::increaseSelectionListLevel):
  94365. Removed "WithType" from function name. Use create instead of new, fixing a
  94366. storage leak.
  94367. (WebCore::DecreaseSelectionListLevelCommand::decreaseSelectionListLevel): Use
  94368. create instead of new, fixing a storage leak.
  94369. * storage/IndexedDatabaseImpl.cpp:
  94370. (WebCore::IndexedDatabaseImpl::create): Use adoptRef, fixing a storage leak.
  94371. * editing/ModifySelectionListLevel.h: Added create functions.
  94372. * html/HTMLAnchorElement.cpp:
  94373. (WebCore::HTMLAnchorElement::HTMLAnchorElement):
  94374. * html/HTMLFrameOwnerElement.cpp:
  94375. (WebCore::HTMLFrameOwnerElement::HTMLFrameOwnerElement):
  94376. * html/HTMLMeterElement.cpp:
  94377. (WebCore::HTMLMeterElement::HTMLMeterElement):
  94378. * html/HTMLProgressElement.cpp:
  94379. (WebCore::HTMLProgressElement::HTMLProgressElement):
  94380. Removed code to explicitly pass CreateHTMLElement construction type since that's
  94381. now the type used for all HTML elements.
  94382. * html/HTMLFormControlElement.cpp:
  94383. (WebCore::HTMLFormControlElement::HTMLFormControlElement):
  94384. * html/HTMLFormControlElement.h:
  94385. Removed construction type argument, since CreateHTMLElement is now the type used
  94386. for all HTML elements.
  94387. * mathml/MathMLElement.cpp:
  94388. (WebCore::MathMLElement::MathMLElement): Removed construction type of
  94389. CreateStyledElementZeroRefCount so we'll use the default construction
  94390. type, CreateStyledElement.
  94391. (WebCore::MathMLElement::create): Use adoptRef.
  94392. * mathml/MathMLElement.h: Made isMathMLElement function private and
  94393. removed unneeded override of createRenderer, because it did the
  94394. same thing as the base class's createRenderer function.
  94395. * mathml/MathMLInlineContainerElement.cpp:
  94396. (WebCore::MathMLInlineContainerElement::create): Use adoptRef.
  94397. (WebCore::MathMLInlineContainerElement::createRenderer):
  94398. Removed unnecessarily initialization of local variable and removed the
  94399. case for mathTag, since that uses a different derived class.
  94400. * mathml/MathMLInlineContainerElement.h: Made createRenderrer override
  94401. private.
  94402. * mathml/MathMLMathElement.cpp:
  94403. (WebCore::MathMLMathElement::MathMLMathElement): Marked inline since
  94404. it is called in only one place.
  94405. (WebCore::MathMLMathElement::create): Use adoptRef.
  94406. (WebCore::MathMLMathElement::createRenderer): Added. Creates a
  94407. RenderMathMLMath object.
  94408. * mathml/MathMLMathElement.h: Made constructor private and added a
  94409. private override of createRenderer.
  94410. * mathml/MathMLTextElement.cpp:
  94411. (WebCore::MathMLTextElement::MathMLTextElement): Marked inline since
  94412. it is called in only one place.
  94413. (WebCore::MathMLTextElement::create): Use adoptRef.
  94414. (WebCore::MathMLTextElement::createRenderer): Changed to call through
  94415. to the base class instead of calling RenderObject::createObject directly.
  94416. * mathml/MathMLTextElement.h: Made the constructor and createRenderer
  94417. function private.
  94418. * rendering/RenderFileUploadControl.cpp:
  94419. (WebCore::RenderFileUploadControl::RenderFileUploadControl):
  94420. Removed an unneeded initializer.
  94421. * rendering/RenderProgress.cpp: Tweaked includes.
  94422. * rendering/ShadowElement.cpp: Added a "using namespace" directive.
  94423. * rendering/ShadowElement.h: Tweaked formatting. Made more functions
  94424. private.
  94425. * editing/DeleteButton.cpp:
  94426. (WebCore::DeleteButton::create):
  94427. * html/HTMLAudioElement.cpp:
  94428. (WebCore::HTMLAudioElement::create):
  94429. (WebCore::HTMLAudioElement::createForJSConstructor):
  94430. * html/HTMLBRElement.cpp:
  94431. (WebCore::HTMLBRElement::create):
  94432. * html/HTMLBaseElement.cpp:
  94433. (WebCore::HTMLBaseElement::create):
  94434. * html/HTMLBaseFontElement.cpp:
  94435. (WebCore::HTMLBaseFontElement::create):
  94436. * html/HTMLBlockquoteElement.cpp:
  94437. (WebCore::HTMLBlockquoteElement::create):
  94438. * html/HTMLBodyElement.cpp:
  94439. (WebCore::HTMLBodyElement::create):
  94440. * html/HTMLButtonElement.cpp:
  94441. (WebCore::HTMLButtonElement::create):
  94442. * html/HTMLCanvasElement.cpp:
  94443. (WebCore::HTMLCanvasElement::create):
  94444. * html/HTMLDListElement.cpp:
  94445. (WebCore::HTMLDListElement::create):
  94446. * html/HTMLDataGridCellElement.cpp:
  94447. (WebCore::HTMLDataGridCellElement::create):
  94448. * html/HTMLDataGridColElement.cpp:
  94449. (WebCore::HTMLDataGridColElement::create):
  94450. * html/HTMLDataGridElement.cpp:
  94451. (WebCore::HTMLDataGridElement::create):
  94452. * html/HTMLDataGridRowElement.cpp:
  94453. (WebCore::HTMLDataGridRowElement::create):
  94454. * html/HTMLDataListElement.cpp:
  94455. (WebCore::HTMLDataListElement::create):
  94456. * html/HTMLDivElement.cpp:
  94457. (WebCore::HTMLDivElement::create):
  94458. * html/HTMLElement.cpp:
  94459. (WebCore::HTMLElement::create):
  94460. * html/HTMLElement.h:
  94461. (WebCore::HTMLElement::HTMLElement):
  94462. * html/HTMLFieldSetElement.cpp:
  94463. (WebCore::HTMLFieldSetElement::create):
  94464. * html/HTMLFontElement.cpp:
  94465. (WebCore::HTMLFontElement::create):
  94466. * html/HTMLFormElement.cpp:
  94467. (WebCore::HTMLFormElement::create):
  94468. * html/HTMLFrameSetElement.cpp:
  94469. (WebCore::HTMLFrameSetElement::create):
  94470. * html/HTMLHRElement.cpp:
  94471. (WebCore::HTMLHRElement::create):
  94472. * html/HTMLHeadElement.cpp:
  94473. (WebCore::HTMLHeadElement::create):
  94474. * html/HTMLHeadingElement.cpp:
  94475. (WebCore::HTMLHeadingElement::create):
  94476. * html/HTMLHtmlElement.cpp:
  94477. (WebCore::HTMLHtmlElement::create):
  94478. * html/HTMLImageElement.cpp:
  94479. (WebCore::HTMLImageElement::create):
  94480. (WebCore::HTMLImageElement::createForJSConstructor):
  94481. * html/HTMLInputElement.cpp:
  94482. (WebCore::HTMLInputElement::create):
  94483. * html/HTMLIsIndexElement.cpp:
  94484. (WebCore::HTMLIsIndexElement::create):
  94485. * html/HTMLKeygenElement.cpp:
  94486. (WebCore::HTMLKeygenElement::create):
  94487. * html/HTMLLIElement.cpp:
  94488. (WebCore::HTMLLIElement::create):
  94489. * html/HTMLLabelElement.cpp:
  94490. (WebCore::HTMLLabelElement::create):
  94491. * html/HTMLLegendElement.cpp:
  94492. (WebCore::HTMLLegendElement::create):
  94493. * html/HTMLLinkElement.cpp:
  94494. (WebCore::HTMLLinkElement::create):
  94495. * html/HTMLMapElement.cpp:
  94496. (WebCore::HTMLMapElement::create):
  94497. * html/HTMLMarqueeElement.cpp:
  94498. (WebCore::HTMLMarqueeElement::create):
  94499. * html/HTMLMenuElement.cpp:
  94500. (WebCore::HTMLMenuElement::create):
  94501. * html/HTMLMetaElement.cpp:
  94502. (WebCore::HTMLMetaElement::create):
  94503. * html/HTMLModElement.cpp:
  94504. (WebCore::HTMLModElement::create):
  94505. * html/HTMLNoScriptElement.cpp:
  94506. (WebCore::HTMLNoScriptElement::create):
  94507. * html/HTMLOListElement.cpp:
  94508. (WebCore::HTMLOListElement::create):
  94509. * html/HTMLOptGroupElement.cpp:
  94510. (WebCore::HTMLOptGroupElement::create):
  94511. * html/HTMLOptionElement.cpp:
  94512. (WebCore::HTMLOptionElement::create):
  94513. (WebCore::HTMLOptionElement::createForJSConstructor):
  94514. * html/HTMLParagraphElement.cpp:
  94515. (WebCore::HTMLParagraphElement::create):
  94516. * html/HTMLParamElement.cpp:
  94517. (WebCore::HTMLParamElement::create):
  94518. * html/HTMLPreElement.cpp:
  94519. (WebCore::HTMLPreElement::create):
  94520. * html/HTMLQuoteElement.cpp:
  94521. (WebCore::HTMLQuoteElement::create):
  94522. * html/HTMLScriptElement.cpp:
  94523. (WebCore::HTMLScriptElement::create):
  94524. * html/HTMLSelectElement.cpp:
  94525. (WebCore::HTMLSelectElement::create):
  94526. * html/HTMLSourceElement.cpp:
  94527. (WebCore::HTMLSourceElement::create):
  94528. * html/HTMLStyleElement.cpp:
  94529. (WebCore::HTMLStyleElement::create):
  94530. * html/HTMLTableCaptionElement.cpp:
  94531. (WebCore::HTMLTableCaptionElement::create):
  94532. * html/HTMLTableCellElement.cpp:
  94533. (WebCore::HTMLTableCellElement::create):
  94534. * html/HTMLTableColElement.cpp:
  94535. (WebCore::HTMLTableColElement::create):
  94536. * html/HTMLTableElement.cpp:
  94537. (WebCore::HTMLTableElement::create):
  94538. * html/HTMLTableRowElement.cpp:
  94539. (WebCore::HTMLTableRowElement::create):
  94540. * html/HTMLTableSectionElement.cpp:
  94541. (WebCore::HTMLTableSectionElement::create):
  94542. * html/HTMLTextAreaElement.cpp:
  94543. (WebCore::HTMLTextAreaElement::create):
  94544. * html/HTMLTitleElement.cpp:
  94545. (WebCore::HTMLTitleElement::create):
  94546. * html/HTMLUListElement.cpp:
  94547. (WebCore::HTMLUListElement::create):
  94548. * html/HTMLVideoElement.cpp:
  94549. (WebCore::HTMLVideoElement::create):
  94550. * loader/ImageDocument.cpp:
  94551. (WebCore::ImageDocumentElement::create):
  94552. * rendering/MediaControlElements.cpp:
  94553. (WebCore::MediaControlShadowRootElement::create):
  94554. (WebCore::MediaControlElement::create):
  94555. (WebCore::MediaControlTimelineContainerElement::create):
  94556. (WebCore::MediaControlVolumeSliderContainerElement::create):
  94557. (WebCore::MediaControlStatusDisplayElement::create):
  94558. (WebCore::MediaControlMuteButtonElement::create):
  94559. (WebCore::MediaControlPlayButtonElement::create):
  94560. (WebCore::MediaControlSeekButtonElement::create):
  94561. (WebCore::MediaControlRewindButtonElement::create):
  94562. (WebCore::MediaControlReturnToRealtimeButtonElement::create):
  94563. (WebCore::MediaControlToggleClosedCaptionsButtonElement::create):
  94564. (WebCore::MediaControlTimelineElement::create):
  94565. (WebCore::MediaControlVolumeSliderElement::create):
  94566. (WebCore::MediaControlFullscreenButtonElement::create):
  94567. (WebCore::MediaControlTimeDisplayElement::create):
  94568. * rendering/RenderSlider.cpp:
  94569. (WebCore::SliderThumbElement::create):
  94570. * rendering/TextControlInnerElements.cpp:
  94571. (WebCore::TextControlInnerElement::create):
  94572. (WebCore::TextControlInnerTextElement::create):
  94573. (WebCore::SearchFieldResultsButtonElement::create):
  94574. (WebCore::SearchFieldCancelButtonElement::create):
  94575. (WebCore::SpinButtonElement::create):
  94576. Use adoptRef.
  94577. 2010-06-16 Adam Barth <abarth@webkit.org>
  94578. Reviewed by Eric Seidel.
  94579. HTML5 parser crash when setTimeout document.write after slow script
  94580. https://bugs.webkit.org/show_bug.cgi?id=40726
  94581. According to the HTML5 spec, we're supposed to open() a new document if
  94582. we receive a document.write() after we've received EOF for the network.
  94583. The old parser just dumped those bytes onto the end of the network
  94584. stream. After this patch, our behavior matches Minefield.
  94585. Test: http/tests/misc/write-while-waiting.html
  94586. * WebCore.xcodeproj/project.pbxproj:
  94587. * dom/Document.cpp:
  94588. (WebCore::Document::write):
  94589. * dom/DocumentParser.h:
  94590. * dom/XMLDocumentParser.cpp:
  94591. (WebCore::XMLDocumentParser::finishWasCalled):
  94592. * dom/XMLDocumentParser.h:
  94593. * html/HTML5DocumentParser.cpp:
  94594. (WebCore::HTML5DocumentParser::finishWasCalled):
  94595. * html/HTML5DocumentParser.h:
  94596. (WebCore::HTML5DocumentParser::InputStream::isClosed):
  94597. * html/HTMLDocumentParser.cpp:
  94598. (WebCore::HTMLDocumentParser::finishWasCalled):
  94599. * html/HTMLDocumentParser.h:
  94600. * loader/ImageDocument.cpp:
  94601. (WebCore::ImageTokenizer::finishWasCalled):
  94602. * loader/MediaDocument.cpp:
  94603. (WebCore::MediaDocumentParser::finishWasCalled):
  94604. * loader/PluginDocument.cpp:
  94605. (WebCore::PluginDocumentParser::finishWasCalled):
  94606. * loader/SinkDocument.cpp:
  94607. (WebCore::SinkDocumentParser::finishWasCalled):
  94608. * loader/TextDocument.cpp:
  94609. (WebCore::TextDocumentParser::finishWasCalled):
  94610. 2010-06-16 Martin Robinson <mrobinson@igalia.com>
  94611. Reviewed by Gustavo Noronha Silva.
  94612. [GTK] ClipboardGtk::setURL does not match the behavior of other platforms
  94613. https://bugs.webkit.org/show_bug.cgi?id=40640
  94614. Instead of writing URL labels to the text portion of the clipboard or
  94615. drag-and-drop data, write the URL itself. Also escape the label text
  94616. of URLs. Abstracts logic into DataObjectGtk, so ClipboardGtk and
  94617. PasteboardGtk can share it.
  94618. Tests for this issue will be activated when dropping support has been
  94619. added to the GTK+ EventSender.
  94620. * platform/gtk/ClipboardGtk.cpp:
  94621. (WebCore::ClipboardGtk::writeURL): Use DataObjectGtk::setURL.
  94622. * platform/gtk/DataObjectGtk.cpp:
  94623. (WebCore::DataObjectGtk::setURL):
  94624. Added. Write URL to the text portion and remember to escape the
  94625. label when creating the markup portion.
  94626. * platform/gtk/DataObjectGtk.h: Add declaration of new method.
  94627. * platform/gtk/PasteboardGtk.cpp:
  94628. (WebCore::Pasteboard::writeURL): Use DataObjectGtk::setURL.
  94629. 2010-06-16 Adam Barth <abarth@webkit.org>
  94630. Reviewed by Eric Seidel.
  94631. Hit assertion in WebCore::HTML5Token::appendToSystemIdentifier
  94632. https://bugs.webkit.org/show_bug.cgi?id=40729
  94633. This was a copy/paste error. Yay for ASSERTs.
  94634. * html/HTML5Lexer.cpp:
  94635. (WebCore::HTML5Lexer::nextToken):
  94636. 2010-06-16 Stuart Morgan <stuartmorgan@chromium.org>
  94637. Reviewed by Anders Carlsson.
  94638. Bring npapi.h more in line with upstream npapi-headers version:
  94639. - Remove obsolete XP_MAC sections.
  94640. - Remove Metrowerks defines.
  94641. - Add OS/2 defines.
  94642. - Add Maemo defines.
  94643. - Add new version of the custom Carbon event definitions.
  94644. - Sync platform define style/details
  94645. https://bugs.webkit.org/show_bug.cgi?id=38666
  94646. * bridge/npapi.h:
  94647. 2010-06-16 Simon Fraser <simon.fraser@apple.com>
  94648. Reviewed by Sam Weinig.
  94649. Allow transitions and animations of clip: rect
  94650. https://bugs.webkit.org/show_bug.cgi?id=38130
  94651. Make the CSS clip property animatable.
  94652. Test: transitions/clip-transition.html
  94653. * page/animation/AnimationBase.cpp:
  94654. (WebCore::blendFunc): New blend function for LengthBox
  94655. (WebCore::AnimationBase::ensurePropertyMap): Create a PropertyWrapper for LengthBoxes.
  94656. * platform/LengthBox.h:
  94657. (WebCore::LengthBox::LengthBox): New ctor that takes 4 length values.
  94658. * rendering/style/RenderStyle.h:
  94659. (WebCore::InheritedFlags::setClip): New method that takes a LengthBox.
  94660. 2010-06-16 Simon Fraser <simon.fraser@apple.com>
  94661. Reviewed by Dan Bernstein.
  94662. Fix clipping via CSS clip: with composited descendants
  94663. https://bugs.webkit.org/show_bug.cgi?id=40579
  94664. Consult the 'clip' style, as well as overflow, when creating clipping
  94665. compositing layers.
  94666. Tests: compositing/geometry/clip.html
  94667. compositing/overflow/clip-descendents.html
  94668. * rendering/RenderLayerBacking.cpp:
  94669. (WebCore::clipBox): Utility function that returns the union of the clip and overflow
  94670. boxes.
  94671. (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): Use clipBox() to
  94672. get the correct clipping rectangle.
  94673. * rendering/RenderLayerCompositor.cpp:
  94674. (WebCore::RenderLayerCompositor::enclosingNonStackingClippingLayer): Look for
  94675. clip as well as overflow.
  94676. (WebCore::RenderLayerCompositor::clipsCompositingDescendants): Ditto.
  94677. 2010-06-16 Simon Fraser <simon.fraser@apple.com>
  94678. Reviewed by Darin Adler.
  94679. REGRESSION: Undocked inspector toolbar is white
  94680. https://bugs.webkit.org/show_bug.cgi?id=40644
  94681. Make the html element 100% height so that we don't erase the background to white, after r61215.
  94682. * inspector/front-end/inspector.css:
  94683. (html):
  94684. 2010-06-16 Brian Weinstein <bweinstein@apple.com>
  94685. Reviewed by Darin Adler.
  94686. User scripts injected on start are not run on image documents.
  94687. https://bugs.webkit.org/show_bug.cgi?id=40722
  94688. <rdar://8087394>
  94689. User scripts that are injected on start are run from FrameLoader::dispatchDocumentElementAvailable,
  94690. but this is never called from ImageDocument, so call it when we create a document element for
  94691. our image document.
  94692. * loader/ImageDocument.cpp:
  94693. (WebCore::ImageDocument::createDocumentStructure): Call FrameLoader::dispatchDocumentElementAvailable
  94694. after creating our document element.
  94695. 2010-06-16 Brady Eidson <beidson@apple.com>
  94696. Reviewed by NOBODY (Build fix for Mac)
  94697. * WebCore.xcodeproj/project.pbxproj: Make paths relative to the project root.
  94698. 2010-06-16 Chris Marrin <cmarrin@apple.com>
  94699. Reviewed by Eric Carlson.
  94700. https://bugs.webkit.org/show_bug.cgi?id=40643
  94701. Second of three steps - rename Canvas3DLayer to WebGLLayer
  94702. * WebCore.xcodeproj/project.pbxproj:
  94703. * platform/graphics/mac/Canvas3DLayer.h: Removed.
  94704. * platform/graphics/mac/Canvas3DLayer.mm: Removed.
  94705. * platform/graphics/mac/GraphicsLayerCA.mm:
  94706. (WebCore::GraphicsLayerCA::setContentsToGraphicsContext3D):
  94707. * platform/graphics/mac/WebGLLayer.h: Copied from WebCore/platform/graphics/mac/Canvas3DLayer.h.
  94708. * platform/graphics/mac/WebGLLayer.mm: Copied from WebCore/platform/graphics/mac/Canvas3DLayer.mm.
  94709. 2010-06-16 Chris Marrin <cmarrin@apple.com>
  94710. Reviewed by Simon Fraser.
  94711. https://bugs.webkit.org/show_bug.cgi?id=40643
  94712. Rename GraphicsContext3DMac.cpp so it can interact with CALayer
  94713. * platform/graphics/mac/GraphicsContext3DMac.cpp: Removed.
  94714. * platform/graphics/mac/GraphicsContext3DMac.mm: Copied from WebCore/platform/graphics/mac/GraphicsContext3DMac.cpp.
  94715. * WebCore.xcodeproj/project.pbxproj
  94716. 2010-06-16 Nikolas Zimmermann <nzimmermann@rim.com>
  94717. Reviewed by Dirk Schulze.
  94718. Add new files, needed in SVG Text rewrite
  94719. https://bugs.webkit.org/show_bug.cgi?id=40676
  94720. Land SVGTextChunkLayoutInfo.cpp and SVGTextQuery.(cpp|h), both with an "#if 0" on top, as they will be needed
  94721. in a later patch, completing the SVG Text rewrite, that will enable them.
  94722. Doesn't affect any code for now, it should just reduce the review amount.
  94723. * Android.mk:
  94724. * CMakeLists.txt:
  94725. * GNUmakefile.am:
  94726. * WebCore.gypi:
  94727. * WebCore.pro:
  94728. * WebCore.vcproj/WebCore.vcproj:
  94729. * WebCore.xcodeproj/project.pbxproj:
  94730. * rendering/SVGTextChunkLayoutInfo.cpp: Added.
  94731. (WebCore::cummulatedWidthOrHeightOfTextChunk):
  94732. (WebCore::cummulatedWidthOfTextChunk):
  94733. (WebCore::cummulatedHeightOfTextChunk):
  94734. (WebCore::calculateTextAnchorShiftForTextChunk):
  94735. (WebCore::applyTextAnchorToTextChunk):
  94736. (WebCore::calculateTextLengthCorrectionForTextChunk):
  94737. (WebCore::applyTextLengthCorrectionToTextChunk):
  94738. (WebCore::SVGTextChunkLayoutInfo::startTextChunk):
  94739. (WebCore::SVGTextChunkLayoutInfo::closeTextChunk):
  94740. (WebCore::SVGTextChunkLayoutInfo::buildTextChunks):
  94741. (WebCore::SVGTextChunkLayoutInfo::recursiveBuildTextChunks):
  94742. (WebCore::SVGTextChunkLayoutInfo::layoutTextChunks):
  94743. * rendering/SVGTextChunkLayoutInfo.h: Add missing include, otherwhise compiling SVGTextChunkLayoutInfo.cpp will fail.
  94744. * rendering/SVGTextQuery.cpp: Added.
  94745. (WebCore::SVGTextQuery::Data::Data):
  94746. (WebCore::flowBoxForRenderer):
  94747. (WebCore::mapLengthThroughChunkTransformation):
  94748. (WebCore::SVGTextQuery::SVGTextQuery):
  94749. (WebCore::SVGTextQuery::collectTextBoxesInFlowBox):
  94750. (WebCore::SVGTextQuery::executeQuery):
  94751. (WebCore::SVGTextQuery::mapStartAndLengthIntoChunkPartCoordinates):
  94752. (WebCore::SVGTextQuery::measureCharacterRange):
  94753. (WebCore::NumberOfCharactersData::NumberOfCharactersData):
  94754. (WebCore::SVGTextQuery::numberOfCharactersCallback):
  94755. (WebCore::SVGTextQuery::numberOfCharacters):
  94756. (WebCore::TextLengthData::TextLengthData):
  94757. (WebCore::SVGTextQuery::textLengthCallback):
  94758. (WebCore::SVGTextQuery::textLength):
  94759. (WebCore::SubStringLengthData::SubStringLengthData):
  94760. (WebCore::SVGTextQuery::subStringLengthCallback):
  94761. (WebCore::SVGTextQuery::subStringLength):
  94762. (WebCore::StartPositionOfCharacterData::StartPositionOfCharacterData):
  94763. (WebCore::SVGTextQuery::startPositionOfCharacterCallback):
  94764. (WebCore::SVGTextQuery::startPositionOfCharacter):
  94765. (WebCore::EndPositionOfCharacterData::EndPositionOfCharacterData):
  94766. (WebCore::SVGTextQuery::endPositionOfCharacterCallback):
  94767. (WebCore::SVGTextQuery::endPositionOfCharacter):
  94768. (WebCore::RotationOfCharacterData::RotationOfCharacterData):
  94769. (WebCore::SVGTextQuery::rotationOfCharacterCallback):
  94770. (WebCore::SVGTextQuery::rotationOfCharacter):
  94771. (WebCore::ExtentOfCharacterData::ExtentOfCharacterData):
  94772. (WebCore::SVGTextQuery::extentOfCharacterCallback):
  94773. (WebCore::SVGTextQuery::extentOfCharacter):
  94774. (WebCore::CharacterNumberAtPositionData::CharacterNumberAtPositionData):
  94775. (WebCore::SVGTextQuery::characterNumberAtPositionCallback):
  94776. (WebCore::SVGTextQuery::characterNumberAtPosition):
  94777. * rendering/SVGTextQuery.h: Added.
  94778. 2010-06-16 Nikolas Zimmermann <nzimmermann@rim.com>
  94779. Reviewed by Dirk Schulze.
  94780. Provide floating-point support for text selection framework
  94781. https://bugs.webkit.org/show_bug.cgi?id=40665
  94782. This is the first chunk of the SVG Text rewrite patches.
  94783. offsetForPosition() / selectionRectForText() should accept float/FloatPoint arguments instead
  94784. of int/IntPoint. offsetForPosition() already worked with floats internally in Qt and Mac.
  94785. selectionRectForText() was already returning a FloatRect, but the passed in origin was an integer.
  94786. Fixing these problems in order to support sub-pixel positioning in the upcoming SVG Text rewrite patch.
  94787. Add a glyphScale parameter to TextRun, that will be used to support text selection
  94788. in lengthAdjust/textLength scenarios in SVG text, soon.
  94789. Doesn't affect any testcases so far. HTML is not affected in any way,
  94790. as it only ever passes integers to these functions.
  94791. * platform/graphics/Font.cpp:
  94792. (WebCore::Font::selectionRectForText):
  94793. (WebCore::Font::offsetForPosition):
  94794. * platform/graphics/Font.h:
  94795. * platform/graphics/FontFastPath.cpp:
  94796. (WebCore::Font::selectionRectForSimpleText):
  94797. (WebCore::Font::offsetForPositionForSimpleText):
  94798. * platform/graphics/TextRun.h:
  94799. (WebCore::TextRun::TextRun):
  94800. (WebCore::TextRun::glyphScale):
  94801. (WebCore::TextRun::setGlyphScale):
  94802. (WebCore::TextRun::applyGlyphScaling):
  94803. * platform/graphics/WidthIterator.cpp:
  94804. (WebCore::WidthIterator::advance):
  94805. * platform/graphics/chromium/FontChromiumWin.cpp:
  94806. (WebCore::Font::selectionRectForComplexText):
  94807. (WebCore::Font::offsetForPositionForComplexText):
  94808. * platform/graphics/chromium/FontLinux.cpp:
  94809. (WebCore::Font::offsetForPositionForComplexText):
  94810. (WebCore::Font::selectionRectForComplexText):
  94811. * platform/graphics/efl/FontEfl.cpp:
  94812. (WebCore::Font::offsetForPositionForComplexText):
  94813. (WebCore::Font::selectionRectForComplexText):
  94814. * platform/graphics/gtk/FontGtk.cpp:
  94815. (WebCore::Font::offsetForPositionForComplexText):
  94816. (WebCore::Font::selectionRectForComplexText):
  94817. * platform/graphics/haiku/FontHaiku.cpp:
  94818. (WebCore::Font::selectionRectForComplexText):
  94819. (WebCore::Font::offsetForPositionForComplexText):
  94820. * platform/graphics/mac/ComplexTextController.cpp:
  94821. (WebCore::ComplexTextController::offsetForPosition):
  94822. * platform/graphics/mac/ComplexTextController.h:
  94823. * platform/graphics/mac/FontComplexTextMac.cpp:
  94824. (WebCore::Font::selectionRectForComplexText):
  94825. (WebCore::Font::offsetForPositionForComplexText):
  94826. * platform/graphics/qt/FontQt.cpp:
  94827. (WebCore::Font::offsetForPositionForSimpleText):
  94828. (WebCore::Font::offsetForPositionForComplexText):
  94829. (WebCore::Font::selectionRectForSimpleText):
  94830. (WebCore::Font::selectionRectForComplexText):
  94831. * platform/graphics/win/FontWin.cpp:
  94832. (WebCore::Font::selectionRectForComplexText):
  94833. (WebCore::Font::offsetForPositionForComplexText):
  94834. * platform/graphics/wince/FontWince.cpp:
  94835. (WebCore::Font::offsetForPositionForComplexText):
  94836. (WebCore::Font::selectionRectForComplexText):
  94837. * platform/graphics/wx/FontWx.cpp:
  94838. (WebCore::Font::selectionRectForComplexText):
  94839. (WebCore::Font::offsetForPositionForComplexText):
  94840. * svg/SVGFont.cpp:
  94841. (WebCore::Font::selectionRectForTextUsingSVGFont):
  94842. (WebCore::Font::offsetForPositionForTextUsingSVGFont):
  94843. 2010-06-16 Anton Muhin <antonm@chromium.org>
  94844. Reviewed by Nate Chapin.
  94845. [v8] Introduce single element caches for WebCore::String to v8::String conversions
  94846. https://bugs.webkit.org/show_bug.cgi?id=40435
  94847. Measurements show that for some web apps (GMail, Wave) and some scenarios
  94848. (intensive reading and/or keeping a tab open for a long time),
  94849. hit rate lies in 30--50% interval.
  94850. Inlining fast case gives another minor performance win.
  94851. * bindings/v8/V8Binding.cpp:
  94852. (WebCore::getStringCache):
  94853. (WebCore::v8ExternalStringSlow):
  94854. * bindings/v8/V8Binding.h:
  94855. (WebCore::v8ExternalString):
  94856. 2010-06-16 Antonio Gomes <tonikitoo@webkit.org>
  94857. Reviewed by Kenneth Christiansen.
  94858. Spatial Navigation: using offset{Left,Top} is not enough to get the proper inner frames position
  94859. https://bugs.webkit.org/show_bug.cgi?id=39439
  94860. As pointed out by Darin Adler in https://bugs.webkit.org/show_bug.cgi?id=18662#c20,
  94861. "It's not correct to use the offsetLeft and offsetTop of the frame owner element's renderer because
  94862. that's just the distance from the offsetParent, not the absolute position".
  94863. Patch fixes that behavior by now considering the offsetTop and offsetLeft the offsetParent recursively,
  94864. starting from the HtmlFrameOwnerElement. Previously, only calling offsetTop and offsetLeft works
  94865. because all tests were done in htmls where the {i}frame element was a directly a child of the body,
  94866. e.g. <html>...<body><iframe src=xxx>....<body></html>.
  94867. Test: fast/events/spatial-navigation/snav-iframe-recursive-offset-parent.html
  94868. * page/SpatialNavigation.cpp:
  94869. (WebCore::renderRectRelativeToRootDocument):
  94870. 2010-06-16 Dan Bernstein <mitz@apple.com>
  94871. Try to fix the Tiger build
  94872. * platform/graphics/mac/SimpleFontDataMac.mm:
  94873. (WebCore::SimpleFontData::platformBoundsForGlyph):
  94874. 2010-06-16 Dan Bernstein <mitz@apple.com>
  94875. Try to fix the Tiger build
  94876. * platform/graphics/mac/SimpleFontDataMac.mm:
  94877. (WebCore::SimpleFontData::platformBoundsForGlyph):
  94878. 2010-06-16 Dan Bernstein <mitz@apple.com>
  94879. Reviewed by Alexey Proskuryakov.
  94880. <rdar://problem/8077119> REGRESSION (r60247): Google Reader contains the tops of pieces of unidentifiable text under feed headlines.
  94881. https://bugs.webkit.org/show_bug.cgi?id=40386
  94882. Test: platform/mac/fast/text/x-height.html
  94883. The result of platformBoundsForGlyph() is in flipped coordinates, whereas the result of
  94884. -[NSFont boundingRectForGlyph:] was not. r60247 failed to account for this.
  94885. * platform/graphics/mac/SimpleFontDataMac.mm:
  94886. (WebCore::SimpleFontData::platformInit): Measure the height of the x glyph above the baseline
  94887. correctly.
  94888. (WebCore::SimpleFontData::platformBoundsForGlyph): Return a rect in flipped coordinates on Tiger
  94889. as well.
  94890. 2010-06-16 Adam Barth <abarth@webkit.org>
  94891. Reviewed by Eric Seidel.
  94892. Don't crash when a document ends with an entity
  94893. https://bugs.webkit.org/show_bug.cgi?id=40658
  94894. When we SWITCH_TO a state, we're expecting our caller to have advanced
  94895. the source. Rather than have all the callers check for empty, we do
  94896. that ourselves.
  94897. * html/HTML5Lexer.cpp:
  94898. 2010-06-15 Adam Barth <abarth@webkit.org>
  94899. Reviewed by Eric Seidel.
  94900. Enable HTML5 lexer
  94901. https://bugs.webkit.org/show_bug.cgi?id=40650
  94902. * page/Settings.cpp:
  94903. (WebCore::Settings::Settings):
  94904. 2010-06-15 Mark Rowe <mrowe@apple.com>
  94905. Rubber-stamped by David Harrison.
  94906. sqlite3_prepare16_v2 is not documented as always setting "tail" during error cases.
  94907. Explicitly initialize it to null, just to be safe.
  94908. * platform/sql/SQLiteStatement.cpp:
  94909. (WebCore::SQLiteStatement::prepare):
  94910. 2010-06-15 Mark Rowe <mrowe@apple.com>
  94911. Reviewed by Brady Eidson.
  94912. <rdar://problem/8091103> URLs not added to history when initial load happens via back/forward navigation
  94913. Back/forward navigation currently does not create or update items in the global history. This is usually
  94914. desirable, except for in the event where the back/forward list was created programmatically and attached
  94915. to the WebView and the initial load in that WebView is being performed as a result of a back/forward
  94916. navigation. In that situation it is preferable to ensure that global history item is created or updated.
  94917. No test case is added because DumpRenderTree is not able to test the scenario where the initial
  94918. load in a WebView occurs via a back/forward navigation.
  94919. * loader/FrameLoader.cpp:
  94920. (WebCore::FrameLoader::transitionToCommitted): If we're committing the first load in this frame as a
  94921. back/forward navigation then we should update the history as if it were a standard load, with the
  94922. exception of updating the back/forward list.
  94923. * loader/HistoryController.cpp:
  94924. (WebCore::HistoryController::updateForStandardLoad): Add a parameter to allow callers to skip updating
  94925. the back/forward list.
  94926. * loader/HistoryController.h:
  94927. (WebCore::HistoryController::):
  94928. 2010-06-15 Kinuko Yasuda <kinuko@chromium.org>
  94929. Reviewed by David Levin.
  94930. Fix compilation errors in BlobBuilder with FILE_WRITER enabled
  94931. https://bugs.webkit.org/show_bug.cgi?id=40606
  94932. No functionality change so no new tests.
  94933. * html/BlobBuilder.cpp:
  94934. * html/BlobBuilder.h:
  94935. 2010-06-15 Jian Li <jianli@chromium.org>
  94936. Reviewed by David Levin.
  94937. Move type attribute from File.idl to Blob.idl per latest File API spec.
  94938. https://bugs.webkit.org/show_bug.cgi?id=40642
  94939. * html/Blob.idl:
  94940. * html/File.idl:
  94941. 2010-06-15 Darin Adler <darin@apple.com>
  94942. Reviewed by Adam Barth.
  94943. Move functions out of Frame class that were marked "move to Chrome"
  94944. https://bugs.webkit.org/show_bug.cgi?id=39636
  94945. Refactoring that does not require new tests.
  94946. * loader/FrameLoader.cpp:
  94947. (WebCore::FrameLoader::didOpenURL): Call setStatus and setDefaultStatus
  94948. on DOMWindow rather than going through Frame.
  94949. (WebCore::FrameLoader::open): Ditto.
  94950. (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): Call
  94951. shouldClose on this object instead of going through Frame.
  94952. * page/DOMWindow.cpp:
  94953. (WebCore::DOMWindow::dispatchAllPendingBeforeUnloadEvents): Call
  94954. shouldClose on FrameLoader instead of going through Frame.
  94955. (WebCore::DOMWindow::focus): Moved the code from Frame::focusWindow
  94956. in here.
  94957. (WebCore::DOMWindow::blur): Moved the code from Frame::unfocusWindow
  94958. in here.
  94959. (WebCore::DOMWindow::close): Moved the code from Frame::scheduleClose
  94960. in here.
  94961. (WebCore::DOMWindow::setStatus): Moved the code from
  94962. Frame::setJSStatusBarText in here.
  94963. (WebCore::DOMWindow::setDefaultStatus): Moved the code from
  94964. Frame::setJSDefaultStatusBarText in here.
  94965. * page/DOMWindow.h: Added m_status and m_defaultStatus members to
  94966. store the status messages being set by the DOM.
  94967. * page/Frame.cpp: Removed all the functions that were marked
  94968. "to be moved into Chrome".
  94969. * page/Frame.h: Ditto.
  94970. 2010-06-15 Simon Fraser <simon.fraser@apple.com>
  94971. Fix crashing tests; need to check for null documentElement().
  94972. * rendering/RenderView.cpp:
  94973. (WebCore::RenderView::paintBoxDecorations):
  94974. 2010-06-15 Simon Fraser <simon.fraser@apple.com>
  94975. Reviewed by Dave Hyatt.
  94976. Garbage shown outside HTML if HTML is absolutely positioned
  94977. https://bugs.webkit.org/show_bug.cgi?id=36163
  94978. Add a check that the root renderer (the document element's renderer) covers
  94979. the entire viewport before deciding that we don't need the RenderView
  94980. to paint its background. Fixes lack of painting with positioned, floated, and
  94981. display: table html elements.
  94982. Test: fast/repaint/positioned-document-element.html
  94983. * rendering/RenderView.cpp:
  94984. (WebCore::RenderView::paintBoxDecorations):
  94985. 2010-06-15 Simon Fraser <simon.fraser@apple.com>
  94986. Reviewed by Dan Bernstein.
  94987. Safari 5 does not clear background with transformed html element
  94988. https://bugs.webkit.org/show_bug.cgi?id=40498
  94989. When the document element is composited, ensure that the FrameView
  94990. paints the background, because the composited layer may be transparent,
  94991. or might get moved via animation.
  94992. Test: compositing/repaint/composited-document-element.html
  94993. * rendering/RenderView.cpp:
  94994. (WebCore::isComposited):
  94995. (WebCore::rendererObscuresBackground):
  94996. 2010-06-15 Xan Lopez <xlopez@igalia.com>
  94997. Try to fix GTK+ build.
  94998. * platform/gtk/GtkVersioning.h:
  94999. 2010-06-15 Darin Fisher <darin@chromium.org>
  95000. Reviewed by Brady Eidson.
  95001. Introduce HistoryItem::itemSequenceNumber and use it to identify
  95002. HistoryItems that are clones of one another.
  95003. Changes HistoryController::recursiveGoToItem to use itemSequenceNumber
  95004. equality instead of isTargetItem as the pre-requisite for not calling
  95005. FrameLoader::loadItem.
  95006. Changes FrameLoader::loadItem to require equivalent
  95007. documentSequenceNumber before initiating a same document navigation.
  95008. This alone would appear to fix the bug, but it does not go far enough
  95009. since without the itemSequenceNumber equality check, we'd re-load more
  95010. often than we should.
  95011. Moves documentSequenceNumber assignment into createItemTree as cleanup
  95012. and to ensure that it gets called properly whenever we create a cloned
  95013. HistoryItem. (createItemTree's mission is to create clones up until
  95014. or including the target frame depending on the value of the doClip
  95015. parameter.)
  95016. Removes the now unused HistoryController::urlsMatchItem.
  95017. https://bugs.webkit.org/show_bug.cgi?id=40451
  95018. Test: fast/history/history-back-within-subframe.html
  95019. http/tests/navigation/history-back-across-form-submission-to-fragment.html
  95020. * history/HistoryItem.cpp:
  95021. (WebCore::generateSequenceNumber):
  95022. (WebCore::HistoryItem::HistoryItem):
  95023. * history/HistoryItem.h:
  95024. (WebCore::HistoryItem::setItemSequenceNumber):
  95025. (WebCore::HistoryItem::itemSequenceNumber):
  95026. * loader/FrameLoader.cpp:
  95027. (WebCore::FrameLoader::loadItem):
  95028. * loader/HistoryController.cpp:
  95029. (WebCore::HistoryController::updateBackForwardListForFragmentScroll):
  95030. (WebCore::HistoryController::createItemTree):
  95031. (WebCore::HistoryController::recursiveGoToItem):
  95032. (WebCore::HistoryController::pushState):
  95033. * loader/HistoryController.h:
  95034. 2010-06-15 Xan Lopez <xlopez@igalia.com>
  95035. Reviewed by Gustavo Noronha.
  95036. [GTK] Does not compile with -DGSEAL_ENABLE
  95037. https://bugs.webkit.org/show_bug.cgi?id=37851
  95038. Fix compilation with GSEAL_ENABLE.
  95039. * platform/gtk/GtkVersioning.h:
  95040. * platform/gtk/PlatformScreenGtk.cpp:
  95041. (WebCore::screenDepth):
  95042. (WebCore::screenDepthPerComponent):
  95043. * platform/gtk/PopupMenuGtk.cpp:
  95044. (WebCore::PopupMenu::show):
  95045. * platform/gtk/ScrollbarGtk.cpp:
  95046. (ScrollbarGtk::detachAdjustment):
  95047. (ScrollbarGtk::updateThumbPosition):
  95048. (ScrollbarGtk::updateThumbProportion):
  95049. * plugins/gtk/PluginViewGtk.cpp:
  95050. (WebCore::PluginView::paint):
  95051. (WebCore::PluginView::initXEvent):
  95052. (WebCore::PluginView::platformGetValue):
  95053. (WebCore::PluginView::platformStart):
  95054. * plugins/gtk/gtk2xtbin.c:
  95055. (gtk_xtbin_realize):
  95056. (gtk_xtbin_new):
  95057. (gtk_xtbin_set_position):
  95058. (gtk_xtbin_unrealize):
  95059. 2010-06-15 Xan Lopez <xlopez@igalia.com>
  95060. Unreviewed build fix.
  95061. Fix the build when WebSockets are disabled.
  95062. * bindings/js/JSWorkerContextCustom.cpp:
  95063. 2010-06-15 Simon Fraser <simon.fraser@apple.com>
  95064. Reviewed by Dan Bernstein.
  95065. YouTube thumbnail borders vanish during transition
  95066. https://bugs.webkit.org/show_bug.cgi?id=40551
  95067. Turn off the direct image optimization if the image has a clip style, so that is is
  95068. correctly rendered with the clip.
  95069. Test: compositing/images/clip-on-directly-composited-image.html
  95070. * rendering/RenderLayerBacking.cpp:
  95071. (WebCore::RenderLayerBacking::isDirectlyCompositedImage):
  95072. 2010-06-15 Yury Semikhatsky <yurys@chromium.org>
  95073. Reviewed by Pavel Feldman.
  95074. [v8] Web Inspector: make ui tests pass when ScriptDebugServer is used
  95075. https://bugs.webkit.org/show_bug.cgi?id=40623
  95076. * bindings/v8/JavaScriptCallFrame.cpp:
  95077. (WebCore::JavaScriptCallFrame::functionName): return empty string for anonymous functions instead of [anonymous].
  95078. * bindings/v8/ScriptDebugServer.cpp:
  95079. (WebCore::ScriptDebugServer::handleV8DebugEvent): autocontinue on syntax errors since there is no stack trace and
  95080. not much to inspect.
  95081. 2010-06-15 Adam Roben <aroben@apple.com>
  95082. Make WebCore's and JavaScriptCore's DerivedSources available for debugging in production builds
  95083. Fixes <http://webkit.org/b/40626> <rdar://problem/8094205>.
  95084. Reviewed by Sam Weinig.
  95085. * WebCore.vcproj/WebCore.make: Copy the contents of WebCore's
  95086. DerivedSources directory to AppleInternal/Sources/WebCore.
  95087. 2010-06-15 Zhenyao Mo <zmo@google.com>
  95088. Reviewed by Dimitri Glazkov.
  95089. Bring framebuffer functions to GLES2 conformance
  95090. https://bugs.webkit.org/show_bug.cgi?id=40175
  95091. Test: fast/canvas/webgl/framebuffer-test.html
  95092. * html/canvas/WebGLRenderingContext.cpp:
  95093. (WebCore::WebGLRenderingContext::checkFramebufferStatus): Check input parameters and deal with default framebuffer situation.
  95094. (WebCore::WebGLRenderingContext::framebufferRenderbuffer): Check input parameters.
  95095. (WebCore::WebGLRenderingContext::framebufferTexture2D): Ditto.
  95096. (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter): Ditto.
  95097. (WebCore::WebGLRenderingContext::validateFramebufferFuncParameters): Check input parameters.
  95098. * html/canvas/WebGLRenderingContext.h: Add validateFramebufferFuncParameters.
  95099. 2010-06-15 Patrick Gansterer <paroga@paroga.com>
  95100. Reviewed by David Levin.
  95101. Buildfix for ResourceHandleWin after r24202 and r55542.
  95102. https://bugs.webkit.org/show_bug.cgi?id=32963
  95103. * platform/network/win/ResourceHandleWin.cpp:
  95104. (WebCore::ResourceHandle::onHandleCreated):
  95105. (WebCore::ResourceHandle::onRequestComplete):
  95106. (WebCore::transferJobStatusCallback):
  95107. (WebCore::ResourceHandle::start):
  95108. 2010-06-12 Pavel Feldman <pfeldman@chromium.org>
  95109. Reviewed by Joe Pecoraro.
  95110. Web Inspector: Should not expose window.console._inspectorCommandLineAPI to the web.
  95111. https://bugs.webkit.org/show_bug.cgi?id=40500
  95112. * inspector/front-end/InjectedScript.js:
  95113. (injectedScriptConstructor):
  95114. (injectedScriptConstructor.):
  95115. 2010-06-15 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
  95116. Reviewed by Simon Hausmann.
  95117. [Qt] The qt_webkit_version.pri file gets overwritten on install
  95118. https://bugs.webkit.org/show_bug.cgi?id=40487
  95119. Don't install qt_webkit_version.pri when building WebKit inside of Qt.
  95120. The import of WebKit into Qt will take care of providing the file
  95121. in mkspecs/modules and it'll be installed through projects.pro.
  95122. * WebCore.pro:
  95123. 2010-06-15 Tony Chang <tony@chromium.org>
  95124. Reviewed by Ojan Vafai.
  95125. resolve urls in text/html clipboard data
  95126. https://bugs.webkit.org/show_bug.cgi?id=40044
  95127. Allow text/html data copied from a page to contain full URLs when
  95128. dragging or copy/pasting.
  95129. Tests: editing/pasteboard/copy-resolves-urls.html
  95130. http/tests/misc/copy-resolves-urls.html
  95131. * WebCore.base.exp:
  95132. * editing/markup.cpp:
  95133. (WebCore::appendStartMarkup):
  95134. (WebCore::getStartMarkup):
  95135. (WebCore::MarkupAccumulator::appendMarkup):
  95136. (WebCore::createMarkup):
  95137. * editing/markup.h:
  95138. (WebCore::):
  95139. * platform/chromium/ClipboardChromium.cpp:
  95140. (WebCore::ClipboardChromium::writeRange):
  95141. * platform/chromium/PasteboardChromium.cpp:
  95142. (WebCore::Pasteboard::writeSelection):
  95143. * platform/gtk/ClipboardGtk.cpp:
  95144. (WebCore::ClipboardGtk::writeRange):
  95145. * platform/gtk/DataObjectGtk.cpp:
  95146. (WebCore::DataObjectGtk::markup):
  95147. * platform/gtk/PasteboardGtk.cpp:
  95148. (WebCore::Pasteboard::writeSelection):
  95149. * platform/haiku/PasteboardHaiku.cpp:
  95150. (WebCore::Pasteboard::writeSelection):
  95151. * platform/qt/ClipboardQt.cpp:
  95152. (WebCore::ClipboardQt::writeRange):
  95153. * platform/qt/PasteboardQt.cpp:
  95154. (WebCore::Pasteboard::writeSelection):
  95155. 2010-06-14 Chris Fleizach <cfleizach@apple.com>
  95156. No review. GTK build fix.
  95157. AX: need ListItemRole and PresentationalRole
  95158. https://bugs.webkit.org/show_bug.cgi?id=40133
  95159. Mostly speculative fix to make GTK unit tests work.
  95160. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
  95161. (atkRole):
  95162. (webkit_accessible_get_role):
  95163. 2010-06-14 Eric Carlson <eric.carlson@apple.com>
  95164. Reviewed by Dan Bernstein.
  95165. <rdar://problem/8090895> Update http streaming MIME types
  95166. * platform/MIMETypeRegistry.cpp:
  95167. (WebCore::TypeExtensionPair::): Add http streaming MIME synonyms.
  95168. 2010-06-14 Eric Carlson <eric.carlson@apple.com>
  95169. Reviewed by Oliver Hunt.
  95170. audio/x-mp3 MIME type not recognized
  95171. <rdar://problem/7875393>
  95172. https://bugs.webkit.org/show_bug.cgi?id=40594
  95173. Allow MIMETypeRegistry to have more than one MIME type for a
  95174. media file extension, and have the QTKit media engine register
  95175. all MIME types it can find for each file type QTKit supports.
  95176. Test: media/media-can-play-mp3.html
  95177. * platform/MIMETypeRegistry.cpp:
  95178. (WebCore::mediaMIMETypeMap): Update for new HashMap format.
  95179. (WebCore::TypeExtensionPair::): Store String+Vector<String>
  95180. (WebCore::MIMETypeRegistry::getMediaMIMETypeForExtension): Only consult
  95181. mediaMIMETypeMap(), it has the canonical answer.
  95182. (WebCore::MIMETypeRegistry::getMediaMIMETypesForExtension): New, return
  95183. a Vector of all MIME types for an extension.
  95184. * platform/MIMETypeRegistry.h:
  95185. * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
  95186. (WebCore::addFileTypesToCache): Add all MIME types returned in the
  95187. getMediaMIMETypesForExtension Vector.
  95188. 2010-06-14 Mark Rowe <mrowe@apple.com>
  95189. Reviewed by Brady Eidson.
  95190. <rdar://problem/8071866> REGRESSION: Crash on launch on Tiger and Leopard with network home folder
  95191. * platform/sql/SQLiteStatement.cpp:
  95192. (WebCore::SQLiteStatement::prepare): Don't assume that tail is always non-null, since that may
  95193. not be the case with some versions of SQLite. Instead we must null-check before dereferencing.
  95194. 2010-06-14 Anders Carlsson <andersca@apple.com>
  95195. Fix Tiger build.
  95196. * plugins/mac/PluginDataMac.mm:
  95197. 2010-06-14 Anders Carlsson <andersca@apple.com>
  95198. Reviewed by Darin Adler.
  95199. Use an array for extensions in MimeClassInfo
  95200. https://bugs.webkit.org/show_bug.cgi?id=40602
  95201. Get rid of MimeClassInfo::suffixes and replace it with an array of extensions.
  95202. * plugins/MimeType.cpp:
  95203. (WebCore::MimeType::suffixes):
  95204. Create a string of joined extensions.
  95205. * plugins/MimeType.h:
  95206. * plugins/PluginData.h:
  95207. (WebCore::operator==):
  95208. * plugins/chromium/PluginDataChromium.cpp:
  95209. (WebCore::getPluginMimeTypeFromExtension):
  95210. * plugins/gtk/PluginDataGtk.cpp:
  95211. (WebCore::PluginData::initPlugins):
  95212. * plugins/mac/PluginDataMac.mm:
  95213. (WebCore::PluginData::initPlugins):
  95214. * plugins/qt/PluginDataQt.cpp:
  95215. (WebCore::PluginData::initPlugins):
  95216. * plugins/win/PluginDataWin.cpp:
  95217. (WebCore::PluginData::initPlugins):
  95218. * plugins/wx/PluginDataWx.cpp:
  95219. (WebCore::PluginData::initPlugins):
  95220. 2010-06-14 Adam Barth <abarth@webkit.org>
  95221. Unreviewed.
  95222. Add an include to try to fix Chromium build.
  95223. * html/HTML5DocumentParser.cpp:
  95224. 2010-06-14 Eric Seidel <eric@webkit.org>
  95225. Reviewed by Adam Barth.
  95226. Safari beach-balls loading large pages with HTML5 parser
  95227. https://bugs.webkit.org/show_bug.cgi?id=40596
  95228. Implement parser yielding, similar to how the old
  95229. HTMLDocumentParser yields.
  95230. This implementation re-uses the tokenizerTimeDelay and
  95231. tokenizerChunkSize settings even though they don't map exactly
  95232. to the token loop that the HTML5 parser uses.
  95233. * dom/DocumentParser.h:
  95234. - Add a FIXME for processingData() and clarify how the
  95235. appendData flag is used by renaming it to isFromNetwork.
  95236. * html/HTML5DocumentParser.cpp:
  95237. (WebCore::parserTimeLimit):
  95238. - Defaults accessor, probably belongs on Page.
  95239. (WebCore::parserChunkSize):
  95240. - Defaults accessor, probably belongs on Page.
  95241. (WebCore::HTML5DocumentParser::HTML5DocumentParser):
  95242. (WebCore::HTML5DocumentParser::stopParsing):
  95243. - Stop the continue-parsing timer if active.
  95244. (WebCore::HTML5DocumentParser::processingData):
  95245. - Implement this poorly understood accessor to match
  95246. the old parser's behavior. It's unclear what this does
  95247. and it does not affect any layout tests to my knowledge
  95248. but likely affects the WebKit API in some way.
  95249. (WebCore::HTML5DocumentParser::pumpLexerIfPossible):
  95250. - Pass SynchronousMode.
  95251. - Do not ever pump if we've yielded to the timer.
  95252. (WebCore::HTML5DocumentParser::PumpSession::PumpSession):
  95253. - A struct for storing the yield counters.
  95254. (WebCore::HTML5DocumentParser::shouldContinueParsing):
  95255. - Mostly matches HTMLDocumentParser::shouldContinueParsing.
  95256. (WebCore::HTML5DocumentParser::pumpLexer):
  95257. - Respect SynchronousMode.
  95258. - ASSERT that a timer is not scheduled if we're pumping.
  95259. (WebCore::isLayoutTimerActive):
  95260. - This belongs on Document.
  95261. (WebCore::HTML5DocumentParser::continueNextChunkTimerFired):
  95262. (WebCore::HTML5DocumentParser::write):
  95263. (WebCore::HTML5DocumentParser::end):
  95264. - We should never end() if a timer is still outstanding.
  95265. (WebCore::HTML5DocumentParser::attemptToEnd):
  95266. (WebCore::HTML5DocumentParser::endIfDelayed):
  95267. (WebCore::HTML5DocumentParser::resumeParsingAfterScriptExecution):
  95268. * html/HTML5DocumentParser.h:
  95269. (WebCore::HTML5DocumentParser::):
  95270. * html/HTMLDocumentParser.cpp:
  95271. - Clarify the old TimeDelay and ChunkSize constants.
  95272. 2010-06-14 Adam Barth <abarth@webkit.org>
  95273. Reviewed by Eric Seidel.
  95274. Add a preload scanner for the HTML5 parser
  95275. https://bugs.webkit.org/show_bug.cgi?id=40557
  95276. This patch adds a simple preload scanner for the HTML5 parser. This
  95277. preload scanner is not as awesome as the old one because it doesn't
  95278. scan CSS, but it's much simpler.
  95279. * Android.mk:
  95280. * CMakeLists.txt:
  95281. * GNUmakefile.am:
  95282. * WebCore.gypi:
  95283. * WebCore.pro:
  95284. * WebCore.vcproj/WebCore.vcproj:
  95285. * WebCore.xcodeproj/project.pbxproj:
  95286. - Build file torture.
  95287. * html/HTML5DocumentParser.cpp:
  95288. (WebCore::HTML5DocumentParser::write):
  95289. - Call into the preload scanner when waiting for a script.
  95290. * html/HTML5DocumentParser.h:
  95291. * html/HTML5PreloadScanner.cpp: Copied from WebCore/html/PreloadScanner.cpp.
  95292. (WebCore::HTML5PreloadScanner::HTML5PreloadScanner):
  95293. (WebCore::HTML5PreloadScanner::scan):
  95294. - A simple loop to pump the preload scanner's lexer.
  95295. (WebCore::HTML5PreloadScanner::processToken):
  95296. - Preload interesting resources. Stolen from the old preload
  95297. scanner.
  95298. (WebCore::HTML5PreloadScanner::scanningBody):
  95299. * html/HTML5PreloadScanner.h: Copied from WebCore/html/PreloadScanner.h.
  95300. 2010-06-14 Adam Barth <abarth@webkit.org>
  95301. Reviewed by Eric Seidel.
  95302. Constify some HTML5Token methods
  95303. https://bugs.webkit.org/show_bug.cgi?id=40592
  95304. I keep wanting these methods to be const. Eric wanted this in a
  95305. separate patch.
  95306. * html/HTML5Lexer.h:
  95307. (WebCore::HTML5Lexer::state):
  95308. * html/HTML5Token.h:
  95309. (WebCore::HTML5Token::attributes):
  95310. (WebCore::HTML5Token::name):
  95311. (WebCore::HTML5Token::characters):
  95312. (WebCore::HTML5Token::comment):
  95313. (WebCore::HTML5Token::publicIdentifier):
  95314. (WebCore::HTML5Token::systemIdentifier):
  95315. * html/HTML5TreeBuilder.cpp:
  95316. (WebCore::convertToOldStyle):
  95317. (WebCore::HTML5TreeBuilder::adjustedLexerState):
  95318. - Technically, this might belong in the other patch, but I think
  95319. it's fine here.
  95320. (WebCore::HTML5TreeBuilder::passTokenToLegacyParser):
  95321. * html/HTML5TreeBuilder.h:
  95322. 2010-06-14 Dumitru Daniliuc <dumi@chromium.org>
  95323. Unreviewed, build fix.
  95324. * WebCore.xcodeproj/project.pbxproj:
  95325. 2010-06-14 Dimitri Glazkov <dglazkov@chromium.org>
  95326. Unreviewed, build fix.
  95327. Remove accidental specifying of the class name twice.
  95328. * html/HTMLFormElement.cpp:
  95329. (WebCore::HTMLFormElement::prepareFormData): Removed my ghastly typo.
  95330. 2010-06-14 Dumitru Daniliuc <dumi@chromium.org>
  95331. Reviewed by Adam Barth.
  95332. Get DatabaseTracker ready for sync DBs.
  95333. https://bugs.webkit.org/show_bug.cgi?id=39041
  95334. * storage/AbstractDatabase.cpp:
  95335. (WebCore::AbstractDatabase::~AbstractDatabase):
  95336. * storage/AbstractDatabase.h:
  95337. * storage/Database.cpp:
  95338. (WebCore::Database::closeImmediately):
  95339. * storage/Database.h:
  95340. (WebCore::Database::scriptExecutionContext):
  95341. * storage/DatabaseTracker.cpp:
  95342. (WebCore::DatabaseTracker::getMaxSizeForDatabase):
  95343. (WebCore::DatabaseTracker::databaseChanged):
  95344. (WebCore::DatabaseTracker::addOpenDatabase):
  95345. (WebCore::DatabaseTracker::removeOpenDatabase):
  95346. (WebCore::DatabaseTracker::getOpenDatabases):
  95347. (WebCore::DatabaseTracker::deleteDatabaseFile):
  95348. * storage/DatabaseTracker.h:
  95349. * storage/OriginQuotaManager.cpp:
  95350. (WebCore::OriginQuotaManager::markDatabase):
  95351. * storage/OriginQuotaManager.h:
  95352. * storage/chromium/DatabaseObserver.h:
  95353. * storage/chromium/DatabaseTrackerChromium.cpp:
  95354. (WebCore::DatabaseTracker::addOpenDatabase):
  95355. (WebCore::TrackerRemoveOpenDatabaseTask::create):
  95356. (WebCore::TrackerRemoveOpenDatabaseTask::TrackerRemoveOpenDatabaseTask):
  95357. (WebCore::DatabaseTracker::removeOpenDatabase):
  95358. (WebCore::DatabaseTracker::getOpenDatabases):
  95359. (WebCore::DatabaseTracker::getMaxSizeForDatabase):
  95360. 2010-06-14 Alexey Proskuryakov <ap@apple.com>
  95361. Reviewed by Darin Adler.
  95362. https://bugs.webkit.org/show_bug.cgi?id=40529
  95363. eventSender.keyDown("delete") incorrectly sends a backspace on some platforms
  95364. * platform/mac/KeyEventMac.mm: (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
  95365. Use virtual key code to force correct character code for clarity. Also, reworded comment,
  95366. since saying that "backspace needs to always be 8" misleadingly implied that it could
  95367. "sometimes" be such without this code.
  95368. 2010-06-14 Dimitri Glazkov <dglazkov@chromium.org>
  95369. Reviewed by Darin Adler.
  95370. Refactor form submission code in HTMLFormElement to add clarity.
  95371. https://bugs.webkit.org/show_bug.cgi?id=39430
  95372. Covered by existing tests in fast/forms/mailto.
  95373. * html/HTMLFormElement.cpp:
  95374. (WebCore::appendMailtoPostFormDataToURL): Renamed from transferMailtoPostFormDataToUrl,
  95375. removed clearing out of the FormData and moved it to a new place (next to the call site).
  95376. (WebCore::HTMLFormElement::prepareFormData): Renamed from createFormData, moved the logic of
  95377. prepareing FormData here, including the use of appendMailtoPostFormDataToURL.
  95378. (WebCore::HTMLFormElement::submit): Consolidated multiple invocations of submitForm().
  95379. * html/HTMLFormElement.h: Renamed createFormData to prepareFormData.
  95380. 2010-06-14 Chris Fleizach <cfleizach@apple.com>
  95381. Reviewed by Darin Adler.
  95382. AX: need ListItemRole and PresentationalRole
  95383. https://bugs.webkit.org/show_bug.cgi?id=40133
  95384. * accessibility/AccessibilityObject.cpp:
  95385. (WebCore::createARIARoleMap):
  95386. * accessibility/AccessibilityObject.h:
  95387. (WebCore::AccessibilityObject::isListItem):
  95388. * accessibility/AccessibilityRenderObject.cpp:
  95389. (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
  95390. (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
  95391. * accessibility/mac/AccessibilityObjectWrapper.mm:
  95392. (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
  95393. 2010-06-14 Anders Carlsson <andersca@apple.com>
  95394. Reviewed by Sam Weinig.
  95395. Remove pluginIndex from MimeClassInfo
  95396. https://bugs.webkit.org/show_bug.cgi?id=40588
  95397. * plugins/PluginData.h:
  95398. * plugins/gtk/PluginDataGtk.cpp:
  95399. (WebCore::PluginData::initPlugins):
  95400. * plugins/mac/PluginDataMac.mm:
  95401. (WebCore::PluginData::initPlugins):
  95402. * plugins/qt/PluginDataQt.cpp:
  95403. (WebCore::PluginData::initPlugins):
  95404. * plugins/win/PluginDataWin.cpp:
  95405. (WebCore::PluginData::initPlugins):
  95406. * plugins/wx/PluginDataWx.cpp:
  95407. (WebCore::PluginData::initPlugins):
  95408. 2010-06-14 Kinuko Yasuda <kinuko@chromium.org>
  95409. Reviewed by Jian Li.
  95410. Implement BlobBuilder internal class for BlobBuilder support as defined in FileWriter
  95411. https://bugs.webkit.org/show_bug.cgi?id=36903
  95412. No new tests; they will be added when we add jsc bindings.
  95413. * CMakeLists.txt:
  95414. * GNUmakefile.am:
  95415. * WebCore.gypi:
  95416. * WebCore.pro:
  95417. * WebCore.vcproj/WebCore.vcproj:
  95418. * WebCore.xcodeproj/project.pbxproj:
  95419. * html/BlobBuilder.cpp: Added.
  95420. * html/BlobBuilder.h: Added.
  95421. (WebCore::BlobBuilder::create):
  95422. * platform/BlobItem.cpp:
  95423. (WebCore::StringBlobItem::convertToCString): Added EndingNative support.
  95424. * platform/BlobItem.h: Added EndingNative line-ending type.
  95425. (WebCore::):
  95426. 2010-06-14 Anders Carlsson <andersca@apple.com>
  95427. Reviewed by Darin Adler.
  95428. Stop using MimeClassInfo::pluginIndex
  95429. https://bugs.webkit.org/show_bug.cgi?id=40582
  95430. Add a pluginIndicies vector to PluginData and use it instead of MimeClassInfo::pluginIndex.
  95431. * plugins/MimeType.cpp:
  95432. (WebCore::MimeType::enabledPlugin):
  95433. Get the plug-in index from the mimePluginIndices vector.
  95434. * plugins/Plugin.cpp:
  95435. (WebCore::Plugin::item):
  95436. Compare the mime plugin index as well.
  95437. * plugins/PluginData.cpp:
  95438. (WebCore::PluginData::PluginData):
  95439. Populate the m_mimePluginIndices vector.
  95440. (WebCore::PluginData::pluginNameForMimeType):
  95441. Get the plug-in index from the m_mimePluginIndices vector.
  95442. * plugins/PluginData.h:
  95443. (WebCore::operator==):
  95444. Don't check for pluginIndex.
  95445. (WebCore::PluginData::mimePluginIndices):
  95446. Add getter for m_mimePluginIndices.
  95447. 2010-06-14 Sam Weinig <sam@webkit.org>
  95448. Better build fix.
  95449. * bindings/js/JSBindingsAllInOne.cpp:
  95450. 2010-06-14 Sam Weinig <sam@webkit.org>
  95451. Another windows build fix.
  95452. * bindings/js/JSBindingsAllInOne.cpp:
  95453. 2010-06-14 Sam Weinig <sam@webkit.org>
  95454. Another build fix.
  95455. * bindings/js/JSDOMWindowCustom.cpp:
  95456. 2010-06-14 Sam Weinig <sam@webkit.org>
  95457. Add missing comma to fix GTK build.
  95458. * xml/XSLTProcessor.idl:
  95459. 2010-06-14 Sam Weinig <sam@webkit.org>
  95460. Reviewed by Alexey Proskuryakov.
  95461. Fix for https://bugs.webkit.org/show_bug.cgi?id=40581
  95462. Auto-generate most of the JS constructors
  95463. - Auto-generates all the JS constructors that don't have custom
  95464. names (eg, Not Image(), Audio() or Option())
  95465. - Fixes two typos.
  95466. (new XSLTConstructor()).toString() [object XSLTProcessorConsructor] -> [object XSLTProcessorConstructor])
  95467. (new EventSource()).toString() [object EventSourceContructor] -> [object EventSourceConstructor])
  95468. * Android.jscbindings.mk:
  95469. * CMakeLists.txt:
  95470. * GNUmakefile.am:
  95471. * WebCore.gypi:
  95472. * WebCore.pro:
  95473. * WebCore.vcproj/WebCore.vcproj:
  95474. * WebCore.xcodeproj/project.pbxproj:
  95475. * bindings/js/JSArrayBufferConstructor.cpp: Removed.
  95476. * bindings/js/JSArrayBufferConstructor.h: Removed.
  95477. * bindings/js/JSArrayBufferCustom.cpp: Copied from WebCore/bindings/js/JSArrayBufferConstructor.cpp.
  95478. (WebCore::JSArrayBufferConstructor::constructJSArrayBuffer):
  95479. * bindings/js/JSArrayBufferViewHelper.h:
  95480. (WebCore::constructArrayBufferView):
  95481. * bindings/js/JSBindingsAllInOne.cpp:
  95482. * bindings/js/JSDOMWindowCustom.cpp:
  95483. * bindings/js/JSEventSourceConstructor.cpp: Removed.
  95484. * bindings/js/JSEventSourceConstructor.h: Removed.
  95485. * bindings/js/JSEventSourceCustom.cpp: Copied from WebCore/bindings/js/JSEventSourceConstructor.cpp.
  95486. (WebCore::JSEventSourceConstructor::constructJSEventSource):
  95487. * bindings/js/JSFloat32ArrayConstructor.cpp: Removed.
  95488. * bindings/js/JSFloat32ArrayConstructor.h: Removed.
  95489. * bindings/js/JSFloat32ArrayCustom.cpp:
  95490. (WebCore::JSFloat32ArrayConstructor::constructJSFloat32Array):
  95491. * bindings/js/JSInt16ArrayConstructor.cpp: Removed.
  95492. * bindings/js/JSInt16ArrayConstructor.h: Removed.
  95493. * bindings/js/JSInt16ArrayCustom.cpp:
  95494. (WebCore::JSInt16ArrayConstructor::constructJSInt16Array):
  95495. * bindings/js/JSInt32ArrayConstructor.cpp: Removed.
  95496. * bindings/js/JSInt32ArrayConstructor.h: Removed.
  95497. * bindings/js/JSInt32ArrayCustom.cpp:
  95498. (WebCore::JSInt32ArrayConstructor::constructJSInt32Array):
  95499. * bindings/js/JSInt8ArrayConstructor.cpp: Removed.
  95500. * bindings/js/JSInt8ArrayConstructor.h: Removed.
  95501. * bindings/js/JSInt8ArrayCustom.cpp:
  95502. (WebCore::JSInt8ArrayConstructor::constructJSInt8Array):
  95503. * bindings/js/JSMessageChannelConstructor.cpp: Removed.
  95504. * bindings/js/JSMessageChannelConstructor.h: Removed.
  95505. * bindings/js/JSMessageChannelCustom.cpp:
  95506. (WebCore::JSMessageChannelConstructor::constructJSMessageChannel):
  95507. * bindings/js/JSSharedWorkerConstructor.cpp: Removed.
  95508. * bindings/js/JSSharedWorkerConstructor.h: Removed.
  95509. * bindings/js/JSSharedWorkerCustom.cpp:
  95510. (WebCore::JSSharedWorkerConstructor::constructJSSharedWorker):
  95511. * bindings/js/JSUint16ArrayConstructor.cpp: Removed.
  95512. * bindings/js/JSUint16ArrayConstructor.h: Removed.
  95513. * bindings/js/JSUint16ArrayCustom.cpp:
  95514. (WebCore::JSUint16ArrayConstructor::constructJSUint16Array):
  95515. * bindings/js/JSUint32ArrayConstructor.cpp: Removed.
  95516. * bindings/js/JSUint32ArrayConstructor.h: Removed.
  95517. * bindings/js/JSUint32ArrayCustom.cpp:
  95518. (WebCore::JSUint32ArrayConstructor::constructJSUint32Array):
  95519. * bindings/js/JSUint8ArrayConstructor.cpp: Removed.
  95520. * bindings/js/JSUint8ArrayConstructor.h: Removed.
  95521. * bindings/js/JSUint8ArrayCustom.cpp:
  95522. (WebCore::JSUint8ArrayConstructor::constructJSUint8Array):
  95523. * bindings/js/JSWebKitCSSMatrixConstructor.cpp: Removed.
  95524. * bindings/js/JSWebKitCSSMatrixConstructor.h: Removed.
  95525. * bindings/js/JSWebKitCSSMatrixCustom.cpp: Copied from WebCore/bindings/js/JSWebKitCSSMatrixConstructor.cpp.
  95526. (WebCore::JSWebKitCSSMatrixConstructor::constructJSWebKitCSSMatrix):
  95527. * bindings/js/JSWebKitPointConstructor.cpp: Removed.
  95528. * bindings/js/JSWebKitPointConstructor.h: Removed.
  95529. * bindings/js/JSWebKitPointCustom.cpp: Copied from WebCore/bindings/js/JSWebKitPointConstructor.cpp.
  95530. (WebCore::JSWebKitPointConstructor::constructJSWebKitPoint):
  95531. * bindings/js/JSWebSocketConstructor.cpp: Removed.
  95532. * bindings/js/JSWebSocketConstructor.h: Removed.
  95533. * bindings/js/JSWebSocketCustom.cpp:
  95534. (WebCore::JSWebSocketConstructor::constructJSWebSocket):
  95535. * bindings/js/JSWorkerConstructor.cpp: Removed.
  95536. * bindings/js/JSWorkerConstructor.h: Removed.
  95537. * bindings/js/JSWorkerContextCustom.cpp:
  95538. * bindings/js/JSWorkerCustom.cpp:
  95539. (WebCore::JSWorkerConstructor::constructJSWorker):
  95540. * bindings/js/JSXSLTProcessorConstructor.cpp: Removed.
  95541. * bindings/js/JSXSLTProcessorConstructor.h: Removed.
  95542. * bindings/js/JSXSLTProcessorCustom.cpp:
  95543. (WebCore::JSXSLTProcessorConstructor::constructJSXSLTProcessor):
  95544. * bindings/scripts/CodeGeneratorJS.pm:
  95545. * css/WebKitCSSMatrix.idl:
  95546. * dom/MessageChannel.idl:
  95547. * html/canvas/ArrayBuffer.idl:
  95548. * html/canvas/Float32Array.idl:
  95549. * html/canvas/Int16Array.idl:
  95550. * html/canvas/Int32Array.idl:
  95551. * html/canvas/Int8Array.idl:
  95552. * html/canvas/Uint16Array.idl:
  95553. * html/canvas/Uint32Array.idl:
  95554. * html/canvas/Uint8Array.idl:
  95555. * page/EventSource.idl:
  95556. * page/WebKitPoint.idl:
  95557. * websockets/WebSocket.idl:
  95558. * workers/SharedWorker.idl:
  95559. * workers/Worker.idl:
  95560. * xml/XSLTProcessor.idl:
  95561. 2010-05-16 Antonio Gomes <tonikitoo@webkit.org>
  95562. Unreviewed naming fixes of local variables used in Spatial Navigation methods.
  95563. Summary:
  95564. * "candidate" renamed to "node";
  95565. * "currentFocusCandidate" renamed to "candidate"
  95566. * "closestFocusCandidate" renamed to "closest"
  95567. That way naming is more consistent in the various Spatial Navigation methods.
  95568. * page/FocusController.cpp:
  95569. (WebCore::FocusController::findFocusableNodeInDirection):
  95570. (WebCore::FocusController::deepFindFocusableNodeInDirection):
  95571. 2010-06-14 Antonio Gomes <tonikitoo@webkit.org>
  95572. Reviewed by Simon Fraser and Kenneth Christiansen.
  95573. Spatial Navigation: make it work with focusable elements in overflow content
  95574. https://bugs.webkit.org/show_bug.cgi?id=36463
  95575. This patch addresses the problem with Spatial Navigation. It currently does not
  95576. properly traverse scrollable contents, including scrollable div's. For this to work,
  95577. a new class member called scrollableEnclosingBox was introduced to FocusCandidate class which
  95578. keeps track of the current scrollable box Node wrapping a FocusCandidate.
  95579. To make use of enclosingScrollableBox of FocusCandidate, the DOM traversal routine
  95580. (FocusController::findNextFocusableInDirection) was changed as follows: when it
  95581. encounters a scrollable Node, each focusable node which is 'inner' keeps track of
  95582. the container reference. By the time a sibling of the scrollable Node is encountered,
  95583. there is no need to track this reference any more and the traversal algorithm continues
  95584. normally.
  95585. The common case is obviously that there is no scrollable container wrapping it.
  95586. updateFocusCandiditeIfCloser logic was also adapted to fit the need of the
  95587. newly introduced enclosingScrollableBox class member, getting simpler and more
  95588. easily maintainable.
  95589. Tests: fast/events/spatial-navigation/snav-div-scrollable-but-without-focusable-content.html
  95590. fast/events/spatial-navigation/snav-clipped-overflow-content.html
  95591. * page/FocusController.cpp:
  95592. (WebCore::updateFocusCandidateInSameContainer):
  95593. (WebCore::updateFocusCandidateIfCloser):
  95594. (WebCore::FocusController::findFocusableNodeInDirection):
  95595. (WebCore::FocusController::deepFindFocusableNodeInDirection):
  95596. * page/SpatialNavigation.cpp:
  95597. (WebCore::isScrollableContainerNode):
  95598. * page/SpatialNavigation.h:
  95599. (WebCore::FocusCandidate::FocusCandidate):
  95600. (WebCore::FocusCandidate::isInScrollableContainer):
  95601. 2010-06-14 Jian Li <jianli@chromium.org>
  95602. Unreviewed. Fix build break in GTK.
  95603. * bindings/scripts/CodeGeneratorGObject.pm:
  95604. * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
  95605. * bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h:
  95606. * bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
  95607. * bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h:
  95608. * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  95609. 2010-06-14 Chris Fleizach <cfleizach@apple.com>
  95610. Reviewed by Beth Dakin.
  95611. AX: AXUnknown objects are being returned
  95612. https://bugs.webkit.org/show_bug.cgi?id=40574
  95613. Test: platform/mac/accessibility/no-unknown-objects-when-title-attribute-present.html
  95614. * accessibility/mac/AccessibilityObjectMac.mm:
  95615. (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
  95616. 2010-06-14 Jian Li <jianli@chromium.org>
  95617. Reviewed by Darin Adler.
  95618. Fix code generators to better support Conditional attribute and add test
  95619. coverage for it.
  95620. https://bugs.webkit.org/show_bug.cgi?id=39512
  95621. * bindings/scripts/CodeGeneratorGObject.pm:
  95622. * bindings/scripts/CodeGeneratorObjC.pm:
  95623. * bindings/scripts/CodeGeneratorV8.pm:
  95624. * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
  95625. * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
  95626. * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
  95627. * bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
  95628. * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  95629. (webkit_dom_test_obj_get_conditional_attr1):
  95630. (webkit_dom_test_obj_set_conditional_attr1):
  95631. (webkit_dom_test_obj_get_conditional_attr2):
  95632. (webkit_dom_test_obj_set_conditional_attr2):
  95633. (webkit_dom_test_obj_get_conditional_attr3):
  95634. (webkit_dom_test_obj_set_conditional_attr3):
  95635. (webkit_dom_test_obj_set_property):
  95636. (webkit_dom_test_obj_get_property):
  95637. (webkit_dom_test_obj_class_init):
  95638. * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  95639. * bindings/scripts/test/JS/JSTestInterface.cpp:
  95640. * bindings/scripts/test/JS/JSTestInterface.h:
  95641. * bindings/scripts/test/JS/JSTestObj.cpp:
  95642. (WebCore::):
  95643. (WebCore::jsTestObjConditionalAttr1):
  95644. (WebCore::jsTestObjConditionalAttr2):
  95645. (WebCore::jsTestObjConditionalAttr3):
  95646. (WebCore::setJSTestObjConditionalAttr1):
  95647. (WebCore::setJSTestObjConditionalAttr2):
  95648. (WebCore::setJSTestObjConditionalAttr3):
  95649. * bindings/scripts/test/JS/JSTestObj.h:
  95650. * bindings/scripts/test/ObjC/DOMTestInterface.mm:
  95651. * bindings/scripts/test/ObjC/DOMTestObj.h:
  95652. * bindings/scripts/test/ObjC/DOMTestObj.mm:
  95653. (-[DOMTestObj conditionalAttr1]):
  95654. (-[DOMTestObj setConditionalAttr1:]):
  95655. (-[DOMTestObj conditionalAttr2]):
  95656. (-[DOMTestObj setConditionalAttr2:]):
  95657. (-[DOMTestObj conditionalAttr3]):
  95658. (-[DOMTestObj setConditionalAttr3:]):
  95659. * bindings/scripts/test/TestInterface.idl:
  95660. * bindings/scripts/test/TestObj.idl:
  95661. * bindings/scripts/test/V8/V8TestInterface.cpp:
  95662. * bindings/scripts/test/V8/V8TestInterface.h:
  95663. * bindings/scripts/test/V8/V8TestObj.cpp:
  95664. (WebCore::TestObjInternal::conditionalAttr1AttrGetter):
  95665. (WebCore::TestObjInternal::conditionalAttr1AttrSetter):
  95666. (WebCore::TestObjInternal::conditionalAttr2AttrGetter):
  95667. (WebCore::TestObjInternal::conditionalAttr2AttrSetter):
  95668. (WebCore::TestObjInternal::conditionalAttr3AttrGetter):
  95669. (WebCore::TestObjInternal::conditionalAttr3AttrSetter):
  95670. (WebCore::):
  95671. 2010-06-14 Chang Shu <chang.shu@nokia.com>
  95672. Reviewed by Kenneth Rohde Christiansen.
  95673. Change the type of ShadowSize from IntSize to FloatSize in GraphicsContext.
  95674. Using IntSize loses precision and fails the test.
  95675. Note: This code change fixes Qt port but Mac is still failing due to
  95676. platform issue.
  95677. https://bugs.webkit.org/show_bug.cgi?id=40434
  95678. * html/canvas/CanvasRenderingContext2D.cpp:
  95679. (WebCore::CanvasRenderingContext2D::applyShadow):
  95680. * platform/graphics/GraphicsContext.cpp:
  95681. (WebCore::GraphicsContext::setShadow):
  95682. (WebCore::GraphicsContext::getShadow):
  95683. * platform/graphics/GraphicsContext.h:
  95684. * platform/graphics/GraphicsContextPrivate.h:
  95685. * platform/graphics/cairo/FontCairo.cpp:
  95686. (WebCore::Font::drawGlyphs):
  95687. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  95688. (WebCore::GraphicsContext::calculateShadowBufferDimensions):
  95689. (WebCore::drawPathShadow):
  95690. (WebCore::drawBorderlessRectShadow):
  95691. (WebCore::GraphicsContext::setPlatformShadow):
  95692. * platform/graphics/cairo/ImageCairo.cpp:
  95693. (WebCore::BitmapImage::draw):
  95694. * platform/graphics/cg/GraphicsContextCG.cpp:
  95695. (WebCore::GraphicsContext::setPlatformShadow):
  95696. * platform/graphics/chromium/FontChromiumWin.cpp:
  95697. (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
  95698. (WebCore::Font::drawComplexText):
  95699. * platform/graphics/gtk/FontGtk.cpp:
  95700. (WebCore::Font::drawComplexText):
  95701. * platform/graphics/haiku/GraphicsContextHaiku.cpp:
  95702. (WebCore::GraphicsContext::setPlatformShadow):
  95703. * platform/graphics/mac/FontMac.mm:
  95704. (WebCore::Font::drawGlyphs):
  95705. * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
  95706. (WebCore::GraphicsContext::setPlatformShadow):
  95707. * platform/graphics/qt/FontQt.cpp:
  95708. (WebCore::drawTextCommon):
  95709. * platform/graphics/qt/GraphicsContextQt.cpp:
  95710. (WebCore::GraphicsContext::drawRect):
  95711. (WebCore::GraphicsContext::drawLine):
  95712. (WebCore::GraphicsContext::strokeArc):
  95713. (WebCore::GraphicsContext::drawConvexPolygon):
  95714. (WebCore::drawFilledShadowPath):
  95715. (WebCore::GraphicsContext::strokePath):
  95716. (WebCore::drawBorderlessRectShadow):
  95717. (WebCore::GraphicsContext::setPlatformShadow):
  95718. * platform/graphics/qt/ImageQt.cpp:
  95719. (WebCore::BitmapImage::draw):
  95720. * platform/graphics/skia/GraphicsContextSkia.cpp:
  95721. (WebCore::GraphicsContext::setPlatformShadow):
  95722. * platform/graphics/skia/SkiaFontWin.cpp:
  95723. (WebCore::windowsCanHandleDrawTextShadow):
  95724. * platform/graphics/win/FontCGWin.cpp:
  95725. (WebCore::drawGDIGlyphs):
  95726. (WebCore::Font::drawGlyphs):
  95727. * platform/graphics/wince/GraphicsContextWince.cpp:
  95728. (WebCore::GraphicsContext::fillRoundedRect):
  95729. (WebCore::GraphicsContext::setPlatformShadow):
  95730. (WebCore::GraphicsContext::drawText):
  95731. * platform/graphics/wx/GraphicsContextWx.cpp:
  95732. (WebCore::GraphicsContext::setPlatformShadow):
  95733. 2010-06-14 Dan Bernstein <mitz@apple.com>
  95734. Reviewed by Simon Fraser.
  95735. <rdar://problem/7752961> Unevenly distributed space in justified text
  95736. https://bugs.webkit.org/show_bug.cgi?id=36105
  95737. Test: fast/text/justify-padding-distribution.html
  95738. * platform/graphics/WidthIterator.cpp:
  95739. (WebCore::WidthIterator::WidthIterator): Initialize m_padPerSpace to the quotient of the total
  95740. padding and the number of spaces rather than truncating it.
  95741. (WebCore::WidthIterator::advance): Subtract m_padPerSpace from m_padding and add the difference
  95742. between its old and new values, when rounded, to the advance.
  95743. * platform/graphics/mac/ComplexTextController.cpp:
  95744. (WebCore::ComplexTextController::ComplexTextController):
  95745. (WebCore::ComplexTextController::adjustGlyphsAndAdvances):
  95746. * platform/graphics/win/UniscribeController.cpp:
  95747. (WebCore::UniscribeController::UniscribeController):
  95748. (WebCore::UniscribeController::shapeAndPlaceItem):
  95749. * platform/graphics/win/UniscribeController.h:
  95750. 2010-06-14 Andreas Kling <andreas.kling@nokia.com>
  95751. Reviewed by Tor Arne Vestbø.
  95752. [Qt] Stack overflow when converting navigator object to QVariant
  95753. https://bugs.webkit.org/show_bug.cgi?id=40572
  95754. Protect against infinite recursion in JSValue->QVariant conversion.
  95755. This fixes a crash when trying to convert MimeType objects (they
  95756. recurse infinitely and on-the-fly via the enabledPlugin property.)
  95757. * bridge/qt/qt_runtime.cpp:
  95758. (JSC::Bindings::convertValueToQVariant):
  95759. 2010-06-14 Yong Li <yoli@rim.com>
  95760. Test cases created by: Robin Cao <robin.cao@torchmobile.com.cn>
  95761. Reviewed by Darin Adler.
  95762. https://bugs.webkit.org/show_bug.cgi?id=38910
  95763. Suspend Document::m_executeScriptSoonTimer objects when the page is deferred.
  95764. There's no reason why we suspend all active DOM timers on the page but not suspend
  95765. this one. Document::m_executeScriptSoonTimer can run JS and schedule more DOM Timers.
  95766. It can only be tested manually.
  95767. * manual-tests/load-deferrer-script-element.html: Added.
  95768. * manual-tests/resources/load-deferrer-script-element.js: Added.
  95769. * dom/Document.cpp:
  95770. (WebCore::Document::executeScriptSoon):
  95771. (WebCore::Document::suspendExecuteScriptSoonTimer): Added.
  95772. (WebCore::Document::resumeExecuteScriptSoonTimer): Added.
  95773. * dom/Document.h:
  95774. * page/PageGroupLoadDeferrer.cpp:
  95775. (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
  95776. (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
  95777. 2010-06-13 Yael Aharon <yael.aharon@nokia.com>
  95778. Reviewed by Kenneth Rohde Christiansen.
  95779. [Qt] Platform plugin support for Notifications UI
  95780. https://bugs.webkit.org/show_bug.cgi?id=40005
  95781. To avoid race condition when GC is run during shutdown,
  95782. disconnect the Notification from the NotificationPresenter
  95783. when the presenter deletes itself.
  95784. This cannot be tested by a layout test, the race condition happens only
  95785. when GC is run during shutdown. It can be tested manually by loading
  95786. manually any notification test and closing the browser.
  95787. * notifications/Notification.cpp:
  95788. (WebCore::Notification::~Notification):
  95789. * notifications/Notification.h:
  95790. (WebCore::Notification::detachPresenter):
  95791. 2010-06-08 Marcus Bulach <bulach@chromium.org>
  95792. Reviewed by Jeremy Orlow.
  95793. Adds IndexedDB's KeyRange.
  95794. https://bugs.webkit.org/show_bug.cgi?id=40250
  95795. Test: storage/indexeddb/idb-keyrange.html
  95796. * Android.derived.jscbindings.mk:
  95797. * Android.derived.v8bindings.mk:
  95798. * Android.mk:
  95799. * CMakeLists.txt:
  95800. * DerivedSources.cpp:
  95801. * DerivedSources.make:
  95802. * GNUmakefile.am:
  95803. * WebCore.gypi:
  95804. * WebCore.pri:
  95805. * WebCore.pro:
  95806. * WebCore.vcproj/WebCore.vcproj:
  95807. * WebCore.xcodeproj/project.pbxproj:
  95808. * storage/IDBKeyRange.cpp: Added.
  95809. (WebCore::IDBKeyRange::IDBKeyRange):
  95810. * storage/IDBKeyRange.h: Added.
  95811. (WebCore::IDBKeyRange::):
  95812. (WebCore::IDBKeyRange::create):
  95813. (WebCore::IDBKeyRange::~IDBKeyRange):
  95814. (WebCore::IDBKeyRange::left):
  95815. (WebCore::IDBKeyRange::right):
  95816. (WebCore::IDBKeyRange::flags):
  95817. * storage/IDBKeyRange.idl: Added.
  95818. * storage/IndexedDatabaseRequest.cpp:
  95819. (WebCore::IndexedDatabaseRequest::makeSingleKeyRange):
  95820. (WebCore::IndexedDatabaseRequest::makeLeftBoundKeyRange):
  95821. (WebCore::IndexedDatabaseRequest::makeRightBoundKeyRange):
  95822. (WebCore::IndexedDatabaseRequest::makeBoundKeyRange):
  95823. * storage/IndexedDatabaseRequest.h:
  95824. * storage/IndexedDatabaseRequest.idl:
  95825. 2010-06-14 Jeremy Orlow <jorlow@chromium.org>
  95826. And another.
  95827. * storage/IndexedDatabaseRequest.h:
  95828. 2010-06-14 Jeremy Orlow <jorlow@chromium.org>
  95829. More build fixes.
  95830. * storage/IndexedDatabaseRequest.h:
  95831. 2010-06-14 Mahesh Kulkarni <mahesh.kulkarni@nokia.com>
  95832. Reviewed by Laszlo Gombos.
  95833. [Qt] navigator.geolocation support for Qt port
  95834. https://bugs.webkit.org/show_bug.cgi?id=39724
  95835. Implemetion for Qt port of navigator.gelocation. Using qtmobility location service.
  95836. * WebCore.pri:
  95837. * WebCore.pro:
  95838. * platform/qt/GeolocationServiceQt.cpp: Added.
  95839. (WebCore::GeolocationServiceQt::create):
  95840. (WebCore::GeolocationServiceQt::GeolocationServiceQt):
  95841. (WebCore::GeolocationServiceQt::~GeolocationServiceQt):
  95842. (WebCore::GeolocationServiceQt::positionUpdated):
  95843. (WebCore::GeolocationServiceQt::startUpdating):
  95844. (WebCore::GeolocationServiceQt::stopUpdating):
  95845. * platform/qt/GeolocationServiceQt.h: Added.
  95846. (WebCore::GeolocationServiceQt::lastPosition):
  95847. (WebCore::GeolocationServiceQt::lastError):
  95848. 2010-06-14 Jeremy Orlow <jorlow@chromium.org>
  95849. 2 more build fixes.
  95850. * storage/IDBDatabaseImpl.h:
  95851. * storage/IndexedDatabaseRequest.h:
  95852. 2010-06-14 Jeremy Orlow <jorlow@chromium.org>
  95853. Unreviewed build fix for my last.
  95854. * workers/WorkerScriptLoaderClient.h:
  95855. 2010-06-14 Jeremy Orlow <jorlow@chromium.org>
  95856. Reviewed by Darin Fisher.
  95857. [V8] Clean up SerializedScriptValue
  95858. https://bugs.webkit.org/show_bug.cgi?id=40482
  95859. SerializedScriptValue doesn't follow WebKit's style guidelines very well
  95860. and needlessly inlines quite a bit within the .h file. This change cleans
  95861. things up. No funcitonal changes.
  95862. No change in behavior.
  95863. * bindings/v8/SerializedScriptValue.cpp:
  95864. (WebCore::SerializedScriptValue::deserializeAndSetProperty):
  95865. (WebCore::SerializedScriptValue::create):
  95866. (WebCore::SerializedScriptValue::createFromWire):
  95867. (WebCore::SerializedScriptValue::release):
  95868. (WebCore::SerializedScriptValue::SerializedScriptValue):
  95869. * bindings/v8/SerializedScriptValue.h:
  95870. 2010-06-14 Ilya Tikhonovsky <loislo@chromium.org>
  95871. Reviewed by Pavel Feldman.
  95872. WebInspector: On the way to Remote Debugging we want to transfer dom/timeline/etc
  95873. data from inspected page to WebInspector as JSON string via http. The native
  95874. serialization to JSON string is supported by InspectorValue's classes. This patch
  95875. has the implementation of sendMessageToFrontend function. WebKit version of it still
  95876. uses ScriptFunctionCall and will be switched to another transport a little bit later.
  95877. https://bugs.webkit.org/show_bug.cgi?id=40134
  95878. * inspector/InspectorClient.h:
  95879. * inspector/InspectorController.cpp:
  95880. (WebCore::InspectorController::connectFrontend):
  95881. (WebCore::InspectorController::disconnectFrontend):
  95882. * inspector/InspectorController.h:
  95883. * inspector/InspectorFrontend.cpp:
  95884. (WebCore::InspectorFrontend::InspectorFrontend):
  95885. * inspector/InspectorFrontend.h:
  95886. * inspector/InspectorFrontendClientLocal.cpp:
  95887. (WebCore::InspectorFrontendClientLocal::frontendLoaded):
  95888. * inspector/InspectorValues.cpp:
  95889. (WebCore::InspectorObject::writeJSON):
  95890. * inspector/front-end/inspector.js:
  95891. (WebInspector.dispatchMessageToFrontend):
  95892. * loader/EmptyClients.h:
  95893. (WebCore::EmptyInspectorClient::sendMessageToFrontend):
  95894. 2010-06-14 Jeremy Orlow <jorlow@chromium.org>
  95895. Reviewed by Darin Adler.
  95896. Reenable IDBDatabaseRequest's description attribute
  95897. https://bugs.webkit.org/show_bug.cgi?id=39826
  95898. On the 26th, Beth commented out the description attribute in
  95899. IDBDatabaseRequest because it was causing problems with the
  95900. objective c bindings. Turns out that this is the same bug as
  95901. in http://trac.webkit.org/changeset/19486. (Thanks for the
  95902. pointer, Mark!)
  95903. The solution is to change the objective C bindings generator
  95904. to change the name in the generated code. id and hash both
  95905. just appended "Name" to them in the past. I couldn't think
  95906. of anything else particularly better to append, so I just
  95907. went with name as well.
  95908. Test: building the world works on the first try. Layout
  95909. test verifies description works again.
  95910. * bindings/scripts/CodeGeneratorObjC.pm:
  95911. * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  95912. (webkit_dom_test_obj_get_description):
  95913. (webkit_dom_test_obj_get_id):
  95914. (webkit_dom_test_obj_set_id):
  95915. (webkit_dom_test_obj_get_hash):
  95916. (webkit_dom_test_obj_set_property):
  95917. (webkit_dom_test_obj_get_property):
  95918. (webkit_dom_test_obj_class_init):
  95919. * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  95920. * bindings/scripts/test/JS/JSTestObj.cpp:
  95921. (WebCore::):
  95922. (WebCore::jsTestObjDescription):
  95923. (WebCore::jsTestObjId):
  95924. (WebCore::jsTestObjHash):
  95925. (WebCore::setJSTestObjId):
  95926. * bindings/scripts/test/JS/JSTestObj.h:
  95927. * bindings/scripts/test/ObjC/DOMTestObj.h:
  95928. * bindings/scripts/test/ObjC/DOMTestObj.mm:
  95929. (-[DOMTestObj descriptionName]):
  95930. (-[DOMTestObj idName]):
  95931. (-[DOMTestObj setIdName:]):
  95932. (-[DOMTestObj hashName]):
  95933. * bindings/scripts/test/TestObj.idl:
  95934. * bindings/scripts/test/V8/V8TestObj.cpp:
  95935. (WebCore::TestObjInternal::descriptionAttrGetter):
  95936. (WebCore::TestObjInternal::idAttrGetter):
  95937. (WebCore::TestObjInternal::idAttrSetter):
  95938. (WebCore::TestObjInternal::hashAttrGetter):
  95939. (WebCore::):
  95940. * storage/IDBDatabaseRequest.idl:
  95941. 2010-06-13 Anders Bakken <agbakken@gmail.com>
  95942. Reviewed by Eric Seidel.
  95943. [Qt] ScreenQt.cpp has coding-style errors
  95944. https://bugs.webkit.org/show_bug.cgi?id=39766
  95945. * platform/qt/ScreenQt.cpp:
  95946. 2010-06-13 Eric Seidel <eric@webkit.org>
  95947. Reviewed by Adam Barth.
  95948. Rename HTMLParser to LegacyHTMLTreeConstructor
  95949. https://bugs.webkit.org/show_bug.cgi?id=40554
  95950. This makes our old HTML parsing system closer match the
  95951. HTML5 spec, and thus easier to compare to the new HTML5
  95952. parsing system.
  95953. This rename was entirely automatic. Done by do-webcore-rename.
  95954. * Android.mk:
  95955. * CMakeLists.txt:
  95956. * GNUmakefile.am:
  95957. * WebCore.gypi:
  95958. * WebCore.pro:
  95959. * WebCore.vcproj/WebCore.vcproj:
  95960. * WebCore.xcodeproj/project.pbxproj:
  95961. * dom/Document.cpp:
  95962. * dom/DocumentParser.h:
  95963. (WebCore::DocumentParser::htmlTreeConstructor):
  95964. * html/HTML5DocumentParser.cpp:
  95965. (WebCore::HTML5DocumentParser::htmlTreeConstructor):
  95966. * html/HTML5DocumentParser.h:
  95967. * html/HTML5TreeBuilder.cpp:
  95968. (WebCore::HTML5TreeBuilder::HTML5TreeBuilder):
  95969. * html/HTML5TreeBuilder.h:
  95970. (WebCore::HTML5TreeBuilder::legacyTreeConstructor):
  95971. * html/HTMLDocumentParser.cpp:
  95972. (WebCore::HTMLDocumentParser::HTMLDocumentParser):
  95973. * html/HTMLDocumentParser.h:
  95974. (WebCore::HTMLDocumentParser::htmlTreeConstructor):
  95975. * html/HTMLFormControlElement.cpp:
  95976. (WebCore::HTMLFormControlElement::removedFromTree):
  95977. * html/HTMLInputElement.cpp:
  95978. * html/HTMLMeterElement.cpp:
  95979. * html/HTMLProgressElement.cpp:
  95980. * html/LegacyHTMLTreeConstructor.cpp: Renamed from WebCore/html/HTMLParser.cpp.
  95981. (WebCore::addTags):
  95982. (WebCore::HTMLStackElem::HTMLStackElem):
  95983. (WebCore::HTMLStackElem::derefNode):
  95984. (WebCore::LegacyHTMLTreeConstructor::LegacyHTMLTreeConstructor):
  95985. (WebCore::LegacyHTMLTreeConstructor::~LegacyHTMLTreeConstructor):
  95986. (WebCore::LegacyHTMLTreeConstructor::reset):
  95987. (WebCore::LegacyHTMLTreeConstructor::setCurrent):
  95988. (WebCore::tagPriorityOfNode):
  95989. (WebCore::LegacyHTMLTreeConstructor::limitDepth):
  95990. (WebCore::LegacyHTMLTreeConstructor::insertNodeAfterLimitDepth):
  95991. (WebCore::LegacyHTMLTreeConstructor::parseToken):
  95992. (WebCore::LegacyHTMLTreeConstructor::parseDoctypeToken):
  95993. (WebCore::isTableSection):
  95994. (WebCore::isTablePart):
  95995. (WebCore::isTableRelated):
  95996. (WebCore::isScopingTag):
  95997. (WebCore::LegacyHTMLTreeConstructor::insertNode):
  95998. (WebCore::LegacyHTMLTreeConstructor::handleError):
  95999. (WebCore::LegacyHTMLTreeConstructor::textCreateErrorCheck):
  96000. (WebCore::LegacyHTMLTreeConstructor::commentCreateErrorCheck):
  96001. (WebCore::LegacyHTMLTreeConstructor::headCreateErrorCheck):
  96002. (WebCore::LegacyHTMLTreeConstructor::bodyCreateErrorCheck):
  96003. (WebCore::LegacyHTMLTreeConstructor::framesetCreateErrorCheck):
  96004. (WebCore::LegacyHTMLTreeConstructor::formCreateErrorCheck):
  96005. (WebCore::LegacyHTMLTreeConstructor::isindexCreateErrorCheck):
  96006. (WebCore::LegacyHTMLTreeConstructor::selectCreateErrorCheck):
  96007. (WebCore::LegacyHTMLTreeConstructor::ddCreateErrorCheck):
  96008. (WebCore::LegacyHTMLTreeConstructor::dtCreateErrorCheck):
  96009. (WebCore::LegacyHTMLTreeConstructor::rpCreateErrorCheck):
  96010. (WebCore::LegacyHTMLTreeConstructor::rtCreateErrorCheck):
  96011. (WebCore::LegacyHTMLTreeConstructor::nestedCreateErrorCheck):
  96012. (WebCore::LegacyHTMLTreeConstructor::nestedPCloserCreateErrorCheck):
  96013. (WebCore::LegacyHTMLTreeConstructor::nestedStyleCreateErrorCheck):
  96014. (WebCore::LegacyHTMLTreeConstructor::tableCellCreateErrorCheck):
  96015. (WebCore::LegacyHTMLTreeConstructor::tableSectionCreateErrorCheck):
  96016. (WebCore::LegacyHTMLTreeConstructor::noembedCreateErrorCheck):
  96017. (WebCore::LegacyHTMLTreeConstructor::noframesCreateErrorCheck):
  96018. (WebCore::LegacyHTMLTreeConstructor::noscriptCreateErrorCheck):
  96019. (WebCore::LegacyHTMLTreeConstructor::pCloserCreateErrorCheck):
  96020. (WebCore::LegacyHTMLTreeConstructor::pCloserStrictCreateErrorCheck):
  96021. (WebCore::LegacyHTMLTreeConstructor::mapCreateErrorCheck):
  96022. (WebCore::mapTagToFunc):
  96023. (WebCore::mapTagsToFunc):
  96024. (WebCore::LegacyHTMLTreeConstructor::getNode):
  96025. (WebCore::LegacyHTMLTreeConstructor::allowNestedRedundantTag):
  96026. (WebCore::LegacyHTMLTreeConstructor::processCloseTag):
  96027. (WebCore::LegacyHTMLTreeConstructor::isHeadingTag):
  96028. (WebCore::LegacyHTMLTreeConstructor::isInline):
  96029. (WebCore::LegacyHTMLTreeConstructor::isResidualStyleTag):
  96030. (WebCore::LegacyHTMLTreeConstructor::isAffectedByResidualStyle):
  96031. (WebCore::LegacyHTMLTreeConstructor::handleResidualStyleCloseTagAcrossBlocks):
  96032. (WebCore::LegacyHTMLTreeConstructor::reopenResidualStyleTags):
  96033. (WebCore::LegacyHTMLTreeConstructor::pushBlock):
  96034. (WebCore::LegacyHTMLTreeConstructor::popBlock):
  96035. (WebCore::LegacyHTMLTreeConstructor::popOneBlockCommon):
  96036. (WebCore::LegacyHTMLTreeConstructor::popOneBlock):
  96037. (WebCore::LegacyHTMLTreeConstructor::moveOneBlockToStack):
  96038. (WebCore::LegacyHTMLTreeConstructor::checkIfHasPElementInScope):
  96039. (WebCore::LegacyHTMLTreeConstructor::popInlineBlocks):
  96040. (WebCore::LegacyHTMLTreeConstructor::freeBlock):
  96041. (WebCore::LegacyHTMLTreeConstructor::createHead):
  96042. (WebCore::LegacyHTMLTreeConstructor::handleIsindex):
  96043. (WebCore::LegacyHTMLTreeConstructor::startBody):
  96044. (WebCore::LegacyHTMLTreeConstructor::finished):
  96045. (WebCore::LegacyHTMLTreeConstructor::reportErrorToConsole):
  96046. (WebCore::shouldCreateImplicitHead):
  96047. (WebCore::serializeForNumberType):
  96048. (WebCore::parseToDoubleForNumberType):
  96049. * html/LegacyHTMLTreeConstructor.h: Renamed from WebCore/html/HTMLParser.h.
  96050. (WebCore::LegacyHTMLTreeConstructor::skipMode):
  96051. (WebCore::LegacyHTMLTreeConstructor::isHandlingResidualStyleAcrossBlocks):
  96052. (WebCore::LegacyHTMLTreeConstructor::setSkipMode):
  96053. (WebCore::LegacyHTMLTreeConstructor::popBlock):
  96054. (WebCore::LegacyHTMLTreeConstructor::hasPElementInScope):
  96055. (WebCore::LegacyHTMLTreeConstructor::reportError):
  96056. (WebCore::LegacyHTMLTreeConstructor::):
  96057. (WebCore::shouldCreateImplicitHead):
  96058. * html/StepRange.cpp:
  96059. * html/ValidityState.cpp:
  96060. * rendering/RenderSlider.cpp:
  96061. 2010-06-13 Eric Seidel <eric@webkit.org>
  96062. Reviewed by Darin Adler.
  96063. Rename m_parser, htmlParser() to m_treeConstructor, htmlTreeConstructor() in preparation for renaming HTMLParser
  96064. https://bugs.webkit.org/show_bug.cgi?id=40514
  96065. This rename was done by hand. I realize now I should have
  96066. renamed HTMLParser to HTMLTreeConstructor before renaming HTMLTokenizer.
  96067. No functional changes, thus no tests.
  96068. * dom/DocumentParser.h:
  96069. (WebCore::DocumentParser::htmlTreeConstructor):
  96070. * html/HTML5DocumentParser.cpp:
  96071. (WebCore::HTML5DocumentParser::HTML5DocumentParser):
  96072. (WebCore::HTML5DocumentParser::pumpLexerIfPossible):
  96073. (WebCore::HTML5DocumentParser::pumpLexer):
  96074. (WebCore::HTML5DocumentParser::end):
  96075. (WebCore::HTML5DocumentParser::htmlTreeConstructor):
  96076. (WebCore::HTML5DocumentParser::isWaitingForScripts):
  96077. (WebCore::HTML5DocumentParser::resumeParsingAfterScriptExecution):
  96078. (WebCore::HTML5DocumentParser::notifyFinished):
  96079. (WebCore::HTML5DocumentParser::executeScriptsWaitingForStylesheets):
  96080. * html/HTML5DocumentParser.h:
  96081. * html/HTML5TreeBuilder.cpp:
  96082. (WebCore::HTML5TreeBuilder::HTML5TreeBuilder):
  96083. (WebCore::HTML5TreeBuilder::passTokenToLegacyParser):
  96084. (WebCore::HTML5TreeBuilder::finished):
  96085. * html/HTML5TreeBuilder.h:
  96086. (WebCore::HTML5TreeBuilder::legacyTreeConstructor):
  96087. * html/HTMLDocumentParser.cpp:
  96088. (WebCore::HTMLDocumentParser::HTMLDocumentParser):
  96089. (WebCore::HTMLDocumentParser::scriptHandler):
  96090. (WebCore::HTMLDocumentParser::parseTag):
  96091. (WebCore::HTMLDocumentParser::end):
  96092. (WebCore::HTMLDocumentParser::processToken):
  96093. (WebCore::HTMLDocumentParser::processDoctypeToken):
  96094. * html/HTMLDocumentParser.h:
  96095. (WebCore::HTMLDocumentParser::htmlTreeConstructor):
  96096. * html/HTMLFormControlElement.cpp:
  96097. (WebCore::HTMLFormControlElement::removedFromTree):
  96098. 2010-06-13 Eric Seidel <eric@webkit.org>
  96099. Reviewed by Darin Adler.
  96100. Rename tok, asHTMLTokenizer to parser, asHTMLDocumentParser
  96101. https://bugs.webkit.org/show_bug.cgi?id=40513
  96102. Last set of Tokenizer related renames, also done via do-webcore-rename:
  96103. asHTMLTokenizer => asHTMLDocumentParser
  96104. tok => parser
  96105. No functional changes, thus no tests.
  96106. * dom/Document.cpp:
  96107. (WebCore::Document::write):
  96108. * dom/DocumentParser.h:
  96109. (WebCore::DocumentParser::asHTMLDocumentParser):
  96110. * html/HTMLDocumentParser.cpp:
  96111. (WebCore::parseHTMLDocumentFragment):
  96112. * html/HTMLDocumentParser.h:
  96113. (WebCore::HTMLDocumentParser::asHTMLDocumentParser):
  96114. * loader/DocumentLoader.cpp:
  96115. (WebCore::DocumentLoader::isLoadingInAPISense):
  96116. 2010-06-13 Eric Seidel <eric@webkit.org>
  96117. Reviewed by Darin Adler.
  96118. Fix the rest of the references to the old Tokenizer class (now DocumentParser)
  96119. https://bugs.webkit.org/show_bug.cgi?id=40512
  96120. No functional changes, thus no new tests.
  96121. This was mostly done by do-webcore-rename:
  96122. tokenizer => parser
  96123. m_tokenizer => m_parser
  96124. createTextTokenizer => createTextDocumentParser
  96125. createTokenizer => createParser
  96126. getTokenizer => getParser
  96127. However had to be careful to avoid renaming things related to
  96128. css/tokenizer.flex (which we should later rename to CSSTokenizer.flex)
  96129. Still a couple references with "tok" and "asHTMLTokenizer" which I'll
  96130. get in the next patch.
  96131. * accessibility/AccessibilityRenderObject.cpp:
  96132. (WebCore::AccessibilityRenderObject::isLoaded):
  96133. * bindings/v8/ScriptEventListener.cpp:
  96134. (WebCore::createAttributeEventListener):
  96135. * dom/Document.cpp:
  96136. (WebCore::Document::removedLastRef):
  96137. (WebCore::Document::~Document):
  96138. (WebCore::Document::createParser):
  96139. (WebCore::Document::open):
  96140. (WebCore::Document::cancelParsing):
  96141. (WebCore::Document::implicitOpen):
  96142. (WebCore::Document::implicitClose):
  96143. (WebCore::Document::write):
  96144. (WebCore::Document::finishParsing):
  96145. (WebCore::Document::removePendingSheet):
  96146. * dom/Document.h:
  96147. (WebCore::Document::parser):
  96148. * dom/DocumentParser.h:
  96149. * dom/ViewportArguments.cpp:
  96150. (WebCore::reportViewportWarning):
  96151. * dom/XMLDocumentParserLibxml2.cpp:
  96152. (WebCore::PendingCallbacks::callAndRemoveFirstCallback):
  96153. (WebCore::PendingCallbacks::PendingStartElementNSCallback::call):
  96154. (WebCore::PendingCallbacks::PendingEndElementNSCallback::call):
  96155. (WebCore::PendingCallbacks::PendingCharactersCallback::call):
  96156. (WebCore::PendingCallbacks::PendingProcessingInstructionCallback::call):
  96157. (WebCore::PendingCallbacks::PendingCDATABlockCallback::call):
  96158. (WebCore::PendingCallbacks::PendingCommentCallback::call):
  96159. (WebCore::PendingCallbacks::PendingInternalSubsetCallback::call):
  96160. (WebCore::PendingCallbacks::):
  96161. (WebCore::getParser):
  96162. (WebCore::startElementNsHandler):
  96163. (WebCore::endElementNsHandler):
  96164. (WebCore::charactersHandler):
  96165. (WebCore::processingInstructionHandler):
  96166. (WebCore::cdataBlockHandler):
  96167. (WebCore::commentHandler):
  96168. (WebCore::warningHandler):
  96169. (WebCore::fatalErrorHandler):
  96170. (WebCore::normalErrorHandler):
  96171. (WebCore::getEntityHandler):
  96172. (WebCore::startDocumentHandler):
  96173. (WebCore::endDocumentHandler):
  96174. (WebCore::internalSubsetHandler):
  96175. (WebCore::externalSubsetHandler):
  96176. (WebCore::parseXMLDocumentFragment):
  96177. * dom/XMLDocumentParserQt.cpp:
  96178. (WebCore::parseXMLDocumentFragment):
  96179. * html/HTML5EntityParser.cpp:
  96180. * html/HTMLDocument.cpp:
  96181. (WebCore::HTMLDocument::createParser):
  96182. * html/HTMLDocument.h:
  96183. * html/HTMLDocumentParser.cpp:
  96184. (WebCore::HTMLDocumentParser::write):
  96185. (WebCore::HTMLDocumentParser::stopParsing):
  96186. * html/HTMLFormControlElement.cpp:
  96187. (WebCore::HTMLFormControlElement::removedFromTree):
  96188. * html/HTMLParser.cpp:
  96189. (WebCore::HTMLParser::finished):
  96190. (WebCore::HTMLParser::reportErrorToConsole):
  96191. * html/HTMLViewSourceDocument.cpp:
  96192. (WebCore::HTMLViewSourceDocument::createParser):
  96193. (WebCore::HTMLViewSourceDocument::addLine):
  96194. * html/HTMLViewSourceDocument.h:
  96195. * loader/DocumentLoader.cpp:
  96196. (WebCore::DocumentLoader::isLoadingInAPISense):
  96197. * loader/DocumentWriter.cpp:
  96198. (WebCore::DocumentWriter::begin):
  96199. (WebCore::DocumentWriter::addData):
  96200. * loader/FTPDirectoryDocument.cpp:
  96201. (WebCore::FTPDirectoryDocument::createParser):
  96202. * loader/FTPDirectoryDocument.h:
  96203. * loader/FrameLoader.cpp:
  96204. (WebCore::FrameLoader::stopLoading):
  96205. (WebCore::FrameLoader::stop):
  96206. * loader/ImageDocument.cpp:
  96207. (WebCore::ImageDocument::createParser):
  96208. * loader/ImageDocument.h:
  96209. * loader/MediaDocument.cpp:
  96210. (WebCore::MediaDocument::createParser):
  96211. * loader/MediaDocument.h:
  96212. * loader/PluginDocument.cpp:
  96213. (WebCore::PluginDocument::createParser):
  96214. * loader/PluginDocument.h:
  96215. * loader/SinkDocument.cpp:
  96216. (WebCore::SinkDocument::createParser):
  96217. * loader/SinkDocument.h:
  96218. * loader/TextDocument.cpp:
  96219. (WebCore::TextDocument::createParser):
  96220. (WebCore::createTextDocumentParser):
  96221. * loader/TextDocument.h:
  96222. * svg/SVGDocumentExtensions.cpp:
  96223. (WebCore::SVGDocumentExtensions::reportWarning):
  96224. (WebCore::SVGDocumentExtensions::reportError):
  96225. * wml/WMLDocument.cpp:
  96226. (WebCore::WMLDocument::finishedParsing):
  96227. * wml/WMLErrorHandling.cpp:
  96228. (WebCore::reportWMLError):
  96229. * wml/WMLTemplateElement.cpp:
  96230. (WebCore::WMLTemplateElement::registerTemplatesInDocument):
  96231. 2010-06-13 Chris Fleizach <cfleizach@apple.com>
  96232. Reviewed by Darin Adler.
  96233. AX: link won't return linked element if URL contains #
  96234. https://bugs.webkit.org/show_bug.cgi?id=40192
  96235. Test: platform/mac/accessibility/internal-link-when-document-has-fragment.html
  96236. * accessibility/AccessibilityRenderObject.cpp:
  96237. (WebCore::AccessibilityRenderObject::internalLinkElement):
  96238. 2010-06-13 Sam Weinig <sam@webkit.org>
  96239. Try and fix the chrome build.
  96240. * bindings/scripts/CodeGeneratorV8.pm:
  96241. * xml/XMLHttpRequest.idl:
  96242. 2010-06-13 Sam Weinig <sam@webkit.org>
  96243. Reviewed by Anders Carlsson.
  96244. Fix for https://bugs.webkit.org/show_bug.cgi?id=40550
  96245. XMLHttpRequest constructor object should expose the constants from the IDL.
  96246. Test: fast/dom/XMLHttpRequest-constants.html
  96247. * Android.jscbindings.mk:
  96248. * CMakeLists.txt:
  96249. * GNUmakefile.am:
  96250. * WebCore.gypi:
  96251. * WebCore.pro:
  96252. * WebCore.vcproj/WebCore.vcproj:
  96253. * WebCore.xcodeproj/project.pbxproj:
  96254. * bindings/js/JSBindingsAllInOne.cpp:
  96255. * bindings/js/JSDOMWindowCustom.cpp:
  96256. * bindings/js/JSWorkerContextCustom.cpp:
  96257. * bindings/js/JSXMLHttpRequestConstructor.cpp: Removed.
  96258. * bindings/js/JSXMLHttpRequestConstructor.h: Removed.
  96259. * bindings/js/JSXMLHttpRequestCustom.cpp:
  96260. (WebCore::JSXMLHttpRequestConstructor::constructJSXMLHttpRequest):
  96261. * bindings/scripts/CodeGeneratorJS.pm:
  96262. * xml/XMLHttpRequest.idl:
  96263. 2010-06-13 Simon Fraser <simon.fraser@apple.com>
  96264. Reviewed by Dan Bernstein.
  96265. -webkit-transition font-size and font-family
  96266. https://bugs.webkit.org/show_bug.cgi?id=33429
  96267. When animating font-size, update the font with a saved
  96268. version of the font selector to ensure that we don't clobber
  96269. the font family.
  96270. Test: transitions/font-family-during-transition.html
  96271. * rendering/style/RenderStyle.cpp:
  96272. (WebCore::RenderStyle::setBlendedFontSize):
  96273. 2010-06-13 Tony Chang <tony@chromium.org>
  96274. Build fix, not reviewed.
  96275. fix chromium compile after r61094 (id attribute refactor)
  96276. https://bugs.webkit.org/show_bug.cgi?id=40553
  96277. * bindings/v8/custom/V8NamedNodesCollection.cpp:
  96278. (WebCore::V8NamedNodesCollection::itemWithName):
  96279. 2010-06-13 Darin Adler <darin@apple.com>
  96280. Reviewed by Alexey Proskuryakov.
  96281. Partly done support for alternate ID attributes should be removed
  96282. https://bugs.webkit.org/show_bug.cgi?id=39692
  96283. Removed the include of "HTMLNames.h" from "Element.h". This prevents
  96284. near-world-rebuilds every time you change HTMLTagNames.in.
  96285. Renamed the getIDAttribute function in the Element class to
  96286. idForStyleResolution, since it returns a value of the id attribute
  96287. that has been lowercased as appropriate for style matching, not the
  96288. actual value of the attribute. With the old name it was easy to
  96289. misuse it in non-style contexts.
  96290. Got rid of the idAttributeName function on Element, since it is
  96291. easy to use it wrong. Replace it with isIdAttributeName, getIdAttribute,
  96292. and setIdAttribute functions, which are a good fit for the needs of
  96293. most call sites that were dealing with the id attribute.
  96294. Added an idAttributeName function to Document. This is for a future
  96295. where a document can have a custom id attribute name specified in its
  96296. doctype. It's possible this will be insufficient because the same
  96297. document might have XHTML or SVG elements in it, and it's possible
  96298. that on those elements we will want the attribute named "id" with
  96299. no namespace to still work. We can deal with that when we implement
  96300. the actual feature, though. For now, it seems OK to fetch the name
  96301. of the id attribute from the document.
  96302. * dom/DynamicNodeList.cpp:
  96303. (WebCore::DynamicNodeList::itemWithName):
  96304. * dom/StaticNodeList.cpp:
  96305. (WebCore::StaticNodeList::itemWithName):
  96306. * rendering/RenderSVGResourceContainer.h:
  96307. (WebCore::RenderSVGResourceContainer::RenderSVGResourceContainer):
  96308. (WebCore::RenderSVGResourceContainer::idChanged):
  96309. * svg/SVGUseElement.cpp:
  96310. (WebCore::SVGUseElement::handleDeepUseReferencing):
  96311. * svg/animation/SMILTimeContainer.cpp:
  96312. (WebCore::SMILTimeContainer::updateAnimations):
  96313. Use the new idForStyleResolution function, which is the new name of
  96314. the getIDAttribute function. There's a good chance these call sites are
  96315. incorrect, which is something we should investigate later, so there's
  96316. a FIXME at each call site.
  96317. * dom/Document.cpp:
  96318. (WebCore::Document::Document): Initialize m_idAttributeName to the
  96319. standard id attribute from HTML.
  96320. (WebCore::Document::getElementById): Use Element::getIdAttribute.
  96321. * dom/Document.h: Added Document::idAttributeName.
  96322. * dom/Element.cpp:
  96323. (WebCore::Element::setAttribute): Use Document::idAttributeName.
  96324. (WebCore::Element::setAttributeMap): Use Element::isIdAttributeName.
  96325. (WebCore::Element::insertedIntoDocument): Use Document::idAttributeName.
  96326. (WebCore::Element::removedFromDocument): Ditto.
  96327. (WebCore::Element::formatForDebugger): Use Element::getIdAttribute.
  96328. * dom/Element.h: Added isIdAttributeName, getIdAttribute, setIdAttribute,
  96329. idForStyleResolution. Removed rareIDAttributeName.
  96330. * dom/ElementRareData.h: Removed m_idAttributeName.
  96331. * dom/NamedNodeMap.cpp:
  96332. (WebCore::NamedNodeMap::setAttributes): Use Document::idAttributeName.
  96333. * dom/NamedNodeMap.h: Renamed id, setID, and m_id to idForStyleResolution,
  96334. setIdForStyleResolution, and m_idForStyleResolution since this is not the
  96335. value of the id attribute because it gets lowercased for compatibility-mode
  96336. documents.
  96337. * rendering/RenderIFrame.cpp:
  96338. * rendering/RenderLayerCompositor.cpp:
  96339. * rendering/RenderProgress.cpp:
  96340. Added include of HTMLNames.h now that Element.h no longer includes it.
  96341. * editing/SetNodeAttributeCommand.h:
  96342. * editing/markup.cpp:
  96343. * html/HTMLParser.cpp:
  96344. Removed unneeded includes.
  96345. * html/HTMLParser.h: Sorted includes.
  96346. * css/CSSStyleSelector.cpp:
  96347. (WebCore::CSSStyleSelector::matchRules): Use idForStyleResolution.
  96348. (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Use idForStyleResolution.
  96349. * dom/Attr.cpp:
  96350. (WebCore::Attr::isId): Use Document::idAttributeName.
  96351. * dom/StyledElement.cpp:
  96352. (WebCore::StyledElement::parseMappedAttribute): Use isIdAttributeName,
  96353. and setIdForStyleResolution.
  96354. * editing/DeleteButtonController.cpp:
  96355. (WebCore::DeleteButtonController::createDeletionUI): Use setIdAttribute.
  96356. * editing/EditorCommand.cpp:
  96357. (WebCore::executeInsertHorizontalRule): Ditto.
  96358. * html/HTMLAppletElement.cpp:
  96359. (WebCore::HTMLAppletElement::parseMappedAttribute): Use isIdAttributeName.
  96360. (WebCore::HTMLAppletElement::createRenderer): Use getIdAttribute.
  96361. * html/HTMLCollection.cpp:
  96362. (WebCore::HTMLCollection::checkForNameMatch): Use getIdAttribute.
  96363. (WebCore::HTMLCollection::updateNameCache): Use getIdAttribute.
  96364. * html/HTMLDataGridColElement.cpp:
  96365. (WebCore::HTMLDataGridColElement::ensureColumn): Use getIdAttribute.
  96366. (WebCore::HTMLDataGridColElement::parseMappedAttribute): Use isIdAttributeName.
  96367. * html/HTMLElement.cpp:
  96368. (WebCore::HTMLElement::parseMappedAttribute): Use isIdAttributeName.
  96369. * html/HTMLFormCollection.cpp:
  96370. (WebCore::HTMLFormCollection::nextNamedItem): Added missing braces.
  96371. (WebCore::HTMLFormCollection::updateNameCache): Use getIdAttribute.
  96372. * html/HTMLFrameElementBase.cpp:
  96373. (WebCore::HTMLFrameElementBase::parseMappedAttribute): Use isIdAttributeName.
  96374. (WebCore::HTMLFrameElementBase::setName): Use getIdAttribute.
  96375. * html/HTMLImageElement.cpp:
  96376. (WebCore::HTMLImageElement::parseMappedAttribute): Use isIdAttributeName.
  96377. * html/HTMLMapElement.cpp:
  96378. (WebCore::HTMLMapElement::parseMappedAttribute): Use isIdAttributeName.
  96379. Also restructured the function a bit to make its structure clearer and added
  96380. a comment pointing out that it can't be quite right.
  96381. * html/HTMLNameCollection.cpp:
  96382. (WebCore::HTMLNameCollection::itemAfter): Use getIdAttribute.
  96383. * html/HTMLObjectElement.cpp:
  96384. (WebCore::HTMLObjectElement::parseMappedAttribute): Use isIdAttributeName.
  96385. * html/HTMLParamElement.cpp:
  96386. (WebCore::HTMLParamElement::parseMappedAttribute): Use isIdAttributeName.
  96387. * loader/CachedFont.cpp:
  96388. (WebCore::CachedFont::getSVGFontById): Use getIdAttribute.
  96389. * rendering/RenderLayerBacking.cpp:
  96390. (WebCore::RenderLayerBacking::nameForLayer): Use getIdAttribute.
  96391. * rendering/SVGRenderTreeAsText.cpp:
  96392. (WebCore::writeSVGPaintingResource): Use getIdAttribute.
  96393. (WebCore::writeSVGResourceContainer): Ditto.
  96394. * svg/SVGElement.cpp:
  96395. (WebCore::SVGElement::insertedIntoDocument): Use getIdAttribute.
  96396. * svg/SVGStyledElement.cpp:
  96397. (WebCore::SVGStyledElement::isKnownAttribute): Use isIdAttributeName.
  96398. (WebCore::SVGStyledElement::svgAttributeChanged): Use isIdAttributeName.
  96399. * wml/WMLElement.cpp:
  96400. (WebCore::WMLElement::parseMappedAttribute): Use isIdAttributeName.
  96401. 2010-06-13 Dan Bernstein <mitz@apple.com>
  96402. Reviewed by Darin Adler.
  96403. <rdar://problem/8087385> REGRESSION (r60974): Continuous wheel scrolling is too fast in list boxes and in Safari Reader
  96404. https://bugs.webkit.org/show_bug.cgi?id=40537
  96405. * platform/mac/WheelEventMac.mm:
  96406. (WebCore::PlatformWheelEvent::PlatformWheelEvent): Only multiply by pixelsPerLineStep() if the
  96407. event is not continuous, as was before r56012.
  96408. 2010-06-13 Andras Becsi <abecsi@webkit.org>
  96409. Reviewed by Darin Adler.
  96410. Centralize the gperf code generation commands into make-hash-tools.pl
  96411. to avoid redundancy across multiple build systems.
  96412. Do this in preparation of refactoring the usage of these generated
  96413. sources to fix the debug linking error on Linux with gcc >= 4.4.0.
  96414. webkit.org/b/29244
  96415. No functionality change, so no new tests needed.
  96416. * DerivedSources.make:
  96417. * GNUmakefile.am:
  96418. * WebCore.gyp/WebCore.gyp:
  96419. * WebCore.gyp/scripts/rule_gperf.py: Removed.
  96420. * WebCore.pri:
  96421. * WebCore.xcodeproj/project.pbxproj:
  96422. * css/CSSParser.cpp:
  96423. (WebCore::cssPropertyID):
  96424. (WebCore::cssValueKeywordID):
  96425. * css/makeprop.pl:
  96426. * css/makevalues.pl:
  96427. * html/DocTypeStrings.gperf:
  96428. * html/HTML5EntityParser.cpp:
  96429. * html/HTMLDocumentParser.cpp:
  96430. * html/HTMLEntityNames.gperf:
  96431. * html/PreloadScanner.cpp:
  96432. * make-hash-tools.pl: Added.
  96433. * platform/ColorData.gperf:
  96434. * platform/graphics/Color.cpp:
  96435. 2010-06-13 Noam Rosenthal <noam.rosenthal@nokia.com>
  96436. Reviewed by Kenneth Rohde Christiansen.
  96437. [Qt] tests/hybridPixmap fails
  96438. https://bugs.webkit.org/show_bug.cgi?id=37316
  96439. The problem was that JSC::Instance::createRuntimeObject was never called.
  96440. This is fixed by overloading newRuntimeObject and calling Instance::createRuntimeObject
  96441. in between, instead of creating the runtime object directly inside the static function
  96442. QtPixmapInstance::createRuntimeObject, which had to be renamed as to not overshadow the virtual function.
  96443. This fixes an existing test, tests/hybridPixmap
  96444. * bridge/qt/qt_pixmapruntime.cpp:
  96445. (JSC::Bindings::QtPixmapInstance::newRuntimeObject):
  96446. (JSC::Bindings::QtPixmapInstance::createPixmapRuntimeObject):
  96447. * bridge/qt/qt_pixmapruntime.h:
  96448. * bridge/qt/qt_runtime.cpp:
  96449. (JSC::Bindings::convertQVariantToValue):
  96450. 2010-06-13 Noam Rosenthal <noam.rosenthal@nokia.com>
  96451. Reviewed by Darin Adler.
  96452. GraphicsContext3D.h in the Qt port includes too many unnecessary files
  96453. https://bugs.webkit.org/show_bug.cgi?id=40536
  96454. Removed unncessary includes.
  96455. No new tests; Compilation improvement.
  96456. * platform/graphics/GraphicsContext3D.h:
  96457. * platform/graphics/qt/GraphicsContext3DQt.cpp:
  96458. 2010-06-13 Noam Rosenthal <noam.rosenthal@nokia.com>
  96459. Reviewed by Eric Seidel.
  96460. [Qt] GraphicsLayer: recaching images creates an unnecessary deep copy
  96461. https://bugs.webkit.org/show_bug.cgi?id=40535
  96462. Made sure the painter ends its operation before copying the pixmap.
  96463. No new tests: this is an optimization.
  96464. * platform/graphics/qt/GraphicsLayerQt.cpp:
  96465. (WebCore::GraphicsLayerQtImpl::recache):
  96466. 2010-06-13 Clemmitt Sigler <cmsigler@gmail.com>
  96467. Reviewed by Eric Seidel.
  96468. Patch to fix missing references to RenderMathMLRoot,
  96469. RenderMathMLSquareRoot when building GtkLauncher.
  96470. https://bugs.webkit.org/show_bug.cgi?id=40326
  96471. No change in functionality so no new tests.
  96472. * GNUmakefile.am:
  96473. 2010-06-12 Brian Weinstein <bweinstein@apple.com>
  96474. Reviewed by Dan Bernstein.
  96475. https://bugs.webkit.org/show_bug.cgi?id=40538
  96476. Some machines have started to see the return of the dreaded: WebCore.lib : fatal error LNK1106: invalid
  96477. file or disk full. Since we don't have the hotfix for VS2005, work around this in the meantime
  96478. by creating an EditingAllInOne file, that includes all of the cpp files in the editing subdirectory.
  96479. * WebCore.vcproj/WebCore.vcproj: Prevnt the editing cpp from building, so we only compile EditingAllInOne.
  96480. * editing/EditingAllInOne.cpp: Added. Includes all of the editing cpp files.
  96481. 2010-06-12 Sheriff Bot <webkit.review.bot@gmail.com>
  96482. Unreviewed, rolling out r61031.
  96483. http://trac.webkit.org/changeset/61031
  96484. https://bugs.webkit.org/show_bug.cgi?id=40539
  96485. Crashes Dromaeo jslib test in Release Chromium (Requested by
  96486. dimich_ on #webkit).
  96487. * bindings/v8/V8Binding.cpp:
  96488. (WebCore::v8ExternalString):
  96489. * bindings/v8/V8Binding.h:
  96490. 2010-06-12 Eric Seidel <eric@webkit.org>
  96491. Reviewed by Adam Barth.
  96492. Rename the last few *Tokenizer classes (which don't have their own files) to *DocumentParser
  96493. https://bugs.webkit.org/show_bug.cgi?id=40508
  96494. This was a very simple do-webcore-rename-generated patch.
  96495. PluginTokenizer => PluginDocumentParser
  96496. TextTokenizer => TextDocumentParser
  96497. SinkTokenizer => SinkDocumentParser
  96498. MediaTokenizer => MediaDocumentParser
  96499. FTPDirectoryTokenizer => FTPDirectoryDocumentParser
  96500. No functional changes, thus no tests.
  96501. * html/HTMLViewSourceDocument.cpp:
  96502. (WebCore::HTMLViewSourceDocument::createTokenizer):
  96503. * html/HTMLViewSourceDocument.h:
  96504. * loader/FTPDirectoryDocument.cpp:
  96505. (WebCore::FTPDirectoryDocumentParser::FTPDirectoryDocumentParser):
  96506. (WebCore::FTPDirectoryDocumentParser::appendEntry):
  96507. (WebCore::FTPDirectoryDocumentParser::createTDForFilename):
  96508. (WebCore::FTPDirectoryDocumentParser::parseAndAppendOneLine):
  96509. (WebCore::FTPDirectoryDocumentParser::loadDocumentTemplate):
  96510. (WebCore::FTPDirectoryDocumentParser::createBasicDocument):
  96511. (WebCore::FTPDirectoryDocumentParser::write):
  96512. (WebCore::FTPDirectoryDocumentParser::finish):
  96513. (WebCore::FTPDirectoryDocument::createTokenizer):
  96514. * loader/MediaDocument.cpp:
  96515. (WebCore::MediaDocumentParser::MediaDocumentParser):
  96516. (WebCore::MediaDocumentParser::write):
  96517. (WebCore::MediaDocumentParser::createDocumentStructure):
  96518. (WebCore::MediaDocumentParser::writeRawData):
  96519. (WebCore::MediaDocumentParser::finish):
  96520. (WebCore::MediaDocumentParser::isWaitingForScripts):
  96521. (WebCore::MediaDocument::createTokenizer):
  96522. * loader/PluginDocument.cpp:
  96523. (WebCore::PluginDocumentParser::PluginDocumentParser):
  96524. (WebCore::PluginDocumentParser::pluginWidgetFromDocument):
  96525. (WebCore::PluginDocumentParser::write):
  96526. (WebCore::PluginDocumentParser::createDocumentStructure):
  96527. (WebCore::PluginDocumentParser::writeRawData):
  96528. (WebCore::PluginDocumentParser::finish):
  96529. (WebCore::PluginDocumentParser::isWaitingForScripts):
  96530. (WebCore::PluginDocument::createTokenizer):
  96531. (WebCore::PluginDocument::pluginWidget):
  96532. * loader/SinkDocument.cpp:
  96533. (WebCore::SinkDocumentParser::SinkDocumentParser):
  96534. (WebCore::SinkDocumentParser::finish):
  96535. (WebCore::SinkDocument::createTokenizer):
  96536. * loader/TextDocument.cpp:
  96537. (WebCore::TextDocumentParser::TextDocumentParser):
  96538. (WebCore::TextDocumentParser::~TextDocumentParser):
  96539. (WebCore::TextDocumentParser::write):
  96540. (WebCore::TextDocumentParser::finish):
  96541. (WebCore::TextDocumentParser::isWaitingForScripts):
  96542. (WebCore::TextDocument::createTokenizer):
  96543. (WebCore::createTextTokenizer):
  96544. 2010-06-12 Anders Bakken <agbakken@gmail.com>
  96545. Reviewed by Eric Seidel.
  96546. [Qt] EventHandlerQt.cpp has coding-style errors
  96547. https://bugs.webkit.org/show_bug.cgi?id=40259
  96548. Coding style change only.
  96549. * page/qt/EventHandlerQt.cpp:
  96550. (WebCore::EventHandler::eventActivatedView):
  96551. 2010-06-12 Kwang Yul Seo <skyul@company100.net>
  96552. Reviewed by Darin Adler.
  96553. Unify fileSystemRepresentation and filenameFromString
  96554. https://bugs.webkit.org/show_bug.cgi?id=40201
  96555. Remove filenameFromString and use fileSystemRepresentation instead
  96556. as they do the same job.
  96557. * platform/FileSystem.cpp: Removed.
  96558. * platform/FileSystem.h:
  96559. * platform/efl/FileSystemEfl.cpp:
  96560. (WebCore::fileSystemRepresentation):
  96561. * platform/gtk/FileChooserGtk.cpp:
  96562. (WebCore::FileChooser::basenameForWidth):
  96563. * platform/gtk/FileSystemGtk.cpp:
  96564. (WebCore::fileSystemRepresentation):
  96565. (WebCore::filenameForDisplay):
  96566. (WebCore::fileExists):
  96567. (WebCore::deleteFile):
  96568. (WebCore::deleteEmptyDirectory):
  96569. (WebCore::getFileSize):
  96570. (WebCore::getFileModificationTime):
  96571. (WebCore::makeAllDirectories):
  96572. (WebCore::pathGetFileName):
  96573. (WebCore::directoryName):
  96574. (WebCore::listDirectory):
  96575. * platform/gtk/SharedBufferGtk.cpp:
  96576. (WebCore::SharedBuffer::createWithContentsOfFile):
  96577. * platform/network/soup/ResourceHandleSoup.cpp:
  96578. (WebCore::startHttp):
  96579. * platform/posix/SharedBufferPOSIX.cpp:
  96580. (WebCore::SharedBuffer::createWithContentsOfFile):
  96581. 2010-06-12 Patrick Gansterer <paroga@paroga.com>
  96582. Reviewed by Eric Seidel.
  96583. [Haiku] Cleanup SharedBuffer::createWithContentsOfFile
  96584. https://bugs.webkit.org/show_bug.cgi?id=39003
  96585. * platform/haiku/SharedBufferHaiku.cpp:
  96586. (WebCore::SharedBuffer::createWithContentsOfFile):
  96587. 2010-06-12 Anders Bakken <agbakken@gmail.com>
  96588. Reviewed by Eric Seidel.
  96589. [Qt] WheelEventQt.cpp has coding-style errors
  96590. https://bugs.webkit.org/show_bug.cgi?id=39760
  96591. * platform/qt/WheelEventQt.cpp:
  96592. (WebCore::PlatformWheelEvent::PlatformWheelEvent):
  96593. 2010-06-12 Kwang Yul Seo <skyul@company100.net>
  96594. Reviewed by Kent Tamura.
  96595. [BREWMP] Don't include POSIX headers in WebCorePrefix.h
  96596. https://bugs.webkit.org/show_bug.cgi?id=39411
  96597. When building for BREW MP, don't include POSIX headers:
  96598. <fcntl.h>, <pthread.h> and <sys/types.h>.
  96599. * WebCorePrefix.h:
  96600. 2010-06-11 Eric Seidel <eric@webkit.org>
  96601. Reviewed by Adam Barth.
  96602. Rename the rest of the *Tokenizer classes to *DocumentParser
  96603. https://bugs.webkit.org/show_bug.cgi?id=40507
  96604. This search/replace was done by do-webcore-rename.
  96605. Just looking for a rubber stamp.
  96606. XMLTokenizer => XMLDocumentParser
  96607. XMLTokenizerLibxml2 => XMLDocumentParserLibxml2
  96608. XMLTokenizerQt => XMLDocumentParserQt
  96609. XMLTokenizerScope => XMLDocumentParserScope
  96610. HTML5Tokenizer => HTML5DocumentParser
  96611. HTMLTokenizer => HTMLDocumentParser
  96612. No functional change, thus no tests.
  96613. * Android.mk:
  96614. * CMakeLists.txt:
  96615. * GNUmakefile.am:
  96616. * WebCore.gypi:
  96617. * WebCore.pro:
  96618. * WebCore.vcproj/WebCore.vcproj:
  96619. * WebCore.xcodeproj/project.pbxproj:
  96620. * css/CSSStyleSheet.cpp:
  96621. (WebCore::CSSStyleSheet::checkLoaded):
  96622. * dom/Document.cpp:
  96623. (WebCore::Document::createTokenizer):
  96624. (WebCore::Document::write):
  96625. * dom/Document.h:
  96626. (WebCore::Document::setXMLEncoding):
  96627. * dom/DocumentParser.h:
  96628. (WebCore::DocumentParser::asHTMLTokenizer):
  96629. * dom/Element.cpp:
  96630. * dom/ProcessingInstruction.cpp:
  96631. * dom/XMLDocumentParser.cpp: Added.
  96632. (WebCore::XMLDocumentParser::isWMLDocument):
  96633. (WebCore::XMLDocumentParser::pushCurrentNode):
  96634. (WebCore::XMLDocumentParser::popCurrentNode):
  96635. (WebCore::XMLDocumentParser::clearCurrentNodeStack):
  96636. (WebCore::XMLDocumentParser::write):
  96637. (WebCore::XMLDocumentParser::handleError):
  96638. (WebCore::XMLDocumentParser::enterText):
  96639. (WebCore::toString):
  96640. (WebCore::XMLDocumentParser::exitText):
  96641. (WebCore::XMLDocumentParser::end):
  96642. (WebCore::XMLDocumentParser::finish):
  96643. (WebCore::createXHTMLParserErrorHeader):
  96644. (WebCore::XMLDocumentParser::insertErrorMessageBlock):
  96645. (WebCore::XMLDocumentParser::notifyFinished):
  96646. (WebCore::XMLDocumentParser::isWaitingForScripts):
  96647. (WebCore::XMLDocumentParser::pauseParsing):
  96648. * dom/XMLDocumentParser.h: Added.
  96649. (WebCore::XMLParserContext::context):
  96650. (WebCore::XMLParserContext::XMLParserContext):
  96651. (WebCore::XMLDocumentParser::):
  96652. (WebCore::XMLDocumentParser::setIsXHTMLDocument):
  96653. (WebCore::XMLDocumentParser::isXHTMLDocument):
  96654. (WebCore::XMLDocumentParser::setIsXHTMLMPDocument):
  96655. (WebCore::XMLDocumentParser::isXHTMLMPDocument):
  96656. (WebCore::XMLDocumentParser::wellFormed):
  96657. (WebCore::XMLDocumentParser::context):
  96658. * dom/XMLDocumentParserLibxml2.cpp: Added.
  96659. (WebCore::PendingCallbacks::~PendingCallbacks):
  96660. (WebCore::PendingCallbacks::appendStartElementNSCallback):
  96661. (WebCore::PendingCallbacks::appendEndElementNSCallback):
  96662. (WebCore::PendingCallbacks::appendCharactersCallback):
  96663. (WebCore::PendingCallbacks::appendProcessingInstructionCallback):
  96664. (WebCore::PendingCallbacks::appendCDATABlockCallback):
  96665. (WebCore::PendingCallbacks::appendCommentCallback):
  96666. (WebCore::PendingCallbacks::appendInternalSubsetCallback):
  96667. (WebCore::PendingCallbacks::appendErrorCallback):
  96668. (WebCore::PendingCallbacks::callAndRemoveFirstCallback):
  96669. (WebCore::PendingCallbacks::isEmpty):
  96670. (WebCore::PendingCallbacks::PendingCallback::~PendingCallback):
  96671. (WebCore::PendingCallbacks::PendingStartElementNSCallback::~PendingStartElementNSCallback):
  96672. (WebCore::PendingCallbacks::PendingStartElementNSCallback::call):
  96673. (WebCore::PendingCallbacks::PendingEndElementNSCallback::call):
  96674. (WebCore::PendingCallbacks::PendingCharactersCallback::~PendingCharactersCallback):
  96675. (WebCore::PendingCallbacks::PendingCharactersCallback::call):
  96676. (WebCore::PendingCallbacks::PendingProcessingInstructionCallback::~PendingProcessingInstructionCallback):
  96677. (WebCore::PendingCallbacks::PendingProcessingInstructionCallback::call):
  96678. (WebCore::PendingCallbacks::PendingCDATABlockCallback::~PendingCDATABlockCallback):
  96679. (WebCore::PendingCallbacks::PendingCDATABlockCallback::call):
  96680. (WebCore::PendingCallbacks::PendingCommentCallback::~PendingCommentCallback):
  96681. (WebCore::PendingCallbacks::PendingCommentCallback::call):
  96682. (WebCore::PendingCallbacks::PendingInternalSubsetCallback::~PendingInternalSubsetCallback):
  96683. (WebCore::PendingCallbacks::PendingInternalSubsetCallback::call):
  96684. (WebCore::PendingCallbacks::):
  96685. (WebCore::matchFunc):
  96686. (WebCore::OffsetBuffer::OffsetBuffer):
  96687. (WebCore::OffsetBuffer::readOutBytes):
  96688. (WebCore::shouldAllowExternalLoad):
  96689. (WebCore::openFunc):
  96690. (WebCore::readFunc):
  96691. (WebCore::writeFunc):
  96692. (WebCore::closeFunc):
  96693. (WebCore::errorFunc):
  96694. (WebCore::XMLParserContext::createStringParser):
  96695. (WebCore::XMLParserContext::createMemoryParser):
  96696. (WebCore::XMLDocumentParser::XMLDocumentParser):
  96697. (WebCore::XMLParserContext::~XMLParserContext):
  96698. (WebCore::XMLDocumentParser::~XMLDocumentParser):
  96699. (WebCore::XMLDocumentParser::doWrite):
  96700. (WebCore::toString):
  96701. (WebCore::handleElementNamespaces):
  96702. (WebCore::handleElementAttributes):
  96703. (WebCore::XMLDocumentParser::startElementNs):
  96704. (WebCore::XMLDocumentParser::endElementNs):
  96705. (WebCore::XMLDocumentParser::characters):
  96706. (WebCore::XMLDocumentParser::error):
  96707. (WebCore::XMLDocumentParser::processingInstruction):
  96708. (WebCore::XMLDocumentParser::cdataBlock):
  96709. (WebCore::XMLDocumentParser::comment):
  96710. (WebCore::XMLDocumentParser::startDocument):
  96711. (WebCore::XMLDocumentParser::endDocument):
  96712. (WebCore::XMLDocumentParser::internalSubset):
  96713. (WebCore::getTokenizer):
  96714. (WebCore::hackAroundLibXMLEntityBug):
  96715. (WebCore::startElementNsHandler):
  96716. (WebCore::endElementNsHandler):
  96717. (WebCore::charactersHandler):
  96718. (WebCore::processingInstructionHandler):
  96719. (WebCore::cdataBlockHandler):
  96720. (WebCore::commentHandler):
  96721. (WebCore::warningHandler):
  96722. (WebCore::fatalErrorHandler):
  96723. (WebCore::normalErrorHandler):
  96724. (WebCore::):
  96725. (WebCore::sharedXHTMLEntity):
  96726. (WebCore::getXHTMLEntity):
  96727. (WebCore::getEntityHandler):
  96728. (WebCore::startDocumentHandler):
  96729. (WebCore::endDocumentHandler):
  96730. (WebCore::internalSubsetHandler):
  96731. (WebCore::externalSubsetHandler):
  96732. (WebCore::ignorableWhitespaceHandler):
  96733. (WebCore::XMLDocumentParser::initializeParserContext):
  96734. (WebCore::XMLDocumentParser::doEnd):
  96735. (WebCore::xmlDocPtrForString):
  96736. (WebCore::XMLDocumentParser::lineNumber):
  96737. (WebCore::XMLDocumentParser::columnNumber):
  96738. (WebCore::XMLDocumentParser::stopParsing):
  96739. (WebCore::XMLDocumentParser::resumeParsing):
  96740. (WebCore::parseXMLDocumentFragment):
  96741. (WebCore::attributesStartElementNsHandler):
  96742. (WebCore::parseAttributes):
  96743. * dom/XMLDocumentParserQt.cpp: Added.
  96744. (WebCore::EntityResolver::resolveUndeclaredEntity):
  96745. (WebCore::XMLDocumentParser::XMLDocumentParser):
  96746. (WebCore::XMLDocumentParser::~XMLDocumentParser):
  96747. (WebCore::XMLDocumentParser::doWrite):
  96748. (WebCore::XMLDocumentParser::initializeParserContext):
  96749. (WebCore::XMLDocumentParser::doEnd):
  96750. (WebCore::XMLDocumentParser::lineNumber):
  96751. (WebCore::XMLDocumentParser::columnNumber):
  96752. (WebCore::XMLDocumentParser::stopParsing):
  96753. (WebCore::XMLDocumentParser::resumeParsing):
  96754. (WebCore::parseXMLDocumentFragment):
  96755. (WebCore::attributesStartElementNsHandler):
  96756. (WebCore::parseAttributes):
  96757. (WebCore::prefixFromQName):
  96758. (WebCore::handleElementNamespaces):
  96759. (WebCore::handleElementAttributes):
  96760. (WebCore::XMLDocumentParser::parse):
  96761. (WebCore::XMLDocumentParser::startDocument):
  96762. (WebCore::XMLDocumentParser::parseStartElement):
  96763. (WebCore::XMLDocumentParser::parseEndElement):
  96764. (WebCore::XMLDocumentParser::parseCharacters):
  96765. (WebCore::XMLDocumentParser::parseProcessingInstruction):
  96766. (WebCore::XMLDocumentParser::parseCdata):
  96767. (WebCore::XMLDocumentParser::parseComment):
  96768. (WebCore::XMLDocumentParser::endDocument):
  96769. (WebCore::XMLDocumentParser::hasError):
  96770. (WebCore::XMLDocumentParser::parseDtd):
  96771. * dom/XMLDocumentParserScope.cpp: Added.
  96772. (WebCore::XMLDocumentParserScope::XMLDocumentParserScope):
  96773. (WebCore::XMLDocumentParserScope::~XMLDocumentParserScope):
  96774. * dom/XMLDocumentParserScope.h: Added.
  96775. * dom/XMLTokenizer.cpp: Removed.
  96776. * dom/XMLTokenizer.h: Removed.
  96777. * dom/XMLTokenizerLibxml2.cpp: Removed.
  96778. * dom/XMLTokenizerQt.cpp: Removed.
  96779. * dom/XMLTokenizerScope.cpp: Removed.
  96780. * dom/XMLTokenizerScope.h: Removed.
  96781. * html/HTML5DocumentParser.cpp: Added.
  96782. (WebCore::):
  96783. (WebCore::HTML5DocumentParser::HTML5DocumentParser):
  96784. (WebCore::HTML5DocumentParser::~HTML5DocumentParser):
  96785. (WebCore::HTML5DocumentParser::begin):
  96786. (WebCore::HTML5DocumentParser::pumpLexerIfPossible):
  96787. (WebCore::HTML5DocumentParser::pumpLexer):
  96788. (WebCore::HTML5DocumentParser::write):
  96789. (WebCore::HTML5DocumentParser::end):
  96790. (WebCore::HTML5DocumentParser::attemptToEnd):
  96791. (WebCore::HTML5DocumentParser::endIfDelayed):
  96792. (WebCore::HTML5DocumentParser::finish):
  96793. (WebCore::HTML5DocumentParser::executingScript):
  96794. (WebCore::HTML5DocumentParser::lineNumber):
  96795. (WebCore::HTML5DocumentParser::columnNumber):
  96796. (WebCore::HTML5DocumentParser::htmlParser):
  96797. (WebCore::HTML5DocumentParser::isWaitingForScripts):
  96798. (WebCore::HTML5DocumentParser::resumeParsingAfterScriptExecution):
  96799. (WebCore::HTML5DocumentParser::watchForLoad):
  96800. (WebCore::HTML5DocumentParser::stopWatchingForLoad):
  96801. (WebCore::HTML5DocumentParser::shouldLoadExternalScriptFromSrc):
  96802. (WebCore::HTML5DocumentParser::executeScript):
  96803. (WebCore::HTML5DocumentParser::notifyFinished):
  96804. (WebCore::HTML5DocumentParser::executeScriptsWaitingForStylesheets):
  96805. (WebCore::HTML5DocumentParser::script):
  96806. * html/HTML5DocumentParser.h: Added.
  96807. (WebCore::HTML5DocumentParser::InputStream::InputStream):
  96808. (WebCore::HTML5DocumentParser::InputStream::appendToEnd):
  96809. (WebCore::HTML5DocumentParser::InputStream::insertAtCurrentInsertionPoint):
  96810. (WebCore::HTML5DocumentParser::InputStream::close):
  96811. (WebCore::HTML5DocumentParser::InputStream::current):
  96812. (WebCore::HTML5DocumentParser::InputStream::splitInto):
  96813. (WebCore::HTML5DocumentParser::InputStream::mergeFrom):
  96814. (WebCore::HTML5DocumentParser::InsertionPointRecord::InsertionPointRecord):
  96815. (WebCore::HTML5DocumentParser::InsertionPointRecord::~InsertionPointRecord):
  96816. (WebCore::HTML5DocumentParser::inWrite):
  96817. * html/HTML5Lexer.h:
  96818. (WebCore::HTML5Lexer::columnNumber):
  96819. * html/HTML5Tokenizer.cpp: Removed.
  96820. * html/HTML5Tokenizer.h: Removed.
  96821. * html/HTML5TreeBuilder.cpp:
  96822. * html/HTMLDocument.cpp:
  96823. (WebCore::HTMLDocument::createTokenizer):
  96824. * html/HTMLDocumentParser.cpp: Added.
  96825. (WebCore::):
  96826. (WebCore::fixUpChar):
  96827. (WebCore::tagMatch):
  96828. (WebCore::Token::addAttribute):
  96829. (WebCore::HTMLDocumentParser::HTMLDocumentParser):
  96830. (WebCore::HTMLDocumentParser::reset):
  96831. (WebCore::HTMLDocumentParser::begin):
  96832. (WebCore::HTMLDocumentParser::setForceSynchronous):
  96833. (WebCore::HTMLDocumentParser::processListing):
  96834. (WebCore::HTMLDocumentParser::parseNonHTMLText):
  96835. (WebCore::HTMLDocumentParser::scriptHandler):
  96836. (WebCore::HTMLDocumentParser::scriptExecution):
  96837. (WebCore::HTMLDocumentParser::parseComment):
  96838. (WebCore::HTMLDocumentParser::parseServer):
  96839. (WebCore::HTMLDocumentParser::parseProcessingInstruction):
  96840. (WebCore::HTMLDocumentParser::parseText):
  96841. (WebCore::HTMLDocumentParser::parseEntity):
  96842. (WebCore::HTMLDocumentParser::parseDoctype):
  96843. (WebCore::HTMLDocumentParser::parseTag):
  96844. (WebCore::HTMLDocumentParser::continueProcessing):
  96845. (WebCore::HTMLDocumentParser::advance):
  96846. (WebCore::HTMLDocumentParser::willWriteHTML):
  96847. (WebCore::HTMLDocumentParser::didWriteHTML):
  96848. (WebCore::HTMLDocumentParser::write):
  96849. (WebCore::HTMLDocumentParser::stopParsing):
  96850. (WebCore::HTMLDocumentParser::processingData):
  96851. (WebCore::HTMLDocumentParser::timerFired):
  96852. (WebCore::HTMLDocumentParser::end):
  96853. (WebCore::HTMLDocumentParser::finish):
  96854. (WebCore::HTMLDocumentParser::processToken):
  96855. (WebCore::HTMLDocumentParser::processDoctypeToken):
  96856. (WebCore::HTMLDocumentParser::~HTMLDocumentParser):
  96857. (WebCore::HTMLDocumentParser::enlargeBuffer):
  96858. (WebCore::HTMLDocumentParser::enlargeScriptBuffer):
  96859. (WebCore::HTMLDocumentParser::executeScriptsWaitingForStylesheets):
  96860. (WebCore::HTMLDocumentParser::notifyFinished):
  96861. (WebCore::HTMLDocumentParser::executeExternalScriptsIfReady):
  96862. (WebCore::HTMLDocumentParser::executeExternalScriptsTimerFired):
  96863. (WebCore::HTMLDocumentParser::continueExecutingExternalScripts):
  96864. (WebCore::HTMLDocumentParser::isWaitingForScripts):
  96865. (WebCore::HTMLDocumentParser::setSrc):
  96866. (WebCore::parseHTMLDocumentFragment):
  96867. (WebCore::decodeNamedEntity):
  96868. * html/HTMLDocumentParser.h: Added.
  96869. (WebCore::Token::Token):
  96870. (WebCore::Token::~Token):
  96871. (WebCore::Token::isOpenTag):
  96872. (WebCore::Token::isCloseTag):
  96873. (WebCore::Token::reset):
  96874. (WebCore::Token::addViewSourceChar):
  96875. (WebCore::):
  96876. (WebCore::DoctypeToken::DoctypeToken):
  96877. (WebCore::DoctypeToken::reset):
  96878. (WebCore::DoctypeToken::state):
  96879. (WebCore::DoctypeToken::setState):
  96880. (WebCore::HTMLDocumentParser::forceSynchronous):
  96881. (WebCore::HTMLDocumentParser::executingScript):
  96882. (WebCore::HTMLDocumentParser::lineNumber):
  96883. (WebCore::HTMLDocumentParser::columnNumber):
  96884. (WebCore::HTMLDocumentParser::processingContentWrittenByScript):
  96885. (WebCore::HTMLDocumentParser::htmlParser):
  96886. (WebCore::HTMLDocumentParser::asHTMLTokenizer):
  96887. (WebCore::HTMLDocumentParser::checkBuffer):
  96888. (WebCore::HTMLDocumentParser::checkScriptBuffer):
  96889. (WebCore::HTMLDocumentParser::):
  96890. (WebCore::HTMLDocumentParser::State::State):
  96891. (WebCore::HTMLDocumentParser::State::tagState):
  96892. (WebCore::HTMLDocumentParser::State::setTagState):
  96893. (WebCore::HTMLDocumentParser::State::entityState):
  96894. (WebCore::HTMLDocumentParser::State::setEntityState):
  96895. (WebCore::HTMLDocumentParser::State::inScript):
  96896. (WebCore::HTMLDocumentParser::State::setInScript):
  96897. (WebCore::HTMLDocumentParser::State::inStyle):
  96898. (WebCore::HTMLDocumentParser::State::setInStyle):
  96899. (WebCore::HTMLDocumentParser::State::inXmp):
  96900. (WebCore::HTMLDocumentParser::State::setInXmp):
  96901. (WebCore::HTMLDocumentParser::State::inTitle):
  96902. (WebCore::HTMLDocumentParser::State::setInTitle):
  96903. (WebCore::HTMLDocumentParser::State::inIFrame):
  96904. (WebCore::HTMLDocumentParser::State::setInIFrame):
  96905. (WebCore::HTMLDocumentParser::State::inPlainText):
  96906. (WebCore::HTMLDocumentParser::State::setInPlainText):
  96907. (WebCore::HTMLDocumentParser::State::inProcessingInstruction):
  96908. (WebCore::HTMLDocumentParser::State::setInProcessingInstruction):
  96909. (WebCore::HTMLDocumentParser::State::inComment):
  96910. (WebCore::HTMLDocumentParser::State::setInComment):
  96911. (WebCore::HTMLDocumentParser::State::inDoctype):
  96912. (WebCore::HTMLDocumentParser::State::setInDoctype):
  96913. (WebCore::HTMLDocumentParser::State::inTextArea):
  96914. (WebCore::HTMLDocumentParser::State::setInTextArea):
  96915. (WebCore::HTMLDocumentParser::State::escaped):
  96916. (WebCore::HTMLDocumentParser::State::setEscaped):
  96917. (WebCore::HTMLDocumentParser::State::inServer):
  96918. (WebCore::HTMLDocumentParser::State::setInServer):
  96919. (WebCore::HTMLDocumentParser::State::skipLF):
  96920. (WebCore::HTMLDocumentParser::State::setSkipLF):
  96921. (WebCore::HTMLDocumentParser::State::startTag):
  96922. (WebCore::HTMLDocumentParser::State::setStartTag):
  96923. (WebCore::HTMLDocumentParser::State::discardLF):
  96924. (WebCore::HTMLDocumentParser::State::setDiscardLF):
  96925. (WebCore::HTMLDocumentParser::State::allowYield):
  96926. (WebCore::HTMLDocumentParser::State::setAllowYield):
  96927. (WebCore::HTMLDocumentParser::State::loadingExtScript):
  96928. (WebCore::HTMLDocumentParser::State::setLoadingExtScript):
  96929. (WebCore::HTMLDocumentParser::State::forceSynchronous):
  96930. (WebCore::HTMLDocumentParser::State::setForceSynchronous):
  96931. (WebCore::HTMLDocumentParser::State::inAnyNonHTMLText):
  96932. (WebCore::HTMLDocumentParser::State::hasTagState):
  96933. (WebCore::HTMLDocumentParser::State::hasEntityState):
  96934. (WebCore::HTMLDocumentParser::State::needsSpecialWriteHandling):
  96935. (WebCore::HTMLDocumentParser::State::):
  96936. (WebCore::HTMLDocumentParser::State::setBit):
  96937. (WebCore::HTMLDocumentParser::State::testBit):
  96938. * html/HTMLElement.cpp:
  96939. * html/HTMLFormControlElement.cpp:
  96940. * html/HTMLParser.cpp:
  96941. (WebCore::HTMLParser::reportErrorToConsole):
  96942. * html/HTMLParser.h:
  96943. * html/HTMLTokenizer.cpp: Removed.
  96944. * html/HTMLTokenizer.h: Removed.
  96945. * html/HTMLViewSourceDocument.cpp:
  96946. (WebCore::HTMLViewSourceDocument::createTokenizer):
  96947. (WebCore::HTMLViewSourceDocument::addViewSourceToken):
  96948. * html/HTMLViewSourceDocument.h:
  96949. * loader/DocumentLoader.cpp:
  96950. * loader/FTPDirectoryDocument.cpp:
  96951. (WebCore::FTPDirectoryTokenizer::FTPDirectoryTokenizer):
  96952. (WebCore::FTPDirectoryTokenizer::loadDocumentTemplate):
  96953. (WebCore::FTPDirectoryTokenizer::finish):
  96954. * loader/FrameLoader.cpp:
  96955. * loader/ImageDocument.cpp:
  96956. * loader/MediaDocument.cpp:
  96957. * loader/PluginDocument.cpp:
  96958. * loader/TextDocument.cpp:
  96959. * page/XSSAuditor.h:
  96960. * svg/SVGDocumentExtensions.cpp:
  96961. * wml/WMLErrorHandling.cpp:
  96962. (WebCore::reportWMLError):
  96963. * xml/XSLStyleSheetLibxslt.cpp:
  96964. (WebCore::XSLStyleSheet::parseString):
  96965. * xml/XSLTProcessor.cpp:
  96966. * xml/XSLTProcessorLibxslt.cpp:
  96967. 2010-06-12 Andreas Kling <andreas.kling@nokia.com>
  96968. Reviewed by Darin Adler.
  96969. Window object should have CanvasGradient and CanvasPattern
  96970. https://bugs.webkit.org/show_bug.cgi?id=40394
  96971. This fixes the following tests:
  96972. - canvas/philip/tests/2d.gradient.object.return.html
  96973. - canvas/philip/tests/2d.pattern.basic.type.html
  96974. * html/canvas/CanvasGradient.idl:
  96975. * html/canvas/CanvasPattern.idl:
  96976. * page/DOMWindow.idl:
  96977. 2010-06-12 Dan Bernstein <mitz@apple.com>
  96978. Reviewed by Oliver Hunt.
  96979. <rdar://problem/8025267> REGRESSION (Safari 4-TOT): Crash when a frame’s resize handler removes the frame
  96980. https://bugs.webkit.org/show_bug.cgi?id=40534
  96981. Test: fast/replaced/frame-removed-during-resize.html
  96982. * rendering/RenderWidget.cpp:
  96983. (WebCore::RenderWidget::updateWidgetPosition): Null-check m_widget, since resizing the widget
  96984. may trigger an iframe’s resize handler, which may destroy the widget.
  96985. 2010-06-12 Dean Jackson <dino@apple.com>
  96986. Reviewed by Darin Adler.
  96987. Animation keyframe timing functions are applying incorrectly
  96988. https://bugs.webkit.org/show_bug.cgi?id=38963
  96989. When copying RenderStyles, we have to clone the AnimationList so that each keyframe
  96990. can have its own timing function.
  96991. Tests: animations/keyframe-timing-functions-transform.html
  96992. animations/keyframe-timing-functions2.html
  96993. * platform/animation/Animation.h:
  96994. (WebCore::Animation::create):
  96995. * platform/animation/AnimationList.cpp:
  96996. (WebCore::AnimationList::AnimationList):
  96997. * platform/animation/AnimationList.h:
  96998. (WebCore::AnimationList::AnimationList):
  96999. 2010-06-12 Dan Bernstein <mitz@apple.com>
  97000. Reviewed by Dave Hyatt.
  97001. <rdar://problem/7882140> -webkit-column-break-* properties don’t do anything
  97002. https://bugs.webkit.org/show_bug.cgi?id=40531
  97003. Test: fast/multicol/break-properties.html
  97004. * rendering/RenderBlock.cpp:
  97005. (WebCore::RenderBlock::paintChildren): Check for -webkit-column-break-{before,after}: always
  97006. and -webkit-column-break-inside: avoid when doing column layout.
  97007. 2010-06-13 Robert Hogan <robert@webkit.org>
  97008. Reviewed by Alexey Proskuryakov.
  97009. FrameLoader::clear() clears JS objects that cached pages later rely on
  97010. https://bugs.webkit.org/show_bug.cgi?id=37725
  97011. https://bugs.webkit.org/show_bug.cgi?id=31626
  97012. Fix the following tests for Qt:
  97013. fast/events/pageshow-pagehide-on-back-cached.html
  97014. fast/events/pageshow-pagehide-on-back-cached-with-frames.html
  97015. fast/loader/input-element-page-cache-crash.html
  97016. fast/dom/Window/timer-resume-on-navigation-back.html
  97017. loader/go-back-to-different-window-size.html
  97018. fast/dom/javascript-url-crash-function.html
  97019. fast/dom/location-new-window-no-crash.html
  97020. http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-window-open.html
  97021. which currently fail because the page's Qt-bindings runtime objects are
  97022. cleared when navigating away from the page containing them.
  97023. Track Qt-bindings objects in a separate ScriptController::cacheableRootBindingObject().
  97024. RuntimeObjects tracked by this root object will not get invalidated on page navigations,
  97025. so they will still be available when the pages containing them are retrieved from the
  97026. b/f cache.
  97027. This means the Qt bindings objects will only get cleared on Frame::pageDestroyed().
  97028. * bindings/js/ScriptController.cpp:
  97029. (WebCore::ScriptController::~ScriptController):
  97030. (WebCore::ScriptController::cacheableBindingRootObject):
  97031. * bindings/js/ScriptController.h:
  97032. 2010-06-12 Kent Tamura <tkent@chromium.org>
  97033. Reviewed by Darin Adler.
  97034. REGRESSION: Can't submit a form with <input type=radio required>
  97035. https://bugs.webkit.org/show_bug.cgi?id=40429
  97036. Validity state was not updated correctly for radio buttons, and it
  97037. prevents form submission even if a radio button group has a
  97038. checked radio button.
  97039. Test: fast/forms/interactive-validation-required-radio.html
  97040. * html/HTMLInputElement.cpp:
  97041. (WebCore::HTMLInputElement::updateCheckedRadioButtons):
  97042. Call setNeedsValidityCheck() for all of radio buttons in the same group
  97043. to update validity state.
  97044. (WebCore::HTMLInputElement::setChecked):
  97045. Remove setNeedsValidityCheck() call because it is called in
  97046. updateCheckedRadioButtons().
  97047. 2010-06-12 Kent Tamura <tkent@chromium.org>
  97048. Reviewed by Dimitri Glazkov.
  97049. Disable interactive form validation in non-strict modes
  97050. https://bugs.webkit.org/show_bug.cgi?id=40218
  97051. The interactive validation feature of HTML5 is not compatible with
  97052. HTML4, and users and page authors don't expect existing sites work
  97053. differently in WebKit. For example, maxlength and required attributes
  97054. in existing sites unexpectedly prevented form submission.
  97055. So, we disable the interactive validation feature in non-strict
  97056. modes to improve compatibility.
  97057. Test: fast/forms/interactive-validation-compat-mode.html
  97058. fast/forms/interactive-validation-html4.html
  97059. * html/HTMLFormElement.cpp:
  97060. (WebCore::HTMLFormElement::validateInteractively):
  97061. Process interactive validation only in the strict mode.
  97062. 2010-06-12 Eric Seidel <eric@webkit.org>
  97063. Reviewed by David Levin.
  97064. Rename Tokenizer to DocumentParser to match what it actually does
  97065. https://bugs.webkit.org/show_bug.cgi?id=40504
  97066. The rename was entirely done by do-webcore-rename.
  97067. The only manual changes were removing out-dated comments
  97068. and fixing Tokenizer_h to DocumentParser_h in the header guards.
  97069. I'll do all the rest of the renames (like the tokenizer subclasses
  97070. and the tokenizer() createTokenizer() methods) in separate changes.
  97071. No functional change, thus no tests.
  97072. * GNUmakefile.am:
  97073. * WebCore.gypi:
  97074. * WebCore.vcproj/WebCore.vcproj:
  97075. * WebCore.xcodeproj/project.pbxproj:
  97076. * bindings/js/JSHTMLDocumentCustom.cpp:
  97077. * bindings/v8/ScriptEventListener.cpp:
  97078. * dom/Document.cpp:
  97079. (WebCore::Document::createTokenizer):
  97080. * dom/Document.h:
  97081. (WebCore::Document::tokenizer):
  97082. * dom/DocumentParser.h: Added.
  97083. (WebCore::DocumentParser::~DocumentParser):
  97084. (WebCore::DocumentParser::stopParsing):
  97085. (WebCore::DocumentParser::processingData):
  97086. (WebCore::DocumentParser::executingScript):
  97087. (WebCore::DocumentParser::wantsRawData):
  97088. (WebCore::DocumentParser::writeRawData):
  97089. (WebCore::DocumentParser::inViewSourceMode):
  97090. (WebCore::DocumentParser::setInViewSourceMode):
  97091. (WebCore::DocumentParser::wellFormed):
  97092. (WebCore::DocumentParser::lineNumber):
  97093. (WebCore::DocumentParser::columnNumber):
  97094. (WebCore::DocumentParser::executeScriptsWaitingForStylesheets):
  97095. (WebCore::DocumentParser::htmlParser):
  97096. (WebCore::DocumentParser::asHTMLTokenizer):
  97097. (WebCore::DocumentParser::xssAuditor):
  97098. (WebCore::DocumentParser::setXSSAuditor):
  97099. (WebCore::DocumentParser::DocumentParser):
  97100. * dom/Tokenizer.h: Removed.
  97101. * dom/ViewportArguments.cpp:
  97102. (WebCore::reportViewportWarning):
  97103. * dom/XMLTokenizer.h:
  97104. * dom/XMLTokenizerLibxml2.cpp:
  97105. (WebCore::XMLTokenizer::stopParsing):
  97106. * dom/XMLTokenizerQt.cpp:
  97107. (WebCore::XMLTokenizer::stopParsing):
  97108. * html/HTML5Tokenizer.cpp:
  97109. (WebCore::HTML5Tokenizer::HTML5Tokenizer):
  97110. * html/HTML5Tokenizer.h:
  97111. * html/HTMLDocument.cpp:
  97112. (WebCore::HTMLDocument::createTokenizer):
  97113. * html/HTMLDocument.h:
  97114. * html/HTMLFormControlElement.cpp:
  97115. (WebCore::HTMLFormControlElement::removedFromTree):
  97116. * html/HTMLTokenizer.cpp:
  97117. (WebCore::HTMLTokenizer::HTMLTokenizer):
  97118. (WebCore::HTMLTokenizer::stopParsing):
  97119. * html/HTMLTokenizer.h:
  97120. * html/HTMLViewSourceDocument.cpp:
  97121. (WebCore::HTMLViewSourceDocument::createTokenizer):
  97122. * html/HTMLViewSourceDocument.h:
  97123. * loader/DocumentLoader.cpp:
  97124. (WebCore::DocumentLoader::isLoadingInAPISense):
  97125. * loader/DocumentWriter.cpp:
  97126. (WebCore::DocumentWriter::addData):
  97127. * loader/FTPDirectoryDocument.cpp:
  97128. (WebCore::FTPDirectoryDocument::createTokenizer):
  97129. * loader/FTPDirectoryDocument.h:
  97130. * loader/ImageDocument.cpp:
  97131. (WebCore::ImageDocument::createTokenizer):
  97132. * loader/ImageDocument.h:
  97133. * loader/MediaDocument.cpp:
  97134. (WebCore::MediaDocument::createTokenizer):
  97135. * loader/MediaDocument.h:
  97136. * loader/PluginDocument.cpp:
  97137. (WebCore::PluginDocument::createTokenizer):
  97138. * loader/PluginDocument.h:
  97139. * loader/SinkDocument.cpp:
  97140. (WebCore::SinkDocument::createTokenizer):
  97141. * loader/SinkDocument.h:
  97142. * loader/TextDocument.cpp:
  97143. (WebCore::TextTokenizer::TextTokenizer):
  97144. (WebCore::TextDocument::createTokenizer):
  97145. (WebCore::createTextTokenizer):
  97146. * loader/TextDocument.h:
  97147. * wml/WMLDocument.cpp:
  97148. (WebCore::WMLDocument::finishedParsing):
  97149. 2010-06-12 Eric Seidel <eric@webkit.org>
  97150. Reviewed by Adam Barth.
  97151. HTML5Tokenizer needs to tell the InspectorTimelineAgent before and after it writes
  97152. https://bugs.webkit.org/show_bug.cgi?id=40417
  97153. This "fixes" inspector/timeline-script-tag-1.html. HTML5 results
  97154. differ from the old parser for expected reasons.
  97155. HTML5Tokenizer calls InspectorTimelineAgent::will/didWriteHTML every
  97156. time we pump the lexer instead of every write() call.
  97157. We end up pumping the lexer slightly more often than the old code called
  97158. write() in order to cleanly handle unclosed-entities, unclosed tags,
  97159. buffered characters, etc. at the end of a document.
  97160. I discussed this extensively with James Robinson in #webkit and we decided
  97161. that it was better for the HTML5Tokenizer to call for every pump and
  97162. that the Inspector should later filter out empty pumps.
  97163. We can't filter out empty pumps yet, because the number of parsed
  97164. characters is passed in willWrite instead of didWrite and thus is
  97165. speculative (and wrong). This is a problem independent of this change
  97166. as willWrite's "length" argument is wrong in different ways for the old
  97167. parser, including always being 0 when the old parser resumes.
  97168. Tested by inspector/timeline-script-tag-1.html
  97169. * html/HTML5Tokenizer.cpp:
  97170. (WebCore::HTML5Tokenizer::willPumpLexer):
  97171. - Notify the InspectorTimelineAgent we're about to process input.
  97172. (WebCore::HTML5Tokenizer::didPumpLexer):
  97173. - Notify the InspectorTimelineAgent we did process tokens.
  97174. (WebCore::HTML5Tokenizer::pumpLexer):
  97175. - Call willPump and didPump
  97176. * html/HTML5Tokenizer.h:
  97177. * inspector/InspectorTimelineAgent.h:
  97178. - Add a FIXME about passing length to didWrite instead of willWrite.
  97179. 2010-06-11 Sheriff Bot <webkit.review.bot@gmail.com>
  97180. Unreviewed, rolling out r61052.
  97181. http://trac.webkit.org/changeset/61052
  97182. https://bugs.webkit.org/show_bug.cgi?id=40517
  97183. "Broke fast/forms/caret-rtl.html on Mac bots" (Requested by
  97184. eseidel on #webkit).
  97185. * html/HTMLElement.cpp:
  97186. (WebCore::HTMLElement::mapToEntry):
  97187. (WebCore::HTMLElement::parseMappedAttribute):
  97188. 2010-06-11 Maciej Stachowiak <mjs@apple.com>
  97189. Reviewed by Ojan Vafai.
  97190. Implement HTML5 hidden attribute
  97191. https://bugs.webkit.org/show_bug.cgi?id=40511
  97192. Test: fast/html/hidden-attr.html
  97193. Note: I used the mapped attribute mechanism for this instead of a rule in the UA stylesheet
  97194. to avoid a performance hit from adding a global attribute rule to the UA stylesheet.
  97195. * html/HTMLElement.cpp:
  97196. (WebCore::HTMLElement::mapToEntry): Pick up hidden as a global mapped attribute.
  97197. (WebCore::HTMLElement::parseMappedAttribute): Map hidden attribute to display: none.
  97198. 2010-06-10 Abhishek Arya <inferno@chromium.org>
  97199. Reviewed by Dave Hyatt.
  97200. Do not render CSS Styles :first-letter and :first-line in a SVG text element context.
  97201. https://bugs.webkit.org/show_bug.cgi?id=40031
  97202. Test: svg/text/text-style-invalid.svg
  97203. * rendering/RenderSVGText.cpp:
  97204. (WebCore::RenderSVGText::firstLineBlock):
  97205. (WebCore::RenderSVGText::updateFirstLetter):
  97206. * rendering/RenderSVGText.h:
  97207. 2010-06-11 Kenneth Russell <kbr@google.com>
  97208. Reviewed by Dimitri Glazkov.
  97209. getParameter with UNPACK_FLIP_Y_WEBGL and UNPACK_PREMULTIPLY_ALPHA_WEBGL is buggy
  97210. https://bugs.webkit.org/show_bug.cgi?id=40506
  97211. Return the data members of WebGLRenderingContext for these
  97212. parameter queries rather than asking OpenGL, which knows nothing
  97213. about them.
  97214. * html/canvas/WebGLRenderingContext.cpp:
  97215. (WebCore::WebGLRenderingContext::getParameter):
  97216. 2010-06-11 Simon Fraser <simon.fraser@apple.com>
  97217. Reviewed by Dr Dan Bernstein.
  97218. REGRESSION: crash when unloading an iFrame with Flash from the DOM
  97219. https://bugs.webkit.org/show_bug.cgi?id=40161
  97220. <rdar://problem/7994710>
  97221. Null-check the ownerElement of the RenderView's document when unhooking the compositing
  97222. root of an iframe whose layers are parented via the enclosing document. Fixes a crash when
  97223. dynamically removing such an iframe.
  97224. Test: compositing/iframes/remove-iframe-crash.html
  97225. * rendering/RenderLayerCompositor.cpp:
  97226. (WebCore::RenderLayerCompositor::detachRootPlatformLayer):
  97227. 2010-06-11 Abhishek Arya <inferno@chromium.org>
  97228. Reviewed by David Hyatt.
  97229. Don't process floats if parent node is not a RenderBlock.
  97230. https://bugs.webkit.org/show_bug.cgi?id=40033
  97231. Test: svg/text/clear-floats-crash.svg
  97232. * rendering/RenderBlock.cpp:
  97233. (WebCore::RenderBlock::clearFloats):
  97234. 2010-06-11 Sheriff Bot <webkit.review.bot@gmail.com>
  97235. Unreviewed, rolling out r61036.
  97236. http://trac.webkit.org/changeset/61036
  97237. https://bugs.webkit.org/show_bug.cgi?id=40499
  97238. broke chromium compile (Requested by jamesr on #webkit).
  97239. * bindings/v8/SerializedScriptValue.cpp:
  97240. * bindings/v8/SerializedScriptValue.h:
  97241. (WebCore::SerializedScriptValue::deserializeAndSetProperty):
  97242. (WebCore::SerializedScriptValue::create):
  97243. (WebCore::SerializedScriptValue::createFromWire):
  97244. (WebCore::SerializedScriptValue::release):
  97245. (WebCore::SerializedScriptValue::SerializedScriptValue):
  97246. 2010-06-11 Kenneth Russell <kbr@google.com>
  97247. Reviewed by Dimitri Glazkov.
  97248. Add texImage2D and texSubImage2D signatures with internal format, etc.
  97249. https://bugs.webkit.org/show_bug.cgi?id=40318
  97250. Added new texImage2D and texSubImage2D entry points following
  97251. WebGL specification changes. Added UNPACK_FLIP_Y_WEBGL and
  97252. UNPACK_PREMULTIPLY_ALPHA_WEBGL pixelStorei parameters, honored
  97253. them for the new entry points taking HTML elements, and added
  97254. support to getParameter. Added warnings to the console for calls
  97255. to the obsolete entry points, which will be removed in a few
  97256. weeks. Updated all layout tests to use the new entry points and
  97257. pixelStorei parameters, and associated expectations. No other new
  97258. tests.
  97259. * html/canvas/WebGLRenderingContext.cpp:
  97260. (WebCore::WebGLRenderingContext::WebGLRenderingContext):
  97261. (WebCore::WebGLRenderingContext::getParameter):
  97262. (WebCore::WebGLRenderingContext::pixelStorei):
  97263. (WebCore::WebGLRenderingContext::texImage2DImpl):
  97264. (WebCore::WebGLRenderingContext::texImage2D):
  97265. (WebCore::WebGLRenderingContext::texSubImage2DImpl):
  97266. (WebCore::WebGLRenderingContext::texSubImage2D):
  97267. (WebCore::WebGLRenderingContext::printWarningToConsole):
  97268. * html/canvas/WebGLRenderingContext.h:
  97269. * html/canvas/WebGLRenderingContext.idl:
  97270. * platform/graphics/GraphicsContext3D.h:
  97271. (WebCore::GraphicsContext3D::):
  97272. 2010-06-11 James Robinson <jamesr@chromium.org>
  97273. Reviewed by Dimitri Glazkov.
  97274. [chromium] Skia mispaints pages with border-radius
  97275. https://bugs.webkit.org/show_bug.cgi?id=40456
  97276. Skia mispaints pages that have border radius set in some cases. The bug is in the anti aliased
  97277. clip path logic used to implement anti aliased curves in Skia. Since Skia internally only supports
  97278. 1-bit clips, anti aliased clipping is emulated by creating a new alpha layer, storing a set of
  97279. clip paths on the side, and then 'erasing' the regions outside the clip. See r49641.
  97280. PlatformContextSkia maintains a stack of PlatformContextSkia::State objects that preserve information
  97281. like fill color, drawing mode, etc that is manipulated by GraphicsContext::save() /
  97282. GraphicsContext::restore() calls as well some internal functions. Whenever a new State object is pushed
  97283. a new copy of the current State object is pushed onto the top of this stack using the copy c'tor. The
  97284. set of anti alias clip paths is also stored on the State object, but not copied when new entries are
  97285. added as the paths only apply to that entry on the stack.
  97286. The bug is that the state stack is stored in a WTF::Vector. When this vector exceeds its capacity
  97287. (by default at 16 elements) all of the existing State entries are copied into the new buffer using
  97288. State's copy constructor. This does not preserve the anti alias clip paths, so when the State entries
  97289. are popped the anti aliasing info is lost. This corrupts all further paint operations since it results
  97290. in inbalanced save/restore calls to the underlying SkCanvas.
  97291. The fix is to make the PlatformContextSkia::State copy constructor copy all fields and to add a new
  97292. function PlatformContextSkia::State::cloneInheritedProperties to use when pushing new State entries
  97293. that copies everything except for the anti aliased clip paths.
  97294. Test: fast/css/nested-rounded-corners.html
  97295. * platform/graphics/skia/PlatformContextSkia.cpp:
  97296. (PlatformContextSkia::State::State):
  97297. (PlatformContextSkia::State::cloneInheritedProperties):
  97298. (PlatformContextSkia::save):
  97299. 2010-06-11 Jeremy Orlow <jorlow@chromium.org>
  97300. Reviewed by Darin Fisher.
  97301. [V8] Clean up SerializedScriptValue
  97302. https://bugs.webkit.org/show_bug.cgi?id=40482
  97303. SerializedScriptValue doesn't follow WebKit's style guidelines very well
  97304. and needlessly inlines quite a bit within the .h file. This change cleans
  97305. things up. No funcitonal changes.
  97306. No change in behavior.
  97307. * bindings/v8/SerializedScriptValue.cpp:
  97308. (WebCore::SerializedScriptValue::deserializeAndSetProperty):
  97309. (WebCore::SerializedScriptValue::create):
  97310. (WebCore::SerializedScriptValue::createFromWire):
  97311. (WebCore::SerializedScriptValue::release):
  97312. (WebCore::SerializedScriptValue::SerializedScriptValue):
  97313. * bindings/v8/SerializedScriptValue.h:
  97314. 2010-06-11 Anton Muhin <antonm@chromium.org>
  97315. Reviewed by Adam Barth.
  97316. [v8] Introduce single element caches for WebCore::String to v8::String conversions
  97317. https://bugs.webkit.org/show_bug.cgi?id=40435
  97318. Measurements show that for some web apps (GMail, Wave) and some scenarios
  97319. (intensive reading and/or keeping a tab open for a long time),
  97320. hit rate lies in 30--50% interval.
  97321. Inlining fast case gives another minor performance win.
  97322. * bindings/v8/V8Binding.cpp:
  97323. (WebCore::getStringCache):
  97324. (WebCore::v8ExternalStringSlow):
  97325. * bindings/v8/V8Binding.h:
  97326. (WebCore::v8ExternalString):
  97327. 2010-06-11 Leandro Pereira <leandro@profusion.mobi>
  97328. Reviewed by Gustavo Noronha Silva.
  97329. [EFL] Build fix: remove unneeded file (npapi.cpp) and add
  97330. other files that got added to the tree.
  97331. http://webkit.org/b/40331
  97332. * CMakeLists.txt:
  97333. * CMakeListsEfl.txt:
  97334. 2010-06-11 Tony Gentilcore <tonyg@chromium.org>
  97335. Reviewed by Eric Seidel.
  97336. Fix fast/forms/preserveFormDuringResidualStyle.html for HTML5 Parser.
  97337. https://bugs.webkit.org/show_bug.cgi?id=40454
  97338. This required exposing the HTMLParser which we definitely don't want to
  97339. do, but the good news is that it can go away when the HTMLParser goes
  97340. away.
  97341. No new tests because covered by fast/forms/preserve/FormDuringResidualStyle.html.
  97342. * dom/Tokenizer.h:
  97343. (WebCore::Tokenizer::htmlParser):
  97344. * html/HTML5Tokenizer.cpp:
  97345. (WebCore::HTML5Tokenizer::htmlParser):
  97346. * html/HTML5Tokenizer.h:
  97347. * html/HTML5TreeBuilder.h:
  97348. (WebCore::HTML5TreeBuilder::htmlParser):
  97349. * html/HTMLFormControlElement.cpp:
  97350. (WebCore::HTMLFormControlElement::removedFromTree):
  97351. * html/HTMLTokenizer.h:
  97352. (WebCore::HTMLTokenizer::htmlParser):
  97353. 2010-06-11 Kenneth Russell <kbr@google.com>
  97354. Reviewed by Dimitri Glazkov.
  97355. Delete custom JSC bindings for bufferData, texImage2D and texSubImage2D
  97356. https://bugs.webkit.org/show_bug.cgi?id=40443
  97357. Deleted custom JSC bindings for bufferData, texImage2D and
  97358. texSubImage2D and fixed minor associated issues in code generator
  97359. and IDL. Updated fast/canvas/webgl/texImageTest-expected.txt,
  97360. which now runs as intended. Ran all layout tests, including WebGL
  97361. tests, in Safari.
  97362. * bindings/js/JSWebGLRenderingContextCustom.cpp:
  97363. - Deleted custom bindings.
  97364. * bindings/scripts/CodeGeneratorJS.pm:
  97365. - Made overload helper functions static to fix compiler warnings.
  97366. - Added needed isObject check for overloads between object and non-object arguments.
  97367. - Added JSValue::encode to exception return path, needed on Leopard in particular.
  97368. * html/HTMLCanvasElement.idl:
  97369. * html/HTMLImageElement.idl:
  97370. * html/HTMLVideoElement.idl:
  97371. - Added GenerateNativeConverter extended attribute.
  97372. * html/canvas/WebGLRenderingContext.idl:
  97373. - Deleted #ifdefs for custom JSC bindings.
  97374. 2010-06-11 Kevin Ollivier <kevino@theolliviers.com>
  97375. [wx] Build fix, add KillRingNone.cpp until we can implement it.
  97376. * wscript:
  97377. 2010-06-11 Hans Wennborg <hans@chromium.org>
  97378. Reviewed by Jeremy Orlow.
  97379. DOM storage should only create databases when needed
  97380. https://bugs.webkit.org/show_bug.cgi?id=40301
  97381. As soon as a page attempts to use localstorage, StorageAreaSync will
  97382. create an empty database if one doesn't already exist. This can lead to
  97383. lots of unnecessary database files. In particular, they are created
  97384. even when the privacy settings or private browsing mode disallow
  97385. localstorage data, which may seem odd to the user.
  97386. Database creation should be put off in StorageAreaSync until it is time
  97387. to actually write something to the database.
  97388. Tests:
  97389. manual-tests/localstorage-empty-database.html
  97390. * manual-tests/localstorage-empty-database.html: Added.
  97391. * storage/StorageAreaSync.cpp:
  97392. (WebCore::StorageAreaSync::StorageAreaSync):
  97393. (WebCore::StorageAreaSync::openDatabase):
  97394. (WebCore::StorageAreaSync::performImport):
  97395. (WebCore::StorageAreaSync::sync):
  97396. * storage/StorageAreaSync.h:
  97397. (WebCore::StorageAreaSync::):
  97398. 2010-06-11 Ilya Tikhonovsky <loislo@chromium.org>
  97399. Reviewed by Eric Seidel.
  97400. Perl scripts for bindings don't use strict keyword.
  97401. As result some problems in the script code were not detected at compile stage.
  97402. https://bugs.webkit.org/show_bug.cgi?id=40468
  97403. * bindings/scripts/CodeGenerator.pm:
  97404. * bindings/scripts/IDLParser.pm:
  97405. * bindings/scripts/IDLStructure.pm:
  97406. 2010-06-11 Eric Seidel <eric@webkit.org>
  97407. Reviewed by Adam Barth.
  97408. HTML5Tokenizer should not delete itself while running scripts
  97409. https://bugs.webkit.org/show_bug.cgi?id=40458
  97410. Tested by fast/dom/document-clear.html
  97411. * html/HTML5Tokenizer.cpp:
  97412. (WebCore::HTML5Tokenizer::attemptToEnd):
  97413. - Don't ever end() while running scripts.
  97414. This matches the old HTMLTokenizer.cpp
  97415. 2010-06-11 Zhenyao Mo <zmo@google.com>
  97416. Reviewed by Dimitri Glazkov.
  97417. getActiveUniform must ensure names of arrays end in "[0]"
  97418. https://bugs.webkit.org/show_bug.cgi?id=38709
  97419. Test: fast/canvas/webgl/get-active-test.html
  97420. * html/canvas/WebGLRenderingContext.cpp:
  97421. (WebCore::WebGLRenderingContext::getActiveAttrib): Append "[0]" to the name if needed.
  97422. 2010-06-11 Zhenyao Mo <zmo@google.com>
  97423. Reviewed by Dimitri Glazkov.
  97424. readPixels with negative width/height should generate INVALID_VALUE and return
  97425. https://bugs.webkit.org/show_bug.cgi?id=39704
  97426. * html/canvas/WebGLRenderingContext.cpp: Deal with negative width/height.
  97427. (WebCore::WebGLRenderingContext::readPixels):
  97428. * html/canvas/WebGLRenderingContext.h: Change width/height type from unsigned long to long.
  97429. * html/canvas/WebGLRenderingContext.idl: Ditto.
  97430. 2010-06-11 Zhenyao Mo <zmo@google.com>
  97431. Reviewed by Dimitri Glazkov.
  97432. uniform* entry points must ignore the call if a null WebGLUniformLocation is passed
  97433. https://bugs.webkit.org/show_bug.cgi?id=38707
  97434. * html/canvas/WebGLRenderingContext.cpp: uniform* entry points ignore the call if a null WebGLUniformLocation is passed.
  97435. (WebCore::WebGLRenderingContext::uniform1f):
  97436. (WebCore::WebGLRenderingContext::uniform1fv):
  97437. (WebCore::WebGLRenderingContext::uniform1i):
  97438. (WebCore::WebGLRenderingContext::uniform1iv):
  97439. (WebCore::WebGLRenderingContext::uniform2f):
  97440. (WebCore::WebGLRenderingContext::uniform2fv):
  97441. (WebCore::WebGLRenderingContext::uniform2i):
  97442. (WebCore::WebGLRenderingContext::uniform2iv):
  97443. (WebCore::WebGLRenderingContext::uniform3f):
  97444. (WebCore::WebGLRenderingContext::uniform3fv):
  97445. (WebCore::WebGLRenderingContext::uniform3i):
  97446. (WebCore::WebGLRenderingContext::uniform3iv):
  97447. (WebCore::WebGLRenderingContext::uniform4f):
  97448. (WebCore::WebGLRenderingContext::uniform4fv):
  97449. (WebCore::WebGLRenderingContext::uniform4i):
  97450. (WebCore::WebGLRenderingContext::uniform4iv):
  97451. (WebCore::WebGLRenderingContext::uniformMatrix2fv):
  97452. (WebCore::WebGLRenderingContext::uniformMatrix3fv):
  97453. (WebCore::WebGLRenderingContext::uniformMatrix4fv):
  97454. 2010-06-11 Zhenyao Mo <zmo@google.com>
  97455. Reviewed by Dimitri Glazkov.
  97456. drawElements/drawArrays should validate input parameters according to GLES2 spec
  97457. https://bugs.webkit.org/show_bug.cgi?id=38700
  97458. Tests: fast/canvas/webgl/draw-arrays-out-of-bounds.html
  97459. fast/canvas/webgl/draw-elements-out-of-bounds.html
  97460. * html/canvas/WebGLRenderingContext.cpp:
  97461. (WebCore::WebGLRenderingContext::drawArrays): Validate input parameters.
  97462. (WebCore::WebGLRenderingContext::drawElements): Ditto.
  97463. (WebCore::WebGLRenderingContext::validateDrawMode): Validate mode for draw{Arrays/Elements}.
  97464. * html/canvas/WebGLRenderingContext.h: Add validateDrawMode, fix incorrect parameter types.
  97465. * html/canvas/WebGLRenderingContext.idl: Fix incorrect parameter types.
  97466. 2010-06-11 Luiz Agostini <luiz.agostini@openbossa.org>
  97467. Reviewed by Antti Koivisto.
  97468. CSS3 Media Queries are not serialized according to CSSOM
  97469. https://bugs.webkit.org/show_bug.cgi?id=39220
  97470. MediaQuery serialization according to specification
  97471. http://dev.w3.org/csswg/cssom/#serializing-media-queries.
  97472. MediaQuery objects now ignore duplicated expressions. MediaQueryEvaluator::eval()
  97473. now does not proccess MediaQuery objects that are known to be invalid.
  97474. Test: fast/media/media-query-serialization.html
  97475. * css/MediaQuery.cpp:
  97476. (WebCore::stringCompare):
  97477. (WebCore::MediaQuery::serialize):
  97478. (WebCore::MediaQuery::MediaQuery):
  97479. (WebCore::MediaQuery::~MediaQuery):
  97480. (WebCore::MediaQuery::operator==):
  97481. (WebCore::MediaQuery::cssText):
  97482. (WebCore::MediaQuery::append):
  97483. * css/MediaQuery.h:
  97484. (WebCore::MediaQuery::ignored):
  97485. (WebCore::MediaQuery::begin):
  97486. (WebCore::MediaQuery::end):
  97487. * css/MediaQueryExp.cpp:
  97488. (WebCore::MediaQueryExp::serialize):
  97489. * css/MediaQueryExp.h:
  97490. * css/MediaQueryEvaluator.cpp:
  97491. (WebCore::MediaQueryEvaluator::eval):
  97492. 2010-06-10 Jeremy Orlow <jorlow@chromium.org>
  97493. Reviewed by Steve Block.
  97494. Implement more of IndexedDB's Indexes and ObjectStores
  97495. https://bugs.webkit.org/show_bug.cgi?id=40424
  97496. Clean up both of these classes a bit and add create/open/remove
  97497. methods as needed.
  97498. Tests in a future patch (promise).
  97499. * storage/IDBDatabase.h:
  97500. * storage/IDBDatabaseImpl.cpp:
  97501. (WebCore::IDBDatabaseImpl::objectStores):
  97502. (WebCore::IDBDatabaseImpl::createObjectStore):
  97503. (WebCore::IDBDatabaseImpl::objectStore):
  97504. (WebCore::IDBDatabaseImpl::removeObjectStore):
  97505. * storage/IDBDatabaseImpl.h:
  97506. (WebCore::IDBDatabaseImpl::name):
  97507. (WebCore::IDBDatabaseImpl::description):
  97508. (WebCore::IDBDatabaseImpl::version):
  97509. * storage/IDBDatabaseRequest.cpp:
  97510. (WebCore::IDBDatabaseRequest::IDBDatabaseRequest):
  97511. (WebCore::IDBDatabaseRequest::createObjectStore):
  97512. (WebCore::IDBDatabaseRequest::objectStore):
  97513. (WebCore::IDBDatabaseRequest::removeObjectStore):
  97514. * storage/IDBDatabaseRequest.h:
  97515. (WebCore::IDBDatabaseRequest::create):
  97516. (WebCore::IDBDatabaseRequest::name):
  97517. (WebCore::IDBDatabaseRequest::description):
  97518. (WebCore::IDBDatabaseRequest::version):
  97519. (WebCore::IDBDatabaseRequest::objectStores):
  97520. * storage/IDBDatabaseRequest.idl:
  97521. * storage/IDBObjectStore.h:
  97522. * storage/IDBObjectStoreImpl.h:
  97523. * storage/IDBObjectStoreRequest.cpp:
  97524. (WebCore::IDBObjectStoreRequest::get):
  97525. (WebCore::IDBObjectStoreRequest::add):
  97526. (WebCore::IDBObjectStoreRequest::modify):
  97527. (WebCore::IDBObjectStoreRequest::addOrModify):
  97528. (WebCore::IDBObjectStoreRequest::remove):
  97529. (WebCore::IDBObjectStoreRequest::createIndex):
  97530. (WebCore::IDBObjectStoreRequest::index):
  97531. (WebCore::IDBObjectStoreRequest::removeIndex):
  97532. * storage/IDBObjectStoreRequest.h:
  97533. * storage/IDBObjectStoreRequest.idl:
  97534. 2010-06-11 Alexander Pavlov <apavlov@chromium.org>
  97535. Reviewed by Pavel Feldman.
  97536. Web Inspector: Enable serialization/deserialization of the frontend state
  97537. https://bugs.webkit.org/show_bug.cgi?id=40228
  97538. * inspector/InspectorBackend.cpp:
  97539. (WebCore::InspectorBackend::saveApplicationSettings):
  97540. (WebCore::InspectorBackend::saveSessionSettings):
  97541. * inspector/InspectorBackend.h:
  97542. * inspector/InspectorBackend.idl:
  97543. * inspector/InspectorController.cpp:
  97544. (WebCore::InspectorController::InspectorController):
  97545. (WebCore::InspectorController::setSessionSettings):
  97546. (WebCore::InspectorController::populateScriptObjects):
  97547. (WebCore::InspectorController::didCommitLoad):
  97548. * inspector/InspectorController.h:
  97549. * inspector/InspectorFrontend.cpp:
  97550. (WebCore::InspectorFrontend::populateApplicationSettings):
  97551. (WebCore::InspectorFrontend::populateSessionSettings):
  97552. * inspector/InspectorFrontend.h:
  97553. * inspector/front-end/ConsoleView.js:
  97554. (WebInspector.ConsoleView.prototype._settingsLoaded):
  97555. (WebInspector.ConsoleView.prototype._enterKeyPressed.printResult):
  97556. (WebInspector.ConsoleView.prototype._enterKeyPressed):
  97557. * inspector/front-end/EventListenersSidebarPane.js:
  97558. (WebInspector.EventListenersSidebarPane.prototype._settingsLoaded):
  97559. (WebInspector.EventListenersSidebarPane.prototype):
  97560. ():
  97561. * inspector/front-end/InspectorBackendStub.js:
  97562. (.WebInspector.InspectorBackendStub.prototype.saveApplicationSettings):
  97563. (.WebInspector.InspectorBackendStub.prototype.saveSessionSettings):
  97564. * inspector/front-end/ResourceView.js:
  97565. (WebInspector.ResourceView.prototype._selectTab):
  97566. (WebInspector.ResourceView.prototype._selectHeadersTab):
  97567. (WebInspector.ResourceView.prototype.selectContentTab):
  97568. * inspector/front-end/ResourcesPanel.js:
  97569. (WebInspector.ResourcesPanel.prototype._createStatusbarButtons):
  97570. (WebInspector.ResourcesPanel.prototype._settingsLoaded):
  97571. (WebInspector.ResourcesPanel.prototype._toggleLargerResources):
  97572. * inspector/front-end/ScriptsPanel.js:
  97573. (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
  97574. (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu):
  97575. * inspector/front-end/Settings.js:
  97576. (WebInspector.populateApplicationSettings):
  97577. (WebInspector.populateSessionSettings):
  97578. (WebInspector.Settings):
  97579. (WebInspector.Settings.prototype.reset):
  97580. (WebInspector.Settings.prototype._load):
  97581. (WebInspector.Settings.prototype._set):
  97582. * inspector/front-end/StylesSidebarPane.js:
  97583. (WebInspector.StylesSidebarPane.prototype._settingsLoaded):
  97584. (WebInspector.StylesSidebarPane.prototype.update):
  97585. (WebInspector.StylesSidebarPane.prototype._changeSetting):
  97586. (WebInspector.StylesSidebarPane.prototype._changeColorFormat):
  97587. (WebInspector.ComputedStyleSidebarPane.settingsLoaded):
  97588. (WebInspector.ComputedStyleSidebarPane.showInheritedToggleFunction):
  97589. (WebInspector.ComputedStyleSidebarPane):
  97590. * inspector/front-end/WatchExpressionsSidebarPane.js:
  97591. (WebInspector.WatchExpressionsSidebarPane):
  97592. (WebInspector.WatchExpressionsSidebarPane.prototype._settingsLoaded):
  97593. (WebInspector.WatchExpressionsSection):
  97594. (WebInspector.WatchExpressionsSection.prototype.saveExpressions):
  97595. * inspector/front-end/inspector.js:
  97596. (WebInspector.loaded):
  97597. (WebInspector.reset):
  97598. 2010-06-10 Pavel Feldman <pfeldman@chromium.org>
  97599. Reviewed by Yury Semikhatsky.
  97600. Web Inspector: Port performSearch from InjectedScript to InspectorDOMAgent.
  97601. https://bugs.webkit.org/show_bug.cgi?id=40422
  97602. * inspector/InjectedScriptHost.cpp:
  97603. (WebCore::InjectedScriptHost::addNodesToSearchResult):
  97604. * inspector/InspectorBackend.cpp:
  97605. (WebCore::InspectorBackend::performSearch):
  97606. (WebCore::InspectorBackend::searchCanceled):
  97607. * inspector/InspectorBackend.h:
  97608. * inspector/InspectorBackend.idl:
  97609. * inspector/InspectorDOMAgent.cpp:
  97610. (WebCore::):
  97611. (WebCore::InspectorDOMAgent::InspectorDOMAgent):
  97612. (WebCore::InspectorDOMAgent::~InspectorDOMAgent):
  97613. (WebCore::InspectorDOMAgent::performSearch):
  97614. (WebCore::InspectorDOMAgent::searchCanceled):
  97615. (WebCore::InspectorDOMAgent::onMatchJobsTimer):
  97616. (WebCore::InspectorDOMAgent::reportNodesAsSearchResults):
  97617. * inspector/InspectorDOMAgent.h:
  97618. (WebCore::MatchJob::~MatchJob):
  97619. (WebCore::MatchJob::MatchJob):
  97620. (WebCore::MatchJob::addNodesToResults):
  97621. * inspector/InspectorFrontend.cpp:
  97622. (WebCore::InspectorFrontend::addNodesToSearchResult):
  97623. * inspector/InspectorFrontend.h:
  97624. * inspector/InspectorResource.cpp:
  97625. (WebCore::InspectorResource::updateScriptObject):
  97626. * inspector/front-end/ElementsPanel.js:
  97627. (WebInspector.ElementsPanel.prototype.searchCanceled):
  97628. (WebInspector.ElementsPanel.prototype.performSearch):
  97629. (WebInspector.ElementsPanel.prototype.addNodesToSearchResult):
  97630. * inspector/front-end/InjectedScript.js:
  97631. (injectedScriptConstructor):
  97632. * inspector/front-end/InjectedScriptAccess.js:
  97633. 2010-06-11 Mikhail Naganov <mnaganov@chromium.org>
  97634. Reviewed by Pavel Feldman.
  97635. [Chromium] Restore 'console.profiles' access.
  97636. https://bugs.webkit.org/show_bug.cgi?id=39840
  97637. * bindings/v8/ScriptProfiler.cpp:
  97638. (WebCore::ScriptProfiler::stop):
  97639. * bindings/v8/custom/V8ConsoleCustom.cpp:
  97640. (WebCore::V8Console::profilesAccessorGetter):
  97641. * inspector/InspectorController.cpp:
  97642. (WebCore::InspectorController::stopUserInitiatedProfiling):
  97643. 2010-06-10 Nikita Vasilyev <me@elv1s.ru>
  97644. Reviewed by Pavel Feldman.
  97645. Web Inspector: Make a close brace in Styles pane selectable.
  97646. https://bugs.webkit.org/show_bug.cgi?id=40157
  97647. * inspector/front-end/inspector.css:
  97648. (.styles-selector):
  97649. (.styles-section .properties li):
  97650. (.styles-section):
  97651. 2010-06-11 Yury Semikhatsky <yurys@chromium.org>
  97652. Reviewed by Pavel Feldman.
  97653. Web Inspector: localize missing script source message
  97654. https://bugs.webkit.org/show_bug.cgi?id=40467
  97655. * English.lproj/localizedStrings.js:
  97656. * inspector/InspectorController.cpp:
  97657. (WebCore::InspectorController::didParseSource): fixed typo in comment.
  97658. 2010-06-11 Zhenyao Mo <zmo@google.com>
  97659. Reviewed by Dimitri Glazkov.
  97660. Vertex attributes enabled as arrays but not bound to buffers must generate INVALID_OPERATION
  97661. https://bugs.webkit.org/show_bug.cgi?id=40315
  97662. * html/canvas/WebGLRenderingContext.cpp:
  97663. (WebCore::WebGLRenderingContext::validateRenderingState): Check if an enabled vertext attribs is bound to a buffer.
  97664. (WebCore::WebGLRenderingContext::vertexAttribPointer): Set bound buffer in vertex attrib state.
  97665. * html/canvas/WebGLRenderingContext.h: Add a member in vertex attrib state to track bound buffer.
  97666. 2010-05-31 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
  97667. Reviewed by Simon Hausmann.
  97668. [Qt] Implement the simple text code path.
  97669. https://bugs.webkit.org/show_bug.cgi?id=40077
  97670. Remove the FONT_FAST_PATH macro and use the Qt's
  97671. fast text implementation instead of the one of WebKit.
  97672. The Qt::TextBypassShaping flag is used to tell Qt to
  97673. only use the glyph advances.
  97674. Qt 4.7 is needed to get this flag thus the complex path is always
  97675. used if QtWebKit is compiled against an earlier version.
  97676. Contrary to the WebKit's implementation, the complex code path
  97677. is taken if the text is RightToLeft, justified or is formatted
  97678. with non-zero letter or word spacing.
  97679. * platform/graphics/Font.cpp:
  97680. (WebCore::Font::drawText):
  97681. (WebCore::Font::floatWidth):
  97682. (WebCore::Font::selectionRectForText):
  97683. (WebCore::Font::offsetForPosition):
  97684. * platform/graphics/Font.h:
  97685. (WebCore::Font::isRoundingHackCharacter):
  97686. * platform/graphics/qt/FontQt.cpp:
  97687. (WebCore::fromRawDataWithoutRef):
  97688. (WebCore::needComplexCodePath):
  97689. (WebCore::setupPlatformContext):
  97690. (WebCore::Font::canReturnFallbackFontsForComplexText):
  97691. (WebCore::Font::drawSimpleText):
  97692. (WebCore::Font::drawComplexText):
  97693. (WebCore::Font::floatWidthForSimpleText):
  97694. (WebCore::Font::offsetForPositionForSimpleText):
  97695. (WebCore::Font::selectionRectForSimpleText):
  97696. 2010-06-03 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
  97697. Reviewed by Simon Hausmann.
  97698. Move the text code path detection code from FontFastPath.cpp to Font.cpp.
  97699. https://bugs.webkit.org/show_bug.cgi?id=40077
  97700. This is a patch preliminary to the implementation of the
  97701. simple font code path for the Qt port.
  97702. * platform/graphics/Font.cpp:
  97703. (WebCore::Font::setCodePath):
  97704. (WebCore::Font::codePath):
  97705. * platform/graphics/Font.h:
  97706. * platform/graphics/FontFastPath.cpp:
  97707. 2010-06-11 Sterling Swigart <sswigart@google.com>
  97708. Reviewed by Dmitry Titov.
  97709. Added AsyncImageResizer and ImageResizerThread classes, which after further
  97710. patches will be capable of resizing images.
  97711. https://bugs.webkit.org/show_bug.cgi?id=40018
  97712. * Android.mk:
  97713. * CMakeLists.txt:
  97714. * GNUmakefile.am:
  97715. * WebCore.gypi:
  97716. * WebCore.pro:
  97717. * WebCore.vcproj/WebCore.vcproj:
  97718. * WebCore.xcodeproj/project.pbxproj:
  97719. * html/AsyncImageResizer.cpp: Added.
  97720. (WebCore::AsyncImageResizer::create):
  97721. (WebCore::AsyncImageResizer::AsyncImageResizer):
  97722. (WebCore::AsyncImageResizer::~AsyncImageResizer):
  97723. (WebCore::AsyncImageResizer::notifyFinished):
  97724. * html/AsyncImageResizer.h: Added.
  97725. (WebCore::AsyncImageResizer::CallbackInfo::CallbackInfo):
  97726. (WebCore::AsyncImageResizer::):
  97727. (WebCore::AsyncImageResizer::resizeComplete):
  97728. (WebCore::AsyncImageResizer::resizeError):
  97729. * html/ImageResizerThread.cpp: Added.
  97730. (WebCore::returnBlobOrError):
  97731. (WebCore::ImageResizerThread::start):
  97732. (WebCore::ImageResizerThread::ImageResizerThread):
  97733. (WebCore::ImageResizerThread::~ImageResizerThread):
  97734. (WebCore::ImageResizerThread::imageResizerThreadStart):
  97735. (WebCore::ImageResizerThread::imageResizerThread):
  97736. * html/ImageResizerThread.h: Added.
  97737. 2010-06-11 Steve Block <steveblock@google.com>
  97738. Reviewed by Alexey Proskuryakov.
  97739. Client-based Geolocation does not handle multiple simultaneous requests
  97740. https://bugs.webkit.org/show_bug.cgi?id=40148
  97741. Test: fast/dom/Geolocation/multiple-requests.html
  97742. The Geolocation must handle multiple calls to addObserver() from the same Geolocation object.
  97743. * page/GeolocationController.cpp:
  97744. (WebCore::GeolocationController::addObserver):
  97745. 2010-06-11 Nikita Vasilyev <me@elv1s.ru>
  97746. Reviewed by Pavel Feldman.
  97747. Web Inspector: When completing using a tab key, select very first value, not a second.
  97748. https://bugs.webkit.org/show_bug.cgi?id=40409
  97749. * inspector/front-end/TextPrompt.js:
  97750. (WebInspector.TextPrompt.prototype._completionsReady):
  97751. 2010-06-10 Yuzo Fujishima <yuzo@google.com>
  97752. Reviewed by Shinichiro Hamaji.
  97753. Implement render style selection for pages to support CSS3 Paged Media.
  97754. https://bugs.webkit.org/show_bug.cgi?id=35961
  97755. Test: printing/page-rule-selection.html
  97756. * WebCore.base.exp:
  97757. * css/CSSGrammar.y:
  97758. * css/CSSSelector.cpp:
  97759. (WebCore::CSSSelector::specificity):
  97760. (WebCore::CSSSelector::specificityForPage):
  97761. * css/CSSSelector.h:
  97762. (WebCore::CSSSelector::CSSSelector):
  97763. (WebCore::CSSSelector::isForPage):
  97764. (WebCore::CSSSelector::setForPage):
  97765. * css/CSSStyleSelector.cpp:
  97766. (WebCore::CSSStyleSelector::styleForPage):
  97767. (WebCore::CSSStyleSelector::matchPageRules):
  97768. (WebCore::CSSStyleSelector::matchPageRulesForList):
  97769. (WebCore::CSSStyleSelector::isLeftPage):
  97770. (WebCore::CSSStyleSelector::isFirstPage):
  97771. (WebCore::CSSStyleSelector::pageName):
  97772. * css/CSSStyleSelector.h:
  97773. (WebCore::CSSStyleSelector::isRightPage):
  97774. * css/html.css:
  97775. (@page):
  97776. * dom/Document.cpp:
  97777. (WebCore::Document::styleForPage):
  97778. * dom/Document.h:
  97779. * page/PrintContext.cpp:
  97780. (WebCore::PrintContext::pageProperty):
  97781. * page/PrintContext.h:
  97782. 2010-06-10 Yuzo Fujishima <yuzo@google.com>
  97783. Reviewed by Shinichiro Hamaji.
  97784. Fix Bug 40452: REGRESSION: printing is broken if stylesheet has @page
  97785. https://bugs.webkit.org/show_bug.cgi?id=40452
  97786. Test: printing/page-rule-in-media-query.html
  97787. * css/CSSStyleSelector.cpp:
  97788. (WebCore::CSSRuleSet::addRulesFromSheet):
  97789. (WebCore::CSSRuleSet::addStyleRule):
  97790. 2010-06-10 Sheriff Bot <webkit.review.bot@gmail.com>
  97791. Unreviewed, rolling out r60989.
  97792. http://trac.webkit.org/changeset/60989
  97793. https://bugs.webkit.org/show_bug.cgi?id=40462
  97794. It makes things crash (Requested by abarth on #webkit).
  97795. * dom/Tokenizer.h:
  97796. (WebCore::Tokenizer::isHTMLTokenizer):
  97797. * html/HTML5Tokenizer.cpp:
  97798. * html/HTML5Tokenizer.h:
  97799. * html/HTML5TreeBuilder.h:
  97800. * html/HTMLFormControlElement.cpp:
  97801. (WebCore::HTMLFormControlElement::removedFromTree):
  97802. * html/HTMLTokenizer.h:
  97803. (WebCore::HTMLTokenizer::isHTMLTokenizer):
  97804. (WebCore::HTMLTokenizer::htmlParser):
  97805. 2010-06-10 Tony Gentilcore <tonyg@chromium.org>
  97806. Reviewed by Eric Seidel.
  97807. Fix fast/forms/preserveFormDuringResidualStyle.html for HTML5 Parser.
  97808. https://bugs.webkit.org/show_bug.cgi?id=40454
  97809. This required exposing the HTMLParser which we definitely don't want to
  97810. do, but the good news is that it can go away when the HTMLParser goes
  97811. away.
  97812. No new tests because covered by fast/forms/preserve/FormDuringResidualStyle.html.
  97813. * dom/Tokenizer.h:
  97814. (WebCore::Tokenizer::htmlParser):
  97815. * html/HTML5Tokenizer.cpp:
  97816. (WebCore::HTML5Tokenizer::htmlParser):
  97817. * html/HTML5Tokenizer.h:
  97818. * html/HTML5TreeBuilder.h:
  97819. (WebCore::HTML5TreeBuilder::htmlParser):
  97820. * html/HTMLFormControlElement.cpp:
  97821. (WebCore::HTMLFormControlElement::removedFromTree):
  97822. * html/HTMLTokenizer.h:
  97823. (WebCore::HTMLTokenizer::htmlParser):
  97824. 2010-06-10 Tony Chang <tony@chromium.org>
  97825. Reviewed by Kent Tamura.
  97826. crash when focus is changed while trying to focus next element
  97827. https://bugs.webkit.org/show_bug.cgi?id=40407
  97828. Test: fast/events/focus-change-crash.html
  97829. * dom/Element.cpp:
  97830. (WebCore::Element::focus):
  97831. 2010-06-10 Sheriff Bot <webkit.review.bot@gmail.com>
  97832. Unreviewed, rolling out r60979.
  97833. http://trac.webkit.org/changeset/60979
  97834. https://bugs.webkit.org/show_bug.cgi?id=40450
  97835. Broke build on Leopard (Requested by kbr_google on #webkit).
  97836. * bindings/js/JSWebGLRenderingContextCustom.cpp:
  97837. (WebCore::JSWebGLRenderingContext::bufferData):
  97838. (WebCore::JSWebGLRenderingContext::bufferSubData):
  97839. (WebCore::JSWebGLRenderingContext::texImage2D):
  97840. (WebCore::JSWebGLRenderingContext::texSubImage2D):
  97841. * bindings/scripts/CodeGeneratorJS.pm:
  97842. * html/HTMLCanvasElement.idl:
  97843. * html/HTMLImageElement.idl:
  97844. * html/HTMLVideoElement.idl:
  97845. * html/canvas/WebGLRenderingContext.idl:
  97846. 2010-06-10 Kenneth Russell <kbr@google.com>
  97847. Reviewed by Dimitri Glazkov.
  97848. Delete custom JSC bindings for bufferData, texImage2D and texSubImage2D
  97849. https://bugs.webkit.org/show_bug.cgi?id=40443
  97850. Deleted custom JSC bindings for bufferData, texImage2D and
  97851. texSubImage2D and fixed minor associated issues in code generator
  97852. and IDL. Updated fast/canvas/webgl/texImageTest-expected.txt,
  97853. which now runs as intended. Ran all layout tests, including WebGL
  97854. tests, in Safari.
  97855. * bindings/js/JSWebGLRenderingContextCustom.cpp:
  97856. - Deleted custom bindings.
  97857. * bindings/scripts/CodeGeneratorJS.pm:
  97858. - Made overload helper functions static to fix compiler warnings.
  97859. - Added needed isObject check for overloads between object and non-object arguments.
  97860. * html/HTMLCanvasElement.idl:
  97861. * html/HTMLImageElement.idl:
  97862. * html/HTMLVideoElement.idl:
  97863. - Added GenerateNativeConverter extended attribute.
  97864. * html/canvas/WebGLRenderingContext.idl:
  97865. - Deleted #ifdefs for custom JSC bindings.
  97866. 2010-06-10 David Hyatt <hyatt@apple.com>
  97867. Reviewed by John Sullivan.
  97868. https://bugs.webkit.org/show_bug.cgi?id=40441, back out the original fix for 29601, since it has broken continuous
  97869. wheel delta values.
  97870. * platform/mac/WebCoreSystemInterface.h:
  97871. * platform/mac/WebCoreSystemInterface.mm:
  97872. * platform/mac/WheelEventMac.mm:
  97873. (WebCore::PlatformWheelEvent::PlatformWheelEvent):
  97874. 2010-06-10 Abhishek Arya <inferno@chromium.org>
  97875. Reviewed by Dimitri Glazkov.
  97876. Add null pointer checks for nativeImageForCurrentFrame
  97877. function calls.
  97878. https://bugs.webkit.org/show_bug.cgi?id=39797
  97879. * platform/chromium/PasteboardChromium.cpp:
  97880. (WebCore::Pasteboard::writeImage):
  97881. * platform/graphics/qt/GraphicsContext3DQt.cpp:
  97882. (WebCore::GraphicsContext3D::getImageData):
  97883. * platform/qt/PasteboardQt.cpp:
  97884. (WebCore::Pasteboard::writeImage):
  97885. 2010-06-09 Kenneth Russell <kbr@google.com>
  97886. Reviewed by Dimitri Glazkov.
  97887. Implement TypedArray BYTES_PER_ELEMENT
  97888. https://bugs.webkit.org/show_bug.cgi?id=39100
  97889. Implemented BYTES_PER_ELEMENT on all ArrayBufferView subclasses.
  97890. Required bug fixes to JSC bindings' custom constructors. Updated
  97891. fast/canvas/webgl/array-unit-tests.html to verify. Ran all WebGL
  97892. layout tests in Safari and Chromium.
  97893. * bindings/js/JSFloat32ArrayConstructor.cpp:
  97894. (WebCore::JSFloat32ArrayConstructor::JSFloat32ArrayConstructor):
  97895. (WebCore::JSFloat32ArrayConstructor::getOwnPropertySlot):
  97896. (WebCore::JSFloat32ArrayConstructor::getOwnPropertyDescriptor):
  97897. * bindings/js/JSFloat32ArrayConstructor.h:
  97898. (WebCore::JSFloat32ArrayConstructor::createStructure):
  97899. * bindings/js/JSInt16ArrayConstructor.cpp:
  97900. (WebCore::JSInt16ArrayConstructor::JSInt16ArrayConstructor):
  97901. (WebCore::JSInt16ArrayConstructor::getOwnPropertySlot):
  97902. (WebCore::JSInt16ArrayConstructor::getOwnPropertyDescriptor):
  97903. * bindings/js/JSInt16ArrayConstructor.h:
  97904. (WebCore::JSInt16ArrayConstructor::createStructure):
  97905. * bindings/js/JSInt32ArrayConstructor.cpp:
  97906. (WebCore::JSInt32ArrayConstructor::JSInt32ArrayConstructor):
  97907. (WebCore::JSInt32ArrayConstructor::getOwnPropertySlot):
  97908. (WebCore::JSInt32ArrayConstructor::getOwnPropertyDescriptor):
  97909. * bindings/js/JSInt32ArrayConstructor.h:
  97910. (WebCore::JSInt32ArrayConstructor::createStructure):
  97911. * bindings/js/JSInt8ArrayConstructor.cpp:
  97912. (WebCore::JSInt8ArrayConstructor::JSInt8ArrayConstructor):
  97913. (WebCore::JSInt8ArrayConstructor::getOwnPropertySlot):
  97914. (WebCore::JSInt8ArrayConstructor::getOwnPropertyDescriptor):
  97915. * bindings/js/JSInt8ArrayConstructor.h:
  97916. (WebCore::JSInt8ArrayConstructor::createStructure):
  97917. * bindings/js/JSUint16ArrayConstructor.cpp:
  97918. (WebCore::JSUint16ArrayConstructor::JSUint16ArrayConstructor):
  97919. (WebCore::JSUint16ArrayConstructor::getOwnPropertySlot):
  97920. (WebCore::JSUint16ArrayConstructor::getOwnPropertyDescriptor):
  97921. * bindings/js/JSUint16ArrayConstructor.h:
  97922. (WebCore::JSUint16ArrayConstructor::createStructure):
  97923. * bindings/js/JSUint32ArrayConstructor.cpp:
  97924. (WebCore::JSUint32ArrayConstructor::JSUint32ArrayConstructor):
  97925. (WebCore::JSUint32ArrayConstructor::getOwnPropertySlot):
  97926. (WebCore::JSUint32ArrayConstructor::getOwnPropertyDescriptor):
  97927. * bindings/js/JSUint32ArrayConstructor.h:
  97928. (WebCore::JSUint32ArrayConstructor::createStructure):
  97929. * bindings/js/JSUint8ArrayConstructor.cpp:
  97930. (WebCore::JSUint8ArrayConstructor::JSUint8ArrayConstructor):
  97931. (WebCore::JSUint8ArrayConstructor::getOwnPropertySlot):
  97932. (WebCore::JSUint8ArrayConstructor::getOwnPropertyDescriptor):
  97933. * bindings/js/JSUint8ArrayConstructor.h:
  97934. (WebCore::JSUint8ArrayConstructor::createStructure):
  97935. * html/canvas/Float32Array.idl:
  97936. * html/canvas/Int16Array.idl:
  97937. * html/canvas/Int32Array.idl:
  97938. * html/canvas/Int8Array.idl:
  97939. * html/canvas/Uint16Array.idl:
  97940. * html/canvas/Uint32Array.idl:
  97941. * html/canvas/Uint8Array.idl:
  97942. 2010-06-10 Eric Seidel <eric@webkit.org>
  97943. Reviewed by Adam Barth.
  97944. HTML5 Parser should continue parsing after script execution
  97945. https://bugs.webkit.org/show_bug.cgi?id=40416
  97946. The previous code was just wrong. We were always blocking
  97947. the parser after any script execution. Now we correctly continue
  97948. parsing after a successful script execution and only block the
  97949. parser when we weren't able to execute the script immediately.
  97950. Added a new haveParsingBlockingScript() function to HTML5ScriptRunner
  97951. to make some of the code more self-documenting.
  97952. Test: fast/tokenizer/write-multiple-scripts.html
  97953. fast/js/implicit-call-with-global-reentry.html
  97954. * html/HTML5ScriptRunner.cpp:
  97955. (WebCore::HTML5ScriptRunner::execute):
  97956. - Remove some old (now bogus) FIXMEs and notImplemented() calls.
  97957. - Fix the logic to match the HTML5 spec by continuing parsing
  97958. after script execution and only blocking the parser when the
  97959. script wasn't able to immediately run.
  97960. (WebCore::HTML5ScriptRunner::haveParsingBlockingScript):
  97961. - New function to make some of the code read better.
  97962. (WebCore::HTML5ScriptRunner::executeParsingBlockingScripts):
  97963. - Use haveParsingBlockingScript().
  97964. (WebCore::HTML5ScriptRunner::executeScriptsWaitingForLoad):
  97965. - Use haveParsingBlockingScript().
  97966. (WebCore::HTML5ScriptRunner::runScript):
  97967. - Use haveParsingBlockingScript().
  97968. * html/HTML5ScriptRunner.h:
  97969. 2010-06-10 Yury Semikhatsky <yurys@chromium.org>
  97970. Reviewed by Pavel Feldman.
  97971. Web Inspector: to reduce the front end start up time don't push script
  97972. sources to frontend if debugger is always enabled, instead request
  97973. script content lazily at the moment it should be displyed. It is critical for
  97974. always enabled debugger because in that case lots of script may have
  97975. already been parsed when the front end is opening and pushing all
  97976. of them at once may slow things down(even though the script sources will never
  97977. be used if scripts panel isn't open).
  97978. https://bugs.webkit.org/show_bug.cgi?id=40364
  97979. * inspector/InspectorBackend.cpp:
  97980. (WebCore::InspectorBackend::getScriptSource):
  97981. * inspector/InspectorBackend.h:
  97982. * inspector/InspectorBackend.idl:
  97983. * inspector/InspectorController.cpp:
  97984. (WebCore::InspectorController::didCommitLoad):
  97985. (WebCore::InspectorController::getScriptSource):
  97986. (WebCore::InspectorController::didParseSource):
  97987. * inspector/InspectorController.h:
  97988. * inspector/InspectorFrontend.cpp:
  97989. (WebCore::InspectorFrontend::didGetScriptSource):
  97990. * inspector/InspectorFrontend.h:
  97991. * inspector/front-end/InspectorBackendStub.js:
  97992. (.WebInspector.InspectorBackendStub.prototype.editScriptSource):
  97993. (.WebInspector.InspectorBackendStub.prototype.getScriptSource):
  97994. * inspector/front-end/ScriptView.js:
  97995. (WebInspector.ScriptView.prototype.setupSourceFrameIfNeeded):
  97996. (WebInspector.ScriptView.prototype._didGetScriptSource):
  97997. (WebInspector.ScriptView.prototype._sourceFrameSetupFinished):
  97998. 2010-06-10 Adam Barth <abarth@webkit.org>
  97999. Reviewed by Eric Seidel.
  98000. Use allowRequestIfNoIllegalURICharacters instead of context for XSSAuditor::canLoadExternalScriptFromSrc
  98001. https://bugs.webkit.org/show_bug.cgi?id=40404
  98002. We originally added the context parameter to
  98003. canLoadExternalScriptFromSrc to work around some false positives caused
  98004. by folks checking external script URLs on the server. Our thought was
  98005. that we could tell these were not real XSS attacks because the
  98006. surrounding context wouldn't match in the URL and the document.
  98007. Implementing this feature in the HTML5 parser is hard because it
  98008. pierces a layer of abstraction (the token abstraction of the input
  98009. stream). We could hack this into the new parser, but instead I think
  98010. it's better to switch to using the allowRequestIfNoIllegalURICharacters
  98011. heuristic.
  98012. We designed the allowRequestIfNoIllegalURICharacters after the context
  98013. heuristic to deal with other cases where the server was validating
  98014. input before echoing it. However, we never tried applying it to
  98015. canLoadExternalScriptFromSrc.
  98016. It's possible that this will cause false positives and will need to be
  98017. reverted, which is why I've left in some of the infrustructure for
  98018. computing context. We don't have a good way to know if that will
  98019. happen except to try. We do know, however, that this heuristic will
  98020. work for the original false positives we saw.
  98021. * html/HTML5Tokenizer.cpp:
  98022. (WebCore::HTML5Tokenizer::shouldLoadExternalScriptFromSrc):
  98023. * html/HTMLTokenizer.cpp:
  98024. (WebCore::HTMLTokenizer::parseTag):
  98025. * page/XSSAuditor.cpp:
  98026. (WebCore::XSSAuditor::canLoadExternalScriptFromSrc):
  98027. * page/XSSAuditor.h:
  98028. 2010-06-10 Kwang Yul Seo <skyul@company100.net>
  98029. Reviewed by Kent Tamura.
  98030. Add ENABLE(DATABASE) guard for DatabaseAuthorizer.cpp
  98031. https://bugs.webkit.org/show_bug.cgi?id=40399
  98032. Build fix for ENABLE(DATABASE)=0.
  98033. * storage/DatabaseAuthorizer.cpp:
  98034. 2010-06-10 Shu Chang <chang.shu@nokia.com>
  98035. Reviewed by Kenneth Rohde Christiansen.
  98036. Change the type of ShadowBlur from int to float in GraphicsContext.
  98037. Using int for ShadowBlur loses precision and fails the test.
  98038. Note: This code change fixes Qt port but Mac is still failing due to
  98039. platform issue. Function CGContextSetShadowWithColor() does not take
  98040. a blur value less than 0.5.
  98041. https://bugs.webkit.org/show_bug.cgi?id=40370
  98042. * platform/graphics/GraphicsContext.cpp:
  98043. (WebCore::GraphicsContext::setShadow):
  98044. (WebCore::GraphicsContext::getShadow):
  98045. * platform/graphics/GraphicsContext.h:
  98046. * platform/graphics/GraphicsContextPrivate.h:
  98047. * platform/graphics/cairo/FontCairo.cpp:
  98048. (WebCore::Font::drawGlyphs):
  98049. * platform/graphics/cairo/GraphicsContextCairo.cpp:
  98050. (WebCore::GraphicsContext::calculateShadowBufferDimensions):
  98051. (WebCore::drawPathShadow):
  98052. (WebCore::drawBorderlessRectShadow):
  98053. (WebCore::GraphicsContext::setPlatformShadow):
  98054. * platform/graphics/cairo/ImageCairo.cpp:
  98055. (WebCore::BitmapImage::draw):
  98056. * platform/graphics/cg/GraphicsContextCG.cpp:
  98057. (WebCore::GraphicsContext::setPlatformShadow):
  98058. * platform/graphics/chromium/FontChromiumWin.cpp:
  98059. (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
  98060. (WebCore::Font::drawComplexText):
  98061. * platform/graphics/gtk/FontGtk.cpp:
  98062. (WebCore::Font::drawComplexText):
  98063. * platform/graphics/haiku/GraphicsContextHaiku.cpp:
  98064. (WebCore::GraphicsContext::setPlatformShadow):
  98065. * platform/graphics/mac/FontMac.mm:
  98066. (WebCore::Font::drawGlyphs):
  98067. * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
  98068. (WebCore::GraphicsContext::setPlatformShadow):
  98069. * platform/graphics/qt/FontQt.cpp:
  98070. (WebCore::Font::drawComplexText):
  98071. * platform/graphics/qt/GraphicsContextQt.cpp:
  98072. (WebCore::GraphicsContext::drawRect):
  98073. (WebCore::GraphicsContext::drawLine):
  98074. (WebCore::GraphicsContext::strokeArc):
  98075. (WebCore::GraphicsContext::drawConvexPolygon):
  98076. (WebCore::drawFilledShadowPath):
  98077. (WebCore::GraphicsContext::strokePath):
  98078. (WebCore::drawBorderlessRectShadow):
  98079. (WebCore::GraphicsContext::setPlatformShadow):
  98080. * platform/graphics/qt/ImageQt.cpp:
  98081. (WebCore::BitmapImage::draw):
  98082. * platform/graphics/skia/GraphicsContextSkia.cpp:
  98083. (WebCore::GraphicsContext::setPlatformShadow):
  98084. * platform/graphics/skia/SkiaFontWin.cpp:
  98085. (WebCore::windowsCanHandleDrawTextShadow):
  98086. * platform/graphics/win/FontCGWin.cpp:
  98087. (WebCore::drawGDIGlyphs):
  98088. (WebCore::Font::drawGlyphs):
  98089. * platform/graphics/wince/GraphicsContextWince.cpp:
  98090. (WebCore::GraphicsContext::fillRoundedRect):
  98091. (WebCore::GraphicsContext::setPlatformShadow):
  98092. (WebCore::GraphicsContext::drawText):
  98093. * platform/graphics/wx/GraphicsContextWx.cpp:
  98094. (WebCore::GraphicsContext::setPlatformShadow):
  98095. 2010-06-10 Yael Aharon <yael.aharon@nokia.com>
  98096. Reviewed by Kenneth Rohde Christiansen.
  98097. Support for loading notification icons
  98098. https://bugs.webkit.org/show_bug.cgi?id=40396
  98099. Make notification objects download the icon needed for displaying the
  98100. notification before calling the NotificationPresenter to display the
  98101. notification.
  98102. An error during the download would cause the notification to be displayed
  98103. without an icon.
  98104. If a notification is in the process of download, and a new notification
  98105. is created with the same ReplaceId, the download is not cancelled
  98106. immediately and the notification is removed only after the download is
  98107. complete.
  98108. Tests: http/tests/notifications/icon-does-not-exist.html
  98109. http/tests/notifications/icon-exists-cancel.html
  98110. http/tests/notifications/icon-exists-show-alert-during-load.html
  98111. http/tests/notifications/icon-exists.html
  98112. http/tests/notifications/icon-requires-auth.html
  98113. * notifications/Notification.cpp:
  98114. (WebCore::Notification::Notification):
  98115. (WebCore::Notification::~Notification):
  98116. (WebCore::Notification::show):
  98117. (WebCore::Notification::cancel):
  98118. (WebCore::Notification::startLoading):
  98119. (WebCore::Notification::stopLoading):
  98120. (WebCore::Notification::didReceiveResponse):
  98121. (WebCore::Notification::didReceiveData):
  98122. (WebCore::Notification::didFinishLoading):
  98123. (WebCore::Notification::didFail):
  98124. (WebCore::Notification::didFailRedirectCheck):
  98125. (WebCore::Notification::didReceiveAuthenticationCancellation):
  98126. (WebCore::Notification::finishLoading):
  98127. * notifications/Notification.h:
  98128. (WebCore::Notification::iconData):
  98129. (WebCore::Notification::releaseIconData):
  98130. (WebCore::Notification::):
  98131. 2010-06-10 Raine Makelainen <raine.makelainen@nokia.com>
  98132. Reviewed by Kenneth Rohde Christiansen.
  98133. Impossible to set input method hints based HTML5 input types
  98134. https://bugs.webkit.org/show_bug.cgi?id=40107
  98135. Helper methods for checking "tel", "number", "email",
  98136. and "url" input element types.
  98137. * html/HTMLInputElement.h:
  98138. (WebCore::HTMLInputElement::isTelephoneField):
  98139. (WebCore::HTMLInputElement::isNumberField):
  98140. (WebCore::HTMLInputElement::isEmailField):
  98141. (WebCore::HTMLInputElement::isUrlField):
  98142. 2010-06-10 Daniel Cheng <dcheng@chromium.org>
  98143. Reviewed by Jian Li.
  98144. Don't convert filenames to URLs in edit drags.
  98145. https://bugs.webkit.org/show_bug.cgi?id=38826
  98146. For security reasons, we don't want to expose file system paths to web
  98147. content, so we filter them out of edit drags.
  98148. Test: editing/pasteboard/file-drag-to-editable.html
  98149. * page/DragController.cpp:
  98150. (WebCore::documentFragmentFromDragData):
  98151. * platform/DragData.h:
  98152. (WebCore::DragData::):
  98153. * platform/android/DragDataAndroid.cpp:
  98154. (WebCore::DragData::containsURL):
  98155. (WebCore::DragData::asURL):
  98156. * platform/chromium/DragDataChromium.cpp:
  98157. (WebCore::DragData::containsURL):
  98158. (WebCore::DragData::asURL):
  98159. * platform/efl/DragDataEfl.cpp:
  98160. (WebCore::DragData::containsURL):
  98161. (WebCore::DragData::asURL):
  98162. * platform/gtk/DragDataGtk.cpp:
  98163. (WebCore::DragData::containsURL):
  98164. (WebCore::DragData::asURL):
  98165. * platform/haiku/DragDataHaiku.cpp:
  98166. (WebCore::DragData::containsURL):
  98167. (WebCore::DragData::asURL):
  98168. * platform/mac/DragDataMac.mm:
  98169. (WebCore::DragData::containsURL):
  98170. (WebCore::DragData::asURL):
  98171. * platform/qt/DragDataQt.cpp:
  98172. (WebCore::DragData::asPlainText):
  98173. (WebCore::DragData::containsURL):
  98174. (WebCore::DragData::asURL):
  98175. * platform/win/ClipboardUtilitiesWin.cpp:
  98176. (WebCore::getURL):
  98177. (WebCore::getPlainText):
  98178. * platform/win/ClipboardUtilitiesWin.h:
  98179. * platform/win/ClipboardWin.cpp:
  98180. (WebCore::ClipboardWin::getData):
  98181. * platform/win/DragDataWin.cpp:
  98182. (WebCore::DragData::containsURL):
  98183. (WebCore::DragData::asURL):
  98184. * platform/wince/DragDataWince.cpp:
  98185. (WebCore::DragData::containsURL):
  98186. (WebCore::DragData::asURL):
  98187. * platform/wx/DragDataWx.cpp:
  98188. (WebCore::DragData::containsURL):
  98189. (WebCore::DragData::asURL):
  98190. 2010-06-10 Mike Belshe <mbelshe@chromium.org>
  98191. Reviewed by David Levin
  98192. Track whether a resource is loaded via a proxy.
  98193. https://bugs.webkit.org/show_bug.cgi?id=40312
  98194. * platform/network/chromium/ResourceResponse.h:
  98195. (WebCore::ResourceResponse::wasFetchedViaProxy):
  98196. (WebCore::ResourceResponse::setWasFetchedViaProxy):
  98197. 2010-06-10 Jungshik Shin <jshin@chromium.org>
  98198. Reviewed by Kent Tamura
  98199. Bug 38224 - [chromium] Enable rendering of Ethiopic, Lao, Tibetan
  98200. and a few other scripts on Win XP
  98201. https://bugs.webkit.org/show_bug.cgi?id=38224
  98202. Make it possible to specify a list of fonts for per-script
  98203. fallback instead of a single font per script. This is
  98204. necessary for Malayalam (for which Windows font doesn't
  98205. support Unicode 5.x fully on Vista or earlier), Ethiopic
  98206. (we want to support on XP with a 3rd party font because XP
  98207. doesn't have any Ethiopic font out of the box) and some other
  98208. scripts. This is a short-term 'fix' until we have per-script
  98209. font preferences.
  98210. No layout test is added because the test results would be
  98211. dependent on which fonts are present.
  98212. * platform/graphics/chromium/FontUtilsChromiumWin.cpp:
  98213. (WebCore::):
  98214. (WebCore::FontMap::ScriptToFontFamilies::):
  98215. 2010-06-09 Andrei Popescu <andreip@google.com>
  98216. Reviewed by Adam Barth.
  98217. CodeGeneratorJS.pm incorrectly increments $paramIndex when a method is declared with [CallWith]
  98218. https://bugs.webkit.org/show_bug.cgi?id=40372
  98219. Use two variables to keep track of the number of arguments passed from JavaScript vs the number
  98220. of arguments passed to the corresponding C++ method. These numbers can be different since
  98221. the parameter declared via [CallWith] is generated in the bindings instead of being passed
  98222. from JavaScript.
  98223. Test: storage/indexeddb/idb-objectstore-request.html
  98224. * bindings/scripts/CodeGeneratorJS.pm:
  98225. * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
  98226. (WebDOMTestObj::withScriptExecutionContext):
  98227. * bindings/scripts/test/CPP/WebDOMTestObj.h:
  98228. * bindings/scripts/test/JS/JSTestObj.cpp:
  98229. (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndArg):
  98230. (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndOptionalArg):
  98231. (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGesture):
  98232. (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGestureASAD):
  98233. 2010-06-09 MORITA Hajime <morrita@google.com>
  98234. Reviewed by Kent Tamura.
  98235. Refactoring: Simple shadow elements should be factored out .
  98236. https://bugs.webkit.org/show_bug.cgi?id=40400
  98237. Pulled ShadowElement class up from SliderThumbElement,
  98238. ProgressValueElement, ShadowInputElement.
  98239. And renamed ProgressValueElement to ShadowBlockElement.
  98240. No new tests. Because there is no functional change.
  98241. * CMakeLists.txt:
  98242. * GNUmakefile.am:
  98243. * WebCore.gypi:
  98244. * WebCore.pro:
  98245. * WebCore.vcproj/WebCore.vcproj:
  98246. * WebCore.xcodeproj/project.pbxproj:
  98247. * rendering/RenderFileUploadControl.cpp:
  98248. * rendering/RenderProgress.cpp:
  98249. (WebCore::RenderProgress::updateValuePartState):
  98250. * rendering/RenderProgress.h:
  98251. * rendering/RenderSlider.cpp:
  98252. (WebCore::SliderThumbElement::SliderThumbElement):
  98253. (WebCore::SliderThumbElement::defaultEventHandler):
  98254. (WebCore::SliderThumbElement::detach):
  98255. * rendering/ShadowElement.cpp: Added.
  98256. (WebCore::ShadowBlockElement::create):
  98257. (WebCore::ShadowBlockElement::ShadowBlockElement):
  98258. (WebCore::ShadowInputElement::create):
  98259. (WebCore::ShadowInputElement::ShadowInputElement):
  98260. * rendering/ShadowElement.h: Added.
  98261. (WebCore::ShadowElement::ShadowElement):
  98262. (WebCore::ShadowElement::isShadowNode):
  98263. (WebCore::ShadowElement::shadowParentNode):
  98264. 2010-06-10 Eric Seidel <eric@webkit.org>
  98265. Reviewed by Adam Barth.
  98266. Reduce FrameView.h includes to speed up build times
  98267. https://bugs.webkit.org/show_bug.cgi?id=40408
  98268. Another fix for Qt.
  98269. * page/Frame.h:
  98270. - Include CSSMutableStyleDeclaration.h since it's used by m_typingStyle = 0;
  98271. 2010-06-10 Eric Seidel <eric@webkit.org>
  98272. Reviewed by Adam Barth.
  98273. Reduce FrameView.h includes to speed up build times
  98274. https://bugs.webkit.org/show_bug.cgi?id=40408
  98275. More attempted build fixes for Tiger and Qt.
  98276. * page/Frame.cpp:
  98277. * page/Frame.h:
  98278. 2010-06-10 Eric Seidel <eric@webkit.org>
  98279. Reviewed by Adam Barth.
  98280. Reduce FrameView.h includes to speed up build times
  98281. https://bugs.webkit.org/show_bug.cgi?id=40408
  98282. Add a few more RenderLayer.h includes to fix non-mac builds.
  98283. * page/FrameView.cpp:
  98284. * rendering/RenderObject.cpp:
  98285. * rendering/RenderTreeAsText.cpp:
  98286. 2010-06-10 Eric Seidel <eric@webkit.org>
  98287. Reviewed by Adam Barth.
  98288. Reduce FrameView.h includes to speed up build times
  98289. https://bugs.webkit.org/show_bug.cgi?id=40408
  98290. Cleaned up FrameView.h includes and then propagated the
  98291. cascade of includes to the necessary .cpp files.
  98292. This should reduce the set of files rebuilt every
  98293. time FrameView.h changes, and should also reduce the size
  98294. of some .o files.
  98295. No functional changes, thus no tests.
  98296. * accessibility/AccessibilityRenderObject.cpp:
  98297. * dom/ContainerNode.cpp:
  98298. * dom/Document.cpp:
  98299. * dom/Element.cpp:
  98300. * dom/EventTarget.h:
  98301. * dom/Node.cpp:
  98302. * editing/EditorCommand.cpp:
  98303. * editing/SelectionController.cpp:
  98304. * html/HTML5Tokenizer.cpp:
  98305. (WebCore::HTML5Tokenizer::script):
  98306. - No need for this to be inline. Being inline required
  98307. Frame.h in the header, which causes huge include cascade.
  98308. * html/HTML5Tokenizer.h:
  98309. * page/DragController.cpp:
  98310. * page/EventHandler.cpp:
  98311. * page/Frame.h:
  98312. * page/FrameView.h:
  98313. * page/PrintContext.cpp:
  98314. * page/SpatialNavigation.cpp:
  98315. * rendering/RenderBlock.cpp:
  98316. * rendering/RenderBlockLineLayout.cpp:
  98317. * rendering/RenderImage.cpp:
  98318. * rendering/RenderInline.cpp:
  98319. * rendering/RenderObject.h:
  98320. * rendering/RenderTextControlSingleLine.cpp:
  98321. * rendering/RenderWidget.cpp:
  98322. * rendering/SVGRenderSupport.cpp:
  98323. 2010-06-10 Adam Barth <abarth@webkit.org>
  98324. Reviewed by Eric Seidel.
  98325. Move HTML5 entity parser to its own file
  98326. https://bugs.webkit.org/show_bug.cgi?id=40406
  98327. Moving this algorithm to its own file better encapsulates its
  98328. dependencies and makes it callable from other parts of WebCore.
  98329. * Android.mk:
  98330. * CMakeLists.txt:
  98331. * GNUmakefile.am:
  98332. * WebCore.gypi:
  98333. * WebCore.pro:
  98334. * WebCore.vcproj/WebCore.vcproj:
  98335. * WebCore.xcodeproj/project.pbxproj:
  98336. * html/HTML5EntityParser.cpp: Copied from WebCore/html/HTML5Lexer.cpp.
  98337. (WebCore::):
  98338. (WebCore::consumeHTML5Entity):
  98339. * html/HTML5EntityParser.h: Copied from WebCore/html/HTML5Lexer.h.
  98340. * html/HTML5Lexer.cpp:
  98341. (WebCore::HTML5Lexer::processEntity):
  98342. (WebCore::HTML5Lexer::nextToken):
  98343. * html/HTML5Lexer.h:
  98344. 2010-06-09 Tony Gentilcore <tonyg@chromium.org>
  98345. Reviewed by Adam Barth.
  98346. HTML5 Parser: Fix fast/profiler tests that depend on event handler line numbers
  98347. https://bugs.webkit.org/show_bug.cgi?id=40393
  98348. This emulated the old behavior in HTMLTokenizer:processToken()
  98349. No new tests because covered by:
  98350. - fast/profiler/dead-time.html
  98351. - fast/profiler/inline-event-handler.html
  98352. - fast/profiler/stop-profiling-after-setTimeout.html
  98353. - fast/profiler/throw-exception-from-eval.html
  98354. * html/HTML5Tokenizer.cpp:
  98355. (WebCore::HTML5Tokenizer::pumpLexer):
  98356. 2010-06-09 Alexey Proskuryakov <ap@apple.com>
  98357. Reviewed by Dan Bernstein.
  98358. https://bugs.webkit.org/show_bug.cgi?id=9504
  98359. img tag rewritten by innerHTML doesn't use image map
  98360. Test: fast/dom/replaced-image-map.html
  98361. * html/HTMLMapElement.cpp:
  98362. (WebCore::HTMLMapElement::~HTMLMapElement): Destructor is not a good place to make changes
  98363. that affect page behavior, because destructors are called by garbage collector. Don't
  98364. undregister the image map from here.
  98365. (WebCore::HTMLMapElement::parseMappedAttribute): Only tell document about the map if it's
  98366. actually in document. A map in a detached subtree isn't used by Firefox at least.
  98367. (WebCore::HTMLMapElement::insertedIntoDocument): Register the map.
  98368. (WebCore::HTMLMapElement::removedFromDocument): Unregister the map.
  98369. * html/HTMLMapElement.h: Added insertedIntoDocument/removedFromDocument overrides.
  98370. 2010-06-09 Roland Steiner <rolandsteiner@chromium.org>
  98371. Reviewed by Ojan Vafai.
  98372. Bug 35632 - htmlediting.cpp : isEmptyTableCell() is incomplete
  98373. https://bugs.webkit.org/show_bug.cgi?id=35632
  98374. Correct isEmptyTableCell to check for the presence of other renderer
  98375. children.
  98376. Test: editing/deleting/delete-br-in-last-table-cell.html
  98377. * editing/htmlediting.cpp:
  98378. (WebCore::isEmptyTableCell):
  98379. 2010-06-09 Qi Zhang <qi.2.zhang@nokia.com>
  98380. Reviewed by Laszlo Gombos.
  98381. [Qt] Failed at http://philip.html5.org/tests/canvas/suite/tests/2d.path.arcTo.transformation.html
  98382. https://bugs.webkit.org/show_bug.cgi?id=38598
  98383. In path transform function handle path only have moveElement case.
  98384. * platform/graphics/qt/PathQt.cpp:
  98385. (WebCore::Path::transform):
  98386. 2010-06-09 Anton Muhin <antonm@chromium.org>
  98387. Reviewed by Nate Chapin.
  98388. [v8] First phase of switching to new named property query API
  98389. https://bugs.webkit.org/show_bug.cgi?id=40303
  98390. To allow better management of attributes of intercepted properties,
  98391. we're starting to switch to new named property query API which
  98392. now could return attributes instead of simple property present/absent
  98393. flag. The next step would remove USE_NEW_QUERY_CALLBACK, then
  98394. v8 would have them enabled by default.
  98395. * bindings/scripts/CodeGeneratorV8.pm:
  98396. * bindings/v8/NPV8Object.cpp:
  98397. * bindings/v8/ScriptArray.cpp:
  98398. * bindings/v8/ScriptCallStack.cpp:
  98399. * bindings/v8/SerializedScriptValue.cpp:
  98400. * bindings/v8/V8Binding.cpp:
  98401. * bindings/v8/V8DOMWrapper.cpp:
  98402. * bindings/v8/V8GCController.cpp:
  98403. * bindings/v8/V8IsolatedContext.cpp:
  98404. * bindings/v8/V8NPObject.cpp:
  98405. (WebCore::npObjectQueryProperty):
  98406. * bindings/v8/V8Proxy.cpp:
  98407. * bindings/v8/custom/V8PopStateEventCustom.cpp:
  98408. * bindings/v8/custom/V8StorageCustom.cpp:
  98409. (WebCore::V8Storage::namedPropertyQuery):
  98410. * config.h:
  98411. 2010-06-09 Steve Block <steveblock@google.com>
  98412. Reviewed by Jeremy Orlow.
  98413. Need to include V8Proxy.h in V8 generated bindings for toV8Context()
  98414. https://bugs.webkit.org/show_bug.cgi?id=40290
  98415. No new tests, build fix only.
  98416. * bindings/scripts/CodeGeneratorV8.pm:
  98417. 2010-06-09 Jarkko Sakkinen <jarkko.j.sakkinen@gmail.com>
  98418. Reviewed by Kenneth Rohde Christiansen.
  98419. WebGL rendering context does not activate unless accelerated
  98420. compositing is enabled from settings.
  98421. https://bugs.webkit.org/show_bug.cgi?id=37772
  98422. * html/HTMLCanvasElement.cpp:
  98423. (WebCore::HTMLCanvasElement::getContext):
  98424. 2010-06-09 Yong Li <yoli@rim.com>
  98425. Reviewed by George Staikos.
  98426. https://bugs.webkit.org/show_bug.cgi?id=40252
  98427. Make image down-sampling threshold runtime adjustable.
  98428. No new test needed.
  98429. * platform/graphics/ImageSource.cpp:
  98430. (WebCore::ImageSource::setData):
  98431. * platform/graphics/ImageSource.h:
  98432. (WebCore::ImageSource::maxPixelsPerDecodedImage):
  98433. (WebCore::ImageSource::setMaxPixelsPerDecodedImage):
  98434. 2010-06-09 Adam Barth <abarth@webkit.org>
  98435. Reviewed by Eric Seidel.
  98436. Fix handling of bytes received from the network while in document.write
  98437. https://bugs.webkit.org/show_bug.cgi?id=40356
  98438. The old tokenizer has specially logic for handling the case of
  98439. receiving bytes from the network while in a nested call to
  98440. document.write. This patch implements similar logic for the HTML5
  98441. tokenizer. Also, this patch abstracts the tricky shuffling of
  98442. SegmentedStrings behind a simple API.
  98443. I'm not sure how to trigger this case. My guess is we can trigger it
  98444. using a nested event loop, e.g., via alert(), but I'm not sure how to
  98445. test that in a LayoutTest. There don't appear to be any LayoutTests
  98446. that currently test this behavior despite it being present in the old
  98447. tokenizer.
  98448. * html/HTML5Tokenizer.cpp:
  98449. (WebCore::HTML5Tokenizer::pumpLexer):
  98450. (WebCore::HTML5Tokenizer::write):
  98451. - Added a branch for the |append| argument.
  98452. (WebCore::HTML5Tokenizer::end):
  98453. (WebCore::HTML5Tokenizer::finish):
  98454. (WebCore::HTML5Tokenizer::executeScript):
  98455. - Switch over to using a RAII pattern for recording and restoring
  98456. insertion points.
  98457. * html/HTML5Tokenizer.h:
  98458. (WebCore::HTML5Tokenizer::InputStream::InputStream):
  98459. (WebCore::HTML5Tokenizer::InputStream::appendToEnd):
  98460. (WebCore::HTML5Tokenizer::InputStream::insertAtCurrentInsertionPoint):
  98461. (WebCore::HTML5Tokenizer::InputStream::close):
  98462. - Putting the close() method on InputStream makes it much easier to
  98463. handle EOF. We now just close the last buffer in the stream when
  98464. the network says it's done.
  98465. (WebCore::HTML5Tokenizer::InputStream::current):
  98466. - This class could be moved to its own file, but it shouldn't be
  98467. used outside of the tokenizer.
  98468. (WebCore::HTML5Tokenizer::InsertionPointRecord::InsertionPointRecord):
  98469. (WebCore::HTML5Tokenizer::InsertionPointRecord::~InsertionPointRecord):
  98470. - A simple RAII class for managing saved insertion points.
  98471. * platform/text/SegmentedString.cpp:
  98472. (WebCore::SegmentedString::operator=):
  98473. - Fix a related bug where m_closed was not being copied properly in
  98474. the assignment operator.
  98475. 2010-06-09 Tony Gentilcore <tonyg@chromium.org>
  98476. Reviewed by Adam Barth.
  98477. Fix fast/parser/hex-entities-length.html for HTML5 parser
  98478. https://bugs.webkit.org/show_bug.cgi?id=40385
  98479. Stripping surrogate pair values appears to be a problem with the spec
  98480. in "Preprocessing the input stream." Minefield doesn't appear to
  98481. implement the part in question. So this patch removes that guard and
  98482. adds a FIXME to track the issue.
  98483. No new tests because covered by fast/parser/hex-entities-length.html
  98484. * html/HTML5Lexer.h:
  98485. (WebCore::HTML5Lexer::InputStreamPreprocessor::peek):
  98486. 2010-06-09 Kenneth Russell <kbr@google.com>
  98487. Reviewed by Dimitri Glazkov.
  98488. Update readPixels to take ArrayBufferView rather than returning it
  98489. https://bugs.webkit.org/show_bug.cgi?id=40322
  98490. No new tests; covered by existing tests, which have been modified.
  98491. * html/canvas/WebGLRenderingContext.cpp:
  98492. (WebCore::WebGLRenderingContext::readPixels):
  98493. * html/canvas/WebGLRenderingContext.h:
  98494. * html/canvas/WebGLRenderingContext.idl:
  98495. 2010-06-09 Enrico Ros <eros@codeaurora.org>
  98496. Reviewed by Ariya Hidayat.
  98497. Fix drawing zero-sized gradients on Canvas.
  98498. https://bugs.webkit.org/show_bug.cgi?id=40340
  98499. HTML5 draft says that nothing must be painted if the gradient start
  98500. point equals the stop point.
  98501. This commit fixes the following canvas test:
  98502. http://philip.html5.org/tests/canvas/suite/tests/2d.gradient.interpolate.zerosize.html
  98503. * html/canvas/CanvasRenderingContext2D.cpp:
  98504. (WebCore::CanvasRenderingContext2D::fillRect): skip zero-sized linear gradients
  98505. * platform/graphics/Gradient.h:
  98506. (WebCore::Gradient::isRadial): made public
  98507. (WebCore::Gradient::isZeroSize): true if start == stop
  98508. 2010-06-09 Leandro Pereira <leandro@profusion.mobi>
  98509. Reviewed by Adam Treat.
  98510. [EFL] Allow building core libraries as shared objects to speed up
  98511. linking time on machines with small amounts of memory.
  98512. http://webkit.org/b/39899
  98513. * CMakeLists.txt: If building with shared core, install the lib.
  98514. Remove npapi.cpp (causes conflicts when linking dynamically).
  98515. * CMakeListsEfl.txt: EFL libraries are needed to link dynamically.
  98516. 2010-06-09 Mark Rowe <mrowe@apple.com>
  98517. Reviewed by Adele Peterson.
  98518. <rdar://problem/8070662> REGRESSION (r51629): WebBackForwardList created via -init crashes when -addItem: is called.
  98519. A WebBackForwardList created via -init results in a BackForwardList being created with a null m_page.
  98520. BackForwardList needs to be careful not to dereference m_page without first ensuring it's not null.
  98521. * history/BackForwardList.cpp:
  98522. (WebCore::BackForwardList::addItem): Null-check m_page.
  98523. (WebCore::BackForwardList::goBack): Ditto.
  98524. (WebCore::BackForwardList::goForward): Ditto.
  98525. (WebCore::BackForwardList::goToItem): Ditto.
  98526. (WebCore::BackForwardList::setCapacity): Ditto.
  98527. 2010-06-09 Kwang Yul Seo <skyul@company100.net>
  98528. Reviewed by Kent Tamura.
  98529. [BREWMP] Add dummy Context Menu implementation
  98530. https://bugs.webkit.org/show_bug.cgi?id=40223
  98531. Brew MP does not use Context Menu. Add dummy implementation.
  98532. * platform/brew/ContextMenuBrew.cpp: Added.
  98533. (WebCore::ContextMenu::ContextMenu):
  98534. (WebCore::ContextMenu::~ContextMenu):
  98535. (WebCore::ContextMenu::itemCount):
  98536. (WebCore::ContextMenu::insertItem):
  98537. (WebCore::ContextMenu::appendItem):
  98538. (WebCore::ContextMenu::itemWithAction):
  98539. (WebCore::ContextMenu::itemAtIndex):
  98540. (WebCore::ContextMenu::setPlatformDescription):
  98541. (WebCore::ContextMenu::platformDescription):
  98542. (WebCore::ContextMenu::releasePlatformDescription):
  98543. * platform/brew/ContextMenuItemBrew.cpp: Added.
  98544. (WebCore::ContextMenuItem::ContextMenuItem):
  98545. (WebCore::ContextMenuItem::~ContextMenuItem):
  98546. (WebCore::ContextMenuItem::releasePlatformDescription):
  98547. (WebCore::ContextMenuItem::type):
  98548. (WebCore::ContextMenuItem::action):
  98549. (WebCore::ContextMenuItem::title):
  98550. (WebCore::ContextMenuItem::platformSubMenu):
  98551. (WebCore::ContextMenuItem::setType):
  98552. (WebCore::ContextMenuItem::setAction):
  98553. (WebCore::ContextMenuItem::setTitle):
  98554. (WebCore::ContextMenuItem::setSubMenu):
  98555. (WebCore::ContextMenuItem::setChecked):
  98556. (WebCore::ContextMenuItem::setEnabled):
  98557. (WebCore::ContextMenuItem::enabled):
  98558. 2010-06-09 Kwang Yul Seo <skyul@company100.net>
  98559. Reviewed by Kent Tamura.
  98560. [BREWMP] Port Clipboard
  98561. https://bugs.webkit.org/show_bug.cgi?id=35734
  98562. Add dummy Clipboard.
  98563. * platform/brew/ClipboardBrew.cpp: Added.
  98564. (WebCore::ClipboardBrew::ClipboardBrew):
  98565. (WebCore::ClipboardBrew::~ClipboardBrew):
  98566. (WebCore::ClipboardBrew::clearData):
  98567. (WebCore::ClipboardBrew::clearAllData):
  98568. (WebCore::ClipboardBrew::getData):
  98569. (WebCore::ClipboardBrew::setData):
  98570. (WebCore::ClipboardBrew::types):
  98571. (WebCore::ClipboardBrew::files):
  98572. (WebCore::ClipboardBrew::setDragImage):
  98573. (WebCore::ClipboardBrew::setDragImageElement):
  98574. (WebCore::ClipboardBrew::createDragImage):
  98575. (WebCore::ClipboardBrew::declareAndWriteDragImage):
  98576. (WebCore::ClipboardBrew::writeURL):
  98577. (WebCore::ClipboardBrew::writeRange):
  98578. (WebCore::ClipboardBrew::writePlainText):
  98579. (WebCore::ClipboardBrew::hasData):
  98580. * platform/brew/ClipboardBrew.h: Added.
  98581. 2010-06-09 Anders Bakken <agbakken@gmail.com>
  98582. Reviewed by David Levin.
  98583. [Qt] ClipboardQt.cpp has coding-style errors
  98584. https://bugs.webkit.org/show_bug.cgi?id=39781
  98585. * platform/qt/ClipboardQt.cpp:
  98586. (WebCore::ClipboardQt::declareAndWriteDragImage):
  98587. 2010-06-09 Kenneth Russell <kbr@google.com>
  98588. Reviewed by Dimitri Glazkov.
  98589. Rename FloatArray to Float32Array
  98590. https://bugs.webkit.org/show_bug.cgi?id=40323
  98591. Used do-webcore-rename to perform renaming. Manually undid
  98592. incorrect changes to WebCore/bridge/jni/jsc/JNIBridgeJSC.cpp,
  98593. WebCore/manual-tests/resources/ArrayParameterTestApplet.java and
  98594. ArrayParameterTestApplet.class. Updated LayoutTests. Built and ran
  98595. all layout tests on Safari; built Chromium and ran selected WebGL
  98596. tests.
  98597. * CMakeLists.txt:
  98598. * DerivedSources.make:
  98599. * GNUmakefile.am:
  98600. * WebCore.gypi:
  98601. * WebCore.pri:
  98602. * WebCore.pro:
  98603. * WebCore.xcodeproj/project.pbxproj:
  98604. * bindings/generic/RuntimeEnabledFeatures.h:
  98605. (WebCore::RuntimeEnabledFeatures::float32ArrayEnabled):
  98606. * bindings/js/JSArrayBufferViewCustom.cpp:
  98607. (WebCore::toJS):
  98608. * bindings/js/JSDOMWindowCustom.cpp:
  98609. (WebCore::JSDOMWindow::float32Array):
  98610. (WebCore::JSDOMWindow::webGLFloatArray):
  98611. * bindings/js/JSFloat32ArrayConstructor.cpp: Copied from WebCore/bindings/js/JSFloatArrayConstructor.cpp.
  98612. (WebCore::):
  98613. (WebCore::JSFloat32ArrayConstructor::JSFloat32ArrayConstructor):
  98614. (WebCore::constructCanvasFloatArray):
  98615. (WebCore::JSFloat32ArrayConstructor::getConstructData):
  98616. * bindings/js/JSFloat32ArrayConstructor.h: Copied from WebCore/bindings/js/JSFloatArrayConstructor.h.
  98617. * bindings/js/JSFloat32ArrayCustom.cpp: Copied from WebCore/bindings/js/JSFloatArrayCustom.cpp.
  98618. (WebCore::JSFloat32Array::indexSetter):
  98619. (WebCore::toJS):
  98620. (WebCore::JSFloat32Array::set):
  98621. * bindings/js/JSFloatArrayConstructor.cpp: Removed.
  98622. * bindings/js/JSFloatArrayConstructor.h: Removed.
  98623. * bindings/js/JSFloatArrayCustom.cpp: Removed.
  98624. * bindings/js/JSWebGLRenderingContextCustom.cpp:
  98625. (WebCore::dataFunctionf):
  98626. (WebCore::dataFunctionMatrix):
  98627. * bindings/v8/custom/V8ArrayBufferViewCustom.cpp:
  98628. (WebCore::toV8):
  98629. * bindings/v8/custom/V8DOMWindowCustom.cpp:
  98630. (WebCore::V8DOMWindow::WebGLFloatArrayAccessorGetter):
  98631. * bindings/v8/custom/V8Float32ArrayCustom.cpp: Copied from WebCore/bindings/v8/custom/V8FloatArrayCustom.cpp.
  98632. (WebCore::V8Float32Array::constructorCallback):
  98633. (WebCore::V8Float32Array::setCallback):
  98634. (WebCore::toV8):
  98635. * bindings/v8/custom/V8FloatArrayCustom.cpp: Removed.
  98636. * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
  98637. (WebCore::vertexAttribAndUniformHelperf):
  98638. (WebCore::uniformMatrixHelper):
  98639. * html/canvas/Float32Array.cpp: Copied from WebCore/html/canvas/FloatArray.cpp.
  98640. (WebCore::Float32Array::create):
  98641. (WebCore::Float32Array::Float32Array):
  98642. (WebCore::Float32Array::slice):
  98643. * html/canvas/Float32Array.h: Copied from WebCore/html/canvas/FloatArray.h.
  98644. * html/canvas/Float32Array.idl: Copied from WebCore/html/canvas/FloatArray.idl.
  98645. * html/canvas/FloatArray.cpp: Removed.
  98646. * html/canvas/FloatArray.h: Removed.
  98647. * html/canvas/FloatArray.idl: Removed.
  98648. * html/canvas/WebGLGetInfo.cpp:
  98649. (WebCore::WebGLGetInfo::WebGLGetInfo):
  98650. (WebCore::WebGLGetInfo::getWebGLFloatArray):
  98651. * html/canvas/WebGLGetInfo.h:
  98652. * html/canvas/WebGLRenderingContext.cpp:
  98653. (WebCore::WebGLRenderingContext::getUniform):
  98654. (WebCore::WebGLRenderingContext::getVertexAttrib):
  98655. (WebCore::WebGLRenderingContext::uniform1fv):
  98656. (WebCore::WebGLRenderingContext::uniform2fv):
  98657. (WebCore::WebGLRenderingContext::uniform3fv):
  98658. (WebCore::WebGLRenderingContext::uniform4fv):
  98659. (WebCore::WebGLRenderingContext::uniformMatrix2fv):
  98660. (WebCore::WebGLRenderingContext::uniformMatrix3fv):
  98661. (WebCore::WebGLRenderingContext::uniformMatrix4fv):
  98662. (WebCore::WebGLRenderingContext::vertexAttrib1fv):
  98663. (WebCore::WebGLRenderingContext::vertexAttrib2fv):
  98664. (WebCore::WebGLRenderingContext::vertexAttrib3fv):
  98665. (WebCore::WebGLRenderingContext::vertexAttrib4fv):
  98666. (WebCore::WebGLRenderingContext::getWebGLFloatArrayParameter):
  98667. * html/canvas/WebGLRenderingContext.h:
  98668. * html/canvas/WebGLRenderingContext.idl:
  98669. * page/DOMWindow.idl:
  98670. * platform/graphics/GraphicsContext3D.h:
  98671. * platform/graphics/mac/GraphicsContext3DMac.cpp:
  98672. * platform/graphics/qt/GraphicsContext3DQt.cpp:
  98673. 2010-06-09 Eric Seidel <eric@webkit.org>
  98674. Reviewed by Adam Barth.
  98675. HTML5 Parser needs to integrate with the XSSAuditor
  98676. https://bugs.webkit.org/show_bug.cgi?id=40287
  98677. This fixes most of the XSSAuditor tests, except for the ones
  98678. which rely on the srcValue "context". The previous HTMLTokenizer
  98679. implementation was both Lexer and ScriptRunner and thus could
  98680. provide the XSSAuditor with the un-modified attribute source.
  98681. This naive implementation will fail the context-sensitive tests
  98682. but Adam Barth says he'll just have to find a new way to provide
  98683. the required information to the XSSAuditor in a later patch.
  98684. Covered by numerous http/tests/security/xssAuditor tests.
  98685. * html/HTML5ScriptRunner.cpp:
  98686. (WebCore::HTML5ScriptRunner::requestScript):
  98687. - Ask the HTML5ScriptRunner host before running any scripts.
  98688. * html/HTML5ScriptRunnerHost.h:
  98689. - Add a shouldLoadExternalScriptFromSrc declaration.
  98690. * html/HTML5Tokenizer.cpp:
  98691. (WebCore::HTML5Tokenizer::shouldLoadExternalScriptFromSrc):
  98692. - Ask the XSSAuditor if we're allowed to run the passed script.
  98693. * html/HTML5Tokenizer.h:
  98694. 2010-06-09 Tony Gentilcore <tonyg@chromium.org>
  98695. Reviewed by Adam Barth.
  98696. Fix script-after-frameset test in HTML5 parser
  98697. https://bugs.webkit.org/show_bug.cgi?id=40274
  98698. The old HTMLTokenizer enforced this in scriptHandler(). We don't use
  98699. that code anymore, so it needs to be implemented. The spec does this
  98700. as a part of "insertion mode"->"after frameset", so this adds an
  98701. InsertionMode enum instead of a one-off boolean.
  98702. No new tests because covered by fast/tokenizer/script-after-frameset.html
  98703. * html/HTML5TreeBuilder.cpp:
  98704. (WebCore::HTML5TreeBuilder::HTML5TreeBuilder):
  98705. (WebCore::HTML5TreeBuilder::passTokenToLegacyParser):
  98706. * html/HTML5TreeBuilder.h:
  98707. (WebCore::HTML5TreeBuilder::):
  98708. (WebCore::HTML5TreeBuilder::setInsertionMode):
  98709. (WebCore::HTML5TreeBuilder::insertionMode):
  98710. 2010-06-09 Kwang Yul Seo <skyul@company100.net>
  98711. Reviewed by Kent Tamura.
  98712. [BREWMP] Add EventLoop
  98713. https://bugs.webkit.org/show_bug.cgi?id=39401
  98714. BREW MP does not have an explicit event loop. Add dummy EventLoop::cycle.
  98715. * platform/brew/EventLoopBrew.cpp: Added.
  98716. (WebCore::EventLoop::cycle):
  98717. 2010-06-09 Sheriff Bot <webkit.review.bot@gmail.com>
  98718. Unreviewed, rolling out r60889.
  98719. http://trac.webkit.org/changeset/60889
  98720. https://bugs.webkit.org/show_bug.cgi?id=40365
  98721. gtk bot has some kind of memory corruption (Requested by
  98722. loislo on #webkit).
  98723. * inspector/InspectorClient.h:
  98724. * inspector/InspectorController.cpp:
  98725. (WebCore::InspectorController::setFrontend):
  98726. * inspector/InspectorController.h:
  98727. * inspector/InspectorFrontend.cpp:
  98728. (WebCore::InspectorFrontend::InspectorFrontend):
  98729. * inspector/InspectorFrontend.h:
  98730. * inspector/InspectorFrontendClientLocal.cpp:
  98731. (WebCore::InspectorFrontendClientLocal::frontendLoaded):
  98732. * inspector/InspectorValues.cpp:
  98733. (WebCore::InspectorObject::writeJSON):
  98734. * inspector/front-end/inspector.js:
  98735. * loader/EmptyClients.h:
  98736. 2010-06-09 Kent Tamura <tkent@chromium.org>
  98737. Reviewed by Eric Carlson.
  98738. [Windows] Build fix on Japanese Windows
  98739. https://bugs.webkit.org/show_bug.cgi?id=40358
  98740. cl.exe on Japanese Windows assumes files with invalid CP932
  98741. sequences broken and doesn't build them at all.
  98742. * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp: Remove non-ASCII characters
  98743. * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.h: ditto.
  98744. * platform/graphics/win/WKCAImageQueue.cpp: ditto.
  98745. * platform/graphics/win/WKCAImageQueue.h: ditto.
  98746. 2010-06-09 Pavel Podivilov <podivilov@chromium.org>
  98747. Reviewed by Yury Semikhatsky.
  98748. Web Inspector: Add isDebuggerAlwaysEnabled method to ScriptDebugServer.
  98749. This method returns true if debugger should always be enabled when
  98750. frontend is attached.
  98751. https://bugs.webkit.org/show_bug.cgi?id=40289
  98752. * bindings/js/ScriptDebugServer.cpp:
  98753. (WebCore::ScriptDebugServer::isDebuggerAlwaysEnabled):
  98754. * bindings/js/ScriptDebugServer.h:
  98755. * bindings/v8/ScriptDebugServer.cpp:
  98756. (WebCore::ScriptDebugServer::isDebuggerAlwaysEnabled):
  98757. * bindings/v8/ScriptDebugServer.h:
  98758. * inspector/InspectorController.cpp:
  98759. (WebCore::InspectorController::setFrontend):
  98760. 2010-06-07 Ilya Tikhonovsky <loislo@chromium.org>
  98761. Reviewed by Pavel Feldman.
  98762. WebInspector: On the way to Remote Debugging we want to transfer dom/timeline/etc
  98763. data from inspected page to WebInspector as JSON string via http. The native
  98764. serialization to JSON string is supported by InspectorValue's classes. This patch
  98765. has the implementation of sendMessageToFrontend function. WebKit version of it still
  98766. uses ScriptFunctionCall and will be switched to another transport a little bit later.
  98767. https://bugs.webkit.org/show_bug.cgi?id=40134
  98768. * inspector/InspectorClient.h:
  98769. * inspector/InspectorController.cpp:
  98770. (WebCore::InspectorController::connectFrontend):
  98771. (WebCore::InspectorController::disconnectFrontend):
  98772. * inspector/InspectorController.h:
  98773. * inspector/InspectorFrontend.cpp:
  98774. (WebCore::InspectorFrontend::InspectorFrontend):
  98775. * inspector/InspectorFrontend.h:
  98776. * inspector/InspectorFrontendClientLocal.cpp:
  98777. (WebCore::InspectorFrontendClientLocal::frontendLoaded):
  98778. * inspector/InspectorValues.cpp:
  98779. (WebCore::InspectorObject::writeJSON):
  98780. * inspector/front-end/inspector.js:
  98781. (WebInspector.dispatchMessageToFrontend):
  98782. * loader/EmptyClients.h:
  98783. (WebCore::EmptyInspectorClient::sendMessageToFrontend):
  98784. 2010-06-09 Csaba Osztrogonác <ossy@webkit.org>
  98785. Reviewed by Dirk Schulze.
  98786. [Qt] Imperfect dependency for generated SVGNames.cpp
  98787. https://bugs.webkit.org/show_bug.cgi?id=40359
  98788. * WebCore.pri: Missing dependency added.
  98789. 2010-06-08 Dirk Schulze <krit@webkit.org>
  98790. Reviewed by Nikolas Zimmermann.
  98791. Implement non-scaling-stroke (from SVG Tiny 1.2, also in Opera)
  98792. https://bugs.webkit.org/show_bug.cgi?id=31438
  98793. This is the implementation of the SVG property vector-effect according
  98794. to the specification of SVG Tiny 1.2.
  98795. getScreenCTM() was not able to calculate the transformation matrix in
  98796. comparison to the host coordinate system for objects, that get refereced
  98797. by a use element. This is fixed and covered by the the new test as well.
  98798. This patch is based upon a patch of Jeff Schiller.
  98799. Test: svg/custom/non-scaling-stroke.svg
  98800. * css/CSSComputedStyleDeclaration.cpp: Added CSSPropertyVectorEffect.
  98801. (WebCore::):
  98802. * css/CSSPrimitiveValueMappings.h:
  98803. (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
  98804. (WebCore::CSSPrimitiveValue::operator EVectorEffect):
  98805. * css/SVGCSSComputedStyleDeclaration.cpp:
  98806. (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue):
  98807. * css/SVGCSSParser.cpp:
  98808. (WebCore::CSSParser::parseSVGValue):
  98809. * css/SVGCSSPropertyNames.in:
  98810. * css/SVGCSSStyleSelector.cpp:
  98811. (WebCore::CSSStyleSelector::applySVGProperty):
  98812. * css/SVGCSSValueKeywords.in: Add vector-effect value non-scaling-stroke.
  98813. * rendering/RenderPath.cpp: Revert transformations to ctm and transform path instead.
  98814. (WebCore::fillAndStrokePath):
  98815. * rendering/RenderSVGResourceContainer.h:
  98816. (WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke):
  98817. * rendering/RenderSVGResourceGradient.cpp: Transform the gradient with the screenCTM.
  98818. (WebCore::RenderSVGResourceGradient::applyResource):
  98819. * rendering/RenderSVGResourcePattern.cpp: Transform the pattern with the screenCTM.
  98820. (WebCore::RenderSVGResourcePattern::applyResource):
  98821. * rendering/style/SVGRenderStyle.h: Added vector-effect property, not interited.
  98822. (WebCore::SVGRenderStyle::NonInheritedFlags::):
  98823. (WebCore::SVGRenderStyle::setBitDefaults):
  98824. * rendering/style/SVGRenderStyleDefs.h: Added enums for vector-effect.
  98825. (WebCore::):
  98826. * svg/SVGLocatable.cpp: Calculate screenCTM for <use> referenced objects.
  98827. (WebCore::SVGLocatable::computeCTM):
  98828. * svg/SVGStyledElement.cpp:
  98829. (WebCore::SVGStyledElement::cssPropertyIdForSVGAttributeName):
  98830. * svg/svgattrs.in:
  98831. 2010-06-08 Mark Rowe <mrowe@apple.com>
  98832. Reviewed by Adele Peterson.
  98833. <rdar://problem/8072136> REGRESSION (r56051): Inspect Element context menu does nothing in applications linked against 10.4 SDK
  98834. Revert the change to ContextMenu::addInspectElementItem from r56051. It was made without
  98835. explanation and broke a reliance that WebKit has on the presence of a separator before the
  98836. Inspect Element menu item. This also restores the context menu item to the correct location
  98837. at the bottom of the context menu in applications built against the Mac OS X 10.4 SDK.
  98838. * platform/ContextMenu.cpp:
  98839. (WebCore::ContextMenu::addInspectElementItem):
  98840. 2010-06-08 Roland Steiner <rolandsteiner@chromium.org>
  98841. Unreviewed build fix
  98842. Bug 38145 - Validate *tex* functions input parameters according to ES2 conformance
  98843. https://bugs.webkit.org/show_bug.cgi?id=38145
  98844. https://bugs.webkit.org/show_bug.cgi?id=40346
  98845. Fix for 38145 broke the build ('log2 not found' on Windows),
  98846. the fix from 40346 also didn't catch ('log ambiguous').
  98847. 2nd quick fix: add explicit casts to double and use double constants.
  98848. No new tests.
  98849. * html/canvas/WebGLRenderingContext.cpp:
  98850. (WebCore::WebGLRenderingContext::validateTexFuncParameters):
  98851. 2010-05-18 Yuzo Fujishima <yuzo@google.com>
  98852. Reviewed by Shinichiro Hamaji.
  98853. Fix for Bug 34529 - [CSSOM] issues with cssText and selectorText
  98854. Serialize selector as per http://dev.w3.org/csswg/cssom/#serializing-selectors
  98855. Without this patch, for example, selectors containing ':' or '.' are not properly serialized.
  98856. https://bugs.webkit.org/show_bug.cgi?id=34529
  98857. Test: fast/css/selector-text-escape.html
  98858. * Android.mk:
  98859. * CMakeLists.txt:
  98860. * GNUmakefile.am:
  98861. * WebCore.gypi:
  98862. * WebCore.pro:
  98863. * WebCore.vcproj/WebCore.vcproj:
  98864. * WebCore.xcodeproj/project.pbxproj:
  98865. * css/CSSOMUtils.cpp: Added.
  98866. (WebCore::appendCharacter):
  98867. (WebCore::serializeCharacter):
  98868. (WebCore::serializeCharacterAsCodePoint):
  98869. (WebCore::serializeIdentifier):
  98870. (WebCore::serializeString):
  98871. * css/CSSOMUtils.h: Added.
  98872. * css/CSSSelector.cpp:
  98873. (WebCore::CSSSelector::selectorText):
  98874. 2010-06-08 Ryosuke Niwa <rniwa@webkit.org>
  98875. Reviewed by Justin Garcia
  98876. InsertListCommand needs cleanup
  98877. https://bugs.webkit.org/show_bug.cgi?id=36430
  98878. Separated code for listifying and unlistifying paragraphs.
  98879. Also isolated the dependency on the selection in doApply.
  98880. No test is added since this is a cleanup.
  98881. * editing/InsertListCommand.cpp:
  98882. (WebCore::InsertListCommand::doApply): isolated code to listify / unlistify paragraphs
  98883. (WebCore::InsertListCommand::unlistifyParagraph): ditto
  98884. (WebCore::InsertListCommand::listifyParagraph): ditto
  98885. * editing/InsertListCommand.h:
  98886. 2010-06-08 Kenneth Russell <kbr@google.com>
  98887. Unreviewed, build fix.
  98888. Fix build breakage from 38145
  98889. https://bugs.webkit.org/show_bug.cgi?id=40346
  98890. The fix for bug 38145 broke the Chromium Win build because
  98891. Microsoft's cmath doesn't define log2. Suggested fix by zmo is to
  98892. change log2(x) to log(x) / log(2). Built and ran WebGL layout
  98893. tests in Safari on Mac OS X. Changed download mirrors for
  98894. python-irclib to working ones.
  98895. * html/canvas/WebGLRenderingContext.cpp:
  98896. (WebCore::WebGLRenderingContext::validateTexFuncParameters):
  98897. 2010-06-08 Zhenyao Mo <zmo@google.com>
  98898. Reviewed by Dimitri Glazkov.
  98899. Validate *tex* functions input parameters according to ES2 conformance
  98900. https://bugs.webkit.org/show_bug.cgi?id=38145
  98901. Test: fast/canvas/webgl/tex-input-validation.html
  98902. * html/canvas/WebGLFramebuffer.cpp:
  98903. (WebCore::WebGLFramebuffer::getColorBufferFormat): Get color buffer internalformat.
  98904. * html/canvas/WebGLFramebuffer.h: Ditto.
  98905. * html/canvas/WebGLRenderingContext.cpp:
  98906. (WebCore::WebGLRenderingContext::WebGLRenderingContext): Deal with max tex units and max texture size.
  98907. (WebCore::WebGLRenderingContext::copyTexImage2D): Validate input parameters.
  98908. (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto.
  98909. (WebCore::WebGLRenderingContext::texImage2DBase): Ditto.
  98910. (WebCore::WebGLRenderingContext::texParameterf): Ditto.
  98911. (WebCore::WebGLRenderingContext::texParameteri): Ditto.
  98912. (WebCore::WebGLRenderingContext::texSubImage2DBase): Ditto.
  98913. (WebCore::WebGLRenderingContext::handleNPOTTextures): Deal with max tex units.
  98914. (WebCore::WebGLRenderingContext::isTexInternalformatColorBufferCombinationValid): Check whether the texture format and framebuffer color buffer internalformat combination is valid.
  98915. (WebCore::WebGLRenderingContext::getTextureBinding): get the current bound texture for given target.
  98916. (WebCore::WebGLRenderingContext::validateTexFuncFormatAndType): Validate input format/type for *tex* functions.
  98917. (WebCore::WebGLRenderingContext::validateTexFuncParameters): Validate input parameters for *tex* functions.
  98918. (WebCore::WebGLRenderingContext::texParameter): Base function for texParameteri and texParameterf.
  98919. * html/canvas/WebGLRenderingContext.h: Deal with max tex units.
  98920. * html/canvas/WebGLTexture.cpp:
  98921. (WebCore::WebGLTexture::WebGLTexture): Cache internalformat.
  98922. * html/canvas/WebGLTexture.h: Ditto.
  98923. (WebCore::WebGLTexture::setInternalformat):
  98924. (WebCore::WebGLTexture::getInternalformat):
  98925. * platform/graphics/GraphicsContext3D.cpp: internalformat and format need to be the same.
  98926. (WebCore::GraphicsContext3D::extractImageData):
  98927. 2010-06-08 Erik Arvidsson <arv@chromium.org>
  98928. Reviewed by Ojan Vafai.
  98929. REGRESSION: Weird focus behavior affects quoting on University of Washington message board system
  98930. https://bugs.webkit.org/show_bug.cgi?id=38548
  98931. Test: editing/selection/click-in-focusable-link-should-not-clear-selection.html
  98932. * page/FocusController.cpp:
  98933. (WebCore::clearSelectionIfNeeded): Make sure we do not clear selection when canStartSelection
  98934. returns false.
  98935. 2010-06-08 Enrico Ros <eros@codeaurora.org>
  98936. Reviewed by Ariya Hidayat.
  98937. [Qt] Crashfix on Path::contains
  98938. https://bugs.webkit.org/show_bug.cgi?id=40253
  98939. Fix accessing the first item of an empty vector, that happens when
  98940. CanvasRenderingContext2D::isPointInPath is invoked over a borderless
  98941. path (e.g. a path made of just a MoveTo operation).
  98942. * platform/graphics/qt/PathQt.cpp:
  98943. (WebCore::isPointOnPathBorder):
  98944. 2010-06-08 Sheriff Bot <webkit.review.bot@gmail.com>
  98945. Unreviewed, rolling out r60859.
  98946. http://trac.webkit.org/changeset/60859
  98947. https://bugs.webkit.org/show_bug.cgi?id=40334
  98948. Included debugging statements. Caused a test to fail.
  98949. (Requested by ojan on #webkit).
  98950. * page/FocusController.cpp:
  98951. (WebCore::clearSelectionIfNeeded):
  98952. 2010-06-08 Sheriff Bot <webkit.review.bot@gmail.com>
  98953. Unreviewed, rolling out r60858.
  98954. http://trac.webkit.org/changeset/60858
  98955. https://bugs.webkit.org/show_bug.cgi?id=40325
  98956. Qt needs a clean build. Rolling out the patch for now and fix
  98957. it tomorrow (Requested by krit on #webkit).
  98958. * css/CSSComputedStyleDeclaration.cpp:
  98959. (WebCore::):
  98960. * css/CSSPrimitiveValueMappings.h:
  98961. * css/SVGCSSComputedStyleDeclaration.cpp:
  98962. (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue):
  98963. * css/SVGCSSParser.cpp:
  98964. (WebCore::CSSParser::parseSVGValue):
  98965. * css/SVGCSSPropertyNames.in:
  98966. * css/SVGCSSStyleSelector.cpp:
  98967. (WebCore::CSSStyleSelector::applySVGProperty):
  98968. * css/SVGCSSValueKeywords.in:
  98969. * rendering/RenderPath.cpp:
  98970. (WebCore::fillAndStrokePath):
  98971. * rendering/RenderSVGResourceContainer.h:
  98972. * rendering/RenderSVGResourceGradient.cpp:
  98973. (WebCore::RenderSVGResourceGradient::applyResource):
  98974. * rendering/RenderSVGResourcePattern.cpp:
  98975. (WebCore::RenderSVGResourcePattern::applyResource):
  98976. * rendering/style/SVGRenderStyle.h:
  98977. (WebCore::SVGRenderStyle::NonInheritedFlags::):
  98978. (WebCore::SVGRenderStyle::setBitDefaults):
  98979. * rendering/style/SVGRenderStyleDefs.h:
  98980. (WebCore::):
  98981. * svg/SVGLocatable.cpp:
  98982. (WebCore::SVGLocatable::computeCTM):
  98983. * svg/SVGStyledElement.cpp:
  98984. (WebCore::SVGStyledElement::cssPropertyIdForSVGAttributeName):
  98985. * svg/svgattrs.in:
  98986. 2010-06-08 Daniel Bates <dbates@rim.com>
  98987. Unreviewed, fix Xcode project file after change-set 60841.
  98988. Xcode is not happy about the entries for files EditingBehavior.h and
  98989. EditingBehaviorTypes.h that were added in change-set 60841 (Bug # 39854).
  98990. Lets make Xcode happy.
  98991. Also, lets place these entries in alphabetic order.
  98992. * WebCore.xcodeproj/project.pbxproj:
  98993. 2010-06-08 Erik Arvidsson <arv@chromium.org>
  98994. Reviewed by Ojan Vafai.
  98995. REGRESSION: Weird focus behavior affects quoting on University of Washington message board system
  98996. https://bugs.webkit.org/show_bug.cgi?id=38548
  98997. We should not clear the selection when canStartSelection returns false.
  98998. Test: editing/selection/click-in-focusable-link-should-not-clear-selection.html
  98999. * page/FocusController.cpp:
  99000. (WebCore::clearSelectionIfNeeded): Make sure we do not clear selection when canStartSelection
  99001. returns false.
  99002. 2010-06-08 Dirk Schulze <krit@webkit.org>
  99003. Reviewed by Nikolas Zimmermann.
  99004. Implement non-scaling-stroke (from SVG Tiny 1.2, also in Opera)
  99005. https://bugs.webkit.org/show_bug.cgi?id=31438
  99006. This is the implementation of the SVG property vector-effect according
  99007. to the specification of SVG Tiny 1.2.
  99008. getScreenCTM() was not able to calculate the transformation matrix in
  99009. comparison to the host coordinate system for objects, that get refereced
  99010. by a use element. This is fixed and covered by the the new test as well.
  99011. This patch is based upon a patch of Jeff Schiller.
  99012. Test: svg/custom/non-scaling-stroke.svg
  99013. * css/CSSComputedStyleDeclaration.cpp: Added CSSPropertyVectorEffect.
  99014. (WebCore::):
  99015. * css/CSSPrimitiveValueMappings.h:
  99016. (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
  99017. (WebCore::CSSPrimitiveValue::operator EVectorEffect):
  99018. * css/SVGCSSComputedStyleDeclaration.cpp:
  99019. (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue):
  99020. * css/SVGCSSParser.cpp:
  99021. (WebCore::CSSParser::parseSVGValue):
  99022. * css/SVGCSSPropertyNames.in:
  99023. * css/SVGCSSStyleSelector.cpp:
  99024. (WebCore::CSSStyleSelector::applySVGProperty):
  99025. * css/SVGCSSValueKeywords.in: Add vector-effect value non-scaling-stroke.
  99026. * rendering/RenderPath.cpp: Revert transformations to ctm and transform path instead.
  99027. (WebCore::fillAndStrokePath):
  99028. * rendering/RenderSVGResourceContainer.h:
  99029. (WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke):
  99030. * rendering/RenderSVGResourceGradient.cpp: Transform the gradient with the screenCTM.
  99031. (WebCore::RenderSVGResourceGradient::applyResource):
  99032. * rendering/RenderSVGResourcePattern.cpp: Transform the pattern with the screenCTM.
  99033. (WebCore::RenderSVGResourcePattern::applyResource):
  99034. * rendering/style/SVGRenderStyle.h: Added vector-effect property, not interited.
  99035. (WebCore::SVGRenderStyle::NonInheritedFlags::):
  99036. (WebCore::SVGRenderStyle::setBitDefaults):
  99037. * rendering/style/SVGRenderStyleDefs.h: Added enums for vector-effect.
  99038. (WebCore::):
  99039. * svg/SVGLocatable.cpp: Calculate screenCTM for <use> referenced objects.
  99040. (WebCore::SVGLocatable::computeCTM):
  99041. * svg/SVGStyledElement.cpp:
  99042. (WebCore::SVGStyledElement::cssPropertyIdForSVGAttributeName):
  99043. * svg/svgattrs.in:
  99044. 2010-06-08 Alexey Proskuryakov <ap@apple.com>
  99045. * GNUmakefile.am: Also adding platform/Cursor.cpp to Gtk build.
  99046. 2010-06-08 Csaba Osztrogonác <ossy@webkit.org>
  99047. [Qt] Unreviewed buildfix after r60849.
  99048. * WebCore.pro: platform/Cursor.cpp is added to Qt build system.
  99049. 2010-06-08 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>
  99050. Unreviewed Buildbot fix.
  99051. Reset the Qt TextBreakIterator when reusing it.
  99052. * platform/text/qt/TextBreakIteratorQt.cpp:
  99053. (WebCore::setUpIterator):
  99054. 2010-06-04 Alexey Proskuryakov <ap@apple.com>
  99055. Reviewed by John Sullivan.
  99056. https://bugs.webkit.org/show_bug.cgi?id=15779
  99057. <rdar://problem/8002964> Custom CSS .cur cursor anchor point is ignored
  99058. Test: manual-tests/cur-hotspot.html
  99059. Currently, this patch only has effect in Safari 5 on Windows. Other platforms will need
  99060. to implement getting hot spot information from .cur files.
  99061. * WebCore.vcproj/WebCore.vcproj:
  99062. * WebCore.xcodeproj/project.pbxproj:
  99063. Added Cursor.cpp. Looks like TextWrangler fixed line endings in vcproj file.
  99064. * css/CSSCursorImageValue.cpp:
  99065. (WebCore::CSSCursorImageValue::CSSCursorImageValue): Renamed "hotspot" to "hotSpot" to match
  99066. other code.
  99067. (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed): Ditto. Added a FIXME about possibly
  99068. incorrect code for resolving differences with CSS specified hotspot.
  99069. * css/CSSCursorImageValue.h:
  99070. (WebCore::CSSCursorImageValue::create):
  99071. (WebCore::CSSCursorImageValue::hotSpot):
  99072. Renamed "hotspot" to "hotSpot" to match other code.
  99073. * css/CSSParser.cpp: (WebCore::CSSParser::parseValue): Start with an invalid value for hot
  99074. spot, so that we can differentiate between missing and (0, 0) CSS hot spots. Missing and
  99075. invalid (-1, -1) are treated identically by Firefox, so we don't need to differentiate these.
  99076. * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty): Renamed "hotspot" to
  99077. "hotSpot" to match other code.
  99078. * page/EventHandler.cpp: (WebCore::EventHandler::selectCursor): Don't ignore cursors with
  99079. invalid CSS hot spots. Firefox ignores only the hot spot, not the whole cursor in this case
  99080. (and IE doesn't support CSS3 cursor declarations).
  99081. * platform/Cursor.cpp: Added. (WebCore::determineHotSpot): Added a function that decides
  99082. where hot spot is, provided an image and a possible out of band coordinate specification.
  99083. * platform/Cursor.h: Added determineHotSpot().
  99084. * platform/graphics/BitmapImage.cpp:
  99085. (WebCore::BitmapImage::getHotSpot):
  99086. * platform/graphics/BitmapImage.h:
  99087. * platform/graphics/Image.h:
  99088. (WebCore::Image::getHotSpot):
  99089. * platform/graphics/ImageSource.cpp:
  99090. (WebCore::ImageSource::getHotSpot):
  99091. * platform/graphics/ImageSource.h:
  99092. Added plumbing to get hot spot data from an image provider.
  99093. * platform/graphics/cg/ImageSourceCG.cpp: (WebCore::ImageSource::getHotSpot): CG implemantation.
  99094. * platform/mac/CursorMac.mm: (WebCore::createCustomCursor): Call determineHotSpot() to
  99095. determine where hot spot should be.
  99096. (WebCore::Cursor::Cursor): Renamed "hotspot" to "hotSpot" to match other code.
  99097. * platform/win/CursorWin.cpp: (WebCore::Cursor::Cursor): Call determineHotSpot() to determine
  99098. where hot spot should be.
  99099. * platform/gtk/CursorGtk.cpp: (WebCore::Cursor::Cursor): Ditto. This must be done despite
  99100. this platform not having an implementation for ImageSource::getHotSpot(), because we no longer
  99101. check for out of bounds hot spots in EventHandler::selectCursor().
  99102. * platform/qt/CursorQt.cpp: (WebCore::Cursor::Cursor): Ditto.
  99103. 2010-06-08 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>
  99104. Reviewed by Antti Koivisto.
  99105. [Qt] TextBreakIterator Qt performance
  99106. https://bugs.webkit.org/show_bug.cgi?id=39958
  99107. Rework TextBreakIteratorQt to be more in line with the ICU version.
  99108. We now reuse iterators where ever possible. The string data is compared
  99109. with memcmp, which should be faster than using a hash, as you need
  99110. to traverse the full buffer in the case the strings don't match,
  99111. where as the compare would fail quickly.
  99112. * platform/text/qt/TextBreakIteratorQt.cpp:
  99113. (WebCore::TextBreakIterator::TextBreakIterator):
  99114. (WebCore::setUpIterator):
  99115. (WebCore::wordBreakIterator):
  99116. (WebCore::characterBreakIterator):
  99117. (WebCore::lineBreakIterator):
  99118. (WebCore::sentenceBreakIterator):
  99119. 2010-06-08 Andras Becsi <abecsi@webkit.org>
  99120. Unreviewed build fix after r60785.
  99121. [GTK] Add missing GtkVersioning.h include to fix the build
  99122. on older GTK+ versions.
  99123. No new tests needed.
  99124. * platform/gtk/WidgetGtk.cpp:
  99125. 2010-06-08 Yury Semikhatsky <yurys@chromium.org>
  99126. Reviewed by Pavel Feldman.
  99127. Web Inspector: extend ScriptDebugServer to support script source editing
  99128. https://bugs.webkit.org/show_bug.cgi?id=40297
  99129. * bindings/js/ScriptDebugServer.cpp:
  99130. (WebCore::ScriptDebugServer::editScriptSource):
  99131. * bindings/js/ScriptDebugServer.h:
  99132. * bindings/v8/ScriptDebugServer.cpp:
  99133. (WebCore::ScriptDebugServer::editScriptSource):
  99134. * bindings/v8/ScriptDebugServer.h:
  99135. * inspector/InspectorBackend.cpp:
  99136. (WebCore::InspectorBackend::editScriptSource):
  99137. * inspector/InspectorBackend.h:
  99138. * inspector/InspectorBackend.idl:
  99139. * inspector/InspectorController.cpp:
  99140. (WebCore::InspectorController::InspectorController):
  99141. (WebCore::InspectorController::disableDebugger):
  99142. (WebCore::InspectorController::editScriptSource):
  99143. (WebCore::InspectorController::currentCallFrames):
  99144. (WebCore::InspectorController::didPause):
  99145. (WebCore::InspectorController::didContinue):
  99146. * inspector/InspectorController.h:
  99147. * inspector/InspectorFrontend.cpp:
  99148. (WebCore::InspectorFrontend::didEditScriptSource):
  99149. * inspector/InspectorFrontend.h:
  99150. * inspector/front-end/Script.js:
  99151. * inspector/front-end/ScriptsPanel.js:
  99152. (WebInspector.ScriptsPanel.prototype.canEditScripts):
  99153. (WebInspector.ScriptsPanel.prototype.editScriptSource.mycallback):
  99154. (WebInspector.ScriptsPanel.prototype.editScriptSource):
  99155. * inspector/front-end/Settings.js:
  99156. * inspector/front-end/SourceView.js:
  99157. (WebInspector.SourceView.prototype._editLine):
  99158. * inspector/front-end/TextViewer.js:
  99159. (WebInspector.TextViewer.prototype._handleDoubleClick):
  99160. (WebInspector.TextViewer.prototype._commitEditingLine):
  99161. * inspector/front-end/inspector.css:
  99162. (#scripts-files option.extension-script):
  99163. 2010-06-08 Antonio Gomes <tonikitoo@webkit.org>
  99164. Reviewed by Ojan Vafai and Darin Adler.
  99165. Refactor platform dependent editing behavior code out of Settings
  99166. https://bugs.webkit.org/show_bug.cgi?id=39854
  99167. As per discussion in bug 36627, Darin Adler suggested: "before the addition of any new EditingBehavior,
  99168. I think we to add functions to translate the overall behavior policy into specific behaviors rather than
  99169. directly saying 'behavior == Mac' or 'behavior == Windows'. Helper functions that expression the different
  99170. rules in plain language.". Patch addresses this request.
  99171. No behavior change, so no new tests.
  99172. * GNUmakefile.am:
  99173. * WebCore.pro:
  99174. * WebCore/WebCore.vcproj/WebCore.vcproj
  99175. * WebCore/WebCore.xcodeproj/project.pbxproj
  99176. * page/Settings.cpp:
  99177. (WebCore::Settings::Settings):
  99178. * page/Settings.h: Moved out EditingBehavior enum to WebCore/editing/EditingBehaviorTypes.h,
  99179. and renamed to EditingBehaviorTypes.
  99180. (WebCore::Settings::setEditingBehaviorType): Renamed from setEditingBehavior.
  99181. (WebCore::Settings::editingBehaviorType): Renamed from editingBehavior.
  99182. * editing/EditingBehavior.h: Added.
  99183. (WebCore::EditingBehavior::EditingBehavior): Class to work as a central point for
  99184. editing behavior that might have to be handled differently in the different platforms/ports.
  99185. Class should be not used or instantiated directly, but rather implicitly constructed
  99186. through the Editor class.
  99187. (WebCore::EditingBehavior::shouldMoveCaretToHorizontalBoundaryWhenPastTopOrBottom):
  99188. (WebCore::EditingBehavior::shouldConsiderSelectionAsDirectional):
  99189. (WebCore::EditingBehavior::shouldCenterAlignWhenSelectionIsRevealed):
  99190. * editing/EditingBehaviorTypes.h: Added.
  99191. (WebCore::):
  99192. * editing/Editor.cpp:
  99193. (WebCore::Editor::behavior): Getter for EditingBehavior class.
  99194. * editing/Editor.h:
  99195. * editing/EditorCommand.cpp:
  99196. (WebCore::executeToggleStyle):
  99197. * editing/SelectionController.cpp:
  99198. (WebCore::SelectionController::setSelection):
  99199. (WebCore::SelectionController::setIsDirectional):
  99200. (WebCore::SelectionController::positionForPlatform):
  99201. (WebCore::SelectionController::modify):
  99202. * page/EventHandler.cpp:
  99203. (WebCore::EventHandler::handleMousePressEventSingleClick):
  99204. * rendering/RenderBlock.cpp:
  99205. (WebCore::RenderBlock::positionForPointWithInlineChildren):
  99206. - Call sites will look like:
  99207. if (frame->editor()->behavior().shouldThisIfThat()))
  99208. // do something
  99209. 2010-06-08 Steve Block <steveblock@google.com>
  99210. Reviewed by Jeremy Orlow.
  99211. Prevent Geolocation making callbacks to a ScriptExecutionContext that no longer exists
  99212. https://bugs.webkit.org/show_bug.cgi?id=40162
  99213. Before making callbacks, we check that the relevant ScriptExecutionContext still exists.
  99214. To achieve this, the callbacks inherit from ActiveDOMObject.
  99215. The ScriptExecutionContext is ref'ed from script, so may not be GC'ed for some time after
  99216. it is disconnected from its frame. Making the callback currently involves accessing the
  99217. Frame, so an additional check for the Frame is required.
  99218. This change also prevents the V8 bindings from incorrectly holding a reference to the Frame.
  99219. Test: fast/dom/Geolocation/callback-to-deleted-context.html
  99220. * bindings/js/JSCallbackData.cpp:
  99221. (WebCore::JSCallbackData::invokeCallback):
  99222. * bindings/js/JSCustomPositionCallback.cpp:
  99223. (WebCore::JSCustomPositionCallback::JSCustomPositionCallback):
  99224. (WebCore::JSCustomPositionCallback::handleEvent):
  99225. * bindings/js/JSCustomPositionErrorCallback.cpp:
  99226. (WebCore::JSCustomPositionErrorCallback::JSCustomPositionErrorCallback):
  99227. (WebCore::JSCustomPositionErrorCallback::handleEvent):
  99228. * bindings/v8/custom/V8CustomPositionCallback.cpp:
  99229. (WebCore::V8CustomPositionCallback::V8CustomPositionCallback):
  99230. (WebCore::V8CustomPositionCallback::handleEvent):
  99231. * bindings/v8/custom/V8CustomPositionCallback.h:
  99232. (WebCore::V8CustomPositionCallback::create):
  99233. * bindings/v8/custom/V8CustomPositionErrorCallback.cpp:
  99234. (WebCore::V8CustomPositionErrorCallback::V8CustomPositionErrorCallback):
  99235. (WebCore::V8CustomPositionErrorCallback::handleEvent):
  99236. * bindings/v8/custom/V8CustomPositionErrorCallback.h:
  99237. (WebCore::V8CustomPositionErrorCallback::create):
  99238. * bindings/v8/custom/V8GeolocationCustom.cpp:
  99239. (WebCore::createPositionCallback):
  99240. (WebCore::createPositionErrorCallback):
  99241. * page/PositionCallback.h:
  99242. (WebCore::PositionCallback::PositionCallback):
  99243. * page/PositionErrorCallback.h:
  99244. (WebCore::PositionErrorCallback::PositionErrorCallback):
  99245. 2010-06-08 Xan Lopez <xlopez@igalia.com>
  99246. Reviewed by Gustavo Noronha.
  99247. [GTK] Avoid duplicated signals in DOM bindings
  99248. https://bugs.webkit.org/show_bug.cgi?id=40170
  99249. Do not create duplicated event signals between a class and its
  99250. ancestor.
  99251. * bindings/scripts/CodeGeneratorGObject.pm:
  99252. 2010-06-08 MORITA Hajime <morrita@google.com>
  99253. Unreviewd. Touched the file to force rebuild.
  99254. * html/HTMLMeterElement.idl:
  99255. 2010-06-08 Vangelis Kokkevis <vangelis@chromium.org>
  99256. Reviewed by Dimitri Glazkov.
  99257. [Chromium] Fix the math for transform matrices of composited layers. There
  99258. were problems both with how content layers were setting their position and
  99259. how the overal matrix stack was computed when the layer anchor isn't at the
  99260. center of the layer.
  99261. https://bugs.webkit.org/post_bug.cgi
  99262. * platform/graphics/chromium/GraphicsLayerChromium.cpp:
  99263. (WebCore::GraphicsLayerChromium::updateContentsRect):
  99264. * platform/graphics/chromium/LayerRendererChromium.cpp:
  99265. (WebCore::LayerRendererChromium::updateLayersRecursive):
  99266. (WebCore::LayerRendererChromium::drawLayer):
  99267. 2010-06-07 Eric Seidel <eric@webkit.org>
  99268. Reviewed by Adam Barth.
  99269. HTML5Lexer does not handle <div FOO ><img><img></div> correctly
  99270. https://bugs.webkit.org/show_bug.cgi?id=40283
  99271. Fix a typo in the AfterAttributeNameState.
  99272. The compiler really should have caught this since the typo
  99273. resulted in unreachable code.
  99274. Tests:
  99275. 10 tables/mozilla/marvin/colgroup* tests.
  99276. Also added a new sub-test in html5lib/resources/webkit01.dat
  99277. * html/HTML5Lexer.cpp:
  99278. (WebCore::HTML5Lexer::nextToken):
  99279. - Fix typo of = instead of >
  99280. 2010-06-08 Adam Barth <abarth@webkit.org>
  99281. Reviewed by Eric Seidel.
  99282. Implement HTML5's forceQuirks flag
  99283. https://bugs.webkit.org/show_bug.cgi?id=40284
  99284. I didn't implement this before because I didn't know how to test it,
  99285. but now I do.
  99286. Tests:
  99287. * fast/doctypes/doctype-parsing.html.
  99288. When we actually implement the quirks mode handling in the tree
  99289. builder, we'll probably want to add to this test.
  99290. * html/HTML5Lexer.cpp:
  99291. (WebCore::HTML5Lexer::nextToken):
  99292. * html/HTML5Token.h:
  99293. (WebCore::HTML5Token::forceQuirks):
  99294. (WebCore::HTML5Token::setForceQuirks):
  99295. * html/HTML5TreeBuilder.cpp:
  99296. (WebCore::HTML5TreeBuilder::passTokenToLegacyParser):
  99297. * html/HTMLParser.cpp:
  99298. (WebCore::HTMLParser::parseDoctypeToken):
  99299. * html/HTMLTokenizer.h:
  99300. (WebCore::DoctypeToken::reset):
  99301. 2010-06-08 Adam Barth <abarth@webkit.org>
  99302. Reviewed by Eric Seidel.
  99303. Remove ASSERT in ~HTML5Tokenizer
  99304. https://bugs.webkit.org/show_bug.cgi?id=40282
  99305. We thought this ASSERT would be a good idea, but the problem is that
  99306. this object is deleted without warning in some circumstances, so
  99307. there's no way to know whether it has reached the end of its state
  99308. machine.
  99309. * html/HTML5Tokenizer.cpp:
  99310. (WebCore::HTML5Tokenizer::~HTML5Tokenizer):
  99311. 2010-06-07 MORITA Hajime <morrita@google.com>
  99312. Reviewed by Kent Tamura.
  99313. [Mac] <meter> elements should be rendered as level indicators.
  99314. https://bugs.webkit.org/show_bug.cgi?id=40217
  99315. Implemented RenderThemeMac::paintMeter() using NSLevelIndicatorCell.
  99316. This change also added new -webkit-appearance values to select the
  99317. style of level indicators:
  99318. - relevancy-level-indicator,
  99319. - continuous-capacity-level-indicator,
  99320. - discrete-capacity-level-indicator, and
  99321. - rating-level-indicator.
  99322. The size of elements are adjusted based on the bounds of the indicator
  99323. to make room for painting whole indicator cells.
  99324. Tests: fast/dom/HTMLMeterElement/meter-appearances-capacity.html
  99325. fast/dom/HTMLMeterElement/meter-appearances-rating-relevancy.html
  99326. fast/dom/HTMLMeterElement/meter-optimums.html
  99327. * css/CSSPrimitiveValueMappings.h:
  99328. (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
  99329. * css/CSSValueKeywords.in:
  99330. * html/HTMLMeterElement.cpp:
  99331. (WebCore::HTMLMeterElement::gaugeRegion):
  99332. * html/HTMLMeterElement.h:
  99333. (WebCore::HTMLMeterElement::):
  99334. * platform/ThemeTypes.h:
  99335. (WebCore::):
  99336. * rendering/RenderMeter.cpp:
  99337. (WebCore::RenderMeter::calcWidth):
  99338. (WebCore::RenderMeter::calcHeight):
  99339. * rendering/RenderMeter.h:
  99340. * rendering/RenderTheme.cpp:
  99341. (WebCore::RenderTheme::adjustStyle):
  99342. (WebCore::RenderTheme::paint):
  99343. (WebCore::RenderTheme::paintBorderOnly):
  99344. (WebCore::RenderTheme::paintDecorations):
  99345. (WebCore::RenderTheme::meterSizeForBounds):
  99346. * rendering/RenderTheme.h:
  99347. * rendering/RenderThemeMac.h:
  99348. * rendering/RenderThemeMac.mm:
  99349. (WebCore::RenderThemeMac::meterSizeForBounds):
  99350. (WebCore::RenderThemeMac::paintMeter):
  99351. (WebCore::RenderThemeMac::levelIndicatorStyleFor):
  99352. (WebCore::RenderThemeMac::levelIndicatorFor):
  99353. 2010-06-07 MORITA Hajime <morrita@google.com>
  99354. Reviewed by Kent Tamura.
  99355. [Mac] ENABLE_METER_TAG should be enabled.
  99356. https://bugs.webkit.org/show_bug.cgi?id=40219
  99357. * Configurations/FeatureDefines.xcconfig:
  99358. * WebCore.xcodeproj/project.pbxproj:
  99359. 2010-06-07 Eric Seidel <eric@webkit.org>
  99360. Unreviewed. Just commit an edit Xcode keeps making automatically.
  99361. It appears someone hand-edited the file, Xcode no-like.
  99362. * WebCore.xcodeproj/project.pbxproj:
  99363. 2010-06-07 Eric Seidel <eric@webkit.org>
  99364. Reviewed by Adam Barth.
  99365. HTML5 Parser fails script-tests which use document.write
  99366. https://bugs.webkit.org/show_bug.cgi?id=40276
  99367. We were leaving the TreeBuilder paused when executing the scripts
  99368. resulting in document.write() calls being ignored.
  99369. I don't see a good way to ASSERT this correct behavior, since
  99370. the HTML5ScriptRunner and the HTML5TreeBuilder do not know about
  99371. each other. We should never have document.write() called while
  99372. the HTML5TreeBuilder is paused, however both document.write and
  99373. the network call the same HTML5Tokenizer::write method. It's OK
  99374. to be paused when the network writes, but during document.write
  99375. (or any other script execution).
  99376. Tested by all of fast/url and numerous other tests.
  99377. * html/HTML5Tokenizer.cpp:
  99378. (WebCore::HTML5Tokenizer::notifyFinished):
  99379. - Unpause the treebuilder before executing scripts.
  99380. (WebCore::HTML5Tokenizer::executeScriptsWaitingForStylesheets):
  99381. - Unpause the treebuilder before executing scripts.
  99382. 2010-06-07 Eric Seidel <eric@webkit.org>
  99383. Reviewed by Adam Barth.
  99384. HTML5 Parser hits ASSERT in fast/events/stop-load-in-unload-handler-using-document-write.html
  99385. https://bugs.webkit.org/show_bug.cgi?id=40268
  99386. Teach HTML5Tokenizer about m_parserStopped.
  99387. While tracking down how m_parserStopped was used, I found
  99388. several useless implementations of stopParsing() which I removed.
  99389. I also found a comment in HTMLTokenizer which still talks about the
  99390. "part" (an old class now split into Frame, Page, FrameLoader, etc.)
  99391. and an nearly empty FrameLoader::tokenizerProcessedData which I just
  99392. inlined into its one caller.
  99393. Tests:
  99394. fast/events/stop-load-in-unload-handler-using-document-write.html
  99395. http/tests/security/xssAuditor/full-block-base-href.html
  99396. * html/HTML5Tokenizer.cpp:
  99397. (WebCore::HTML5Tokenizer::pumpLexerIfPossible):
  99398. - New method used instead of direct calls to pumpLexer for when
  99399. callers would like to pump the lexer if possible, but don't want
  99400. to check if the parser is stopped, etc.
  99401. (WebCore::HTML5Tokenizer::pumpLexer):
  99402. - Added an ASSERT that the parser is not stopped.
  99403. - Stop pumping if the parser is stopped.
  99404. (WebCore::HTML5Tokenizer::write):
  99405. - Ignore the write if the parser is already stopped.
  99406. (WebCore::HTML5Tokenizer::end):
  99407. (WebCore::HTML5Tokenizer::attemptToEnd):
  99408. - Move comment back to finish() which was incorrectly moved here.
  99409. (WebCore::HTML5Tokenizer::endIfDelayed):
  99410. (WebCore::HTML5Tokenizer::finish):
  99411. - Move comment back here from attemptToEnd()
  99412. (WebCore::HTML5Tokenizer::resumeParsingAfterScriptExecution):
  99413. - Remove a bogus ASSERT. The lexer will stop when it needs
  99414. more data, which may not necessarily mean m_source.isEmpty().
  99415. * html/HTML5Tokenizer.h:
  99416. - Add pumpLexerIfPossible().
  99417. * html/HTMLTokenizer.cpp:
  99418. (WebCore::HTMLTokenizer::stopParsing):
  99419. - Add a FIXME about if we really should call checkCompleted() here.
  99420. - Inline FrameLoader::tokenizerProcessedData() since this was the only caller.
  99421. * loader/FrameLoader.cpp:
  99422. - Remove tokenizerProcessedData()
  99423. * loader/FrameLoader.h:
  99424. - Remove tokenizerProcessedData()
  99425. * loader/MediaDocument.cpp:
  99426. - Remove unneeded Tokenizer::stopParsing() override.
  99427. * loader/PluginDocument.cpp:
  99428. - Remove unneeded Tokenizer::stopParsing() override.
  99429. * loader/SinkDocument.cpp:
  99430. - Remove unneeded Tokenizer::stopParsing() override.
  99431. 2010-06-07 Adam Barth <abarth@webkit.org>
  99432. Reviewed by Eric Seidel.
  99433. Fix XFrameOptions and xssAuditor crashes in HTML5 parser
  99434. https://bugs.webkit.org/show_bug.cgi?id=40265
  99435. We're not supposed to call end() while the tokenizer's write() method.
  99436. This causes a bunch of LayoutTests to crash. In particular, this patch
  99437. fixes crashes in the following tests:
  99438. Tests:
  99439. * http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body.html
  99440. * http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny.html
  99441. * http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag.html
  99442. * http/tests/security/xssAuditor/full-block-base-href.html
  99443. * http/tests/security/xssAuditor/full-block-get-from-iframe.html
  99444. * http/tests/security/xssAuditor/full-block-iframe-javascript-url.html
  99445. * http/tests/security/xssAuditor/full-block-link-onclick.html
  99446. * http/tests/security/xssAuditor/full-block-post-from-iframe.html
  99447. * http/tests/security/xssAuditor/full-block-script-tag.html
  99448. * http/tests/security/xssAuditor/xss-protection-parsing-01.html
  99449. * html/HTML5Tokenizer.cpp:
  99450. (WebCore::):
  99451. (WebCore::HTML5Tokenizer::HTML5Tokenizer):
  99452. (WebCore::HTML5Tokenizer::write):
  99453. (WebCore::HTML5Tokenizer::attemptToEnd):
  99454. (WebCore::HTML5Tokenizer::endIfDelayed):
  99455. (WebCore::HTML5Tokenizer::finish):
  99456. (WebCore::HTML5Tokenizer::resumeParsingAfterScriptExecution):
  99457. * html/HTML5Tokenizer.h:
  99458. (WebCore::HTML5Tokenizer::inWrite):
  99459. 2010-06-07 Eric Seidel <eric@webkit.org>
  99460. Reviewed by Adam Barth.
  99461. HTML5 parser hits ASSERT in http/tests/misc/window-dot-stop.html
  99462. https://bugs.webkit.org/show_bug.cgi?id=40264
  99463. * html/HTML5Tokenizer.cpp:
  99464. (WebCore::HTML5Tokenizer::executeScript):
  99465. 2010-06-07 Kinuko Yasuda <kinuko@chromium.org>
  99466. Unreviewed.
  99467. Avoid "warning: no previous prototype for" in Snow Leopard compilation.
  99468. * platform/BlobItem.cpp: Added static to getFileSnapshotModificationTime().
  99469. 2010-06-07 Kinuko Yasuda <kinuko@chromium.org>
  99470. Reviewed by Jian Li.
  99471. Refactor FormData and Blob for better support of Blobs synthesized by BlobBuilder.
  99472. https://bugs.webkit.org/show_bug.cgi?id=39083
  99473. - Introduces a new class BlobItem as a basic component of Blob and FormDataList.
  99474. - File would become a special type of Blob that contains only one FileBlobItem.
  99475. - Fix the dependency violation in FormData so that the files under platform/ do not include any html/ files.
  99476. The patch doesn't support the latest File API changes (e.g. type,
  99477. url and slice's type parameters) and should not change any of its
  99478. existing behaviors.
  99479. The existing tests should be able to be used for regression.
  99480. * CMakeLists.txt:
  99481. * GNUmakefile.am:
  99482. * WebCore.gypi:
  99483. * WebCore.pro:
  99484. * WebCore.vcproj/WebCore.vcproj:
  99485. * WebCore.xcodeproj/project.pbxproj:
  99486. * html/Blob.cpp:
  99487. (WebCore::Blob::Blob):
  99488. (WebCore::Blob::size):
  99489. (WebCore::Blob::path):
  99490. (WebCore::Blob::append):
  99491. (WebCore::Blob::slice):
  99492. * html/Blob.h:
  99493. (WebCore::Blob::create):
  99494. (WebCore::Blob::type):
  99495. (WebCore::Blob::items):
  99496. (WebCore::Blob::Blob):
  99497. * html/File.cpp:
  99498. (WebCore::File::File):
  99499. (WebCore::File::name):
  99500. * html/File.h:
  99501. (WebCore::File::fileName):
  99502. * html/FileReader.cpp:
  99503. (WebCore::FileReader::readAsBinaryString):
  99504. (WebCore::FileReader::readAsText):
  99505. * html/FileStream.cpp:
  99506. (WebCore::FileStream::openForRead):
  99507. * html/FormDataList.cpp:
  99508. (WebCore::FormDataList::appendString): Moved the line ending fix logic to StringBlobItem::convertToCString.
  99509. (WebCore::FormDataList::appendBlob):
  99510. * html/FormDataList.h:
  99511. (WebCore::FormDataList::items):
  99512. * html/HTMLFormElement.cpp:
  99513. (WebCore::HTMLFormElement::createFormData):
  99514. * html/HTMLProgressElement.cpp:
  99515. * platform/BlobItem.cpp: Added.
  99516. * platform/BlobItem.h: Added.
  99517. * platform/network/FormData.cpp:
  99518. (WebCore::FormDataElement::FormDataElement):
  99519. (WebCore::FormData::create):
  99520. (WebCore::FormData::createMultiPart):
  99521. (WebCore::FormData::deepCopy):
  99522. (WebCore::FormData::appendData):
  99523. (WebCore::FormData::appendString):
  99524. (WebCore::FormData::appendFile):
  99525. (WebCore::FormData::appendFileRange):
  99526. (WebCore::FormData::appendItems):
  99527. (WebCore::FormData::appendItem):
  99528. (WebCore::FormData::appendKeyValuePairItems):
  99529. * platform/network/FormData.h:
  99530. (WebCore::operator!=):
  99531. * platform/network/mac/FormDataStreamMac.mm:
  99532. (WebCore::closeCurrentStream):
  99533. (WebCore::advanceCurrentStream):
  99534. (WebCore::formCreate):
  99535. (WebCore::formRead):
  99536. (WebCore::setHTTPBody):
  99537. * xml/XMLHttpRequest.cpp:
  99538. (WebCore::XMLHttpRequest::send):
  99539. 2010-06-07 Vangelis Kokkevis <vangelis@chromium.org>
  99540. Reviewed by Dimitri Glazkov.
  99541. [chromium] Decoupled transform matrix update of composited layers from
  99542. drawing and interposed a sorting step so that the layers are now composited
  99543. back to front to get transparency working correctly. Also added missing code
  99544. for the preserves3D CSS property.
  99545. * platform/graphics/chromium/GraphicsLayerChromium.cpp:
  99546. (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
  99547. * platform/graphics/chromium/LayerChromium.h:
  99548. (WebCore::LayerChromium::setDrawTransform):
  99549. (WebCore::LayerChromium::drawTransform):
  99550. (WebCore::LayerChromium::setDrawOpacity):
  99551. (WebCore::LayerChromium::drawOpacity):
  99552. (WebCore::LayerChromium::preserves3D):
  99553. * platform/graphics/chromium/LayerRendererChromium.cpp:
  99554. (WebCore::compareLayerZ):
  99555. (WebCore::LayerRendererChromium::drawLayers):
  99556. (WebCore::LayerRendererChromium::updateLayersRecursive):
  99557. (WebCore::LayerRendererChromium::drawLayer):
  99558. * platform/graphics/chromium/LayerRendererChromium.h:
  99559. 2010-06-07 Anton Muhin <antonm@chromium.org>
  99560. Reviewed by Nate Chapin.
  99561. [Chromium] convert a key to AtomicString in V8NodeList::namedPropertyGetter
  99562. https://bugs.webkit.org/show_bug.cgi?id=40238
  99563. Comparison to "length" below could be performed faster in this (major) case
  99564. as it would only require direct pointer comparison (cf. to full text
  99565. comparison if key is converted to WebCore::String.)
  99566. * bindings/v8/custom/V8NodeListCustom.cpp:
  99567. (WebCore::V8NodeList::namedPropertyGetter):
  99568. 2010-06-07 Ariya Hidayat <ariya.hidayat@codeaurora.org>
  99569. Reviewed by Kenneth Rohde Christiansen.
  99570. [Qt] Fix GraphicsContext::clipOut to take the transformation matrix into account.
  99571. * platform/graphics/qt/GraphicsContextQt.cpp:
  99572. (WebCore::GraphicsContext::clipOut):
  99573. 2010-06-07 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
  99574. Reviewed by Xan Lopez.
  99575. [gtk] web fonts not loaded properly in scribd html5 reader
  99576. https://bugs.webkit.org/show_bug.cgi?id=38758
  99577. Avoid always giving a positive reply in createFontPlatformData. We
  99578. do not want every non-existing family name to be considered a hit,
  99579. or weird usage of local sources in @font-face rules will make
  99580. WebKitGTK+ never consider the online fonts.
  99581. * GNUmakefile.am:
  99582. * platform/graphics/cairo/FontCacheCairo.cpp:
  99583. (WebCore::isWellKnownFontName):
  99584. (WebCore::FontCache::createFontPlatformData):
  99585. * platform/graphics/cairo/GOwnPtrCairo.cpp: Added.
  99586. (WTF::FcPattern):
  99587. (WTF::FcObjectSet):
  99588. (WTF::FcFontSet):
  99589. * platform/graphics/cairo/GOwnPtrCairo.h: Added.
  99590. 2010-06-07 Adam Barth <abarth@webkit.org>
  99591. Reviewed by Eric Seidel.
  99592. "Fix" fast/dom/stripNullFromTextNodes.html in HTML5 parser
  99593. https://bugs.webkit.org/show_bug.cgi?id=40200
  99594. The proper handling of null characters is to replace them with U+FFFD.
  99595. This patch "fixes" fast/dom/stripNullFromTextNodes.html in the sense
  99596. that it makes it give the proper output w.r.t. HTML5. However, that
  99597. doesn't match the behavior of the old parser, which just stripped the
  99598. nulls.
  99599. * html/HTML5Lexer.h:
  99600. (WebCore::HTML5Lexer::InputStreamPreprocessor::peek):
  99601. 2010-06-07 Adam Barth <abarth@webkit.org>
  99602. Reviewed by Eric Seidel.
  99603. HTML5 parser should normalize line endings
  99604. https://bugs.webkit.org/show_bug.cgi?id=40199
  99605. When reading characters from the source, we need to normalize line
  99606. endings, which means treating \r as \n and folding \r\n sequences into
  99607. a single \n. Doing this requires a slightly tighter pattern for
  99608. advancing the source (to make sure we update our state machine
  99609. correctly).
  99610. Fixes fast/css/first-child-pseudo-class.html and hundreds of other
  99611. LayoutTests in the HTML5 parser.
  99612. * html/HTML5Lexer.cpp:
  99613. (WebCore::HTML5Lexer::nextToken):
  99614. * html/HTML5Lexer.h:
  99615. (WebCore::HTML5Lexer::InputStreamPreprocessor::LineEndingNormalizer):
  99616. - Introduced InputStreamPreprocessor to keep track of our line
  99617. endings state machine. This class will grow to eventually do
  99618. all the input stream preprocessing required by the HTML5 spec.
  99619. (WebCore::HTML5Lexer::InputStreamPreprocessor::nextInputCharacter):
  99620. - We need to be careful not to read *source more than
  99621. once because we need to know whether we've transformed the
  99622. character. Keeping the next input character in this state
  99623. machine requires some careful coding, but seems advantageous.
  99624. (WebCore::HTML5Lexer::InputStreamPreprocessor::peek):
  99625. (WebCore::HTML5Lexer::InputStreamPreprocessor::advance):
  99626. 2010-06-07 Andrei Popescu <andreip@google.com>
  99627. Reviewed by Jeremy Orlow.
  99628. run-bindings-tests results broken by Changeset 60776
  99629. https://bugs.webkit.org/show_bug.cgi?id=40230
  99630. The change to CodeGeneratorJS.pm in
  99631. http://trac.webkit.org/changeset/60776/trunk/WebCore/bindings/scripts/CodeGeneratorJS.pm
  99632. added the possibility to use [CallWith=ScriptExecutionContext] in idl files.
  99633. Before the above change was submitted, CodeGeneratorJS.pm was modified so that native
  99634. functions return EncodedJSValue instead of JSValues. This was done in
  99635. http://trac.webkit.org/changeset/60631/trunk/WebCore/bindings/scripts/CodeGeneratorJS.pm
  99636. This CL updates the CodeGeneratorJS.pm to correctly return an EncodedJSValue in the case
  99637. where the ScriptExecutionContext pointer is 0 at the time when the native function is invoked.
  99638. No new tests, just fixing run-bindings-tests.
  99639. * bindings/scripts/CodeGeneratorJS.pm:
  99640. * bindings/scripts/test/JS/JSTestObj.cpp:
  99641. (WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContext):
  99642. * bindings/scripts/test/JS/JSTestObj.h:
  99643. 2010-06-07 Kwang Yul Seo <skyul@company100.net>
  99644. Reviewed by Eric Seidel.
  99645. [BREWMP] Add dummy SearchPopupMenu implementation
  99646. https://bugs.webkit.org/show_bug.cgi?id=40224
  99647. Add dummy implementation of SearchPopupMenu.
  99648. * platform/brew/SearchPopupMenuBrew.cpp: Added.
  99649. (WebCore::SearchPopupMenu::saveRecentSearches):
  99650. (WebCore::SearchPopupMenu::loadRecentSearches):
  99651. (WebCore::SearchPopupMenu::SearchPopupMenu):
  99652. (WebCore::SearchPopupMenu::enabled):
  99653. 2010-06-07 Julien Chaffraix <jchaffraix@webkit.org>
  99654. Unreviewed, reverting my HTML comment parsing change as it
  99655. breaks Gtk and Qt.
  99656. * html/HTMLTokenizer.cpp:
  99657. (WebCore::HTMLTokenizer::parseComment):
  99658. (WebCore::HTMLTokenizer::parseTag):
  99659. * html/HTMLTokenizer.h:
  99660. 2010-06-07 Martin Robinson <mrobinson@igalia.com>
  99661. Reviewed by Oliver Hunt.
  99662. [GTK] HTML5 input type=range is not drawn
  99663. https://bugs.webkit.org/show_bug.cgi?id=39561
  99664. Support HTML5 range widgets. They are now drawn using the standard
  99665. GTK+ theme drawing mechanism.
  99666. * platform/gtk/RenderThemeGtk.cpp:
  99667. (WebCore::supportsFocus): Add focus support for parts of sliders.
  99668. (WebCore::setMozillaState):
  99669. Add the GtkThemeWidgetType argument and honor depressed states for slider thumbs.
  99670. (WebCore::paintMozillaGtkWidget): Pass in the widget type to setMozillaState.
  99671. (WebCore::RenderThemeGtk::paintSliderTrack): Added.
  99672. (WebCore::RenderThemeGtk::adjustSliderTrackStyle): Added.
  99673. (WebCore::RenderThemeGtk::paintSliderThumb): Added.
  99674. (WebCore::RenderThemeGtk::adjustSliderThumbStyle): Added.
  99675. (WebCore::RenderThemeGtk::adjustSliderThumbSize): Added support for non-media sliders.
  99676. * platform/gtk/RenderThemeGtk.h: Added new method declarations.
  99677. 2010-06-07 Martin Robinson <mrobinson@igalia.com>
  99678. Reviewed by Xan Lopez.
  99679. [GTK] gtk_widget_get_window should replace widget->window
  99680. https://bugs.webkit.org/show_bug.cgi?id=40180
  99681. Replace all uses of widget->window with gtk_widget_get_window. For older
  99682. GTK+ versions, #define gtk_widget_get_window in GtkVersioning.h.
  99683. No tests necessary as functionality has not changed.
  99684. * platform/gtk/GtkPluginWidget.cpp:
  99685. (WebCore::GtkPluginWidget::invalidateRect): Replace widget->window use.
  99686. * platform/gtk/GtkVersioning.h: Add gtk_widget_get_window for old GTK+ versions.
  99687. * platform/gtk/PlatformScreenGtk.cpp:
  99688. (WebCore::getVisual): Replace widget->window use.
  99689. (WebCore::screenRect): Ditto.
  99690. * platform/gtk/PopupMenuGtk.cpp:
  99691. (WebCore::PopupMenu::show): Ditto.
  99692. * platform/gtk/WidgetGtk.cpp:
  99693. (WebCore::gdkDrawable): Ditto.
  99694. (WebCore::Widget::setCursor): Ditto.
  99695. 2010-06-07 Nikolas Zimmermann <nzimmermann@rim.com>
  99696. Reviewed by Sam Weinig.
  99697. Add CPP bindings generator
  99698. https://bugs.webkit.org/show_bug.cgi?id=38279
  99699. Add CPP bindings generator used in Olympia platform.
  99700. We can succesfully generate cpp bindings for all IDLs except:
  99701. - DOMWindow.idl / EventTarget.idl (filtered out in the IDL list in DerivedSources.make for non-jsc/v8 generators anyways, so no problem at all)
  99702. - inspector/ (not needed for us at all)
  99703. - svg/ (needs custom handling, related to animated attributes)
  99704. All generated files are free of style issues: "Total errors found: 0 in 510 files"
  99705. Not integrated in any build system so far, though I've successfully tested on Mac and inside Olympia, of course.
  99706. * bindings/cpp: Added.
  99707. * bindings/cpp/WebDOMCString.cpp: Added.
  99708. (WebDOMCString::reset):
  99709. (WebDOMCString::assign):
  99710. (WebDOMCString::length):
  99711. (WebDOMCString::data):
  99712. (WebDOMCString::utf16):
  99713. (WebDOMCString::fromUTF16):
  99714. (WebDOMCString::WebDOMCString):
  99715. (WebDOMCString::operator=):
  99716. (WebDOMCString::operator WTF::CString):
  99717. * bindings/cpp/WebDOMCString.h: Added.
  99718. (WebDOMCString::~WebDOMCString):
  99719. (WebDOMCString::WebDOMCString):
  99720. (WebDOMCString::operator=):
  99721. (WebDOMCString::isEmpty):
  99722. (WebDOMCString::isNull):
  99723. * bindings/cpp/WebDOMEventListenerCustom.cpp: Added.
  99724. (WebDOMEventListener::handleEvent):
  99725. (toWebKit):
  99726. * bindings/cpp/WebDOMEventTarget.cpp: Added.
  99727. (WebDOMEventTarget::WebDOMEventTargetPrivate::WebDOMEventTargetPrivate):
  99728. (WebDOMEventTarget::WebDOMEventTarget):
  99729. (WebDOMEventTarget::~WebDOMEventTarget):
  99730. (WebDOMEventTarget::impl):
  99731. (toWebCore):
  99732. (toWebKit):
  99733. * bindings/cpp/WebDOMEventTarget.h: Added.
  99734. * bindings/cpp/WebDOMHTMLDocumentCustom.cpp: Added.
  99735. (documentWrite):
  99736. (WebDOMHTMLDocument::write):
  99737. (WebDOMHTMLDocument::writeln):
  99738. * bindings/cpp/WebDOMNodeCustom.cpp: Added.
  99739. (WebDOMNode::insertBefore):
  99740. (WebDOMNode::replaceChild):
  99741. (WebDOMNode::removeChild):
  99742. (WebDOMNode::appendChild):
  99743. (WebDOMNode::addEventListener):
  99744. (WebDOMNode::removeEventListener):
  99745. * bindings/cpp/WebDOMObject.h: Added.
  99746. (WebDOMObject::WebDOMObject):
  99747. (WebDOMObject::~WebDOMObject):
  99748. * bindings/cpp/WebDOMString.cpp: Added.
  99749. (WebDOMString::reset):
  99750. (WebDOMString::assign):
  99751. (WebDOMString::length):
  99752. (WebDOMString::data):
  99753. (WebDOMString::utf8):
  99754. (WebDOMString::fromUTF8):
  99755. (WebDOMString::WebDOMString):
  99756. (WebDOMString::operator=):
  99757. (WebDOMString::operator WebCore::String):
  99758. (WebDOMString::operator WebCore::AtomicString):
  99759. (WebDOMString::equals):
  99760. * bindings/cpp/WebDOMString.h: Added.
  99761. (WebDOMString::~WebDOMString):
  99762. (WebDOMString::WebDOMString):
  99763. (WebDOMString::operator=):
  99764. (WebDOMString::isEmpty):
  99765. (WebDOMString::isNull):
  99766. * bindings/cpp/WebExceptionHandler.cpp: Added.
  99767. (globalExceptionHandler):
  99768. (webInstallExceptionHandler):
  99769. (webRaiseDOMException):
  99770. * bindings/cpp/WebExceptionHandler.h: Added.
  99771. (webDOMRaiseError):
  99772. * bindings/cpp/WebNativeEventListener.cpp: Added.
  99773. (WebNativeEventListener::WebNativeEventListener):
  99774. (WebNativeEventListener::~WebNativeEventListener):
  99775. (WebNativeEventListener::handleEvent):
  99776. (WebNativeEventListener::reportError):
  99777. (WebNativeEventListener::operator==):
  99778. * bindings/cpp/WebNativeEventListener.h: Added.
  99779. (WebNativeEventListener::create):
  99780. (WebNativeEventListener::cast):
  99781. * bindings/scripts/CodeGeneratorCPP.pm: Added.
  99782. * bindings/scripts/test/CPP: Added.
  99783. * bindings/scripts/test/CPP/WebDOMTestCallback.cpp: Added.
  99784. (WebDOMTestCallback::WebDOMTestCallbackPrivate::WebDOMTestCallbackPrivate):
  99785. (WebDOMTestCallback::WebDOMTestCallback):
  99786. (WebDOMTestCallback::impl):
  99787. (WebDOMTestCallback::~WebDOMTestCallback):
  99788. (WebDOMTestCallback::callbackWithClass1Param):
  99789. (WebDOMTestCallback::callbackWithClass2Param):
  99790. (WebDOMTestCallback::callbackWithNonBoolReturnType):
  99791. (toWebCore):
  99792. (toWebKit):
  99793. * bindings/scripts/test/CPP/WebDOMTestCallback.h: Added.
  99794. * bindings/scripts/test/CPP/WebDOMTestInterface.cpp: Added.
  99795. (WebDOMTestInterface::WebDOMTestInterfacePrivate::WebDOMTestInterfacePrivate):
  99796. (WebDOMTestInterface::WebDOMTestInterface):
  99797. (WebDOMTestInterface::impl):
  99798. (WebDOMTestInterface::~WebDOMTestInterface):
  99799. (toWebCore):
  99800. (toWebKit):
  99801. * bindings/scripts/test/CPP/WebDOMTestInterface.h: Added.
  99802. * bindings/scripts/test/CPP/WebDOMTestObj.cpp: Added.
  99803. (WebDOMTestObj::WebDOMTestObjPrivate::WebDOMTestObjPrivate):
  99804. (WebDOMTestObj::WebDOMTestObj):
  99805. (WebDOMTestObj::impl):
  99806. (WebDOMTestObj::~WebDOMTestObj):
  99807. (WebDOMTestObj::readOnlyIntAttr):
  99808. (WebDOMTestObj::readOnlyStringAttr):
  99809. (WebDOMTestObj::readOnlyTestObjAttr):
  99810. (WebDOMTestObj::intAttr):
  99811. (WebDOMTestObj::setIntAttr):
  99812. (WebDOMTestObj::longLongAttr):
  99813. (WebDOMTestObj::setLongLongAttr):
  99814. (WebDOMTestObj::unsignedLongLongAttr):
  99815. (WebDOMTestObj::setUnsignedLongLongAttr):
  99816. (WebDOMTestObj::stringAttr):
  99817. (WebDOMTestObj::setStringAttr):
  99818. (WebDOMTestObj::testObjAttr):
  99819. (WebDOMTestObj::setTestObjAttr):
  99820. (WebDOMTestObj::attrWithException):
  99821. (WebDOMTestObj::setAttrWithException):
  99822. (WebDOMTestObj::attrWithSetterException):
  99823. (WebDOMTestObj::setAttrWithSetterException):
  99824. (WebDOMTestObj::attrWithGetterException):
  99825. (WebDOMTestObj::setAttrWithGetterException):
  99826. (WebDOMTestObj::scriptStringAttr):
  99827. (WebDOMTestObj::voidMethod):
  99828. (WebDOMTestObj::voidMethodWithArgs):
  99829. (WebDOMTestObj::intMethod):
  99830. (WebDOMTestObj::intMethodWithArgs):
  99831. (WebDOMTestObj::objMethod):
  99832. (WebDOMTestObj::objMethodWithArgs):
  99833. (WebDOMTestObj::methodThatRequiresAllArgs):
  99834. (WebDOMTestObj::methodThatRequiresAllArgsAndThrows):
  99835. (WebDOMTestObj::serializedValue):
  99836. (WebDOMTestObj::methodWithException):
  99837. (WebDOMTestObj::addEventListener):
  99838. (WebDOMTestObj::removeEventListener):
  99839. (WebDOMTestObj::withDynamicFrame):
  99840. (WebDOMTestObj::withDynamicFrameAndArg):
  99841. (WebDOMTestObj::withDynamicFrameAndOptionalArg):
  99842. (WebDOMTestObj::withScriptStateVoid):
  99843. (WebDOMTestObj::withScriptStateObj):
  99844. (WebDOMTestObj::withScriptStateVoidException):
  99845. (WebDOMTestObj::withScriptStateObjException):
  99846. (WebDOMTestObj::methodWithOptionalArg):
  99847. (WebDOMTestObj::methodWithNonOptionalArgAndOptionalArg):
  99848. (WebDOMTestObj::methodWithNonOptionalArgAndTwoOptionalArgs):
  99849. (toWebCore):
  99850. (toWebKit):
  99851. * bindings/scripts/test/CPP/WebDOMTestObj.h: Added.
  99852. * css/StyleSheet.idl: Export helper method isCSSStyleSheet() for cpp bindings only.
  99853. * dom/CustomEvent.idl: Disabled for cpp bindings, needs arbitary input parameter handling support ('DOMObject' type).
  99854. * dom/Document.idl: Ignore getCSSCanvasContext() for cpp bindings and export helper method isHTMLDocument() (cpp bindings only).
  99855. * dom/Event.idl: Export isMutationEvent()/isMouseEvent()/isUIEvent() helpers for cpp bindings only.
  99856. * dom/EventListener.h: Add CPPEventListenerType.
  99857. * dom/Node.idl: addEventListener/removeEventListener need [Custom] flag for cpp bindings.
  99858. * dom/PopStateEvent.idl: Disabled just like CustomEvent, for the same reason ("any" argument type handling).
  99859. * html/HTMLCanvasElement.idl: Disable getContext() method for cpp bindings, as it's done for objc bindings.
  99860. * html/HTMLDocument.idl: Add [NoCPPCustom] marker for open(), as we're just autogenerating it.
  99861. * html/HTMLInputElement.idl: Disable valueAsDate() method for cpp bindings, as we're missing native 'Date' type support.
  99862. * html/TextMetrics.h: Add missing PassRefPtr.h include.
  99863. * html/canvas/CanvasRenderingContext2D.idl: Disable methods (setLineCap, etc..) for cpp bindings whose names clash with property setters.
  99864. * page/AbstractView.idl: Rename 'Media' type to 'StyleMedia' - this should have been done before.
  99865. * page/Location.idl: Disable several methods which would need a custom implementation for the cpp bindings.
  99866. * page/WebKitPoint.h: Add missing PassRefPtr.h include.
  99867. * storage/SQLResultSet.idl: Correct type from 'long' to 'long long', for cpp bindings only though as it wouldn't build on Chromium/V8.
  99868. * workers/DedicatedWorkerContext.idl: Disable postMessage() for now when using cpp bindings, would need custom code for us.
  99869. * workers/WorkerContext.idl: Hide constructors from cpp bindings.
  99870. 2010-06-07 Julien Chaffraix <jchaffraix@webkit.org>
  99871. Reviewed by Alexey Proskuryakov.
  99872. Space should be allowed between -- and > in comment end
  99873. https://bugs.webkit.org/show_bug.cgi?id=21945
  99874. Implemented the HTML comment parsing algorithm so that we match HTML5 and
  99875. FF when parsing comments. Missing from this patch is
  99876. the parser errors, which will be added in a follow up patch.
  99877. Added tests cases for broken comments.
  99878. Tests: fast/parser/broken-comment-1.html
  99879. fast/parser/broken-comment-2.html
  99880. fast/parser/broken-comment-3.html
  99881. fast/parser/broken-comment-4.html
  99882. fast/parser/broken-comment-5.html
  99883. fast/parser/broken-comment-6.html
  99884. fast/parser/broken-comment-in-head-1.html
  99885. fast/parser/broken-comment-in-head-2.html
  99886. fast/parser/broken-comment-in-head-3.html
  99887. fast/parser/broken-comment-in-head-4.html
  99888. fast/parser/broken-comment-in-head-5.html
  99889. * html/HTMLTokenizer.cpp:
  99890. (WebCore::HTMLTokenizer::parseComment): Now we use a state machine
  99891. that matches the HTML5 specification.
  99892. (WebCore::HTMLTokenizer::emitCommentToken): This emits the comment token
  99893. and keep some of the original behavior as parseComment is called in wrong
  99894. context (inside a <title> for example). Added a more explicit comment about
  99895. this.
  99896. (WebCore::HTMLTokenizer::parseTag): Remove the handling of <!--> in quirks mode.
  99897. HTML5 specifies that we should accept this in strict mode too.
  99898. * html/HTMLTokenizer.h:
  99899. (WebCore::HTMLTokenizer::): Added a new enum for the comment parsing state.
  99900. 2010-06-07 Mahesh Kulakrni <mahesh.kulkarni@nokia.com>
  99901. Reviewed by Simon Hausmann.
  99902. [QT] QT_BEARER flag is not enabled on S60 properly
  99903. https://bugs.webkit.org/show_bug.cgi?id=39357
  99904. enable QT_BEARER for all platform based on qtmobility +
  99905. bearer module availability or for qt 4.7+
  99906. * WebCore.pri:
  99907. 2010-06-07 Leon Clarke <leonclarke@google.com>
  99908. Reviewed by Jeremy Orlow.
  99909. Fix indexeddb idls in android makefile
  99910. https://bugs.webkit.org/show_bug.cgi?id=40169
  99911. No new tests. Android-specific build fix.
  99912. * Android.derived.v8bindings.mk:
  99913. 2010-06-07 Andrei Popescu <andreip@google.com>
  99914. Reviewed by Jeremy Orlow.
  99915. [indexedDB] It is impossible to create object stores
  99916. https://bugs.webkit.org/show_bug.cgi?id=40054
  99917. No new tests. Layout tests will be added separately.
  99918. * Android.mk:
  99919. * CMakeLists.txt:
  99920. * GNUmakefile.am:
  99921. * WebCore.gypi:
  99922. * WebCore.pro:
  99923. * WebCore.vcproj/WebCore.vcproj:
  99924. * WebCore.xcodeproj/project.pbxproj:
  99925. * bindings/scripts/CodeGeneratorJS.pm:
  99926. * bindings/scripts/CodeGeneratorV8.pm:
  99927. * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  99928. (webkit_dom_test_obj_with_script_execution_context):
  99929. * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  99930. * bindings/scripts/test/JS/JSTestObj.cpp:
  99931. (WebCore::):
  99932. (WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContext):
  99933. * bindings/scripts/test/JS/JSTestObj.h:
  99934. * bindings/scripts/test/ObjC/DOMTestObj.h:
  99935. * bindings/scripts/test/ObjC/DOMTestObj.mm:
  99936. (-[DOMTestObj withScriptExecutionContext]):
  99937. * bindings/scripts/test/TestObj.idl:
  99938. * bindings/scripts/test/V8/V8TestObj.cpp:
  99939. (WebCore::TestObjInternal::withScriptExecutionContextCallback):
  99940. (WebCore::):
  99941. * page/DOMWindow.cpp:
  99942. (WebCore::DOMWindow::clear):
  99943. (WebCore::DOMWindow::indexedDB):
  99944. * storage/IDBCallbacks.h:
  99945. * storage/IDBDatabase.h:
  99946. * storage/IDBDatabaseImpl.cpp:
  99947. (WebCore::IDBDatabaseImpl::createObjectStore):
  99948. * storage/IDBDatabaseImpl.h:
  99949. * storage/IDBDatabaseRequest.cpp:
  99950. (WebCore::IDBDatabaseRequest::IDBDatabaseRequest):
  99951. (WebCore::IDBDatabaseRequest::createObjectStore):
  99952. * storage/IDBDatabaseRequest.h:
  99953. * storage/IDBDatabaseRequest.idl:
  99954. * storage/IDBObjectStore.cpp: Removed.
  99955. * storage/IDBObjectStore.h:
  99956. (WebCore::IDBObjectStore::~IDBObjectStore):
  99957. * storage/IDBObjectStoreImpl.cpp: Added.
  99958. (WebCore::IDBObjectStoreImpl::~IDBObjectStoreImpl):
  99959. (WebCore::IDBObjectStoreImpl::IDBObjectStoreImpl):
  99960. (WebCore::IDBObjectStoreImpl::indexNames):
  99961. (WebCore::IDBObjectStoreImpl::createIndex):
  99962. (WebCore::IDBObjectStoreImpl::index):
  99963. (WebCore::IDBObjectStoreImpl::removeIndex):
  99964. * storage/IDBObjectStoreImpl.h: Added.
  99965. (WebCore::IDBObjectStoreImpl::create):
  99966. (WebCore::IDBObjectStoreImpl::name):
  99967. (WebCore::IDBObjectStoreImpl::keyPath):
  99968. * storage/IDBObjectStoreRequest.cpp:
  99969. (WebCore::IDBObjectStoreRequest::IDBObjectStoreRequest):
  99970. * storage/IDBObjectStoreRequest.h:
  99971. (WebCore::IDBObjectStoreRequest::create):
  99972. * storage/IDBRequest.cpp:
  99973. (WebCore::IDBRequest::onSuccess):
  99974. * storage/IDBRequest.h:
  99975. * storage/IndexedDatabaseRequest.cpp:
  99976. (WebCore::IndexedDatabaseRequest::IndexedDatabaseRequest):
  99977. (WebCore::IndexedDatabaseRequest::open):
  99978. * storage/IndexedDatabaseRequest.h:
  99979. (WebCore::IndexedDatabaseRequest::create):
  99980. * storage/IndexedDatabaseRequest.idl:
  99981. 2010-06-07 Nikolas Zimmermann <nzimmermann@rim.com>
  99982. Not reviewed. Updated run-bindings-tests results.
  99983. * bindings/scripts/test/JS/JSTestInterface.cpp:
  99984. (WebCore::JSTestInterfaceConstructor::constructTestInterface):
  99985. * bindings/scripts/test/JS/JSTestObj.cpp:
  99986. (WebCore::jsTestObjPrototypeFunctionVoidMethod):
  99987. (WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs):
  99988. (WebCore::jsTestObjPrototypeFunctionIntMethod):
  99989. (WebCore::jsTestObjPrototypeFunctionIntMethodWithArgs):
  99990. (WebCore::jsTestObjPrototypeFunctionObjMethod):
  99991. (WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
  99992. (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgs):
  99993. (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
  99994. (WebCore::jsTestObjPrototypeFunctionSerializedValue):
  99995. (WebCore::jsTestObjPrototypeFunctionMethodWithException):
  99996. (WebCore::jsTestObjPrototypeFunctionCustomMethod):
  99997. (WebCore::jsTestObjPrototypeFunctionCustomMethodWithArgs):
  99998. (WebCore::jsTestObjPrototypeFunctionCustomArgsAndException):
  99999. (WebCore::jsTestObjPrototypeFunctionAddEventListener):
  100000. (WebCore::jsTestObjPrototypeFunctionRemoveEventListener):
  100001. (WebCore::jsTestObjPrototypeFunctionWithDynamicFrame):
  100002. (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndArg):
  100003. (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndOptionalArg):
  100004. (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGesture):
  100005. (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGestureASAD):
  100006. (WebCore::jsTestObjPrototypeFunctionWithScriptStateVoid):
  100007. (WebCore::jsTestObjPrototypeFunctionWithScriptStateObj):
  100008. (WebCore::jsTestObjPrototypeFunctionWithScriptStateVoidException):
  100009. (WebCore::jsTestObjPrototypeFunctionWithScriptStateObjException):
  100010. (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalArg):
  100011. (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg):
  100012. (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs):
  100013. (WebCore::jsTestObjPrototypeFunctionOverloadedMethod1):
  100014. (WebCore::jsTestObjPrototypeFunctionOverloadedMethod2):
  100015. (WebCore::jsTestObjPrototypeFunctionOverloadedMethod3):
  100016. (WebCore::jsTestObjPrototypeFunctionOverloadedMethod4):
  100017. (WebCore::jsTestObjPrototypeFunctionOverloadedMethod):
  100018. * bindings/scripts/test/JS/JSTestObj.h:
  100019. 2010-06-07 Pavel Podivilov <podivilov@chromium.org>
  100020. Reviewed by Pavel Feldman.
  100021. Web Inspector: Implement JSON parsing for InspectorValue.
  100022. https://bugs.webkit.org/show_bug.cgi?id=40064
  100023. * inspector/InspectorValues.cpp:
  100024. (WebCore::):
  100025. (WebCore::InspectorValue::asBool):
  100026. (WebCore::InspectorValue::asNumber):
  100027. (WebCore::InspectorValue::asString):
  100028. (WebCore::InspectorValue::asObject):
  100029. (WebCore::InspectorValue::asArray):
  100030. (WebCore::InspectorValue::readJSON):
  100031. (WebCore::InspectorValue::writeJSON):
  100032. (WebCore::InspectorBasicValue::asBool):
  100033. (WebCore::InspectorBasicValue::asNumber):
  100034. (WebCore::InspectorBasicValue::writeJSON):
  100035. (WebCore::InspectorString::asString):
  100036. (WebCore::InspectorObject::asObject):
  100037. (WebCore::InspectorObject::getBool):
  100038. (WebCore::InspectorObject::getNumber):
  100039. (WebCore::InspectorObject::getString):
  100040. (WebCore::InspectorObject::getObject):
  100041. (WebCore::InspectorObject::getArray):
  100042. (WebCore::InspectorObject::get):
  100043. (WebCore::InspectorArray::asArray):
  100044. * inspector/InspectorValues.h:
  100045. (WebCore::InspectorObject::begin):
  100046. (WebCore::InspectorObject::end):
  100047. 2010-06-07 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
  100048. Reviewed by Simon Hausmann.
  100049. [Qt] Fix text selection drawing.
  100050. https://bugs.webkit.org/show_bug.cgi?id=40221
  100051. The regression was introduced in r60169.
  100052. * platform/graphics/qt/FontQt.cpp:
  100053. (WebCore::drawTextCommon):
  100054. 2010-06-07 Yury Semikhatsky <yurys@chromium.org>
  100055. Reviewed by Pavel Feldman.
  100056. Web Inspector: should be possible to distinguish extension scripts from main world scripts
  100057. https://bugs.webkit.org/show_bug.cgi?id=40220
  100058. * bindings/js/ScriptDebugServer.cpp: remove global listeners set which is not used anymore.
  100059. (WebCore::ScriptDebugServer::dispatchDidParseSource): pass script wrold type to the listeners.
  100060. (WebCore::currentWorldType):
  100061. (WebCore::ScriptDebugServer::sourceParsed):
  100062. * bindings/js/ScriptDebugServer.h:
  100063. * bindings/v8/ScriptDebugServer.cpp:
  100064. (WebCore::ScriptDebugServer::dispatchDidParseSource):
  100065. * inspector/InspectorController.cpp:
  100066. (WebCore::InspectorController::didParseSource):
  100067. * inspector/InspectorController.h:
  100068. * inspector/InspectorFrontend.cpp:
  100069. (WebCore::InspectorFrontend::parsedScriptSource):
  100070. * inspector/InspectorFrontend.h:
  100071. * inspector/ScriptDebugListener.h: pass type of the isolated world where the script was compiled to didParseSource.
  100072. (WebCore::):
  100073. * inspector/front-end/InjectedScript.js:
  100074. (injectedScriptConstructor):
  100075. * inspector/front-end/Script.js:
  100076. (WebInspector.Script):
  100077. * inspector/front-end/ScriptsPanel.js:
  100078. (WebInspector.ScriptsPanel.prototype.addScript):
  100079. (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu): use different style to highlight content scripts.
  100080. * inspector/front-end/inspector.css:
  100081. (#scripts-files option.extension-script):
  100082. * inspector/front-end/inspector.js:
  100083. (WebInspector.parsedScriptSource):
  100084. 2010-06-06 MORITA Hajime <morrita@google.com>
  100085. Unreviewd, Chromium windows build fix.
  100086. * rendering/RenderThemeChromiumWin.cpp:
  100087. (WebCore::RenderThemeChromiumWin::paintProgressBar):
  100088. 2010-06-06 MORITA Hajime <morrita@google.com>
  100089. Reviewed by Kent Tamura.
  100090. ASSERTION FAILED with -webkit-appearance:progress-bar for non <progress> elements
  100091. https://bugs.webkit.org/show_bug.cgi?id=40158
  100092. paintProgressBar() and paintMeter() assumed given RenderObject is
  100093. RenderProgress or RenderMeter respectively, but arbitrary elements
  100094. can have -webkit-appearance: progress-bar and such elements
  100095. violates that assumption. So this change added type check before
  100096. downcasting the RenderObject.
  100097. * platform/qt/RenderThemeQt.cpp:
  100098. (WebCore::RenderThemeQt::paintProgressBar):
  100099. * rendering/RenderTheme.cpp:
  100100. (WebCore::RenderTheme::paintMeter):
  100101. * rendering/RenderThemeChromiumSkia.cpp:
  100102. (WebCore::RenderThemeChromiumSkia::paintProgressBar):
  100103. * rendering/RenderThemeChromiumWin.cpp:
  100104. (WebCore::RenderThemeChromiumWin::paintProgressBar):
  100105. * rendering/RenderThemeMac.mm:
  100106. (WebCore::RenderThemeMac::paintProgressBar):
  100107. 2010-06-06 Gavin Barraclough <barraclough@apple.com>
  100108. Reviewed by NOBODY (Qt build fix pt 2).
  100109. * bridge/qt/qt_runtime.cpp:
  100110. (JSC::Bindings::findMethodIndex):
  100111. (JSC::Bindings::QtRuntimeMetaMethod::call):
  100112. (JSC::Bindings::QtRuntimeConnectionMethod::call):
  100113. 2010-06-06 Gavin Barraclough <barraclough@apple.com>
  100114. Reviewed by NOBODY (Qt build fix).
  100115. * bridge/qt/qt_runtime.cpp:
  100116. (JSC::Bindings::findMethodIndex):
  100117. (JSC::Bindings::QtRuntimeMetaMethod::call):
  100118. (JSC::Bindings::QtRuntimeConnectionMethod::call):
  100119. 2010-06-06 Gavin Barraclough <barraclough@apple.com>
  100120. Reviewed by Sam Weinig.
  100121. Bug 40214 - Clean up error construction / throwing in JSC.
  100122. The one egregious insanity here is that creating an error requires
  100123. a VM-entry-esqe-host call (the string argument is wrapped as a JS
  100124. object & pushed on the RegisterFile, then unwrapped back to a
  100125. UString). Changing this also means you only require a global
  100126. object, not an ExecState, to create an error.
  100127. The methods to create error objects are also parameterized
  100128. requiring a switch on the type, which can be made cleaner and
  100129. faster by moving to a separate method per error type. Code to add
  100130. divot information to error had been duplicated, and is coalesced
  100131. back into a single function.
  100132. Convenience methods added to create & throw type & syntax error
  100133. with a default error message, since this is a common case.
  100134. Also, errors are currently thrown either using
  100135. "throwError(exec, error)" or "exec->setException(error)" - unify
  100136. on the former, since this is more commonly used. Add
  100137. "throwVMError(exec, error)" equivalents, as a convenience for
  100138. cases where the result was being wrapped in "JSValue::encode(...)".
  100139. * WebCore.xcodeproj/project.pbxproj:
  100140. * bindings/js/JSArrayBufferConstructor.h:
  100141. (WebCore::construct):
  100142. * bindings/js/JSArrayBufferViewHelper.h:
  100143. (WebCore::setWebGLArrayHelper):
  100144. * bindings/js/JSAudioConstructor.cpp:
  100145. (WebCore::constructAudio):
  100146. * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
  100147. (WebCore::JSCanvasRenderingContext2D::setFillColor):
  100148. (WebCore::JSCanvasRenderingContext2D::setStrokeColor):
  100149. (WebCore::JSCanvasRenderingContext2D::drawImage):
  100150. (WebCore::JSCanvasRenderingContext2D::drawImageFromRect):
  100151. (WebCore::JSCanvasRenderingContext2D::setShadow):
  100152. (WebCore::JSCanvasRenderingContext2D::createPattern):
  100153. (WebCore::JSCanvasRenderingContext2D::fillText):
  100154. (WebCore::JSCanvasRenderingContext2D::strokeText):
  100155. * bindings/js/JSClipboardCustom.cpp:
  100156. (WebCore::JSClipboard::clearData):
  100157. (WebCore::JSClipboard::getData):
  100158. (WebCore::JSClipboard::setDragImage):
  100159. * bindings/js/JSDOMBinding.cpp:
  100160. (WebCore::setDOMException):
  100161. (WebCore::toJSSequence):
  100162. * bindings/js/JSDOMWrapper.cpp:
  100163. (WebCore::DOMObject::defineOwnProperty):
  100164. * bindings/js/JSDesktopNotificationsCustom.cpp:
  100165. (WebCore::JSNotificationCenter::requestPermission):
  100166. * bindings/js/JSEventSourceConstructor.cpp:
  100167. (WebCore::constructEventSource):
  100168. * bindings/js/JSHTMLDocumentCustom.cpp:
  100169. (WebCore::JSHTMLDocument::open):
  100170. * bindings/js/JSHTMLInputElementCustom.cpp:
  100171. (WebCore::JSHTMLInputElement::selectionStart):
  100172. (WebCore::JSHTMLInputElement::setSelectionStart):
  100173. (WebCore::JSHTMLInputElement::selectionEnd):
  100174. (WebCore::JSHTMLInputElement::setSelectionEnd):
  100175. (WebCore::JSHTMLInputElement::setSelectionRange):
  100176. * bindings/js/JSImageConstructor.cpp:
  100177. (WebCore::constructImage):
  100178. * bindings/js/JSJavaScriptCallFrameCustom.cpp:
  100179. (WebCore::JSJavaScriptCallFrame::evaluate):
  100180. * bindings/js/JSMessageChannelConstructor.cpp:
  100181. (WebCore::JSMessageChannelConstructor::construct):
  100182. * bindings/js/JSMessagePortCustom.cpp:
  100183. (WebCore::fillMessagePortArray):
  100184. * bindings/js/JSOptionConstructor.cpp:
  100185. (WebCore::constructHTMLOptionElement):
  100186. * bindings/js/JSSVGMatrixCustom.cpp:
  100187. (WebCore::JSSVGMatrix::multiply):
  100188. * bindings/js/JSSharedWorkerConstructor.cpp:
  100189. (WebCore::constructSharedWorker):
  100190. * bindings/js/JSWebGLRenderingContextCustom.cpp:
  100191. (WebCore::JSWebGLRenderingContext::bufferData):
  100192. (WebCore::JSWebGLRenderingContext::bufferSubData):
  100193. (WebCore::getObjectParameter):
  100194. (WebCore::JSWebGLRenderingContext::getFramebufferAttachmentParameter):
  100195. (WebCore::JSWebGLRenderingContext::getParameter):
  100196. (WebCore::JSWebGLRenderingContext::getProgramParameter):
  100197. (WebCore::JSWebGLRenderingContext::getShaderParameter):
  100198. (WebCore::JSWebGLRenderingContext::getUniform):
  100199. (WebCore::JSWebGLRenderingContext::texImage2D):
  100200. (WebCore::JSWebGLRenderingContext::texSubImage2D):
  100201. (WebCore::dataFunctionf):
  100202. (WebCore::dataFunctioni):
  100203. (WebCore::dataFunctionMatrix):
  100204. * bindings/js/JSWebSocketConstructor.cpp:
  100205. (WebCore::constructWebSocket):
  100206. * bindings/js/JSWebSocketCustom.cpp:
  100207. (WebCore::JSWebSocket::send):
  100208. * bindings/js/JSWorkerConstructor.cpp:
  100209. (WebCore::constructWorker):
  100210. * bindings/js/JSXMLHttpRequestConstructor.cpp:
  100211. (WebCore::constructXMLHttpRequest):
  100212. * bindings/js/JSXMLHttpRequestCustom.cpp:
  100213. (WebCore::JSXMLHttpRequest::open):
  100214. * bindings/js/SerializedScriptValue.cpp:
  100215. (WebCore::BaseWalker::throwStackOverflow):
  100216. (WebCore::BaseWalker::throwInterruptedException):
  100217. (WebCore::SerializingTreeWalker::startArray):
  100218. (WebCore::SerializingTreeWalker::startObject):
  100219. * bindings/js/WorkerScriptController.cpp:
  100220. (WebCore::WorkerScriptController::setException):
  100221. * bindings/scripts/CodeGeneratorJS.pm:
  100222. * bridge/c/c_instance.cpp:
  100223. (JSC::Bindings::CInstance::moveGlobalExceptionToExecState):
  100224. (JSC::Bindings::CInstance::invokeMethod):
  100225. (JSC::Bindings::CInstance::invokeDefaultMethod):
  100226. (JSC::Bindings::CInstance::invokeConstruct):
  100227. * bridge/jni/jsc/JNIBridgeJSC.cpp:
  100228. (JavaField::dispatchValueFromInstance):
  100229. (JavaField::dispatchSetValueToInstance):
  100230. * bridge/jni/jsc/JavaInstanceJSC.cpp:
  100231. (JavaInstance::invokeMethod):
  100232. * bridge/objc/objc_instance.mm:
  100233. (ObjcInstance::moveGlobalExceptionToExecState):
  100234. (ObjcInstance::invokeMethod):
  100235. * bridge/objc/objc_runtime.mm:
  100236. (JSC::Bindings::ObjcField::valueFromInstance):
  100237. (JSC::Bindings::ObjcField::setValueToInstance):
  100238. (JSC::Bindings::ObjcArray::setValueAt):
  100239. (JSC::Bindings::ObjcArray::valueAt):
  100240. (JSC::Bindings::callObjCFallbackObject):
  100241. * bridge/objc/objc_utility.h:
  100242. * bridge/objc/objc_utility.mm:
  100243. (JSC::Bindings::throwError):
  100244. * bridge/runtime_array.cpp:
  100245. (JSC::RuntimeArray::put):
  100246. * bridge/runtime_method.cpp:
  100247. (JSC::callRuntimeMethod):
  100248. * bridge/runtime_object.cpp:
  100249. (JSC::Bindings::RuntimeObject::throwInvalidAccessError):
  100250. 2010-06-06 Dirk Schulze <krit@webkit.org>
  100251. Reviewed by Nikolas Zimmermann.
  100252. hit testing does not respect clip paths
  100253. https://bugs.webkit.org/show_bug.cgi?id=15162
  100254. Test: svg/dynamic-updates/SVGClipPath-influences-hitTesting.html
  100255. Added a check, if a float point is not only in the shape/object boundaries
  100256. but also is not in the clipped away area of a clipPath.
  100257. * rendering/HitTestRequest.h:
  100258. (WebCore::HitTestRequest::):
  100259. (WebCore::HitTestRequest::svgClipContent):
  100260. * rendering/RenderPath.cpp:
  100261. (WebCore::RenderPath::fillContains):
  100262. (WebCore::RenderPath::nodeAtFloatPoint):
  100263. * rendering/RenderPath.h:
  100264. * rendering/RenderSVGContainer.cpp:
  100265. (WebCore::RenderSVGContainer::nodeAtFloatPoint):
  100266. * rendering/RenderSVGImage.cpp:
  100267. (WebCore::RenderSVGImage::nodeAtFloatPoint):
  100268. * rendering/RenderSVGResourceClipper.cpp:
  100269. (WebCore::RenderSVGResourceClipper::hitTestClipContent):
  100270. * rendering/RenderSVGResourceClipper.h:
  100271. * rendering/RenderSVGText.cpp:
  100272. (WebCore::RenderSVGText::nodeAtFloatPoint):
  100273. * rendering/SVGRenderSupport.cpp:
  100274. (WebCore::pointInClippingArea):
  100275. * rendering/SVGRenderSupport.h:
  100276. 2010-06-06 Dirk Schulze <krit@webkit.org>
  100277. Reviewed by Nikolas Zimmermann.
  100278. SVG Pattern/Gradient clean-up
  100279. https://bugs.webkit.org/show_bug.cgi?id=40205
  100280. Transformations of SVG Patterns and Gradients can be bundeled.
  100281. This calculation also needs just to be calculated once. It's not a great speed-up for most platforms,
  100282. but a clean-up and preparation for new features like vectorEffects and others.
  100283. Now, that we don't recalucluate the gradient and its transformations, it was necessary to add a way
  100284. to transform alreday existing gradients on Cairo. This is done in the same way like Skia transforms
  100285. gradients after they were created.
  100286. This patch doesn't change functionality, so no new tests added.
  100287. * platform/graphics/Gradient.cpp:
  100288. * platform/graphics/cairo/GradientCairo.cpp:
  100289. (WebCore::Gradient::setPlatformGradientSpaceTransform):
  100290. * rendering/RenderSVGResourceGradient.cpp:
  100291. (WebCore::RenderSVGResourceGradient::applyResource):
  100292. * rendering/RenderSVGResourceGradient.h:
  100293. * rendering/RenderSVGResourcePattern.cpp:
  100294. (WebCore::RenderSVGResourcePattern::applyResource):
  100295. (WebCore::RenderSVGResourcePattern::createTileImage):
  100296. (WebCore::RenderSVGResourcePattern::buildPattern):
  100297. * rendering/RenderSVGResourcePattern.h:
  100298. 2010-06-05 Dumitru Daniliuc <dumi@chromium.org>
  100299. Unreviewed, typo/build fix.
  100300. * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:
  100301. (WebCore::V8SQLStatementErrorCallback::handleEvent):
  100302. 2010-05-28 Dumitru Daniliuc <dumi@chromium.org>
  100303. Reviewed by Adam Barth.
  100304. Do not pass empty handles to v8.
  100305. https://bugs.webkit.org/show_bug.cgi?id=39896
  100306. Passing an empty handle to v8 results in a crash with a stack
  100307. trace that doesn't give us much information about the cause of the
  100308. crash. Instead, if we check the handles we pass to v8 and crash
  100309. when they are empty, we do not make things worse, and should get a
  100310. more informative stack trace.
  100311. * bindings/scripts/CodeGeneratorV8.pm:
  100312. * bindings/scripts/test/V8/V8TestCallback.cpp:
  100313. (WebCore::V8TestCallback::callbackWithClass1Param):
  100314. (WebCore::V8TestCallback::callbackWithClass2Param):
  100315. * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:
  100316. (WebCore::V8SQLStatementErrorCallback::handleEvent):
  100317. 2010-05-30 Antonio Gomes <tonikitoo@webkit.org>
  100318. Reviewed by Darin Adler.
  100319. Add a convenient helper getter for Frame* to RenderObject
  100320. https://bugs.webkit.org/show_bug.cgi?id=39928
  100321. document()->frame() is being called enough from RenderObject derivated classes
  100322. that it worth adding a helper Frame getter as a shortcut.
  100323. No behavior change, so no new tests.
  100324. * accessibility/AccessibilityRenderObject.cpp:
  100325. (WebCore::AccessibilityRenderObject::isOffScreen):
  100326. (WebCore::AccessibilityRenderObject::stringValue):
  100327. (WebCore::AccessibilityRenderObject::selection):
  100328. (WebCore::AccessibilityRenderObject::setSelectedVisiblePositionRange):
  100329. * page/EventHandler.cpp:
  100330. (WebCore::canAutoscroll):
  100331. * rendering/InlineTextBox.cpp:
  100332. (WebCore::InlineTextBox::paint):
  100333. (WebCore::InlineTextBox::paintCustomHighlight):
  100334. (WebCore::InlineTextBox::paintTextMatchMarker):
  100335. * rendering/RenderBlock.cpp:
  100336. (WebCore::RenderBlock::paintCaret):
  100337. * rendering/RenderBox.cpp:
  100338. (WebCore::RenderBox::paintCustomHighlight):
  100339. * rendering/RenderDataGrid.cpp:
  100340. (WebCore::RenderDataGrid::isActive):
  100341. * rendering/RenderFrameSet.cpp:
  100342. (WebCore::RenderFrameSet::flattenFrameSet):
  100343. * rendering/RenderImage.cpp:
  100344. (WebCore::RenderImage::paintFocusRings):
  100345. * rendering/RenderInline.cpp:
  100346. (WebCore::RenderInline::addDashboardRegions):
  100347. * rendering/RenderLayer.cpp:
  100348. (WebCore::RenderLayer::~RenderLayer):
  100349. (WebCore::RenderLayer::panScrollFromPoint):
  100350. (WebCore::RenderLayer::scrollByRecursively):
  100351. (WebCore::RenderLayer::scrollToOffset):
  100352. (WebCore::RenderLayer::autoscroll):
  100353. (WebCore::RenderLayer::isActive):
  100354. (showLayerTree):
  100355. * rendering/RenderLayerBacking.cpp:
  100356. (WebCore::inspectorTimelineAgent):
  100357. * rendering/RenderListBox.cpp:
  100358. (WebCore::RenderListBox::paintItemForeground):
  100359. (WebCore::RenderListBox::paintItemBackground):
  100360. (WebCore::RenderListBox::panScroll):
  100361. (WebCore::RenderListBox::autoscroll):
  100362. (WebCore::RenderListBox::isActive):
  100363. * rendering/RenderObject.cpp:
  100364. (WebCore::RenderObject::~RenderObject):
  100365. (WebCore::RenderObject::selectionBackgroundColor):
  100366. (WebCore::RenderObject::selectionForegroundColor):
  100367. (WebCore::RenderObject::destroy):
  100368. (WebCore::RenderObject::addDashboardRegions):
  100369. (WebCore::RenderObject::animation):
  100370. * rendering/RenderObject.h:
  100371. (WebCore::RenderObject::document):
  100372. (WebCore::RenderObject::frame):
  100373. 2010-06-05 Jonathan Kliegman <kliegs@chromium.org>
  100374. Reviewed by Dirk Schulze.
  100375. SVG doesn't support rgba colors
  100376. https://bugs.webkit.org/show_bug.cgi?id=16183
  100377. Enabled processing of rgba, hsl and hsla color specifications
  100378. for SVG files. SVG spec calls for CSS2 but common usage and
  100379. other browsers suppor CSS3 colors being used in SVG files
  100380. Removed unused svg paramater from CSSParser::parseColorFromValue
  100381. Tests: svg/custom/fill-opacity-hsl.svg
  100382. svg/custom/fill-opacity-rgba.svg
  100383. * css/CSSParser.cpp:
  100384. (WebCore::CSSParser::parseColorFromValue):
  100385. * css/CSSParser.h:
  100386. * css/SVGCSSParser.cpp:
  100387. (WebCore::CSSParser::parseSVGValue):
  100388. (WebCore::CSSParser::parseSVGPaint):
  100389. (WebCore::CSSParser::parseSVGColor):
  100390. * svg/SVGColor.cpp:
  100391. (WebCore::SVGColor::colorFromRGBColorString):
  100392. 2010-06-05 Anders Bakken <agbakken@gmail.com>
  100393. Reviewed by Eric Seidel.
  100394. [Qt] ContextMenuItemQt.cpp has coding-style errors
  100395. https://bugs.webkit.org/show_bug.cgi?id=39780
  100396. * platform/qt/ContextMenuItemQt.cpp:
  100397. 2010-06-05 Anders Bakken <agbakken@gmail.com>
  100398. Reviewed by Eric Seidel.
  100399. [Qt] ContextMenuQt.cpp has coding-style errors
  100400. https://bugs.webkit.org/show_bug.cgi?id=39779
  100401. * platform/qt/ContextMenuQt.cpp:
  100402. 2010-06-05 Anders Bakken <agbakken@gmail.com>
  100403. Reviewed by Eric Seidel.
  100404. [Qt] DragDataQt.cpp has coding-style errors
  100405. https://bugs.webkit.org/show_bug.cgi?id=39777
  100406. * platform/qt/DragDataQt.cpp:
  100407. 2010-06-05 Anders Bakken <agbakken@gmail.com>
  100408. Reviewed by Eric Seidel.
  100409. [Qt] FileChooserQt.cpp has coding-style errors
  100410. https://bugs.webkit.org/show_bug.cgi?id=39776
  100411. * platform/qt/FileChooserQt.cpp:
  100412. 2010-06-05 Anders Bakken <agbakken@gmail.com>
  100413. Reviewed by Eric Seidel.
  100414. [Qt] FileSystemQt.cpp has coding-style errors
  100415. https://bugs.webkit.org/show_bug.cgi?id=39775
  100416. * platform/qt/FileSystemQt.cpp:
  100417. 2010-06-05 Anders Bakken <agbakken@gmail.com>
  100418. Reviewed by Eric Seidel.
  100419. [Qt] KURLQt.cpp has coding-style errors
  100420. https://bugs.webkit.org/show_bug.cgi?id=39774
  100421. * platform/qt/KURLQt.cpp:
  100422. 2010-06-05 Anders Bakken <agbakken@gmail.com>
  100423. Reviewed by Eric Seidel.
  100424. [Qt] LoggingQt.cpp has coding-style errors
  100425. https://bugs.webkit.org/show_bug.cgi?id=39772
  100426. * platform/qt/LoggingQt.cpp:
  100427. 2010-06-05 Anders Bakken <agbakken@gmail.com>
  100428. Reviewed by Eric Seidel.
  100429. [Qt] PlatformKeyboardEventQt.cpp has coding-style errors
  100430. https://bugs.webkit.org/show_bug.cgi?id=39770
  100431. * platform/qt/PlatformKeyboardEventQt.cpp:
  100432. (WebCore::keyIdentifierForQtKeyCode):
  100433. (WebCore::windowsKeyCodeForKeyEvent):
  100434. (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
  100435. 2010-06-05 Anders Bakken <agbakken@gmail.com>
  100436. Reviewed by Eric Seidel.
  100437. [Qt] PlatformScreenQt.cpp has coding-style errors
  100438. https://bugs.webkit.org/show_bug.cgi?id=39768
  100439. * platform/qt/PlatformMouseEventQt.cpp:
  100440. (WebCore::PlatformMouseEvent::PlatformMouseEvent):
  100441. 2010-06-05 Anders Bakken <agbakken@gmail.com>
  100442. Reviewed by Eric Seidel.
  100443. [Qt] RenderThemeQt.cpp has coding-style errors
  100444. https://bugs.webkit.org/show_bug.cgi?id=39767
  100445. * platform/qt/RenderThemeQt.cpp:
  100446. 2010-06-05 Anders Bakken <agbakken@gmail.com>
  100447. Reviewed by Eric Seidel.
  100448. [Qt] ScrollbarQt.cpp has coding-style errors
  100449. https://bugs.webkit.org/show_bug.cgi?id=39765
  100450. * platform/qt/ScrollbarQt.cpp:
  100451. 2010-06-04 Adam Barth <abarth@webkit.org>
  100452. Reviewed by Eric Seidel.
  100453. Make HTML5Lexer go fast
  100454. https://bugs.webkit.org/show_bug.cgi?id=40048
  100455. This patch changes us from using a jump table for each character to
  100456. using absolute jumps between parser states. This appears to be about a
  100457. 1% improvement on the parser bench mark (which is 1/10th of what we
  100458. need to catch the old parser).
  100459. I've kept the underlying logic as close to the old logic as possible.
  100460. This new form will make it easier to handle the input stream part of
  100461. the spec and to make further performance improvements.
  100462. * html/HTML5Lexer.cpp:
  100463. (WebCore::HTML5Lexer::reset):
  100464. (WebCore::HTML5Lexer::nextToken):
  100465. (WebCore::HTML5Lexer::emitCurrentToken):
  100466. * html/HTML5Lexer.h:
  100467. 2010-06-04 Adam Barth <abarth@webkit.org>
  100468. Reviewed by Darin Adler.
  100469. HTML5 parser should be within 1% of old parser performance
  100470. https://bugs.webkit.org/show_bug.cgi?id=40172
  100471. Stop using adopt(). I think this function is cause us to do extra
  100472. mallocs that are hurting performance. Instead of caching AtomicString
  100473. on HTML5Token, just use the AtomicString on the old token. Also,
  100474. reserve inline capacity for 10 attributes.
  100475. * html/HTML5Lexer.cpp:
  100476. (WebCore::HTML5Lexer::isAppropriateEndTag):
  100477. * html/HTML5Lexer.h:
  100478. * html/HTML5Token.h:
  100479. (WebCore::HTML5Token::beginStartTag):
  100480. (WebCore::HTML5Token::beginEndTag):
  100481. (WebCore::HTML5Token::beginCharacter):
  100482. (WebCore::HTML5Token::beginComment):
  100483. (WebCore::HTML5Token::beginDOCTYPE):
  100484. (WebCore::HTML5Token::name):
  100485. (WebCore::HTML5Token::characters):
  100486. (WebCore::HTML5Token::comment):
  100487. * html/HTML5TreeBuilder.cpp:
  100488. (WebCore::convertToOldStyle):
  100489. (WebCore::HTML5TreeBuilder::passTokenToLegacyParser):
  100490. 2010-06-04 Anders Bakken <agbakken@gmail.com>
  100491. Reviewed by Eric Seidel.
  100492. [Qt] ScrollbarThemeQt.cpp has coding-style errors
  100493. https://bugs.webkit.org/show_bug.cgi?id=39764
  100494. * platform/qt/ScrollbarThemeQt.cpp:
  100495. (WebCore::scPart):
  100496. (WebCore::scrollbarPart):
  100497. (WebCore::styleOptionSlider):
  100498. 2010-06-04 Anders Bakken <agbakken@gmail.com>
  100499. Reviewed by Eric Seidel.
  100500. [Qt] SharedTimerQt.cpp has coding-style errors
  100501. https://bugs.webkit.org/show_bug.cgi?id=39763
  100502. * platform/qt/SharedTimerQt.cpp:
  100503. 2010-06-04 Anders Bakken <agbakken@gmail.com>
  100504. Reviewed by Eric Seidel.
  100505. WidgetQt.cpp has coding-style errors
  100506. https://bugs.webkit.org/show_bug.cgi?id=39759
  100507. * platform/qt/WidgetQt.cpp:
  100508. 2010-06-04 Anders Bakken <agbakken@gmail.com>
  100509. Reviewed by Eric Seidel.
  100510. TemporaryLinkStubsQt.cpp has coding-style errors
  100511. https://bugs.webkit.org/show_bug.cgi?id=39761
  100512. * platform/qt/TemporaryLinkStubsQt.cpp:
  100513. 2010-06-04 Anders Bakken <agbakken@gmail.com>
  100514. Reviewed by Eric Seidel.
  100515. [Qt] SoundQt.cpp has coding-style errors
  100516. https://bugs.webkit.org/show_bug.cgi?id=39762
  100517. * platform/qt/SoundQt.cpp:
  100518. 2010-06-04 Andreas Kling <andreas.kling@nokia.com>
  100519. Reviewed by Dirk Schulze.
  100520. Canvas createPattern(img, repetition) shouldn't throw INVALID_STATE_ERR when !img.complete
  100521. https://bugs.webkit.org/show_bug.cgi?id=40166
  100522. Spec link:
  100523. http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-createpattern
  100524. Test: http/tests/misc/canvas-pattern-from-incremental-image.html (updated)
  100525. * html/canvas/CanvasRenderingContext2D.cpp:
  100526. (WebCore::CanvasRenderingContext2D::createPattern):
  100527. 2010-06-04 Anders Bakken <agbakken@gmail.com>
  100528. Reviewed by David Levin.
  100529. [Qt] Localizations.cpp has coding-style errors
  100530. https://bugs.webkit.org/show_bug.cgi?id=39773
  100531. * platform/qt/Localizations.cpp:
  100532. (WebCore::localizedMediaTimeDescription):
  100533. 2010-06-04 Lyon Chen <liachen@rim.com>
  100534. Reviewed by Darin Adler.
  100535. ApplicationCacheStorage::storeNewestCache() Crash WebKit when openDatabase(true) failed
  100536. https://bugs.webkit.org/show_bug.cgi?id=40074
  100537. Adding m_database.isOpen() check for every openDatabase(true) call, this is needed because
  100538. openDatabase(true) could still fail, for example when cacheStorage is full or no longer available.
  100539. * loader/appcache/ApplicationCacheStorage.cpp:
  100540. (WebCore::ApplicationCacheStorage::store):
  100541. (WebCore::ApplicationCacheStorage::storeNewestCache):
  100542. 2010-06-04 Sheriff Bot <webkit.review.bot@gmail.com>
  100543. Unreviewed, rolling out r60684.
  100544. http://trac.webkit.org/changeset/60684
  100545. https://bugs.webkit.org/show_bug.cgi?id=40196
  100546. This patch broke chromium reliability tests (Requested by
  100547. tonyg-cr on #webkit).
  100548. * bindings/v8/ScriptSourceCode.h:
  100549. (WebCore::ScriptSourceCode::ScriptSourceCode):
  100550. * bindings/v8/V8Proxy.cpp:
  100551. (WebCore::V8Proxy::compileScript):
  100552. (WebCore::V8Proxy::evaluate):
  100553. * bindings/v8/V8Proxy.h:
  100554. 2010-06-04 Chris Fleizach <cfleizach@apple.com>
  100555. Reviewed by David Kilzer.
  100556. AX: need an aria-help
  100557. https://bugs.webkit.org/show_bug.cgi?id=40010
  100558. Test: accessibility/aria-help.html
  100559. * accessibility/AccessibilityRenderObject.cpp:
  100560. (WebCore::AccessibilityRenderObject::helpText):
  100561. * html/HTMLAttributeNames.in:
  100562. 2010-06-04 Andreas Kling <andreas.kling@nokia.com>
  100563. Reviewed by Tor Arne Vestbø.
  100564. [Qt] Canvas arc() with zero radius should draw a line to the start point
  100565. https://bugs.webkit.org/show_bug.cgi?id=40164
  100566. Spec link:
  100567. http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-arc
  100568. * platform/graphics/qt/PathQt.cpp:
  100569. (WebCore::Path::addArc):
  100570. 2010-06-04 Martin Robinson <mrobinson@igalia.com>
  100571. Reviewed by Xan Lopez.
  100572. [GTK] RenderThemeGtk leaks memory
  100573. https://bugs.webkit.org/show_bug.cgi?id=40168
  100574. Call gtk_widget_destroy in the RenderThemeGtk destructor. This cleans
  100575. up all widget resources when a theme is destroyed.
  100576. No new tests, because functionality has not changed.
  100577. * platform/gtk/RenderThemeGtk.cpp:
  100578. (WebCore::RenderThemeGtk::~RenderThemeGtk): Call gtk_widget_destroy on m_gtkWindow.
  100579. 2010-06-04 Martin Robinson <mrobinson@igalia.com>
  100580. Reviewed by Xan Lopez.
  100581. [GTK] RenderThemeGtk leaks memory
  100582. https://bugs.webkit.org/show_bug.cgi?id=40168
  100583. Remove the use of releaseRef to assign a value to a RefPtr. This results in
  100584. the original pointer taking an extra reference.
  100585. * platform/gtk/RenderThemeGtk.cpp:
  100586. (WebCore::RenderThemeGtk::initMediaStyling): Remove the use of releaseRef here.
  100587. 2010-06-04 Adam Barth <abarth@webkit.org>
  100588. Reviewed by Gavin Barraclough.
  100589. Try to fix the windows build
  100590. https://bugs.webkit.org/show_bug.cgi?id=40189
  100591. Suppress the "unreachable code" warning because we want to assert that
  100592. we don't reach certain code points.
  100593. * html/HTML5Lexer.cpp:
  100594. 2010-06-04 Adam Barth <abarth@webkit.org>
  100595. Reviewed by Eric Seidel.
  100596. Make HTML5Lexer go fast
  100597. https://bugs.webkit.org/show_bug.cgi?id=40048
  100598. A couple more cases like the previous patch that I missed.
  100599. * html/HTML5Lexer.cpp:
  100600. (WebCore::HTML5Lexer::nextToken):
  100601. 2010-06-04 Adam Barth <abarth@webkit.org>
  100602. Reviewed by Eric Seidel.
  100603. Make HTML5Lexer go fast
  100604. https://bugs.webkit.org/show_bug.cgi?id=40048
  100605. Make all the state transitions in the machine explicit. This allows us
  100606. to remove all the break statements, which won't work correctly after we
  100607. change the macro definitions.
  100608. Also, while I was looking at every line of code, I fixed a bunch of the
  100609. one-line-if style errors introduces in my previous patches.
  100610. * html/HTML5Lexer.cpp:
  100611. (WebCore::HTML5Lexer::nextToken):
  100612. 2010-06-04 Gavin Barraclough <barraclough@apple.com>
  100613. Reviewed by Oliver Hunt.
  100614. Bug 40187 - Change function signature of NativeConstructor to match NativeFunction
  100615. Mostly for consistency, but constructor & args arguments are redundant,
  100616. and this will help if we wish to be able to JIT calls to more constructors.
  100617. * bindings/js/JSArrayBufferConstructor.cpp:
  100618. (WebCore::constructCanvasArrayBuffer):
  100619. * bindings/js/JSAudioConstructor.cpp:
  100620. (WebCore::constructAudio):
  100621. * bindings/js/JSEventSourceConstructor.cpp:
  100622. (WebCore::constructEventSource):
  100623. * bindings/js/JSFloatArrayConstructor.cpp:
  100624. (WebCore::constructCanvasFloatArray):
  100625. * bindings/js/JSImageConstructor.cpp:
  100626. (WebCore::constructImage):
  100627. * bindings/js/JSInt16ArrayConstructor.cpp:
  100628. (WebCore::constructCanvasShortArray):
  100629. * bindings/js/JSInt32ArrayConstructor.cpp:
  100630. (WebCore::constructCanvasIntArray):
  100631. * bindings/js/JSInt8ArrayConstructor.cpp:
  100632. (WebCore::constructCanvasByteArray):
  100633. * bindings/js/JSMessageChannelConstructor.cpp:
  100634. (WebCore::JSMessageChannelConstructor::construct):
  100635. * bindings/js/JSMessageChannelConstructor.h:
  100636. * bindings/js/JSOptionConstructor.cpp:
  100637. (WebCore::constructHTMLOptionElement):
  100638. * bindings/js/JSSharedWorkerConstructor.cpp:
  100639. (WebCore::constructSharedWorker):
  100640. * bindings/js/JSUint16ArrayConstructor.cpp:
  100641. (WebCore::constructCanvasUnsignedShortArray):
  100642. * bindings/js/JSUint32ArrayConstructor.cpp:
  100643. (WebCore::constructCanvasUnsignedIntArray):
  100644. * bindings/js/JSUint8ArrayConstructor.cpp:
  100645. (WebCore::constructCanvasUnsignedByteArray):
  100646. * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
  100647. (WebCore::constructWebKitCSSMatrix):
  100648. * bindings/js/JSWebKitPointConstructor.cpp:
  100649. (WebCore::constructWebKitPoint):
  100650. * bindings/js/JSWebSocketConstructor.cpp:
  100651. (WebCore::constructWebSocket):
  100652. * bindings/js/JSWorkerConstructor.cpp:
  100653. (WebCore::constructWorker):
  100654. * bindings/js/JSXMLHttpRequestConstructor.cpp:
  100655. (WebCore::constructXMLHttpRequest):
  100656. * bindings/js/JSXSLTProcessorConstructor.cpp:
  100657. (WebCore::constructXSLTProcessor):
  100658. * bindings/scripts/CodeGeneratorJS.pm:
  100659. * bridge/runtime_object.cpp:
  100660. (JSC::Bindings::callRuntimeConstructor):
  100661. 2010-06-04 Adam Barth <abarth@webkit.org>
  100662. Reviewed by Eric Seidel.
  100663. Make HTML5Lexer go fast
  100664. https://bugs.webkit.org/show_bug.cgi?id=40048
  100665. Change the intent of the loop to match what it's going to be once we
  100666. remove the loop. This is a whitespace only change that will make the
  100667. final diff much, much smaller. Sorry for the transient ugly style.
  100668. * html/HTML5Lexer.cpp:
  100669. (WebCore::HTML5Lexer::nextToken):
  100670. 2010-06-04 Adam Barth <abarth@webkit.org>
  100671. Reviewed by Eric Seidel.
  100672. Make HTML5Lexer go fast
  100673. https://bugs.webkit.org/show_bug.cgi?id=40048
  100674. Introduce ADVANCE_TO macro. This is the last macro we need to
  100675. introduce.
  100676. * html/HTML5Lexer.cpp:
  100677. (WebCore::HTML5Lexer::nextToken):
  100678. 2010-06-04 Adam Barth <abarth@webkit.org>
  100679. Reviewed by Eric Seidel.
  100680. Make HTML5Lexer go fast
  100681. https://bugs.webkit.org/show_bug.cgi?id=40048
  100682. Fix the rest of the RECONSUME_IN cases that were missed by our script.
  100683. Also, reorder some assigment to prepare for the ADVANCE_TO patch.
  100684. * html/HTML5Lexer.cpp:
  100685. (WebCore::HTML5Lexer::nextToken):
  100686. 2010-06-04 Adam Barth <abarth@webkit.org>
  100687. Reviewed by Eric Seidel.
  100688. Make HTML5Lexer go fast
  100689. https://bugs.webkit.org/show_bug.cgi?id=40048
  100690. This patch handles the FLUSH_AND_ADVANCE_TO case. Again, this patch
  100691. introduces style errors that will be fixed shortly.
  100692. * html/HTML5Lexer.cpp:
  100693. (WebCore::HTML5Lexer::nextToken):
  100694. 2010-06-04 Adam Barth <abarth@webkit.org>
  100695. Reviewed by Eric Seidel.
  100696. Make HTML5Lexer go fast
  100697. https://bugs.webkit.org/show_bug.cgi?id=40048
  100698. This patch handles the FLUSH_EMIT_AND_RESUME_IN case. This patch
  100699. introduces some bad style w.r.t. one-line if statements, but we'll fix
  100700. them all automatically in cleanup patch when we're done.
  100701. * html/HTML5Lexer.cpp:
  100702. (WebCore::HTML5Lexer::nextToken):
  100703. 2010-06-04 Adam Barth <abarth@webkit.org>
  100704. Reviewed by Eric Seidel.
  100705. Make HTML5Lexer go fast
  100706. https://bugs.webkit.org/show_bug.cgi?id=40048
  100707. More small steps. This patch deals with emitting tokens.
  100708. * html/HTML5Lexer.cpp:
  100709. (WebCore::HTML5Lexer::nextToken):
  100710. 2010-06-04 Adam Barth <abarth@webkit.org>
  100711. Reviewed by Eric Seidel.
  100712. Make HTML5Lexer go fast
  100713. https://bugs.webkit.org/show_bug.cgi?id=40048
  100714. The next step: using macros to delimit each state. Evetually, we're
  100715. going to change what these macros expand to.
  100716. * html/HTML5Lexer.cpp:
  100717. (WebCore::HTML5Lexer::nextToken):
  100718. 2010-06-04 Adam Barth <abarth@webkit.org>
  100719. Reviewed by Eric Seidel.
  100720. Make HTML5Lexer go fast
  100721. https://bugs.webkit.org/show_bug.cgi?id=40048
  100722. We're going to do this patch in small steps to make it easier to verify correctness.
  100723. * html/HTML5Lexer.cpp:
  100724. (WebCore::HTML5Lexer::nextToken):
  100725. 2010-06-04 Jay Civelli <jcivelli@chromium.org>
  100726. Reviewed by David Levin.
  100727. [chromium] Adding support for the left and right Windows keys to the
  100728. NativeWebKeyboardEvent.
  100729. https://bugs.webkit.org/show_bug.cgi?id=39752
  100730. * platform/chromium/KeyCodeConversionGtk.cpp:
  100731. (WebCore::windowsKeyCodeForKeyEvent):
  100732. 2010-06-04 Dirk Schulze <krit@webkit.org>
  100733. Reviewed by Nikolas Zimmermann.
  100734. SVG filter on filter don't work
  100735. https://bugs.webkit.org/show_bug.cgi?id=32708
  100736. Any child of <text> was not allowed to use the same filter as the text root.
  100737. I couldn't found any reason in the SVG specification that legimitate this.
  100738. Only batik also doesn't allow the same filter on the text root as on it's childs,
  100739. while any other effect is still allowed.
  100740. I removed this limitation so that the result looks like the result on Firefox.
  100741. Test: svg/filters/filter-on-filter-for-text.svg
  100742. * rendering/SVGRenderSupport.cpp:
  100743. (WebCore::SVGRenderBase::prepareToRenderSVGContent):
  100744. * rendering/SVGRenderSupport.h:
  100745. * rendering/SVGRootInlineBox.cpp:
  100746. (WebCore::SVGRootInlineBoxPaintWalker::SVGRootInlineBoxPaintWalker):
  100747. (WebCore::SVGRootInlineBoxPaintWalker::chunkStartCallback):
  100748. (WebCore::SVGRootInlineBox::paint):
  100749. 2010-06-04 Nate Chapin <japhet@chromium.org>
  100750. Reviewed by Adam Barth.
  100751. Factor PageCache functionality out of FrameLoader and into
  100752. PageCache itself.
  100753. https://bugs.webkit.org/show_bug.cgi?id=39382
  100754. Refactor only, so no new tests.
  100755. * history/PageCache.cpp:
  100756. (WebCore::pageCacheLogPrefix):
  100757. (WebCore::pageCacheLog):
  100758. (WebCore::logCanCacheFrameDecision):
  100759. (WebCore::logCanCachePageDecision):
  100760. (WebCore::PageCache::canCachePageContainingThisFrame):
  100761. (WebCore::PageCache::canCache):
  100762. (WebCore::PageCache::add):
  100763. (WebCore::PageCache::get):
  100764. * history/PageCache.h:
  100765. * loader/DocumentLoader.cpp:
  100766. (WebCore::DocumentLoader::commitIfReady):
  100767. * loader/FrameLoader.cpp:
  100768. (WebCore::FrameLoader::commitProvisionalLoad):
  100769. (WebCore::FrameLoader::prepareForCachedPageRestore):
  100770. (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
  100771. (WebCore::FrameLoader::loadProvisionalItemFromCachedPage):
  100772. (WebCore::FrameLoader::navigateToDifferentDocument):
  100773. * loader/FrameLoader.h:
  100774. (WebCore::FrameLoader::quickRedirectComing):
  100775. * svg/graphics/SVGImage.cpp:
  100776. (WebCore::SVGImage::dataChanged):
  100777. 2010-06-04 Ilya Tikhonovsky <loislo@chromium.org>
  100778. Reviewed by Pavel Feldman.
  100779. WebInspector: Web Inspector: it would be better to push object properties to JSON string in order of insertion.
  100780. https://bugs.webkit.org/show_bug.cgi?id=40140
  100781. * inspector/InspectorValues.cpp:
  100782. (WebCore::InspectorObject::writeJSON):
  100783. * inspector/InspectorValues.h:
  100784. (WebCore::InspectorObject::setBool):
  100785. (WebCore::InspectorObject::setNumber):
  100786. (WebCore::InspectorObject::setString):
  100787. (WebCore::InspectorObject::set):
  100788. 2010-06-04 Tony Gentilcore <tonyg@chromium.org>
  100789. Reviewed by Adam Barth.
  100790. Persist V8's ScriptData to the memory cache.
  100791. https://bugs.webkit.org/show_bug.cgi?id=38661
  100792. This stores V8's ScriptData in the memory cache and also causes the
  100793. network platform layer to be notified of the available cacheable
  100794. metadata.
  100795. Chromium's morejs benchmark shows a 3-4% improvement on fast hardware.
  100796. No new tests because no new functionality.
  100797. * bindings/v8/ScriptSourceCode.h:
  100798. (WebCore::ScriptSourceCode::ScriptSourceCode):
  100799. (WebCore::ScriptSourceCode::cachedScript):
  100800. * bindings/v8/V8Proxy.cpp:
  100801. (WebCore::V8Proxy::compileScript):
  100802. (WebCore::V8Proxy::precompileScript):
  100803. (WebCore::V8Proxy::evaluate):
  100804. * bindings/v8/V8Proxy.h:
  100805. 2010-06-04 Tony Gentilcore <tonyg@chromium.org>
  100806. Reviewed by Adam Barth.
  100807. Utilize new takeFirst() method where appropriate.
  100808. https://bugs.webkit.org/show_bug.cgi?id=40089
  100809. No new tests because no new functionality.
  100810. * css/CSSStyleSheet.cpp:
  100811. (WebCore::CSSStyleSheet::addSubresourceStyleURLs):
  100812. * dom/XMLTokenizerLibxml2.cpp:
  100813. (WebCore::PendingCallbacks::callAndRemoveFirstCallback):
  100814. * html/HTMLTokenizer.cpp:
  100815. (WebCore::HTMLTokenizer::reset):
  100816. (WebCore::HTMLTokenizer::executeExternalScriptsIfReady):
  100817. * platform/text/SegmentedString.cpp:
  100818. (WebCore::SegmentedString::advanceSubstring):
  100819. * storage/Database.cpp:
  100820. (WebCore::Database::scheduleTransaction):
  100821. * storage/SQLTransaction.cpp:
  100822. (WebCore::SQLTransaction::getNextStatement):
  100823. * storage/SQLTransactionCoordinator.cpp:
  100824. (WebCore::SQLTransactionCoordinator::processPendingTransactions):
  100825. 2010-06-04 Nikita Vasilyev <me@elv1s.ru>
  100826. Reviewed by Pavel Feldman.
  100827. Web Inspector: better Function.prototype.bind for the internal code.
  100828. In the "Event Listeners" pane show handler function instead of Function.prototype.bind.
  100829. https://bugs.webkit.org/show_bug.cgi?id=40080
  100830. * inspector/front-end/utilities.js:
  100831. (Function.prototype.bind.bound):
  100832. (Function.prototype.bind.bound.toString):
  100833. (Function.prototype.bind):
  100834. 2010-06-04 Alexander Pavlov <apavlov@chromium.org>
  100835. Unreviewed, fix Qt build.
  100836. Add references to a new file.
  100837. * WebCore.gypi:
  100838. * WebCore.vcproj/WebCore.vcproj:
  100839. * inspector/front-end/WebKit.qrc:
  100840. 2010-06-04 Alexander Pavlov <apavlov@chromium.org>
  100841. Reviewed by Pavel Feldman.
  100842. Web Inspector: Eliminate direct dependency of StylesSidebarPane on InspectorBackend
  100843. https://bugs.webkit.org/show_bug.cgi?id=40069
  100844. No new tests are needed, as this is a refactoring.
  100845. * inspector/front-end/CSSStyleModel.js: Added.
  100846. (WebInspector.CSSStyleModel):
  100847. (WebInspector.CSSStyleModel.prototype.getStylesAsync):
  100848. (WebInspector.CSSStyleModel.prototype.getComputedStyleAsync):
  100849. (WebInspector.CSSStyleModel.prototype.setRuleSelector):
  100850. (WebInspector.CSSStyleModel.prototype.addRule):
  100851. (WebInspector.CSSStyleModel.prototype.toggleStyleEnabled):
  100852. (WebInspector.CSSStyleModel.prototype.setCSSText):
  100853. (WebInspector.CSSStyleModel.prototype.applyStyleText):
  100854. * inspector/front-end/StylesSidebarPane.js:
  100855. (WebInspector.StylesSidebarPane.prototype.update.stylesCallback):
  100856. (WebInspector.StylesSidebarPane.prototype.update.computedStyleCallback):
  100857. (WebInspector.StylesSidebarPane.prototype.update):
  100858. (WebInspector.StylesSidebarPane.prototype._arrayContainsInheritedProperty):
  100859. (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted.successCallback):
  100860. (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted):
  100861. (WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCommitted.successCallback):
  100862. (WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCommitted):
  100863. (WebInspector.StylePropertyTreeElement.prototype.):
  100864. (WebInspector.StylePropertyTreeElement.prototype):
  100865. * inspector/front-end/inspector.html:
  100866. * inspector/front-end/inspector.js:
  100867. (WebInspector.loaded):
  100868. 2010-06-04 Simon Hausmann <simon.hausmann@nokia.com>
  100869. Reviewed by Tor Arne Vestbø.
  100870. [Qt] Compilation fails when compiling against Qt 4.7 and Qt Mobility is installed
  100871. https://bugs.webkit.org/show_bug.cgi?id=40116
  100872. CONFIG += mobility has the side-effect of pulling in mobility includes, which conflict
  100873. with Qt 4.7's bearer managenent includes and break the build.
  100874. * WebCore.pro:
  100875. 2010-06-04 Vangelis Kokkevis <vangelis@chromium.org>
  100876. Reviewed by Dimitri Glazkov.
  100877. [chromium] Fix scrolling bug with pages using accelerated compositing.
  100878. https://bugs.webkit.org/show_bug.cgi?id=40037
  100879. * platform/graphics/chromium/LayerRendererChromium.cpp:
  100880. (WebCore::LayerRendererChromium::LayerRendererChromium):
  100881. (WebCore::LayerRendererChromium::drawLayers):
  100882. 2010-06-04 Matthew Delaney <mdelaney@apple.com>
  100883. Reviewed by Darin Adler.
  100884. CG implementation needed for compression quality in canvas.toDataURL
  100885. https://bugs.webkit.org/show_bug.cgi?id=38492
  100886. Took toDataURL.jpeg.quality.basic.html test off of Skipped list. Passes.
  100887. Went the route of avoiding in-band signaling to flag the use of a quality
  100888. parameter or not. So, instead of simply passing the quality down as a
  100889. double, instead I pass a reference to the quality parameter from where
  100890. it comes in just after the JS bindings. Thus, no need for any global
  100891. constants to signify when the quality is not specified. Updated the other
  100892. platforms to support this (qt was on the only one currently with any
  100893. implementation).
  100894. * bindings/js/JSHTMLCanvasElementCustom.cpp: Moved range check logic for quality parameter down lower. Updated
  100895. call to toDataURL to use double* instead of just passing the quality directly.
  100896. (WebCore::JSHTMLCanvasElement::toDataURL):
  100897. * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp: Updated toDataURL call to pass double*
  100898. (WebCore::V8HTMLCanvasElement::toDataURLCallback):
  100899. * dom/CanvasSurface.cpp: Updated method prototype.
  100900. (WebCore::CanvasSurface::toDataURL):
  100901. * dom/CanvasSurface.h: Updated method prototype.
  100902. (WebCore::CanvasSurface::toDataURL):
  100903. * platform/graphics/ImageBuffer.h: Updated method signature to use double* for quality param.
  100904. * platform/graphics/cairo/ImageBufferCairo.cpp: Updated prototype for consistency.
  100905. (WebCore::ImageBuffer::toDataURL):
  100906. * platform/graphics/cg/ImageBufferCG.cpp: Implemented support for quality parametejr when jpeg MIME type used.
  100907. (WebCore::jpegUTI):
  100908. (WebCore::utiFromMIMEType):
  100909. (WebCore::ImageBuffer::toDataURL):
  100910. * platform/graphics/haiku/ImageBufferHaiku.cpp: Updated prototype for consistency.
  100911. (WebCore::ImageBuffer::toDataURL):
  100912. * platform/graphics/qt/ImageBufferQt.cpp: Updated prototype for consistency.
  100913. (WebCore::ImageBuffer::toDataURL):
  100914. * platform/graphics/skia/ImageBufferSkia.cpp: Updated prototype for consistency.
  100915. (WebCore::ImageBuffer::toDataURL):
  100916. * platform/graphics/wince/ImageBufferWince.cpp: Updated prototype for consistency.
  100917. (WebCore::ImageBuffer::toDataURL):
  100918. * platform/graphics/wx/ImageBufferWx.cpp: Updated prototype for consistency.
  100919. (WebCore::ImageBuffer::toDataURL):
  100920. 2010-06-04 Alejandro G. Castro <alex@igalia.com>
  100921. Reviewed by Xan Lopez.
  100922. Leaks in listDirectory
  100923. https://bugs.webkit.org/show_bug.cgi?id=40008
  100924. Fixed both leaks.
  100925. * platform/gtk/FileSystemGtk.cpp:
  100926. (WebCore::listDirectory):
  100927. 2010-06-04 Anton Muhin <antonm@chromium.org>
  100928. Reviewed by Nate Chapin.
  100929. [Chromium] get rid of named interceptor on HTMLDocument and introduce/remove accessors when named items get deleted/removed
  100930. https://bugs.webkit.org/show_bug.cgi?id=39877
  100931. This patch makes callbacks invoked on named items addition/removal
  100932. install API accessors and thus there is no more need in
  100933. named and indexed interceptors on HTMLDocument which
  100934. speeds up invocation of methods on document.
  100935. * bindings/scripts/CodeGeneratorV8.pm:
  100936. * bindings/v8/ScriptController.cpp:
  100937. (WebCore::ScriptController::namedItemAdded):
  100938. (WebCore::ScriptController::namedItemRemoved):
  100939. * bindings/v8/V8DOMWindowShell.cpp:
  100940. (WebCore::checkDocumentWrapper):
  100941. (WebCore::V8DOMWindowShell::updateDocumentWrapperCache):
  100942. (WebCore::getter):
  100943. (WebCore::V8DOMWindowShell::namedItemAdded):
  100944. (WebCore::V8DOMWindowShell::namedItemRemoved):
  100945. * bindings/v8/V8DOMWindowShell.h:
  100946. * bindings/v8/V8DOMWrapper.cpp:
  100947. (WebCore::V8DOMWrapper::instantiateV8Object):
  100948. * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
  100949. (WebCore::V8HTMLDocument::WrapInShadowObject):
  100950. (WebCore::V8HTMLDocument::GetNamedProperty):
  100951. (WebCore::V8HTMLDocument::allAccessorSetter):
  100952. (WebCore::toV8):
  100953. 2010-06-04 Kwang Yul Seo <skyul@company100.net>
  100954. Reviewed by Kent Tamura.
  100955. Change filenameFromString to return CString
  100956. https://bugs.webkit.org/show_bug.cgi?id=39494
  100957. filenameFromString returns a newly allocated string and the caller must
  100958. free the string. GTK and EFL ports use g_free while all others ports use
  100959. fastFree. This is confusing because the same function behaves
  100960. differently with respect to ports. Change filenameFromString to return
  100961. CString.
  100962. * platform/FileSystem.cpp:
  100963. (WebCore::filenameFromString):
  100964. * platform/FileSystem.h:
  100965. * platform/efl/FileSystemEfl.cpp:
  100966. (WebCore::filenameFromString):
  100967. * platform/gtk/FileChooserGtk.cpp:
  100968. (WebCore::FileChooser::basenameForWidth):
  100969. * platform/gtk/FileSystemGtk.cpp:
  100970. (WebCore::filenameFromString):
  100971. (WebCore::filenameForDisplay):
  100972. (WebCore::fileExists):
  100973. (WebCore::deleteFile):
  100974. (WebCore::deleteEmptyDirectory):
  100975. (WebCore::getFileSize):
  100976. (WebCore::getFileModificationTime):
  100977. (WebCore::makeAllDirectories):
  100978. (WebCore::pathGetFileName):
  100979. (WebCore::directoryName):
  100980. (WebCore::listDirectory):
  100981. * platform/gtk/SharedBufferGtk.cpp:
  100982. (WebCore::SharedBuffer::createWithContentsOfFile):
  100983. * platform/network/soup/ResourceHandleSoup.cpp:
  100984. (WebCore::startHttp):
  100985. * platform/posix/SharedBufferPOSIX.cpp:
  100986. (WebCore::SharedBuffer::createWithContentsOfFile):
  100987. 2010-06-04 No'am Rosenthal <noam.rosenthal@nokia.com>
  100988. Reviewed by Kenneth Rohde Christiansen.
  100989. [Qt] Fix compilation with QT_NO_FEATURE
  100990. https://bugs.webkit.org/show_bug.cgi?id=38324
  100991. The #ifdef QT_NO_GRAPHICSEFFECT was in the wrong place, would have
  100992. made AC not work at all.
  100993. No new tests.
  100994. * platform/graphics/qt/GraphicsLayerQt.cpp:
  100995. (WebCore::GraphicsLayerQtImpl::flushChanges):
  100996. 2010-06-04 Qi Zhang <qi.2.zhang@nokia.com>
  100997. Reviewed by Laszlo Gombos.
  100998. [Qt] Failed at http://philip.html5.org/tests/canvas/suite/tests/2d.path.arcTo.ensuresubpath.1.html
  100999. https://bugs.webkit.org/show_bug.cgi?id=38645
  101000. Path arcto function need to ensure there is subpath before it.
  101001. * platform/graphics/qt/PathQt.cpp:
  101002. (WebCore::Path::addArcTo):
  101003. 2010-06-04 Qi Zhang <qi.2.zhang@nokia.com>
  101004. Reviewed by Laszlo Gombos.
  101005. [Qt] failed at http://philip.html5.org/tests/canvas/suite/tests/2d.path.arc.angle.3.html
  101006. https://bugs.webkit.org/show_bug.cgi?id=38537
  101007. For path.arc function handle span > 2PI
  101008. * platform/graphics/qt/PathQt.cpp:
  101009. (WebCore::Path::addArc):
  101010. 2010-06-04 Zhenyao Mo <zmo@google.com>
  101011. Reviewed by Dimitri Glazkov.
  101012. Set attributes.stencil to false by default at context creation
  101013. https://bugs.webkit.org/show_bug.cgi?id=40090
  101014. * platform/graphics/GraphicsContext3D.h: Set default attributes.stencil to false.
  101015. (WebCore::GraphicsContext3D::Attributes::Attributes):
  101016. 2010-06-03 Abhishek Arya <inferno@chromium.org>
  101017. Reviewed by Eric Carlson.
  101018. Fix a crash when trying to use an invalid media src url by
  101019. moving the isValid url checks to a central location in
  101020. isSafeToLoadURL function. Also added an empty string check
  101021. in DocumentLoader::didTellClientAboutLoad.
  101022. Test: media/invalid-media-url-crash.html
  101023. * html/HTMLMediaElement.cpp:
  101024. (WebCore::HTMLMediaElement::isSafeToLoadURL):
  101025. (WebCore::HTMLMediaElement::selectNextSourceChild):
  101026. (WebCore::HTMLMediaElement::getPluginProxyParams):
  101027. * loader/DocumentLoader.h:
  101028. (WebCore::DocumentLoader::didTellClientAboutLoad):
  101029. 2010-06-03 Sheriff Bot <webkit.review.bot@gmail.com>
  101030. Unreviewed, rolling out r60642.
  101031. http://trac.webkit.org/changeset/60642
  101032. https://bugs.webkit.org/show_bug.cgi?id=40151
  101033. Broke rendering of border images on rotated elements
  101034. (Requested by jamesr on #webkit).
  101035. * platform/graphics/GraphicsContext.cpp:
  101036. (WebCore::GraphicsContext::drawImage):
  101037. (WebCore::GraphicsContext::drawTiledImage):
  101038. * platform/graphics/GraphicsContext.h:
  101039. * rendering/RenderBoxModelObject.cpp:
  101040. (WebCore::RenderBoxModelObject::paintNinePieceImage):
  101041. 2010-06-03 Damian Kaleta <dkaleta@apple.com>
  101042. Reviewed by Beth Dakin.
  101043. Pixel cracks in border images when drawing with a scale factor > 1
  101044. <rdar://problem/7994266>pixel cracks in border images
  101045. https://bugs.webkit.org/show_bug.cgi?id=15720
  101046. * platform/graphics/GraphicsContext.cpp:
  101047. (WebCore::GraphicsContext::drawImage):
  101048. (WebCore::GraphicsContext::drawTiledImage):
  101049. * platform/graphics/GraphicsContext.h: Added two new methods to support drawing using FloatRect.
  101050. If the boolean flag roundToPixels is true, the pixels are adjusted with the pixel boundaries.
  101051. * rendering/RenderBoxModelObject.cpp:
  101052. (WebCore::RenderBoxModelObject::paintNinePieceImage):
  101053. 2010-06-03 James Robinson <jamesr@chromium.org>
  101054. Reviewed by Dan Bernstein.
  101055. Take container's scroll offset and clip into account when initializing LayoutState
  101056. https://bugs.webkit.org/show_bug.cgi?id=38506
  101057. When doing a subtree layout, the initial LayoutState creation needs to
  101058. take the layout root container's offset and its scroll offset into account
  101059. to create the initial offset. Otherwise if a subtree layout occurs
  101060. for a layout root whose container has a non-zero scroll offset
  101061. the LayoutState's offset and clip are wrong, resulting in a mispaint.
  101062. See the test cases for examples.
  101063. Tests: fast/repaint/layout-state-scrolloffset.html
  101064. fast/repaint/layout-state-scrolloffset2.html
  101065. fast/repaint/layout-state-scrolloffset3.html
  101066. * rendering/LayoutState.cpp:
  101067. (WebCore::LayoutState::LayoutState):
  101068. 2010-06-03 Gavin Barraclough <barraclough@apple.com>
  101069. Reviewed by NOBODY (speculative Qt build fix II).
  101070. * bridge/qt/qt_runtime.cpp:
  101071. (JSC::Bindings::QtRuntimeMetaMethod::call):
  101072. (JSC::Bindings::QtRuntimeConnectionMethod::call):
  101073. 2010-06-03 Gavin Barraclough <barraclough@apple.com>
  101074. Reviewed by NOBODY (speculative Qt build fix).
  101075. * bridge/qt/qt_runtime.cpp:
  101076. (JSC::Bindings::QtRuntimeMetaMethod::call):
  101077. (JSC::Bindings::QtRuntimeConnectionMethod::call):
  101078. 2010-06-02 Gavin Barraclough <barraclough@apple.com>
  101079. Reviewed by Oliver Hunt.
  101080. Bug 40094 - The return type of NativeFunction should be EncodedJSValue
  101081. On Windows & Linux, using JSVALUE32_64, EncodedJSValue is returned in registers, but JSValue is not.
  101082. * bindings/js/JSCallbackData.cpp:
  101083. (WebCore::JSCallbackData::invokeCallback):
  101084. * bindings/js/JSCustomXPathNSResolver.cpp:
  101085. (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
  101086. * bindings/js/JSEventListener.cpp:
  101087. (WebCore::JSEventListener::handleEvent):
  101088. * bindings/js/JSHTMLAllCollectionCustom.cpp:
  101089. (WebCore::callHTMLAllCollection):
  101090. * bindings/js/JSHTMLCollectionCustom.cpp:
  101091. (WebCore::callHTMLCollection):
  101092. * bindings/js/JSHTMLDocumentCustom.cpp:
  101093. (WebCore::JSHTMLDocument::open):
  101094. * bindings/js/JSInjectedScriptHostCustom.cpp:
  101095. (WebCore::InjectedScriptHost::createInjectedScript):
  101096. * bindings/js/JSNodeFilterCondition.cpp:
  101097. (WebCore::JSNodeFilterCondition::acceptNode):
  101098. * bindings/js/JSNodeListCustom.cpp:
  101099. (WebCore::callNodeList):
  101100. * bindings/js/JSPluginElementFunctions.cpp:
  101101. (WebCore::callPlugin):
  101102. * bindings/js/ScheduledAction.cpp:
  101103. (WebCore::ScheduledAction::create):
  101104. (WebCore::ScheduledAction::executeFunctionInContext):
  101105. * bindings/js/ScriptFunctionCall.cpp:
  101106. (WebCore::ScriptFunctionCall::call):
  101107. * bindings/js/SerializedScriptValue.cpp:
  101108. (WebCore::SerializingTreeWalker::convertIfTerminal):
  101109. * bindings/objc/WebScriptObject.mm:
  101110. (-[WebScriptObject callWebScriptMethod:withArguments:]):
  101111. * bindings/scripts/CodeGeneratorJS.pm:
  101112. * bridge/NP_jsobject.cpp:
  101113. (_NPN_InvokeDefault):
  101114. (_NPN_Invoke):
  101115. (_NPN_Construct):
  101116. * bridge/jni/jni_jsobject.mm:
  101117. (JavaJSObject::call):
  101118. * bridge/objc/objc_runtime.mm:
  101119. (JSC::Bindings::callObjCFallbackObject):
  101120. * bridge/runtime_method.cpp:
  101121. (JSC::callRuntimeMethod):
  101122. * bridge/runtime_object.cpp:
  101123. (JSC::Bindings::callRuntimeObject):
  101124. 2010-06-03 Sheriff Bot <webkit.review.bot@gmail.com>
  101125. Unreviewed, rolling out r60614.
  101126. http://trac.webkit.org/changeset/60614
  101127. https://bugs.webkit.org/show_bug.cgi?id=40123
  101128. It made fast/dom/Window/window-postmessage-clone.html fail on
  101129. Mac bots (Requested by Ossy on #webkit).
  101130. * Android.derived.jscbindings.mk:
  101131. * Android.derived.v8bindings.mk:
  101132. * Android.mk:
  101133. * CMakeLists.txt:
  101134. * DerivedSources.cpp:
  101135. * DerivedSources.make:
  101136. * GNUmakefile.am:
  101137. * WebCore.gypi:
  101138. * WebCore.pri:
  101139. * WebCore.pro:
  101140. * bindings/generic/RuntimeEnabledFeatures.cpp:
  101141. * bindings/generic/RuntimeEnabledFeatures.h:
  101142. * bindings/js/JSEventCustom.cpp:
  101143. (WebCore::toJS):
  101144. * bindings/v8/custom/V8EventCustom.cpp:
  101145. (WebCore::toV8):
  101146. * dom/Document.cpp:
  101147. (WebCore::Document::createEvent):
  101148. (WebCore::Document::addListenerTypeIfNeeded):
  101149. * dom/Document.h:
  101150. (WebCore::Document::):
  101151. * dom/Document.idl:
  101152. * dom/Element.h:
  101153. * dom/Element.idl:
  101154. * dom/Event.cpp:
  101155. (WebCore::Event::fromUserGesture):
  101156. * dom/Event.h:
  101157. * dom/EventNames.h:
  101158. * dom/TransformActionEvent.cpp: Removed.
  101159. * dom/TransformActionEvent.h: Removed.
  101160. * dom/TransformActionEvent.idl: Removed.
  101161. * html/HTMLAttributeNames.in:
  101162. * html/HTMLElement.cpp:
  101163. (WebCore::HTMLElement::parseMappedAttribute):
  101164. * page/DOMWindow.h:
  101165. * page/DOMWindow.idl:
  101166. 2010-06-03 Yury Semikhatsky <yurys@chromium.org>
  101167. Reviewed by Pavel Feldman.
  101168. [v8] Web Inspector: show "Object" as description for values with anonymous constructor
  101169. https://bugs.webkit.org/show_bug.cgi?id=40121
  101170. * inspector/front-end/InjectedScript.js:
  101171. (injectedScriptConstructor):
  101172. 2010-06-03 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
  101173. Reviewed by Simon Hausmann.
  101174. [Qt] Fix NPAPI support on Mac OS X/Cocoa-32
  101175. qt_mac_window_for() returns a NSWindow on Cocoa, so we were
  101176. passing in a NSWindow instead of a WindowRef as part of the
  101177. NP_CGContext.
  101178. https://bugs.webkit.org/show_bug.cgi?id=38762
  101179. * WebCore.gypi: Reflect rename
  101180. * WebCore.pro: Reflect rename
  101181. * plugins/mac/PluginViewMac.cpp: Renamed to PluginViewMac.mm
  101182. and fix bug by getting the Carbon windowRef from the NSWindow.
  101183. * wscript: Reflect rename
  101184. 2010-06-03 Kim Grönholm <kim.1.gronholm@nokia.com>
  101185. Reviewed by Simon Hausmann.
  101186. Add TransformActionEvent support
  101187. https://bugs.webkit.org/show_bug.cgi?id=39757
  101188. Added only the necessary TransformAction event interfaces and not e.g.
  101189. any eventhandler hooks that generate and dispatch them.
  101190. Test: fast/events/transformaction/create-transformaction-event.html
  101191. More tests will be added with the machinery that generates and
  101192. dispatches these events.
  101193. * Android.derived.jscbindings.mk:
  101194. * Android.derived.v8bindings.mk:
  101195. * Android.mk:
  101196. * CMakeLists.txt:
  101197. * DerivedSources.cpp:
  101198. * DerivedSources.make:
  101199. * GNUmakefile.am:
  101200. * WebCore.gypi:
  101201. * WebCore.pri:
  101202. * WebCore.pro:
  101203. * bindings/generic/RuntimeEnabledFeatures.cpp:
  101204. * bindings/generic/RuntimeEnabledFeatures.h:
  101205. (WebCore::RuntimeEnabledFeatures::transformactionEnabled):
  101206. (WebCore::RuntimeEnabledFeatures::setTransformActionEnabled):
  101207. (WebCore::RuntimeEnabledFeatures::ontransformactionstartEnabled):
  101208. (WebCore::RuntimeEnabledFeatures::ontransformactionupdateEnabled):
  101209. (WebCore::RuntimeEnabledFeatures::ontransformactionendEnabled):
  101210. * bindings/js/JSEventCustom.cpp:
  101211. (WebCore::toJS):
  101212. * bindings/v8/custom/V8EventCustom.cpp:
  101213. (WebCore::toV8):
  101214. * dom/Document.cpp:
  101215. (WebCore::Document::createEvent):
  101216. (WebCore::Document::addListenerTypeIfNeeded):
  101217. * dom/Document.h:
  101218. (WebCore::Document::):
  101219. * dom/Document.idl:
  101220. * dom/Element.h:
  101221. * dom/Element.idl:
  101222. * dom/Event.cpp:
  101223. (WebCore::Event::isTransformActionEvent):
  101224. (WebCore::Event::fromUserGesture):
  101225. * dom/Event.h:
  101226. * dom/EventNames.h:
  101227. * dom/TransformActionEvent.cpp: Added.
  101228. (WebCore::TransformActionEvent::TransformActionEvent):
  101229. (WebCore::TransformActionEvent::initTransformActionEvent):
  101230. * dom/TransformActionEvent.h: Added.
  101231. (WebCore::TransformActionEvent::create):
  101232. (WebCore::TransformActionEvent::translateX):
  101233. (WebCore::TransformActionEvent::translateY):
  101234. (WebCore::TransformActionEvent::translateSpeedX):
  101235. (WebCore::TransformActionEvent::translateSpeedY):
  101236. (WebCore::TransformActionEvent::scale):
  101237. (WebCore::TransformActionEvent::scaleSpeed):
  101238. (WebCore::TransformActionEvent::rotate):
  101239. (WebCore::TransformActionEvent::rotateSpeed):
  101240. (WebCore::TransformActionEvent::TransformActionEvent):
  101241. (WebCore::TransformActionEvent::isTransformActionEvent):
  101242. * dom/TransformActionEvent.idl: Added.
  101243. * html/HTMLAttributeNames.in:
  101244. * html/HTMLElement.cpp:
  101245. (WebCore::HTMLElement::parseMappedAttribute):
  101246. * page/DOMWindow.h:
  101247. * page/DOMWindow.idl:
  101248. 2010-06-03 Pavel Feldman <pfeldman@chromium.org>
  101249. Reviewed by Yury Semikhatsky.
  101250. Web Inspector: a number of fixes that make InspectorController
  101251. happy with null redirects.
  101252. https://bugs.webkit.org/show_bug.cgi?id=40109
  101253. * inspector/InspectorController.cpp:
  101254. (WebCore::InspectorController::willSendRequest):
  101255. (WebCore::InspectorController::didReceiveResponse):
  101256. (WebCore::InspectorController::didReceiveContentLength):
  101257. (WebCore::InspectorController::didFinishLoading):
  101258. (WebCore::InspectorController::didFailLoading):
  101259. 2010-06-03 Pavel Feldman <pfeldman@chromium.org>
  101260. Not reviewed. Rolling out aggressive cache part of the r60391
  101261. described in the bug below. It was orthogonal to the rest of
  101262. the patch and caused regression.
  101263. https://bugs.webkit.org/show_bug.cgi?id=37364
  101264. * platform/graphics/skia/ImageSkia.cpp:
  101265. (WebCore::drawResampledBitmap):
  101266. 2010-06-02 Darin Fisher <darin@chromium.org>
  101267. Reviewed by Brady Eidson.
  101268. location.href and outgoing referrer not updated properly by
  101269. pushState/replaceState
  101270. https://bugs.webkit.org/show_bug.cgi?id=40027
  101271. Tests: fast/loader/stateobjects/pushstate-updates-location.html
  101272. fast/loader/stateobjects/replacestate-updates-location.html
  101273. http/tests/navigation/pushstate-updates-referrer.html
  101274. http/tests/navigation/replacestate-updates-referrer.html
  101275. * dom/Document.cpp:
  101276. (WebCore::Document::updateURLForPushOrReplaceState):
  101277. Update the FrameLoader's notion of the current URL as well!
  101278. * loader/FrameLoader.cpp:
  101279. (WebCore::FrameLoader::loadInSameDocument):
  101280. Use the 'url' parameter instead of m_URL since m_URL might have
  101281. changed during the handling of the PopState event. Eventually,
  101282. this will become irrelevant since the PopState event should be
  101283. dispatched asynchronously, but just in case we patch HashChange
  101284. to be asynchronous before PopState, this change would be needed.
  101285. 2010-06-02 Eric Seidel <eric@webkit.org>
  101286. Reviewed by Adam Barth.
  101287. REGRESSION(60409): document.write is not synchronous when using the HTML5 parser
  101288. https://bugs.webkit.org/show_bug.cgi?id=40047
  101289. The HTML5 spec states that we should "spin the event loop" while
  101290. waiting for stylesheets to load. Currently we do that by yielding
  101291. out of the parser when stylesheets are loading. Because it was easy
  101292. we made inline <scripts> yield for stylesheet loads as well. However,
  101293. this caused document.write() to return after encountering the first
  101294. inline <script> tag in many cases which is incorrect. document.write
  101295. is supposed to block until the entire document is parsed (including)
  101296. executing inline script tags. To match the exiting parser, we'll just
  101297. make inline <script> tags not block on stylesheets for now.
  101298. This is tested by WebCore/benchmarks/html-parser.html as well
  101299. as likely several other tests in LayoutTests which we haven't
  101300. triaged yet.
  101301. * html/HTML5ScriptRunner.cpp:
  101302. (WebCore::HTML5ScriptRunner::executeScript):
  101303. - ASSERT that either stylesheets have loaded or we're executing an
  101304. inline <script> tag.
  101305. (WebCore::HTML5ScriptRunner::runScript):
  101306. - Remove the code to block inline <script> tags on stylesheet loads.
  101307. 2010-06-02 MORITA Hajime <morrita@google.com>
  101308. Unreviewd, Chromium windows build fix.
  101309. * rendering/RenderThemeChromiumWin.cpp:
  101310. (WebCore::RenderThemeChromiumWin::paintProgressBar):
  101311. 2010-06-02 MORITA Hajime <morrita@google.com>
  101312. Reviewed by Kent Tamura.
  101313. [Chromium] Linux: progress bar image pieces should be painted with same resampling mode
  101314. https://bugs.webkit.org/show_bug.cgi?id=40045
  101315. computeResamplingMode(), used by Image::drawPattern() and
  101316. BitmapImage::draw(), chooses an image resampling mode based on the
  101317. size of given image and the destination rectangle. But when
  101318. painting single component (i.e. a progress bar) from multiple
  101319. images, it can choose different resampling modes for images of
  101320. same component. That difference creates unexpected visual artifacts
  101321. like seams between images of single component.
  101322. This change introduced "image resampling hint" to allow callers to
  101323. control the resampling mode. Using the hint,
  101324. RenderThemeChromiumSkia now able to hold same resampling mode
  101325. during draw a progress bar.
  101326. No new tests. Expectations will come after ENABLE_PROGRESS_BAR get
  101327. enabled on chromium.
  101328. * platform/graphics/skia/ImageSkia.cpp:
  101329. (WebCore::computeResamplingMode):
  101330. * platform/graphics/skia/PlatformContextSkia.cpp:
  101331. (PlatformContextSkia::save):
  101332. (PlatformContextSkia::setImageResamplingHint): Added
  101333. (PlatformContextSkia::clearImageResamplingHint): Added
  101334. (PlatformContextSkia::hasImageResamplingHint): Added
  101335. (PlatformContextSkia::imageResamplingHint): Added
  101336. * platform/graphics/skia/PlatformContextSkia.h:
  101337. * rendering/RenderThemeChromiumSkia.cpp:
  101338. (WebCore::RenderThemeChromiumSkia::paintProgressBar):
  101339. 2010-06-03 MORITA Hajime <morrita@google.com>
  101340. Reviewed by Kent Tamura.
  101341. [Chromium] Support HTML5 <progress> element on Linux.
  101342. https://bugs.webkit.org/show_bug.cgi?id=37310
  101343. Implemented RenderThemeChromiumSkia::paintProgressBar(), extracing
  101344. determinateProgressValueRectFor() from RenderThemeChromiumWin to
  101345. RenderThemeChromiumSkia
  101346. No new tests. Expectations will come after ENABLE_PROGRESS_BAR get
  101347. enabled on chromium.
  101348. * rendering/RenderThemeChromiumSkia.cpp:
  101349. (WebCore::RenderThemeChromiumSkia::determinateProgressValueRectFor):
  101350. (WebCore::RenderThemeChromiumSkia::indeterminateProgressValueRectFor):
  101351. (WebCore::RenderThemeChromiumSkia::animationRepeatIntervalForProgressBar):
  101352. (WebCore::RenderThemeChromiumSkia::animationDurationForProgressBar):
  101353. (WebCore::RenderThemeChromiumSkia::paintProgressBar):
  101354. (WebCore::RenderThemeChromiumSkia::progressValueRectFor):
  101355. * rendering/RenderThemeChromiumSkia.h:
  101356. * rendering/RenderThemeChromiumWin.cpp:
  101357. (WebCore::RenderThemeChromiumWin::paintProgressBar):
  101358. 2010-06-02 Nico Weber <thakis@chromium.org>
  101359. Reviewed by Simon Fraser.
  101360. Scroll events are sent twice per keypress for ports that don't have a platformWidget scrollbar
  101361. https://bugs.webkit.org/show_bug.cgi?id=39918
  101362. This was regressed by http://trac.webkit.org/changeset/58615 . Fix this by slightly tweaking
  101363. that patch.
  101364. Test: editing/input/page-up-down-scrolls.html
  101365. * page/FrameView.cpp:
  101366. (WebCore::FrameView::scrollPositionChanged):
  101367. * page/FrameView.h:
  101368. * platform/ScrollView.cpp:
  101369. (WebCore::ScrollView::valueChanged):
  101370. * platform/ScrollView.h:
  101371. (WebCore::ScrollView::repaintFixedElementsAfterScrolling):
  101372. 2010-06-02 Andrey Kosyakov <caseq@chromium.org>
  101373. Reviewed by Pavel Feldman.
  101374. Web Inspector: use platform-specific key designations in shortcuts help for mac
  101375. https://bugs.webkit.org/show_bug.cgi?id=39158
  101376. * inspector/front-end/KeyboardShortcut.js:
  101377. (WebInspector.KeyboardShortcut.shortcutToString):
  101378. (WebInspector.KeyboardShortcut._keyName):
  101379. (WebInspector.KeyboardShortcut._modifiersToString):
  101380. * inspector/front-end/inspector.js:
  101381. (WebInspector._registerShortcuts):
  101382. 2010-06-02 Kenneth Russell <kbr@google.com>
  101383. Reviewed by Darin Fisher.
  101384. Enable WebGL on more platforms even if accelerated compositing is disabled
  101385. https://bugs.webkit.org/show_bug.cgi?id=40085
  101386. Conditionalize the code which prevents a WebGL rendering context
  101387. from being created if accelerated compositing is disabled.
  101388. Currently Chromium is the only port which will create a context if
  101389. accelerated compositing is disabled; other ports may opt in to
  101390. this code path if desired.
  101391. Tested with existing WebGL layout tests in Safari and Chromium on
  101392. Mac OS X.
  101393. * html/HTMLCanvasElement.cpp:
  101394. (WebCore::HTMLCanvasElement::getContext):
  101395. 2010-06-02 Sheriff Bot <webkit.review.bot@gmail.com>
  101396. Unreviewed, rolling out r60580.
  101397. http://trac.webkit.org/changeset/60580
  101398. https://bugs.webkit.org/show_bug.cgi?id=40087
  101399. This broke dragging links if the selection was in a
  101400. contentEditable element. (Requested by arv on #webkit).
  101401. * page/FocusController.cpp:
  101402. (WebCore::clearSelectionIfNeeded):
  101403. 2010-06-02 Erik Arvidsson <arv@chromium.org>
  101404. Reviewed by Ojan Vafai.
  101405. REGRESSION: Weird focus behavior affects quoting on University of Washington message board system
  101406. https://bugs.webkit.org/show_bug.cgi?id=38548
  101407. Test: editing/selection/click-in-focusable-link-should-not-clear-selection.html
  101408. * page/FocusController.cpp:
  101409. (WebCore::clearSelectionIfNeeded):
  101410. 2010-06-02 David Hyatt <hyatt@apple.com>
  101411. Reviewed by Anders Carlsson.
  101412. Just disable the current version of multi-column layout completely when the new
  101413. pagination model is in effect.
  101414. * rendering/RenderBlock.cpp:
  101415. (WebCore::RenderBlock::setDesiredColumnCountAndWidth):
  101416. 2010-06-02 David Hyatt <hyatt@apple.com>
  101417. Reviewed by Anders Carlsson.
  101418. Turn off unforced page breaking at paint time when the new page breaking model is being used.
  101419. * rendering/RenderLineBoxList.cpp:
  101420. (WebCore::RenderLineBoxList::paint):
  101421. 2010-06-02 David Hyatt <hyatt@apple.com>
  101422. Reviewed by Anders Carlsson.
  101423. Don't check page break properties at paint time if we're using the new page breaking model.
  101424. * rendering/RenderBlock.cpp:
  101425. (WebCore::RenderBlock::paintChildren):
  101426. 2010-06-02 Nate Chapin <japhet@chromium.org>
  101427. Reviewed by Dimitri Glazkov.
  101428. [V8] Fix an infinite recursion crash when trying to wrap
  101429. media elements without a media player.
  101430. No test because there isn't a good way to ensure the media player
  101431. is off.
  101432. * dom/make_names.pl: Call, e.g., V8HTMLElement::wrap(HTMLElement*)
  101433. instead of toV8(HTMLElement*).
  101434. 2010-06-02 Yael Aharon <yael.aharon@nokia.com>
  101435. Reviewed by Darin Adler.
  101436. Notification object ref counting is not correct.
  101437. https://bugs.webkit.org/show_bug.cgi?id=39998
  101438. Return PassRefPtr<Notification> instead of a raw pointer from the create methods
  101439. for Web Notifications.
  101440. No new tests are needed, as existing tests show the problem when sending the
  101441. "display" event asynchronously.
  101442. * notifications/Notification.h:
  101443. (WebCore::Notification::create):
  101444. * notifications/NotificationCenter.h:
  101445. (WebCore::NotificationCenter::createHTMLNotification):
  101446. (WebCore::NotificationCenter::createNotification):
  101447. 2010-06-02 Mikhail Naganov <mnaganov@chromium.org>
  101448. Reviewed by Yury Semikhatsky.
  101449. Web Inspector: add Console API for retrieving memory stats
  101450. Add 'console.memory' property which returns an object. Currently
  101451. it has two fields: totalJSHeapSize and usedJSHeapSize. Later, it can be
  101452. extended for reporting total browser's memory consumption.
  101453. https://bugs.webkit.org/show_bug.cgi?id=39646
  101454. * CMakeLists.txt:
  101455. * DerivedSources.cpp:
  101456. * DerivedSources.make:
  101457. * GNUmakefile.am:
  101458. * WebCore.gypi:
  101459. * WebCore.pri:
  101460. * WebCore.pro:
  101461. * WebCore.vcproj/WebCore.vcproj:
  101462. * WebCore.xcodeproj/project.pbxproj:
  101463. * bindings/js/JSBindingsAllInOne.cpp:
  101464. * bindings/js/JSConsoleCustom.cpp:
  101465. (WebCore::JSConsole::memory):
  101466. * bindings/v8/custom/V8ConsoleCustom.cpp:
  101467. (WebCore::V8Console::memoryAccessorGetter):
  101468. * page/Console.h:
  101469. * page/Console.idl:
  101470. * page/MemoryInfo.cpp: Added.
  101471. (WebCore::MemoryInfo::MemoryInfo):
  101472. * page/MemoryInfo.h: Added.
  101473. (WebCore::MemoryInfo::create):
  101474. (WebCore::MemoryInfo::totalJSHeapSize):
  101475. (WebCore::MemoryInfo::usedJSHeapSize):
  101476. * page/MemoryInfo.idl: Added.
  101477. 2010-06-02 Yury Semikhatsky <yurys@chromium.org>
  101478. Reviewed by Pavel Feldman.
  101479. Web Inspector: support "Continue to Here" in debugger
  101480. https://bugs.webkit.org/show_bug.cgi?id=39953
  101481. * English.lproj/localizedStrings.js:
  101482. * inspector/front-end/BreakpointManager.js:
  101483. (WebInspector.BreakpointManager.prototype.setOneTimeBreakpoint):
  101484. (WebInspector.BreakpointManager.prototype.removeOneTimeBreakpoint):
  101485. (WebInspector.BreakpointManager.prototype.addBreakpoint):
  101486. * inspector/front-end/ScriptView.js:
  101487. (WebInspector.ScriptView):
  101488. (WebInspector.ScriptView.prototype._continueToLine):
  101489. * inspector/front-end/ScriptsPanel.js:
  101490. (WebInspector.ScriptsPanel.prototype.continueToLine):
  101491. (WebInspector.ScriptsPanel.prototype.debuggerPaused):
  101492. * inspector/front-end/SourceFrame.js:
  101493. (WebInspector.SourceFrame):
  101494. * inspector/front-end/SourceView.js:
  101495. (WebInspector.SourceView):
  101496. (WebInspector.SourceView.prototype._continueToLine):
  101497. (WebInspector.SourceView.prototype.updateLocalContent):
  101498. 2010-06-02 Mikhail Naganov <mnaganov@chromium.org>
  101499. Unreviewed, rolling out r60563.
  101500. http://trac.webkit.org/changeset/60563
  101501. https://bugs.webkit.org/show_bug.cgi?id=39646
  101502. windows build failed
  101503. * CMakeLists.txt:
  101504. * DerivedSources.cpp:
  101505. * DerivedSources.make:
  101506. * GNUmakefile.am:
  101507. * WebCore.gypi:
  101508. * WebCore.pri:
  101509. * WebCore.pro:
  101510. * WebCore.vcproj/WebCore.vcproj:
  101511. * WebCore.xcodeproj/project.pbxproj:
  101512. * bindings/js/JSConsoleCustom.cpp:
  101513. * bindings/v8/custom/V8ConsoleCustom.cpp:
  101514. * page/Console.h:
  101515. * page/Console.idl:
  101516. * page/MemoryInfo.cpp: Removed.
  101517. * page/MemoryInfo.h: Removed.
  101518. * page/MemoryInfo.idl: Removed.
  101519. 2010-06-02 Mikhail Naganov <mnaganov@chromium.org>
  101520. Reviewed by Yury Semikhatsky.
  101521. Web Inspector: add Console API for retrieving memory stats
  101522. Add 'console.memory' property which returns an object. Currently
  101523. it has two fields: totalJSHeapSize and usedJSHeapSize. Later, it can be
  101524. extended for reporting total browser's memory consumption.
  101525. https://bugs.webkit.org/show_bug.cgi?id=39646
  101526. * CMakeLists.txt:
  101527. * DerivedSources.cpp:
  101528. * DerivedSources.make:
  101529. * GNUmakefile.am:
  101530. * WebCore.gypi:
  101531. * WebCore.pri:
  101532. * WebCore.pro:
  101533. * WebCore.vcproj/WebCore.vcproj:
  101534. * WebCore.xcodeproj/project.pbxproj:
  101535. * bindings/js/JSConsoleCustom.cpp:
  101536. (WebCore::JSConsole::memory):
  101537. * bindings/v8/custom/V8ConsoleCustom.cpp:
  101538. (WebCore::V8Console::memoryAccessorGetter):
  101539. * page/Console.h:
  101540. * page/Console.idl:
  101541. * page/MemoryInfo.cpp: Added.
  101542. (WebCore::MemoryInfo::MemoryInfo):
  101543. * page/MemoryInfo.h: Added.
  101544. (WebCore::MemoryInfo::create):
  101545. (WebCore::MemoryInfo::totalJSHeapSize):
  101546. (WebCore::MemoryInfo::usedJSHeapSize):
  101547. * page/MemoryInfo.idl: Added.
  101548. 2010-06-02 Pavel Feldman <pfeldman@chromium.org>
  101549. Reviewed by Yury Semikhatsky.
  101550. Web Inspector: add test for resource parameters.
  101551. https://bugs.webkit.org/show_bug.cgi?id=40026
  101552. Test: http/tests/inspector/resource-parameters.html
  101553. * inspector/front-end/HAREntry.js:
  101554. (WebInspector.HAREntry.prototype._buildParameters):
  101555. * inspector/front-end/Resource.js:
  101556. (WebInspector.Resource.prototype._parseParameters):
  101557. * inspector/front-end/ResourceView.js:
  101558. (WebInspector.ResourceView.prototype._refreshParms):
  101559. 2010-06-02 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
  101560. Reviewed by Simon Hausmann.
  101561. [Qt] Fix make install on Symbian for headers in package builds when INSTALL_HEADERS is not defined
  101562. First we wrote inst_headers.output with $$[QT_INSTALL_HEADERS] and then
  101563. overwrote it with the $$INSTALL_HEADERS variant without checking if the
  101564. variable was set.
  101565. Fixed and cleaned up the logic of falling back to $$[QT_INSTALL_HEADERS].
  101566. * WebCore.pro:
  101567. 2010-06-02 Xan Lopez <xlopez@igalia.com>
  101568. Reviewed by Gustavo Noronha.
  101569. [GTK] Style fixes for the generated code in DOM bindings
  101570. https://bugs.webkit.org/show_bug.cgi?id=39949
  101571. Get rid of extra spaces and wrong indentation in the generated
  101572. code.
  101573. * bindings/scripts/CodeGeneratorGObject.pm:
  101574. * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
  101575. (webkit_dom_test_callback_callback_with_class1param):
  101576. (webkit_dom_test_callback_callback_with_class2param):
  101577. (webkit_dom_test_callback_callback_with_non_bool_return_type):
  101578. (webkit_dom_test_callback_set_property):
  101579. (webkit_dom_test_callback_get_property):
  101580. * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
  101581. * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
  101582. (webkit_dom_test_interface_set_property):
  101583. (webkit_dom_test_interface_get_property):
  101584. * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  101585. (webkit_dom_test_obj_void_method):
  101586. (webkit_dom_test_obj_void_method_with_args):
  101587. (webkit_dom_test_obj_int_method):
  101588. (webkit_dom_test_obj_int_method_with_args):
  101589. (webkit_dom_test_obj_obj_method):
  101590. (webkit_dom_test_obj_obj_method_with_args):
  101591. (webkit_dom_test_obj_method_that_requires_all_args):
  101592. (webkit_dom_test_obj_method_that_requires_all_args_and_throws):
  101593. (webkit_dom_test_obj_serialized_value):
  101594. (webkit_dom_test_obj_method_with_exception):
  101595. (webkit_dom_test_obj_with_dynamic_frame):
  101596. (webkit_dom_test_obj_with_dynamic_frame_and_arg):
  101597. (webkit_dom_test_obj_with_dynamic_frame_and_optional_arg):
  101598. (webkit_dom_test_obj_with_dynamic_frame_and_user_gesture):
  101599. (webkit_dom_test_obj_with_dynamic_frame_and_user_gesture_asad):
  101600. (webkit_dom_test_obj_with_script_state_void):
  101601. (webkit_dom_test_obj_with_script_state_obj):
  101602. (webkit_dom_test_obj_with_script_state_void_exception):
  101603. (webkit_dom_test_obj_with_script_state_obj_exception):
  101604. (webkit_dom_test_obj_method_with_optional_arg):
  101605. (webkit_dom_test_obj_method_with_non_optional_arg_and_optional_arg):
  101606. (webkit_dom_test_obj_method_with_non_optional_arg_and_two_optional_args):
  101607. (webkit_dom_test_obj_get_read_only_int_attr):
  101608. (webkit_dom_test_obj_get_read_only_string_attr):
  101609. (webkit_dom_test_obj_get_read_only_test_obj_attr):
  101610. (webkit_dom_test_obj_get_int_attr):
  101611. (webkit_dom_test_obj_set_int_attr):
  101612. (webkit_dom_test_obj_get_long_long_attr):
  101613. (webkit_dom_test_obj_set_long_long_attr):
  101614. (webkit_dom_test_obj_get_unsigned_long_long_attr):
  101615. (webkit_dom_test_obj_set_unsigned_long_long_attr):
  101616. (webkit_dom_test_obj_get_string_attr):
  101617. (webkit_dom_test_obj_set_string_attr):
  101618. (webkit_dom_test_obj_get_test_obj_attr):
  101619. (webkit_dom_test_obj_set_test_obj_attr):
  101620. (webkit_dom_test_obj_get_attr_with_exception):
  101621. (webkit_dom_test_obj_set_attr_with_exception):
  101622. (webkit_dom_test_obj_get_attr_with_setter_exception):
  101623. (webkit_dom_test_obj_set_attr_with_setter_exception):
  101624. (webkit_dom_test_obj_get_attr_with_getter_exception):
  101625. (webkit_dom_test_obj_set_attr_with_getter_exception):
  101626. (webkit_dom_test_obj_get_script_string_attr):
  101627. (webkit_dom_test_obj_set_property):
  101628. (webkit_dom_test_obj_get_property):
  101629. (webkit_dom_test_obj_class_init):
  101630. * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  101631. 2010-06-02 Andrey Kosyakov <caseq@chromium.org>
  101632. Reviewed by Pavel Feldman.
  101633. WebInspector: Added conversion of inspector's resource representation into HAR.
  101634. Moved common resource accessors from ResourceView to Resource.
  101635. https://bugs.webkit.org/show_bug.cgi?id=30567
  101636. Test: http/tests/inspector/resource-har-conversion.html
  101637. * WebCore.gypi:
  101638. * WebCore.vcproj/WebCore.vcproj:
  101639. * inspector/front-end/HAREntry.js: Added.
  101640. (WebInspector.HAREntry):
  101641. (WebInspector.HAREntry.prototype.build):
  101642. (WebInspector.HAREntry.prototype._buildRequest):
  101643. (WebInspector.HAREntry.prototype._buildResponse):
  101644. (WebInspector.HAREntry.prototype._buildContent):
  101645. (WebInspector.HAREntry.prototype._buildTimings):
  101646. (WebInspector.HAREntry.prototype._buildHeaders):
  101647. (WebInspector.HAREntry.prototype._buildPostData):
  101648. (WebInspector.HAREntry.prototype._buildParameters):
  101649. (WebInspector.HAREntry.prototype._buildParameter):
  101650. (WebInspector.HAREntry.prototype._toMilliseconds):
  101651. * inspector/front-end/Resource.js:
  101652. (WebInspector.Resource):
  101653. (WebInspector.Resource.prototype.set url):
  101654. (WebInspector.Resource.prototype.get receiveDuration):
  101655. (WebInspector.Resource.prototype.requestHeaderValue):
  101656. (WebInspector.Resource.prototype.get requestFormData):
  101657. (WebInspector.Resource.prototype.set requestFormData):
  101658. (WebInspector.Resource.prototype.responseHeaderValue):
  101659. (WebInspector.Resource.prototype.get queryParameters):
  101660. (WebInspector.Resource.prototype.get formParameters):
  101661. (WebInspector.Resource.prototype._parseParameters):
  101662. (WebInspector.Resource.prototype._headerValue):
  101663. * inspector/front-end/ResourceView.js:
  101664. (WebInspector.ResourceView.prototype._refreshQueryString):
  101665. (WebInspector.ResourceView.prototype._refreshFormData):
  101666. (WebInspector.ResourceView.prototype._refreshParms):
  101667. * inspector/front-end/WebKit.qrc:
  101668. * inspector/front-end/inspector.html:
  101669. 2010-06-02 Sheriff Bot <webkit.review.bot@gmail.com>
  101670. Unreviewed, rolling out r60547.
  101671. http://trac.webkit.org/changeset/60547
  101672. https://bugs.webkit.org/show_bug.cgi?id=40051
  101673. It made fast/overflow/overflow-with-local-background-
  101674. attachment.html crash (Requested by Ossy on #webkit).
  101675. * notifications/Notification.h:
  101676. (WebCore::Notification::create):
  101677. * notifications/NotificationCenter.h:
  101678. (WebCore::NotificationCenter::createHTMLNotification):
  101679. (WebCore::NotificationCenter::createNotification):
  101680. 2010-06-02 Eric Seidel <eric@webkit.org>
  101681. Reviewed by Adam Barth.
  101682. HTML5 parser does not track line numbers
  101683. https://bugs.webkit.org/show_bug.cgi?id=39984
  101684. This adds rudimentary line-number tracking to the HTML5Lexer.
  101685. We'll still need to handle \r\n cases eventually, but this
  101686. fixes the vast majority of our line-number related failures.
  101687. Fixes 268 layout tests. :)
  101688. * html/HTML5Lexer.cpp:
  101689. (WebCore::HTML5Lexer::reset):
  101690. - Reset m_lineNumber to 0.
  101691. (WebCore::HTML5Lexer::consumeEntity):
  101692. - Pass m_lineNumber to advance().
  101693. (WebCore::HTML5Lexer::nextToken):
  101694. - Pass m_lineNumber to advance().
  101695. * html/HTML5Lexer.h:
  101696. (WebCore::HTML5Lexer::lineNumber):
  101697. - Expose m_lineNumber for HTML5Tokenizer.
  101698. (WebCore::HTML5Lexer::columnNumber):
  101699. - Mirrors the implementation in the old HTMLTokenizer.
  101700. we might some day support column number tracking in
  101701. the Lexer. It certainly would be possible.
  101702. * html/HTML5ScriptRunner.cpp:
  101703. (WebCore::HTML5ScriptRunner::HTML5ScriptRunner):
  101704. - ASSERT we're passed a host.
  101705. (WebCore::HTML5ScriptRunner::sourceFromPendingScript):
  101706. - Use PendingScript.startingLineNumber when PendingScript is an inline script.
  101707. (WebCore::HTML5ScriptRunner::execute):
  101708. - Now expects a start line number passed from the TreeBuilder.
  101709. (WebCore::HTML5ScriptRunner::runScript):
  101710. - Now expects a start line number.
  101711. * html/HTML5ScriptRunner.h:
  101712. (WebCore::HTML5ScriptRunner::PendingScript::PendingScript):
  101713. - Track startingLineNumber for any inline script.
  101714. * html/HTML5Tokenizer.cpp:
  101715. (WebCore::HTML5Tokenizer::begin):
  101716. - Add a FIXME. The old HTMLTokenizer resets its "lexer" state here.
  101717. (WebCore::HTML5Tokenizer::pumpLexer):
  101718. - Pass scriptStartLine to the HTML5ScriptRunner
  101719. (WebCore::HTML5Tokenizer::lineNumber):
  101720. - Implementation for Tokenizer.h
  101721. (WebCore::HTML5Tokenizer::columnNumber):
  101722. - Implementation for Tokenizer.h
  101723. * html/HTML5Tokenizer.h:
  101724. * html/HTML5TreeBuilder.cpp:
  101725. (WebCore::HTML5TreeBuilder::HTML5TreeBuilder):
  101726. - Initialize the new line number tracking variables.
  101727. (WebCore::HTML5TreeBuilder::handleScriptEndTag):
  101728. - Save off the line number from the start tag to pass to the ScriptRunner.
  101729. (WebCore::HTML5TreeBuilder::takeScriptToProcess):
  101730. - Return the line number from the start tag.
  101731. (WebCore::HTML5TreeBuilder::passTokenToLegacyParser):
  101732. - Save off the line number of ever script start tag we see.
  101733. * html/HTML5TreeBuilder.h:
  101734. - Keep both the line number of the last start tag, and the
  101735. line number of the script we know we're expecting our caller to
  101736. run before resuming parsing. These are separate to keep the code
  101737. clean, especially since the last script start tag line number is
  101738. a hack specific to using the old HTMLParser.
  101739. 2010-06-02 Joseph Pecoraro <joepeck@webkit.org>
  101740. Reviewed by Pavel Feldman.
  101741. Web Inspector: Timeline should nicely format the Timer timeout
  101742. https://bugs.webkit.org/show_bug.cgi?id=40040
  101743. * inspector/front-end/TimelinePanel.js:
  101744. (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent): Format the Timer's timeout time.
  101745. 2010-06-02 Vangelis Kokkevis <vangelis@chromium.org>
  101746. Reviewed by Dimitri Glazkov.
  101747. [Chromium] Clamp dirtyRect updates of composited layer contents to the size
  101748. of the layer to avoid writing outside texture bounds.
  101749. https://bugs.webkit.org/show_bug.cgi?id=40030
  101750. * platform/graphics/chromium/LayerChromium.cpp:
  101751. (WebCore::LayerChromium::updateTextureContents):
  101752. 2010-06-02 Yael Aharon <yael.aharon@nokia.com>
  101753. Reviewed by Darin Adler.
  101754. Notification object ref counting is not correct.
  101755. https://bugs.webkit.org/show_bug.cgi?id=39998
  101756. Return PassRefPtr<Notification> instead of a raw pointer from the create methods
  101757. for Web Notifications.
  101758. No new tests are needed, as existing tests show the problem when sending the
  101759. "display" event asynchronously.
  101760. * notifications/Notification.h:
  101761. (WebCore::Notification::create):
  101762. * notifications/NotificationCenter.h:
  101763. (WebCore::NotificationCenter::createHTMLNotification):
  101764. (WebCore::NotificationCenter::createNotification):
  101765. 2010-06-02 Qi Zhang <qi.2.zhang@nokia.com>
  101766. Reviewed by Dirk Schulze.
  101767. [Qt] Image shadow doesn't work
  101768. https://bugs.webkit.org/show_bug.cgi?id=37804
  101769. Implement the code for image shadow
  101770. * platform/graphics/qt/ImageQt.cpp:
  101771. (WebCore::BitmapImage::draw):
  101772. 2010-06-02 Vangelis Kokkevis <vangelis@chromium.org>
  101773. Reviewed by Darin Fisher.
  101774. Adding the precision qualifier to fragment shaders used by the GL
  101775. compositor in chromium to turn them into valid GLSL ES.
  101776. https://bugs.webkit.org/show_bug.cgi?id=40022
  101777. * platform/graphics/chromium/LayerRendererChromium.cpp:
  101778. (WebCore::LayerRendererChromium::initializeSharedGLObjects):
  101779. 2010-06-02 Laszlo Gombos <laszlo.1.gombos@nokia.com>
  101780. Reviewed by David Levin.
  101781. Fix type qualifier is meaningless on cast type in SVGFEColorMatrixElement::build
  101782. https://bugs.webkit.org/show_bug.cgi?id=40015
  101783. No new tests as there is no new functionality.
  101784. Remove const from the cast type.
  101785. * svg/SVGFEColorMatrixElement.cpp:
  101786. (WebCore::SVGFEColorMatrixElement::build):
  101787. 2010-06-02 Sterling Swigart <sswigart@google.com>
  101788. Reviewed by David Levin.
  101789. Image Resizer Patch 0: Added compilation argument to conditionally compile pending patches.
  101790. https://bugs.webkit.org/show_bug.cgi?id=39906
  101791. * Configurations/FeatureDefines.xcconfig:
  101792. * GNUmakefile.am:
  101793. * WebCore.pri:
  101794. 2010-06-01 Dirk Schulze <krit@webkit.org>
  101795. Reviewed by Nikolas Zimmermann.
  101796. SVG repaintRect should be empty if content got clipped away
  101797. https://bugs.webkit.org/show_bug.cgi?id=39965
  101798. The SVG repaintRect of the renderer was not empty, if the content got clipped away.
  101799. The MaskerData/ClipperData <-> RenderObject mapping is set up during the layout phase now, to be able to
  101800. relayout a RenderObject, if it's repaintRect is empty. This has the following reason:
  101801. We apply the object to the resource on painting at the moment.
  101802. With an empty repaintRect, paint() quits earlier and therefore the object doesn't get applied to the resource.
  101803. This can cause problems, if the resource get changed by animations or scripts.
  101804. On a change, the resource tells all it's callers to relayout.
  101805. If the reference to the caller (our RenderObject) is missing, the object won't ever update
  101806. and therefore won't get drawn.
  101807. We already have LayoutTests that cover this problem. The complete repaintRect calculation
  101808. (including the smallest clipping area and shadow size calculation) moved from the renderers to SVGRenderSupport.
  101809. This eliminates redundant code.
  101810. * rendering/RenderPath.cpp:
  101811. (WebCore::RenderPath::updateCachedBoundaries):
  101812. * rendering/RenderSVGContainer.cpp:
  101813. (WebCore::RenderSVGContainer::repaintRectInLocalCoordinates):
  101814. * rendering/RenderSVGImage.cpp:
  101815. (WebCore::RenderSVGImage::repaintRectInLocalCoordinates):
  101816. * rendering/RenderSVGResource.h:
  101817. * rendering/RenderSVGResourceClipper.cpp:
  101818. (WebCore::RenderSVGResourceClipper::resourceBoundingBox):
  101819. * rendering/RenderSVGResourceClipper.h:
  101820. * rendering/RenderSVGResourceFilter.cpp:
  101821. (WebCore::RenderSVGResourceFilter::resourceBoundingBox):
  101822. * rendering/RenderSVGResourceFilter.h:
  101823. * rendering/RenderSVGResourceGradient.h:
  101824. (WebCore::RenderSVGResourceGradient::resourceBoundingBox):
  101825. * rendering/RenderSVGResourceMarker.h:
  101826. (WebCore::RenderSVGResourceMarker::resourceBoundingBox):
  101827. * rendering/RenderSVGResourceMasker.cpp:
  101828. (WebCore::RenderSVGResourceMasker::resourceBoundingBox):
  101829. * rendering/RenderSVGResourceMasker.h:
  101830. * rendering/RenderSVGResourcePattern.h:
  101831. (WebCore::RenderSVGResourcePattern::resourceBoundingBox):
  101832. * rendering/RenderSVGResourceSolidColor.h:
  101833. (WebCore::RenderSVGResourceSolidColor::resourceBoundingBox):
  101834. * rendering/RenderSVGText.cpp:
  101835. (WebCore::RenderSVGText::strokeBoundingBox):
  101836. (WebCore::RenderSVGText::repaintRectInLocalCoordinates):
  101837. * rendering/SVGRenderSupport.cpp:
  101838. (WebCore::SVGRenderBase::intersectRepaintRectWithResources):
  101839. * rendering/SVGRenderSupport.h:
  101840. * rendering/SVGRenderTreeAsText.cpp:
  101841. (WebCore::writeResources):
  101842. * rendering/style/SVGRenderStyle.h:
  101843. (WebCore::SVGRenderStyle::hasClipper):
  101844. (WebCore::SVGRenderStyle::hasMasker):
  101845. (WebCore::SVGRenderStyle::hasFilter):
  101846. 2010-06-01 Sheriff Bot <webkit.review.bot@gmail.com>
  101847. Unreviewed, rolling out r60539.
  101848. http://trac.webkit.org/changeset/60539
  101849. https://bugs.webkit.org/show_bug.cgi?id=40043
  101850. Accidentally added an unreviewed and invalid change to the
  101851. patch. (Requested by krit on #webkit).
  101852. * rendering/RenderPath.cpp:
  101853. (WebCore::RenderPath::updateCachedBoundaries):
  101854. * rendering/RenderSVGContainer.cpp:
  101855. (WebCore::RenderSVGContainer::repaintRectInLocalCoordinates):
  101856. * rendering/RenderSVGImage.cpp:
  101857. (WebCore::RenderSVGImage::repaintRectInLocalCoordinates):
  101858. * rendering/RenderSVGResource.h:
  101859. * rendering/RenderSVGResourceClipper.cpp:
  101860. (WebCore::RenderSVGResourceClipper::resourceBoundingBox):
  101861. * rendering/RenderSVGResourceClipper.h:
  101862. * rendering/RenderSVGResourceFilter.cpp:
  101863. (WebCore::RenderSVGResourceFilter::resourceBoundingBox):
  101864. * rendering/RenderSVGResourceFilter.h:
  101865. * rendering/RenderSVGResourceGradient.h:
  101866. (WebCore::RenderSVGResourceGradient::resourceBoundingBox):
  101867. * rendering/RenderSVGResourceMarker.h:
  101868. (WebCore::RenderSVGResourceMarker::resourceBoundingBox):
  101869. * rendering/RenderSVGResourceMasker.cpp:
  101870. (WebCore::RenderSVGResourceMasker::resourceBoundingBox):
  101871. * rendering/RenderSVGResourceMasker.h:
  101872. * rendering/RenderSVGResourcePattern.h:
  101873. (WebCore::RenderSVGResourcePattern::resourceBoundingBox):
  101874. * rendering/RenderSVGResourceSolidColor.h:
  101875. (WebCore::RenderSVGResourceSolidColor::resourceBoundingBox):
  101876. * rendering/RenderSVGText.cpp:
  101877. (WebCore::RenderSVGText::strokeBoundingBox):
  101878. (WebCore::RenderSVGText::repaintRectInLocalCoordinates):
  101879. * rendering/SVGRenderSupport.cpp:
  101880. (WebCore::SVGRenderBase::filterBoundingBoxForRenderer):
  101881. (WebCore::SVGRenderBase::clipperBoundingBoxForRenderer):
  101882. (WebCore::SVGRenderBase::maskerBoundingBoxForRenderer):
  101883. * rendering/SVGRenderSupport.h:
  101884. * rendering/SVGRenderTreeAsText.cpp:
  101885. (WebCore::writeResources):
  101886. * rendering/style/SVGRenderStyle.h:
  101887. * svg/SVGColor.cpp:
  101888. (WebCore::SVGColor::colorFromRGBColorString):
  101889. 2010-06-01 Dirk Schulze <krit@webkit.org>
  101890. Reviewed by Nikolas Zimmermann.
  101891. SVG repaintRect should be empty if content got clipped away
  101892. https://bugs.webkit.org/show_bug.cgi?id=39965
  101893. The SVG repaintRect of the renderer was not empty, if the content got clipped away.
  101894. The MaskerData/ClipperData <-> RenderObject mapping is set up during the layout phase now, to be able to
  101895. relayout a RenderObject, if it's repaintRect is empty. This has the following reason:
  101896. We apply the object to the resource on painting at the moment.
  101897. With an empty repaintRect, paint() quits earlier and therefore the object doesn't get applied to the resource.
  101898. This can cause problems, if the resource get changed by animations or scripts.
  101899. On a change, the resource tells all it's callers to relayout.
  101900. If the reference to the caller (our RenderObject) is missing, the object won't ever update
  101901. and therefore won't get drawn.
  101902. We already have LayoutTests that cover this problem. The complete repaintRect calculation
  101903. (including the smallest clipping area and shadow size calculation) moved from the renderers to SVGRenderSupport.
  101904. This eliminates redundant code.
  101905. * rendering/RenderPath.cpp:
  101906. (WebCore::RenderPath::updateCachedBoundaries):
  101907. * rendering/RenderSVGContainer.cpp:
  101908. (WebCore::RenderSVGContainer::repaintRectInLocalCoordinates):
  101909. * rendering/RenderSVGImage.cpp:
  101910. (WebCore::RenderSVGImage::repaintRectInLocalCoordinates):
  101911. * rendering/RenderSVGResource.h:
  101912. * rendering/RenderSVGResourceClipper.cpp:
  101913. (WebCore::RenderSVGResourceClipper::resourceBoundingBox):
  101914. * rendering/RenderSVGResourceClipper.h:
  101915. * rendering/RenderSVGResourceFilter.cpp:
  101916. (WebCore::RenderSVGResourceFilter::resourceBoundingBox):
  101917. * rendering/RenderSVGResourceFilter.h:
  101918. * rendering/RenderSVGResourceGradient.h:
  101919. (WebCore::RenderSVGResourceGradient::resourceBoundingBox):
  101920. * rendering/RenderSVGResourceMarker.h:
  101921. (WebCore::RenderSVGResourceMarker::resourceBoundingBox):
  101922. * rendering/RenderSVGResourceMasker.cpp:
  101923. (WebCore::RenderSVGResourceMasker::resourceBoundingBox):
  101924. * rendering/RenderSVGResourceMasker.h:
  101925. * rendering/RenderSVGResourcePattern.h:
  101926. (WebCore::RenderSVGResourcePattern::resourceBoundingBox):
  101927. * rendering/RenderSVGResourceSolidColor.h:
  101928. (WebCore::RenderSVGResourceSolidColor::resourceBoundingBox):
  101929. * rendering/RenderSVGText.cpp:
  101930. (WebCore::RenderSVGText::strokeBoundingBox):
  101931. (WebCore::RenderSVGText::repaintRectInLocalCoordinates):
  101932. * rendering/SVGRenderSupport.cpp:
  101933. (WebCore::SVGRenderBase::intersectRepaintRectWithResources):
  101934. * rendering/SVGRenderSupport.h:
  101935. * rendering/SVGRenderTreeAsText.cpp:
  101936. (WebCore::writeResources):
  101937. * rendering/style/SVGRenderStyle.h:
  101938. (WebCore::SVGRenderStyle::hasClipper):
  101939. (WebCore::SVGRenderStyle::hasMasker):
  101940. (WebCore::SVGRenderStyle::hasFilter):
  101941. 2010-06-01 Sheriff Bot <webkit.review.bot@gmail.com>
  101942. Unreviewed, rolling out r60530.
  101943. http://trac.webkit.org/changeset/60530
  101944. https://bugs.webkit.org/show_bug.cgi?id=40041
  101945. resource-har-conversion failed on GTK (Requested by abarth on
  101946. #webkit).
  101947. * WebCore.gypi:
  101948. * WebCore.vcproj/WebCore.vcproj:
  101949. * inspector/front-end/HAREntry.js: Removed.
  101950. * inspector/front-end/Resource.js:
  101951. (WebInspector.Resource):
  101952. (WebInspector.Resource.prototype.set url):
  101953. * inspector/front-end/ResourceView.js:
  101954. (WebInspector.ResourceView.prototype._refreshQueryString):
  101955. (WebInspector.ResourceView.prototype._refreshFormData):
  101956. (WebInspector.ResourceView.prototype._refreshParms):
  101957. * inspector/front-end/WebKit.qrc:
  101958. * inspector/front-end/inspector.html:
  101959. 2010-06-01 No'am Rosenthal <noam.rosenthal@nokia.com>
  101960. Reviewed by Kenneth Rohde Christiansen.
  101961. [Qt] GraphicsLayer: warnings when reloading page
  101962. https://bugs.webkit.org/show_bug.cgi?id=39694
  101963. Made sure recaching and masks aren't attempted on zero-size layers.
  101964. No new tests. Old tests (e.g. LayoutTests/compositing/masks) show the problem.
  101965. * platform/graphics/qt/GraphicsLayerQt.cpp:
  101966. (WebCore::MaskEffectQt::draw):
  101967. (WebCore::GraphicsLayerQtImpl::recache):
  101968. 2010-06-01 anton muhin <antonm@google.com>
  101969. Reviewed by Nate Chapin.
  101970. [Chromium] enforce presence of named property query callback if named property enumerator is present
  101971. https://bugs.webkit.org/show_bug.cgi?id=40006
  101972. We need to be able to distinguish between enumerable and not enumerable properties
  101973. in the presence of named interceptor. V8 is migrating to use query
  101974. callback to report enumerable properties and fallback check---
  101975. using getter callback---would report properties as not enumerable.
  101976. Thus if there is an enumerator callback, there should be query callback as well.
  101977. (see V8's r4751).
  101978. * bindings/scripts/CodeGeneratorV8.pm:
  101979. * bindings/v8/V8NPObject.cpp:
  101980. (WebCore::npObjectQueryProperty):
  101981. (WebCore::createV8ObjectForNPObject):
  101982. * bindings/v8/custom/V8StorageCustom.cpp:
  101983. (WebCore::V8Storage::namedPropertyQuery):
  101984. 2010-06-01 Andrey Kosyakov <caseq@chromium.org>
  101985. Reviewed by Pavel Feldman.
  101986. WebInspector: Added conversion of inspector's resource representation into HAR.
  101987. Moved common resource accessors from ResourceView to Resource.
  101988. https://bugs.webkit.org/show_bug.cgi?id=30567
  101989. Test: http/tests/inspector/resource-har-conversion.html
  101990. * WebCore.gypi:
  101991. * WebCore.vcproj/WebCore.vcproj:
  101992. * inspector/front-end/HAREntry.js: Added.
  101993. (WebInspector.HAREntry):
  101994. (WebInspector.HAREntry.prototype.build):
  101995. (WebInspector.HAREntry.prototype._buildRequest):
  101996. (WebInspector.HAREntry.prototype._buildResponse):
  101997. (WebInspector.HAREntry.prototype._buildContent):
  101998. (WebInspector.HAREntry.prototype._buildTimings):
  101999. (WebInspector.HAREntry.prototype._buildHeaders):
  102000. (WebInspector.HAREntry.prototype._buildPostData):
  102001. (WebInspector.HAREntry.prototype._buildParameters):
  102002. (WebInspector.HAREntry.prototype._buildParameter):
  102003. (WebInspector.HAREntry.prototype._toMilliseconds):
  102004. * inspector/front-end/Resource.js:
  102005. (WebInspector.Resource):
  102006. (WebInspector.Resource.prototype.set url):
  102007. (WebInspector.Resource.prototype.get receiveDuration):
  102008. (WebInspector.Resource.prototype.requestHeaderValue):
  102009. (WebInspector.Resource.prototype.get requestFormData):
  102010. (WebInspector.Resource.prototype.set requestFormData):
  102011. (WebInspector.Resource.prototype.responseHeaderValue):
  102012. (WebInspector.Resource.prototype.get queryParameters):
  102013. (WebInspector.Resource.prototype.get formParameters):
  102014. (WebInspector.Resource.prototype._parseParameters):
  102015. (WebInspector.Resource.prototype._headerValue):
  102016. * inspector/front-end/ResourceView.js:
  102017. (WebInspector.ResourceView.prototype._refreshQueryString):
  102018. (WebInspector.ResourceView.prototype._refreshFormData):
  102019. (WebInspector.ResourceView.prototype._refreshParms):
  102020. * inspector/front-end/WebKit.qrc:
  102021. * inspector/front-end/inspector.html:
  102022. 2010-06-01 Laszlo Gombos <laszlo.1.gombos@nokia.com>
  102023. Reviewed by Kenneth Rohde Christiansen.
  102024. Fix "variable may be used before being set" warning in TextResourceDecoder::checkForHeadCharset
  102025. https://bugs.webkit.org/show_bug.cgi?id=40001
  102026. No new tests as there is no new functionality.
  102027. Initialize len to 0 just to eliminate the compiler warning.
  102028. * loader/TextResourceDecoder.cpp:
  102029. (WebCore::TextResourceDecoder::checkForHeadCharset):
  102030. 2010-06-01 Ilya Tikhonovsky <loislo@chromium.org>
  102031. Reviewed by Pavel Feldman.
  102032. WebInspector: Safari specific files InspectorFrontendClientLocal were removed from chromium project.
  102033. https://bugs.webkit.org/show_bug.cgi?id=39993
  102034. * WebCore.gypi:
  102035. 2010-06-01 Andreas Kling <andreas.kling@nokia.com>
  102036. Reviewed by Darin Adler.
  102037. Fix broken code generation in GenerateParametersCheckExpression.
  102038. https://bugs.webkit.org/show_bug.cgi?id=39960
  102039. * bindings/scripts/CodeGeneratorJS.pm:
  102040. * bindings/scripts/test/JS/JSTestObj.cpp: Updated baseline.
  102041. 2010-06-01 Mark Rowe <mrowe@apple.com>
  102042. Rubber-stamped by Adam Roben.
  102043. Remove Breakpoint.js. It was emptied in r60450 but for some reason it was not
  102044. deleted at that time. The presence of empty files within the inspector's resource
  102045. folder causes Mac OS X production builds to fail.
  102046. * inspector/front-end/Breakpoint.js: Removed.
  102047. 2010-05-24 James Hawkins <jhawkins@chromium.org>
  102048. Reviewed by Darin Fisher.
  102049. Added ability for PopupMenuClient to signal when
  102050. * selection changed, and
  102051. * selection cleared.
  102052. https://bugs.webkit.org/show_bug.cgi?id=39639
  102053. No new tests because this functionality is intentionally hidden from
  102054. everything other than renderer.
  102055. * platform/PopupMenuClient.h:
  102056. * platform/chromium/PopupMenuChromium.cpp:
  102057. (WebCore::PopupListBox::selectIndex):
  102058. (WebCore::PopupListBox::clearSelection):
  102059. * rendering/RenderMenuList.h:
  102060. (WebCore::RenderMenuList::RenderMenuList::selectionChanged):
  102061. (WebCore::RenderMenuList::RenderMenuList::selectionCleared):
  102062. * rendering/RenderTextControlSingleLine.h:
  102063. (WebCore::RenderTextControlSingleLine::selectionChanged):
  102064. (WebCore::RenderTextControlSingleLine::selectionCleared):
  102065. 2010-06-01 Dumitru Daniliuc <dumi@chromium.org>
  102066. Reviewed by Dimitri Glazkov.
  102067. Check if a database needs to be auto-vacuumed only after transactions that have deleted something.
  102068. https://bugs.webkit.org/show_bug.cgi?id=39688
  102069. * storage/Database.cpp:
  102070. (WebCore::Database::resetDeletes):
  102071. (WebCore::Database::hadDeletes):
  102072. * storage/Database.h:
  102073. * storage/DatabaseAuthorizer.cpp:
  102074. (WebCore::DatabaseAuthorizer::resetDeletes):
  102075. (WebCore::DatabaseAuthorizer::dropTable):
  102076. (WebCore::DatabaseAuthorizer::dropTempTable):
  102077. (WebCore::DatabaseAuthorizer::dropIndex):
  102078. (WebCore::DatabaseAuthorizer::dropTempIndex):
  102079. (WebCore::DatabaseAuthorizer::dropTrigger):
  102080. (WebCore::DatabaseAuthorizer::dropTempTrigger):
  102081. (WebCore::DatabaseAuthorizer::dropView):
  102082. (WebCore::DatabaseAuthorizer::dropTempView):
  102083. (WebCore::DatabaseAuthorizer::dropVTable):
  102084. (WebCore::DatabaseAuthorizer::allowDelete):
  102085. (WebCore::DatabaseAuthorizer::updateDeletesBasedOnTableName): Added.
  102086. * storage/DatabaseAuthorizer.h:
  102087. (WebCore::DatabaseAuthorizer::hadDeletes):
  102088. * storage/SQLTransaction.cpp:
  102089. (WebCore::SQLTransaction::openTransactionAndPreflight):
  102090. (WebCore::SQLTransaction::postflightAndCommit):
  102091. 2010-06-01 David Hyatt <hyatt@apple.com>
  102092. Reviewed by Anders Carlsson.
  102093. Add a preference for paginating during layout (the new model for computing page breaks).
  102094. * page/Settings.cpp:
  102095. (WebCore::Settings::Settings):
  102096. * page/Settings.h:
  102097. (WebCore::Settings::setPaginateDuringLayoutEnabled):
  102098. (WebCore::Settings::paginateDuringLayoutEnabled):
  102099. 2010-06-01 Dumitru Daniliuc <dumi@chromium.org>
  102100. Reviewed by Adam Barth.
  102101. Clean up the DB classes in preparation for a bigger refactoring.
  102102. https://bugs.webkit.org/show_bug.cgi?id=39041
  102103. * storage/ChangeVersionWrapper.cpp:
  102104. * storage/ChangeVersionWrapper.h:
  102105. * storage/Database.cpp:
  102106. (WebCore::Database::Database):
  102107. (WebCore::Database::lastActionChangedDatabase):
  102108. (WebCore::Database::lastActionWasInsert):
  102109. (WebCore::Database::inProgressTransactionCompleted):
  102110. (WebCore::Database::securityOrigin):
  102111. * storage/Database.h:
  102112. (WebCore::Database::sqliteDatabase):
  102113. (WebCore::Database::databaseDebugName):
  102114. * storage/DatabaseTask.cpp:
  102115. (WebCore::DatabaseTransactionTask::doPerformTask):
  102116. * storage/DatabaseTask.h:
  102117. * storage/SQLStatement.cpp:
  102118. (WebCore::SQLStatement::execute):
  102119. * storage/SQLStatement.h:
  102120. * storage/SQLTransaction.cpp:
  102121. (WebCore::SQLTransaction::SQLTransaction):
  102122. (WebCore::SQLTransaction::openTransactionAndPreflight):
  102123. (WebCore::SQLTransaction::runStatements):
  102124. (WebCore::SQLTransaction::runCurrentStatement):
  102125. (WebCore::SQLTransaction::postflightAndCommit):
  102126. (WebCore::SQLTransaction::cleanupAfterSuccessCallback):
  102127. (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback):
  102128. * storage/SQLTransaction.h:
  102129. 2010-06-01 Rob Buis <rwlbuis@gmail.com>
  102130. Reviewed by Nikolas Zimmermann.
  102131. Large SVG rect with shadow fails to render
  102132. https://bugs.webkit.org/show_bug.cgi?id=38851
  102133. Store intermediate shadow calculation in floats to prevent integer overflow.
  102134. Test: svg/filters/shadow-on-rect-large.svg
  102135. * rendering/style/SVGRenderStyle.cpp:
  102136. (WebCore::getSVGShadowExtent):
  102137. (WebCore::SVGRenderStyle::inflateForShadow):
  102138. 2010-06-01 Jer Noble <jer.noble@apple.com>
  102139. Reviewed by Sam Weinig.
  102140. QuickTime 7.6.4 + Safari Nightly = Crash
  102141. https://bugs.webkit.org/show_bug.cgi?id=40019
  102142. rdar://problem/8035443
  102143. Check the return value of QTCFPropertyListCreateXMLData before calling CFDataGetLength().
  102144. * platform/graphics/win/QTCFDictionary.cpp:
  102145. (QTCFDictionaryCreateCopyWithDataCallback):
  102146. 2010-06-01 Rob Buis <rwlbuis@gmail.com>
  102147. Reviewed by Dirk Schulze.
  102148. Manipulating SVG element attributes in Javascript does not work as expected
  102149. https://bugs.webkit.org/show_bug.cgi?id=34328
  102150. Reset the viewBox to be empty when removing the viewBox attribute.
  102151. Test: svg/custom/svg-viewBox-dynamic.html
  102152. * svg/SVGFitToViewBox.cpp:
  102153. (WebCore::SVGFitToViewBox::parseViewBox):
  102154. (WebCore::SVGFitToViewBox::parseMappedAttribute):
  102155. * svg/SVGFitToViewBox.h:
  102156. * svg/SVGViewSpec.cpp:
  102157. (WebCore::SVGViewSpec::setViewBoxString):
  102158. (WebCore::SVGViewSpec::parseViewSpec):
  102159. 2010-06-01 Chris Fleizach <cfleizach@apple.com>
  102160. Reviewed by Beth Dakin.
  102161. AX: WebKit doesn't call [super -accessibilityAttributeValue:attribute forParameter:] when it encounters a parameterized attribute that it doesn't handle.
  102162. https://bugs.webkit.org/show_bug.cgi?id=39324
  102163. There are some parameters that super handles that are not explicitly returned by the list of the element's attributes.
  102164. In those cases, super should handle.
  102165. * accessibility/mac/AccessibilityObjectWrapper.mm:
  102166. (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
  102167. 2010-05-28 David Hyatt <hyatt@apple.com>
  102168. Reviewed by Beth Dakin.
  102169. https://bugs.webkit.org/show_bug.cgi?id=15550, complete implementation of column-span. Add support for nested column
  102170. spans. When a column span is nested inside multiple enclosing blocks, the blocks have to be split around the column-span.
  102171. We do this using block element continuations, the same kind of solution we employed for blocks inside inlines.
  102172. The code for block continuations is very similar to the code for inline continuations. It may be possible to refactor the
  102173. code into RenderBoxModelObject so that more of it can be shared, but this first pass avoids that so as not to risk
  102174. causing any regressions in core rendering.
  102175. Note also that - just as with inline continuations - you can't unsplit block continuations yet. There is no technical limitation
  102176. here... the functions just need to be written to handle it.
  102177. Added new tests in fast/multicol/span.
  102178. * rendering/RenderBlock.cpp:
  102179. (WebCore::RenderBlock::styleDidChange):
  102180. (WebCore::RenderBlock::continuationBefore):
  102181. (WebCore::RenderBlock::addChildToContinuation):
  102182. (WebCore::RenderBlock::containingColumnsBlock):
  102183. (WebCore::RenderBlock::clone):
  102184. (WebCore::RenderBlock::splitBlocks):
  102185. (WebCore::RenderBlock::splitFlow):
  102186. (WebCore::RenderBlock::splitAnonymousBlocksAroundChild):
  102187. (WebCore::RenderBlock::makeChildrenAnonymousColumnBlocks):
  102188. (WebCore::RenderBlock::columnsBlockForSpanningElement):
  102189. (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
  102190. (WebCore::RenderBlock::addChild):
  102191. (WebCore::RenderBlock::addChildIgnoringContinuation):
  102192. (WebCore::RenderBlock::blockElementContinuation):
  102193. (WebCore::RenderBlock::layoutColumns):
  102194. * rendering/RenderBlock.h:
  102195. 2010-06-01 Alexey Proskuryakov <ap@apple.com>
  102196. Build fix.
  102197. Hopefully, touching WebCore.base.exp will actually rebuild the export file.
  102198. * WebCore.Geolocation.exp:
  102199. * WebCore.base.exp:
  102200. 2010-06-01 Dumitru Daniliuc <dumi@chromium.org>
  102201. Reviewed by Adam Barth.
  102202. Execute void callbacks in the context they were created in.
  102203. https://bugs.webkit.org/show_bug.cgi?id=39145
  102204. * bindings/v8/custom/V8CustomVoidCallback.cpp:
  102205. (WebCore::V8CustomVoidCallback::V8CustomVoidCallback):
  102206. (WebCore::V8CustomVoidCallback::handleEvent):
  102207. * bindings/v8/custom/V8CustomVoidCallback.h:
  102208. 2010-06-01 Alexey Proskuryakov <ap@apple.com>
  102209. Reviewed by Sam Weinig.
  102210. https://bugs.webkit.org/show_bug.cgi?id=39434
  102211. REGRESSION (r59811): Geolocation callbacks cannot be created
  102212. * DerivedSources.make: Don't append both WebCore.Geolocation.exp and WebCore.ClientBasedGeolocation.exp,
  102213. they are mutually exclusive.
  102214. * WebCore.Geolocation.exp: Touched to force .exp file rebuild.
  102215. * WebCore.xcodeproj/project.pbxproj: Removed GeolocationService related files.
  102216. * bindings/js/JSGeolocationCustom.cpp:
  102217. (WebCore::createPositionCallback): Functions defined in JavaScript code no longer inherit
  102218. from InternalFunction, they inherit from JSFunction. This check is still imperfect, because
  102219. it's not clear what definition of "function" should really be used, if any - other bindings
  102220. code never checks callback type.
  102221. (WebCore::createPositionErrorCallback): Ditto.
  102222. * page/Geolocation.h: Don't include GeolocationService.h unless it's going to be used.
  102223. 2010-06-01 Jeremy Orlow <jorlow@chromium.org>
  102224. Reviewed by Darin Fisher.
  102225. IndexedDB cleanup
  102226. https://bugs.webkit.org/show_bug.cgi?id=40007
  102227. Remove the exception code parameter since this function can no longer
  102228. cause an exception.
  102229. * storage/IDBObjectStoreRequest.idl:
  102230. * storage/IndexedDatabase.h:
  102231. * storage/IndexedDatabaseImpl.cpp:
  102232. (WebCore::IndexedDatabaseImpl::open):
  102233. * storage/IndexedDatabaseImpl.h:
  102234. * storage/IndexedDatabaseRequest.cpp:
  102235. (WebCore::IndexedDatabaseRequest::open):
  102236. * storage/IndexedDatabaseRequest.h:
  102237. * storage/IndexedDatabaseRequest.idl:
  102238. 2010-06-01 Martin Robinson <mrobinson@igalia.com>
  102239. Reviewed by Xan Lopez.
  102240. [GTK] Double clicks cause three button press events
  102241. https://bugs.webkit.org/show_bug.cgi?id=38853
  102242. Add GOwnPtr wrapper for GdkEvent and expose a setter for
  102243. PlatformMouseEvent::m_clickCount.
  102244. * GNUmakefile.am: Add GOwnPtrGtk.{cpp,h} to the sources list.
  102245. * platform/PlatformMouseEvent.h:
  102246. (WebCore::PlatformMouseEvent::setClickCount): Added.
  102247. * platform/gtk/GOwnPtrGtk.cpp: Added.
  102248. (WTF::GdkEvent):
  102249. * platform/gtk/GOwnPtrGtk.h: Added.
  102250. 2010-06-01 Adam Langley <agl@chromium.org>
  102251. Reviewed by Eric Seidel.
  102252. [chromium] respect the user's embedded bitmap settings on Linux.
  102253. We plumbed everything through Skia and Chrome, but forgot to connect
  102254. the two wires inside WebCore.
  102255. (Note: no layout test because test_shell forces this option off. Also,
  102256. the test font which triggers this behaviour is 32MB.)
  102257. https://bugs.webkit.org/show_bug.cgi?id=39894
  102258. http://code.google.com/p/chromium/issues/detail?id=21149
  102259. * platform/graphics/chromium/FontPlatformDataLinux.cpp:
  102260. (WebCore::FontPlatformData::setupPaint):
  102261. 2010-06-01 Simon Hausmann <simon.hausmann@nokia.com>
  102262. Reviewed by Laszlo Gombos.
  102263. [Qt] Fix installation of the QtWebKit module .pri file when building inside of Qt
  102264. * WebCore.pro:
  102265. 2010-06-01 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
  102266. Reviewed by Simon Hausmann.
  102267. [Qt] Fix a QtWebKit.pc corruption problem.
  102268. https://bugs.webkit.org/show_bug.cgi?id=36826
  102269. The problem occurs while installing QtWebKit from trunk
  102270. or a source package.
  102271. * WebCore.pro:
  102272. 2010-06-01 Simon Hausmann <simon.hausmann@nokia.com>
  102273. Reviewed by Laszlo Gombos.
  102274. [Qt] Fix Symbian package dependencies of apps against QtWebKit when installing into Qt
  102275. Install the versioning qt_webkit_version.pri into $$[QMAKE_MKSPECS]/modules, which is
  102276. where mkspecs/features/qt.prf expects it.
  102277. * WebCore.pro:
  102278. 2010-06-01 Sheriff Bot <webkit.review.bot@gmail.com>
  102279. Unreviewed, rolling out r60470.
  102280. http://trac.webkit.org/changeset/60470
  102281. https://bugs.webkit.org/show_bug.cgi?id=39990
  102282. Need to rollout until bot can be updated (Requested by jorlow
  102283. on #webkit).
  102284. * bindings/scripts/CodeGeneratorV8.pm:
  102285. * bindings/v8/ScriptController.cpp:
  102286. (WebCore::ScriptController::namedItemAdded):
  102287. (WebCore::ScriptController::namedItemRemoved):
  102288. * bindings/v8/V8DOMWindowShell.cpp:
  102289. (WebCore::V8DOMWindowShell::updateDocumentWrapperCache):
  102290. * bindings/v8/V8DOMWindowShell.h:
  102291. * bindings/v8/V8DOMWrapper.cpp:
  102292. (WebCore::V8DOMWrapper::instantiateV8Object):
  102293. * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
  102294. (WebCore::V8HTMLDocument::namedPropertyDeleter):
  102295. (WebCore::V8HTMLDocument::namedPropertyGetter):
  102296. (WebCore::V8HTMLDocument::indexedPropertyGetter):
  102297. (WebCore::V8HTMLDocument::allAccessorSetter):
  102298. (WebCore::toV8):
  102299. 2010-06-01 Anton Muhin <antonm@chromium.org>
  102300. Reviewed by Nate Chapin.
  102301. [Chromium] get rid of named interceptor on HTMLDocument and introduce/remove accessors when named items get deleted/removed
  102302. https://bugs.webkit.org/show_bug.cgi?id=39877
  102303. This patch makes callbacks invoked on named items addition/removal
  102304. install API accessors and thus there is no more need in
  102305. named and indexed interceptors on HTMLDocument which
  102306. speeds up invocation of methods on document.
  102307. * bindings/scripts/CodeGeneratorV8.pm:
  102308. * bindings/v8/ScriptController.cpp:
  102309. (WebCore::ScriptController::namedItemAdded):
  102310. (WebCore::ScriptController::namedItemRemoved):
  102311. * bindings/v8/V8DOMWindowShell.cpp:
  102312. (WebCore::checkDocumentWrapper):
  102313. (WebCore::V8DOMWindowShell::updateDocumentWrapperCache):
  102314. (WebCore::getter):
  102315. (WebCore::V8DOMWindowShell::namedItemAdded):
  102316. (WebCore::V8DOMWindowShell::namedItemRemoved):
  102317. * bindings/v8/V8DOMWindowShell.h:
  102318. * bindings/v8/V8DOMWrapper.cpp:
  102319. (WebCore::V8DOMWrapper::instantiateV8Object):
  102320. * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
  102321. (WebCore::V8HTMLDocument::WrapInShadowObject):
  102322. (WebCore::V8HTMLDocument::GetNamedProperty):
  102323. (WebCore::V8HTMLDocument::allAccessorSetter):
  102324. (WebCore::toV8):
  102325. 2010-06-01 Zoltan Herczeg <zherczeg@webkit.org>
  102326. Reviewed by Dirk Schulze.
  102327. Make the spot light anti-alias effect look similar to SVG expected values.
  102328. https://bugs.webkit.org/show_bug.cgi?id=39477
  102329. The W3 standard only mention, that the edge of the spotlight should be
  102330. anti-aliased but it does not specify how. The provided expected values
  102331. gives some hint about their intentions. The algorithm uses a fixed
  102332. range, which computed as follows: let a = cos(spot light cutoff range)
  102333. the light fades off in the [a-0.016, a] range.
  102334. Test: svg/W3C-SVG-1.1/filters-light-04-f.svg
  102335. Updated pixel test: svg/W3C-SVG-1.1/filters-light-01-f.svg
  102336. * svg/graphics/filters/SVGLightSource.cpp:
  102337. (WebCore::SpotLightSource::initPaintingData):
  102338. 2010-05-31 Adam Barth <abarth@webkit.org>
  102339. Reviewed by Eric Seidel.
  102340. Fix default action for EndTagOpenState
  102341. https://bugs.webkit.org/show_bug.cgi?id=39982
  102342. Add a test for a bogus end tag to webkit01.dat and update expected
  102343. results now that we pass some more tests.
  102344. Adding this test revealed a bug in resuming the bogus comment state.
  102345. I've left these broken expectations, but I'll fix the bug in a future
  102346. patch. (The bug existed prior to this patch, just not the test.)
  102347. * html5lib/resources/webkit01.dat:
  102348. * html5lib/runner-expected-html5.txt:
  102349. * html5lib/webkit-resumer-expected-html5.txt:
  102350. 2010-05-31 Lyon Chen <liachen@rim.com>
  102351. Reviewed by Kent Tamura.
  102352. Enum value FORWARD, BACKWARD, RIGHT, LEFT are causing macro conflicts.
  102353. https://bugs.webkit.org/show_bug.cgi?id=35530
  102354. Change enum EAlteration from { MOVE, EXTEND } to { AlterationMove, AlterationExtend } and enum EDirection { FORWARD, BACKWARD, RIGHT, LEFT} to { DirectionForward, DirectionBackward, DirectionRight, DirectionLeft } to avoid macro conflict, and also better coding style conformance.
  102355. * accessibility/AccessibilityRenderObject.cpp:
  102356. (WebCore::AccessibilityRenderObject::visiblePositionRangeForLine):
  102357. (WebCore::AccessibilityRenderObject::doAXRangeForLine):
  102358. * editing/Editor.cpp:
  102359. (WebCore::Editor::deleteWithDirection):
  102360. (WebCore::Editor::markMisspellingsAfterTypingToPosition):
  102361. (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
  102362. * editing/EditorCommand.cpp:
  102363. (WebCore::executeDeleteBackward):
  102364. (WebCore::executeDeleteBackwardByDecomposingPreviousCharacter):
  102365. (WebCore::executeDeleteForward):
  102366. (WebCore::executeDeleteToBeginningOfLine):
  102367. (WebCore::executeDeleteToBeginningOfParagraph):
  102368. (WebCore::executeDeleteToEndOfLine):
  102369. (WebCore::executeDeleteToEndOfParagraph):
  102370. (WebCore::executeDeleteWordBackward):
  102371. (WebCore::executeDeleteWordForward):
  102372. (WebCore::executeForwardDelete):
  102373. (WebCore::executeMoveBackward):
  102374. (WebCore::executeMoveBackwardAndModifySelection):
  102375. (WebCore::executeMoveDown):
  102376. (WebCore::executeMoveDownAndModifySelection):
  102377. (WebCore::executeMoveForward):
  102378. (WebCore::executeMoveForwardAndModifySelection):
  102379. (WebCore::executeMoveLeft):
  102380. (WebCore::executeMoveLeftAndModifySelection):
  102381. (WebCore::executeMovePageDown):
  102382. (WebCore::executeMovePageDownAndModifySelection):
  102383. (WebCore::executeMovePageUp):
  102384. (WebCore::executeMovePageUpAndModifySelection):
  102385. (WebCore::executeMoveRight):
  102386. (WebCore::executeMoveRightAndModifySelection):
  102387. (WebCore::executeMoveToBeginningOfDocument):
  102388. (WebCore::executeMoveToBeginningOfDocumentAndModifySelection):
  102389. (WebCore::executeMoveToBeginningOfLine):
  102390. (WebCore::executeMoveToBeginningOfLineAndModifySelection):
  102391. (WebCore::executeMoveToBeginningOfParagraph):
  102392. (WebCore::executeMoveToBeginningOfParagraphAndModifySelection):
  102393. (WebCore::executeMoveToBeginningOfSentence):
  102394. (WebCore::executeMoveToBeginningOfSentenceAndModifySelection):
  102395. (WebCore::executeMoveToEndOfDocument):
  102396. (WebCore::executeMoveToEndOfDocumentAndModifySelection):
  102397. (WebCore::executeMoveToEndOfSentence):
  102398. (WebCore::executeMoveToEndOfSentenceAndModifySelection):
  102399. (WebCore::executeMoveToEndOfLine):
  102400. (WebCore::executeMoveToEndOfLineAndModifySelection):
  102401. (WebCore::executeMoveToEndOfParagraph):
  102402. (WebCore::executeMoveToEndOfParagraphAndModifySelection):
  102403. (WebCore::executeMoveParagraphBackwardAndModifySelection):
  102404. (WebCore::executeMoveParagraphForwardAndModifySelection):
  102405. (WebCore::executeMoveUp):
  102406. (WebCore::executeMoveUpAndModifySelection):
  102407. (WebCore::executeMoveWordBackward):
  102408. (WebCore::executeMoveWordBackwardAndModifySelection):
  102409. (WebCore::executeMoveWordForward):
  102410. (WebCore::executeMoveWordForwardAndModifySelection):
  102411. (WebCore::executeMoveWordLeft):
  102412. (WebCore::executeMoveWordLeftAndModifySelection):
  102413. (WebCore::executeMoveWordRight):
  102414. (WebCore::executeMoveWordRightAndModifySelection):
  102415. (WebCore::executeMoveToLeftEndOfLine):
  102416. (WebCore::executeMoveToLeftEndOfLineAndModifySelection):
  102417. (WebCore::executeMoveToRightEndOfLine):
  102418. (WebCore::executeMoveToRightEndOfLineAndModifySelection):
  102419. * editing/SelectionController.cpp:
  102420. (WebCore::SelectionController::willBeModified):
  102421. (WebCore::SelectionController::modify):
  102422. * editing/SelectionController.h:
  102423. (WebCore::SelectionController::):
  102424. * editing/TypingCommand.cpp:
  102425. (WebCore::TypingCommand::deleteKeyPressed):
  102426. (WebCore::TypingCommand::forwardDeleteKeyPressed):
  102427. * page/DOMSelection.cpp:
  102428. (WebCore::DOMSelection::modify):
  102429. (WebCore::DOMSelection::deleteFromDocument):
  102430. * page/EventHandler.cpp:
  102431. (WebCore::EventHandler::handleKeyboardSelectionMovement):
  102432. 2010-05-31 Eric Seidel <eric@webkit.org>
  102433. Reviewed by Adam Barth.
  102434. REGRESSION(60409): window.onload never fires when using HTML5 parser
  102435. https://bugs.webkit.org/show_bug.cgi?id=39981
  102436. * html/HTML5Tokenizer.cpp:
  102437. (WebCore::HTML5Tokenizer::finish):
  102438. - The logic was just wrong here. We should only be setting
  102439. m_wasWaitingOnScriptsDuringFinish if isWaitingForScripts()
  102440. is true, and we should be calling end() when it is not.
  102441. (WebCore::HTML5Tokenizer::resumeParsingAfterScriptExecution):
  102442. - Add another ASSERT to catch cases like this.
  102443. * html/HTML5TreeBuilder.cpp:
  102444. (WebCore::HTML5TreeBuilder::finished):
  102445. - Add a comment about why we don't need to call m_document->finishedParsing()
  102446. 2010-05-31 Tony Chang <tony@chromium.org>
  102447. Reviewed by Dan Bernstein.
  102448. REGRESSION (r58665): Infinite recursion in Position::getInlineBoxAndOffset()
  102449. https://bugs.webkit.org/show_bug.cgi?id=39946
  102450. r58665 added an infinite recursion check, but didn't take into consideration recursion between two
  102451. Positions. This adds a check for when
  102452. downstreamIgnoringEditingBoundaries(p1) == p2 and upstreamIgnoringEditingBoundaries(p2) == p1
  102453. Test: editing/selection/mixed-editability-12.html
  102454. * dom/Position.cpp:
  102455. (WebCore::Position::getInlineBoxAndOffset):
  102456. 2010-05-31 Leo Yang <leo.yang@torchmobile.com.cn>
  102457. Reviewed by George Staikos.
  102458. Fix canvas.toDataURL(type, quality, ...) to let it support quality parameter.
  102459. And implement it in Qt port.
  102460. https://bugs.webkit.org/show_bug.cgi?id=37304
  102461. Tests: platform/qt/fast/canvas/toDataURL-jpeg-alpha.html
  102462. platform/qt/fast/canvas/toDataURL-jpeg-primarycolors.html
  102463. platform/qt/fast/canvas/toDataURL-jpeg-quality-basic.html
  102464. platform/qt/fast/canvas/toDataURL-jpeg-quality-notnumber.html
  102465. platform/qt/fast/canvas/toDataURL-jpeg-quality-outsiderange.html
  102466. * bindings/js/JSHTMLCanvasElementCustom.cpp:
  102467. (WebCore::JSHTMLCanvasElement::toDataURL):
  102468. * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
  102469. (WebCore::V8HTMLCanvasElement::toDataURLCallback):
  102470. * dom/CanvasSurface.cpp:
  102471. (WebCore::CanvasSurface::toDataURL):
  102472. * dom/CanvasSurface.h:
  102473. (WebCore::CanvasSurface::toDataURL):
  102474. * html/HTMLCanvasElement.idl:
  102475. * platform/graphics/ImageBuffer.h:
  102476. * platform/graphics/cairo/ImageBufferCairo.cpp:
  102477. (WebCore::ImageBuffer::toDataURL):
  102478. * platform/graphics/cg/ImageBufferCG.cpp:
  102479. (WebCore::ImageBuffer::toDataURL):
  102480. * platform/graphics/haiku/ImageBufferHaiku.cpp:
  102481. (WebCore::ImageBuffer::toDataURL):
  102482. * platform/graphics/qt/ImageBufferQt.cpp:
  102483. (WebCore::ImageBuffer::toDataURL):
  102484. * platform/graphics/skia/ImageBufferSkia.cpp:
  102485. (WebCore::ImageBuffer::toDataURL):
  102486. * platform/graphics/wince/ImageBufferWince.cpp:
  102487. (WebCore::ImageBuffer::toDataURL):
  102488. * platform/graphics/wx/ImageBufferWx.cpp:
  102489. (WebCore::ImageBuffer::toDataURL):
  102490. 2010-05-31 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  102491. Reviewed by Kenneth Rohde Christiansen.
  102492. [EFL] Add Context Menu implementation
  102493. https://bugs.webkit.org/show_bug.cgi?id=39821
  102494. * platform/ContextMenu.h: add port-specific attributes.
  102495. * platform/ContextMenuItem.h: create PlatformMenuItemDescription as in
  102496. other ports
  102497. (WebCore::PlatformMenuItemDescription::PlatformMenuItemDescription):
  102498. * platform/efl/ContextMenuEfl.cpp:implement needed methods for this
  102499. port.
  102500. (WebCore::ContextMenu::ContextMenu):
  102501. (WebCore::ContextMenu::~ContextMenu):
  102502. (WebCore::ContextMenu::appendItem):
  102503. (WebCore::ContextMenu::setPlatformDescription):
  102504. (WebCore::ContextMenu::releasePlatformDescription):
  102505. * platform/efl/ContextMenuItemEfl.cpp: implement needed methods for
  102506. this port.
  102507. (WebCore::ContextMenuItem::ContextMenuItem):
  102508. (WebCore::ContextMenuItem::~ContextMenuItem):
  102509. (WebCore::ContextMenuItem::releasePlatformDescription):
  102510. (WebCore::ContextMenuItem::type):
  102511. (WebCore::ContextMenuItem::setType):
  102512. (WebCore::ContextMenuItem::action):
  102513. (WebCore::ContextMenuItem::setAction):
  102514. (WebCore::ContextMenuItem::title):
  102515. (WebCore::ContextMenuItem::setTitle):
  102516. (WebCore::ContextMenuItem::platformSubMenu):
  102517. (WebCore::ContextMenuItem::setSubMenu):
  102518. (WebCore::ContextMenuItem::checked):
  102519. (WebCore::ContextMenuItem::setChecked):
  102520. (WebCore::ContextMenuItem::enabled):
  102521. (WebCore::ContextMenuItem::setEnabled):
  102522. 2010-05-31 Ilya Tikhonovsky <loislo@chromium.org>
  102523. Reviewed by Pavel Feldman.
  102524. WebInspector: Classes for native serialization to JSON were implemented.
  102525. https://bugs.webkit.org/show_bug.cgi?id=34204
  102526. * GNUmakefile.am:
  102527. * WebCore.Inspector.exp:
  102528. * WebCore.gypi:
  102529. * WebCore.pro:
  102530. * WebCore.vcproj/WebCore.vcproj:
  102531. * WebCore.xcodeproj/project.pbxproj:
  102532. * inspector/InspectorValues.cpp: Added.
  102533. (WebCore::escapeChar):
  102534. (WebCore::doubleQuoteString):
  102535. (WebCore::InspectorBaseValue::toJSONString):
  102536. (WebCore::InspectorBaseValue::writeJSON):
  102537. (WebCore::InspectorValue::writeJSON):
  102538. (WebCore::InspectorString::writeJSON):
  102539. (WebCore::InspectorObject::writeJSON):
  102540. (WebCore::InspectorArray::writeJSON):
  102541. * inspector/InspectorValues.h: Added.
  102542. (WebCore::InspectorBaseValue::InspectorBaseValue):
  102543. (WebCore::InspectorBaseValue::~InspectorBaseValue):
  102544. (WebCore::InspectorBaseValue::null):
  102545. (WebCore::InspectorBaseValue::):
  102546. (WebCore::InspectorBaseValue::type):
  102547. (WebCore::InspectorValue::create):
  102548. (WebCore::InspectorValue::InspectorValue):
  102549. (WebCore::InspectorValue::):
  102550. (WebCore::InspectorString::create):
  102551. (WebCore::InspectorString::InspectorString):
  102552. (WebCore::InspectorObject::create):
  102553. (WebCore::InspectorObject::~InspectorObject):
  102554. (WebCore::InspectorObject::InspectorObject):
  102555. (WebCore::InspectorArray::create):
  102556. (WebCore::InspectorArray::~InspectorArray):
  102557. (WebCore::InspectorArray::length):
  102558. (WebCore::InspectorArray::InspectorArray):
  102559. (WebCore::InspectorObject::setBool):
  102560. (WebCore::InspectorObject::setNumber):
  102561. (WebCore::InspectorObject::setString):
  102562. (WebCore::InspectorObject::set):
  102563. (WebCore::InspectorArray::pushBool):
  102564. (WebCore::InspectorArray::pushNumber):
  102565. (WebCore::InspectorArray::pushString):
  102566. (WebCore::InspectorArray::push):
  102567. 2010-05-31 Olivier Goffart <olivier.goffart@nokia.com>
  102568. Reviewed by Oliver Hunt.
  102569. [PATCH] compilation error with clang in JSDOMBinding.h
  102570. https://bugs.webkit.org/show_bug.cgi?id=39945
  102571. JSNode is only forward declared at this point. And since neither
  102572. "wrapper" nor JSValue are type-dependent. Compilers should report errors
  102573. at the first compilation pass.
  102574. The fix is to move the conversion the line above, as the call to the
  102575. function getCachedDOMNodeWrapper is type-dependent, the conversion will
  102576. happen at template-instantiation time.
  102577. See also http://llvm.org/bugs/show_bug.cgi?id=7244
  102578. * bindings/js/JSDOMBinding.h:
  102579. (WebCore::getDOMNodeWrapper):
  102580. 2010-05-31 Pavel Podivilov <podivilov@chromium.org>
  102581. Reviewed by Pavel Feldman.
  102582. Web Inspector: Moved breakpoints add/remove logic to the BreakpointManager.
  102583. https://bugs.webkit.org/show_bug.cgi?id=14190
  102584. * WebCore.gypi:
  102585. * WebCore.vcproj/WebCore.vcproj:
  102586. * inspector/front-end/Breakpoint.js:
  102587. * inspector/front-end/BreakpointManager.js: Added.
  102588. (WebInspector.BreakpointManager):
  102589. (WebInspector.BreakpointManager.prototype.addBreakpoint):
  102590. (WebInspector.BreakpointManager.prototype.removeBreakpoint):
  102591. (WebInspector.BreakpointManager.prototype.breakpointsForSourceID):
  102592. (WebInspector.BreakpointManager.prototype.breakpointsForURL):
  102593. (WebInspector.BreakpointManager.prototype.reset):
  102594. (WebInspector.BreakpointManager.prototype._saveBreakpointOnBackend):
  102595. (WebInspector.BreakpointManager.prototype._removeBreakpointFromBackend):
  102596. (WebInspector.Breakpoint):
  102597. (WebInspector.Breakpoint.prototype.get enabled):
  102598. (WebInspector.Breakpoint.prototype.set enabled):
  102599. (WebInspector.Breakpoint.prototype.get sourceText):
  102600. (WebInspector.Breakpoint.prototype.set sourceText):
  102601. (WebInspector.Breakpoint.prototype.get label):
  102602. (WebInspector.Breakpoint.prototype.get id):
  102603. (WebInspector.Breakpoint.prototype.get condition):
  102604. (WebInspector.Breakpoint.prototype.set condition):
  102605. * inspector/front-end/BreakpointsSidebarPane.js:
  102606. (WebInspector.BreakpointsSidebarPane):
  102607. (WebInspector.BreakpointsSidebarPane.prototype.reset):
  102608. (WebInspector.BreakpointsSidebarPane.prototype._breakpointAdded):
  102609. (WebInspector.BreakpointsSidebarPane.prototype._breakpointRemoved):
  102610. (WebInspector.BreakpointsSidebarPane.prototype._breakpointEnableChanged):
  102611. * inspector/front-end/Object.js:
  102612. (WebInspector.Object.prototype.dispatchEventToListeners):
  102613. * inspector/front-end/ScriptView.js:
  102614. (WebInspector.ScriptView.prototype._addBreakpoint):
  102615. * inspector/front-end/ScriptsPanel.js:
  102616. (WebInspector.ScriptsPanel):
  102617. (WebInspector.ScriptsPanel.prototype._breakpointAdded):
  102618. (WebInspector.ScriptsPanel.prototype._breakpointRemoved):
  102619. (WebInspector.ScriptsPanel.prototype.editScriptSource.mycallback):
  102620. (WebInspector.ScriptsPanel.prototype.editScriptSource):
  102621. (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
  102622. * inspector/front-end/SourceFrame.js:
  102623. (WebInspector.SourceFrame.prototype._contextMenu):
  102624. * inspector/front-end/SourceView.js:
  102625. (WebInspector.SourceView.prototype._addBreakpoint):
  102626. (WebInspector.SourceView.prototype._removeBreakpoint):
  102627. * inspector/front-end/WebKit.qrc:
  102628. * inspector/front-end/inspector.html:
  102629. * inspector/front-end/inspector.js:
  102630. (WebInspector.loaded):
  102631. (WebInspector.restoredBreakpoint):
  102632. (WebInspector.reset):
  102633. 2010-05-31 Alexander Pavlov <apavlov@chromium.org>
  102634. Unreviewed, build fix.
  102635. Add references to inspector/front-end/TabbedPane.js wherever applicable.
  102636. * WebCore.gypi:
  102637. * WebCore.vcproj/WebCore.vcproj:
  102638. * inspector/front-end/WebKit.qrc:
  102639. 2010-05-31 Alexander Pavlov <apavlov@chromium.org>
  102640. Unreviewed, add a file not added in r60445.
  102641. * inspector/front-end/TabbedPane.js: Added
  102642. 2010-05-31 Martin Robinson <mrobinson@igalia.com>
  102643. Reviewed by Gustavo Noronha Silva.
  102644. [GTK] Text copied from a WebView cannot be pasted into gnome-terminal
  102645. https://bugs.webkit.org/show_bug.cgi?id=39827
  102646. Switch all methods in Pasteboard to use the PasteboardHelper + DataObjectGtk
  102647. approach used in other parts of WebKit GTK+.
  102648. * platform/gtk/PasteboardGtk.cpp:
  102649. (WebCore::Pasteboard::writeSelection): Switch to using PasteboardHelper.
  102650. (WebCore::Pasteboard::writePlainText): Ditto.
  102651. (WebCore::Pasteboard::writeURL): Ditto.
  102652. (WebCore::Pasteboard::writeImage): Ditto.
  102653. (WebCore::Pasteboard::clear): Small cleanup.
  102654. (WebCore::Pasteboard::documentFragment): Switch to using PasteboardHelper.
  102655. (WebCore::Pasteboard::plainText): Ditto.
  102656. 2010-05-31 Darin Adler <darin@apple.com>
  102657. Updated bindings test results for change in JavaScript host calling convention change
  102658. from 2 days ago.
  102659. * bindings/scripts/test/JS/JSTestObj.cpp: Regenerated and inspected to see that the new
  102660. result is correct.
  102661. * bindings/scripts/test/JS/JSTestObj.h: Ditto.
  102662. 2010-05-31 Alexander Pavlov <apavlov@chromium.org>
  102663. Reviewed by Pavel Feldman.
  102664. Web Inspector: Implement additional tabs support in ResourceView
  102665. https://bugs.webkit.org/show_bug.cgi?id=39822
  102666. * inspector/front-end/ResourceView.js:
  102667. (WebInspector.ResourceView):
  102668. (WebInspector.ResourceView.prototype._selectHeadersTab):
  102669. (WebInspector.ResourceView.prototype._innerSelectContentTab):
  102670. * inspector/front-end/SourceView.js:
  102671. (WebInspector.SourceView.prototype.show):
  102672. (WebInspector.SourceView.prototype.hide):
  102673. (WebInspector.SourceView.prototype.resize):
  102674. (WebInspector.SourceView.prototype.updateLocalContent):
  102675. (WebInspector.SourceView.prototype.selectLocalContentTab):
  102676. * inspector/front-end/TabbedPane.js: Added.
  102677. (WebInspector.TabbedPane):
  102678. (WebInspector.TabbedPane.prototype.appendTab):
  102679. (WebInspector.TabbedPane.prototype.tabObjectForId):
  102680. (WebInspector.TabbedPane.prototype.hideTab):
  102681. (WebInspector.TabbedPane.prototype.selectTabById):
  102682. * inspector/front-end/TextViewer.js:
  102683. (WebInspector.TextViewer.prototype._getSelection):
  102684. * inspector/front-end/inspector.html:
  102685. 2010-05-31 Alexander Pavlov <apavlov@chromium.org>
  102686. Reviewed by Pavel Feldman.
  102687. Web Inspector: Implement retrieval of CSS stylesheets for source editing
  102688. https://bugs.webkit.org/show_bug.cgi?id=39833
  102689. Test: inspector/styles-source-offsets.html
  102690. * css/CSSParser.cpp:
  102691. (WebCore::CSSParser::CSSParser):
  102692. (WebCore::CSSParser::parseSheet):
  102693. (WebCore::CSSParser::createStyleRule):
  102694. * css/CSSParser.h:
  102695. * inspector/InspectorBackend.cpp:
  102696. (WebCore::InspectorBackend::getStyleSheet):
  102697. (WebCore::InspectorBackend::getRuleRangesForStyleSheetId):
  102698. * inspector/InspectorBackend.h:
  102699. * inspector/InspectorBackend.idl:
  102700. * inspector/InspectorCSSStore.cpp:
  102701. (WebCore::InspectorCSSStore::getRuleRangesForStyleSheet):
  102702. (WebCore::InspectorCSSStore::asCSSStyleRule):
  102703. (WebCore::InspectorCSSStore::styleSheetForId):
  102704. * inspector/InspectorCSSStore.h:
  102705. * inspector/InspectorDOMAgent.cpp:
  102706. (WebCore::InspectorDOMAgent::getStyleSheet):
  102707. (WebCore::InspectorDOMAgent::getRuleRangesForStyleSheetId):
  102708. (WebCore::InspectorDOMAgent::buildObjectForStyle):
  102709. (WebCore::InspectorDOMAgent::populateObjectWithStyleProperties):
  102710. (WebCore::InspectorDOMAgent::buildObjectForStyleSheet):
  102711. (WebCore::InspectorDOMAgent::buildObjectForRule):
  102712. (WebCore::InspectorDOMAgent::getParentStyleSheet):
  102713. * inspector/InspectorDOMAgent.h:
  102714. * inspector/InspectorFrontend.cpp:
  102715. (WebCore::InspectorFrontend::didGetStyleSheet):
  102716. * inspector/InspectorFrontend.h:
  102717. * inspector/front-end/DOMAgent.js:
  102718. (WebInspector.CSSStyleDeclaration):
  102719. 2010-05-31 Philippe Normand <pnormand@igalia.com>
  102720. Reviewed by Xan Lopez.
  102721. [GStreamer] float variables misused
  102722. https://bugs.webkit.org/show_bug.cgi?id=38842
  102723. Use 0.0f for float variables instead of 0.0. Also added some
  102724. missing casts around GST_SECOND.
  102725. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  102726. (WebCore::playbackPosition):
  102727. (WebCore::MediaPlayerPrivateGStreamer::duration):
  102728. (WebCore::MediaPlayerPrivateGStreamer::currentTime):
  102729. (WebCore::MediaPlayerPrivateGStreamer::seek):
  102730. (WebCore::MediaPlayerPrivateGStreamer::naturalSize):
  102731. (WebCore::MediaPlayerPrivateGStreamer::setRate):
  102732. (WebCore::MediaPlayerPrivateGStreamer::maxTimeSeekable):
  102733. (WebCore::MediaPlayerPrivateGStreamer::maxTimeLoaded):
  102734. (WebCore::MediaPlayerPrivateGStreamer::totalBytes):
  102735. 2010-05-31 Steve Block <steveblock@google.com>
  102736. Unreviewed, rolling out r60069.
  102737. http://trac.webkit.org/changeset/60069
  102738. https://bugs.webkit.org/show_bug.cgi?id=39288
  102739. Roll out r60069 while the need for Geolocation::stop() is
  102740. investigated.
  102741. * loader/FrameLoader.cpp:
  102742. (WebCore::FrameLoader::stopLoading):
  102743. * page/Geolocation.cpp:
  102744. (WebCore::Geolocation::disconnectFrame):
  102745. * page/Geolocation.h:
  102746. 2010-05-31 Olivier Tilloy <olivier@tilloy.net>
  102747. Reviewed by Gustavo Noronha Silva.
  102748. [Gtk] Implement RenderThemeGtk::systemColor to apply the correct colors
  102749. from the current GTK theme.
  102750. https://bugs.webkit.org/show_bug.cgi?id=37779
  102751. * platform/gtk/RenderThemeGtk.cpp:
  102752. (WebCore::RenderThemeGtk::RenderThemeGtk):
  102753. (WebCore::RenderThemeGtk::systemColor):
  102754. (WebCore::RenderThemeGtk::gtkButton):
  102755. * platform/gtk/RenderThemeGtk.h:
  102756. 2010-05-31 Dirk Schulze <krit@webkit.org>
  102757. Reviewed by Nikolas Zimmermann.
  102758. SVG Filter: Crash if parent and child elements use the same filter
  102759. https://bugs.webkit.org/show_bug.cgi?id=39536
  102760. If a parent and a child used the same filter, the temporary saved
  102761. context reference got overwritten by the child. The reference is
  102762. stored in FilterData now. FilterData depends to the target object
  102763. and avoids overwriting any reference.
  102764. Test: svg/filters/parent-children-with-same-filter.svg
  102765. * rendering/RenderSVGResourceFilter.cpp:
  102766. (WebCore::RenderSVGResourceFilter::RenderSVGResourceFilter):
  102767. (WebCore::RenderSVGResourceFilter::applyResource):
  102768. (WebCore::RenderSVGResourceFilter::postApplyResource):
  102769. * rendering/RenderSVGResourceFilter.h:
  102770. 2010-05-31 Xan Lopez <xlopez@igalia.com>
  102771. Reviewed by Gustavo Noronha.
  102772. Fix all compiler warnings.
  102773. * plugins/gtk/gtk2xtbin.c:
  102774. (xt_event_dispatch):
  102775. (gtk_xtbin_get_type):
  102776. (gtk_xtbin_set_position):
  102777. (xt_add_focus_listener):
  102778. (xt_remove_focus_listener):
  102779. 2010-05-31 Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
  102780. Reviewed by Simon Hausmann.
  102781. [Qt] Escape backslashes in the .pro files
  102782. qmake in Qt 4.7 warns about unescaped backspaces and deprecates them.
  102783. * WebCore.pro:
  102784. 2010-05-31 Anton Muhin <antonm@chromium.org>
  102785. Reviewed by Darin Adler.
  102786. Make NodeList getters take AtomicString instead of plain String
  102787. https://bugs.webkit.org/show_bug.cgi?id=39892
  102788. Those methods turn String into AtomicString later. And this conversion
  102789. is faster if underlying string is already atomic.
  102790. That buys small (~2-3%) speed up for Chromium on Dromaeo DOM Core.
  102791. I don't know if Safari benefits from it.
  102792. * dom/Node.cpp:
  102793. (WebCore::Node::getElementsByTagName):
  102794. (WebCore::Node::getElementsByTagNameNS):
  102795. * dom/Node.h:
  102796. 2010-05-30 Adam Barth <abarth@webkit.org>
  102797. Reviewed by Darin Adler.
  102798. Fix LayoutTests/fast/parser/xml-declaration-missing-ending-mark.html in HTML5 parser
  102799. https://bugs.webkit.org/show_bug.cgi?id=39939
  102800. Turns out we need to implement the bogus comment state. :)
  102801. * html/HTML5Lexer.cpp:
  102802. (WebCore::HTML5Lexer::nextToken):
  102803. 2010-05-30 Eric Seidel <eric@webkit.org>
  102804. Reviewed by Adam Barth.
  102805. fast/tokenizer/write-partial-entity.html hits ASSERT SegmentedString in the HTML5 Parser
  102806. https://bugs.webkit.org/show_bug.cgi?id=39935
  102807. Test: fast/tokenizer/write-partial-entity.html
  102808. * html/HTML5Tokenizer.cpp:
  102809. (WebCore::HTML5Tokenizer::executeScript):
  102810. - Use m_source.append(oldInsertionPoint) instead of
  102811. oldInsertionPoint.prepend(m_source) because m_source may have had
  102812. characters pushed onto it and prepend() does not handle that case.
  102813. 2010-05-30 Lyon Chen <liachen@rim.com>
  102814. Reviewed by Kent Tamura.
  102815. This is a coding style cleanup before fixing to bug 35530.
  102816. Enum value FORWARD, BACKWARD, RIGHT, LEFT are causing macro conflicts.
  102817. https://bugs.webkit.org/show_bug.cgi?id=35530
  102818. * editing/Editor.cpp:
  102819. (WebCore::Editor::deleteWithDirection):
  102820. (WebCore::Editor::fontForSelection):
  102821. (WebCore::Editor::applyStyle):
  102822. (WebCore::Editor::applyParagraphStyle):
  102823. (WebCore::Editor::applyStyleToSelection):
  102824. (WebCore::Editor::applyParagraphStyleToSelection):
  102825. (WebCore::triStateOfStyleInComputedStyle):
  102826. (WebCore::Editor::selectionStartHasStyle):
  102827. (WebCore::Editor::selectionHasStyle):
  102828. (WebCore::Editor::paste):
  102829. (WebCore::Editor::ignoreSpelling):
  102830. (WebCore::Editor::learnSpelling):
  102831. (WebCore::findFirstMisspellingInRange):
  102832. (WebCore::findFirstGrammarDetailInRange):
  102833. (WebCore::findFirstBadGrammarInRange):
  102834. (WebCore::findFirstMisspellingOrBadGrammarInRange):
  102835. (WebCore::Editor::advanceToNextMisspelling):
  102836. (WebCore::Editor::isSelectionMisspelled):
  102837. (WebCore::isRangeUngrammatical):
  102838. (WebCore::Editor::guessesForMisspelledSelection):
  102839. (WebCore::guessesForMisspelledOrUngrammaticalRange):
  102840. (WebCore::Editor::markMisspellingsAfterTypingToPosition):
  102841. (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
  102842. * editing/EditorCommand.cpp:
  102843. (WebCore::applyCommandToFrame):
  102844. (WebCore::executeToggleStyleInList):
  102845. (WebCore::executeApplyParagraphStyle):
  102846. (WebCore::executeDelete):
  102847. (WebCore::executeForwardDelete):
  102848. (WebCore::executeInsertLineBreak):
  102849. (WebCore::supportedCopyCut):
  102850. (WebCore::supportedPaste):
  102851. (WebCore::enabledDelete):
  102852. * editing/SelectionController.cpp:
  102853. (WebCore::SelectionController::modifyExtendingRight):
  102854. (WebCore::SelectionController::modifyExtendingForward):
  102855. (WebCore::SelectionController::modifyMovingRight):
  102856. (WebCore::SelectionController::modifyMovingForward):
  102857. (WebCore::SelectionController::modifyExtendingLeft):
  102858. (WebCore::SelectionController::modifyExtendingBackward):
  102859. (WebCore::SelectionController::modifyMovingLeft):
  102860. (WebCore::SelectionController::modifyMovingBackward):
  102861. (WebCore::SelectionController::modify):
  102862. (WebCore::SelectionController::xPosForVerticalArrowNavigation):
  102863. (WebCore::SelectionController::debugRenderer):
  102864. * editing/TypingCommand.cpp:
  102865. (WebCore::TypingCommand::deleteKeyPressed):
  102866. (WebCore::TypingCommand::forwardDeleteKeyPressed):
  102867. (WebCore::TypingCommand::insertLineBreak):
  102868. (WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent):
  102869. (WebCore::TypingCommand::insertParagraphSeparator):
  102870. (WebCore::TypingCommand::doApply):
  102871. (WebCore::TypingCommand::insertText):
  102872. (WebCore::TypingCommand::updatePreservesTypingStyle):
  102873. * page/EventHandler.cpp:
  102874. (WebCore::EventHandler::handleMousePressEvent):
  102875. (WebCore::EventHandler::handleMouseReleaseEvent):
  102876. (WebCore::EventHandler::selectCursor):
  102877. (WebCore::EventHandler::canHandleDragAndDropForTarget):
  102878. (WebCore::EventHandler::dispatchMouseEvent):
  102879. (WebCore::EventHandler::sendContextMenuEvent):
  102880. (WebCore::EventHandler::handleKeyboardSelectionMovement):
  102881. (WebCore::EventHandler::handleDrag):
  102882. 2010-05-30 Daniel Bates <dbates@rim.com>
  102883. Unreviewed, attempt to fix the build after http://trac.webkit.org/changeset/60418.
  102884. * html/HTMLFormControlElement.h:
  102885. (WebCore::HTMLFormControlElement::isEnabledFormControl):
  102886. (WebCore::HTMLFormControlElement::isReadOnlyFormControl):
  102887. (WebCore::HTMLFormControlElement::isFormControlElement):
  102888. * html/HTMLInputElement.h:
  102889. (WebCore::HTMLInputElement::isPasswordField):
  102890. 2010-05-30 Darin Adler <darin@apple.com>
  102891. Reviewed by Sam Weinig.
  102892. Make more HTML DOM members private, especially constructors, third and final batch
  102893. https://bugs.webkit.org/show_bug.cgi?id=39916
  102894. * dom/Document.cpp:
  102895. (WebCore::Document::implicitClose):
  102896. * editing/DeleteButtonController.cpp:
  102897. (WebCore::DeleteButtonController::createDeletionUI):
  102898. * editing/EditorCommand.cpp:
  102899. (WebCore::executeInsertHorizontalRule):
  102900. (WebCore::executeInsertImage):
  102901. * editing/htmlediting.cpp:
  102902. (WebCore::createDefaultParagraphElement):
  102903. (WebCore::createListItemElement):
  102904. * html/HTMLParser.cpp:
  102905. (WebCore::HTMLParser::handleError):
  102906. (WebCore::HTMLParser::headCreateErrorCheck):
  102907. (WebCore::HTMLParser::formCreateErrorCheck):
  102908. (WebCore::HTMLParser::createHead):
  102909. (WebCore::HTMLParser::handleIsindex):
  102910. (WebCore::HTMLParser::finished):
  102911. * html/HTMLViewSourceDocument.cpp:
  102912. (WebCore::HTMLViewSourceDocument::createContainingTable):
  102913. * rendering/RenderTextControl.cpp:
  102914. (WebCore::RenderTextControl::createSubtreeIfNeeded):
  102915. * rendering/RenderTextControlSingleLine.cpp:
  102916. (WebCore::RenderTextControlSingleLine::createSubtreeIfNeeded):
  102917. Use create instead of new to create HTML elements.
  102918. * html/HTMLFormCollection.cpp:
  102919. (WebCore::HTMLFormCollection::formCollectionInfo):
  102920. (WebCore::HTMLFormCollection::item):
  102921. (WebCore::HTMLFormCollection::getNamedFormItem):
  102922. (WebCore::HTMLFormCollection::updateNameCache):
  102923. * html/HTMLFormControlElement.h:
  102924. Updated for name and privacy changes in HTMLFormElement.
  102925. * html/HTMLFormElement.cpp:
  102926. (WebCore::HTMLFormElement::HTMLFormElement):
  102927. (WebCore::HTMLFormElement::create):
  102928. (WebCore::HTMLFormElement::~HTMLFormElement):
  102929. (WebCore::HTMLFormElement::length):
  102930. (WebCore::HTMLFormElement::submitImplicitly):
  102931. (WebCore::HTMLFormElement::createFormData):
  102932. (WebCore::HTMLFormElement::submit):
  102933. (WebCore::HTMLFormElement::reset):
  102934. (WebCore::HTMLFormElement::formElementIndex):
  102935. (WebCore::HTMLFormElement::registerFormElement):
  102936. (WebCore::HTMLFormElement::removeFormElement):
  102937. (WebCore::HTMLFormElement::registerImgElement):
  102938. (WebCore::HTMLFormElement::removeImgElement):
  102939. (WebCore::HTMLFormElement::defaultButton):
  102940. (WebCore::HTMLFormElement::collectUnhandledInvalidControls):
  102941. (WebCore::HTMLFormElement::addElementAlias):
  102942. (WebCore::HTMLFormElement::documentDidBecomeActive):
  102943. * html/HTMLFormElement.h:
  102944. Added create functions. Made constructors and other members private.
  102945. Used an OwnPtr for m_elementAliases. Renamed collectionInfo to
  102946. m_collectionCache and used an OwnPtr for it. Renamed formElements to
  102947. m_associatedElements (since its contents are what HTML5 calls
  102948. "form-associated element", not form elements). Renamed imgElements to
  102949. m_imageElements.
  102950. * html/HTMLFrameSetElement.cpp:
  102951. (WebCore::HTMLFrameSetElement::HTMLFrameSetElement):
  102952. (WebCore::HTMLFrameSetElement::create):
  102953. (WebCore::HTMLFrameSetElement::parseMappedAttribute):
  102954. * html/HTMLFrameSetElement.h:
  102955. Added create functions. Made constructors and other members private.
  102956. Renamed m_rows and m_cols to m_rowLengths and m_colLengths and used
  102957. OwnArrayPtr for both.
  102958. * html/HTMLLabelElement.cpp:
  102959. (WebCore::nodeAsLabelableFormControl): Made this cast to Element instead
  102960. of HTMLElement, since isFormControlElement is available on Element.
  102961. (WebCore::HTMLLabelElement::HTMLLabelElement):
  102962. (WebCore::HTMLLabelElement::create):
  102963. * html/HTMLLabelElement.h:
  102964. Added create functions. Made constructors and other members private.
  102965. * html/HTMLLegendElement.cpp:
  102966. (WebCore::HTMLLegendElement::HTMLLegendElement):
  102967. (WebCore::HTMLLegendElement::create):
  102968. (WebCore::HTMLLegendElement::associatedControl):
  102969. (WebCore::HTMLLegendElement::focus):
  102970. (WebCore::HTMLLegendElement::accessKeyAction):
  102971. * html/HTMLLegendElement.h:
  102972. Added create functions. Made constructors and other members private.
  102973. Renamed formElement to associatedControl since hte control associated
  102974. with this legend is not a "form element".
  102975. * editing/DeleteButton.cpp:
  102976. (WebCore::DeleteButton::DeleteButton):
  102977. (WebCore::DeleteButton::create):
  102978. * editing/DeleteButton.h:
  102979. * html/HTMLDivElement.cpp:
  102980. (WebCore::HTMLDivElement::HTMLDivElement):
  102981. (WebCore::HTMLDivElement::create):
  102982. * html/HTMLDivElement.h:
  102983. * html/HTMLFontElement.cpp:
  102984. (WebCore::HTMLFontElement::create):
  102985. * html/HTMLFontElement.h:
  102986. * html/HTMLHRElement.cpp:
  102987. (WebCore::HTMLHRElement::HTMLHRElement):
  102988. (WebCore::HTMLHRElement::create):
  102989. * html/HTMLHRElement.h:
  102990. * html/HTMLHeadElement.cpp:
  102991. (WebCore::HTMLHeadElement::HTMLHeadElement):
  102992. (WebCore::HTMLHeadElement::create):
  102993. * html/HTMLHeadElement.h:
  102994. * html/HTMLHeadingElement.cpp:
  102995. (WebCore::HTMLHeadingElement::HTMLHeadingElement):
  102996. (WebCore::HTMLHeadingElement::create):
  102997. * html/HTMLHeadingElement.h:
  102998. * html/HTMLHtmlElement.cpp:
  102999. (WebCore::HTMLHtmlElement::HTMLHtmlElement):
  103000. (WebCore::HTMLHtmlElement::create):
  103001. * html/HTMLHtmlElement.h:
  103002. * html/HTMLImageElement.cpp:
  103003. (WebCore::HTMLImageElement::HTMLImageElement):
  103004. (WebCore::HTMLImageElement::create):
  103005. * html/HTMLImageElement.h:
  103006. * html/HTMLInputElement.cpp:
  103007. (WebCore::HTMLInputElement::HTMLInputElement):
  103008. (WebCore::HTMLInputElement::create):
  103009. (WebCore::HTMLInputElement::createTemporaryFormForIsIndex):
  103010. * html/HTMLInputElement.h:
  103011. * html/HTMLIsIndexElement.cpp:
  103012. (WebCore::HTMLIsIndexElement::HTMLIsIndexElement):
  103013. (WebCore::HTMLIsIndexElement::create):
  103014. * html/HTMLIsIndexElement.h:
  103015. * html/HTMLLIElement.cpp:
  103016. (WebCore::HTMLLIElement::HTMLLIElement):
  103017. (WebCore::HTMLLIElement::create):
  103018. * html/HTMLLIElement.h:
  103019. * html/HTMLLinkElement.cpp:
  103020. (WebCore::HTMLLinkElement::HTMLLinkElement):
  103021. (WebCore::HTMLLinkElement::create):
  103022. * html/HTMLLinkElement.h:
  103023. Added create functions. Made constructors and other members private.
  103024. * html/HTMLTagNames.in: Removed the createWithNew flag from all the
  103025. tags that were still using it: div, font, form, frameset, h1, h2, h3,
  103026. h4, h5, h6, head, hr, html, image, img, input, ins, isindex, label,
  103027. legend, li, and link.
  103028. * html/HTMLTextAreaElement.h: Removed unneeded definition of the readOnly
  103029. function, since the one in HTMLFormElement does the same thing.
  103030. * loader/ImageDocument.cpp:
  103031. (WebCore::ImageDocumentElement::ImageDocumentElement):
  103032. (WebCore::ImageDocumentElement::create):
  103033. (WebCore::ImageDocument::createDocumentStructure):
  103034. Added create functions. Made constructors and other members private.
  103035. * page/DragController.cpp:
  103036. (WebCore::DragController::concludeEditDrag): Use the non-virtual disabled
  103037. function instead of the virtual isEnabledFormControl function, which just
  103038. turns around and calls the disabled function.
  103039. * rendering/MediaControlElements.cpp:
  103040. (WebCore::MediaControlShadowRootElement::MediaControlShadowRootElement):
  103041. (WebCore::MediaControlShadowRootElement::create):
  103042. (WebCore::MediaControlElement::MediaControlElement):
  103043. (WebCore::MediaControlElement::create):
  103044. (WebCore::MediaControlTimelineContainerElement::MediaControlTimelineContainerElement):
  103045. (WebCore::MediaControlTimelineContainerElement::create):
  103046. (WebCore::MediaControlTimelineContainerElement::rendererIsNeeded):
  103047. (WebCore::MediaControlVolumeSliderContainerElement::MediaControlVolumeSliderContainerElement):
  103048. (WebCore::MediaControlVolumeSliderContainerElement::create):
  103049. (WebCore::MediaControlStatusDisplayElement::MediaControlStatusDisplayElement):
  103050. (WebCore::MediaControlStatusDisplayElement::create):
  103051. (WebCore::MediaControlStatusDisplayElement::update):
  103052. (WebCore::MediaControlStatusDisplayElement::rendererIsNeeded):
  103053. (WebCore::MediaControlInputElement::MediaControlInputElement):
  103054. (WebCore::MediaControlInputElement::styleForElement):
  103055. (WebCore::MediaControlInputElement::rendererIsNeeded):
  103056. (WebCore::MediaControlInputElement::attach):
  103057. (WebCore::MediaControlInputElement::updateStyle):
  103058. (WebCore::MediaControlMuteButtonElement::MediaControlMuteButtonElement):
  103059. (WebCore::MediaControlMuteButtonElement::create):
  103060. (WebCore::MediaControlMuteButtonElement::defaultEventHandler):
  103061. (WebCore::MediaControlMuteButtonElement::updateDisplayType):
  103062. (WebCore::MediaControlPlayButtonElement::MediaControlPlayButtonElement):
  103063. (WebCore::MediaControlPlayButtonElement::create):
  103064. (WebCore::MediaControlPlayButtonElement::defaultEventHandler):
  103065. (WebCore::MediaControlPlayButtonElement::updateDisplayType):
  103066. (WebCore::MediaControlSeekButtonElement::MediaControlSeekButtonElement):
  103067. (WebCore::MediaControlSeekButtonElement::create):
  103068. (WebCore::MediaControlSeekButtonElement::isForwardButton):
  103069. (WebCore::MediaControlSeekButtonElement::defaultEventHandler):
  103070. (WebCore::MediaControlSeekButtonElement::seekTimerFired):
  103071. (WebCore::MediaControlRewindButtonElement::MediaControlRewindButtonElement):
  103072. (WebCore::MediaControlRewindButtonElement::create):
  103073. (WebCore::MediaControlRewindButtonElement::defaultEventHandler):
  103074. (WebCore::MediaControlReturnToRealtimeButtonElement::MediaControlReturnToRealtimeButtonElement):
  103075. (WebCore::MediaControlReturnToRealtimeButtonElement::create):
  103076. (WebCore::MediaControlReturnToRealtimeButtonElement::defaultEventHandler):
  103077. (WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement):
  103078. (WebCore::MediaControlToggleClosedCaptionsButtonElement::create):
  103079. (WebCore::MediaControlToggleClosedCaptionsButtonElement::defaultEventHandler):
  103080. (WebCore::MediaControlToggleClosedCaptionsButtonElement::updateDisplayType):
  103081. (WebCore::MediaControlTimelineElement::MediaControlTimelineElement):
  103082. (WebCore::MediaControlTimelineElement::create):
  103083. (WebCore::MediaControlTimelineElement::defaultEventHandler):
  103084. (WebCore::MediaControlTimelineElement::update):
  103085. (WebCore::MediaControlVolumeSliderElement::MediaControlVolumeSliderElement):
  103086. (WebCore::MediaControlVolumeSliderElement::create):
  103087. (WebCore::MediaControlVolumeSliderElement::defaultEventHandler):
  103088. (WebCore::MediaControlVolumeSliderElement::update):
  103089. (WebCore::MediaControlFullscreenButtonElement::MediaControlFullscreenButtonElement):
  103090. (WebCore::MediaControlFullscreenButtonElement::create):
  103091. (WebCore::MediaControlFullscreenButtonElement::defaultEventHandler):
  103092. (WebCore::MediaControlTimeDisplayElement::MediaControlTimeDisplayElement):
  103093. (WebCore::MediaControlTimeDisplayElement::create):
  103094. * rendering/MediaControlElements.h:
  103095. Added create functions. Made constructors and other members private.
  103096. * rendering/RenderFileUploadControl.cpp:
  103097. (WebCore::ShadowInputElement::ShadowInputElement):
  103098. (WebCore::ShadowInputElement::create):
  103099. (WebCore::RenderFileUploadControl::updateFromElement):
  103100. Added create functions. Made constructors and other members private.
  103101. * rendering/RenderMedia.cpp:
  103102. (WebCore::RenderMedia::createControlsShadowRoot):
  103103. (WebCore::RenderMedia::createPanel):
  103104. (WebCore::RenderMedia::createMuteButton):
  103105. (WebCore::RenderMedia::createPlayButton):
  103106. (WebCore::RenderMedia::createSeekBackButton):
  103107. (WebCore::RenderMedia::createSeekForwardButton):
  103108. (WebCore::RenderMedia::createRewindButton):
  103109. (WebCore::RenderMedia::createReturnToRealtimeButton):
  103110. (WebCore::RenderMedia::createToggleClosedCaptionsButton):
  103111. (WebCore::RenderMedia::createStatusDisplay):
  103112. (WebCore::RenderMedia::createTimelineContainer):
  103113. (WebCore::RenderMedia::createTimeline):
  103114. (WebCore::RenderMedia::createVolumeSliderContainer):
  103115. (WebCore::RenderMedia::createVolumeSlider):
  103116. (WebCore::RenderMedia::createCurrentTimeDisplay):
  103117. (WebCore::RenderMedia::createTimeRemainingDisplay):
  103118. (WebCore::RenderMedia::createFullscreenButton):
  103119. Use create instead of new.
  103120. * rendering/RenderProgress.cpp:
  103121. (WebCore::ProgressValueElement::ProgressValueElement):
  103122. (WebCore::ProgressValueElement::create):
  103123. (WebCore::RenderProgress::updateValuePartState):
  103124. * rendering/RenderSlider.cpp:
  103125. (WebCore::SliderThumbElement::SliderThumbElement):
  103126. (WebCore::SliderThumbElement::create):
  103127. (WebCore::RenderSlider::updateFromElement):
  103128. Added create functions. Made constructors and other members private.
  103129. * rendering/TextControlInnerElements.cpp:
  103130. (WebCore::TextControlInnerElement::TextControlInnerElement):
  103131. (WebCore::TextControlInnerElement::create):
  103132. (WebCore::TextControlInnerTextElement::TextControlInnerTextElement):
  103133. (WebCore::TextControlInnerTextElement::create):
  103134. (WebCore::TextControlInnerTextElement::defaultEventHandler):
  103135. (WebCore::SearchFieldResultsButtonElement::SearchFieldResultsButtonElement):
  103136. (WebCore::SearchFieldResultsButtonElement::create):
  103137. (WebCore::SearchFieldResultsButtonElement::defaultEventHandler):
  103138. (WebCore::SearchFieldCancelButtonElement::SearchFieldCancelButtonElement):
  103139. (WebCore::SearchFieldCancelButtonElement::create):
  103140. (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
  103141. (WebCore::SpinButtonElement::SpinButtonElement):
  103142. (WebCore::SpinButtonElement::create):
  103143. (WebCore::SpinButtonElement::defaultEventHandler):
  103144. * rendering/TextControlInnerElements.h:
  103145. Added create functions. Made constructors and other members private.
  103146. 2010-05-30 Xan Lopez <xlopez@igalia.com>
  103147. Reviewed by Darin Adler.
  103148. Incorrect build dependencies for GObject DOM Bindings
  103149. https://bugs.webkit.org/show_bug.cgi?id=39932
  103150. -include does not execute the implicit % expansion, we have to do
  103151. it manually.
  103152. * GNUmakefile.am:
  103153. 2010-05-30 Robert Hogan <robert@webkit.org>
  103154. Reviewed by Kenneth Rohde Christiansen.
  103155. [Qt] Enhance Qt DRT implementation to support platform scroll wheel events.
  103156. https://bugs.webkit.org/show_bug.cgi?id=36004
  103157. Fix the bug in webkit.org/b/29601 for Qt. A delta not divisible by 120
  103158. indicates a device that is sending fine-resolution scroll events, so
  103159. use the delta as the number of pixels to scroll.
  103160. * platform/qt/WheelEventQt.cpp:
  103161. (WebCore::PlatformWheelEvent::applyDelta):
  103162. 2010-05-30 Jessie Berlin <jberlin@webkit.org>
  103163. Reviewed by Pavel Feldman.
  103164. https://bugs.webkit.org/show_bug.cgi?id=39224
  103165. Bug 39224 - Web Inspector: There should be a way to clean up profiles
  103166. Adds a button to clear the profiles from the profiles panel like that
  103167. used for the console, the audits panel, and the timeline panel.
  103168. Consolidates the css rules, since they all use the same image.
  103169. Also allows for individual profiles to be deleted via the keyboard
  103170. (U+0008 or U+007F) and uses this new schema for the Elements Tree.
  103171. * English.lproj/localizedStrings.js:
  103172. Add tooltip text for the button to clear the profiles pane.
  103173. * inspector/InspectorBackend.idl:
  103174. Add ability to remove the profiles from the backend when they are
  103175. deleted or cleared in the frontend.
  103176. * inspector/InspectorBackend.cpp:
  103177. (WebCore::InspectorBackend::removeProfile):
  103178. (WebCore::InspectorBackend::clearProfiles):
  103179. * inspector/InspectorBackend.h:
  103180. * inspector/InspectorController.cpp:
  103181. (WebCore::InspectorController::removeProfile):
  103182. (WebCore::InspectorController::clearProfiles):
  103183. * inspector/InspectorController.h:
  103184. * inspector/front-end/AuditsPanel.js:
  103185. (WebInspector.AuditsPanel):
  103186. Use the 'clear-status-bar-item' class.
  103187. * inspector/front-end/ChangesView.js:
  103188. (WebInspector.ChangesView):
  103189. * inspector/front-end/TimelinePanel.js:
  103190. (WebInspector.TimelinePanel.prototype._createStatusbarButtons):
  103191. * inspector/front-end/audits.css:
  103192. * inspector/front-end/inspector.css:
  103193. (.clear-status-bar-item .glyph):
  103194. * inspector/front-end/inspector.html:
  103195. * inspector/front-end/ElementsTreeOutline.js:
  103196. Replace the keyDown handler on the Outline with specific methods to
  103197. handle delete and enter on the TreeElements.
  103198. (WebInspector.ElementsTreeOutline):
  103199. (WebInspector.ElementsTreeOutline.prototype.get editing):
  103200. Return whether or not an element in the tree is currently being edited.
  103201. (WebInspector.ElementsTreeElement.prototype.ondelete):
  103202. (WebInspector.ElementsTreeElement.prototype.onenter):
  103203. * inspector/front-end/Panel.js:
  103204. (WebInspector.Panel.prototype.createSidebar):
  103205. Make the TreeOutline for a Panel's sidebar aware of its enclosing Panel.
  103206. * inspector/front-end/ProfilesPanel.js:
  103207. (WebInspector.ProfilesPanel):
  103208. Add the clear button.
  103209. (WebInspector.ProfilesPanel.prototype.get statusBarItems):
  103210. (WebInspector.ProfilesPanel.prototype._clearProfiles):
  103211. Remove the profiles from the backend, the reset the frontend interface.
  103212. (WebInspector.ProfilesPanel.prototype.removeProfileHeader):
  103213. Remove the profile from both the frontend and the backend, and clear the
  103214. view when the last profile is removed.
  103215. (WebInspector.ProfilesPanel.prototype._updateInterface):
  103216. Hide the clear button when profiling is disabled.
  103217. (WebInspector.ProfileSidebarTreeElement.prototype.onselect):
  103218. Replace access to global variable with reference to the Panel held by the
  103219. TreeOutline.
  103220. (WebInspector.ProfileSidebarTreeElement.prototype.ondelete):
  103221. Remove the profile corresponding the tree element when the user deletes
  103222. that tree element.
  103223. * inspector/front-end/treeoutline.js:
  103224. (TreeOutline.prototype._treeKeyDown):
  103225. Allow the selected tree element to handle the user pressing a delete
  103226. key or enter key.
  103227. 2010-05-29 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  103228. Reviewed by Darin Adler.
  103229. Check if a CC environment variable is defined before hard-coding gcc's
  103230. path. Simply hard-coding it breaks cross-compilation and Linux
  103231. distributions with more than one gcc installed (or not in the default
  103232. path).
  103233. https://bugs.webkit.org/show_bug.cgi?id=35551
  103234. No new functionality, so no new tests.
  103235. * bindings/scripts/CodeGeneratorObjC.pm:
  103236. * bindings/scripts/IDLParser.pm:
  103237. * dom/make_names.pl:
  103238. 2010-05-29 Pavel Feldman <pfeldman@chromium.org>
  103239. Reviewed by Timothy Hatcher.
  103240. Web Inspector: [REGRESSION] caller locations are not shown on Timeline Panel.
  103241. https://bugs.webkit.org/show_bug.cgi?id=39923
  103242. * inspector/front-end/TimelinePanel.js:
  103243. (WebInspector.TimelinePanel.FormattedRecord):
  103244. (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
  103245. (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
  103246. 2010-05-29 Eric Seidel <eric@webkit.org>
  103247. Reviewed by Adam Barth.
  103248. HTML5 parser should block script execution until stylesheets load
  103249. https://bugs.webkit.org/show_bug.cgi?id=39903
  103250. All <script> tag execution now blocks on stylesheet load, including
  103251. inline <script> content which the old parser doesn't support blocking.
  103252. Hyatt says we could now get rid of updateLayoutIgnorePendingStylesheets
  103253. once our primary parser knows how to wait for stylesheets
  103254. before executing inline <script> content.
  103255. All of http/tests/local passes in --html5-parser mode now.
  103256. Also fixed fast/parser/tokenizer-close-during-document-write.html.
  103257. * html/HTML5ScriptRunner.cpp:
  103258. (WebCore::HTML5ScriptRunner::HTML5ScriptRunner):
  103259. - Added a m_hasScriptsWaitingForStylesheets bool so that we can
  103260. detect when we're actually waiting on stylesheets or not.
  103261. If we're not waiting on stylesheets then we're still parsing and
  103262. executing scripts would cause parser/script reentrancy and bad news bears.
  103263. (WebCore::HTML5ScriptRunner::isPendingScriptReady):
  103264. - Re-enable the check that the stylesheets have loaded.
  103265. (WebCore::HTML5ScriptRunner::executePendingScript):
  103266. - ASSERT that stylesheets have loaded.
  103267. (WebCore::HTML5ScriptRunner::executeScriptsWaitingForLoad):
  103268. - ASSERT that this is never called reentrantly.
  103269. (WebCore::HTML5ScriptRunner::executeScriptsWaitingForStylesheets):
  103270. - Execute any scripts which were blocked on stylesheet loads.
  103271. - ASSERT (in two ways) that this is never called reentrantly.
  103272. * html/HTML5ScriptRunner.h:
  103273. (WebCore::HTML5ScriptRunner::hasScriptsWaitingForStylesheets):
  103274. - Callers need to check this before calling executeScriptsWaitingForLoad.
  103275. (WebCore::HTML5ScriptRunner::inScriptExecution):
  103276. - Used by callers to ASSERT that we're not called re-entrantly.
  103277. * html/HTML5Tokenizer.cpp:
  103278. (WebCore::HTML5Tokenizer::HTML5Tokenizer):
  103279. - Add m_hasScriptsWaitingForStylesheets for tracking if we've paused
  103280. due to stylesheets or not. Callers need to know this to know if they
  103281. should ignore executeScriptsWaitingForStylesheets calls from
  103282. Document (which may be generated when parsing </script> tags).
  103283. We only care about executeScriptsWaitingForStylesheets calls when
  103284. we've actually blocked the parser due to waiting on a stylesheet load.
  103285. (WebCore::HTML5Tokenizer::end):
  103286. - Move m_source.close() back to this method now that I understand more
  103287. about when finish() is called. This should fix several layout test ASSERTS.
  103288. (WebCore::HTML5Tokenizer::finish):
  103289. - This should not close m_source since scripts may still write to
  103290. the document. Set m_wasWaitingOnScriptsDuringFinish to indicate
  103291. that we were not able to end parsing during finish.
  103292. (WebCore::HTML5Tokenizer::resumeParsingAfterScriptExecution):
  103293. - ASSERT that this is never caller re-entrantly.
  103294. (WebCore::HTML5Tokenizer::executeScript):
  103295. - ASSERT that the ScriptRunner always thinks we're running scripts when this is called.
  103296. (WebCore::HTML5Tokenizer::executingScript):
  103297. - Added implementation to fix fast/parser/tokenizer-close-during-document-write.html
  103298. (WebCore::HTML5Tokenizer::notifyFinished):
  103299. - ASSERT that this is never called re-entrantly.
  103300. (WebCore::HTML5Tokenizer::executeScriptsWaitingForStylesheets):
  103301. - Call the ScriptRunner to tell it that stylesheets have loaded if
  103302. it is blocked on stylesheet loads.
  103303. - ASSERT(m_hasScriptsWaitingForStylesheets). We can't just assert
  103304. isPaused() since we may be paused for script loads.
  103305. * html/HTML5Tokenizer.h:
  103306. 2010-05-29 Laszlo Gombos <laszlo.1.gombos@nokia.com>
  103307. Reviewed by Darin Adler.
  103308. Remove set but never used variables
  103309. https://bugs.webkit.org/show_bug.cgi?id=35252
  103310. No new tests as there is no new functionality.
  103311. * accessibility/AccessibilityRenderObject.cpp:
  103312. (WebCore::lastChildConsideringContinuation):
  103313. * css/CSSFontSelector.cpp:
  103314. (WebCore::CSSFontSelector::addFontFaceRule):
  103315. * css/CSSParser.cpp:
  103316. (WebCore::CSSParser::parseFontFaceUnicodeRange):
  103317. * editing/InsertParagraphSeparatorCommand.cpp:
  103318. (WebCore::InsertParagraphSeparatorCommand::doApply):
  103319. * loader/appcache/ApplicationCacheStorage.cpp:
  103320. (WebCore::ApplicationCacheStorage::loadManifestHostHashes):
  103321. * page/EventHandler.cpp:
  103322. (WebCore::EventHandler::handleWheelEvent):
  103323. * page/animation/AnimationBase.cpp:
  103324. (WebCore::AnimationBase::getTimeToNextEvent):
  103325. * rendering/AutoTableLayout.cpp:
  103326. (WebCore::AutoTableLayout::recalcColumn):
  103327. (WebCore::AutoTableLayout::layout):
  103328. * rendering/RenderBlock.cpp:
  103329. (WebCore::RenderBlock::calcInlinePrefWidths):
  103330. * rendering/RenderSVGResourceClipper.cpp:
  103331. (WebCore::RenderSVGResourceClipper::createClipData):
  103332. * storage/DatabaseTracker.cpp:
  103333. (WebCore::DatabaseTracker::canEstablishDatabase):
  103334. 2010-05-29 Sheriff Bot <webkit.review.bot@gmail.com>
  103335. Unreviewed, rolling out r60405.
  103336. http://trac.webkit.org/changeset/60405
  103337. https://bugs.webkit.org/show_bug.cgi?id=39921
  103338. It broke GTK build. (Requested by Ossy on #webkit).
  103339. * dom/Node.cpp:
  103340. (WebCore::Node::getElementsByTagName):
  103341. (WebCore::Node::getElementsByTagNameNS):
  103342. * dom/Node.h:
  103343. 2010-05-29 Anton Muhin <antonm@chromium.org>
  103344. Reviewed by Darin Adler.
  103345. Make NodeList getters take AtomicString instead of plain String
  103346. https://bugs.webkit.org/show_bug.cgi?id=39892
  103347. Those methods turn String into AtomicString later. And this conversion
  103348. is faster if underlying string is already atomic.
  103349. That buys small (~2-3%) speed up for Chromium on Dromaeo DOM Core.
  103350. I don't know if Safari benefits from it.
  103351. * dom/Node.cpp:
  103352. (WebCore::Node::getElementsByTagName):
  103353. (WebCore::Node::getElementsByTagNameNS):
  103354. * dom/Node.h:
  103355. 2010-05-29 Justin Schuh <jschuh@chromium.org>
  103356. Reviewed by Adam Barth.
  103357. Allow descendant frame navigation for file URLs when allowFileAccessFromFileURLs is false
  103358. https://bugs.webkit.org/show_bug.cgi?id=39750
  103359. Fix for local HTML package breakage when each file is its own origin.
  103360. In this case we should allow descendant file: frames to navigate each
  103361. other when they share the same top frame.
  103362. Test: fast/frames/location-change-no-file-access.html
  103363. * loader/FrameLoader.cpp:
  103364. (WebCore::FrameLoader::shouldAllowNavigation):
  103365. 2010-05-29 Geoffrey Garen <ggaren@apple.com>
  103366. Qt build fix: Updated for ArgList changes.
  103367. * bridge/qt/qt_runtime.cpp:
  103368. (JSC::Bindings::QtRuntimeConnectionMethod::call):
  103369. 2010-05-29 Geoffrey Garen <ggaren@apple.com>
  103370. Qt build fix: Updated for ArgList changes.
  103371. * bridge/qt/qt_runtime.cpp:
  103372. (JSC::Bindings::QtRuntimeMetaMethod::call):
  103373. (JSC::Bindings::QtRuntimeConnectionMethod::call):
  103374. 2010-05-29 Geoffrey Garen <ggaren@apple.com>
  103375. Qt build fix: Updated for ArgList changes.
  103376. * bridge/qt/qt_pixmapruntime.cpp:
  103377. (JSC::Bindings::QtPixmapInstance::invokeMethod):
  103378. * bridge/qt/qt_runtime.cpp:
  103379. (JSC::Bindings::findMethodIndex):
  103380. (JSC::Bindings::QtRuntimeMetaMethod::call):
  103381. (JSC::Bindings::QtRuntimeConnectionMethod::call):
  103382. * bridge/qt/qt_runtime.h:
  103383. 2010-05-29 Geoffrey Garen <ggaren@apple.com>
  103384. Qt build fix: Updated for ArgList changes.
  103385. * bridge/qt/qt_pixmapruntime.cpp:
  103386. (JSC::Bindings::QtPixmapAssignToElementMethod::invoke):
  103387. (JSC::Bindings::QtPixmapToDataUrlMethod::invoke):
  103388. (JSC::Bindings::QtPixmapToStringMethod::invoke):
  103389. (JSC::Bindings::QtPixmapInstance::invokeMethod):
  103390. * bridge/qt/qt_pixmapruntime.h:
  103391. 2010-05-29 Geoffrey Garen <ggaren@apple.com>
  103392. Qt build fix: Keep this borken class limping along.
  103393. * bridge/qt/qt_instance.cpp:
  103394. (JSC::Bindings::QtInstance::invokeMethod):
  103395. * bridge/qt/qt_instance.h:
  103396. 2010-05-28 Geoffrey Garen <ggaren@apple.com>
  103397. Reviewed by Sam Weinig, Gavin Barraclough, Oliver Hunt.
  103398. Simplified the host calling convention.
  103399. PART ONE: Functional code changes.
  103400. [ None in WebCore ]
  103401. PART TWO: Global search and replace.
  103402. In the areas below, I used global search-and-replace to change
  103403. (ExecState*, JSObject*, JSValue, const ArgList&) => (ExecState*)
  103404. args.size() => exec->argumentCount()
  103405. args.at(i) => exec->argument(i)
  103406. * bindings/js/JSArrayBufferViewCustom.cpp:
  103407. (WebCore::JSArrayBufferView::slice):
  103408. * bindings/js/JSArrayBufferViewHelper.h:
  103409. (WebCore::setWebGLArrayHelper):
  103410. * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
  103411. (WebCore::JSCanvasRenderingContext2D::setFillColor):
  103412. (WebCore::JSCanvasRenderingContext2D::setStrokeColor):
  103413. (WebCore::JSCanvasRenderingContext2D::strokeRect):
  103414. (WebCore::JSCanvasRenderingContext2D::drawImage):
  103415. (WebCore::JSCanvasRenderingContext2D::drawImageFromRect):
  103416. (WebCore::JSCanvasRenderingContext2D::setShadow):
  103417. (WebCore::JSCanvasRenderingContext2D::createPattern):
  103418. (WebCore::JSCanvasRenderingContext2D::createImageData):
  103419. (WebCore::JSCanvasRenderingContext2D::putImageData):
  103420. (WebCore::JSCanvasRenderingContext2D::fillText):
  103421. (WebCore::JSCanvasRenderingContext2D::strokeText):
  103422. * bindings/js/JSClipboardCustom.cpp:
  103423. (WebCore::JSClipboard::clearData):
  103424. (WebCore::JSClipboard::getData):
  103425. (WebCore::JSClipboard::setDragImage):
  103426. * bindings/js/JSDOMApplicationCacheCustom.cpp:
  103427. (WebCore::JSDOMApplicationCache::hasItem):
  103428. (WebCore::JSDOMApplicationCache::add):
  103429. (WebCore::JSDOMApplicationCache::remove):
  103430. * bindings/js/JSDOMFormDataCustom.cpp:
  103431. (WebCore::JSDOMFormData::append):
  103432. * bindings/js/JSDOMWindowCustom.cpp:
  103433. (WebCore::JSDOMWindow::open):
  103434. (WebCore::JSDOMWindow::showModalDialog):
  103435. (WebCore::JSDOMWindow::postMessage):
  103436. (WebCore::JSDOMWindow::setTimeout):
  103437. (WebCore::JSDOMWindow::setInterval):
  103438. (WebCore::JSDOMWindow::addEventListener):
  103439. (WebCore::JSDOMWindow::removeEventListener):
  103440. (WebCore::JSDOMWindow::openDatabase):
  103441. * bindings/js/JSDatabaseCustom.cpp:
  103442. (WebCore::JSDatabase::changeVersion):
  103443. (WebCore::createTransaction):
  103444. (WebCore::JSDatabase::transaction):
  103445. (WebCore::JSDatabase::readTransaction):
  103446. * bindings/js/JSDatabaseSyncCustom.cpp:
  103447. (WebCore::JSDatabaseSync::changeVersion):
  103448. (WebCore::createTransaction):
  103449. (WebCore::JSDatabaseSync::transaction):
  103450. (WebCore::JSDatabaseSync::readTransaction):
  103451. * bindings/js/JSDedicatedWorkerContextCustom.cpp:
  103452. (WebCore::JSDedicatedWorkerContext::postMessage):
  103453. * bindings/js/JSDesktopNotificationsCustom.cpp:
  103454. (WebCore::JSNotificationCenter::requestPermission):
  103455. * bindings/js/JSFloatArrayCustom.cpp:
  103456. (WebCore::JSFloatArray::set):
  103457. * bindings/js/JSGeolocationCustom.cpp:
  103458. (WebCore::JSGeolocation::getCurrentPosition):
  103459. (WebCore::JSGeolocation::watchPosition):
  103460. * bindings/js/JSHTMLAllCollectionCustom.cpp:
  103461. (WebCore::callHTMLAllCollection):
  103462. (WebCore::JSHTMLAllCollection::item):
  103463. (WebCore::JSHTMLAllCollection::namedItem):
  103464. * bindings/js/JSHTMLCanvasElementCustom.cpp:
  103465. (WebCore::JSHTMLCanvasElement::getContext):
  103466. * bindings/js/JSHTMLCollectionCustom.cpp:
  103467. (WebCore::callHTMLCollection):
  103468. (WebCore::JSHTMLCollection::item):
  103469. (WebCore::JSHTMLCollection::namedItem):
  103470. * bindings/js/JSHTMLDocumentCustom.cpp:
  103471. (WebCore::JSHTMLDocument::open):
  103472. (WebCore::documentWrite):
  103473. (WebCore::JSHTMLDocument::write):
  103474. (WebCore::JSHTMLDocument::writeln):
  103475. * bindings/js/JSHTMLInputElementCustom.cpp:
  103476. (WebCore::JSHTMLInputElement::setSelectionRange):
  103477. * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
  103478. (WebCore::JSHTMLOptionsCollection::add):
  103479. (WebCore::JSHTMLOptionsCollection::remove):
  103480. * bindings/js/JSHTMLSelectElementCustom.cpp:
  103481. (WebCore::JSHTMLSelectElement::remove):
  103482. * bindings/js/JSHistoryCustom.cpp:
  103483. (WebCore::JSHistory::pushState):
  103484. (WebCore::JSHistory::replaceState):
  103485. * bindings/js/JSInjectedScriptHostCustom.cpp:
  103486. (WebCore::JSInjectedScriptHost::databaseForId):
  103487. (WebCore::JSInjectedScriptHost::currentCallFrame):
  103488. (WebCore::JSInjectedScriptHost::nodeForId):
  103489. (WebCore::JSInjectedScriptHost::pushNodePathToFrontend):
  103490. (WebCore::JSInjectedScriptHost::selectDatabase):
  103491. (WebCore::JSInjectedScriptHost::selectDOMStorage):
  103492. (WebCore::JSInjectedScriptHost::reportDidDispatchOnInjectedScript):
  103493. * bindings/js/JSInspectorFrontendHostCustom.cpp:
  103494. (WebCore::JSInspectorFrontendHost::platform):
  103495. (WebCore::JSInspectorFrontendHost::port):
  103496. (WebCore::JSInspectorFrontendHost::showContextMenu):
  103497. * bindings/js/JSInt16ArrayCustom.cpp:
  103498. (WebCore::JSInt16Array::set):
  103499. * bindings/js/JSInt32ArrayCustom.cpp:
  103500. (WebCore::JSInt32Array::set):
  103501. * bindings/js/JSInt8ArrayCustom.cpp:
  103502. (WebCore::JSInt8Array::set):
  103503. * bindings/js/JSJavaScriptCallFrameCustom.cpp:
  103504. (WebCore::JSJavaScriptCallFrame::evaluate):
  103505. (WebCore::JSJavaScriptCallFrame::scopeType):
  103506. * bindings/js/JSLocationCustom.cpp:
  103507. (WebCore::JSLocation::replace):
  103508. (WebCore::JSLocation::reload):
  103509. (WebCore::JSLocation::assign):
  103510. (WebCore::JSLocation::toString):
  103511. * bindings/js/JSMessageEventCustom.cpp:
  103512. (WebCore::JSMessageEvent::initMessageEvent):
  103513. * bindings/js/JSMessagePortCustom.cpp:
  103514. (WebCore::JSMessagePort::postMessage):
  103515. * bindings/js/JSMessagePortCustom.h:
  103516. (WebCore::handlePostMessage):
  103517. * bindings/js/JSNodeCustom.cpp:
  103518. (WebCore::JSNode::insertBefore):
  103519. (WebCore::JSNode::replaceChild):
  103520. (WebCore::JSNode::removeChild):
  103521. (WebCore::JSNode::appendChild):
  103522. * bindings/js/JSNodeListCustom.cpp:
  103523. (WebCore::callNodeList):
  103524. * bindings/js/JSPluginElementFunctions.cpp:
  103525. (WebCore::callPlugin):
  103526. * bindings/js/JSSQLResultSetRowListCustom.cpp:
  103527. (WebCore::JSSQLResultSetRowList::item):
  103528. * bindings/js/JSSQLTransactionCustom.cpp:
  103529. (WebCore::JSSQLTransaction::executeSql):
  103530. * bindings/js/JSSQLTransactionSyncCustom.cpp:
  103531. (WebCore::JSSQLTransactionSync::executeSql):
  103532. * bindings/js/JSSVGLengthCustom.cpp:
  103533. (WebCore::JSSVGLength::convertToSpecifiedUnits):
  103534. * bindings/js/JSSVGMatrixCustom.cpp:
  103535. (WebCore::JSSVGMatrix::multiply):
  103536. (WebCore::JSSVGMatrix::inverse):
  103537. (WebCore::JSSVGMatrix::rotateFromVector):
  103538. * bindings/js/JSSVGPODListCustom.h:
  103539. (WebCore::JSSVGPODListCustom::clear):
  103540. (WebCore::JSSVGPODListCustom::initialize):
  103541. (WebCore::JSSVGPODListCustom::getItem):
  103542. (WebCore::JSSVGPODListCustom::insertItemBefore):
  103543. (WebCore::JSSVGPODListCustom::replaceItem):
  103544. (WebCore::JSSVGPODListCustom::removeItem):
  103545. (WebCore::JSSVGPODListCustom::appendItem):
  103546. * bindings/js/JSSVGPathSegListCustom.cpp:
  103547. (WebCore::JSSVGPathSegList::clear):
  103548. (WebCore::JSSVGPathSegList::initialize):
  103549. (WebCore::JSSVGPathSegList::getItem):
  103550. (WebCore::JSSVGPathSegList::insertItemBefore):
  103551. (WebCore::JSSVGPathSegList::replaceItem):
  103552. (WebCore::JSSVGPathSegList::removeItem):
  103553. (WebCore::JSSVGPathSegList::appendItem):
  103554. * bindings/js/JSUint16ArrayCustom.cpp:
  103555. (WebCore::JSUint16Array::set):
  103556. * bindings/js/JSUint32ArrayCustom.cpp:
  103557. (WebCore::JSUint32Array::set):
  103558. * bindings/js/JSUint8ArrayCustom.cpp:
  103559. (WebCore::JSUint8Array::set):
  103560. * bindings/js/JSWebGLRenderingContextCustom.cpp:
  103561. (WebCore::JSWebGLRenderingContext::bufferData):
  103562. (WebCore::JSWebGLRenderingContext::bufferSubData):
  103563. (WebCore::getObjectParameter):
  103564. (WebCore::JSWebGLRenderingContext::getBufferParameter):
  103565. (WebCore::JSWebGLRenderingContext::getFramebufferAttachmentParameter):
  103566. (WebCore::JSWebGLRenderingContext::getParameter):
  103567. (WebCore::JSWebGLRenderingContext::getProgramParameter):
  103568. (WebCore::JSWebGLRenderingContext::getRenderbufferParameter):
  103569. (WebCore::JSWebGLRenderingContext::getShaderParameter):
  103570. (WebCore::JSWebGLRenderingContext::getTexParameter):
  103571. (WebCore::JSWebGLRenderingContext::getUniform):
  103572. (WebCore::JSWebGLRenderingContext::getVertexAttrib):
  103573. (WebCore::JSWebGLRenderingContext::texImage2D):
  103574. (WebCore::JSWebGLRenderingContext::texSubImage2D):
  103575. (WebCore::dataFunctionf):
  103576. (WebCore::dataFunctioni):
  103577. (WebCore::dataFunctionMatrix):
  103578. (WebCore::JSWebGLRenderingContext::uniform1fv):
  103579. (WebCore::JSWebGLRenderingContext::uniform1iv):
  103580. (WebCore::JSWebGLRenderingContext::uniform2fv):
  103581. (WebCore::JSWebGLRenderingContext::uniform2iv):
  103582. (WebCore::JSWebGLRenderingContext::uniform3fv):
  103583. (WebCore::JSWebGLRenderingContext::uniform3iv):
  103584. (WebCore::JSWebGLRenderingContext::uniform4fv):
  103585. (WebCore::JSWebGLRenderingContext::uniform4iv):
  103586. (WebCore::JSWebGLRenderingContext::uniformMatrix2fv):
  103587. (WebCore::JSWebGLRenderingContext::uniformMatrix3fv):
  103588. (WebCore::JSWebGLRenderingContext::uniformMatrix4fv):
  103589. (WebCore::JSWebGLRenderingContext::vertexAttrib1fv):
  103590. (WebCore::JSWebGLRenderingContext::vertexAttrib2fv):
  103591. (WebCore::JSWebGLRenderingContext::vertexAttrib3fv):
  103592. (WebCore::JSWebGLRenderingContext::vertexAttrib4fv):
  103593. * bindings/js/JSWebSocketCustom.cpp:
  103594. (WebCore::JSWebSocket::send):
  103595. * bindings/js/JSWorkerContextCustom.cpp:
  103596. (WebCore::JSWorkerContext::importScripts):
  103597. (WebCore::JSWorkerContext::setTimeout):
  103598. (WebCore::JSWorkerContext::setInterval):
  103599. (WebCore::JSWorkerContext::openDatabase):
  103600. (WebCore::JSWorkerContext::openDatabaseSync):
  103601. * bindings/js/JSWorkerCustom.cpp:
  103602. (WebCore::JSWorker::postMessage):
  103603. * bindings/js/JSXMLHttpRequestCustom.cpp:
  103604. (WebCore::JSXMLHttpRequest::open):
  103605. (WebCore::JSXMLHttpRequest::send):
  103606. * bindings/js/JSXSLTProcessorCustom.cpp:
  103607. (WebCore::JSXSLTProcessor::importStylesheet):
  103608. (WebCore::JSXSLTProcessor::transformToFragment):
  103609. (WebCore::JSXSLTProcessor::transformToDocument):
  103610. (WebCore::JSXSLTProcessor::setParameter):
  103611. (WebCore::JSXSLTProcessor::getParameter):
  103612. (WebCore::JSXSLTProcessor::removeParameter):
  103613. * bindings/js/ScheduledAction.cpp:
  103614. (WebCore::ScheduledAction::create):
  103615. (WebCore::ScheduledAction::ScheduledAction):
  103616. * bindings/js/ScheduledAction.h:
  103617. * bindings/js/ScriptCallFrame.cpp:
  103618. (WebCore::ScriptCallFrame::ScriptCallFrame):
  103619. * bindings/js/ScriptCallFrame.h:
  103620. * bindings/js/ScriptCallStack.cpp:
  103621. (WebCore::ScriptCallStack::ScriptCallStack):
  103622. (WebCore::ScriptCallStack::initialize):
  103623. * bindings/js/ScriptCallStack.h:
  103624. * bindings/scripts/CodeGeneratorJS.pm:
  103625. * bridge/c/c_instance.cpp:
  103626. (JSC::Bindings::CInstance::invokeMethod):
  103627. (JSC::Bindings::CInstance::invokeDefaultMethod):
  103628. * bridge/c/c_instance.h:
  103629. * bridge/jni/jsc/JavaInstanceJSC.cpp:
  103630. (JavaInstance::invokeMethod):
  103631. * bridge/jni/jsc/JavaInstanceJSC.h:
  103632. * bridge/jsc/BridgeJSC.h:
  103633. (JSC::Bindings::Instance::invokeDefaultMethod):
  103634. * bridge/objc/objc_instance.h:
  103635. * bridge/objc/objc_instance.mm:
  103636. (ObjcInstance::invokeMethod):
  103637. (ObjcInstance::invokeObjcMethod):
  103638. (ObjcInstance::invokeDefaultMethod):
  103639. * bridge/objc/objc_runtime.mm:
  103640. (JSC::Bindings::callObjCFallbackObject):
  103641. * bridge/runtime_method.cpp:
  103642. (JSC::callRuntimeMethod):
  103643. * bridge/runtime_object.cpp:
  103644. (JSC::Bindings::callRuntimeObject):
  103645. 2010-05-28 Stephen White <senorblanco@chromium.org>
  103646. Reviewed by Darin Fisher.
  103647. Implement GraphicsContext::setImageInterpolation() for the Chromium
  103648. port. This is preparatory work for bug 38233. A number of
  103649. background-resize tests will need a rebaseline, since the images are
  103650. taken during the initial "low quality" phase (<800ms).
  103651. [CHROMIUM] Chromium port should support image interpolation quality
  103652. https://bugs.webkit.org/show_bug.cgi?id=38686
  103653. Covered by fast/backgrounds/size/backgroundSize15.html, and others.
  103654. * platform/graphics/skia/GraphicsContextSkia.cpp:
  103655. Implement WebCore::GraphicsContext::setImageInterpolationQuality.
  103656. * platform/graphics/skia/ImageSkia.cpp:
  103657. (WebCore::computeResamplingMode): Only enable high quality
  103658. interpolation if it has been requested in the GraphicsContext.
  103659. (WebCore::drawResampledBitmap): Enable cacheing of resampled images
  103660. even if the size is not full (fix from Brett Wilson).
  103661. (WebCore::paintSkBitmap): Pass in the PlatformContextSkia to
  103662. computeResamplingMode, so it can query it for interpolation quality.
  103663. (WebCore::Image::drawPattern): Ibid.
  103664. * platform/graphics/skia/PlatformContextSkia.cpp:
  103665. (PlatformContextSkia::State::State):
  103666. (PlatformContextSkia::interpolationQuality):
  103667. (PlatformContextSkia::setInterpolationQuality):
  103668. * platform/graphics/skia/PlatformContextSkia.h:
  103669. Add a member fn and accessors to retain the image interpolation quality
  103670. in the platform context, and to save/restore it with the state.
  103671. 2010-05-28 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  103672. Reviewed by Kenneth Rohde Christiansen.
  103673. [EFL] Remove compiler warnings about uninitialized variable.
  103674. https://bugs.webkit.org/show_bug.cgi?id=39871
  103675. No new tests, just cosmetic changes.
  103676. * platform/efl/WidgetEfl.cpp:
  103677. (WebCore::Widget::applyCursor):
  103678. 2010-05-28 Vangelis Kokkevis <vangelis@chromium.org>
  103679. Reviewed by Dimitri Glazkov.
  103680. Prevent chromium composited layers from rendering on top of the scrollbars.
  103681. https://bugs.webkit.org/show_bug.cgi?id=39851
  103682. * platform/graphics/chromium/LayerRendererChromium.cpp:
  103683. (WebCore::LayerRendererChromium::drawLayers):
  103684. 2010-05-28 Aaron Boodman <aa@chromium.org>
  103685. Reviewed by Darin Fisher.
  103686. Added isXHTMLDocument() to WebCore::Document.
  103687. https://bugs.webkit.org/show_bug.cgi?id=39887
  103688. * dom/Document.h: Add isXHTMLDocument().
  103689. (WebCore::Document::isXHTMLDocument): Ditto.
  103690. 2010-05-28 Peter Kasting <pkasting@google.com>
  103691. Reviewed by Darin Adler.
  103692. https://bugs.webkit.org/show_bug.cgi?id=39857
  103693. Make GIFs loop the correct number of times. Previously, everyone looped
  103694. one time too few for non-infinitely-looping GIFs.
  103695. Modified a Qt manual test to be correct and moved it to the general
  103696. manual test directory.
  103697. * manual-tests/animated-gif-looping.html: Copied from WebCore/manual-tests/qt/qt-gif-test.html.
  103698. * manual-tests/qt/qt-10loop-anim.gif: Removed.
  103699. * manual-tests/qt/qt-anim.gif: Removed.
  103700. * manual-tests/qt/qt-gif-test.html: Removed.
  103701. * manual-tests/qt/qt-noanim.gif: Removed.
  103702. * manual-tests/resources/animated-10x.gif: Copied from WebCore/manual-tests/qt/qt-10loop-anim.gif and modified.
  103703. * manual-tests/resources/animated-infinite.gif: Copied from WebCore/manual-tests/qt/qt-anim.gif.
  103704. * manual-tests/resources/non-animated.gif: Copied from WebCore/manual-tests/qt/qt-noanim.gif.
  103705. * platform/graphics/BitmapImage.cpp:
  103706. (WebCore::BitmapImage::internalAdvanceAnimation): For a loop count of n, show a total of n + 1 animation cycles.
  103707. * platform/graphics/ImageSource.h:
  103708. * platform/graphics/cg/ImageSourceCG.cpp:
  103709. (WebCore::ImageSource::repetitionCount):
  103710. * platform/graphics/qt/ImageDecoderQt.cpp:
  103711. (WebCore::ImageDecoderQt::repetitionCount): Remove translation code now that WebCore matches Qt's internal handling of the loop count. Qt itself may still have a bug here.
  103712. * platform/image-decoders/gif/GIFImageDecoder.cpp:
  103713. (WebCore::GIFImageDecoder::repetitionCount):
  103714. * platform/image-decoders/gif/GIFImageReader.cpp:
  103715. (GIFImageReader::read): Translate loop count 0 to "loop infinitely" (by restoring one piece of the Mozilla code we'd removed).
  103716. 2010-05-28 Ben Murdoch <benm@google.com>
  103717. Reviewed by Darin Adler.
  103718. openFile(...) in FIleSystemPOSIX does not call fileSystemRepresentation
  103719. https://bugs.webkit.org/show_bug.cgi?id=39882
  103720. No new tests. Existing tests in fast/files should suffice.
  103721. * platform/posix/FileSystemPOSIX.cpp:
  103722. (WebCore::openFile): pass the path parameter through fileSystemRepresentation before using it.
  103723. 2010-05-28 Adam Barth <abarth@webkit.org>
  103724. Reviewed by Eric Seidel.
  103725. Named entities in attributes aren't parsed correctly by HTML5 parser
  103726. https://bugs.webkit.org/show_bug.cgi?id=39873
  103727. I misplaced this if statement when writing this code originally. Now
  103728. that we have test coverage for this paragraph in the spec, we can see
  103729. and fix the bug.
  103730. * html/HTML5Lexer.cpp:
  103731. (WebCore::HTML5Lexer::consumeEntity):
  103732. 2010-05-28 Adam Barth <abarth@webkit.org>
  103733. Reviewed by Eric Seidel.
  103734. Handle edge cases in HTML5 entity parsing
  103735. https://bugs.webkit.org/show_bug.cgi?id=39823
  103736. The HTML5 specification tells us to handle HTML entities in a somewhat
  103737. complicated way. This patch attempts to correctly handle numeric
  103738. entities. Some of this code is duplicated from HTMLTokenizer.
  103739. * html/HTML5Lexer.cpp:
  103740. (WebCore::HTMLNames::):
  103741. (WebCore::HTMLNames::adjustEntity):
  103742. (WebCore::HTMLNames::legalEntityFor):
  103743. (WebCore::HTML5Lexer::consumeEntity):
  103744. (WebCore::HTML5Lexer::processEntity):
  103745. (WebCore::HTML5Lexer::nextToken):
  103746. (WebCore::HTML5Lexer::emitCodePoint):
  103747. * html/HTML5Lexer.h:
  103748. 2010-05-28 Chris Fleizach <cfleizach@apple.com>
  103749. Reviewed by Beth Dakin.
  103750. AX: stop prepping value conversion in accessibilityAttributeValueForParameter
  103751. https://bugs.webkit.org/show_bug.cgi?id=39880
  103752. Cleaning up a FIXME so that all values are not converted before they're needed in accessibilityAttributeValue:forParameter:
  103753. * accessibility/mac/AccessibilityObjectWrapper.mm:
  103754. (visiblePositionForTextMarker):
  103755. (-[AccessibilityObjectWrapper visiblePositionRangeForTextMarkerRange:]):
  103756. (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
  103757. 2010-05-28 Adam Treat <atreat@rim.com>
  103758. Reviewed by Daniel Bates.
  103759. RIM Bug #293 and https://bugs.webkit.org/show_bug.cgi?id=39859
  103760. Layout is not dependent upon ScrollView::frameRect when useFixedLayout
  103761. is true. No reason to set the needs layout flag in this case.
  103762. * platform/ScrollView.cpp:
  103763. (WebCore::ScrollView::setFrameRect):
  103764. 2010-05-28 Mikhail Naganov <mnaganov@chromium.org>
  103765. Unreviewed. Revert 60353 -- immature.
  103766. https://bugs.webkit.org/show_bug.cgi?id=39646
  103767. * bindings/js/JSConsoleCustom.cpp:
  103768. * bindings/v8/custom/V8ConsoleCustom.cpp:
  103769. * page/Console.cpp:
  103770. * page/Console.h:
  103771. * page/Console.idl:
  103772. 2010-05-27 Darin Adler <darin@apple.com>
  103773. Reviewed by David Levin.
  103774. Make more HTML DOM members private, especially constructors, batch 2
  103775. https://bugs.webkit.org/show_bug.cgi?id=39706
  103776. Refactoring so no new tests.
  103777. Worked my way up from the bottom of HTMLTagNames.in.
  103778. * html/HTMLTagNames.in: Removed createWithNew from keygen, listing,
  103779. map, marquee, menu, meta, ol, optgroup, option, p, param, pre,
  103780. script, select, source, style, table, tbody, td, textarea, tfoot,
  103781. th, thead, title, tr, ul, video, xmp, and noscript.
  103782. * editing/htmlediting.cpp:
  103783. (WebCore::createOrderedListElement): Use create function instead of new.
  103784. (WebCore::createUnorderedListElement): Ditto.
  103785. * html/HTMLParser.cpp:
  103786. (WebCore::HTMLParser::handleError): Ditto.
  103787. (WebCore::HTMLParser::mapCreateErrorCheck): Ditto.
  103788. * html/HTMLViewSourceDocument.cpp:
  103789. (WebCore::HTMLViewSourceDocument::createContainingTable): Ditto.
  103790. (WebCore::HTMLViewSourceDocument::addLine): Ditto.
  103791. * html/HTMLKeygenElement.cpp:
  103792. (WebCore::HTMLKeygenElement::HTMLKeygenElement): Use create function
  103793. instead of new.
  103794. (WebCore::HTMLKeygenElement::create): Added.
  103795. * html/HTMLKeygenElement.h: Made constructor and virtual function
  103796. overrides private, added create function.
  103797. * html/HTMLMapElement.cpp:
  103798. (WebCore::HTMLMapElement::HTMLMapElement):
  103799. (WebCore::HTMLMapElement::create):
  103800. * html/HTMLMapElement.h:
  103801. * html/HTMLMarqueeElement.cpp:
  103802. (WebCore::HTMLMarqueeElement::HTMLMarqueeElement):
  103803. (WebCore::HTMLMarqueeElement::create):
  103804. * html/HTMLMarqueeElement.h:
  103805. * html/HTMLMenuElement.cpp:
  103806. (WebCore::HTMLMenuElement::HTMLMenuElement):
  103807. (WebCore::HTMLMenuElement::create):
  103808. * html/HTMLMenuElement.h:
  103809. * html/HTMLMetaElement.cpp:
  103810. (WebCore::HTMLMetaElement::HTMLMetaElement):
  103811. (WebCore::HTMLMetaElement::create):
  103812. * html/HTMLMetaElement.h:
  103813. * html/HTMLNoScriptElement.cpp:
  103814. (WebCore::HTMLNoScriptElement::HTMLNoScriptElement):
  103815. (WebCore::HTMLNoScriptElement::create):
  103816. (WebCore::HTMLNoScriptElement::childShouldCreateRenderer):
  103817. * html/HTMLNoScriptElement.h:
  103818. * html/HTMLOListElement.cpp:
  103819. (WebCore::HTMLOListElement::HTMLOListElement):
  103820. (WebCore::HTMLOListElement::create):
  103821. * html/HTMLOListElement.h:
  103822. * html/HTMLOptGroupElement.cpp:
  103823. (WebCore::HTMLOptGroupElement::HTMLOptGroupElement):
  103824. (WebCore::HTMLOptGroupElement::create):
  103825. * html/HTMLOptGroupElement.h:
  103826. * html/HTMLOptionElement.cpp:
  103827. (WebCore::HTMLOptionElement::HTMLOptionElement):
  103828. (WebCore::HTMLOptionElement::create):
  103829. * html/HTMLOptionElement.h:
  103830. * html/HTMLParagraphElement.cpp:
  103831. (WebCore::HTMLParagraphElement::HTMLParagraphElement):
  103832. (WebCore::HTMLParagraphElement::create):
  103833. * html/HTMLParagraphElement.h:
  103834. * html/HTMLParamElement.cpp:
  103835. (WebCore::HTMLParamElement::HTMLParamElement):
  103836. (WebCore::HTMLParamElement::create):
  103837. * html/HTMLParamElement.h:
  103838. * html/HTMLPreElement.cpp:
  103839. (WebCore::HTMLPreElement::HTMLPreElement):
  103840. (WebCore::HTMLPreElement::create):
  103841. * html/HTMLPreElement.h:
  103842. * html/HTMLQuoteElement.cpp:
  103843. (WebCore::HTMLQuoteElement::HTMLQuoteElement):
  103844. (WebCore::HTMLQuoteElement::create):
  103845. * html/HTMLQuoteElement.h:
  103846. * html/HTMLScriptElement.cpp:
  103847. (WebCore::HTMLScriptElement::HTMLScriptElement):
  103848. (WebCore::HTMLScriptElement::create):
  103849. * html/HTMLScriptElement.h:
  103850. * html/HTMLSelectElement.cpp:
  103851. (WebCore::HTMLSelectElement::create):
  103852. * html/HTMLSelectElement.h:
  103853. * html/HTMLSourceElement.cpp:
  103854. (WebCore::HTMLSourceElement::HTMLSourceElement):
  103855. (WebCore::HTMLSourceElement::create):
  103856. * html/HTMLSourceElement.h:
  103857. * html/HTMLStyleElement.cpp:
  103858. (WebCore::HTMLStyleElement::HTMLStyleElement):
  103859. (WebCore::HTMLStyleElement::create):
  103860. * html/HTMLStyleElement.h:
  103861. * html/HTMLTableRowElement.cpp:
  103862. (WebCore::HTMLTableRowElement::HTMLTableRowElement):
  103863. (WebCore::HTMLTableRowElement::create):
  103864. (WebCore::HTMLTableRowElement::insertCell):
  103865. * html/HTMLTableRowElement.h:
  103866. * html/HTMLTableSectionElement.cpp:
  103867. (WebCore::HTMLTableSectionElement::HTMLTableSectionElement):
  103868. (WebCore::HTMLTableSectionElement::create):
  103869. (WebCore::HTMLTableSectionElement::insertRow):
  103870. * html/HTMLTableSectionElement.h:
  103871. * html/HTMLTextAreaElement.cpp:
  103872. (WebCore::HTMLTextAreaElement::create):
  103873. * html/HTMLTextAreaElement.h:
  103874. * html/HTMLTitleElement.cpp:
  103875. (WebCore::HTMLTitleElement::HTMLTitleElement):
  103876. (WebCore::HTMLTitleElement::create):
  103877. * html/HTMLTitleElement.h:
  103878. * html/HTMLUListElement.cpp:
  103879. (WebCore::HTMLUListElement::HTMLUListElement):
  103880. (WebCore::HTMLUListElement::create):
  103881. * html/HTMLUListElement.h:
  103882. * html/HTMLVideoElement.cpp:
  103883. (WebCore::HTMLVideoElement::HTMLVideoElement):
  103884. (WebCore::HTMLVideoElement::create):
  103885. * html/HTMLVideoElement.h:
  103886. Made constructors and virtual function overrides private, added
  103887. create function.
  103888. * html/HTMLTableCellElement.cpp:
  103889. (WebCore::HTMLTableCellElement::HTMLTableCellElement): Updated
  103890. names of data members. Renamed _row to m_row, _col to m_col,
  103891. rSpan to m_rowSpan, cSpan to m_colSpan, and removed unused
  103892. rowHeight and m_solid.
  103893. (WebCore::HTMLTableCellElement::create): Added.
  103894. (WebCore::HTMLTableCellElement::parseMappedAttribute): Updated names.
  103895. * html/HTMLTableCellElement.h: Ditto.
  103896. * html/HTMLTableElement.cpp:
  103897. (WebCore::HTMLTableElement::create): Added.
  103898. (WebCore::HTMLTableElement::createTHead): Used create instead of new.
  103899. (WebCore::HTMLTableElement::createTFoot): Ditto.
  103900. (WebCore::HTMLTableElement::insertRow): Ditto.
  103901. * html/HTMLTableElement.h:
  103902. * html/HTMLTablePartElement.h: Made members protected instead of
  103903. public.
  103904. 2010-05-28 Andreas Kling <andreas.kling@nokia.com>
  103905. Reviewed by Kenneth Rohde Christiansen.
  103906. [Qt] REGRESSION(r59837): Incorrect clipping of TransparencyLayers
  103907. https://bugs.webkit.org/show_bug.cgi?id=39784
  103908. Move coordinate transformation from TransparencyLayer to clipToImageBuffer()
  103909. * platform/graphics/qt/GraphicsContextQt.cpp:
  103910. (WebCore::TransparencyLayer::TransparencyLayer):
  103911. (WebCore::GraphicsContext::clipToImageBuffer):
  103912. 2010-05-28 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  103913. Reviewed by Kenneth Rohde Christiansen.
  103914. [EF] Implement methods for supporting PopupMenu
  103915. https://bugs.webkit.org/show_bug.cgi?id=39629
  103916. * platform/PopupMenu.h: add needed attribute
  103917. * platform/efl/PopupMenuEfl.cpp: implement methods to show/hide popup
  103918. menu
  103919. (WebCore::PopupMenu::PopupMenu): initialize new attribute
  103920. (WebCore::PopupMenu::show): ditto.
  103921. (WebCore::PopupMenu::hide): ditto.
  103922. 2010-05-28 Lucas De Marchi <lucas.demarchi@profusion.mobi>
  103923. Reviewed by Kenneth Rohde Christiansen.
  103924. Reorder class initializers to remove compiler warnings.
  103925. https://bugs.webkit.org/show_bug.cgi?id=39596
  103926. * platform/efl/PlatformKeyboardEventEfl.cpp: ditto.
  103927. (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): ditto.
  103928. * platform/efl/PlatformMouseEventEfl.cpp: ditto.
  103929. (WebCore::PlatformMouseEvent::PlatformMouseEvent): ditto.
  103930. * platform/efl/PlatformWheelEventEfl.cpp: ditto
  103931. (WebCore::PlatformWheelEvent::PlatformWheelEvent): ditto.
  103932. 2010-05-27 Jeremy Orlow <jorlow@chromium.org>
  103933. Reviewed by Steve Block.
  103934. Add IndexedDB's IDBIndex
  103935. https://bugs.webkit.org/show_bug.cgi?id=39850
  103936. Flesh out IDBIndex as much as possible until Andrei finishes
  103937. his patch to get around passing Frame*'s all around. I also
  103938. cleaned up a bunch of existing files as I noticed style
  103939. violations (while basing my new files off of the old).
  103940. Not hooked up enough to test. Will add tests soon.
  103941. * Android.derived.jscbindings.mk
  103942. * Android.derived.v8bindings.mk
  103943. * Android.mk
  103944. * CMakeLists.txt
  103945. * DerivedSources.cpp
  103946. * DerivedSources.make
  103947. * GNUmakefile.am
  103948. * WebCore.pri
  103949. * WebCore.pro
  103950. * WebCore.gypi:
  103951. * WebCore.vcproj/WebCore.vcproj
  103952. * WebCore.xcodeproj/project.pbxproj
  103953. * bindings/js/JSIDBAnyCustom.cpp:
  103954. (WebCore::toJS):
  103955. * bindings/v8/custom/V8IDBAnyCustom.cpp:
  103956. (WebCore::toV8):
  103957. * storage/IDBAny.cpp:
  103958. (WebCore::IDBAny::idbIndexRequest):
  103959. (WebCore::IDBAny::set):
  103960. * storage/IDBAny.h:
  103961. (WebCore::IDBAny::):
  103962. * storage/IDBCallbacks.h:
  103963. * storage/IDBDatabase.h:
  103964. * storage/IDBDatabaseError.h:
  103965. (WebCore::IDBDatabaseError::):
  103966. * storage/IDBDatabaseError.idl:
  103967. * storage/IDBDatabaseException.h:
  103968. * storage/IDBDatabaseException.idl:
  103969. * storage/IDBDatabaseImpl.cpp:
  103970. * storage/IDBDatabaseImpl.h:
  103971. * storage/IDBDatabaseRequest.cpp:
  103972. * storage/IDBDatabaseRequest.h:
  103973. * storage/IDBDatabaseRequest.idl:
  103974. * storage/IDBIndex.h: Added.
  103975. (WebCore::IDBIndex::~IDBIndex):
  103976. * storage/IDBIndexImpl.cpp: Added.
  103977. (WebCore::IDBIndexImpl::IDBIndexImpl):
  103978. (WebCore::IDBIndexImpl::~IDBIndexImpl):
  103979. * storage/IDBIndexImpl.h: Added.
  103980. (WebCore::IDBIndexImpl::create):
  103981. (WebCore::IDBIndexImpl::name):
  103982. (WebCore::IDBIndexImpl::keyPath):
  103983. (WebCore::IDBIndexImpl::unique):
  103984. * storage/IDBIndexRequest.cpp: Added.
  103985. (WebCore::IDBIndexRequest::IDBIndexRequest):
  103986. (WebCore::IDBIndexRequest::~IDBIndexRequest):
  103987. * storage/IDBIndexRequest.h: Added.
  103988. (WebCore::IDBIndexRequest::create):
  103989. (WebCore::IDBIndexRequest::name):
  103990. (WebCore::IDBIndexRequest::keyPath):
  103991. (WebCore::IDBIndexRequest::unique):
  103992. * storage/IDBIndexRequest.idl: Added.
  103993. * storage/IDBObjectStore.cpp:
  103994. (WebCore::IDBObjectStore::IDBObjectStore):
  103995. (WebCore::IDBObjectStore::~IDBObjectStore):
  103996. (WebCore::IDBObjectStore::indexNames):
  103997. (WebCore::IDBObjectStore::createIndex):
  103998. (WebCore::IDBObjectStore::index):
  103999. (WebCore::IDBObjectStore::removeIndex):
  104000. * storage/IDBObjectStore.h:
  104001. * storage/IDBObjectStoreRequest.cpp:
  104002. (WebCore::IDBObjectStoreRequest::IDBObjectStoreRequest):
  104003. (WebCore::IDBObjectStoreRequest::name):
  104004. (WebCore::IDBObjectStoreRequest::keyPath):
  104005. (WebCore::IDBObjectStoreRequest::indexNames):
  104006. (WebCore::IDBObjectStoreRequest::createIndex):
  104007. (WebCore::IDBObjectStoreRequest::index):
  104008. (WebCore::IDBObjectStoreRequest::removeIndex):
  104009. * storage/IDBObjectStoreRequest.h:
  104010. * storage/IDBObjectStoreRequest.idl:
  104011. * storage/IDBRequest.cpp:
  104012. (WebCore::IDBRequest::onSuccess):
  104013. * storage/IDBRequest.h:
  104014. * storage/IndexedDatabaseRequest.idl:
  104015. 2010-05-28 Yury Semikhatsky <yurys@chromium.org>
  104016. Reviewed by Pavel Feldman.
  104017. Web Inspector: hide node highlight when inspected page closes.
  104018. https://bugs.webkit.org/show_bug.cgi?id=39872
  104019. * inspector/InspectorController.cpp:
  104020. (WebCore::InspectorController::~InspectorController):
  104021. (WebCore::InspectorController::inspectedPageDestroyed):
  104022. 2010-05-28 Mikhail Naganov <mnaganov@chromium.org>
  104023. Reviewed by Yury Semikhatsky.
  104024. Web Inspector: add Console API for retrieving memory stats
  104025. Add 'console.memory' property which returns an object. Currently
  104026. it has two fields: totalHeapSize and usedHeapSize. Later, it can be
  104027. extended for reporting total browser's memory consumption.
  104028. https://bugs.webkit.org/show_bug.cgi?id=39840
  104029. * bindings/js/JSConsoleCustom.cpp:
  104030. (WebCore::JSConsole::memory):
  104031. * bindings/v8/custom/V8ConsoleCustom.cpp:
  104032. (WebCore::V8Console::memoryAccessorGetter):
  104033. * page/Console.cpp:
  104034. (WebCore::Console::memory):
  104035. * page/Console.h:
  104036. * page/Console.idl:
  104037. 2010-05-28 Xan Lopez <xlopez@igalia.com>
  104038. Add new file to the build system.
  104039. * GNUmakefile.am:
  104040. 2010-05-28 Antti Koivisto <koivisto@iki.fi>
  104041. Reviewed by Kenneth Rohde Christiansen.
  104042. https://bugs.webkit.org/show_bug.cgi?id=39874
  104043. [Qt] Make tiled backing store more configurable
  104044. Make tile size, tile creation delay and tiling area dynamically configurable.
  104045. * platform/graphics/TiledBackingStore.cpp:
  104046. (WebCore::TiledBackingStore::TiledBackingStore):
  104047. (WebCore::TiledBackingStore::setTileSize):
  104048. (WebCore::TiledBackingStore::setTileCreationDelay):
  104049. (WebCore::TiledBackingStore::setKeepAndCoverAreaMultipliers):
  104050. (WebCore::TiledBackingStore::createTiles):
  104051. * platform/graphics/TiledBackingStore.h:
  104052. (WebCore::TiledBackingStore::tileSize):
  104053. (WebCore::TiledBackingStore::tileCreationDelay):
  104054. (WebCore::TiledBackingStore::getKeepAndCoverAreaMultipliers):
  104055. 2010-05-28 Eric Seidel <eric@webkit.org>
  104056. Reviewed by Adam Barth.
  104057. document.write does not work correctly in the HTML5 parser
  104058. https://bugs.webkit.org/show_bug.cgi?id=39828
  104059. Added a new HTML5ScriptRunnerHost interface which
  104060. HTML5Tokenizer implements. This allows HTML5ScriptController
  104061. to delegate the actual ScriptController::executeScript back to
  104062. HTML5Tokenizer. HTML5Tokenizer saves off the current m_source
  104063. before calling ScriptController::executeScript to allow safe
  104064. reentrancy through document.write().
  104065. * WebCore.xcodeproj/project.pbxproj:
  104066. - Added HTML5ScriptRunnerHost.h
  104067. * html/HTML5ScriptRunner.cpp:
  104068. (WebCore::HTML5ScriptRunner::HTML5ScriptRunner):
  104069. (WebCore::HTML5ScriptRunner::~HTML5ScriptRunner):
  104070. - Unregister m_parsingBlockingScript if stopped before
  104071. load completion. This was probably causing some of the
  104072. crashes on page navigation we saw during LayoutTest runs.
  104073. (WebCore::documentURLForScriptExecution):
  104074. - Unify our documentURL handling so all callsites get it right.
  104075. (WebCore::HTML5ScriptRunner::sourceFromPendingScript):
  104076. - Use documentURLForScriptExecution
  104077. (WebCore::HTML5ScriptRunner::executePendingScript):
  104078. - Call stopWatchingForLoad instead of removeClient()
  104079. - Call executeScript instead of ScriptController directly.
  104080. (WebCore::HTML5ScriptRunner::executeScript):
  104081. - Wraps calls to HTML5ScriptRunnerHost::executeScript
  104082. (WebCore::HTML5ScriptRunner::watchForLoad):
  104083. - Wraps calls to HTML5ScriptRunnerHost::watchForLoad
  104084. (WebCore::HTML5ScriptRunner::stopWatchingForLoad):
  104085. - Wraps calls to HTML5ScriptRunnerHost::stopWatchingForLoad
  104086. (WebCore::HTML5ScriptRunner::requestScript):
  104087. - Only watch for load if the CachedScript isn't already loaded.
  104088. This gets rid of rentrancy due to addClient calls, and as a result
  104089. also stops us from hitting ASSERT(m_scriptNestingLevel)
  104090. in executePendingScript.
  104091. (WebCore::HTML5ScriptRunner::runScript):
  104092. - Use the new fancy documentURLForScriptExecution and executeScript.
  104093. * html/HTML5ScriptRunner.h:
  104094. (WebCore::HTML5ScriptRunner::PendingScript::PendingScript):
  104095. - Add a watchingForLoad bool so we know if we ever called watchForLoad
  104096. with this CachedScript*.
  104097. * html/HTML5ScriptRunnerHost.h: Added.
  104098. (WebCore::HTML5ScriptRunnerHost::~HTML5ScriptRunnerHost):
  104099. * html/HTML5Tokenizer.cpp:
  104100. (WebCore::HTML5Tokenizer::HTML5Tokenizer):
  104101. - Store an m_document pointer since we need to access
  104102. m_document->frame()->script() for script execution.
  104103. (WebCore::HTML5Tokenizer::pumpLexer):
  104104. - Always pause or unpause the TreeBuilder after script execution.
  104105. Previously nested script execution would leave the TreeBuilder
  104106. paused even though the top-level loop wanted to resume parsing.
  104107. Now whenever m_scriptRunner->execute returns "continue parsing"
  104108. parsing will actually continue. This fixed cases where we would
  104109. ignore the rest of the document after document.write() of a script tag.
  104110. (WebCore::HTML5Tokenizer::write):
  104111. - Explain how document.write() reentrancy is safe in the new world.
  104112. (WebCore::HTML5Tokenizer::watchForLoad):
  104113. - HTML5ScriptRunnerHost implementation. We assert that this call will
  104114. never cause script execution since that's our current design.
  104115. (WebCore::HTML5Tokenizer::stopWatchingForLoad):
  104116. - HTML5ScriptRunnerHost implementation.
  104117. (WebCore::HTML5Tokenizer::executeScript):
  104118. - HTML5ScriptRunnerHost implementation. Save off the current source
  104119. before executing scripts in case document.write is called during
  104120. script execution.
  104121. * html/HTML5Tokenizer.h:
  104122. - Implement HTML5ScriptRunnerHost.
  104123. 2010-05-28 Nathan Lawrence <nlawrence@apple.com>
  104124. Reviewed by Geoffrey Garen.
  104125. https://bugs.webkit.org/show_bug.cgi?id=39460
  104126. Because not just <img> and <image> elements can preload images, we
  104127. dont want to restrict the element associated with the loader.
  104128. No new tests. Should share the same tests as the last patch.
  104129. * html/HTMLImageLoader.cpp:
  104130. (WebCore::HTMLImageLoader::notifyFinished):
  104131. 2010-05-27 MORITA Hajime <morrita@google.com>
  104132. Reviewed by Ojan Vafai.
  104133. Cursor movement and text selection does not work well if a block is followed by an inline.
  104134. https://bugs.webkit.org/show_bug.cgi?id=32123
  104135. RenderInline::setSelectionState() missed selection state
  104136. propagation for ancestors. This fix pulled
  104137. RenderBlock::setSelectionState() up to RenderBoxModelObject, to
  104138. share it with RenderInline.
  104139. Test: editing/selection/range-between-block-and-inline.html: Added.
  104140. * rendering/RenderBlock.cpp:
  104141. * rendering/RenderBlock.h:
  104142. * rendering/RenderBoxModelObject.cpp:
  104143. (WebCore::RenderBoxModelObject::setSelectionState):
  104144. * rendering/RenderBoxModelObject.h:
  104145. Moved setSelectionState() from RenderBlock to RenderBoxModelObject.
  104146. 2010-05-27 MORITA Hajime <morrita@google.com>
  104147. Not reviewed. Fixed typo
  104148. * rendering/RenderTheme.cpp:
  104149. (WebCore::RenderTheme::adjustStyle):
  104150. 2010-05-27 Darin Adler <darin@apple.com>
  104151. Reviewed by David Levin.
  104152. Make more HTML DOM members private, especially constructors
  104153. https://bugs.webkit.org/show_bug.cgi?id=39697
  104154. Refactoring, so no new tests needed.
  104155. Working my way through HTMLTagNames.in from top to bottom, skipping any
  104156. that are non-trivial for some reason.
  104157. * html/HTMLTagNames.in: Removed createWithNew from audio, base, basefont,
  104158. blockquote, body, br, button, canvas, caption, col, colgroup, datagrid,
  104159. datalist, dcell, dcol, drow, del, dir, dl, and fieldset.
  104160. * mathml/mathtags.in: Removed createWithNew from msub, and msup.
  104161. * dom/Document.cpp:
  104162. (WebCore::Document::implicitClose): Use create function instead of new.
  104163. (WebCore::Document::getCSSCanvasElement): Ditto.
  104164. * editing/IndentOutdentCommand.cpp:
  104165. (WebCore::createIndentBlockquoteElement): Ditto.
  104166. * editing/htmlediting.cpp:
  104167. (WebCore::createBreakElement): Ditto.
  104168. * html/HTMLTableElement.cpp:
  104169. (WebCore::HTMLTableElement::createCaption): Ditto.
  104170. * html/HTMLViewSourceDocument.cpp:
  104171. (WebCore::HTMLViewSourceDocument::createContainingTable): Ditto.
  104172. * rendering/RenderTextControl.cpp:
  104173. (WebCore::RenderTextControl::setInnerTextValue): Ditto.
  104174. * html/HTMLParser.cpp:
  104175. (WebCore::HTMLParser::handleError): Use create function instead of new.
  104176. Required reordering the code slightly, but the new order works fine.
  104177. * html/HTMLAudioElement.cpp:
  104178. (WebCore::HTMLAudioElement::create):
  104179. * html/HTMLAudioElement.h:
  104180. * html/HTMLBRElement.cpp:
  104181. (WebCore::HTMLBRElement::create):
  104182. * html/HTMLBRElement.h:
  104183. * html/HTMLBaseElement.cpp:
  104184. (WebCore::HTMLBaseElement::create):
  104185. * html/HTMLBaseElement.h:
  104186. * html/HTMLBaseFontElement.cpp:
  104187. (WebCore::HTMLBaseFontElement::create):
  104188. * html/HTMLBaseFontElement.h:
  104189. * html/HTMLBlockquoteElement.cpp:
  104190. (WebCore::HTMLBlockquoteElement::create):
  104191. * html/HTMLBlockquoteElement.h:
  104192. * html/HTMLBodyElement.cpp:
  104193. (WebCore::HTMLBodyElement::create):
  104194. * html/HTMLBodyElement.h:
  104195. * html/HTMLButtonElement.cpp:
  104196. (WebCore::HTMLButtonElement::create):
  104197. * html/HTMLButtonElement.h:
  104198. * html/HTMLCanvasElement.cpp:
  104199. (WebCore::HTMLCanvasElement::create):
  104200. * html/HTMLCanvasElement.h:
  104201. * html/HTMLDListElement.cpp:
  104202. (WebCore::HTMLDListElement::create):
  104203. * html/HTMLDListElement.h:
  104204. * html/HTMLDataGridCellElement.cpp:
  104205. (WebCore::HTMLDataGridCellElement::create):
  104206. * html/HTMLDataGridCellElement.h:
  104207. * html/HTMLDataGridColElement.cpp:
  104208. (WebCore::HTMLDataGridColElement::create):
  104209. * html/HTMLDataGridColElement.h:
  104210. * html/HTMLDataGridElement.cpp:
  104211. (WebCore::HTMLDataGridElement::create):
  104212. * html/HTMLDataGridElement.h:
  104213. * html/HTMLDataGridRowElement.cpp:
  104214. (WebCore::HTMLDataGridRowElement::create):
  104215. * html/HTMLDataGridRowElement.h:
  104216. * html/HTMLDataListElement.cpp:
  104217. (WebCore::HTMLDataListElement::create):
  104218. * html/HTMLDataListElement.h:
  104219. * html/HTMLElement.cpp:
  104220. (WebCore::HTMLElement::setInnerText):
  104221. * html/HTMLFieldSetElement.cpp:
  104222. (WebCore::HTMLFieldSetElement::create):
  104223. * html/HTMLFieldSetElement.h:
  104224. * html/HTMLModElement.cpp:
  104225. (WebCore::HTMLModElement::HTMLModElement):
  104226. (WebCore::HTMLModElement::create):
  104227. * html/HTMLModElement.h:
  104228. * html/HTMLTableCaptionElement.cpp:
  104229. (WebCore::HTMLTableCaptionElement::create):
  104230. * html/HTMLTableCaptionElement.h:
  104231. Made constructors and virtual function overrides private, added create functions.
  104232. Made constructors inline in cases where they were called in only one place.
  104233. * html/HTMLTableColElement.cpp:
  104234. (WebCore::HTMLTableColElement::HTMLTableColElement): Changed data member name
  104235. from _span to m_span.
  104236. (WebCore::HTMLTableColElement::create): Added.
  104237. (WebCore::HTMLTableColElement::parseMappedAttribute): Updated to use m_span.
  104238. * html/HTMLTableColElement.h:
  104239. Made constructor and virtual function overrides private, added create function.
  104240. Renamed _span to m_span.
  104241. 2010-05-27 Kwang Yul Seo <skyul@company100.net>
  104242. Reviewed by Darin Adler.
  104243. wx port: build fix for Linux
  104244. https://bugs.webkit.org/show_bug.cgi?id=39860
  104245. Use uint16_t instead of uint16.
  104246. * plugins/PluginPackageNone.cpp:
  104247. (WebCore::PluginPackage::NPVersion):
  104248. 2010-05-27 Nathan Lawrence <nlawrence@apple.com>
  104249. Reviewed by Geoffrey Garen.
  104250. https://bugs.webkit.org/show_bug.cgi?id=39460
  104251. Fixes the issue where images prefetched by JavaScript do not report
  104252. their memory usage to the GC.
  104253. There is a new test manual-tests/image-prefetch-stress.html that loads
  104254. a new 4MB image every half a second.
  104255. * html/HTMLImageLoader.cpp:
  104256. (WebCore::HTMLImageLoader::notifyFinished):
  104257. * manual-tests/image-prefetch-stress.html: Added.
  104258. 2010-05-27 Eric Uhrhane <ericu@chromium.org>
  104259. Reviewed by Adam Barth.
  104260. Add v8 bindings for async DB API in workers
  104261. https://bugs.webkit.org/show_bug.cgi?id=39145
  104262. No new tests. This should share layout tests with JSC.
  104263. Tweak the callback generation to switch lots of Frame* to ScriptExecutionContext*, and use the context passed in to handleEvent where possible.
  104264. * bindings/scripts/CodeGeneratorV8.pm:
  104265. As with CodeGeneratorV8; these are pretty much all tiny tweaks.
  104266. We do have to use a slightly different patch for callback invocation in invokeCallback, as V8Proxy::retrieve() doesn't work in the worker context.
  104267. * bindings/v8/custom/V8CustomPositionCallback.cpp:
  104268. (WebCore::V8CustomPositionCallback::handleEvent):
  104269. * bindings/v8/custom/V8CustomPositionErrorCallback.cpp:
  104270. (WebCore::V8CustomPositionErrorCallback::handleEvent):
  104271. * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:
  104272. (WebCore::V8SQLStatementErrorCallback::handleEvent):
  104273. * bindings/v8/custom/V8CustomVoidCallback.cpp:
  104274. (WebCore::V8CustomVoidCallback::V8CustomVoidCallback):
  104275. (WebCore::V8CustomVoidCallback::handleEvent):
  104276. (WebCore::invokeCallback):
  104277. * bindings/v8/custom/V8CustomVoidCallback.h:
  104278. (WebCore::V8CustomVoidCallback::create):
  104279. * bindings/v8/custom/V8DOMWindowCustom.cpp:
  104280. (WebCore::V8DOMWindow::openDatabaseCallback):
  104281. * bindings/v8/custom/V8DatabaseCustom.cpp:
  104282. (WebCore::V8Database::changeVersionCallback):
  104283. (WebCore::createTransaction):
  104284. * bindings/v8/custom/V8DatabaseSyncCustom.cpp:
  104285. (WebCore::V8DatabaseSync::changeVersionCallback):
  104286. (WebCore::createTransaction):
  104287. * bindings/v8/custom/V8NotificationCenterCustom.cpp:
  104288. (WebCore::V8NotificationCenter::requestPermissionCallback):
  104289. * bindings/v8/custom/V8SQLTransactionCustom.cpp:
  104290. (WebCore::V8SQLTransaction::executeSqlCallback):
  104291. Add openDatabaseCallback.
  104292. * bindings/v8/custom/V8WorkerContextCustom.cpp:
  104293. (WebCore::V8WorkerContext::openDatabaseCallback):
  104294. Remove an obsolete parameter.
  104295. (WebCore::V8WorkerContext::openDatabaseSyncCallback):
  104296. 2010-05-27 Pavel Feldman <pfeldman@chromium.org>
  104297. Reviewed by Yury Semikhatsky.
  104298. Web Inspector: [REGRESSION] Query parameters are not displayed in the resources headers section.
  104299. https://bugs.webkit.org/show_bug.cgi?id=39848
  104300. * inspector/front-end/ResourceView.js:
  104301. (WebInspector.ResourceView):
  104302. (WebInspector.ResourceView.prototype._refreshRequestPayload):
  104303. 2010-05-27 Nico Weber <thakis@chromium.org>
  104304. Reviewed by Eric Seidel
  104305. https://bugs.webkit.org/show_bug.cgi?id=39092
  104306. Add Yank support to chromium mac. Do this by moving WebKit Mac's
  104307. implementation of Editor::yankFromKillRing() into its own class and
  104308. then using that.
  104309. * editing/Editor.cpp:
  104310. Use new KillRing class.
  104311. * editing/Editor.h:
  104312. (WebCore::Editor::killRing):
  104313. Use new KillRing class.
  104314. * editing/EditorCommand.cpp:
  104315. (WebCore::executeYankAndSelect):
  104316. Use new KillRing class.
  104317. * platform/KillRing.h:
  104318. Add new KillRing class, which acts as null object.
  104319. (WebCore::KillRing::~KillRing):
  104320. * platform/mac/KillRingMac.h:
  104321. Add new KillRingMac class, which writes to the mac's kill ring.
  104322. * platform/mac/KillRingMac.mm:
  104323. Add new KillRingMac class, which writes to the mac's kill ring.
  104324. 2010-05-27 Ben Murdoch <benm@google.com>
  104325. Reviewed by Jian Li.
  104326. Build break in FileStream.cpp
  104327. https://bugs.webkit.org/show_bug.cgi?id=39841
  104328. When ENABLE_BLOB_SLICE is not defined, an undefined variable is used
  104329. in FileStream.cpp:114. Fix by using the correct variable.
  104330. Build fix so no new tests.
  104331. * html/FileStream.cpp:
  104332. (WebCore::FileStream::openForRead): Replace undefined variable with a defined one.
  104333. 2010-05-27 Hans Wennborg <hans@chromium.org>
  104334. Reviewed by Jeremy Orlow.
  104335. [Chromium] Default popup window size should not depend on zoom level
  104336. https://bugs.webkit.org/show_bug.cgi?id=39835
  104337. V8DOMWindow::openCallback should not set width and height of new
  104338. window unless specified in the function's arguments.
  104339. There is already code to reset the new window's origin coordinates,
  104340. but the same thing should be done to its dimensions as well. Otherwise,
  104341. a new popup with unspecified size will have its size depending on the
  104342. parent's zoom level, which is not desirable.
  104343. This is the same as what is done in
  104344. bindings/js/JSDOMWindowCustom.cpp:826.
  104345. * bindings/v8/custom/V8DOMWindowCustom.cpp:
  104346. (WebCore::V8DOMWindow::openCallback):
  104347. 2010-05-27 Anders Bakken <agbakken@gmail.com>
  104348. Reviewed by David Levin.
  104349. qt_instance.cpp has coding-style errors
  104350. https://bugs.webkit.org/show_bug.cgi?id=39744
  104351. Fix webkit coding style issues in qt_instance.cpp
  104352. * bridge/qt/qt_instance.cpp:
  104353. (JSC::Bindings::QtInstance::getQtInstance):
  104354. (JSC::Bindings::QtInstance::removeCachedMethod):
  104355. (JSC::Bindings::QtInstance::markAggregate):
  104356. (JSC::Bindings::QtInstance::getPropertyNames):
  104357. (JSC::Bindings::QtInstance::stringValue):
  104358. (JSC::Bindings::QtField::name):
  104359. (JSC::Bindings::QtField::valueFromInstance):
  104360. 2010-05-27 Anders Bakken <agbakken@gmail.com>
  104361. Reviewed by David Levin.
  104362. qt_instance.h has coding-style errors
  104363. https://bugs.webkit.org/show_bug.cgi?id=39743
  104364. Fix webkit coding style issues in qt_instance.h
  104365. * bridge/qt/qt_instance.h:
  104366. 2010-05-27 Anders Bakken <agbakken@gmail.com>
  104367. Reviewed by David Levin.
  104368. qt_class.h has coding-style errors
  104369. https://bugs.webkit.org/show_bug.cgi?id=39742
  104370. Fix webkit coding style issues in qt_class.h
  104371. * bridge/qt/qt_class.h:
  104372. 2010-05-27 Eric Carlson <eric.carlson@apple.com>
  104373. Reviewed by Darin Adler.
  104374. <rdar://problem/8016158> Crash in CVPixelBufferCreateResolvedAttributesDictionary with RLE
  104375. compressed movie.
  104376. Configure the visual context to generate Direct3D compatible pixel buffers when we are able to
  104377. use a CAImageQueue so there will be less conversion required before display. This change also
  104378. works around the issue that causes the RLE compressed movie to crash.
  104379. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
  104380. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::load): Pass enum to QTMovieVisualContext
  104381. constructor instead of CFDictionary.
  104382. * platform/graphics/win/QTMovieVisualContext.cpp:
  104383. (SetNumberValue):
  104384. (getPixelBufferCreationOptions): New, create options dictionary appropriate for the visual
  104385. context type.
  104386. (pixelBufferCreationOptions): New, return options dictionary appropriate for the visual
  104387. context type.
  104388. (QTMovieVisualContextPriv::QTMovieVisualContextPriv): Get the options dictionary from
  104389. getPixelBufferCreationOptions insteaad of taking it as a parameter.
  104390. (QTMovieVisualContext::QTMovieVisualContext): Take enum instead of CFDictionary for
  104391. visual context configuration type.
  104392. * platform/graphics/win/QTMovieVisualContext.h:
  104393. 2010-05-27 Anders Carlsson <andersca@apple.com>
  104394. Reviewed by Adam Roben.
  104395. [Qt] REGRESSION(r60258): It broke 10 tests.
  104396. https://bugs.webkit.org/show_bug.cgi?id=39819
  104397. * plugins/qt/PluginDataQt.cpp:
  104398. (WebCore::PluginData::initPlugins):
  104399. Append the MimeClassInfo object after it's been initialized.
  104400. 2010-05-27 Kevin Ollivier <kevino@theolliviers.com>
  104401. [wx] Build fixes for Windows after recent changes.
  104402. * platform/graphics/wx/FontWx.cpp:
  104403. * wscript:
  104404. 2010-05-27 Chris Fleizach <cfleizach@apple.com>
  104405. No review, build fixage.
  104406. Bug 39324 - AX: WebKit doesn't call [super -accessibilityAttributeValue:attribute forParameter:] when it encounters a parameterized attribute that it doesn't handle.
  104407. https://bugs.webkit.org/show_bug.cgi?id=39324
  104408. Rolling out change from r60307 until a better fix is ready.
  104409. * accessibility/mac/AccessibilityObjectWrapper.mm:
  104410. (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
  104411. 2010-05-27 Yury Semikhatsky <yurys@chromium.org>
  104412. Reviewed by Pavel Feldman.
  104413. [v8] Web Inspector: check that ScriptDebugListener was not removed
  104414. while messages were dispatched in the nested loop.
  104415. https://bugs.webkit.org/show_bug.cgi?id=39838
  104416. * bindings/v8/ScriptDebugServer.cpp:
  104417. (WebCore::ScriptDebugServer::handleV8DebugEvent):
  104418. 2010-05-27 Yury Semikhatsky <yurys@chromium.org>
  104419. Reviewed by Pavel Feldman.
  104420. [v8] Web Inspector: undefined script URL value should be converted to an emtpy
  104421. WebCore::String instead of "undefined" string. Otherwise it's shown
  104422. in the Scripts panel with "undefined:<line no>" URL.
  104423. https://bugs.webkit.org/show_bug.cgi?id=39845
  104424. * bindings/v8/ScriptDebugServer.cpp:
  104425. (WebCore::ScriptDebugServer::dispatchDidParseSource):
  104426. 2010-05-27 Chris Fleizach <cfleizach@apple.com>
  104427. Reviewed by Darin Adler.
  104428. AX: WebKit doesn't call [super -accessibilityAttributeValue:attribute forParameter:] when it encounters a parameterized attribute that it doesn't handle.
  104429. https://bugs.webkit.org/show_bug.cgi?id=39324
  104430. Make sure that accessibilityAttributeValue:forParameter: will default to its super's implementation. This is how AppKit expects objects to behave.
  104431. * accessibility/mac/AccessibilityObjectWrapper.mm:
  104432. (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
  104433. 2010-05-27 Xan Lopez <xlopez@igalia.com>
  104434. More GTK+ distcheck fixes.
  104435. * GNUmakefile.am:
  104436. 2010-05-27 Yury Semikhatsky <yurys@chromium.org>
  104437. Reviewed by Pavel Feldman.
  104438. [v8] Web Inspector: notify ScriptDebugListener when execution is resumed
  104439. https://bugs.webkit.org/show_bug.cgi?id=39838
  104440. * bindings/v8/ScriptDebugServer.cpp:
  104441. (WebCore::ScriptDebugServer::handleV8DebugEvent):
  104442. 2010-05-27 Anders Bakken <agbakken@gmail.com>
  104443. Reviewed by David Levin.
  104444. qt_pixmapruntime.cpp has coding-style errors
  104445. https://bugs.webkit.org/show_bug.cgi?id=39745
  104446. Fix webkit coding style issues in qt_pixmapruntime.cpp
  104447. * bridge/qt/qt_pixmapruntime.cpp:
  104448. 2010-05-26 Jeremy Orlow <jorlow@chromium.org>
  104449. Reviewed by Steve Block.
  104450. Clean up IndexedDB layout tests
  104451. https://bugs.webkit.org/show_bug.cgi?id=39748
  104452. Remove an assert that always fires.
  104453. Tests: storage/indexeddb/idb-database-request.html
  104454. storage/indexeddb/indexed-database-request.html
  104455. * storage/IDBDatabaseImpl.cpp:
  104456. (WebCore::IDBDatabaseImpl::objectStores):
  104457. 2010-05-27 Pavel Feldman <pfeldman@chromium.org>
  104458. Reviewed by Yury Semikhatsky.
  104459. Web Inspector: Get CSS rule offsets lazily.
  104460. https://bugs.webkit.org/show_bug.cgi?id=39832
  104461. * inspector/InspectorCSSStore.cpp:
  104462. (WebCore::InspectorCSSStore::getStartEndOffsets):
  104463. * inspector/InspectorDOMAgent.cpp:
  104464. (WebCore::InspectorDOMAgent::buildObjectForRule):
  104465. 2010-05-27 Anders Bakken <agbakken@gmail.com>
  104466. Reviewed by David Levin.
  104467. qt_class.cpp has coding-style errors
  104468. https://bugs.webkit.org/show_bug.cgi?id=39741
  104469. Fix webkit coding style issues in qt_class.cpp
  104470. * bridge/qt/qt_class.cpp:
  104471. (JSC::Bindings::QtClass::fieldNamed):
  104472. 2010-05-27 Eric Seidel <eric@webkit.org>
  104473. Reviewed by Darin Adler.
  104474. Remove bit-rotten INSTRUMENT_LAYOUT_SCHEDULING code from HTMLTokenizer
  104475. https://bugs.webkit.org/show_bug.cgi?id=39714
  104476. This came from a discussion on #webkit with Hyatt about this code
  104477. being old and no longer used to either of our knowledge.
  104478. No functional changes, thus no tests.
  104479. I also removed a bogus FIXME I had added in an earlier patch
  104480. before I understood what the HTMLTokenizer was trying to do.
  104481. * html/HTMLTokenizer.cpp:
  104482. (WebCore::HTMLTokenizer::scriptHandler):
  104483. (WebCore::HTMLTokenizer::scriptExecution):
  104484. (WebCore::HTMLTokenizer::continueProcessing):
  104485. (WebCore::HTMLTokenizer::willWriteHTML):
  104486. (WebCore::HTMLTokenizer::didWriteHTML):
  104487. (WebCore::HTMLTokenizer::timerFired):
  104488. (WebCore::HTMLTokenizer::executeExternalScriptsIfReady):
  104489. 2010-05-27 Anton Muhin <antonm@chromium.org>
  104490. Reviewed by Adam Barth.
  104491. Add callbacks to ScriptController to allow notifications on named items additions and removals
  104492. https://bugs.webkit.org/show_bug.cgi?id=39679
  104493. * bindings/js/ScriptController.h: Callbacks with empty implementation added.
  104494. (WebCore::ScriptController::namedItemAdded):
  104495. (WebCore::ScriptController::namedItemRemoved):
  104496. * bindings/v8/ScriptController.cpp: Empty implementation of callbacks.
  104497. (WebCore::ScriptController::namedItemAdded):
  104498. (WebCore::ScriptController::namedItemRemoved):
  104499. * bindings/v8/ScriptController.h: Callbacks added.
  104500. * html/HTMLDocument.cpp: Hooking in callbacks.
  104501. (WebCore::HTMLDocument::addItemToMap):
  104502. (WebCore::HTMLDocument::removeItemFromMap):
  104503. * html/HTMLDocument.h:
  104504. 2010-05-27 Zhenyao Mo <zmo@google.com>
  104505. Reviewed by Dimitri Glazkov.
  104506. Implement lazy clearing of renderbuffers
  104507. https://bugs.webkit.org/show_bug.cgi?id=36248
  104508. Test: fast/canvas/webgl/renderbuffer-initialization.html
  104509. * html/canvas/WebGLFramebuffer.cpp:
  104510. (WebCore::WebGLFramebuffer::WebGLFramebuffer): Init added members.
  104511. (WebCore::WebGLFramebuffer::setAttachment): Set attachment object.
  104512. (WebCore::WebGLFramebuffer::onBind): Perform buffer clearing if needed.
  104513. (WebCore::WebGLFramebuffer::onAttachedObjectChange): Ditto.
  104514. (WebCore::WebGLFramebuffer::isUninitialized): Check whether an attached object is uninitialized renderbuffer.
  104515. (WebCore::WebGLFramebuffer::setInitialized): After initialize a renderbuffer, set the flag.
  104516. (WebCore::WebGLFramebuffer::initializeRenderbuffers): Clear un-initialized renderbuffers if framebuffer is complete.
  104517. * html/canvas/WebGLFramebuffer.h:
  104518. (WebCore::WebGLFramebuffer::isDepthAttached): Changed to check object.
  104519. (WebCore::WebGLFramebuffer::isStencilAttached): Ditto.
  104520. (WebCore::WebGLFramebuffer::isDepthStencilAttached): Ditto.
  104521. * html/canvas/WebGLRenderbuffer.cpp:
  104522. (WebCore::WebGLRenderbuffer::WebGLRenderbuffer): Init added members.
  104523. * html/canvas/WebGLRenderbuffer.h:
  104524. (WebCore::WebGLRenderbuffer::isInitialized): As the function name.
  104525. (WebCore::WebGLRenderbuffer::setInitialized): Ditto.
  104526. * html/canvas/WebGLRenderingContext.cpp:
  104527. (WebCore::WebGLRenderingContext::bindFramebuffer): Call onBind().
  104528. (WebCore::WebGLRenderingContext::copyTexImage2D): Call onAttachedObjectChange().
  104529. (WebCore::WebGLRenderingContext::deleteRenderbuffer): Ditto.
  104530. (WebCore::WebGLRenderingContext::deleteTexture): Ditto.
  104531. (WebCore::WebGLRenderingContext::framebufferRenderbuffer): Call setAttachment.
  104532. (WebCore::WebGLRenderingContext::framebufferTexture2D): Call onAttachedObjectChange().
  104533. (WebCore::WebGLRenderingContext::renderbufferStorage): Ditto.
  104534. (WebCore::WebGLRenderingContext::texImage2DBase): Ditto.
  104535. * platform/graphics/mac/GraphicsContext3DMac.cpp:
  104536. (WebCore::GraphicsContext3D::reshape): Initialize internal buffers.
  104537. 2010-05-27 Kristian Monsen <kristianm@google.com>
  104538. Reviewed by Darin Adler.
  104539. Compile fix for Android, added include for Refcounted.h, this did not get
  104540. included through Threading.h in Android.
  104541. https://bugs.webkit.org/show_bug.cgi?id=39678
  104542. Build fix only, no new tests.
  104543. * storage/SQLTransactionSyncCallback.h:
  104544. 2010-05-27 Joone Hur <joone@kldp.org>
  104545. Reviewed by Xan Lopez.
  104546. Add GtkVersioning.h in ScrollbackGtk.cpp for maintaining compatibility with the previous GTK+
  104547. https://bugs.webkit.org/show_bug.cgi?id=39567
  104548. * platform/gtk/ScrollbarGtk.cpp:
  104549. 2010-05-27 Hans Wennborg <hans@chromium.org>
  104550. Reviewed by Alexey Proskuryakov.
  104551. Increase limit on number of (i)frames from 200 to 1000.
  104552. https://bugs.webkit.org/show_bug.cgi?id=39427
  104553. The limit on number of iframes was introduced in r3707 back in 2003.
  104554. An example of a page that is broken because of this is:
  104555. http://vimcolorschemetest.googlecode.com/svn/html/index-c.html
  104556. Neither Firefox nor IE has such a limit.
  104557. It seems that WebKit can handle a significantly higher number of frames, and
  104558. the original reasons for imposing the limit are believed to be gone.
  104559. Tests: compositing/iframes/lots-of-iframes.html
  104560. compositing/iframes/lots-of-objects.html
  104561. * html/HTMLFrameElementBase.cpp:
  104562. (WebCore::HTMLFrameElementBase::isURLAllowed):
  104563. * page/FrameTree.cpp:
  104564. (WebCore::FrameTree::uniqueChildName):
  104565. * page/Page.h:
  104566. * rendering/RenderEmbeddedObject.cpp:
  104567. (WebCore::isURLAllowed):
  104568. 2010-05-27 Kwang Yul Seo <skyul@company100.net>
  104569. Reviewed by Xan Lopez.
  104570. [GTK] writeToFile fails when length is large
  104571. https://bugs.webkit.org/show_bug.cgi?id=39666
  104572. writeToFile forgot to increment data pointer.
  104573. * platform/gtk/FileSystemGtk.cpp:
  104574. (WebCore::writeToFile):
  104575. 2010-05-26 David Hyatt <hyatt@apple.com>
  104576. Reviewed by Sam Weinig.
  104577. https://bugs.webkit.org/show_bug.cgi?id=39783, clean up the moveChild functions on RenderBlock.
  104578. Eliminate the need to pass the toChildrenList to the moveChild functions by tightening up the type of the
  104579. |to| argument to be a RenderBlock.
  104580. Add a moveChildrenTo function that can move a range of children, and patch places that were doing this
  104581. by hand.
  104582. Make the append forms of the functions just use the insert forms with a beforeChild of 0.
  104583. Patch insertChildNode in RenderObjectChildList so that it passes the fullInsert parameter through in the
  104584. case where it does an append.
  104585. Add an assert to RenderLayer that catches bad structure built when the fullInsert/Remove parameters are
  104586. messed up when using append/insertChildNode.
  104587. * rendering/RenderBlock.cpp:
  104588. (WebCore::RenderBlock::splitAnonymousBlocksAroundChild):
  104589. (WebCore::RenderBlock::makeChildrenAnonymousColumnBlocks):
  104590. (WebCore::RenderBlock::createAndAppendRootInlineBox):
  104591. (WebCore::RenderBlock::moveChildTo):
  104592. (WebCore::RenderBlock::moveChildrenTo):
  104593. (WebCore::RenderBlock::makeChildrenNonInline):
  104594. (WebCore::RenderBlock::removeChild):
  104595. * rendering/RenderBlock.h:
  104596. (WebCore::RenderBlock::moveChildTo):
  104597. (WebCore::RenderBlock::moveAllChildrenTo):
  104598. (WebCore::RenderBlock::moveChildrenTo):
  104599. * rendering/RenderLayer.cpp:
  104600. (WebCore::RenderLayer::addChild):
  104601. * rendering/RenderObjectChildList.cpp:
  104602. (WebCore::RenderObjectChildList::insertChildNode):
  104603. * rendering/RenderRubyBase.cpp:
  104604. (WebCore::RenderRubyBase::moveInlineChildren):
  104605. 2010-05-27 Eric Seidel <eric@webkit.org>
  104606. Reviewed by Adam Barth.
  104607. Add <pre>/<listing> hack to HTML5Lexer to fix the last remaining HTML5 test suite regressions
  104608. https://bugs.webkit.org/show_bug.cgi?id=39818
  104609. HTML parsers are supposed to ignore the first \n after a <pre> or <listing> tag
  104610. for authoring convenience. Our new HTML5Lexer didn't have this hack yet
  104611. so there were 4 HTML5 tests failing. Fixing this fixed the last of the HTML5
  104612. test suite regressions using the HTML5Lexer vs the old lexer.
  104613. * html/HTML5Lexer.cpp:
  104614. (WebCore::HTML5Lexer::reset):
  104615. (WebCore::HTML5Lexer::nextToken):
  104616. * html/HTML5Lexer.h:
  104617. (WebCore::HTML5Lexer::skipLeadingNewLineForListing):
  104618. * html/HTML5TreeBuilder.cpp:
  104619. (WebCore::HTML5TreeBuilder::passTokenToLegacyParser):
  104620. 2010-05-26 Eric Seidel <eric@webkit.org>
  104621. Reviewed by Adam Barth.
  104622. Teach the HTML5 parser how to handle external scripts
  104623. https://bugs.webkit.org/show_bug.cgi?id=39716
  104624. Make it possible for the HTML5Tokenizer to run external scripts.
  104625. I created a new class HTML5ScriptRunner to hold all of the
  104626. script-logic which is scattered throughout the old HTMLTokenizer.
  104627. The design is for the HTML5Tokenizer (the "controller") to hold
  104628. the Lexer, TreeBuilder and ScriptRunner. The Lexer returns back
  104629. to the controller, which passes tokens to the TreeBuilder. When the
  104630. treebuilder encounters a </script> tag it pauses itself and returns
  104631. back to the controller which calls the ScriptRunner. The TreeBuilder
  104632. is un-paused when the HTML5Tokenizer calls takeScriptToProcess().
  104633. The ScriptRunner attempts to process the passed script, and additionally
  104634. any blocked scripts it can. It returns to the controller indicating if
  104635. parsing should continue. If not, callbacks when external scripts load
  104636. or when stylesheets are finished parsing will cause the controller to
  104637. kick off script execution and parsing again at a later point.
  104638. * WebCore.xcodeproj/project.pbxproj:
  104639. - Add HTML5ScriptRunner.*
  104640. * bindings/js/CachedScriptSourceProvider.h:
  104641. - Add missing include discovered while building.
  104642. * dom/ScriptElement.cpp:
  104643. (WebCore::ScriptElement::finishParsingChildren):
  104644. - Remove previous hack for inline <script> execution.
  104645. * dom/ScriptElement.h:
  104646. - Explain the HTML5 spec names for m_evaluated and m_createdByParser.
  104647. * html/HTML5ScriptRunner.cpp: Added.
  104648. (WebCore::HTML5ScriptRunner::HTML5ScriptRunner):
  104649. - The HTML5Tokenizer is passed to the HTML5ScriptRunner as a
  104650. CachedResourceClient. The HTML5ScriptRunner will register the
  104651. HTML5Tokenizer for notifyFinished callbacks when the scripts load.
  104652. The HTML5Tokenizer is expected to call the HTML5ScriptRunner to
  104653. execute any loaded scripts at that point.
  104654. (WebCore::HTML5ScriptRunner::~HTML5ScriptRunner):
  104655. (WebCore::HTML5ScriptRunner::frame): Helper method.
  104656. (WebCore::createScriptLoadEvent): Helper method.
  104657. (WebCore::createScriptErrorEvent): Helper method.
  104658. (WebCore::HTML5ScriptRunner::sourceFromPendingScript):
  104659. - Helper method for dealing with both inline and external script types.
  104660. (WebCore::HTML5ScriptRunner::isPendingScriptReady):
  104661. - Helper for dealing with both inline and external scripts.
  104662. (WebCore::HTML5ScriptRunner::executePendingScript):
  104663. - Execute one script. Both external and inline scripts
  104664. can become m_parsingBlockingScript if they can't be executed
  104665. immediately after parsing.
  104666. (WebCore::HTML5ScriptRunner::execute):
  104667. - Takes a script element from the tree builder and tries
  104668. to process it.
  104669. (WebCore::HTML5ScriptRunner::executeParsingBlockingScripts):
  104670. - Runs the current parsing blocking script if ready.
  104671. - Running a script could add another parsing blocking script
  104672. so we loop until there is no ready-to-run parsing blocking script.
  104673. (WebCore::HTML5ScriptRunner::executeScriptsWaitingForLoad):
  104674. - Called by HTML5Tokenizer when a script loads.
  104675. (WebCore::HTML5ScriptRunner::executeScriptsWaitingForStylesheets):
  104676. - Called by HTML5Tokenizer when stylesheets complete.
  104677. (WebCore::HTML5ScriptRunner::requestScript):
  104678. - Transcription of the HTML5 spec.
  104679. (WebCore::HTML5ScriptRunner::runScript):
  104680. - Transcription of the HTML5 spec.
  104681. * html/HTML5ScriptRunner.h: Added.
  104682. - New class to handle script loading and execution for the HTML5 parser.
  104683. * html/HTML5Tokenizer.cpp:
  104684. (WebCore::HTML5Tokenizer::HTML5Tokenizer):
  104685. - Create a HTML5ScriptRunner and pass it "this" as the CachedResourceClient.
  104686. (WebCore::HTML5Tokenizer::pumpLexer):
  104687. - When the parser is paused, try to run scripts.
  104688. (WebCore::HTML5Tokenizer::write):
  104689. - Only pump the lexer when the parser is not paused.
  104690. (WebCore::HTML5Tokenizer::end):
  104691. - finish() tells us that we've reached EOF, not end()
  104692. - Only pump the lexer when the parser is not paused.
  104693. (WebCore::HTML5Tokenizer::finish):
  104694. - Mark EOF, and end() if we're not waiting on scripts.
  104695. (WebCore::HTML5Tokenizer::isWaitingForScripts):
  104696. - isPaused() seems to mean isPausedForExternalScripts().
  104697. (WebCore::HTML5Tokenizer::resumeParsingAfterScriptExecution):
  104698. (WebCore::HTML5Tokenizer::notifyFinished):
  104699. (WebCore::HTML5Tokenizer::executeScriptsWaitingForStylesheets):
  104700. * html/HTML5Tokenizer.h:
  104701. * html/HTML5TreeBuilder.cpp:
  104702. (WebCore::HTML5TreeBuilder::HTML5TreeBuilder):
  104703. - Add an m_isPaused flag.
  104704. (WebCore::HTML5TreeBuilder::handleScriptStartTag):
  104705. (WebCore::HTML5TreeBuilder::handleScriptEndTag):
  104706. (WebCore::HTML5TreeBuilder::takeScriptToProcess):
  104707. - Acknowledge that the caller has received the script element.
  104708. It is the caller's responsibility to execute the script if necessary
  104709. and re-pause the tree builder if necessary.
  104710. (WebCore::HTML5TreeBuilder::passTokenToLegacyParser):
  104711. - Save off the current script tag so that it can be passed to
  104712. the HTML5ScriptRunner when we're paused.
  104713. * html/HTML5TreeBuilder.h:
  104714. (WebCore::HTML5TreeBuilder::setPaused):
  104715. (WebCore::HTML5TreeBuilder::isPaused):
  104716. 2010-05-26 Adam Barth <abarth@webkit.org>
  104717. Reviewed by Darin Adler.
  104718. Implement SegmentedString::lookAheadSlowCase
  104719. https://bugs.webkit.org/show_bug.cgi?id=39802
  104720. The slow case is need by the resumer test suite. Sadly, the resumer
  104721. test suite is really slow and produces infinite errors (many of which
  104722. are false positives). I'll land more of the resumer test suite in a
  104723. future patch.
  104724. * platform/text/SegmentedString.cpp:
  104725. (WebCore::SegmentedString::advance):
  104726. * platform/text/SegmentedString.h:
  104727. (WebCore::SegmentedString::lookAhead):
  104728. (WebCore::SegmentedString::lookAheadIgnoringCase):
  104729. (WebCore::SegmentedString::equalsLiterally):
  104730. (WebCore::SegmentedString::equalsIgnoringCase):
  104731. (WebCore::SegmentedString::lookAheadInline):
  104732. (WebCore::SegmentedString::lookAheadSlowCase):
  104733. 2010-05-26 Jer Noble <jer.noble@apple.com>
  104734. Patch edited by Adele Peterson and Mark Rowe.
  104735. Reviewed by Eric Carlson
  104736. Video elements show no video on Windows machines that do not support accelerated compositing
  104737. https://bugs.webkit.org/show_bug.cgi?id=39446
  104738. rdar://problem/7999794
  104739. Create the visual context in setUpVideoRendering (as opposed to in load), and destroy it in
  104740. tearDownVideoRendering (as opposed to in the destructor.)
  104741. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
  104742. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::~MediaPlayerPrivateQuickTimeVisualContext):
  104743. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::load): Moved creation of the visual context to setUpVideoRendering.
  104744. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::paint): Return early if the visual context isn't set up.
  104745. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::currentRenderingMode): If the visual context isn't set up,
  104746. return MediaRenderingNone.
  104747. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::setUpVideoRendering): Create the visual context.
  104748. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::tearDownVideoRendering): Destroy the visual context.
  104749. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::hasSetUpVideoRendering): For software rendering mode,
  104750. make sure the visual context has been set up when saying the setup has been done.
  104751. * platform/graphics/win/QTMovieVisualContext.cpp:
  104752. (QTMovieVisualContextPriv::~QTMovieVisualContextPriv): Destruction moved to tearDownVideoRendering.
  104753. Also, make sure to cancel the visual context's newImageAvailable callback in the visual context's destructor.
  104754. (QTMovieVisualContext::create): Added.
  104755. * platform/graphics/win/QTMovieVisualContext.h:
  104756. 2010-05-26 Gustavo Noronha Silva <gns@gnome.org>
  104757. Build fixes for make distcheck.
  104758. * GNUmakefile.am:
  104759. 2010-05-26 Zelidrag Hornung <zelidrag@chromium.org>
  104760. Reviewed by Ojan Vafai.
  104761. Fixed frame page up/down scrolling calculation. Made sure that the
  104762. cursor moves with page up/down event. Please note that now for mac
  104763. editing behavior we will scroll the content to center the cursor on
  104764. page up/down while other platforms will align the cursor with the top of
  104765. displayed frame.
  104766. https://bugs.webkit.org/show_bug.cgi?id=38213
  104767. Tests: editing/input/option-page-up-down.html (fixed)
  104768. editing/input/scroll-viewport-page-up-down.html
  104769. * WebCore.base.exp:
  104770. * editing/EditorCommand.cpp:
  104771. (WebCore::verticalScrollDistance): Fixed page scroll calculation. Now scroll height is calculated only from the visible portion not the entire frame height.
  104772. (WebCore::executeMovePageDown): Now it can tell SelectionController to move the cursor with the page scroll up/down events.
  104773. (WebCore::executeMovePageDownAndModifySelection): Ditto.
  104774. (WebCore::executeMovePageUp): Ditto.
  104775. (WebCore::executeMovePageUpAndModifySelection): Ditto.
  104776. * editing/SelectionController.cpp:
  104777. * editing/SelectionController.cpp: Exposed an enum param that lets EditorCommand.cpp control how cursor position will be aligned when page moves.
  104778. (WebCore::SelectionController::setSelection): Ditto.
  104779. (WebCore::SelectionController::modify): Ditto.
  104780. * editing/SelectionController.h: Ditto.
  104781. (WebCore::SelectionController::): Ditto.
  104782. (WebCore::SelectionController::setSelection): Ditto.
  104783. 2010-05-26 Jaime Yap <jaimeyap@google.com>
  104784. Reviewed by Pavel Feldman.
  104785. ScriptCallStack::callLocation() sometimes passed an empty handle to
  104786. toWebCoreString() causing a null pointer deref.
  104787. https://bugs.webkit.org/show_bug.cgi?id=39681
  104788. * bindings/v8/ScriptCallStack.cpp:
  104789. (WebCore::ScriptCallStack::callLocation):
  104790. 2010-05-26 Brian Weinstein <bweinstein@apple.com>
  104791. Reviewed by Mark Rowe.
  104792. Web Inspector: Tooltip on Pause on Exceptions doesn't show up until it is clicked.
  104793. https://bugs.webkit.org/show_bug.cgi?id=39804
  104794. Initialize the title attribute of the Pause on Exceptions button when we initialize other information
  104795. about it.
  104796. * inspector/front-end/ScriptsPanel.js:
  104797. (WebInspector.ScriptsPanel):
  104798. 2010-05-26 Adam Barth <abarth@webkit.org>
  104799. Unreviewed, rolling out r60262.
  104800. http://trac.webkit.org/changeset/60262
  104801. https://bugs.webkit.org/show_bug.cgi?id=39783
  104802. Broke every build and is blocking me from working. :(
  104803. * rendering/RenderBlock.cpp:
  104804. (WebCore::RenderBlock::splitAnonymousBlocksAroundChild):
  104805. (WebCore::RenderBlock::makeChildrenAnonymousColumnBlocks):
  104806. (WebCore::RenderBlock::moveChildTo):
  104807. (WebCore::RenderBlock::moveAllChildrenTo):
  104808. (WebCore::RenderBlock::makeChildrenNonInline):
  104809. (WebCore::RenderBlock::removeChild):
  104810. * rendering/RenderBlock.h:
  104811. * rendering/RenderLayer.cpp:
  104812. (WebCore::RenderLayer::addChild):
  104813. * rendering/RenderObjectChildList.cpp:
  104814. (WebCore::RenderObjectChildList::insertChildNode):
  104815. * rendering/RenderRubyBase.cpp:
  104816. (WebCore::RenderRubyBase::moveInlineChildren):
  104817. (WebCore::RenderRubyBase::moveBlockChildren):
  104818. (WebCore::RenderRubyBase::mergeBlockChildren):
  104819. 2010-05-26 Anders Carlsson <andersca@apple.com>
  104820. Unreviewed, rolling out r60256.
  104821. http://trac.webkit.org/changeset/60256
  104822. https://bugs.webkit.org/show_bug.cgi?id=39382
  104823. Causes fast/dom/prototype-inheritance-2.html to start
  104824. crashing.
  104825. * history/PageCache.cpp:
  104826. (WebCore::PageCache::PageCache):
  104827. (WebCore::PageCache::add):
  104828. * history/PageCache.h:
  104829. (WebCore::PageCache::get):
  104830. * loader/DocumentLoader.cpp:
  104831. (WebCore::DocumentLoader::commitIfReady):
  104832. * loader/FrameLoader.cpp:
  104833. (WebCore::FrameLoader::canCachePageContainingThisFrame):
  104834. (WebCore::FrameLoader::canCachePage):
  104835. (WebCore::pageCacheLogPrefix):
  104836. (WebCore::pageCacheLog):
  104837. (WebCore::FrameLoader::logCanCachePageDecision):
  104838. (WebCore::FrameLoader::logCanCacheFrameDecision):
  104839. (WebCore::FrameLoader::commitProvisionalLoad):
  104840. (WebCore::FrameLoader::open):
  104841. (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
  104842. (WebCore::FrameLoader::loadProvisionalItemFromCachedPage):
  104843. (WebCore::FrameLoader::cachePageForHistoryItem):
  104844. (WebCore::FrameLoader::navigateToDifferentDocument):
  104845. * loader/FrameLoader.h:
  104846. * svg/graphics/SVGImage.cpp:
  104847. (WebCore::SVGImage::dataChanged):
  104848. 2010-05-26 David Hyatt <hyatt@apple.com>
  104849. Reviewed by Sam Weinig.
  104850. https://bugs.webkit.org/show_bug.cgi?id=39783, clean up the moveChild functions on RenderBlock.
  104851. Eliminate the need to pass the toChildrenList to the moveChild functions by tightening up the type of the
  104852. |to| argument to be a RenderBlock.
  104853. Add a moveChildrenTo function that can move a range of children, and patch places that were doing this
  104854. by hand.
  104855. Make the append forms of the functions just use the insert forms with a beforeChild of 0.
  104856. Patch insertChildNode in RenderObjectChildList so that it passes the fullInsert parameter through in the
  104857. case where it does an append.
  104858. Add an assert to RenderLayer that catches bad structure built when the fullInsert/Remove parameters are
  104859. messed up when using append/insertChildNode.
  104860. * rendering/RenderBlock.cpp:
  104861. (WebCore::RenderBlock::splitAnonymousBlocksAroundChild):
  104862. (WebCore::RenderBlock::makeChildrenAnonymousColumnBlocks):
  104863. (WebCore::RenderBlock::createAndAppendRootInlineBox):
  104864. (WebCore::RenderBlock::moveChildTo):
  104865. (WebCore::RenderBlock::moveChildrenTo):
  104866. (WebCore::RenderBlock::makeChildrenNonInline):
  104867. (WebCore::RenderBlock::removeChild):
  104868. * rendering/RenderBlock.h:
  104869. (WebCore::RenderBlock::moveChildTo):
  104870. (WebCore::RenderBlock::moveAllChildrenTo):
  104871. (WebCore::RenderBlock::moveChildrenTo):
  104872. * rendering/RenderLayer.cpp:
  104873. (WebCore::RenderLayer::addChild):
  104874. * rendering/RenderObjectChildList.cpp:
  104875. (WebCore::RenderObjectChildList::insertChildNode):
  104876. * rendering/RenderRubyBase.cpp:
  104877. (WebCore::RenderRubyBase::moveInlineChildren):
  104878. 2010-05-26 Anders Carlsson <andersca@apple.com>
  104879. Fix GTK+ test failures.
  104880. * plugins/gtk/PluginDataGtk.cpp:
  104881. (WebCore::PluginData::initPlugins):
  104882. * plugins/win/PluginDataWin.cpp:
  104883. (WebCore::PluginData::initPlugins):
  104884. 2010-05-25 Anders Carlsson <andersca@apple.com>
  104885. Reviewed by Darin Adler.
  104886. Clean up MimeClassInfo and PluginInfo
  104887. https://bugs.webkit.org/show_bug.cgi?id=39700
  104888. This gets rid of all the heap allocation from MimeClassInfo and PluginInfo.
  104889. It also changes the m_plugins and m_mimes vectors in PluginData to not hold heap allocated MimeClassInfo
  104890. and PluginClassInfo objects.
  104891. * page/Page.cpp:
  104892. (WebCore::Page::refreshPlugins):
  104893. * plugins/MimeType.cpp:
  104894. (WebCore::MimeType::type):
  104895. (WebCore::MimeType::suffixes):
  104896. (WebCore::MimeType::description):
  104897. (WebCore::MimeType::enabledPlugin):
  104898. * plugins/MimeType.h:
  104899. (WebCore::MimeType::mimeClassInfo):
  104900. * plugins/MimeTypeArray.cpp:
  104901. (WebCore::MimeTypeArray::item):
  104902. (WebCore::MimeTypeArray::canGetItemsForName):
  104903. (WebCore::MimeTypeArray::namedItem):
  104904. * plugins/Plugin.cpp:
  104905. (WebCore::Plugin::name):
  104906. (WebCore::Plugin::filename):
  104907. (WebCore::Plugin::description):
  104908. (WebCore::Plugin::length):
  104909. (WebCore::Plugin::item):
  104910. (WebCore::Plugin::canGetItemsForName):
  104911. (WebCore::Plugin::namedItem):
  104912. * plugins/Plugin.h:
  104913. (WebCore::Plugin::pluginInfo):
  104914. * plugins/PluginArray.cpp:
  104915. (WebCore::PluginArray::length):
  104916. (WebCore::PluginArray::item):
  104917. (WebCore::PluginArray::canGetItemsForName):
  104918. (WebCore::PluginArray::namedItem):
  104919. (WebCore::PluginArray::pluginData):
  104920. * plugins/PluginArray.h:
  104921. * plugins/PluginData.cpp:
  104922. (WebCore::PluginData::PluginData):
  104923. (WebCore::PluginData::~PluginData):
  104924. (WebCore::PluginData::supportsMimeType):
  104925. (WebCore::PluginData::pluginNameForMimeType):
  104926. * plugins/PluginData.h:
  104927. (WebCore::operator==):
  104928. (WebCore::PluginData::create):
  104929. (WebCore::PluginData::disconnectPage):
  104930. (WebCore::PluginData::page):
  104931. (WebCore::PluginData::plugins):
  104932. (WebCore::PluginData::mimes):
  104933. * plugins/chromium/PluginDataChromium.cpp:
  104934. (WebCore::PluginCache::reset):
  104935. (WebCore::PluginCache::plugins):
  104936. (WebCore::PluginData::initPlugins):
  104937. (WebCore::getPluginMimeTypeFromExtension):
  104938. * plugins/gtk/PluginDataGtk.cpp:
  104939. (WebCore::PluginData::initPlugins):
  104940. * plugins/mac/PluginDataMac.mm:
  104941. (WebCore::PluginData::initPlugins):
  104942. * plugins/qt/PluginDataQt.cpp:
  104943. (WebCore::PluginData::initPlugins):
  104944. * plugins/win/PluginDataWin.cpp:
  104945. (WebCore::PluginData::initPlugins):
  104946. * plugins/wx/PluginDataWx.cpp:
  104947. (WebCore::PluginData::initPlugins):
  104948. 2010-05-26 Nate Chapin <japhet@chromium.org>
  104949. Reviewed by Adam Barth.
  104950. Factor PageCache functionality out of FrameLoader and into
  104951. PageCache.
  104952. https://bugs.webkit.org/show_bug.cgi?id=39382
  104953. Refactor only, so no new tests.
  104954. * history/PageCache.cpp:
  104955. (WebCore::pageCacheLogPrefix):
  104956. (WebCore::pageCacheLog):
  104957. (WebCore::logCanCacheFrameDecision):
  104958. (WebCore::logCanCachePageDecision):
  104959. (WebCore::PageCache::canCachePageContainingThisFrame):
  104960. (WebCore::PageCache::canCache):
  104961. (WebCore::PageCache::add):
  104962. (WebCore::PageCache::get):
  104963. * history/PageCache.h:
  104964. * loader/DocumentLoader.cpp:
  104965. * loader/FrameLoader.cpp:
  104966. (WebCore::FrameLoader::commitProvisionalLoad):
  104967. (WebCore::FrameLoader::prepareForCachedPageRestore):
  104968. (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
  104969. (WebCore::FrameLoader::loadProvisionalItemFromCachedPage):
  104970. (WebCore::FrameLoader::navigateToDifferentDocument):
  104971. * loader/FrameLoader.h:
  104972. (WebCore::FrameLoader::quickRedirectComing):
  104973. * svg/graphics/SVGImage.cpp:
  104974. 2010-05-26 Peter Kasting <pkasting@google.com>
  104975. Reviewed by Adam Barth.
  104976. https://bugs.webkit.org/show_bug.cgi?id=39786
  104977. Properly reset |bytes_to_consume| when reaching the "gif_done" state in
  104978. the open-source GIF decoder.
  104979. No tests, since there's no test harness support for checking the
  104980. internal ImageDecoder state values.
  104981. * platform/image-decoders/gif/GIFImageReader.cpp:
  104982. (GIFImageReader::read): Use a macro to perform the state change, like we do everywhere else in the file. Also correctly return "failure" for certain corrupt GIFs, since that doesn't prevent their display (due to WebKit's different use of this code compared to Mozilla).
  104983. 2010-05-26 Sheriff Bot <webkit.review.bot@gmail.com>
  104984. Unreviewed, rolling out r60251.
  104985. http://trac.webkit.org/changeset/60251
  104986. https://bugs.webkit.org/show_bug.cgi?id=39788
  104987. broke tests (Requested by dhyatt on #webkit).
  104988. * rendering/RenderBlock.cpp:
  104989. (WebCore::RenderBlock::moveChildTo):
  104990. (WebCore::RenderBlock::moveAllChildrenTo):
  104991. (WebCore::RenderBlock::makeChildrenNonInline):
  104992. (WebCore::RenderBlock::removeChild):
  104993. * rendering/RenderBlock.h:
  104994. * rendering/RenderRubyBase.cpp:
  104995. (WebCore::RenderRubyBase::moveInlineChildren):
  104996. (WebCore::RenderRubyBase::moveBlockChildren):
  104997. (WebCore::RenderRubyBase::mergeBlockChildren):
  104998. * rendering/RenderRubyRun.cpp:
  104999. (WebCore::RenderRubyRun::removeChild):
  105000. 2010-05-26 Adam Barth <abarth@webkit.org>
  105001. Reviewed by Eric Seidel.
  105002. Fix webkit01.dat resumer tests in HTML5 parser
  105003. https://bugs.webkit.org/show_bug.cgi?id=39796
  105004. To match the old tokenizer, we should only flush character tokens when
  105005. we reach EOF. Added a notion of a "closed" segmented string that
  105006. cannot be appended to, which models EOF.
  105007. * html/HTML5Lexer.cpp:
  105008. (WebCore::HTML5Lexer::nextToken):
  105009. (WebCore::HTML5Lexer::shouldEmitBufferedCharacterToken):
  105010. * html/HTML5Lexer.h:
  105011. * html/HTML5Tokenizer.cpp:
  105012. (WebCore::HTML5Tokenizer::pumpLexer):
  105013. (WebCore::HTML5Tokenizer::write):
  105014. (WebCore::HTML5Tokenizer::end):
  105015. * html/HTML5Tokenizer.h:
  105016. * platform/text/SegmentedString.cpp:
  105017. (WebCore::SegmentedString::SegmentedString):
  105018. (WebCore::SegmentedString::clear):
  105019. (WebCore::SegmentedString::append):
  105020. * platform/text/SegmentedString.h:
  105021. (WebCore::SegmentedString::SegmentedString):
  105022. (WebCore::SegmentedString::close):
  105023. (WebCore::SegmentedString::isClosed):
  105024. 2010-05-26 Adam Barth <abarth@webkit.org>
  105025. Reviewed by Eric Seidel.
  105026. Make HTML5 lexer not ASSERT when resuming partial parses
  105027. https://bugs.webkit.org/show_bug.cgi?id=39755
  105028. I'm working through a variation of the webkit-runner.html test suite
  105029. that stops the parser at every character to make sure we can resume
  105030. parsing correctly. This patch fixes some errors caught by ASSERTs,
  105031. which prevent the basic tests from running to completion. There's a
  105032. bunch more work to do, however.
  105033. Test: html5lib/webkit-resumer.html
  105034. * html/HTML5Lexer.cpp:
  105035. (WebCore::HTMLNames::isEndTagBufferingState):
  105036. (WebCore::HTML5Lexer::nextToken):
  105037. (WebCore::HTML5Lexer::addToPossibleEndTag):
  105038. * html/HTML5Lexer.h:
  105039. * html/HTML5Tokenizer.cpp:
  105040. (WebCore::HTML5Tokenizer::write):
  105041. * html/HTML5Tokenizer.h:
  105042. 2010-05-26 Alexey Proskuryakov <ap@apple.com>
  105043. Mac 32 bit build fix.
  105044. * platform/graphics/mac/SimpleFontDataMac.mm: (WebCore::SimpleFontData::platformInit):
  105045. Use static_cast instead of narrowPrecisionToFloat - the latter can't convert from float to float.
  105046. 2010-05-26 David Hyatt <hyatt@apple.com>
  105047. Reviewed by Ojan.
  105048. https://bugs.webkit.org/show_bug.cgi?id=39783, clean up moveChild functions in RenderBlock.
  105049. Cut out the need to pass the to block's child list by tightening up the type of the to object
  105050. from RenderObject to RenderBlock.
  105051. Implement the "append" versions of the move functions using their "insert" counterparts, since
  105052. insertChildNode just calls appendChildNode when beforeChild is 0 anyway.
  105053. Add comments explaining why the default for fullRemoveInsert is false, and make sure all forms
  105054. of the move functions have the optional parameter for consistency.
  105055. * rendering/RenderBlock.cpp:
  105056. (WebCore::RenderBlock::createAndAppendRootInlineBox):
  105057. (WebCore::RenderBlock::moveChildTo):
  105058. (WebCore::RenderBlock::moveAllChildrenTo):
  105059. (WebCore::RenderBlock::makeChildrenNonInline):
  105060. (WebCore::RenderBlock::removeChild):
  105061. * rendering/RenderBlock.h:
  105062. (WebCore::RenderBlock::moveChildTo):
  105063. (WebCore::RenderBlock::moveAllChildrenTo):
  105064. * rendering/RenderRubyBase.cpp:
  105065. (WebCore::RenderRubyBase::moveInlineChildren):
  105066. (WebCore::RenderRubyBase::moveBlockChildren):
  105067. (WebCore::RenderRubyBase::mergeBlockChildren):
  105068. * rendering/RenderRubyRun.cpp:
  105069. (WebCore::RenderRubyRun::removeChild):
  105070. 2010-05-26 Dan Bernstein <mitz@apple.com>
  105071. Typed and reviewed by Alexey Proskuryakov.
  105072. https://bugs.webkit.org/show_bug.cgi?id=39682
  105073. <rdar://problem/8026774> REGRESSION: WebKit nightly adding insane height to div at random
  105074. Test: fast/css/custom-font-xheight.html
  105075. * platform/graphics/mac/SimpleFontDataMac.mm: (WebCore::SimpleFontData::platformInit):
  105076. Calling an Objective C method that returns a structure with a null object can leave garbage in
  105077. returned value. Custom fonts don't have an NSFont, they only have a CGFont. Call
  105078. platformBoundsForGlyph() function instead, which works with CGFont.
  105079. (WebCore::SimpleFontData::platformBoundsForGlyph): Fixed to work on Tiger (for fonts that
  105080. have an NSFont), since this is now used in more cases.
  105081. 2010-05-26 Beth Dakin <bdakin@apple.com>
  105082. Build fix for Mac clean builds.
  105083. * storage/IDBDatabaseRequest.idl:
  105084. 2010-05-26 Eric Carlson <eric.carlson@apple.com>
  105085. Reviewed by Dan Bernstein.
  105086. Must not cast between CFNumberRef and CFBooleanRef.
  105087. <rdar://problem/8030739>
  105088. https://bugs.webkit.org/show_bug.cgi?id=39756
  105089. * platform/graphics/win/QTMovieVisualContext.cpp:
  105090. (QTMovieVisualContext::getCGImageOptions): QuickTime assumes the value associated
  105091. with kCVPixelBufferCGImageCompatibilityKey is a CFBoolean, so add one.
  105092. 2010-05-26 Xan Lopez <xlopez@igalia.com>
  105093. GTK+ build fix, strike two.
  105094. * bindings/gobject/WebKitDOMEventTarget.cpp:
  105095. (webkit_dom_event_target_get_type):
  105096. (webkit_dom_event_target_default_init):
  105097. 2010-05-26 Jeremy Orlow <jorlow@chromium.org>
  105098. Unreviewed build fix for Windows + clean up the Visual Studio project.
  105099. * WebCore.gypi:
  105100. * WebCore.vcproj/WebCore.vcproj:
  105101. 2010-05-26 Andrei Popescu <andreip@google.com>
  105102. Reviewed by Jeremy Orlow.
  105103. Indexed Database component is missing IDBObjectStoreRequest interface
  105104. https://bugs.webkit.org/show_bug.cgi?id=39490
  105105. Adding IDL and stub implementation for IDBObjectStoreRequest.
  105106. No new tests, indexed database isn't yet testable.
  105107. * DerivedSources.cpp:
  105108. * DerivedSources.make:
  105109. * GNUmakefile.am:
  105110. * WebCore.gypi:
  105111. * WebCore.pri:
  105112. * WebCore.pro:
  105113. * WebCore.xcodeproj/project.pbxproj:
  105114. * bindings/js/JSIDBObjectStoreRequestCustom.cpp: Added.
  105115. (WebCore::JSIDBObjectStoreRequest::remove):
  105116. (WebCore::JSIDBObjectStoreRequest::addOrModify):
  105117. (WebCore::JSIDBObjectStoreRequest::modify):
  105118. (WebCore::JSIDBObjectStoreRequest::add):
  105119. (WebCore::JSIDBObjectStoreRequest::get):
  105120. * bindings/v8/custom/V8IDBObjectStoreRequestCustom.cpp: Added.
  105121. (WebCore::V8IDBObjectStoreRequest::removeCallback):
  105122. (WebCore::V8IDBObjectStoreRequest::addOrModifyCallback):
  105123. (WebCore::V8IDBObjectStoreRequest::modifyCallback):
  105124. (WebCore::V8IDBObjectStoreRequest::addCallback):
  105125. (WebCore::V8IDBObjectStoreRequest::getCallback):
  105126. * storage/IDBObjectStore.cpp: Added.
  105127. * storage/IDBObjectStore.h: Added.
  105128. (WebCore::IDBObjectStore::~IDBObjectStore):
  105129. * storage/IDBObjectStoreRequest.cpp: Added.
  105130. (WebCore::IDBObjectStoreRequest::name):
  105131. (WebCore::IDBObjectStoreRequest::keyPath):
  105132. (WebCore::IDBObjectStoreRequest::IDBObjectStoreRequest):
  105133. * storage/IDBObjectStoreRequest.h: Added.
  105134. (WebCore::IDBObjectStoreRequest::create):
  105135. (WebCore::IDBObjectStoreRequest::~IDBObjectStoreRequest):
  105136. * storage/IDBObjectStoreRequest.idl: Added.
  105137. 2010-05-26 Xan Lopez <xlopez@igalia.com>
  105138. Unreviewed GTK+ build fix.
  105139. Use G_DEFINE_INTERFACE only if it's available.
  105140. * bindings/gobject/WebKitDOMEventTarget.cpp:
  105141. (webkit_dom_event_target_get_type):
  105142. (webkit_dom_event_target_default_init):
  105143. 2010-05-26 Jeremy Orlow <jorlow@chromium.org>
  105144. Reviewed by Darin Fisher.
  105145. Implement WebDOMStorageList and make WebIDBDatabase use it
  105146. https://bugs.webkit.org/show_bug.cgi?id=39731
  105147. Remove unused function.
  105148. * dom/DOMStringList.h:
  105149. 2010-05-26 Jessie Berlin <jberlin@webkit.org>
  105150. Reviewed by Pavel Feldman
  105151. Bug 31296 - Web Inspector: Should support console.groupCollapsed
  105152. https://bugs.webkit.org/show_bug.cgi?id=31296
  105153. * inspector/InspectorController.cpp:
  105154. (WebCore::InspectorController::startGroup):
  105155. Set the message type based on whether or not it should be initially collapsed.
  105156. * inspector/InspectorController.h:
  105157. * inspector/front-end/ConsoleView.js:
  105158. Treat a StartGroupCollapsed message the same way as a StartGroup message, but display the tree for the group as collapsed.
  105159. (WebInspector.ConsoleView.prototype.addMessage):
  105160. (WebInspector.ConsoleMessage.prototype.toMessageElement):
  105161. (WebInspector.ConsoleMessage.prototype.toString):
  105162. (WebInspector.ConsoleGroup.prototype.addMessage):
  105163. * page/Console.cpp:
  105164. (WebCore::Console::groupCollapsed):
  105165. Create a group and indicate that it should be collapsed.
  105166. * page/Console.h:
  105167. Add the StartGroupCollapsed message type.
  105168. (WebCore::):
  105169. * page/Console.idl:
  105170. Create the JS bindings for groupCollapsed.
  105171. 2010-05-26 yael aharon <yael.aharon@nokia.com>
  105172. Reviewed by Kent Tamura.
  105173. Support the labels attribute in labelable form controls
  105174. https://bugs.webkit.org/show_bug.cgi?id=38713
  105175. Added a new cache type in NodeRareData to store the new cache type.
  105176. This cache is created on demand.
  105177. Added the "labels" attribute to all form controls that support this attribute.
  105178. Tests: fast/forms/labels-add-htmlFor-label.html
  105179. fast/forms/labels-add-parent-label.html
  105180. fast/forms/labels-change-htmlFor-attribute.html
  105181. fast/forms/labels-item-index.html
  105182. fast/forms/labels-remove-htmlFor-attribute.html
  105183. fast/forms/labels-remove-htmlFor-label.html
  105184. fast/forms/labels-remove-parent-label.html
  105185. fast/forms/labels-set-htmlFor-attribute.html
  105186. * CMakeLists.txt:
  105187. * GNUmakefile.am:
  105188. * WebCore.gypi:
  105189. * WebCore.pro:
  105190. * WebCore.vcproj/WebCore.vcproj:
  105191. * WebCore.xcodeproj/project.pbxproj:
  105192. * dom/Node.cpp:
  105193. (WebCore::Node::notifyLocalNodeListsLabelChanged):
  105194. (WebCore::Node::removeCachedLabelsNodeList):
  105195. (WebCore::NodeListsNodeData::invalidateCaches):
  105196. (WebCore::NodeListsNodeData::invalidateCachesThatDependOnAttributes):
  105197. (WebCore::NodeListsNodeData::isEmpty):
  105198. * dom/Node.h:
  105199. * dom/NodeRareData.h:
  105200. (WebCore::NodeListsNodeData::NodeListsNodeData):
  105201. * html/HTMLButtonElement.idl:
  105202. * html/HTMLFormControlElement.cpp:
  105203. (WebCore::HTMLFormControlElement::isLabelable):
  105204. (WebCore::HTMLFormControlElement::labels):
  105205. * html/HTMLFormControlElement.h:
  105206. * html/HTMLInputElement.idl:
  105207. * html/HTMLLabelElement.cpp:
  105208. (WebCore::HTMLLabelElement::parseMappedAttribute):
  105209. * html/HTMLLabelElement.h:
  105210. * html/HTMLMeterElement.idl:
  105211. * html/HTMLProgressElement.idl:
  105212. * html/HTMLSelectElement.idl:
  105213. * html/HTMLTextAreaElement.idl:
  105214. * html/LabelsNodeList.cpp: Added.
  105215. (WebCore::LabelsNodeList::LabelsNodeList):
  105216. (WebCore::LabelsNodeList::~LabelsNodeList):
  105217. (WebCore::LabelsNodeList::nodeMatches):
  105218. * html/LabelsNodeList.h: Added.
  105219. (WebCore::LabelsNodeList::create):
  105220. 2010-05-26 Xan Lopez <xlopez@igalia.com>
  105221. Reviewed by Jeremy Orlow.
  105222. Style fix in JSEventCustom.cpp
  105223. https://bugs.webkit.org/show_bug.cgi?id=39727
  105224. Conditional includes should be all together after the
  105225. unconditional includes.
  105226. * bindings/js/JSEventCustom.cpp:
  105227. 2010-05-24 Jeremy Orlow <jorlow@chromium.org>
  105228. Reviewed by Steve Block.
  105229. Add IDBDatabase's attributes
  105230. https://bugs.webkit.org/show_bug.cgi?id=39602
  105231. Add the attributes (like name, description, etc) for
  105232. IDBDatabaseRequest. Plumb that back to the IDBDatabase
  105233. object which stores the data.
  105234. CMake and Android build changes in another CL (that
  105235. fixes other stuff too).
  105236. Updated the layout test, but there's some further testing
  105237. that needs to be added once the Chromium side of this lands.
  105238. * GNUmakefile.am
  105239. * WebCore.gypi:
  105240. * WebCore.pro
  105241. * WebCore.vcproj/WebCore.vcproj
  105242. * WebCore.xcodeproj/project.pbxproj
  105243. * dom/DOMStringList.h:
  105244. (WebCore::DOMStringList::strings):
  105245. * storage/IDBDatabase.cpp: Removed.
  105246. * storage/IDBDatabase.h:
  105247. * storage/IDBDatabaseImpl.cpp: Added.
  105248. (WebCore::IDBDatabaseImpl::IDBDatabaseImpl):
  105249. (WebCore::IDBDatabaseImpl::~IDBDatabaseImpl):
  105250. (WebCore::IDBDatabaseImpl::objectStores):
  105251. * storage/IDBDatabaseImpl.h: Added.
  105252. (WebCore::IDBDatabaseImpl::create):
  105253. (WebCore::IDBDatabaseImpl::name):
  105254. (WebCore::IDBDatabaseImpl::description):
  105255. (WebCore::IDBDatabaseImpl::version):
  105256. * storage/IDBDatabaseRequest.h:
  105257. (WebCore::IDBDatabaseRequest::name):
  105258. (WebCore::IDBDatabaseRequest::description):
  105259. (WebCore::IDBDatabaseRequest::version):
  105260. (WebCore::IDBDatabaseRequest::objectStores):
  105261. * storage/IDBDatabaseRequest.idl:
  105262. * storage/IDBSuccessEvent.cpp:
  105263. (WebCore::IDBSuccessEvent::IDBSuccessEvent):
  105264. * storage/IndexedDatabaseImpl.cpp:
  105265. (WebCore::IndexedDatabaseImpl::open):
  105266. * storage/IndexedDatabaseImpl.h:
  105267. 2010-05-26 Xan Lopez <xlopez@igalia.com>
  105268. Reviewed by NOBODY Gustavo Noronha.
  105269. [GTK] Add support for DOM events in the GObject DOM bindings
  105270. https://bugs.webkit.org/show_bug.cgi?id=38844
  105271. Add actual GObject event objects to the DOM event signals.
  105272. * GNUmakefile.am:
  105273. * bindings/gobject/GObjectEventListener.cpp:
  105274. (WebCore::GObjectEventListener::handleEvent):
  105275. * bindings/gobject/WebKitDOMBinding.cpp:
  105276. (WebKit::wrapEventTarget):
  105277. (WebKit::kit):
  105278. * bindings/gobject/WebKitDOMBinding.h:
  105279. * bindings/gobject/WebKitDOMEventTarget.cpp: Added.
  105280. (webkit_dom_event_target_default_init):
  105281. (webkit_dom_event_target_dispatch_event):
  105282. * bindings/gobject/WebKitDOMEventTarget.h: Added.
  105283. * bindings/scripts/CodeGeneratorGObject.pm:
  105284. 2010-05-24 Jeremy Orlow <jorlow@chromium.org>
  105285. Reviewed by Steve Block.
  105286. [Android] Add IndexedDB to the build
  105287. https://bugs.webkit.org/show_bug.cgi?id=39593
  105288. Add the current list of build files to Android's make files. From now on,
  105289. I'll try to be sure to update these along with the rest.
  105290. Also, fix a nit in the gypi file.
  105291. No tests..just changing build files.
  105292. * Android.derived.jscbindings.mk:
  105293. * Android.derived.v8bindings.mk:
  105294. * Android.mk:
  105295. * WebCore.gypi:
  105296. 2010-05-26 Alexander Pavlov <apavlov@chromium.org>
  105297. Reviewed by Pavel Feldman.
  105298. Expose CSS rule body start/end offsets in the parent stylesheet
  105299. https://bugs.webkit.org/show_bug.cgi?id=38906
  105300. CSSParser::parseSheet() accepts an optional external Vector where the start/end offsets
  105301. of the CSSStyleRule bodies, relative to the beginning of the stylesheet, will be stored.
  105302. This Vector is only used when the Web Inspector needs the body ranges, thus there is no
  105303. memory overhead until the user starts editing styles via the Web Inspector.
  105304. Additionally, fixed an issue with a single inspectorStyleSheet for all frames in the page.
  105305. Test: inspector/styles-source-offsets.html
  105306. * css/CSSGrammar.y:
  105307. * css/CSSParser.cpp:
  105308. (WebCore::CSSParser::CSSParser):
  105309. (WebCore::CSSParser::setupParser):
  105310. (WebCore::CSSParser::parseSheet):
  105311. (WebCore::CSSParser::createStyleRule):
  105312. (WebCore::CSSParser::updateLastSelectorLineAndPosition):
  105313. (WebCore::CSSParser::markRuleBodyStart):
  105314. (WebCore::CSSParser::markRuleBodyEnd):
  105315. * css/CSSParser.h:
  105316. (WebCore::CSSParser::resetRuleBodyMarks):
  105317. * inspector/InspectorCSSStore.cpp:
  105318. (WebCore::InspectorCSSStore::InspectorCSSStore):
  105319. (WebCore::InspectorCSSStore::reset):
  105320. (WebCore::InspectorCSSStore::removeDocument):
  105321. (WebCore::InspectorCSSStore::inspectorStyleSheet):
  105322. (WebCore::InspectorCSSStore::getStartEndOffsets):
  105323. (WebCore::InspectorCSSStore::getIndexInStyleRules):
  105324. (WebCore::InspectorCSSStore::disabledStyleForId):
  105325. (WebCore::InspectorCSSStore::styleForId):
  105326. (WebCore::InspectorCSSStore::ruleForId):
  105327. (WebCore::InspectorCSSStore::bindStyle):
  105328. (WebCore::InspectorCSSStore::bindStyleSheet):
  105329. (WebCore::InspectorCSSStore::bindRule):
  105330. * inspector/InspectorCSSStore.h:
  105331. * inspector/InspectorController.cpp:
  105332. (WebCore::InspectorController::InspectorController):
  105333. (WebCore::InspectorController::resourceForURL):
  105334. * inspector/InspectorController.h:
  105335. (WebCore::InspectorController::inspectorFrontend):
  105336. * inspector/InspectorDOMAgent.cpp:
  105337. (WebCore::InspectorDOMAgent::InspectorDOMAgent):
  105338. (WebCore::InspectorDOMAgent::unbind):
  105339. (WebCore::InspectorDOMAgent::getStyles):
  105340. (WebCore::InspectorDOMAgent::getAllStyles):
  105341. (WebCore::InspectorDOMAgent::buildArrayForCSSRules):
  105342. (WebCore::InspectorDOMAgent::buildArrayForPseudoElements):
  105343. (WebCore::InspectorDOMAgent::applyStyleText):
  105344. (WebCore::InspectorDOMAgent::setStyleText):
  105345. (WebCore::InspectorDOMAgent::setStyleProperty):
  105346. (WebCore::InspectorDOMAgent::toggleStyleEnabled):
  105347. (WebCore::InspectorDOMAgent::setRuleSelector):
  105348. (WebCore::InspectorDOMAgent::addRule):
  105349. (WebCore::InspectorDOMAgent::buildObjectForStyle):
  105350. (WebCore::InspectorDOMAgent::buildArrayForDisabledStyleProperties):
  105351. (WebCore::InspectorDOMAgent::buildObjectForStyleSheet):
  105352. (WebCore::InspectorDOMAgent::buildObjectForRule):
  105353. * inspector/InspectorDOMAgent.h:
  105354. * inspector/front-end/DOMAgent.js:
  105355. (WebInspector.CSSStyleDeclaration):
  105356. 2010-05-26 Xan Lopez <xlopez@igalia.com>
  105357. Reviewed by Gustavo Noronha.
  105358. [GTK] Add support for DOM events in the GObject DOM bindings
  105359. https://bugs.webkit.org/show_bug.cgi?id=38844
  105360. Use GObject-like names for the DOM event signals. Basically go
  105361. from 'mousewheel' to 'mouse-wheel-event'.
  105362. * bindings/scripts/CodeGeneratorGObject.pm:
  105363. 2010-05-26 Nikolas Zimmermann <nzimmermann@rim.com>
  105364. Not reviewed. Sort Xcode project file.
  105365. * WebCore.xcodeproj/project.pbxproj:
  105366. 2010-05-26 Xan Lopez <xlopez@igalia.com>
  105367. Reviewed by Gustavo Noronha.
  105368. [GTK] Add support for DOM events in the GObject DOM bindings
  105369. https://bugs.webkit.org/show_bug.cgi?id=38844
  105370. First step towards DOM events support. We create one signal per
  105371. event supported in the DOM classes, and create a custom
  105372. GObjectEventListener that will emit a GObject signal when an event
  105373. is dispatched to the object. There is no event object at the
  105374. moment (we just pass NULL), and no support for hooking into the
  105375. capture phase.
  105376. * GNUmakefile.am:
  105377. * bindings/gobject/GObjectEventListener.cpp: Added.
  105378. (WebCore::GObjectEventListener::handleEvent):
  105379. (WebCore::GObjectEventListener::operator==):
  105380. * bindings/gobject/GObjectEventListener.h: Added.
  105381. (WebCore::GObjectEventListener::create):
  105382. (WebCore::GObjectEventListener::cast):
  105383. (WebCore::GObjectEventListener::GObjectEventListener):
  105384. * bindings/scripts/CodeGeneratorGObject.pm:
  105385. * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
  105386. (WebKit::core):
  105387. (webkit_dom_test_callback_finalize):
  105388. (webkit_dom_test_callback_class_init):
  105389. (WebKit::wrapTestCallback):
  105390. * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
  105391. (WebKit::core):
  105392. (webkit_dom_test_interface_finalize):
  105393. (webkit_dom_test_interface_class_init):
  105394. (WebKit::wrapTestInterface):
  105395. * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  105396. (WebKit::core):
  105397. (webkit_dom_test_obj_finalize):
  105398. (webkit_dom_test_obj_class_init):
  105399. (WebKit::wrapTestObj):
  105400. * dom/EventListener.h:
  105401. (WebCore::EventListener::):
  105402. 2010-05-26 Xan Lopez <xlopez@igalia.com>
  105403. Reviewed by Gustavo Noronha.
  105404. [GTK] GObject DOM bindings
  105405. https://bugs.webkit.org/show_bug.cgi?id=33590
  105406. We need to protect the body of some methods with #ifdefs, since
  105407. the availability of the code they call into is decided at compile
  105408. time.
  105409. * bindings/scripts/CodeGeneratorGObject.pm:
  105410. 2010-05-26 Kent Tamura <tkent@chromium.org>
  105411. Reviewed by Shinichiro Hamaji.
  105412. Move date/time limit values to DateComponents.h from HTMLInputElement.cpp
  105413. https://bugs.webkit.org/show_bug.cgi?id=39423
  105414. The minimum and maximum values for date, datetime, datetime-local,
  105415. month, time, and week types depend on the implementation of
  105416. DateComponents. So move them to DateComponents.
  105417. * html/DateComponents.h:
  105418. * html/HTMLInputElement.cpp:
  105419. (WebCore::HTMLInputElement::minimum):
  105420. (WebCore::HTMLInputElement::maximum):
  105421. 2010-05-26 Csaba Osztrogonác <ossy@webkit.org>
  105422. Reviewed by Simon Hausmann.
  105423. Buildfix for build without ENABLE(RUBY) after r60201.
  105424. * rendering/RenderBlock.cpp:
  105425. (WebCore::canMergeContiguousAnonymousBlocks): Missing #if ENABLE(RUBY) guard added.
  105426. 2010-05-26 Nikolas Zimmermann <nzimmermann@rim.com>
  105427. Not reviewed. Update test expectations for JS generator, when using run-webkit-tests. This has been forgotten.
  105428. * bindings/scripts/test/JS/JSTestInterface.cpp:
  105429. (WebCore::JSTestInterfaceConstructor::JSTestInterfaceConstructor):
  105430. (WebCore::JSTestInterface::createPrototype):
  105431. * bindings/scripts/test/JS/JSTestInterface.h:
  105432. (WebCore::JSTestInterfacePrototype::JSTestInterfacePrototype):
  105433. * bindings/scripts/test/JS/JSTestObj.cpp:
  105434. (WebCore::JSTestObjConstructor::JSTestObjConstructor):
  105435. (WebCore::JSTestObj::createPrototype):
  105436. * bindings/scripts/test/JS/JSTestObj.h:
  105437. (WebCore::JSTestObjPrototype::JSTestObjPrototype):
  105438. 2010-05-25 Philippe Normand <pnormand@igalia.com>
  105439. Reviewed by Gustavo Noronha Silva.
  105440. [GStreamer] Apple trailers not playing
  105441. https://bugs.webkit.org/show_bug.cgi?id=37390
  105442. Set the AppleTrailer User-Agent workaround after
  105443. FrameLoader::addExtraFieldsToSubresourceRequest has been called
  105444. because that method sets the global User-Agent.
  105445. * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
  105446. (webKitWebSrcStart):
  105447. 2010-05-25 Dumitru Daniliuc <dumi@chromium.org>
  105448. Unreviewed, changing "fts2" to "fts3" in one location I missed in r60188.
  105449. * storage/DatabaseAuthorizer.cpp:
  105450. (WebCore::DatabaseAuthorizer::dropVTable):
  105451. 2010-05-25 Mark Rowe <mrowe@apple.com>
  105452. Build fix.
  105453. * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp:
  105454. 2010-05-25 Yuta Kitamura <yutak@chromium.org>
  105455. Reviewed by Pavel Feldman.
  105456. Web Inspector: Show HTTP status message sent from server in Resources tab.
  105457. This patch obtains an HTTP status message of each resource and pass it to
  105458. the front end of Web Inspector. The status message is shown in "Headers" tab in
  105459. the detail view of that resource, along with the HTTP status code.
  105460. Web Inspector does not respect HTTP status message
  105461. https://bugs.webkit.org/show_bug.cgi?id=39595
  105462. * inspector/InspectorResource.cpp:
  105463. (WebCore::InspectorResource::updateResponse):
  105464. (WebCore::InspectorResource::updateScriptObject):
  105465. * inspector/InspectorResource.h:
  105466. * inspector/front-end/Resource.js:
  105467. (WebInspector.Resource.CompareByTransferSize):
  105468. * inspector/front-end/ResourceView.js:
  105469. (WebInspector.ResourceView.prototype._refreshHTTPInformation):
  105470. * inspector/front-end/inspector.js:
  105471. (WebInspector.updateResource):
  105472. * inspector/front-end/utilities.js:
  105473. (String.prototype.escapeHTML): Escape '"' so that we can escape messages
  105474. that may occur inside HTML attributes.
  105475. 2010-05-24 David Hyatt <hyatt@apple.com>
  105476. Reviewed by Dan Bernstein.
  105477. https://bugs.webkit.org/show_bug.cgi?id=39615, implement basic support for -webkit-column-span.
  105478. This patch adds support for -webkit-column-span elements that can span across all of the columns
  105479. in a multi-column block. In this first stage, column span support is limited to only immediate
  105480. children of the multi-column block, so no elements actually have to split across a span yet.
  105481. Two new kinds of anonymous blocks have been added: anonymous columns blocks and anonymous column
  105482. span blocks. When a span gets inserted into a multicol block, the block is split, with the
  105483. column portions of the multicol getting wrapped in anonymous columns blocks and the spans getting
  105484. wrapped in anonymous column span blocks. The multicol block then stops being multicol and lets
  105485. the anonymous multicol blocks take over column layout.
  105486. Many new tests added in fast/multicol/span.
  105487. * dom/Node.cpp:
  105488. (WebCore::Node::diff):
  105489. Changes to column span result in a detach/attach, since spanning elements don't typically have
  105490. much content.
  105491. * rendering/RenderBlock.cpp:
  105492. (WebCore::RenderBlock::styleDidChange):
  105493. Make sure to inherit the appropriate new styles into the anonymous column and column span blocks.
  105494. (WebCore::RenderBlock::addChildToAnonymousColumnBlocks):
  105495. This method handles the insertion of new children into the block after it has had to wrap its
  105496. children in anonymous column/column-span blocks.
  105497. (WebCore::RenderBlock::splitAnonymousBlocksAroundChild):
  105498. A helper method for splitting all anonymous blocks between beforeChild and this block so that
  105499. a new element with an incompatible type can be inserted between them.
  105500. (WebCore::RenderBlock::makeChildrenAnonymousColumnBlocks):
  105501. This method does the initial split of a block into anonymous components. This happens the first
  105502. time a column-span element gets inserted into the block.
  105503. (WebCore::columnsBlockForSpanningElement):
  105504. This function checks whether or not the column-span element is actually being inserted into a viable
  105505. columns block.
  105506. (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
  105507. This is the original RenderBlock::addChild. It handles everything else just like it used to.
  105508. (WebCore::RenderBlock::addChild):
  105509. Patched to now call addChildToAnonymousColumnBlocks if the block has wrapped its current children
  105510. in anonymous column/column-span blocks already.
  105511. (WebCore::RenderBlock::moveAllChildrenTo):
  105512. moveAllChildrenTo has been enhanced to support doing a full remove/append in the case where elements
  105513. are shifting across layers. (This should arguably be the default behavior, but that can happen in
  105514. a future patch.)
  105515. (WebCore::RenderBlock::removeLeftoverAnonymousBlock):
  105516. Patched to fix a bug when the leftover block is empty and to prevent anonymous column/column-span
  105517. block from being coalesced with a parent if they are non-empty.
  105518. (WebCore::canMergeContiguousAnonymousBlocks):
  105519. Whether or not two contiguous anonymous blocks can merge after the removal of a child.
  105520. (WebCore::RenderBlock::removeChild):
  105521. removeChild has been patched to handle more cases of merging/deletion than it did before. It
  105522. can now destroy empty anonymous block chains and can now merge two contiguous anonymous blocks
  105523. that don't share the same childrenInline() setting (by putting one inside the other). It also
  105524. makes sure to do full appends/moves/inserts in the cases where the affected blocks have layers.
  105525. (WebCore::RenderBlock::fillSelectionGaps):
  105526. Don't let the selection extend outside of a column-span.
  105527. (WebCore::RenderBlock::setDesiredColumnCountAndWidth):
  105528. Turn off multi-column layout on the outermost block if it has wrapped its children in anonymous
  105529. column/column-span blocks.
  105530. (WebCore::RenderBlock::createAnonymousBlockWithSameTypeAs):
  105531. (WebCore::RenderBlock::createAnonymousColumnsBlock):
  105532. (WebCore::RenderBlock::createAnonymousColumnSpanBlock):
  105533. New helper functions for anonymous block creation.
  105534. (WebCore::RenderBlock::renderName):
  105535. Patched to dump anonymous column and column-span blocks so that they can be distinguished from
  105536. regular anonymous blocks.
  105537. * rendering/RenderBlock.h:
  105538. * rendering/RenderObject.h:
  105539. (WebCore::RenderObject::isAnonymousColumnsBlock):
  105540. (WebCore::RenderObject::isAnonymousColumnSpanBlock):
  105541. New helper functions for asking the type of an anonymous block.
  105542. * rendering/style/RenderStyle.h:
  105543. (WebCore::InheritedFlags::inheritColumnPropertiesFrom):
  105544. A helper function to allow anonymous column blocks to easily inherit all column properties for
  105545. rendering.
  105546. 2010-05-25 Dirk Pranke <dpranke@chromium.org>
  105547. Reviewed by Dimitri Glazkov.
  105548. Re-commit r58765 - it had been rolled out to see if it was causing
  105549. a perf regression (in r59787), but that does not seem to have been
  105550. the case.
  105551. Tests: fast/notifications/notifications-replace.html
  105552. fast/notifications/notifications-rtl.html
  105553. https://bugs.webkit.org/show_bug.cgi?id=39605
  105554. * notifications/Notification.h:
  105555. (WebCore::Notification::dir):
  105556. (WebCore::Notification::setDir):
  105557. (WebCore::Notification::replaceId):
  105558. (WebCore::Notification::setReplaceId):
  105559. * notifications/Notification.idl:
  105560. 2010-05-22 Jer Noble <jer.noble@apple.com>
  105561. Reviewed by Adam Roben.
  105562. Full screen doesn't work for video elements
  105563. https://bugs.webkit.org/show_bug.cgi?id=39557
  105564. rdar://problem/8011813
  105565. Add fullscreen support for MediaPlayerPrivateVisualContext. A new class, MediaPlayerPrivateFullscreenWindow,
  105566. provides the fullscreen hwnd and layer renderer. Any WKCACFLayer can be provided to MediaPlayerPrivateFullscreenWindow
  105567. so future additional MediaPlayerPrivate implementations can use the fullscreen window.
  105568. Minor additions have been made to the FloatSize and IntSize classes.
  105569. MediaPlayerPrivateQuickTimeVisualContext now calls retrieveCurrentImage after creating a new
  105570. videoLayer; this is an existing bug that was never really exposed before now.
  105571. * WebCore.vcproj/WebCore.vcproj:
  105572. * platform/graphics/FloatSize.h: Added aspectRatio() and scale(float).
  105573. (WebCore::FloatSize::aspectRatio):
  105574. (WebCore::FloatSize::scale):
  105575. * platform/graphics/IntSize.h: Added aspectRatio().
  105576. (WebCore::IntSize::aspectRatio):
  105577. * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp: Added.
  105578. * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.h: Added.
  105579. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: Call retrieveCurrentImage() after creating the videoLayer.
  105580. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::supportsFullscreen):
  105581. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::retrieveCurrentImage):
  105582. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::createLayerForMovie):
  105583. * platform/graphics/win/WKCACFLayer.cpp:
  105584. (WebCore::WKCACFLayer::WKCACFLayer):
  105585. (WebCore::WKCACFLayer::removeFromSuperlayer):
  105586. (WebCore::WKCACFLayer::setFrame):
  105587. (WebCore::WKCACFLayer::internalSetNeedsDisplay):
  105588. (WebCore::WKCACFLayer::setLayoutClient):
  105589. (WebCore::WKCACFLayer::layoutSublayersProc):
  105590. (WebCore::WKCACFLayer::layoutClient):
  105591. (WebCore::WKCACFLayer::setNeedsLayout):
  105592. * platform/graphics/win/WKCACFLayer.h: Add layout client class.
  105593. (WebCore::WKCACFLayerLayoutClient::~WKCACFLayerLayoutClient):
  105594. (WebCore::WKCACFLayer::frame): Added back frame()/setFrame().
  105595. * platform/graphics/win/WebTiledLayer.cpp:
  105596. (WebCore::WebTiledLayer::setFrame): Implamented setFrame() in subclass of WKCACFLayer
  105597. * platform/graphics/win/WebTiledLayer.h:
  105598. * platform/graphics/win/WebTiledLayer.cpp: Added setFrame() overriding WKCACFLayer's implementation
  105599. (WebCore::WebTiledLayer::setFrame):
  105600. * platform/graphics/win/WebTiledLayer.h:
  105601. 2010-05-25 Dumitru Daniliuc <dumi@chromium.org>
  105602. Reviewed by Brady Eidson.
  105603. Allow FTS3 functions.
  105604. https://bugs.webkit.org/show_bug.cgi?id=38003
  105605. * storage/DatabaseAuthorizer.cpp:
  105606. (WebCore::DatabaseAuthorizer::addWhitelistedFunctions):
  105607. (WebCore::DatabaseAuthorizer::createVTable):
  105608. 2010-05-25 Anders Carlsson <andersca@apple.com>
  105609. Reviewed by Sam Weinig.
  105610. Get rid of PluginDatabaseClient
  105611. https://bugs.webkit.org/show_bug.cgi?id=39685
  105612. PluginDatabaseClient isn't used anywhere so just remove it.
  105613. * GNUmakefile.am:
  105614. * plugins/PluginDatabase.cpp:
  105615. (WebCore::PluginDatabase::PluginDatabase):
  105616. (WebCore::PluginDatabase::refresh):
  105617. * plugins/PluginDatabase.h:
  105618. * plugins/PluginDatabaseClient.h: Removed.
  105619. 2010-05-25 Alexey Proskuryakov <ap@apple.com>
  105620. Reviewed by Darin Adler.
  105621. https://bugs.webkit.org/show_bug.cgi?id=18595
  105622. REGRESSION (r20766): Setting display:none on an iframe causes the ownerDocument to freeze
  105623. Test: fast/events/frame-detached-in-mousedown.html
  105624. * page/EventHandler.h: Added a boolean tracking whether EventHandler needs to reset capturing
  105625. node on mouse up. It's only done for nodes that hold subframes - elements that capture events
  105626. are responsible for resetting the state.
  105627. * page/EventHandler.cpp:
  105628. (WebCore::EventHandler::EventHandler): Don't initialize m_capturingMouseEventsNode, it's a
  105629. RefPtr and is initialized automatically.
  105630. (WebCore::EventHandler::handleMousePressEvent): Remember that EventHandler should reset
  105631. capturing node on its own.
  105632. (WebCore::EventHandler::handleMouseDoubleClickEvent): The code here looked like it was copied
  105633. from the below in r21156. Copied correct code instead.
  105634. (WebCore::EventHandler::handleMouseReleaseEvent): We only clear the capturing node when it
  105635. holds a subframe, but the frame may be already detached by the time mouse up is handled, so the
  105636. check was wrong - and return code of passMouseReleaseEventToSubframe() is obviously irrelevant.
  105637. (WebCore::EventHandler::setCapturingMouseEventsNode): Remember that EventHandler should not
  105638. reset capturing node on its own.
  105639. 2010-05-25 Kevin Ollivier <kevino@theolliviers.com>
  105640. [wx] Build fix for missing symbol.
  105641. * wscript:
  105642. 2010-05-25 Darin Adler <darin@apple.com>
  105643. * dom/Element.cpp:
  105644. (WebCore::Element::getIDAttribute): Added comments about problems with this function.
  105645. 2010-05-25 Leandro Pereira <leandro@profusion.mobi>
  105646. Reviewed by Gustavo Noronha Silva.
  105647. [EFL] Build fix.
  105648. http://webkit.org/b/39598
  105649. * CMakeLists.txt:
  105650. 2010-05-25 Enrica Casucci <enrica@apple.com>
  105651. Reviewed by Darin Adler.
  105652. REGRESSION(51522): typing at the end of a line in designMode documents is *very* slow.
  105653. https://bugs.webkit.org/show_bug.cgi?id=36037
  105654. <rdar://problem/8022887>
  105655. The performance regression was traced to r51522 but this is not entirely true. That revision introduced, among other things,
  105656. additional checks in the method isCandidate of both Position and PositionIterator classes to support scenarios of mixed editability
  105657. that were not allowed before. This change uncovered an underlying issue with the decrement method of PositionIterator, that in some
  105658. cases would iterate through every position as offset in a block before moving to the last child in the block.
  105659. This was exactly the case of the attached test case, where, trying to check if the caret was placed at the end of a block, we were examining
  105660. every position in the block before considering the last true position in the block.
  105661. The performance was linear with the number of child nodes in the block, instead of constant.
  105662. * dom/PositionIterator.cpp:
  105663. (WebCore::PositionIterator::decrement):
  105664. 2010-05-25 Alexey Proskuryakov <ap@apple.com>
  105665. Reviewed by Darin Adler.
  105666. https://bugs.webkit.org/show_bug.cgi?id=39621
  105667. <rdar://problem/8009738> Extreme memory growth on DOM Hanoi test
  105668. The largest cause of memory growth on this test were autoreleased DOMNode objects created
  105669. to make webView:formStateDidChangeForNode: delegate calls.
  105670. * html/HTMLTextAreaElement.cpp: (WebCore::HTMLTextAreaElement::HTMLTextAreaElement):
  105671. Don't call notifyFormStateChanged() - since the element starts with refcount 0, it's not
  105672. safe to call functions that are likely to create temporary wrappers (wrapper destructor
  105673. would bring refcount back to 0, and destroy HTMLTextAreaElement from within its constructor).
  105674. 2010-05-25 Kent Tamura <tkent@chromium.org>
  105675. Reviewed by Dimitri Glazkov.
  105676. [DRT/Chromium] Enable 3D_CANVAS, FILTERS, METER_TAG and PROGRESS_TAG
  105677. https://bugs.webkit.org/show_bug.cgi?id=39652
  105678. * rendering/RenderTheme.cpp:
  105679. (WebCore::RenderTheme::paintMeter): Fix narrowPrecisionToFloat() usage.
  105680. 2010-05-25 Darin Adler <darin@apple.com>
  105681. Sort ".exp" files with the sort tool.
  105682. This makes later merging easier.
  105683. These Mac-specific files should probably move into a subdirectory
  105684. at some point.
  105685. * WebCore.Inspector.exp: Sorted.
  105686. * WebCore.PluginHostProcess.exp: Removed blank line.
  105687. * WebCore.VideoProxy.exp: Sorted.
  105688. * WebCore.base.exp: Ditto.
  105689. 2010-05-25 Vangelis Kokkevis <vangelis@chromium.org>
  105690. Reviewed by Darin Fisher.
  105691. Removing the persistent GraphicsContext from LayerChromium to save on
  105692. memory and simplify code. Layers now create a temporary context, draw into
  105693. it, update the GL texture and discard the context.
  105694. https://bugs.webkit.org/show_bug.cgi?id=39640
  105695. * platform/graphics/chromium/GraphicsLayerChromium.cpp:
  105696. (WebCore::GraphicsLayerChromium::updateLayerDrawsContent):
  105697. * platform/graphics/chromium/LayerChromium.cpp:
  105698. (WebCore::LayerChromium::LayerChromium):
  105699. (WebCore::LayerChromium::~LayerChromium):
  105700. (WebCore::LayerChromium::setLayerRenderer):
  105701. (WebCore::LayerChromium::updateTextureContents):
  105702. (WebCore::LayerChromium::setContents):
  105703. (WebCore::LayerChromium::setBounds):
  105704. (WebCore::LayerChromium::setNeedsDisplay):
  105705. * platform/graphics/chromium/LayerChromium.h:
  105706. * platform/graphics/chromium/LayerRendererChromium.cpp:
  105707. (WebCore::LayerRendererChromium::~LayerRendererChromium):
  105708. (WebCore::LayerRendererChromium::setRootLayerCanvasSize):
  105709. (WebCore::LayerRendererChromium::drawLayers):
  105710. (WebCore::LayerRendererChromium::assignTextureForLayer):
  105711. (WebCore::LayerRendererChromium::compositeLayersRecursive):
  105712. * platform/graphics/chromium/LayerRendererChromium.h:
  105713. (WebCore::LayerRendererChromium::rootLayerGraphicsContext):
  105714. 2010-05-24 Kenneth Rohde Christiansen <kenneth@webkit.org>
  105715. Reviewed by Simon Hausmann.
  105716. [Qt] Make text filling work together with text stroke.
  105717. When the text has stroke a new QPen was set, overriding the pen
  105718. set for text filling. This patch fixes that by storing the two
  105719. pens and using where appropriate.
  105720. * platform/graphics/qt/FontQt.cpp:
  105721. (WebCore::Font::drawComplexText):
  105722. 2010-05-17 Antonio Gomes <tonikitoo@webkit.org>
  105723. Reviewed by Darin Adler.
  105724. Add an optional "starting node' parameter to scrollRecursively and scrollOverflow of EventHandler
  105725. https://bugs.webkit.org/show_bug.cgi?id=39217
  105726. It would be usefull if scrollOverflow and scrollRecursively methods of EventHandler
  105727. could receive a parameter to specify where to start scrolling from. Currently they
  105728. start scrolling from either the current focused node or the node where mouse last
  105729. pressed on. Patch proposes an aditional starting point as an optional parameter.
  105730. Since it is optional, all call sites can remain as are, and if a Null node is passed
  105731. in, both methods work as previously.
  105732. * page/EventHandler.cpp:
  105733. (WebCore::EventHandler::scrollOverflow):
  105734. (WebCore::EventHandler::scrollRecursively):
  105735. * page/EventHandler.h:
  105736. 2010-05-25 Yury Semikhatsky <yurys@chromium.org>
  105737. Reviewed by Timothy Hatcher.
  105738. Web Inspector: localize heap graph strings.
  105739. https://bugs.webkit.org/show_bug.cgi?id=39674
  105740. * English.lproj/localizedStrings.js:
  105741. 2010-05-25 Adam Barth <abarth@webkit.org>
  105742. Reviewed by Eric Seidel.
  105743. Switch HTML parsing benchmark to use document.write instead of innerHTML
  105744. https://bugs.webkit.org/show_bug.cgi?id=39661
  105745. We'd like to exercise the main parsing pipeline instead of the fragment
  105746. parsing pipeline.
  105747. * benchmarks/parser/html-parser.html:
  105748. 2010-05-25 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>
  105749. Reviewed by Laszlo Gombos.
  105750. [Qt] Running with accelerated compositing enabled sometimes result in a crash
  105751. https://bugs.webkit.org/show_bug.cgi?id=39609
  105752. Check if we have a scene before applying the workaround for
  105753. the QGraphicsScene bug where opacity change doesn't always have
  105754. immediate effect.
  105755. * platform/graphics/qt/GraphicsLayerQt.cpp:
  105756. (WebCore::OpacityAnimationQt::applyFrame):
  105757. 2010-05-25 Yury Semikhatsky <yurys@chromium.org>
  105758. Unreviewed. Fix Chromium Mac Release build.
  105759. * bindings/v8/ScriptDebugServer.cpp:
  105760. 2010-05-24 Yury Semikhatsky <yurys@chromium.org>
  105761. Reviewed by Pavel Feldman.
  105762. ScriptDebugServer is now implemented as DebugEventListener which means it doesn't
  105763. depend on v8 debugging protocol, instead it uses ExecState to collect debugging
  105764. info and pass it to the listeners.
  105765. New implementation of ScriptDebugServer uses methods provided by client to dispatch
  105766. its messages while JS is paused(previously the messages was dispatched in a callback
  105767. passed to v8 along with DebugEventHandler).
  105768. https://bugs.webkit.org/show_bug.cgi?id=39594
  105769. * bindings/js/ScriptDebugServer.cpp:
  105770. (WebCore::ScriptDebugServer::dispatchDidPause):
  105771. (WebCore::ScriptDebugServer::dispatchDidContinue):
  105772. (WebCore::ScriptDebugServer::dispatchFunctionToListeners): Changed method signature to allow
  105773. invocation of ScriptDebugListener methods that have non-empty argument list.
  105774. (WebCore::ScriptDebugServer::pauseIfNeeded):
  105775. * bindings/js/ScriptDebugServer.h:
  105776. * bindings/v8/ScriptDebugServer.cpp:
  105777. (WebCore::retrieveFrame):
  105778. (WebCore::ScriptDebugServer::ScriptDebugServer):
  105779. (WebCore::ScriptDebugServer::addListener):
  105780. (WebCore::ScriptDebugServer::removeListener): Execution is resumed(nested message loop is terminated) when
  105781. corresponding debugger window closes.
  105782. (WebCore::ScriptDebugServer::clearBreakpoints):
  105783. (WebCore::ScriptDebugServer::pauseOnExceptionsState):
  105784. (WebCore::ScriptDebugServer::setPauseOnExceptionsState):
  105785. (WebCore::ScriptDebugServer::continueProgram):
  105786. (WebCore::ScriptDebugServer::stepIntoStatement):
  105787. (WebCore::ScriptDebugServer::stepOverStatement):
  105788. (WebCore::ScriptDebugServer::stepOutOfFunction):
  105789. (WebCore::ScriptDebugServer::v8DebugEventCallback):
  105790. (WebCore::ScriptDebugServer::handleV8DebugEvent):
  105791. (WebCore::ScriptDebugServer::didResume):
  105792. * bindings/v8/ScriptDebugServer.h:
  105793. (WebCore::ScriptDebugServer::ClientMessageLoop::~ClientMessageLoop):
  105794. (WebCore::ScriptDebugServer::setClientMessageLoop):
  105795. * inspector/InspectorController.cpp:
  105796. (WebCore::InspectorController::didPause):
  105797. * inspector/InspectorController.h:
  105798. * inspector/ScriptDebugListener.h: Changed didPause signature to explicitly pass ScriptState
  105799. where execution is paused.
  105800. 2010-05-25 Adam Barth <abarth@webkit.org>
  105801. Reviewed by Eric Seidel.
  105802. Clear attributes for each tag in the HTML5 parser
  105803. https://bugs.webkit.org/show_bug.cgi?id=39660
  105804. Yes, I did screw this up.
  105805. * html/HTML5Token.h:
  105806. (WebCore::HTML5Token::beginStartTag):
  105807. (WebCore::HTML5Token::beginEndTag):
  105808. 2010-05-25 Anders Bakken <agbakken@gmail.com>
  105809. Reviewed by Darin Adler.
  105810. Remove warning for GCC 4.4.3
  105811. GCC suggest parentheses around && within ||
  105812. * dom/Element.cpp:
  105813. (WebCore::Element::recalcStyle):
  105814. 2010-05-25 Xan Lopez <xlopez@igalia.com>
  105815. Fix the GTK+ build, PluginInfoStore was removed.
  105816. * GNUmakefile.am:
  105817. 2010-05-25 Ada Chan <adachan@apple.com>
  105818. Reviewed by Steve Falkenburg.
  105819. Add a base class for DOMTimer called SuspendableTimer which captures just the
  105820. basic functionality of TimerBase and ActiveDOMObject combined. It does not
  105821. contain functionality specific to scripting timers.
  105822. SuspendableTimer is used in fixing https://bugs.webkit.org/show_bug.cgi?id=39651
  105823. * Android.mk:
  105824. * CMakeLists.txt:
  105825. * GNUmakefile.am:
  105826. * WebCore.gypi:
  105827. * WebCore.pro:
  105828. * WebCore.vcproj/WebCore.vcproj:
  105829. * WebCore.xcodeproj/project.pbxproj:
  105830. * page/DOMTimer.cpp:
  105831. (WebCore::DOMTimer::DOMTimer):
  105832. (WebCore::DOMTimer::contextDestroyed):
  105833. (WebCore::DOMTimer::stop):
  105834. * page/DOMTimer.h:
  105835. * page/SuspendableTimer.cpp: Added.
  105836. (WebCore::SuspendableTimer::SuspendableTimer):
  105837. (WebCore::SuspendableTimer::~SuspendableTimer):
  105838. (WebCore::SuspendableTimer::hasPendingActivity):
  105839. (WebCore::SuspendableTimer::stop):
  105840. (WebCore::SuspendableTimer::suspend):
  105841. (WebCore::SuspendableTimer::resume):
  105842. (WebCore::SuspendableTimer::canSuspend):
  105843. * page/SuspendableTimer.h: Added.
  105844. 2010-05-25 Justin Schuh <jschuh@chromium.org>
  105845. Reviewed by Nate Chapin.
  105846. Remove custom bindings for Element.SetAttribute*
  105847. https://bugs.webkit.org/show_bug.cgi?id=39604
  105848. Custom bindings are no longer needed because origin checks were moved
  105849. out of the bindings by: http://trac.webkit.org/changeset/59866
  105850. Behavior isn't changed and is covered by existing tests.
  105851. * bindings/js/JSElementCustom.cpp:
  105852. * bindings/v8/custom/V8ElementCustom.cpp:
  105853. * dom/Element.idl:
  105854. 2010-05-25 Yury Semikhatsky <yurys@chromium.org>
  105855. Reviewed by Pavel Feldman.
  105856. Add memory graph to Timeline overview pane.
  105857. https://bugs.webkit.org/show_bug.cgi?id=37879
  105858. * inspector/front-end/Drawer.js:
  105859. (WebInspector.Drawer):
  105860. (WebInspector.Drawer.prototype.show.animationFinished):
  105861. (WebInspector.Drawer.prototype.show):
  105862. (WebInspector.Drawer.prototype.hide):
  105863. (WebInspector.Drawer.prototype.set currentPanelCounters):
  105864. * inspector/front-end/Panel.js:
  105865. * inspector/front-end/TimelineOverviewPane.js:
  105866. (WebInspector.TimelineOverviewPane):
  105867. (WebInspector.TimelineOverviewPane.prototype.showTimelines):
  105868. (WebInspector.TimelineOverviewPane.prototype.showMemoryGraph):
  105869. (WebInspector.TimelineOverviewPane.prototype._forAllRecords):
  105870. (WebInspector.TimelineOverviewPane.prototype.update):
  105871. (WebInspector.TimelineOverviewPane.prototype.updateMainViewWidth):
  105872. (WebInspector.TimelineOverviewPane.prototype._endWindowDragging):
  105873. (WebInspector.TimelineOverviewPane.prototype._createTimelineCategoryStatusBarCheckbox):
  105874. (WebInspector.HeapGraph):
  105875. (WebInspector.HeapGraph.prototype.get element):
  105876. (WebInspector.HeapGraph.prototype.get visible):
  105877. (WebInspector.HeapGraph.prototype.show):
  105878. (WebInspector.HeapGraph.prototype.hide):
  105879. (WebInspector.HeapGraph.prototype.setSize):
  105880. (WebInspector.HeapGraph.prototype.update):
  105881. (WebInspector.HeapGraph.prototype._clear):
  105882. (WebInspector.HeapGraph.prototype._drawScale):
  105883. * inspector/front-end/TimelinePanel.js:
  105884. (WebInspector.TimelinePanel):
  105885. (WebInspector.TimelinePanel.prototype.toolbarItemClass._createTopPane):
  105886. (WebInspector.TimelinePanel.prototype.get statusBarItems):
  105887. (WebInspector.TimelinePanel.prototype._timelinesOverviewItemSelected):
  105888. (WebInspector.TimelinePanel.prototype._memoryOverviewItemSelected):
  105889. (WebInspector.TimelinePanel.prototype.setSidebarWidth):
  105890. (WebInspector.TimelinePanel.prototype.show):
  105891. (WebInspector.TimelinePanel.prototype.hide):
  105892. * inspector/front-end/inspector.css:
  105893. (#counters):
  105894. (#timeline-overview-sidebar):
  105895. (.timeline-category-statusbar-item):
  105896. (.timeline-category-statusbar-item .timeline-category-checkbox):
  105897. (.timeline-category-statusbar-item .timeline-category-checkbox:checked):
  105898. (.timeline-category-statusbar-item.timeline-category-loading .timeline-category-checkbox):
  105899. (.timeline-category-statusbar-item.timeline-category-scripting .timeline-category-checkbox):
  105900. (.timeline-category-statusbar-item.timeline-category-rendering .timeline-category-checkbox):
  105901. (#timeline-overview-memory):
  105902. (.timeline-records-counter):
  105903. (#main-status-bar > .timeline-records-counter):
  105904. (#counters > .timeline-records-counter):
  105905. * inspector/front-end/inspector.html:
  105906. * inspector/front-end/utilities.js:
  105907. ():
  105908. 2010-05-25 Adam Barth <abarth@webkit.org>
  105909. Unreviewed. Fix typo pointed out by Maciej.
  105910. * html/HTML5Lexer.cpp:
  105911. (WebCore::HTMLNames::unconsumeCharacters):
  105912. (WebCore::HTML5Lexer::consumeEntity):
  105913. 2010-05-25 Adam Barth <abarth@webkit.org>
  105914. Reviewed by Eric Seidel.
  105915. Fix <noembed> and <plaintext> content models
  105916. https://bugs.webkit.org/show_bug.cgi?id=39653
  105917. PLAINTEXTState is my favorite lexer state. :)
  105918. * html/HTML5TreeBuilder.cpp:
  105919. (WebCore::HTML5TreeBuilder::passTokenToLegacyParser):
  105920. 2010-05-24 Adam Barth <abarth@webkit.org>
  105921. Reviewed by Eric Seidel.
  105922. First cut at HTML5 entities
  105923. https://bugs.webkit.org/show_bug.cgi?id=39649
  105924. There's still a bunch more work to do to get our entity parsing fully
  105925. up to spec. This patch contains the bulk of the implementation
  105926. however.
  105927. The basics are covered by the existing html5lib tests. I'll add more
  105928. detailed tests in a followup patch.
  105929. * html/HTML5Lexer.cpp:
  105930. (WebCore::HTMLNames::legalEntityFor):
  105931. (WebCore::HTMLNames::isHexDigit):
  105932. (WebCore::HTMLNames::isAlphaNumeric):
  105933. (WebCore::HTMLNames::uncomsumeCharacters):
  105934. (WebCore::HTML5Lexer::consumeEntity):
  105935. (WebCore::HTML5Lexer::nextToken):
  105936. (WebCore::HTML5Lexer::haveBufferedCharacterToken):
  105937. * html/HTML5Lexer.h:
  105938. (WebCore::HTML5Lexer::):
  105939. * html/HTML5Tokenizer.cpp:
  105940. (WebCore::HTML5Tokenizer::write):
  105941. 2010-05-24 Tasuku Suzuki <tasuku.suzuki@nokia.com>
  105942. Reviewed by Kenneth Rohde Christiansen.
  105943. [Qt] Fix compilation with QT_NO_TEMPORARYFILE
  105944. https://bugs.webkit.org/show_bug.cgi?id=38324
  105945. * platform/qt/FileSystemQt.cpp:
  105946. (WebCore::openTemporaryFile):
  105947. 2010-05-24 Andrey Kosyakov <caseq@chromium.org>
  105948. Reviewed by Yury Semikhatsky.
  105949. Fixed handling of bare '/' and '?' at console prompt.
  105950. https://bugs.webkit.org/show_bug.cgi?id=39585
  105951. * inspector/front-end/inspector.js:
  105952. (WebInspector.documentKeyDown):
  105953. 2010-05-24 Andreas Kling <andreas.kling@nokia.com>
  105954. Reviewed by Sam Weinig.
  105955. The 'prototype' property on generated Web IDL interfaces should be { DontDelete | ReadOnly }.
  105956. Spec link:
  105957. http://www.w3.org/TR/WebIDL/#interface-object
  105958. https://bugs.webkit.org/show_bug.cgi?id=39436
  105959. Test: fast/dom/prototype-property.html
  105960. * bindings/scripts/CodeGeneratorJS.pm:
  105961. 2010-05-24 Eric Seidel <eric@webkit.org>
  105962. Reviewed by Adam Barth.
  105963. Add RCDATA and RAWTEXT suport to the HTML5 parser
  105964. https://bugs.webkit.org/show_bug.cgi?id=39642
  105965. Adam Barth wrote half of this patch.
  105966. * html/HTML5TreeBuilder.cpp:
  105967. (WebCore::HTML5TreeBuilder::passTokenToLegacyParser):
  105968. 2010-05-24 Tony Chang <tony@chromium.org>
  105969. Not reviewed, build fix.
  105970. Fix the chromium compile due to pageZoomFactor refactoring.
  105971. * page/EventHandler.cpp:
  105972. (WebCore::pageZoomFactor):
  105973. 2010-05-24 Jer Noble <jer.noble@apple.com>
  105974. Reviewed by Eric Carlson.
  105975. HTML5 <video> tag performance worse than Flash
  105976. https://bugs.webkit.org/show_bug.cgi?id=39577
  105977. rdar://problem/7982458
  105978. Added attachments() back to QTPixelBuffer, as they are necessary for CAImageQueue.
  105979. WKCACFLayer contents()/setContents() now return/take a CFTypeRef instead of a CGImageRef, which allows
  105980. a CAImageQueueRef to be set as a layer's contents.
  105981. WKCAImageQueue is a simple C++ wrapper around the WebKitSystemInterface CAImageQueue functions.
  105982. MediaPlayerPrivateQuickTimeVisualContext will now use a CAImageQueue to display movie frames if
  105983. certain prerequisites are met (QuartzCore.dll and CoreVideo.dll version numbers must meet a certain
  105984. threshold defined in MediaPlayerPrivateQuickTimeVisualContext.cpp).
  105985. * WebCore.vcproj/WebCore.vcproj:
  105986. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
  105987. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
  105988. * platform/graphics/win/QTPixelBuffer.cpp:
  105989. * platform/graphics/win/QTPixelBuffer.h:
  105990. * platform/graphics/win/WKCACFLayer.cpp:
  105991. * platform/graphics/win/WKCACFLayer.h:
  105992. * platform/graphics/win/WKCAImageQueue.cpp: Added.
  105993. * platform/graphics/win/WKCAImageQueue.h: Added.
  105994. 2010-05-24 Adam Barth <abarth@webkit.org>
  105995. Reviewed by Eric Seidel.
  105996. Teach the HTML5 parser how to lex escaped script data
  105997. https://bugs.webkit.org/show_bug.cgi?id=39630
  105998. * html/HTML5Lexer.cpp:
  105999. (WebCore::HTMLNames::vectorEqualsString):
  106000. (WebCore::HTML5Lexer::nextToken):
  106001. (WebCore::HTML5Lexer::temporaryBufferIs):
  106002. (WebCore::HTML5Lexer::isAppropriateEndTag):
  106003. (WebCore::HTML5Lexer::maybeFlushBufferedEndTag):
  106004. (WebCore::HTML5Lexer::flushBufferedEndTag):
  106005. * html/HTML5Lexer.h:
  106006. 2010-05-24 Eric Seidel <eric@webkit.org>
  106007. Unreviewed. Trick MSVC into ignoring our unused code for the moment.
  106008. Prepare HTML5TreeBuilder for addition of new HTML5 parser code
  106009. https://bugs.webkit.org/show_bug.cgi?id=39623
  106010. * html/HTML5TreeBuilder.cpp:
  106011. (WebCore::HTML5TreeBuilder::constructTreeFromToken):
  106012. 2010-05-24 Darin Adler <darin@apple.com>
  106013. Fix build on platforms with touch code enabled.
  106014. * page/EventHandler.cpp:
  106015. (WebCore::pageZoomFactor): Added.
  106016. (WebCore::EventHandler::handleTouchEvent): Use pageZoomFactor.
  106017. 2010-05-24 Darin Adler <darin@apple.com>
  106018. Reviewed by Eric Seidel.
  106019. Move view-related functions from Frame to FrameView
  106020. https://bugs.webkit.org/show_bug.cgi?id=39366
  106021. Refactoring only so adds no new tests.
  106022. * WebCore.base.exp: Updated.
  106023. * css/CSSStyleSelector.cpp:
  106024. (WebCore::CSSStyleSelector::styleForDocument): Call zoom factor function
  106025. on FrameView.
  106026. (WebCore::CSSStyleSelector::applyProperty): Ditto.
  106027. (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize): Ditto.
  106028. * dom/Document.cpp:
  106029. (WebCore::Document::elementFromPoint): Ditto.
  106030. (WebCore::Document::caretRangeFromPoint): Ditto.
  106031. * dom/MouseRelatedEvent.cpp:
  106032. (WebCore::contentsX): Ditto.
  106033. (WebCore::contentsY): Ditto.
  106034. (WebCore::pageZoomFactor): Added helper function.
  106035. (WebCore::MouseRelatedEvent::computePageLocation): Use helper.
  106036. (WebCore::MouseRelatedEvent::receivedTarget): Ditto.
  106037. * dom/Node.cpp:
  106038. (WebCore::Node::dispatchMouseEvent): Call zoom factor function on FrameView.
  106039. (WebCore::Node::dispatchWheelEvent): Ditto.
  106040. * dom/Touch.cpp:
  106041. (WebCore::contentsX): Call zoom factor function on FrameView.
  106042. (WebCore::contentsY): Ditto.
  106043. * html/HTMLBodyElement.cpp:
  106044. (WebCore::adjustForZoom): Ditto.
  106045. (WebCore::HTMLBodyElement::setScrollLeft): Ditto.
  106046. (WebCore::HTMLBodyElement::setScrollTop): Ditto.
  106047. * html/HTMLImageElement.cpp:
  106048. (WebCore::HTMLImageElement::width): Ditto.
  106049. (WebCore::HTMLImageElement::height): Ditto.
  106050. * loader/ImageDocument.cpp:
  106051. (WebCore::pageZoomFactor): Added helper function.
  106052. (WebCore::ImageTokenizer::finish): Use helper function
  106053. (WebCore::ImageDocument::scale): Ditto.
  106054. (WebCore::ImageDocument::resizeImageToFit): Ditto.
  106055. (WebCore::ImageDocument::imageChanged): Ditto.
  106056. (WebCore::ImageDocument::restoreImageSize): Ditto.
  106057. (WebCore::ImageDocument::imageFitsInWindow): Ditto.
  106058. * page/DOMWindow.cpp:
  106059. (WebCore::DOMWindow::innerHeight): Ditto.
  106060. (WebCore::DOMWindow::innerWidth): Ditto.
  106061. (WebCore::DOMWindow::scrollX): Ditto.
  106062. (WebCore::DOMWindow::scrollY): Ditto.
  106063. (WebCore::DOMWindow::scrollTo): Ditto.
  106064. * page/DragController.cpp:
  106065. (WebCore::elementUnderMouse): Ditto.
  106066. * page/Frame.cpp:
  106067. (WebCore::Frame::Frame): Removed code to initialize m_zoomFactor.
  106068. * page/Frame.h: Moved functions to FrameView. Moved all #if to the left
  106069. margin to make the style consistent. Removed empty function
  106070. removeEditingStyleFromBodyElement.
  106071. * page/FrameView.cpp:
  106072. (WebCore::parentZoomFactor): Added helper function for constructor.
  106073. (WebCore::FrameView::FrameView): Added initialization of m_zoomFactor.
  106074. (WebCore::FrameView::shouldApplyTextZoom): Moved this here from Frame.
  106075. (WebCore::FrameView::shouldApplyPageZoom): Ditto.
  106076. (WebCore::FrameView::setZoomFactor): Ditto.
  106077. * page/FrameView.h: Added members moved here from Frame.
  106078. * rendering/RenderView.cpp:
  106079. (WebCore::RenderView::zoomFactor): Call FrameView instead of Frame.
  106080. * svg/SVGSVGElement.cpp:
  106081. (WebCore::SVGSVGElement::currentScale): Ditto.
  106082. (WebCore::SVGSVGElement::setCurrentScale): Ditto.
  106083. 2010-05-24 Jer Noble <jer.noble@apple.com>
  106084. No review; build fix only.
  106085. Roll-out changes r60094, 60096-60097.
  106086. * WebCore.vcproj/WebCore.vcproj:
  106087. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
  106088. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::load):
  106089. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::retrieveCurrentImage):
  106090. (WebCore::MediaPlayerPrivateQuickTimeVisualContext::destroyLayerForMovie):
  106091. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
  106092. * platform/graphics/win/QTPixelBuffer.cpp:
  106093. * platform/graphics/win/QTPixelBuffer.h:
  106094. * platform/graphics/win/WKCACFLayer.cpp:
  106095. (WebCore::WKCACFLayer::printLayer):
  106096. * platform/graphics/win/WKCACFLayer.h:
  106097. (WebCore::WKCACFLayer::setContents):
  106098. (WebCore::WKCACFLayer::contents):
  106099. (WebCore::WKCACFLayer::speed):
  106100. (WebCore::WKCACFLayer::timeOffset):
  106101. * platform/graphics/win/WKCAImageQueue.cpp: Removed.
  106102. * platform/graphics/win/WKCAImageQueue.h: Removed.
  106103. 2010-05-24 Eric Seidel <eric@webkit.org>
  106104. Unreviewed. Add wtf/UnusedParam.h include to make Chromium happy.
  106105. Chromium does not use a prefix header in order to support
  106106. distcc3. Other ports all do. The real fix is to remove
  106107. wtf/UnusedParam.h from the prefix header.
  106108. * html/HTML5TreeBuilder.cpp:
  106109. 2010-05-24 Jer Noble <jer.noble@apple.com>
  106110. No review; build fix only.
  106111. Second half of previous build fix, in which I add the include in the correct place.
  106112. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
  106113. 2010-05-24 Jer Noble <jer.noble@apple.com>
  106114. No review; build fix only.
  106115. Include WKCAImageQueue.h outside the ACCELERATED_COMPOSITING check.
  106116. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
  106117. 2010-05-24 Eric Seidel <eric@webkit.org>
  106118. Reviewed by Adam Barth.
  106119. Prepare HTML5TreeBuilder for addition of new HTML5 parser code
  106120. https://bugs.webkit.org/show_bug.cgi?id=39623
  106121. Before we start transcribing the parser, we need a place to put it.
  106122. This also cleans up HTML5 token to not convert comment and character
  106123. data into AtomicStrings (which makes no sense).
  106124. No functionality change, so no new tests.
  106125. * html/HTML5Token.h:
  106126. (WebCore::HTML5Token::beginStartTag):
  106127. (WebCore::HTML5Token::beginEndTag):
  106128. (WebCore::HTML5Token::beginCharacter):
  106129. (WebCore::HTML5Token::beginComment):
  106130. (WebCore::HTML5Token::name):
  106131. (WebCore::HTML5Token::adoptDataAsStringImpl):
  106132. (WebCore::HTML5Token::characters):
  106133. (WebCore::HTML5Token::commentData):
  106134. (WebCore::HTML5Token::clearData):
  106135. * html/HTML5TreeBuilder.cpp:
  106136. (WebCore::convertToOldStyle):
  106137. (WebCore::HTML5TreeBuilder::constructTreeFromToken):
  106138. (WebCore::HTML5TreeBuilder::processToken):
  106139. * html/HTML5TreeBuilder.h:
  106140. 2010-05-23 Jer Noble <jer.noble@apple.com>
  106141. Reviewed by Eric Carlson.
  106142. HTML5 <video> tag performance worse than Flash
  106143. https://bugs.webkit.org/show_bug.cgi?id=39577
  106144. rdar://problem/7982458
  106145. Added attachments() back to QTPixelBuffer, as they are necessary for CAImageQueue.
  106146. WKCACFLayer contents()/setContents() now return/take a CFTypeRef instead of a CGImageRef, which allows
  106147. a CAImageQueueRef to be set as a layer's contents.
  106148. WKCAImageQueue is a simple C++ wrapper around the WebKitSystemInterface CAImageQueue functions.
  106149. MediaPlayerPrivateQuickTimeVisualContext will now use a CAImageQueue to display movie frames if
  106150. certain prerequisites are met (QuartzCore.dll and CoreVideo.dll version numbers must meet a certain
  106151. threshold defined in MediaPlayerPrivateQuickTimeVisualContext.cpp).
  106152. * WebCore.vcproj/WebCore.vcproj:
  106153. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
  106154. * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
  106155. * platform/graphics/win/QTPixelBuffer.cpp:
  106156. * platform/graphics/win/QTPixelBuffer.h:
  106157. * platform/graphics/win/WKCACFLayer.cpp:
  106158. * platform/graphics/win/WKCACFLayer.h:
  106159. * platform/graphics/win/WKCAImageQueue.cpp: Added.
  106160. * platform/graphics/win/WKCAImageQueue.h: Added.
  106161. 2010-05-24 Brady Eidson <beidson@apple.com>
  106162. Reviewed by Darin Adler.
  106163. Database origins aren't populated at launch (missing db in prefs sheet, possible other symptoms)
  106164. <rdar://problem/8013233> and https://bugs.webkit.org/show_bug.cgi?id=39486
  106165. Currently, a Tracker needs to know it's path before origins are populated. Testing databases and
  106166. related features is made very difficult with this regression, so instead of changing things in a
  106167. complicated way to make this not the case, I've added an "initialize Tracker with this path" function
  106168. that calls the DatabaseTracker constructor with the initial path.
  106169. I checked the other platforms besides Mac and Win, and none of them seem to perform the
  106170. "initialize databases if necessary" step in their init routines, so this change shouldn't effect them.
  106171. No new tests. (API specific layout test in DRT is forthcoming)
  106172. * WebCore.base.exp:
  106173. * storage/DatabaseTracker.cpp:
  106174. (WebCore::DatabaseTracker::initializeTracker): Added to create the tracker with its initial path.
  106175. (WebCore::DatabaseTracker::tracker): Move the static tracker out so tracker() and initializeTracker()
  106176. can share it. Add a fallback to not change behavior of platforms that don't call the new
  106177. "initializeTracker()" method.
  106178. (WebCore::DatabaseTracker::DatabaseTracker): Changed to take the initial path as an argument.
  106179. * storage/DatabaseTracker.h:
  106180. * storage/chromium/DatabaseTrackerChromium.cpp:
  106181. (WebCore::DatabaseTracker::tracker): Adapt to new c'tor.
  106182. (WebCore::DatabaseTracker::DatabaseTracker): Ditto.
  106183. 2010-05-24 Adam Barth <abarth@webkit.org>
  106184. Reviewed by Eric Seidel.
  106185. Teach the HTML5 parser to lex DOCTYPEs
  106186. https://bugs.webkit.org/show_bug.cgi?id=39571
  106187. * html/HTML5Lexer.cpp:
  106188. (WebCore::HTML5Lexer::nextToken):
  106189. * html/HTML5Lexer.h:
  106190. * html/HTML5Token.h:
  106191. (WebCore::HTML5Token::beginDOCTYPE):
  106192. (WebCore::HTML5Token::publicIdentifier):
  106193. (WebCore::HTML5Token::systemIdentifier):
  106194. (WebCore::HTML5Token::setPublicIdentifierToEmptyString):
  106195. (WebCore::HTML5Token::setSystemIdentifierToEmptyString):
  106196. (WebCore::HTML5Token::appendToPublicIdentifier):
  106197. (WebCore::HTML5Token::appendToSystemIdentifier):
  106198. (WebCore::HTML5Token::DoctypeData::DoctypeData):
  106199. * html/HTML5TreeBuilder.cpp:
  106200. (WebCore::convertToOldStyle):
  106201. (WebCore::HTML5TreeBuilder::passTokenToLegacyParser):
  106202. * platform/text/SegmentedString.h:
  106203. (WebCore::SegmentedString::lookAheadIgnoringCase):
  106204. (WebCore::SegmentedString::advanceAndASSERTIgnoringCase):
  106205. == Rolled over to ChangeLog-2010-05-24 ==